tonightpass 0.0.30 → 0.0.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
 
2
- > tonightpass@0.0.30 build /home/runner/work/tonightpass/tonightpass/packages/node
2
+ > tonightpass@0.0.32 build /home/runner/work/tonightpass/tonightpass/packages/node
3
3
  > tsup
4
4
 
5
5
  CLI Building entry: src/index.ts
@@ -10,12 +10,12 @@
10
10
  CJS Build start
11
11
  ESM Build start
12
12
  CJS dist/index.js 15.14 KB
13
- CJS dist/index.js.map 46.14 KB
14
- CJS ⚡️ Build success in 363ms
13
+ CJS dist/index.js.map 46.17 KB
14
+ CJS ⚡️ Build success in 416ms
15
15
  ESM dist/index.mjs 13.29 KB
16
- ESM dist/index.mjs.map 46.14 KB
17
- ESM ⚡️ Build success in 364ms
16
+ ESM dist/index.mjs.map 46.17 KB
17
+ ESM ⚡️ Build success in 417ms
18
18
  DTS Build start
19
- DTS ⚡️ Build success in 3749ms
20
- DTS dist/index.d.ts 35.78 KB
21
- DTS dist/index.d.mts 35.78 KB
19
+ DTS ⚡️ Build success in 4310ms
20
+ DTS dist/index.d.ts 35.70 KB
21
+ DTS dist/index.d.mts 35.70 KB
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # tonightpass
2
2
 
3
+ ## 0.0.32
4
+
5
+ ### Patch Changes
6
+
7
+ - [`eaaef01`](https://github.com/tonightpass/tonightpass/commit/eaaef0116082deac3d6a0c1ed68730a0ab738d4e) Thanks [@AntoineKM](https://github.com/AntoineKM)! - Fix token type
8
+
9
+ ## 0.0.31
10
+
11
+ ### Patch Changes
12
+
13
+ - [`24a64ea`](https://github.com/tonightpass/tonightpass/commit/24a64ea7451fe03b7f04d760c821dabba3e96443) Thanks [@AntoineKM](https://github.com/AntoineKM)! - Add base type
14
+
3
15
  ## 0.0.30
4
16
 
5
17
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -36,8 +36,7 @@ type Endpoint<M extends Options["method"], Path extends string, Res, Body = unde
36
36
  };
37
37
  type Endpoints = AuthEndpoints | CareersEndpoints | HealthEndpoints | OrganizationEndpoints | ProfileEndpoints | UserEndpoints;
38
38
 
39
- type User = {
40
- id: string;
39
+ type User = Base & {
41
40
  identifier: UserIdentifier;
42
41
  password: string;
43
42
  identity: UserIdentity;
@@ -46,8 +45,6 @@ type User = {
46
45
  preferences: UserPreferences;
47
46
  connections: UserConnection[];
48
47
  verified: boolean;
49
- updatedAt: Date;
50
- createdAt: Date;
51
48
  };
52
49
  type UserIdentifier = {
53
50
  email?: string;
@@ -200,7 +197,7 @@ declare class CreateOrganizationEventStyleDto {
200
197
  declare class UpdateOrganizationEventStyleDto extends CreateOrganizationEventStyleDto {
201
198
  }
202
199
 
203
- type OrganizationEventStyle = {
200
+ type OrganizationEventStyle = Base & {
204
201
  type: OrganizationEventStyleType;
205
202
  emoji: string;
206
203
  name: string;
@@ -215,8 +212,7 @@ declare enum OrganizationEventStyleType {
215
212
  }
216
213
  type OrganizationEventStyleEndpoints = Endpoint<"GET", "/organizations/events/styles", OrganizationEventStyle[]> | Endpoint<"GET", "/organizations/events/styles/:slug", OrganizationEventStyle> | Endpoint<"POST", "/organizations/events/styles", OrganizationEventStyle, CreateOrganizationEventStyleDto> | Endpoint<"PUT", "/organizations/events/styles/:slug", OrganizationEventStyle, UpdateOrganizationEventStyleDto> | Endpoint<"DELETE", "/organizations/events/styles/:slug", OrganizationEventStyle[], null>;
217
214
 
218
- type OrganizationEventTicket = {
219
- id: string;
215
+ type OrganizationEventTicket = Base & {
220
216
  name: string;
221
217
  description?: string;
222
218
  price: number;
@@ -231,8 +227,6 @@ type OrganizationEventTicket = {
231
227
  isFeesIncluded: boolean;
232
228
  startAt: Date;
233
229
  endAt: Date;
234
- updatedAt: Date;
235
- createdAt: Date;
236
230
  };
237
231
  type OrganizationEventTicketType = "e-ticket" | "other";
238
232
  declare enum OrganizationEventTicketCategory {
@@ -249,7 +243,7 @@ declare enum OrganizationEventTicketCategory {
249
243
  }
250
244
  type OrganizationEventTicketEndpoints = Endpoint<"GET", "/organizations/:slug/events/:eventSlug/tickets", OrganizationEventTicket[]> | Endpoint<"GET", "/organizations/:slug/events/:eventSlug/tickets/:ticketId", OrganizationEventTicket> | Endpoint<"POST", "/organizations/:slug/events/:eventSlug/tickets", OrganizationEventTicket, CreateOrganizationEventTicketDto> | Endpoint<"PUT", "/organizations/:slug/events/:eventSlug/tickets/:ticketId", OrganizationEventTicket, UpdateOrganizationEventTicketDto> | Endpoint<"DELETE", "/organizations/:slug/events/:eventSlug/tickets/:ticketId", OrganizationEventTicket[], null>;
251
245
 
252
- type OrganizationEvent = {
246
+ type OrganizationEvent = Base & {
253
247
  title: string;
254
248
  description: string;
255
249
  slug: string;
@@ -263,8 +257,6 @@ type OrganizationEvent = {
263
257
  styles: OrganizationEventStyle[];
264
258
  startAt: Date;
265
259
  endAt: Date;
266
- updatedAt: Date;
267
- createdAt: Date;
268
260
  };
269
261
  declare enum OrganizationEventType {
270
262
  Clubbing = "clubbing",
@@ -295,7 +287,6 @@ declare class UpdateOrganizationMemberDto {
295
287
  }
296
288
 
297
289
  type UserToken = {
298
- id: string;
299
290
  type: UserTokenType;
300
291
  value: string;
301
292
  createdAt: Date;
@@ -311,12 +302,10 @@ declare enum UserTokenType {
311
302
  PhoneValidation = "phone_validation"
312
303
  }
313
304
 
314
- type OrganizationMember = {
305
+ type OrganizationMember = Base & {
315
306
  organization: Organization;
316
307
  role: OrganizationMemberRole;
317
308
  status: OrganizationMemberStatus;
318
- updatedAt: Date;
319
- createdAt: Date;
320
309
  user?: User;
321
310
  token?: UserToken;
322
311
  };
@@ -333,8 +322,7 @@ declare enum OrganizationMemberRole {
333
322
  }
334
323
  type OrganizationMembersEndpoints = Endpoint<"GET", "/organizations/members", OrganizationMember[]> | Endpoint<"DELETE", "/organizations/members/:id", OrganizationMember[], null> | Endpoint<"GET", "/organizations/:slug/members", OrganizationMember[]> | Endpoint<"POST", "/organizations/:slug/members", OrganizationMember, OrganizationMemberDto> | Endpoint<"PUT", "/organizations/:organizationSlug/members/:userId", OrganizationMember, UpdateOrganizationMemberDto> | Endpoint<"DELETE", "/organizations/:organizationSlug/members/:userId", OrganizationMember[], null>;
335
324
 
336
- type Organization = {
337
- id: string;
325
+ type Organization = Base & {
338
326
  slug: string;
339
327
  identity: OrganizationIdentity;
340
328
  members: OrganizationMember[];
@@ -343,8 +331,6 @@ type Organization = {
343
331
  savedTickets: OrganizationEventTicket[];
344
332
  verified: boolean;
345
333
  billing: OrganizationBilling;
346
- updatedAt: Date;
347
- createdAt: Date;
348
334
  };
349
335
  type OrganizationBilling = {
350
336
  account: string;
@@ -429,6 +415,12 @@ interface ProfileMetadata {
429
415
  }
430
416
  type ProfileEndpoints = Endpoint<"GET", "/profiles/:username", UserIdentity | OrganizationIdentity>;
431
417
 
418
+ type Base = {
419
+ id: string;
420
+ createdAt: Date;
421
+ updatedAt: Date;
422
+ };
423
+ type ExcludeBase<T> = Omit<T, keyof Base>;
432
424
  type Location = {
433
425
  name?: string;
434
426
  address: string;
@@ -965,4 +957,4 @@ declare class TonightPass {
965
957
 
966
958
  declare const isBrowser: boolean;
967
959
 
968
- export { type APIRequestOptions, type APIResponse, type AuthEndpoints, BCRYPT_HASH, type CareersCategory, type CareersEmploymentType, type CareersEndpoints, type CareersJob, type CareersOffice, Client, type ClientOptions, CreateOrganizationDto, CreateOrganizationEventDto, CreateOrganizationEventTicketDto, CreateOrganizationIdentityDto, CreateUserDto, Currency, DEFAULT_API_URL, EMAIL_REGEX, type Endpoint, type Endpoints, type ErroredAPIResponse, type Health, type HealthEndpoints, IMAGE_URL_REGEX, Language, type Location, NAME_REGEX, type Order, type OrderItem, OrderStatus, type Organization, type OrganizationBilling, type OrganizationBillingAccount, type OrganizationEndpoints, type OrganizationEvent, type OrganizationEventEndpoints, type OrganizationEventStyle, type OrganizationEventStyleEndpoints, OrganizationEventStyleType, type OrganizationEventTicket, OrganizationEventTicketCategory, type OrganizationEventTicketEndpoints, type OrganizationEventTicketType, OrganizationEventType, type OrganizationIdentity, type OrganizationMember, OrganizationMemberDto, OrganizationMemberRole, OrganizationMemberStatus, type OrganizationMembersEndpoints, type OrganizationSocialLink, OrganizationSocialType, PASSWORD_REGEX, PHONE_NUMBER_REGEX, type PathsFor, type Profile, type ProfileEndpoints, type ProfileMetadata, type PromisedAPIResponse, type PromoCode, SLUG_REGEX, SignInUserDto, type SuccessfulAPIResponse, TonightPass, TonightPassAPIError, UpdateOrganizationDto, UpdateOrganizationEventDto, UpdateOrganizationEventTicketDto, UpdateUserDto, type User, type UserConnection, type UserConnectionClient, type UserConnectionDevice, type UserConnectionOS, type UserEndpoints, type UserIdentifier, type UserIdentity, type UserIdentityGender, type UserPreferences, UserRole, type UserToken, UserTokenType, auth, careers, health, isBrowser, organizations, profiles, request, sdk, users };
960
+ export { type APIRequestOptions, type APIResponse, type AuthEndpoints, BCRYPT_HASH, type Base, type CareersCategory, type CareersEmploymentType, type CareersEndpoints, type CareersJob, type CareersOffice, Client, type ClientOptions, CreateOrganizationDto, CreateOrganizationEventDto, CreateOrganizationEventTicketDto, CreateOrganizationIdentityDto, CreateUserDto, Currency, DEFAULT_API_URL, EMAIL_REGEX, type Endpoint, type Endpoints, type ErroredAPIResponse, type ExcludeBase, type Health, type HealthEndpoints, IMAGE_URL_REGEX, Language, type Location, NAME_REGEX, type Order, type OrderItem, OrderStatus, type Organization, type OrganizationBilling, type OrganizationBillingAccount, type OrganizationEndpoints, type OrganizationEvent, type OrganizationEventEndpoints, type OrganizationEventStyle, type OrganizationEventStyleEndpoints, OrganizationEventStyleType, type OrganizationEventTicket, OrganizationEventTicketCategory, type OrganizationEventTicketEndpoints, type OrganizationEventTicketType, OrganizationEventType, type OrganizationIdentity, type OrganizationMember, OrganizationMemberDto, OrganizationMemberRole, OrganizationMemberStatus, type OrganizationMembersEndpoints, type OrganizationSocialLink, OrganizationSocialType, PASSWORD_REGEX, PHONE_NUMBER_REGEX, type PathsFor, type Profile, type ProfileEndpoints, type ProfileMetadata, type PromisedAPIResponse, type PromoCode, SLUG_REGEX, SignInUserDto, type SuccessfulAPIResponse, TonightPass, TonightPassAPIError, UpdateOrganizationDto, UpdateOrganizationEventDto, UpdateOrganizationEventTicketDto, UpdateUserDto, type User, type UserConnection, type UserConnectionClient, type UserConnectionDevice, type UserConnectionOS, type UserEndpoints, type UserIdentifier, type UserIdentity, type UserIdentityGender, type UserPreferences, UserRole, type UserToken, UserTokenType, auth, careers, health, isBrowser, organizations, profiles, request, sdk, users };
package/dist/index.d.ts CHANGED
@@ -36,8 +36,7 @@ type Endpoint<M extends Options["method"], Path extends string, Res, Body = unde
36
36
  };
37
37
  type Endpoints = AuthEndpoints | CareersEndpoints | HealthEndpoints | OrganizationEndpoints | ProfileEndpoints | UserEndpoints;
38
38
 
39
- type User = {
40
- id: string;
39
+ type User = Base & {
41
40
  identifier: UserIdentifier;
42
41
  password: string;
43
42
  identity: UserIdentity;
@@ -46,8 +45,6 @@ type User = {
46
45
  preferences: UserPreferences;
47
46
  connections: UserConnection[];
48
47
  verified: boolean;
49
- updatedAt: Date;
50
- createdAt: Date;
51
48
  };
52
49
  type UserIdentifier = {
53
50
  email?: string;
@@ -200,7 +197,7 @@ declare class CreateOrganizationEventStyleDto {
200
197
  declare class UpdateOrganizationEventStyleDto extends CreateOrganizationEventStyleDto {
201
198
  }
202
199
 
203
- type OrganizationEventStyle = {
200
+ type OrganizationEventStyle = Base & {
204
201
  type: OrganizationEventStyleType;
205
202
  emoji: string;
206
203
  name: string;
@@ -215,8 +212,7 @@ declare enum OrganizationEventStyleType {
215
212
  }
216
213
  type OrganizationEventStyleEndpoints = Endpoint<"GET", "/organizations/events/styles", OrganizationEventStyle[]> | Endpoint<"GET", "/organizations/events/styles/:slug", OrganizationEventStyle> | Endpoint<"POST", "/organizations/events/styles", OrganizationEventStyle, CreateOrganizationEventStyleDto> | Endpoint<"PUT", "/organizations/events/styles/:slug", OrganizationEventStyle, UpdateOrganizationEventStyleDto> | Endpoint<"DELETE", "/organizations/events/styles/:slug", OrganizationEventStyle[], null>;
217
214
 
218
- type OrganizationEventTicket = {
219
- id: string;
215
+ type OrganizationEventTicket = Base & {
220
216
  name: string;
221
217
  description?: string;
222
218
  price: number;
@@ -231,8 +227,6 @@ type OrganizationEventTicket = {
231
227
  isFeesIncluded: boolean;
232
228
  startAt: Date;
233
229
  endAt: Date;
234
- updatedAt: Date;
235
- createdAt: Date;
236
230
  };
237
231
  type OrganizationEventTicketType = "e-ticket" | "other";
238
232
  declare enum OrganizationEventTicketCategory {
@@ -249,7 +243,7 @@ declare enum OrganizationEventTicketCategory {
249
243
  }
250
244
  type OrganizationEventTicketEndpoints = Endpoint<"GET", "/organizations/:slug/events/:eventSlug/tickets", OrganizationEventTicket[]> | Endpoint<"GET", "/organizations/:slug/events/:eventSlug/tickets/:ticketId", OrganizationEventTicket> | Endpoint<"POST", "/organizations/:slug/events/:eventSlug/tickets", OrganizationEventTicket, CreateOrganizationEventTicketDto> | Endpoint<"PUT", "/organizations/:slug/events/:eventSlug/tickets/:ticketId", OrganizationEventTicket, UpdateOrganizationEventTicketDto> | Endpoint<"DELETE", "/organizations/:slug/events/:eventSlug/tickets/:ticketId", OrganizationEventTicket[], null>;
251
245
 
252
- type OrganizationEvent = {
246
+ type OrganizationEvent = Base & {
253
247
  title: string;
254
248
  description: string;
255
249
  slug: string;
@@ -263,8 +257,6 @@ type OrganizationEvent = {
263
257
  styles: OrganizationEventStyle[];
264
258
  startAt: Date;
265
259
  endAt: Date;
266
- updatedAt: Date;
267
- createdAt: Date;
268
260
  };
269
261
  declare enum OrganizationEventType {
270
262
  Clubbing = "clubbing",
@@ -295,7 +287,6 @@ declare class UpdateOrganizationMemberDto {
295
287
  }
296
288
 
297
289
  type UserToken = {
298
- id: string;
299
290
  type: UserTokenType;
300
291
  value: string;
301
292
  createdAt: Date;
@@ -311,12 +302,10 @@ declare enum UserTokenType {
311
302
  PhoneValidation = "phone_validation"
312
303
  }
313
304
 
314
- type OrganizationMember = {
305
+ type OrganizationMember = Base & {
315
306
  organization: Organization;
316
307
  role: OrganizationMemberRole;
317
308
  status: OrganizationMemberStatus;
318
- updatedAt: Date;
319
- createdAt: Date;
320
309
  user?: User;
321
310
  token?: UserToken;
322
311
  };
@@ -333,8 +322,7 @@ declare enum OrganizationMemberRole {
333
322
  }
334
323
  type OrganizationMembersEndpoints = Endpoint<"GET", "/organizations/members", OrganizationMember[]> | Endpoint<"DELETE", "/organizations/members/:id", OrganizationMember[], null> | Endpoint<"GET", "/organizations/:slug/members", OrganizationMember[]> | Endpoint<"POST", "/organizations/:slug/members", OrganizationMember, OrganizationMemberDto> | Endpoint<"PUT", "/organizations/:organizationSlug/members/:userId", OrganizationMember, UpdateOrganizationMemberDto> | Endpoint<"DELETE", "/organizations/:organizationSlug/members/:userId", OrganizationMember[], null>;
335
324
 
336
- type Organization = {
337
- id: string;
325
+ type Organization = Base & {
338
326
  slug: string;
339
327
  identity: OrganizationIdentity;
340
328
  members: OrganizationMember[];
@@ -343,8 +331,6 @@ type Organization = {
343
331
  savedTickets: OrganizationEventTicket[];
344
332
  verified: boolean;
345
333
  billing: OrganizationBilling;
346
- updatedAt: Date;
347
- createdAt: Date;
348
334
  };
349
335
  type OrganizationBilling = {
350
336
  account: string;
@@ -429,6 +415,12 @@ interface ProfileMetadata {
429
415
  }
430
416
  type ProfileEndpoints = Endpoint<"GET", "/profiles/:username", UserIdentity | OrganizationIdentity>;
431
417
 
418
+ type Base = {
419
+ id: string;
420
+ createdAt: Date;
421
+ updatedAt: Date;
422
+ };
423
+ type ExcludeBase<T> = Omit<T, keyof Base>;
432
424
  type Location = {
433
425
  name?: string;
434
426
  address: string;
@@ -965,4 +957,4 @@ declare class TonightPass {
965
957
 
966
958
  declare const isBrowser: boolean;
967
959
 
968
- export { type APIRequestOptions, type APIResponse, type AuthEndpoints, BCRYPT_HASH, type CareersCategory, type CareersEmploymentType, type CareersEndpoints, type CareersJob, type CareersOffice, Client, type ClientOptions, CreateOrganizationDto, CreateOrganizationEventDto, CreateOrganizationEventTicketDto, CreateOrganizationIdentityDto, CreateUserDto, Currency, DEFAULT_API_URL, EMAIL_REGEX, type Endpoint, type Endpoints, type ErroredAPIResponse, type Health, type HealthEndpoints, IMAGE_URL_REGEX, Language, type Location, NAME_REGEX, type Order, type OrderItem, OrderStatus, type Organization, type OrganizationBilling, type OrganizationBillingAccount, type OrganizationEndpoints, type OrganizationEvent, type OrganizationEventEndpoints, type OrganizationEventStyle, type OrganizationEventStyleEndpoints, OrganizationEventStyleType, type OrganizationEventTicket, OrganizationEventTicketCategory, type OrganizationEventTicketEndpoints, type OrganizationEventTicketType, OrganizationEventType, type OrganizationIdentity, type OrganizationMember, OrganizationMemberDto, OrganizationMemberRole, OrganizationMemberStatus, type OrganizationMembersEndpoints, type OrganizationSocialLink, OrganizationSocialType, PASSWORD_REGEX, PHONE_NUMBER_REGEX, type PathsFor, type Profile, type ProfileEndpoints, type ProfileMetadata, type PromisedAPIResponse, type PromoCode, SLUG_REGEX, SignInUserDto, type SuccessfulAPIResponse, TonightPass, TonightPassAPIError, UpdateOrganizationDto, UpdateOrganizationEventDto, UpdateOrganizationEventTicketDto, UpdateUserDto, type User, type UserConnection, type UserConnectionClient, type UserConnectionDevice, type UserConnectionOS, type UserEndpoints, type UserIdentifier, type UserIdentity, type UserIdentityGender, type UserPreferences, UserRole, type UserToken, UserTokenType, auth, careers, health, isBrowser, organizations, profiles, request, sdk, users };
960
+ export { type APIRequestOptions, type APIResponse, type AuthEndpoints, BCRYPT_HASH, type Base, type CareersCategory, type CareersEmploymentType, type CareersEndpoints, type CareersJob, type CareersOffice, Client, type ClientOptions, CreateOrganizationDto, CreateOrganizationEventDto, CreateOrganizationEventTicketDto, CreateOrganizationIdentityDto, CreateUserDto, Currency, DEFAULT_API_URL, EMAIL_REGEX, type Endpoint, type Endpoints, type ErroredAPIResponse, type ExcludeBase, type Health, type HealthEndpoints, IMAGE_URL_REGEX, Language, type Location, NAME_REGEX, type Order, type OrderItem, OrderStatus, type Organization, type OrganizationBilling, type OrganizationBillingAccount, type OrganizationEndpoints, type OrganizationEvent, type OrganizationEventEndpoints, type OrganizationEventStyle, type OrganizationEventStyleEndpoints, OrganizationEventStyleType, type OrganizationEventTicket, OrganizationEventTicketCategory, type OrganizationEventTicketEndpoints, type OrganizationEventTicketType, OrganizationEventType, type OrganizationIdentity, type OrganizationMember, OrganizationMemberDto, OrganizationMemberRole, OrganizationMemberStatus, type OrganizationMembersEndpoints, type OrganizationSocialLink, OrganizationSocialType, PASSWORD_REGEX, PHONE_NUMBER_REGEX, type PathsFor, type Profile, type ProfileEndpoints, type ProfileMetadata, type PromisedAPIResponse, type PromoCode, SLUG_REGEX, SignInUserDto, type SuccessfulAPIResponse, TonightPass, TonightPassAPIError, UpdateOrganizationDto, UpdateOrganizationEventDto, UpdateOrganizationEventTicketDto, UpdateUserDto, type User, type UserConnection, type UserConnectionClient, type UserConnectionDevice, type UserConnectionOS, type UserEndpoints, type UserIdentifier, type UserIdentity, type UserIdentityGender, type UserPreferences, UserRole, type UserToken, UserTokenType, auth, careers, health, isBrowser, organizations, profiles, request, sdk, users };
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/types/organizations/events/tickets/index.ts","../src/rest/types/organizations/events/styles/index.ts","../src/rest/types/organizations/events/index.ts","../src/rest/types/organizations/members/index.ts","../src/rest/types/organizations/index.ts","../src/rest/types/token/index.ts","../src/rest/types/users/index.ts","../src/rest/types/order/index.ts","../src/rest/types/index.ts","../src/rest/dtos/organizations/update-organization.dto.ts","../src/rest/dtos/organizations/events/create-organization-event.dto.ts","../src/rest/dtos/organizations/events/update-organization-event.dto.ts","../src/rest/dtos/organizations/events/tickets/create-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/events/tickets/update-organization-event-ticket.dto.ts","../src/rest/dtos/users/create-user.dto.ts","../src/rest/dtos/users/sign-in-user.dto.ts","../src/rest/dtos/users/update-user.dto.ts","../src/rest/request/request.ts","../src/utils/index.ts","../src/rest/client.ts","../src/sdk/builder.ts","../src/sdk/auth.ts","../src/sdk/careers.ts","../src/sdk/health.ts","../src/sdk/organizations/billing/index.ts","../src/sdk/organizations/events/styles/index.ts","../src/sdk/organizations/events/tickets/index.ts","../src/sdk/organizations/events/index.ts","../src/sdk/organizations/members/index.ts","../src/sdk/organizations/index.ts","../src/sdk/profiles.ts","../src/sdk/users.ts","../src/tonightpass.ts"],"names":["DEFAULT_API_URL","EMAIL_REGEX","PASSWORD_REGEX","NAME_REGEX","SLUG_REGEX","BCRYPT_HASH","PHONE_NUMBER_REGEX","IMAGE_URL_REGEX","IsArray","IsEnum","IsNotEmpty","IsObject","IsOptional","IsString","IsUrl","Length","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationDto","slug","identity","members","location","CreateOrganizationIdentityDto","displayName","description","avatarUrl","bannerUrl","socialLinks","protocols","OrganizationMemberDto","user","role","UpdateOrganizationDto","CreateOrganizationEventDto","title","organization","type","public","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","IsDateString","IsEmail","IsPhoneNumber","Matches","MaxLength","MinLength","ValidateNested","UpdateUserDto","UpdateIdentifierDto","UpdateIdentityDto","email","phoneNumber","username","firstName","lastName","gender","birthDate","message","axios","isBrowser","window","instance","create","headers","Accept","responseType","transformRequest","data","JSON","stringify","withCredentials","request","__name","url","options","then","response","catch","error","pathcat","TonightPassAPIError","Error","status","constructor","Client","path","params","baseURL","setOptions","get","query","requester","undefined","post","body","put","patch","delete","method","result","success","sdk","builder","auth","client","signIn","signUp","signOut","refreshToken","oauth2","google","connect","href","twitter","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","organizationSlug","organizationsMembers","organizations","billing","events","profiles","users","me","check","suggestions","TonightPass"],"mappings":"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","sourcesContent":["export const DEFAULT_API_URL = \"https://api.tonightpass.com\";\n","export const EMAIL_REGEX = /^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$/;\n\n// checks if a password has at least one uppercase letter and a number or special character\nexport const PASSWORD_REGEX =\n /((?=.*\\d)|(?=.*\\W+))(?![.\\n])(?=.*[A-Z])(?=.*[a-z]).*$/;\n\n// checks if a string has only letters, numbers, spaces, apostrophes, dots and dashes\nexport const NAME_REGEX = /(^[\\p{L}\\d'\\\\.\\s\\\\-]*$)/u;\n\n// checks if a string is a valid slug, useful for usernames\nexport const SLUG_REGEX = /^[a-z\\d]+(?:(\\.|-|_)[a-z\\d]+)*$/;\n\n// validates if passwords are valid bcrypt hashes\nexport const BCRYPT_HASH = /\\$2[abxy]?\\$\\d{1,2}\\$[A-Za-z\\d\\\\./]{53}/;\n\nexport const PHONE_NUMBER_REGEX =\n /^\\s*(?:\\+?(\\d{1,3}))?([-. (]*(\\d{3})[-. )]*)?((\\d{3})[-. ]*(\\d{2,4})(?:[-.x ]*(\\d+))?)\\s*$/;\n\nexport const IMAGE_URL_REGEX =\n /(((http:\\/\\/www)|(http:\\/\\/)|(www))[-a-zA-Z0-9@:%_\\\\+.~#?&//=]+)\\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;\n","import \"reflect-metadata\";\n\nexport * from \"./organizations\";\nexport * from \"./users\";\n","import {\n IsArray,\n IsEnum,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport {\n OrganizationMemberRole,\n type Location,\n type OrganizationSocialLink,\n} from \"../../types\";\n\nexport class CreateOrganizationDto {\n @IsOptional()\n @IsString()\n @Length(1, 128)\n slug?: string;\n\n @IsObject()\n identity: CreateOrganizationIdentityDto;\n\n @IsArray()\n members: OrganizationMemberDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class CreateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n displayName: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n description: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n\nexport class OrganizationMemberDto {\n @IsString()\n @IsNotEmpty()\n user: string;\n\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { Currency } from \"../../..\";\nimport {\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../dtos\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventTicket = {\n id: string;\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 updatedAt: Date;\n createdAt: Date;\n};\n\nexport type OrganizationEventTicketType = \"e-ticket\" | \"other\";\n\nexport enum OrganizationEventTicketCategory {\n Entry = \"entry\",\n Package = \"package\",\n Meal = \"meal\",\n Drink = \"drink\",\n Parking = \"parking\",\n Accommodation = \"accommodation\",\n Camping = \"camping\",\n Locker = \"locker\",\n Shuttle = \"shuttle\",\n Other = \"other\",\n}\n\nexport type OrganizationEventTicketEndpoints =\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket[]\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket\n >\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket,\n CreateOrganizationEventTicketDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket,\n UpdateOrganizationEventTicketDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket[],\n null\n >;\n","import {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../dtos/organizations/events/events\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventStyle = {\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 { 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 = {\n title: string;\n description: string;\n slug: string;\n organization: Organization;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: OrganizationEventTicket[];\n styles: OrganizationEventStyle[];\n startAt: Date;\n endAt: Date;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport enum OrganizationEventType {\n Clubbing = \"clubbing\",\n Concert = \"concert\",\n Afterwork = \"afterwork\",\n DancingLunch = \"dancing_lunch\",\n Diner = \"diner\",\n Garden = \"garden\",\n AfterBeach = \"after_beach\",\n Festival = \"festival\",\n Spectacle = \"spectacle\",\n Cruise = \"cruise\",\n OutsideAnimation = \"outside_animation\",\n Sport = \"sport\",\n Match = \"match\",\n Seminar = \"seminar\",\n Conference = \"conference\",\n WellnessDay = \"wellness_day\",\n Workshop = \"workshop\",\n TradeFair = \"trade_fair\",\n ConsumerShow = \"consumer_show\",\n Membership = \"membership\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events\", Event[]>\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events/:eventSlug\", Event>\n | Endpoint<\n \"POST\",\n \"/organizations/:organizationSlug/events\",\n Event,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { OrganizationMemberDto } from \"../../../dtos\";\nimport { UpdateOrganizationMemberDto } from \"../../../dtos/organizations/members/update-organization-member.dto\";\nimport { Endpoint } from \"../../../endpoints\";\nimport { UserToken } from \"../../token\";\nimport { User } from \"../../users\";\n\nexport type OrganizationMember = {\n organization: Organization;\n role: OrganizationMemberRole;\n status: OrganizationMemberStatus;\n updatedAt: Date;\n createdAt: Date;\n user?: User;\n token?: UserToken;\n};\n\nexport enum OrganizationMemberStatus {\n Pending = \"pending\",\n Accepted = \"accepted\",\n Rejected = \"rejected\",\n}\n\nexport enum OrganizationMemberRole {\n Member = \"member\",\n Manager = \"manager\",\n Admin = \"admin\",\n Owner = \"owner\",\n}\n\nexport type OrganizationMembersEndpoints =\n | Endpoint<\"GET\", \"/organizations/members\", OrganizationMember[]>\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\"GET\", \"/organizations/:slug/members\", OrganizationMember[]>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/members\",\n OrganizationMember,\n OrganizationMemberDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember,\n UpdateOrganizationMemberDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember[],\n null\n >;\n","import type Stripe from \"stripe\";\n\nimport { OrganizationEvent, OrganizationEventEndpoints } from \"./events\";\nimport { OrganizationEventTicket } from \"./events/tickets\";\nimport { OrganizationMember, OrganizationMembersEndpoints } from \"./members\";\nimport { Location, Profile, ProfileMetadata } from \"..\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport * from \"./events\";\nexport * from \"./members\";\n\nexport type Organization = {\n id: string;\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 updatedAt: Date;\n createdAt: Date;\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 id: string;\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 { Currency, Language, Location, Profile, ProfileMetadata } from \"..\";\nimport { UpdateUserDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport type User = {\n id: string;\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 updatedAt: Date;\n createdAt: Date;\n};\n\nexport type UserIdentifier = {\n email?: string;\n phoneNumber?: string;\n username: string;\n\n [key: string]: string | undefined;\n};\n\nexport type UserIdentity = Profile & {\n firstName: string;\n lastName: string;\n fullName: string;\n gender: UserIdentityGender;\n birthDate: Date;\n\n metadata: ProfileMetadata & {\n followingCount: number;\n hasPassPlus: boolean;\n idValid: boolean;\n };\n};\n\nexport enum UserRole {\n User = \"user\",\n Developer = \"developer\",\n Admin = \"admin\",\n}\n\nexport type UserIdentityGender =\n | \"male\"\n | \"female\"\n | \"non-binary\"\n | \"gender-fluid\"\n | \"neutral\"\n | \"other\"\n | string;\n\nexport type UserPreferences = {\n language: Language;\n currency: Currency;\n notifications: {\n email: {\n newsletter: boolean;\n message: boolean;\n };\n push: {\n message: boolean;\n };\n };\n};\n\nexport type UserConnection = {\n ip: string;\n os: UserConnectionOS;\n device: UserConnectionDevice;\n client: UserConnectionClient;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type UserConnectionOS = {\n name: string;\n version: string;\n};\n\nexport type UserConnectionDevice = {\n type: string;\n brand: string;\n};\n\nexport type UserConnectionClient = {\n name: string;\n version: string;\n};\n\nexport type UserEndpoints =\n | Endpoint<\"GET\", \"/users\", User[]>\n | Endpoint<\"GET\", \"/users/:id\", User, { id: string }>\n | Endpoint<\"GET\", \"/users/me\", User>\n | Endpoint<\n \"GET\",\n \"/users/check/:identifier\",\n {\n exists: boolean;\n identifier: UserIdentifier;\n suggestions?: string[];\n },\n { identifier: boolean; suggestions?: boolean }\n >\n | Endpoint<\"PUT\", \"/users/:id\", User, UpdateUserDto>;\n","import { Currency } from \"..\";\nimport { OrganizationEvent, OrganizationEventTicket } from \"../organizations\";\nimport { User } from \"../users\";\n\nexport enum OrderStatus {\n Created = \"created\",\n Cancelled = \"cancelled\",\n Completed = \"completed\",\n Pending = \"pending\",\n Confirmed = \"confirmed\",\n Declined = \"declined\",\n Refunded = \"refunded\",\n PartiallyRefunded = \"partially_refunded\",\n Expired = \"expired\",\n}\n\nexport type OrderItem = {\n id: string;\n ticket: OrganizationEventTicket;\n isUsed: boolean;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type Order = {\n id: string;\n owner: User;\n members: User[];\n status: OrderStatus;\n event: OrganizationEvent;\n items: OrderItem[];\n promoCode?: PromoCode;\n total: number;\n currency: Currency;\n createdAt: Date;\n};\n\nexport type PromoCode = {\n id: string;\n code: string;\n used: number;\n discount: number;\n isActive: boolean;\n expirationAt: Date;\n createdAt: Date;\n};\n","export * from \"./auth\";\nexport * from \"./careers\";\nexport * from \"./health\";\nexport * from \"./organizations\";\nexport * from \"./token\";\nexport * from \"./users\";\nexport * from \"./order\";\nexport * from \"./profiles\";\n\nexport type Location = {\n name?: string;\n address: string;\n zipCode: string;\n city: string;\n country: string;\n geometry?: {\n latitude: number;\n longitude: number;\n };\n};\n\n// Currency\nexport enum Currency {\n EUR = \"EUR\",\n USD = \"USD\",\n GBP = \"GBP\",\n}\n\n// I18n\nexport enum Language {\n FR = \"fr\",\n EN = \"en\",\n}\n","import { CreateOrganizationDto } from \"./create-organization.dto\";\n\nexport class UpdateOrganizationDto extends CreateOrganizationDto {}\n","import { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport { Location, OrganizationEventType } from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n title: string;\n description: string;\n organization: string;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n name: string;\n description?: string;\n price: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventTicketDto } from \"./create-organization-event-ticket.dto\";\n\nexport class UpdateOrganizationEventTicketDto extends CreateOrganizationEventTicketDto {}\n","import { Location, UserIdentifier, UserIdentityGender } from \"../../types\";\n\nexport class CreateUserDto {\n identifier: UserIdentifier;\n password: string;\n identity: CreateUserIdentituDto;\n addresses: Location[];\n}\n\nclass CreateUserIdentituDto {\n firstName: string;\n lastName: string;\n gender: UserIdentityGender;\n avatarUrl?: string;\n birthDate: Date;\n}\n","export class SignInUserDto {\n identifier: string;\n password: string;\n}\n","import { Type } from \"class-transformer\";\nimport {\n IsDateString,\n IsEmail,\n IsObject,\n IsOptional,\n IsPhoneNumber,\n IsString,\n IsUrl,\n Length,\n Matches,\n MaxLength,\n MinLength,\n ValidateNested,\n} from \"class-validator\";\n\nimport { NAME_REGEX } from \"../../../constants/regex\";\nimport { UserIdentifier, UserIdentity } from \"../../types\";\n\nexport class UpdateUserDto {\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentifierDto)\n identifier?: UpdateIdentifierDto;\n\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentityDto)\n identity?: UpdateIdentityDto;\n\n @IsOptional()\n @IsString()\n @MinLength(6)\n @MaxLength(130)\n password?: string;\n}\n\nclass UpdateIdentifierDto\n implements\n Partial<Pick<UserIdentifier, \"email\" | \"phoneNumber\" | \"username\">>\n{\n @IsOptional()\n @IsString()\n @IsEmail()\n email?: string;\n\n @IsOptional()\n @IsString()\n @IsPhoneNumber()\n phoneNumber?: string;\n\n @IsOptional()\n @IsString()\n @MinLength(3)\n username?: string;\n}\n\nclass UpdateIdentityDto\n implements\n Partial<\n Pick<\n UserIdentity,\n | \"firstName\"\n | \"lastName\"\n | \"displayName\"\n | \"description\"\n | \"avatarUrl\"\n | \"bannerUrl\"\n | \"gender\"\n | \"birthDate\"\n >\n >\n{\n @IsOptional()\n @IsString()\n @Length(2, 50)\n @Matches(NAME_REGEX, {\n message: \"First name must be composed of letters only\",\n })\n firstName?: string;\n\n @IsOptional()\n @IsString()\n @Length(2, 50)\n @Matches(NAME_REGEX, {\n message: \"Last name must be composed of letters only\",\n })\n lastName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 32)\n displayName?: string;\n\n @IsOptional()\n @IsString()\n @Length(15, 500)\n description?: string;\n\n @IsOptional()\n @IsUrl()\n avatarUrl?: string | undefined;\n\n @IsOptional()\n @IsUrl()\n bannerUrl?: string | undefined;\n\n @IsOptional()\n gender?: string;\n\n @IsOptional()\n @IsDateString()\n birthDate?: Date;\n}\n","import axios, { Options, Response } from \"redaxios\";\n\nimport { isBrowser } from \"../../utils\";\nimport { APIResponse, ErroredAPIResponse } from \"../endpoints\";\n\nconst instance = axios.create({\n headers: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n ...(!isBrowser && { \"User-Agent\": \"tonightpass-api-client\" }),\n },\n responseType: \"json\",\n transformRequest: [\n function (data) {\n return JSON.stringify(data);\n },\n ],\n withCredentials: isBrowser,\n});\n\nexport interface APIRequestOptions extends Options {}\n\nexport const request = async <T>(url: string, options?: Options) => {\n const response = instance<APIResponse<T>>(url, { ...options })\n .then((response) => response)\n .catch((error: Response<ErroredAPIResponse>) => {\n throw error.data;\n });\n\n return response;\n};\n","export const isBrowser = typeof window !== \"undefined\";\n","import { ParamValue, Query, pathcat } from \"pathcat\";\nimport { Options, Response } from \"redaxios\";\n\nimport { APIResponse, Endpoints, ErroredAPIResponse } from \"./endpoints\";\nimport { APIRequestOptions, request } from \"./request\";\nimport { DEFAULT_API_URL } from \"../constants\";\n\nexport type PathsFor<M extends Options[\"method\"]> = Extract<\n Endpoints,\n { method: M }\n>[\"path\"];\n\nexport class TonightPassAPIError<T> extends Error {\n public readonly status: number;\n\n constructor(\n public readonly response: Response<APIResponse<T>>,\n public readonly data: ErroredAPIResponse,\n ) {\n super(data.message);\n\n this.status = response.status;\n }\n}\n\nexport interface ClientOptions {\n readonly baseURL: string;\n}\n\nexport class Client {\n private options;\n public readonly url;\n\n constructor(options: ClientOptions) {\n this.options = options;\n this.url = (path: string, params: Record<string, ParamValue>) => {\n const baseURL = this.options.baseURL || DEFAULT_API_URL;\n return pathcat(baseURL, path, params);\n };\n }\n\n setOptions(options: ClientOptions) {\n this.options = options;\n }\n\n async get<Path extends PathsFor<\"GET\">>(\n path: Path,\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"GET\" }>[\"res\"]\n >(\"GET\", path, undefined, query, options);\n }\n\n async post<Path extends Extract<Endpoints, { method: \"POST\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"POST\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"POST\" }>[\"res\"]\n >(\"POST\", path, body, query, options);\n }\n\n async put<Path extends Extract<Endpoints, { method: \"PUT\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"res\"]\n >(\"PUT\", path, body, query, options);\n }\n\n async patch<Path extends Extract<Endpoints, { method: \"PATCH\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"res\"]\n >(\"PATCH\", path, body, query, options);\n }\n\n async delete<Path extends Extract<Endpoints, { method: \"DELETE\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"res\"]\n >(\"DELETE\", path, body, query, options);\n }\n\n private async requester<T>(\n method: Options[\"method\"],\n path: string,\n body: unknown,\n query: Query<string> = {},\n options: APIRequestOptions = {},\n ) {\n const url = this.url(path, query);\n\n if (body !== undefined) {\n if (method === \"GET\") {\n throw new Error(\"Cannot send a GET request with a body\");\n }\n }\n\n const response: Response<APIResponse<T>> = await request<T>(url, {\n method,\n data: body,\n ...options,\n });\n\n const result = response.data;\n\n if (!result.success) {\n throw new TonightPassAPIError<T>(response, result);\n }\n\n return result.data;\n }\n}\n","import { Client } from \"../rest\";\n\nexport function sdk<T>(builder: (client: Client) => T) {\n return builder;\n}\n","import { ParamValue } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\nimport { CreateUserDto, SignInUserDto } from \"../rest\";\nimport { isBrowser } from \"../utils\";\n\nexport const auth = sdk((client) => ({\n signIn: async (data: SignInUserDto) => client.post(\"/auth/sign-in\", data),\n signUp: async (data: CreateUserDto) => client.post(\"/auth/sign-up\", data),\n signOut: async () => client.post(\"/auth/sign-out\", null),\n refreshToken: async () => client.post(\"/auth/refresh-token\", null),\n\n oauth2: {\n google: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/google\", params || {});\n } else {\n throw new Error(\"Google OAuth2 is only available in the browser\");\n }\n },\n },\n twitter: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/twitter\", params || {});\n } else {\n throw new Error(\"Twitter OAuth2 is only available in the browser\");\n }\n },\n },\n },\n}));\n","import { Query } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\n\nexport const careers = sdk((client) => ({\n categories: {\n getAll: async (query?: Query<\"/careers/categories\">) =>\n client.get(\"/careers/categories\", query),\n },\n employmentTypes: {\n getAll: async (query?: Query<\"/careers/employmentTypes\">) =>\n client.get(\"/careers/employmentTypes\", query),\n },\n jobs: {\n getAll: async (query?: Query<\"/careers/jobs\">) =>\n client.get(\"/careers/jobs\", query),\n get: async (id: number) => client.get(\"/careers/jobs/:id\", { id }),\n },\n offices: {\n getAll: async (query?: Query<\"/careers/offices\">) =>\n client.get(\"/careers/offices\", query),\n },\n}));\n","import { sdk } from \"./builder\";\n\nexport const health = sdk((client) => ({\n getAll: async () => client.get(\"/health\"),\n database: async () => client.get(\"/health/database\"),\n http: async () => client.get(\"/health/http\"),\n}));\n","import { isBrowser } from \"../../../utils\";\nimport { sdk } from \"../../builder\";\n\nexport const organizationsBilling = sdk((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 {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../rest/dtos/organizations/events/events\";\nimport { sdk } from \"../../../builder\";\n\nexport const organizationsEventsStyles = sdk((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 CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../rest\";\nimport { sdk } from \"../../../builder\";\n\nexport const organizationsEventsTickets = sdk((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 CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\nimport { sdk } from \"../../builder\";\n\nexport const organizationsEvents = sdk((client) => ({\n getAll: async (organizationSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events\", {\n organizationSlug,\n }),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (organizationSlug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:organizationSlug/events\", data, {\n organizationSlug,\n }),\n update: async (\n organizationSlug: string,\n eventSlug: string,\n data: UpdateOrganizationEventDto,\n ) =>\n client.put(\"/organizations/:organizationSlug/events/:eventSlug\", data, {\n organizationSlug,\n eventSlug,\n }),\n delete: async (organizationSlug: string, eventSlug: string) =>\n client.delete(\"/organizations/:organizationSlug/events/:eventSlug\", null, {\n organizationSlug,\n eventSlug,\n }),\n styles: organizationsEventsStyles,\n tickets: organizationsEventsTickets,\n}));\n","import { sdk } from \"../../builder\";\n\nexport const organizationsMembers = sdk((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,\n events: organizationsEvents,\n members: organizationsMembers,\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/types/organizations/events/tickets/index.ts","../src/rest/types/organizations/events/styles/index.ts","../src/rest/types/organizations/events/index.ts","../src/rest/types/organizations/members/index.ts","../src/rest/types/organizations/index.ts","../src/rest/types/token/index.ts","../src/rest/types/users/index.ts","../src/rest/types/order/index.ts","../src/rest/types/index.ts","../src/rest/dtos/organizations/update-organization.dto.ts","../src/rest/dtos/organizations/events/create-organization-event.dto.ts","../src/rest/dtos/organizations/events/update-organization-event.dto.ts","../src/rest/dtos/organizations/events/tickets/create-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/events/tickets/update-organization-event-ticket.dto.ts","../src/rest/dtos/users/create-user.dto.ts","../src/rest/dtos/users/sign-in-user.dto.ts","../src/rest/dtos/users/update-user.dto.ts","../src/rest/request/request.ts","../src/utils/index.ts","../src/rest/client.ts","../src/sdk/builder.ts","../src/sdk/auth.ts","../src/sdk/careers.ts","../src/sdk/health.ts","../src/sdk/organizations/billing/index.ts","../src/sdk/organizations/events/styles/index.ts","../src/sdk/organizations/events/tickets/index.ts","../src/sdk/organizations/events/index.ts","../src/sdk/organizations/members/index.ts","../src/sdk/organizations/index.ts","../src/sdk/profiles.ts","../src/sdk/users.ts","../src/tonightpass.ts"],"names":["DEFAULT_API_URL","EMAIL_REGEX","PASSWORD_REGEX","NAME_REGEX","SLUG_REGEX","BCRYPT_HASH","PHONE_NUMBER_REGEX","IMAGE_URL_REGEX","IsArray","IsEnum","IsNotEmpty","IsObject","IsOptional","IsString","IsUrl","Length","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationDto","slug","identity","members","location","CreateOrganizationIdentityDto","displayName","description","avatarUrl","bannerUrl","socialLinks","protocols","OrganizationMemberDto","user","role","UpdateOrganizationDto","CreateOrganizationEventDto","title","organization","type","public","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","IsDateString","IsEmail","IsPhoneNumber","Matches","MaxLength","MinLength","ValidateNested","UpdateUserDto","UpdateIdentifierDto","UpdateIdentityDto","email","phoneNumber","username","firstName","lastName","gender","birthDate","message","axios","isBrowser","window","instance","create","headers","Accept","responseType","transformRequest","data","JSON","stringify","withCredentials","request","__name","url","options","then","response","catch","error","pathcat","TonightPassAPIError","Error","status","constructor","Client","path","params","baseURL","setOptions","get","query","requester","undefined","post","body","put","patch","delete","method","result","success","sdk","builder","auth","client","signIn","signUp","signOut","refreshToken","oauth2","google","connect","href","twitter","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","organizationSlug","organizationsMembers","organizations","billing","events","profiles","users","me","check","suggestions","TonightPass"],"mappings":"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","sourcesContent":["export const DEFAULT_API_URL = \"https://api.tonightpass.com\";\n","export const EMAIL_REGEX = /^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$/;\n\n// checks if a password has at least one uppercase letter and a number or special character\nexport const PASSWORD_REGEX =\n /((?=.*\\d)|(?=.*\\W+))(?![.\\n])(?=.*[A-Z])(?=.*[a-z]).*$/;\n\n// checks if a string has only letters, numbers, spaces, apostrophes, dots and dashes\nexport const NAME_REGEX = /(^[\\p{L}\\d'\\\\.\\s\\\\-]*$)/u;\n\n// checks if a string is a valid slug, useful for usernames\nexport const SLUG_REGEX = /^[a-z\\d]+(?:(\\.|-|_)[a-z\\d]+)*$/;\n\n// validates if passwords are valid bcrypt hashes\nexport const BCRYPT_HASH = /\\$2[abxy]?\\$\\d{1,2}\\$[A-Za-z\\d\\\\./]{53}/;\n\nexport const PHONE_NUMBER_REGEX =\n /^\\s*(?:\\+?(\\d{1,3}))?([-. (]*(\\d{3})[-. )]*)?((\\d{3})[-. ]*(\\d{2,4})(?:[-.x ]*(\\d+))?)\\s*$/;\n\nexport const IMAGE_URL_REGEX =\n /(((http:\\/\\/www)|(http:\\/\\/)|(www))[-a-zA-Z0-9@:%_\\\\+.~#?&//=]+)\\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;\n","import \"reflect-metadata\";\n\nexport * from \"./organizations\";\nexport * from \"./users\";\n","import {\n IsArray,\n IsEnum,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport {\n OrganizationMemberRole,\n type Location,\n type OrganizationSocialLink,\n} from \"../../types\";\n\nexport class CreateOrganizationDto {\n @IsOptional()\n @IsString()\n @Length(1, 128)\n slug?: string;\n\n @IsObject()\n identity: CreateOrganizationIdentityDto;\n\n @IsArray()\n members: OrganizationMemberDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class CreateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n displayName: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n description: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n\nexport class OrganizationMemberDto {\n @IsString()\n @IsNotEmpty()\n user: string;\n\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { Base, Currency } from \"../../..\";\nimport {\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../dtos\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventTicket = Base & {\n name: string;\n description?: string;\n price: number;\n displayPrice: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n vatRate: number;\n externalId?: string;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n};\n\nexport type OrganizationEventTicketType = \"e-ticket\" | \"other\";\n\nexport enum OrganizationEventTicketCategory {\n Entry = \"entry\",\n Package = \"package\",\n Meal = \"meal\",\n Drink = \"drink\",\n Parking = \"parking\",\n Accommodation = \"accommodation\",\n Camping = \"camping\",\n Locker = \"locker\",\n Shuttle = \"shuttle\",\n Other = \"other\",\n}\n\nexport type OrganizationEventTicketEndpoints =\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket[]\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket\n >\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket,\n CreateOrganizationEventTicketDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket,\n UpdateOrganizationEventTicketDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket[],\n null\n >;\n","import { Base } from \"../../..\";\nimport {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../dtos/organizations/events/events\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventStyle = Base & {\n type: OrganizationEventStyleType;\n emoji: string;\n name: string;\n slug: string;\n};\n\nexport enum OrganizationEventStyleType {\n Music = \"music\",\n Dress = \"dress\",\n Sport = \"sport\",\n Food = \"food\",\n Art = \"art\",\n}\n\nexport type OrganizationEventStyleEndpoints =\n | Endpoint<\"GET\", \"/organizations/events/styles\", OrganizationEventStyle[]>\n | Endpoint<\n \"GET\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle\n >\n | Endpoint<\n \"POST\",\n \"/organizations/events/styles\",\n OrganizationEventStyle,\n CreateOrganizationEventStyleDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle,\n UpdateOrganizationEventStyleDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle[],\n null\n >;\n","import {\n OrganizationEventStyle,\n OrganizationEventStyleEndpoints,\n} from \"./styles\";\nimport {\n OrganizationEventTicket,\n Organization,\n OrganizationEventTicketEndpoints,\n} from \"..\";\nimport { Base, Location } from \"../..\";\nimport {\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../dtos\";\nimport { Endpoint } from \"../../../endpoints\";\n\nexport * from \"./tickets\";\nexport * from \"./styles\";\n\nexport type OrganizationEvent = Base & {\n title: string;\n description: string;\n slug: string;\n organization: Organization;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: OrganizationEventTicket[];\n styles: OrganizationEventStyle[];\n startAt: Date;\n endAt: Date;\n};\n\nexport enum OrganizationEventType {\n Clubbing = \"clubbing\",\n Concert = \"concert\",\n Afterwork = \"afterwork\",\n DancingLunch = \"dancing_lunch\",\n Diner = \"diner\",\n Garden = \"garden\",\n AfterBeach = \"after_beach\",\n Festival = \"festival\",\n Spectacle = \"spectacle\",\n Cruise = \"cruise\",\n OutsideAnimation = \"outside_animation\",\n Sport = \"sport\",\n Match = \"match\",\n Seminar = \"seminar\",\n Conference = \"conference\",\n WellnessDay = \"wellness_day\",\n Workshop = \"workshop\",\n TradeFair = \"trade_fair\",\n ConsumerShow = \"consumer_show\",\n Membership = \"membership\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events\", Event[]>\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events/:eventSlug\", Event>\n | Endpoint<\n \"POST\",\n \"/organizations/:organizationSlug/events\",\n Event,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { Base } from \"../..\";\nimport { OrganizationMemberDto } from \"../../../dtos\";\nimport { UpdateOrganizationMemberDto } from \"../../../dtos/organizations/members/update-organization-member.dto\";\nimport { Endpoint } from \"../../../endpoints\";\nimport { UserToken } from \"../../token\";\nimport { User } from \"../../users\";\n\nexport type OrganizationMember = Base & {\n organization: Organization;\n role: OrganizationMemberRole;\n status: OrganizationMemberStatus;\n user?: User;\n token?: UserToken;\n};\n\nexport enum OrganizationMemberStatus {\n Pending = \"pending\",\n Accepted = \"accepted\",\n Rejected = \"rejected\",\n}\n\nexport enum OrganizationMemberRole {\n Member = \"member\",\n Manager = \"manager\",\n Admin = \"admin\",\n Owner = \"owner\",\n}\n\nexport type OrganizationMembersEndpoints =\n | Endpoint<\"GET\", \"/organizations/members\", OrganizationMember[]>\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\"GET\", \"/organizations/:slug/members\", OrganizationMember[]>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/members\",\n OrganizationMember,\n OrganizationMemberDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember,\n UpdateOrganizationMemberDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember[],\n null\n >;\n","import type Stripe from \"stripe\";\n\nimport { OrganizationEvent, OrganizationEventEndpoints } from \"./events\";\nimport { OrganizationEventTicket } from \"./events/tickets\";\nimport { OrganizationMember, OrganizationMembersEndpoints } from \"./members\";\nimport { Base, Location, Profile, ProfileMetadata } from \"..\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport * from \"./events\";\nexport * from \"./members\";\n\nexport type Organization = Base & {\n slug: string;\n identity: OrganizationIdentity;\n members: OrganizationMember[];\n location?: Location;\n events: OrganizationEvent[];\n savedTickets: OrganizationEventTicket[];\n verified: boolean;\n billing: OrganizationBilling;\n};\n\nexport type OrganizationBilling = {\n account: string;\n};\n\nexport type OrganizationBillingAccount = Stripe.Account;\n\nexport type OrganizationIdentity = Profile & {\n socialLinks: OrganizationSocialLink[];\n\n metadata: ProfileMetadata & {\n eventsCount: number;\n viewsCount: number;\n membersCount: number;\n };\n};\n\nexport type OrganizationSocialLink = {\n type: OrganizationSocialType;\n url: string;\n};\n\nexport enum OrganizationSocialType {\n Facebook = \"facebook\",\n Twitter = \"twitter\",\n Instagram = \"instagram\",\n Linkedin = \"linkedin\",\n Youtube = \"youtube\",\n Website = \"website\",\n}\n\nexport type OrganizationEndpoints =\n | Endpoint<\"GET\", \"/organizations\", Organization[]>\n | Endpoint<\"GET\", \"/organizations/:slug\", Organization>\n | Endpoint<\"POST\", \"/organizations\", Organization, CreateOrganizationDto>\n | Endpoint<\"PUT\", \"/organizations/:slug\", Organization, UpdateOrganizationDto>\n | Endpoint<\"DELETE\", \"/organizations/:slug\", Organization, null>\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/billing/account\",\n OrganizationBillingAccount\n >\n | Endpoint<\"GET\", \"/organizations/:slug/billing/link\", void>\n | Endpoint<\"GET\", \"/organizations/:slug/billing/dashboard\", void>\n | OrganizationEventEndpoints\n | OrganizationMembersEndpoints;\n","import { User } from \"../users\";\n\nexport type UserToken = {\n type: UserTokenType;\n value: string;\n createdAt: Date;\n expiresAt: Date;\n user?: User;\n identifier?: string;\n};\n\nexport enum UserTokenType {\n Authentication = \"authentication\",\n OrganizationInvite = \"organization_invite\",\n PasswordRecovery = \"password_recovery\",\n EmailValidation = \"email_validation\",\n PhoneValidation = \"phone_validation\",\n}\n","import {\n Base,\n Currency,\n Language,\n Location,\n Profile,\n ProfileMetadata,\n} from \"..\";\nimport { UpdateUserDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport type User = Base & {\n identifier: UserIdentifier;\n password: string;\n identity: UserIdentity;\n role: UserRole;\n addresses: Location[];\n preferences: UserPreferences;\n connections: UserConnection[];\n verified: boolean;\n};\n\nexport type UserIdentifier = {\n email?: string;\n phoneNumber?: string;\n username: string;\n\n [key: string]: string | undefined;\n};\n\nexport type UserIdentity = Profile & {\n firstName: string;\n lastName: string;\n fullName: string;\n gender: UserIdentityGender;\n birthDate: Date;\n\n metadata: ProfileMetadata & {\n followingCount: number;\n hasPassPlus: boolean;\n idValid: boolean;\n };\n};\n\nexport enum UserRole {\n User = \"user\",\n Developer = \"developer\",\n Admin = \"admin\",\n}\n\nexport type UserIdentityGender =\n | \"male\"\n | \"female\"\n | \"non-binary\"\n | \"gender-fluid\"\n | \"neutral\"\n | \"other\"\n | string;\n\nexport type UserPreferences = {\n language: Language;\n currency: Currency;\n notifications: {\n email: {\n newsletter: boolean;\n message: boolean;\n };\n push: {\n message: boolean;\n };\n };\n};\n\nexport type UserConnection = {\n ip: string;\n os: UserConnectionOS;\n device: UserConnectionDevice;\n client: UserConnectionClient;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type UserConnectionOS = {\n name: string;\n version: string;\n};\n\nexport type UserConnectionDevice = {\n type: string;\n brand: string;\n};\n\nexport type UserConnectionClient = {\n name: string;\n version: string;\n};\n\nexport type UserEndpoints =\n | Endpoint<\"GET\", \"/users\", User[]>\n | Endpoint<\"GET\", \"/users/:id\", User, { id: string }>\n | Endpoint<\"GET\", \"/users/me\", User>\n | Endpoint<\n \"GET\",\n \"/users/check/:identifier\",\n {\n exists: boolean;\n identifier: UserIdentifier;\n suggestions?: string[];\n },\n { identifier: boolean; suggestions?: boolean }\n >\n | Endpoint<\"PUT\", \"/users/:id\", User, UpdateUserDto>;\n","import { Currency } from \"..\";\nimport { OrganizationEvent, OrganizationEventTicket } from \"../organizations\";\nimport { User } from \"../users\";\n\nexport enum OrderStatus {\n Created = \"created\",\n Cancelled = \"cancelled\",\n Completed = \"completed\",\n Pending = \"pending\",\n Confirmed = \"confirmed\",\n Declined = \"declined\",\n Refunded = \"refunded\",\n PartiallyRefunded = \"partially_refunded\",\n Expired = \"expired\",\n}\n\nexport type OrderItem = {\n id: string;\n ticket: OrganizationEventTicket;\n isUsed: boolean;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type Order = {\n id: string;\n owner: User;\n members: User[];\n status: OrderStatus;\n event: OrganizationEvent;\n items: OrderItem[];\n promoCode?: PromoCode;\n total: number;\n currency: Currency;\n createdAt: Date;\n};\n\nexport type PromoCode = {\n id: string;\n code: string;\n used: number;\n discount: number;\n isActive: boolean;\n expirationAt: Date;\n createdAt: Date;\n};\n","export * from \"./auth\";\nexport * from \"./careers\";\nexport * from \"./health\";\nexport * from \"./organizations\";\nexport * from \"./token\";\nexport * from \"./users\";\nexport * from \"./order\";\nexport * from \"./profiles\";\n\nexport type Base = {\n id: string;\n createdAt: Date;\n updatedAt: Date;\n};\n\nexport type ExcludeBase<T> = Omit<T, keyof Base>;\n\nexport type Location = {\n name?: string;\n address: string;\n zipCode: string;\n city: string;\n country: string;\n geometry?: {\n latitude: number;\n longitude: number;\n };\n};\n\n// Currency\nexport enum Currency {\n EUR = \"EUR\",\n USD = \"USD\",\n GBP = \"GBP\",\n}\n\n// I18n\nexport enum Language {\n FR = \"fr\",\n EN = \"en\",\n}\n","import { CreateOrganizationDto } from \"./create-organization.dto\";\n\nexport class UpdateOrganizationDto extends CreateOrganizationDto {}\n","import { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport { Location, OrganizationEventType } from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n title: string;\n description: string;\n organization: string;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n name: string;\n description?: string;\n price: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventTicketDto } from \"./create-organization-event-ticket.dto\";\n\nexport class UpdateOrganizationEventTicketDto extends CreateOrganizationEventTicketDto {}\n","import { Location, UserIdentifier, UserIdentityGender } from \"../../types\";\n\nexport class CreateUserDto {\n identifier: UserIdentifier;\n password: string;\n identity: CreateUserIdentituDto;\n addresses: Location[];\n}\n\nclass CreateUserIdentituDto {\n firstName: string;\n lastName: string;\n gender: UserIdentityGender;\n avatarUrl?: string;\n birthDate: Date;\n}\n","export class SignInUserDto {\n identifier: string;\n password: string;\n}\n","import { Type } from \"class-transformer\";\nimport {\n IsDateString,\n IsEmail,\n IsObject,\n IsOptional,\n IsPhoneNumber,\n IsString,\n IsUrl,\n Length,\n Matches,\n MaxLength,\n MinLength,\n ValidateNested,\n} from \"class-validator\";\n\nimport { NAME_REGEX } from \"../../../constants/regex\";\nimport { UserIdentifier, UserIdentity } from \"../../types\";\n\nexport class UpdateUserDto {\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentifierDto)\n identifier?: UpdateIdentifierDto;\n\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentityDto)\n identity?: UpdateIdentityDto;\n\n @IsOptional()\n @IsString()\n @MinLength(6)\n @MaxLength(130)\n password?: string;\n}\n\nclass UpdateIdentifierDto\n implements\n Partial<Pick<UserIdentifier, \"email\" | \"phoneNumber\" | \"username\">>\n{\n @IsOptional()\n @IsString()\n @IsEmail()\n email?: string;\n\n @IsOptional()\n @IsString()\n @IsPhoneNumber()\n phoneNumber?: string;\n\n @IsOptional()\n @IsString()\n @MinLength(3)\n username?: string;\n}\n\nclass UpdateIdentityDto\n implements\n Partial<\n Pick<\n UserIdentity,\n | \"firstName\"\n | \"lastName\"\n | \"displayName\"\n | \"description\"\n | \"avatarUrl\"\n | \"bannerUrl\"\n | \"gender\"\n | \"birthDate\"\n >\n >\n{\n @IsOptional()\n @IsString()\n @Length(2, 50)\n @Matches(NAME_REGEX, {\n message: \"First name must be composed of letters only\",\n })\n firstName?: string;\n\n @IsOptional()\n @IsString()\n @Length(2, 50)\n @Matches(NAME_REGEX, {\n message: \"Last name must be composed of letters only\",\n })\n lastName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 32)\n displayName?: string;\n\n @IsOptional()\n @IsString()\n @Length(15, 500)\n description?: string;\n\n @IsOptional()\n @IsUrl()\n avatarUrl?: string | undefined;\n\n @IsOptional()\n @IsUrl()\n bannerUrl?: string | undefined;\n\n @IsOptional()\n gender?: string;\n\n @IsOptional()\n @IsDateString()\n birthDate?: Date;\n}\n","import axios, { Options, Response } from \"redaxios\";\n\nimport { isBrowser } from \"../../utils\";\nimport { APIResponse, ErroredAPIResponse } from \"../endpoints\";\n\nconst instance = axios.create({\n headers: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n ...(!isBrowser && { \"User-Agent\": \"tonightpass-api-client\" }),\n },\n responseType: \"json\",\n transformRequest: [\n function (data) {\n return JSON.stringify(data);\n },\n ],\n withCredentials: isBrowser,\n});\n\nexport interface APIRequestOptions extends Options {}\n\nexport const request = async <T>(url: string, options?: Options) => {\n const response = instance<APIResponse<T>>(url, { ...options })\n .then((response) => response)\n .catch((error: Response<ErroredAPIResponse>) => {\n throw error.data;\n });\n\n return response;\n};\n","export const isBrowser = typeof window !== \"undefined\";\n","import { ParamValue, Query, pathcat } from \"pathcat\";\nimport { Options, Response } from \"redaxios\";\n\nimport { APIResponse, Endpoints, ErroredAPIResponse } from \"./endpoints\";\nimport { APIRequestOptions, request } from \"./request\";\nimport { DEFAULT_API_URL } from \"../constants\";\n\nexport type PathsFor<M extends Options[\"method\"]> = Extract<\n Endpoints,\n { method: M }\n>[\"path\"];\n\nexport class TonightPassAPIError<T> extends Error {\n public readonly status: number;\n\n constructor(\n public readonly response: Response<APIResponse<T>>,\n public readonly data: ErroredAPIResponse,\n ) {\n super(data.message);\n\n this.status = response.status;\n }\n}\n\nexport interface ClientOptions {\n readonly baseURL: string;\n}\n\nexport class Client {\n private options;\n public readonly url;\n\n constructor(options: ClientOptions) {\n this.options = options;\n this.url = (path: string, params: Record<string, ParamValue>) => {\n const baseURL = this.options.baseURL || DEFAULT_API_URL;\n return pathcat(baseURL, path, params);\n };\n }\n\n setOptions(options: ClientOptions) {\n this.options = options;\n }\n\n async get<Path extends PathsFor<\"GET\">>(\n path: Path,\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"GET\" }>[\"res\"]\n >(\"GET\", path, undefined, query, options);\n }\n\n async post<Path extends Extract<Endpoints, { method: \"POST\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"POST\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"POST\" }>[\"res\"]\n >(\"POST\", path, body, query, options);\n }\n\n async put<Path extends Extract<Endpoints, { method: \"PUT\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"res\"]\n >(\"PUT\", path, body, query, options);\n }\n\n async patch<Path extends Extract<Endpoints, { method: \"PATCH\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"res\"]\n >(\"PATCH\", path, body, query, options);\n }\n\n async delete<Path extends Extract<Endpoints, { method: \"DELETE\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"res\"]\n >(\"DELETE\", path, body, query, options);\n }\n\n private async requester<T>(\n method: Options[\"method\"],\n path: string,\n body: unknown,\n query: Query<string> = {},\n options: APIRequestOptions = {},\n ) {\n const url = this.url(path, query);\n\n if (body !== undefined) {\n if (method === \"GET\") {\n throw new Error(\"Cannot send a GET request with a body\");\n }\n }\n\n const response: Response<APIResponse<T>> = await request<T>(url, {\n method,\n data: body,\n ...options,\n });\n\n const result = response.data;\n\n if (!result.success) {\n throw new TonightPassAPIError<T>(response, result);\n }\n\n return result.data;\n }\n}\n","import { Client } from \"../rest\";\n\nexport function sdk<T>(builder: (client: Client) => T) {\n return builder;\n}\n","import { ParamValue } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\nimport { CreateUserDto, SignInUserDto } from \"../rest\";\nimport { isBrowser } from \"../utils\";\n\nexport const auth = sdk((client) => ({\n signIn: async (data: SignInUserDto) => client.post(\"/auth/sign-in\", data),\n signUp: async (data: CreateUserDto) => client.post(\"/auth/sign-up\", data),\n signOut: async () => client.post(\"/auth/sign-out\", null),\n refreshToken: async () => client.post(\"/auth/refresh-token\", null),\n\n oauth2: {\n google: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/google\", params || {});\n } else {\n throw new Error(\"Google OAuth2 is only available in the browser\");\n }\n },\n },\n twitter: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/twitter\", params || {});\n } else {\n throw new Error(\"Twitter OAuth2 is only available in the browser\");\n }\n },\n },\n },\n}));\n","import { Query } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\n\nexport const careers = sdk((client) => ({\n categories: {\n getAll: async (query?: Query<\"/careers/categories\">) =>\n client.get(\"/careers/categories\", query),\n },\n employmentTypes: {\n getAll: async (query?: Query<\"/careers/employmentTypes\">) =>\n client.get(\"/careers/employmentTypes\", query),\n },\n jobs: {\n getAll: async (query?: Query<\"/careers/jobs\">) =>\n client.get(\"/careers/jobs\", query),\n get: async (id: number) => client.get(\"/careers/jobs/:id\", { id }),\n },\n offices: {\n getAll: async (query?: Query<\"/careers/offices\">) =>\n client.get(\"/careers/offices\", query),\n },\n}));\n","import { sdk } from \"./builder\";\n\nexport const health = sdk((client) => ({\n getAll: async () => client.get(\"/health\"),\n database: async () => client.get(\"/health/database\"),\n http: async () => client.get(\"/health/http\"),\n}));\n","import { isBrowser } from \"../../../utils\";\nimport { sdk } from \"../../builder\";\n\nexport const organizationsBilling = sdk((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 {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../rest/dtos/organizations/events/events\";\nimport { sdk } from \"../../../builder\";\n\nexport const organizationsEventsStyles = sdk((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 CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../rest\";\nimport { sdk } from \"../../../builder\";\n\nexport const organizationsEventsTickets = sdk((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 CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\nimport { sdk } from \"../../builder\";\n\nexport const organizationsEvents = sdk((client) => ({\n getAll: async (organizationSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events\", {\n organizationSlug,\n }),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (organizationSlug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:organizationSlug/events\", data, {\n organizationSlug,\n }),\n update: async (\n organizationSlug: string,\n eventSlug: string,\n data: UpdateOrganizationEventDto,\n ) =>\n client.put(\"/organizations/:organizationSlug/events/:eventSlug\", data, {\n organizationSlug,\n eventSlug,\n }),\n delete: async (organizationSlug: string, eventSlug: string) =>\n client.delete(\"/organizations/:organizationSlug/events/:eventSlug\", null, {\n organizationSlug,\n eventSlug,\n }),\n styles: organizationsEventsStyles,\n tickets: organizationsEventsTickets,\n}));\n","import { sdk } from \"../../builder\";\n\nexport const organizationsMembers = sdk((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,\n events: organizationsEvents,\n members: organizationsMembers,\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 +1 @@
1
- {"version":3,"sources":["../src/constants/api.ts","../src/constants/regex.ts","../src/rest/dtos/index.ts","../src/rest/dtos/organizations/create-organization.dto.ts","../src/rest/types/organizations/events/tickets/index.ts","../src/rest/types/organizations/events/styles/index.ts","../src/rest/types/organizations/events/index.ts","../src/rest/types/organizations/members/index.ts","../src/rest/types/organizations/index.ts","../src/rest/types/token/index.ts","../src/rest/types/users/index.ts","../src/rest/types/order/index.ts","../src/rest/types/index.ts","../src/rest/dtos/organizations/update-organization.dto.ts","../src/rest/dtos/organizations/events/create-organization-event.dto.ts","../src/rest/dtos/organizations/events/update-organization-event.dto.ts","../src/rest/dtos/organizations/events/tickets/create-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/events/tickets/update-organization-event-ticket.dto.ts","../src/rest/dtos/users/create-user.dto.ts","../src/rest/dtos/users/sign-in-user.dto.ts","../src/rest/dtos/users/update-user.dto.ts","../src/rest/request/request.ts","../src/utils/index.ts","../src/rest/client.ts","../src/sdk/builder.ts","../src/sdk/auth.ts","../src/sdk/careers.ts","../src/sdk/health.ts","../src/sdk/organizations/billing/index.ts","../src/sdk/organizations/events/styles/index.ts","../src/sdk/organizations/events/tickets/index.ts","../src/sdk/organizations/events/index.ts","../src/sdk/organizations/members/index.ts","../src/sdk/organizations/index.ts","../src/sdk/profiles.ts","../src/sdk/users.ts","../src/tonightpass.ts"],"names":["DEFAULT_API_URL","EMAIL_REGEX","PASSWORD_REGEX","NAME_REGEX","SLUG_REGEX","BCRYPT_HASH","PHONE_NUMBER_REGEX","IMAGE_URL_REGEX","IsArray","IsEnum","IsNotEmpty","IsObject","IsOptional","IsString","IsUrl","Length","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationDto","slug","identity","members","location","CreateOrganizationIdentityDto","displayName","description","avatarUrl","bannerUrl","socialLinks","protocols","OrganizationMemberDto","user","role","UpdateOrganizationDto","CreateOrganizationEventDto","title","organization","type","public","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","IsDateString","IsEmail","IsPhoneNumber","Matches","MaxLength","MinLength","ValidateNested","UpdateUserDto","UpdateIdentifierDto","UpdateIdentityDto","email","phoneNumber","username","firstName","lastName","gender","birthDate","message","axios","isBrowser","window","instance","create","headers","Accept","responseType","transformRequest","data","JSON","stringify","withCredentials","request","__name","url","options","then","response","catch","error","pathcat","TonightPassAPIError","Error","status","constructor","Client","path","params","baseURL","setOptions","get","query","requester","undefined","post","body","put","patch","delete","method","result","success","sdk","builder","auth","client","signIn","signUp","signOut","refreshToken","oauth2","google","connect","href","twitter","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","organizationSlug","organizationsMembers","organizations","billing","events","profiles","users","me","check","suggestions","TonightPass"],"mappings":"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","sourcesContent":["export const DEFAULT_API_URL = \"https://api.tonightpass.com\";\n","export const EMAIL_REGEX = /^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$/;\n\n// checks if a password has at least one uppercase letter and a number or special character\nexport const PASSWORD_REGEX =\n /((?=.*\\d)|(?=.*\\W+))(?![.\\n])(?=.*[A-Z])(?=.*[a-z]).*$/;\n\n// checks if a string has only letters, numbers, spaces, apostrophes, dots and dashes\nexport const NAME_REGEX = /(^[\\p{L}\\d'\\\\.\\s\\\\-]*$)/u;\n\n// checks if a string is a valid slug, useful for usernames\nexport const SLUG_REGEX = /^[a-z\\d]+(?:(\\.|-|_)[a-z\\d]+)*$/;\n\n// validates if passwords are valid bcrypt hashes\nexport const BCRYPT_HASH = /\\$2[abxy]?\\$\\d{1,2}\\$[A-Za-z\\d\\\\./]{53}/;\n\nexport const PHONE_NUMBER_REGEX =\n /^\\s*(?:\\+?(\\d{1,3}))?([-. (]*(\\d{3})[-. )]*)?((\\d{3})[-. ]*(\\d{2,4})(?:[-.x ]*(\\d+))?)\\s*$/;\n\nexport const IMAGE_URL_REGEX =\n /(((http:\\/\\/www)|(http:\\/\\/)|(www))[-a-zA-Z0-9@:%_\\\\+.~#?&//=]+)\\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;\n","import \"reflect-metadata\";\n\nexport * from \"./organizations\";\nexport * from \"./users\";\n","import {\n IsArray,\n IsEnum,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport {\n OrganizationMemberRole,\n type Location,\n type OrganizationSocialLink,\n} from \"../../types\";\n\nexport class CreateOrganizationDto {\n @IsOptional()\n @IsString()\n @Length(1, 128)\n slug?: string;\n\n @IsObject()\n identity: CreateOrganizationIdentityDto;\n\n @IsArray()\n members: OrganizationMemberDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class CreateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n displayName: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n description: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n\nexport class OrganizationMemberDto {\n @IsString()\n @IsNotEmpty()\n user: string;\n\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { Currency } from \"../../..\";\nimport {\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../dtos\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventTicket = {\n id: string;\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 updatedAt: Date;\n createdAt: Date;\n};\n\nexport type OrganizationEventTicketType = \"e-ticket\" | \"other\";\n\nexport enum OrganizationEventTicketCategory {\n Entry = \"entry\",\n Package = \"package\",\n Meal = \"meal\",\n Drink = \"drink\",\n Parking = \"parking\",\n Accommodation = \"accommodation\",\n Camping = \"camping\",\n Locker = \"locker\",\n Shuttle = \"shuttle\",\n Other = \"other\",\n}\n\nexport type OrganizationEventTicketEndpoints =\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket[]\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket\n >\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket,\n CreateOrganizationEventTicketDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket,\n UpdateOrganizationEventTicketDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket[],\n null\n >;\n","import {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../dtos/organizations/events/events\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventStyle = {\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 { 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 = {\n title: string;\n description: string;\n slug: string;\n organization: Organization;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: OrganizationEventTicket[];\n styles: OrganizationEventStyle[];\n startAt: Date;\n endAt: Date;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport enum OrganizationEventType {\n Clubbing = \"clubbing\",\n Concert = \"concert\",\n Afterwork = \"afterwork\",\n DancingLunch = \"dancing_lunch\",\n Diner = \"diner\",\n Garden = \"garden\",\n AfterBeach = \"after_beach\",\n Festival = \"festival\",\n Spectacle = \"spectacle\",\n Cruise = \"cruise\",\n OutsideAnimation = \"outside_animation\",\n Sport = \"sport\",\n Match = \"match\",\n Seminar = \"seminar\",\n Conference = \"conference\",\n WellnessDay = \"wellness_day\",\n Workshop = \"workshop\",\n TradeFair = \"trade_fair\",\n ConsumerShow = \"consumer_show\",\n Membership = \"membership\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events\", Event[]>\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events/:eventSlug\", Event>\n | Endpoint<\n \"POST\",\n \"/organizations/:organizationSlug/events\",\n Event,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { OrganizationMemberDto } from \"../../../dtos\";\nimport { UpdateOrganizationMemberDto } from \"../../../dtos/organizations/members/update-organization-member.dto\";\nimport { Endpoint } from \"../../../endpoints\";\nimport { UserToken } from \"../../token\";\nimport { User } from \"../../users\";\n\nexport type OrganizationMember = {\n organization: Organization;\n role: OrganizationMemberRole;\n status: OrganizationMemberStatus;\n updatedAt: Date;\n createdAt: Date;\n user?: User;\n token?: UserToken;\n};\n\nexport enum OrganizationMemberStatus {\n Pending = \"pending\",\n Accepted = \"accepted\",\n Rejected = \"rejected\",\n}\n\nexport enum OrganizationMemberRole {\n Member = \"member\",\n Manager = \"manager\",\n Admin = \"admin\",\n Owner = \"owner\",\n}\n\nexport type OrganizationMembersEndpoints =\n | Endpoint<\"GET\", \"/organizations/members\", OrganizationMember[]>\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\"GET\", \"/organizations/:slug/members\", OrganizationMember[]>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/members\",\n OrganizationMember,\n OrganizationMemberDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember,\n UpdateOrganizationMemberDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember[],\n null\n >;\n","import type Stripe from \"stripe\";\n\nimport { OrganizationEvent, OrganizationEventEndpoints } from \"./events\";\nimport { OrganizationEventTicket } from \"./events/tickets\";\nimport { OrganizationMember, OrganizationMembersEndpoints } from \"./members\";\nimport { Location, Profile, ProfileMetadata } from \"..\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport * from \"./events\";\nexport * from \"./members\";\n\nexport type Organization = {\n id: string;\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 updatedAt: Date;\n createdAt: Date;\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 id: string;\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 { Currency, Language, Location, Profile, ProfileMetadata } from \"..\";\nimport { UpdateUserDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport type User = {\n id: string;\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 updatedAt: Date;\n createdAt: Date;\n};\n\nexport type UserIdentifier = {\n email?: string;\n phoneNumber?: string;\n username: string;\n\n [key: string]: string | undefined;\n};\n\nexport type UserIdentity = Profile & {\n firstName: string;\n lastName: string;\n fullName: string;\n gender: UserIdentityGender;\n birthDate: Date;\n\n metadata: ProfileMetadata & {\n followingCount: number;\n hasPassPlus: boolean;\n idValid: boolean;\n };\n};\n\nexport enum UserRole {\n User = \"user\",\n Developer = \"developer\",\n Admin = \"admin\",\n}\n\nexport type UserIdentityGender =\n | \"male\"\n | \"female\"\n | \"non-binary\"\n | \"gender-fluid\"\n | \"neutral\"\n | \"other\"\n | string;\n\nexport type UserPreferences = {\n language: Language;\n currency: Currency;\n notifications: {\n email: {\n newsletter: boolean;\n message: boolean;\n };\n push: {\n message: boolean;\n };\n };\n};\n\nexport type UserConnection = {\n ip: string;\n os: UserConnectionOS;\n device: UserConnectionDevice;\n client: UserConnectionClient;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type UserConnectionOS = {\n name: string;\n version: string;\n};\n\nexport type UserConnectionDevice = {\n type: string;\n brand: string;\n};\n\nexport type UserConnectionClient = {\n name: string;\n version: string;\n};\n\nexport type UserEndpoints =\n | Endpoint<\"GET\", \"/users\", User[]>\n | Endpoint<\"GET\", \"/users/:id\", User, { id: string }>\n | Endpoint<\"GET\", \"/users/me\", User>\n | Endpoint<\n \"GET\",\n \"/users/check/:identifier\",\n {\n exists: boolean;\n identifier: UserIdentifier;\n suggestions?: string[];\n },\n { identifier: boolean; suggestions?: boolean }\n >\n | Endpoint<\"PUT\", \"/users/:id\", User, UpdateUserDto>;\n","import { Currency } from \"..\";\nimport { OrganizationEvent, OrganizationEventTicket } from \"../organizations\";\nimport { User } from \"../users\";\n\nexport enum OrderStatus {\n Created = \"created\",\n Cancelled = \"cancelled\",\n Completed = \"completed\",\n Pending = \"pending\",\n Confirmed = \"confirmed\",\n Declined = \"declined\",\n Refunded = \"refunded\",\n PartiallyRefunded = \"partially_refunded\",\n Expired = \"expired\",\n}\n\nexport type OrderItem = {\n id: string;\n ticket: OrganizationEventTicket;\n isUsed: boolean;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type Order = {\n id: string;\n owner: User;\n members: User[];\n status: OrderStatus;\n event: OrganizationEvent;\n items: OrderItem[];\n promoCode?: PromoCode;\n total: number;\n currency: Currency;\n createdAt: Date;\n};\n\nexport type PromoCode = {\n id: string;\n code: string;\n used: number;\n discount: number;\n isActive: boolean;\n expirationAt: Date;\n createdAt: Date;\n};\n","export * from \"./auth\";\nexport * from \"./careers\";\nexport * from \"./health\";\nexport * from \"./organizations\";\nexport * from \"./token\";\nexport * from \"./users\";\nexport * from \"./order\";\nexport * from \"./profiles\";\n\nexport type Location = {\n name?: string;\n address: string;\n zipCode: string;\n city: string;\n country: string;\n geometry?: {\n latitude: number;\n longitude: number;\n };\n};\n\n// Currency\nexport enum Currency {\n EUR = \"EUR\",\n USD = \"USD\",\n GBP = \"GBP\",\n}\n\n// I18n\nexport enum Language {\n FR = \"fr\",\n EN = \"en\",\n}\n","import { CreateOrganizationDto } from \"./create-organization.dto\";\n\nexport class UpdateOrganizationDto extends CreateOrganizationDto {}\n","import { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport { Location, OrganizationEventType } from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n title: string;\n description: string;\n organization: string;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n name: string;\n description?: string;\n price: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventTicketDto } from \"./create-organization-event-ticket.dto\";\n\nexport class UpdateOrganizationEventTicketDto extends CreateOrganizationEventTicketDto {}\n","import { Location, UserIdentifier, UserIdentityGender } from \"../../types\";\n\nexport class CreateUserDto {\n identifier: UserIdentifier;\n password: string;\n identity: CreateUserIdentituDto;\n addresses: Location[];\n}\n\nclass CreateUserIdentituDto {\n firstName: string;\n lastName: string;\n gender: UserIdentityGender;\n avatarUrl?: string;\n birthDate: Date;\n}\n","export class SignInUserDto {\n identifier: string;\n password: string;\n}\n","import { Type } from \"class-transformer\";\nimport {\n IsDateString,\n IsEmail,\n IsObject,\n IsOptional,\n IsPhoneNumber,\n IsString,\n IsUrl,\n Length,\n Matches,\n MaxLength,\n MinLength,\n ValidateNested,\n} from \"class-validator\";\n\nimport { NAME_REGEX } from \"../../../constants/regex\";\nimport { UserIdentifier, UserIdentity } from \"../../types\";\n\nexport class UpdateUserDto {\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentifierDto)\n identifier?: UpdateIdentifierDto;\n\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentityDto)\n identity?: UpdateIdentityDto;\n\n @IsOptional()\n @IsString()\n @MinLength(6)\n @MaxLength(130)\n password?: string;\n}\n\nclass UpdateIdentifierDto\n implements\n Partial<Pick<UserIdentifier, \"email\" | \"phoneNumber\" | \"username\">>\n{\n @IsOptional()\n @IsString()\n @IsEmail()\n email?: string;\n\n @IsOptional()\n @IsString()\n @IsPhoneNumber()\n phoneNumber?: string;\n\n @IsOptional()\n @IsString()\n @MinLength(3)\n username?: string;\n}\n\nclass UpdateIdentityDto\n implements\n Partial<\n Pick<\n UserIdentity,\n | \"firstName\"\n | \"lastName\"\n | \"displayName\"\n | \"description\"\n | \"avatarUrl\"\n | \"bannerUrl\"\n | \"gender\"\n | \"birthDate\"\n >\n >\n{\n @IsOptional()\n @IsString()\n @Length(2, 50)\n @Matches(NAME_REGEX, {\n message: \"First name must be composed of letters only\",\n })\n firstName?: string;\n\n @IsOptional()\n @IsString()\n @Length(2, 50)\n @Matches(NAME_REGEX, {\n message: \"Last name must be composed of letters only\",\n })\n lastName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 32)\n displayName?: string;\n\n @IsOptional()\n @IsString()\n @Length(15, 500)\n description?: string;\n\n @IsOptional()\n @IsUrl()\n avatarUrl?: string | undefined;\n\n @IsOptional()\n @IsUrl()\n bannerUrl?: string | undefined;\n\n @IsOptional()\n gender?: string;\n\n @IsOptional()\n @IsDateString()\n birthDate?: Date;\n}\n","import axios, { Options, Response } from \"redaxios\";\n\nimport { isBrowser } from \"../../utils\";\nimport { APIResponse, ErroredAPIResponse } from \"../endpoints\";\n\nconst instance = axios.create({\n headers: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n ...(!isBrowser && { \"User-Agent\": \"tonightpass-api-client\" }),\n },\n responseType: \"json\",\n transformRequest: [\n function (data) {\n return JSON.stringify(data);\n },\n ],\n withCredentials: isBrowser,\n});\n\nexport interface APIRequestOptions extends Options {}\n\nexport const request = async <T>(url: string, options?: Options) => {\n const response = instance<APIResponse<T>>(url, { ...options })\n .then((response) => response)\n .catch((error: Response<ErroredAPIResponse>) => {\n throw error.data;\n });\n\n return response;\n};\n","export const isBrowser = typeof window !== \"undefined\";\n","import { ParamValue, Query, pathcat } from \"pathcat\";\nimport { Options, Response } from \"redaxios\";\n\nimport { APIResponse, Endpoints, ErroredAPIResponse } from \"./endpoints\";\nimport { APIRequestOptions, request } from \"./request\";\nimport { DEFAULT_API_URL } from \"../constants\";\n\nexport type PathsFor<M extends Options[\"method\"]> = Extract<\n Endpoints,\n { method: M }\n>[\"path\"];\n\nexport class TonightPassAPIError<T> extends Error {\n public readonly status: number;\n\n constructor(\n public readonly response: Response<APIResponse<T>>,\n public readonly data: ErroredAPIResponse,\n ) {\n super(data.message);\n\n this.status = response.status;\n }\n}\n\nexport interface ClientOptions {\n readonly baseURL: string;\n}\n\nexport class Client {\n private options;\n public readonly url;\n\n constructor(options: ClientOptions) {\n this.options = options;\n this.url = (path: string, params: Record<string, ParamValue>) => {\n const baseURL = this.options.baseURL || DEFAULT_API_URL;\n return pathcat(baseURL, path, params);\n };\n }\n\n setOptions(options: ClientOptions) {\n this.options = options;\n }\n\n async get<Path extends PathsFor<\"GET\">>(\n path: Path,\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"GET\" }>[\"res\"]\n >(\"GET\", path, undefined, query, options);\n }\n\n async post<Path extends Extract<Endpoints, { method: \"POST\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"POST\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"POST\" }>[\"res\"]\n >(\"POST\", path, body, query, options);\n }\n\n async put<Path extends Extract<Endpoints, { method: \"PUT\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"res\"]\n >(\"PUT\", path, body, query, options);\n }\n\n async patch<Path extends Extract<Endpoints, { method: \"PATCH\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"res\"]\n >(\"PATCH\", path, body, query, options);\n }\n\n async delete<Path extends Extract<Endpoints, { method: \"DELETE\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"res\"]\n >(\"DELETE\", path, body, query, options);\n }\n\n private async requester<T>(\n method: Options[\"method\"],\n path: string,\n body: unknown,\n query: Query<string> = {},\n options: APIRequestOptions = {},\n ) {\n const url = this.url(path, query);\n\n if (body !== undefined) {\n if (method === \"GET\") {\n throw new Error(\"Cannot send a GET request with a body\");\n }\n }\n\n const response: Response<APIResponse<T>> = await request<T>(url, {\n method,\n data: body,\n ...options,\n });\n\n const result = response.data;\n\n if (!result.success) {\n throw new TonightPassAPIError<T>(response, result);\n }\n\n return result.data;\n }\n}\n","import { Client } from \"../rest\";\n\nexport function sdk<T>(builder: (client: Client) => T) {\n return builder;\n}\n","import { ParamValue } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\nimport { CreateUserDto, SignInUserDto } from \"../rest\";\nimport { isBrowser } from \"../utils\";\n\nexport const auth = sdk((client) => ({\n signIn: async (data: SignInUserDto) => client.post(\"/auth/sign-in\", data),\n signUp: async (data: CreateUserDto) => client.post(\"/auth/sign-up\", data),\n signOut: async () => client.post(\"/auth/sign-out\", null),\n refreshToken: async () => client.post(\"/auth/refresh-token\", null),\n\n oauth2: {\n google: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/google\", params || {});\n } else {\n throw new Error(\"Google OAuth2 is only available in the browser\");\n }\n },\n },\n twitter: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/twitter\", params || {});\n } else {\n throw new Error(\"Twitter OAuth2 is only available in the browser\");\n }\n },\n },\n },\n}));\n","import { Query } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\n\nexport const careers = sdk((client) => ({\n categories: {\n getAll: async (query?: Query<\"/careers/categories\">) =>\n client.get(\"/careers/categories\", query),\n },\n employmentTypes: {\n getAll: async (query?: Query<\"/careers/employmentTypes\">) =>\n client.get(\"/careers/employmentTypes\", query),\n },\n jobs: {\n getAll: async (query?: Query<\"/careers/jobs\">) =>\n client.get(\"/careers/jobs\", query),\n get: async (id: number) => client.get(\"/careers/jobs/:id\", { id }),\n },\n offices: {\n getAll: async (query?: Query<\"/careers/offices\">) =>\n client.get(\"/careers/offices\", query),\n },\n}));\n","import { sdk } from \"./builder\";\n\nexport const health = sdk((client) => ({\n getAll: async () => client.get(\"/health\"),\n database: async () => client.get(\"/health/database\"),\n http: async () => client.get(\"/health/http\"),\n}));\n","import { isBrowser } from \"../../../utils\";\nimport { sdk } from \"../../builder\";\n\nexport const organizationsBilling = sdk((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 {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../rest/dtos/organizations/events/events\";\nimport { sdk } from \"../../../builder\";\n\nexport const organizationsEventsStyles = sdk((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 CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../rest\";\nimport { sdk } from \"../../../builder\";\n\nexport const organizationsEventsTickets = sdk((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 CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\nimport { sdk } from \"../../builder\";\n\nexport const organizationsEvents = sdk((client) => ({\n getAll: async (organizationSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events\", {\n organizationSlug,\n }),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (organizationSlug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:organizationSlug/events\", data, {\n organizationSlug,\n }),\n update: async (\n organizationSlug: string,\n eventSlug: string,\n data: UpdateOrganizationEventDto,\n ) =>\n client.put(\"/organizations/:organizationSlug/events/:eventSlug\", data, {\n organizationSlug,\n eventSlug,\n }),\n delete: async (organizationSlug: string, eventSlug: string) =>\n client.delete(\"/organizations/:organizationSlug/events/:eventSlug\", null, {\n organizationSlug,\n eventSlug,\n }),\n styles: organizationsEventsStyles,\n tickets: organizationsEventsTickets,\n}));\n","import { sdk } from \"../../builder\";\n\nexport const organizationsMembers = sdk((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,\n events: organizationsEvents,\n members: organizationsMembers,\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/types/organizations/events/tickets/index.ts","../src/rest/types/organizations/events/styles/index.ts","../src/rest/types/organizations/events/index.ts","../src/rest/types/organizations/members/index.ts","../src/rest/types/organizations/index.ts","../src/rest/types/token/index.ts","../src/rest/types/users/index.ts","../src/rest/types/order/index.ts","../src/rest/types/index.ts","../src/rest/dtos/organizations/update-organization.dto.ts","../src/rest/dtos/organizations/events/create-organization-event.dto.ts","../src/rest/dtos/organizations/events/update-organization-event.dto.ts","../src/rest/dtos/organizations/events/tickets/create-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/events/tickets/update-organization-event-ticket.dto.ts","../src/rest/dtos/users/create-user.dto.ts","../src/rest/dtos/users/sign-in-user.dto.ts","../src/rest/dtos/users/update-user.dto.ts","../src/rest/request/request.ts","../src/utils/index.ts","../src/rest/client.ts","../src/sdk/builder.ts","../src/sdk/auth.ts","../src/sdk/careers.ts","../src/sdk/health.ts","../src/sdk/organizations/billing/index.ts","../src/sdk/organizations/events/styles/index.ts","../src/sdk/organizations/events/tickets/index.ts","../src/sdk/organizations/events/index.ts","../src/sdk/organizations/members/index.ts","../src/sdk/organizations/index.ts","../src/sdk/profiles.ts","../src/sdk/users.ts","../src/tonightpass.ts"],"names":["DEFAULT_API_URL","EMAIL_REGEX","PASSWORD_REGEX","NAME_REGEX","SLUG_REGEX","BCRYPT_HASH","PHONE_NUMBER_REGEX","IMAGE_URL_REGEX","IsArray","IsEnum","IsNotEmpty","IsObject","IsOptional","IsString","IsUrl","Length","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationDto","slug","identity","members","location","CreateOrganizationIdentityDto","displayName","description","avatarUrl","bannerUrl","socialLinks","protocols","OrganizationMemberDto","user","role","UpdateOrganizationDto","CreateOrganizationEventDto","title","organization","type","public","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","IsDateString","IsEmail","IsPhoneNumber","Matches","MaxLength","MinLength","ValidateNested","UpdateUserDto","UpdateIdentifierDto","UpdateIdentityDto","email","phoneNumber","username","firstName","lastName","gender","birthDate","message","axios","isBrowser","window","instance","create","headers","Accept","responseType","transformRequest","data","JSON","stringify","withCredentials","request","__name","url","options","then","response","catch","error","pathcat","TonightPassAPIError","Error","status","constructor","Client","path","params","baseURL","setOptions","get","query","requester","undefined","post","body","put","patch","delete","method","result","success","sdk","builder","auth","client","signIn","signUp","signOut","refreshToken","oauth2","google","connect","href","twitter","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","organizationSlug","organizationsMembers","organizations","billing","events","profiles","users","me","check","suggestions","TonightPass"],"mappings":"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","sourcesContent":["export const DEFAULT_API_URL = \"https://api.tonightpass.com\";\n","export const EMAIL_REGEX = /^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$/;\n\n// checks if a password has at least one uppercase letter and a number or special character\nexport const PASSWORD_REGEX =\n /((?=.*\\d)|(?=.*\\W+))(?![.\\n])(?=.*[A-Z])(?=.*[a-z]).*$/;\n\n// checks if a string has only letters, numbers, spaces, apostrophes, dots and dashes\nexport const NAME_REGEX = /(^[\\p{L}\\d'\\\\.\\s\\\\-]*$)/u;\n\n// checks if a string is a valid slug, useful for usernames\nexport const SLUG_REGEX = /^[a-z\\d]+(?:(\\.|-|_)[a-z\\d]+)*$/;\n\n// validates if passwords are valid bcrypt hashes\nexport const BCRYPT_HASH = /\\$2[abxy]?\\$\\d{1,2}\\$[A-Za-z\\d\\\\./]{53}/;\n\nexport const PHONE_NUMBER_REGEX =\n /^\\s*(?:\\+?(\\d{1,3}))?([-. (]*(\\d{3})[-. )]*)?((\\d{3})[-. ]*(\\d{2,4})(?:[-.x ]*(\\d+))?)\\s*$/;\n\nexport const IMAGE_URL_REGEX =\n /(((http:\\/\\/www)|(http:\\/\\/)|(www))[-a-zA-Z0-9@:%_\\\\+.~#?&//=]+)\\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;\n","import \"reflect-metadata\";\n\nexport * from \"./organizations\";\nexport * from \"./users\";\n","import {\n IsArray,\n IsEnum,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport {\n OrganizationMemberRole,\n type Location,\n type OrganizationSocialLink,\n} from \"../../types\";\n\nexport class CreateOrganizationDto {\n @IsOptional()\n @IsString()\n @Length(1, 128)\n slug?: string;\n\n @IsObject()\n identity: CreateOrganizationIdentityDto;\n\n @IsArray()\n members: OrganizationMemberDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class CreateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n displayName: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n description: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n\nexport class OrganizationMemberDto {\n @IsString()\n @IsNotEmpty()\n user: string;\n\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { Base, Currency } from \"../../..\";\nimport {\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../dtos\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventTicket = Base & {\n name: string;\n description?: string;\n price: number;\n displayPrice: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n vatRate: number;\n externalId?: string;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n};\n\nexport type OrganizationEventTicketType = \"e-ticket\" | \"other\";\n\nexport enum OrganizationEventTicketCategory {\n Entry = \"entry\",\n Package = \"package\",\n Meal = \"meal\",\n Drink = \"drink\",\n Parking = \"parking\",\n Accommodation = \"accommodation\",\n Camping = \"camping\",\n Locker = \"locker\",\n Shuttle = \"shuttle\",\n Other = \"other\",\n}\n\nexport type OrganizationEventTicketEndpoints =\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket[]\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket\n >\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket,\n CreateOrganizationEventTicketDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket,\n UpdateOrganizationEventTicketDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket[],\n null\n >;\n","import { Base } from \"../../..\";\nimport {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../dtos/organizations/events/events\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventStyle = Base & {\n type: OrganizationEventStyleType;\n emoji: string;\n name: string;\n slug: string;\n};\n\nexport enum OrganizationEventStyleType {\n Music = \"music\",\n Dress = \"dress\",\n Sport = \"sport\",\n Food = \"food\",\n Art = \"art\",\n}\n\nexport type OrganizationEventStyleEndpoints =\n | Endpoint<\"GET\", \"/organizations/events/styles\", OrganizationEventStyle[]>\n | Endpoint<\n \"GET\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle\n >\n | Endpoint<\n \"POST\",\n \"/organizations/events/styles\",\n OrganizationEventStyle,\n CreateOrganizationEventStyleDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle,\n UpdateOrganizationEventStyleDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle[],\n null\n >;\n","import {\n OrganizationEventStyle,\n OrganizationEventStyleEndpoints,\n} from \"./styles\";\nimport {\n OrganizationEventTicket,\n Organization,\n OrganizationEventTicketEndpoints,\n} from \"..\";\nimport { Base, Location } from \"../..\";\nimport {\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../dtos\";\nimport { Endpoint } from \"../../../endpoints\";\n\nexport * from \"./tickets\";\nexport * from \"./styles\";\n\nexport type OrganizationEvent = Base & {\n title: string;\n description: string;\n slug: string;\n organization: Organization;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: OrganizationEventTicket[];\n styles: OrganizationEventStyle[];\n startAt: Date;\n endAt: Date;\n};\n\nexport enum OrganizationEventType {\n Clubbing = \"clubbing\",\n Concert = \"concert\",\n Afterwork = \"afterwork\",\n DancingLunch = \"dancing_lunch\",\n Diner = \"diner\",\n Garden = \"garden\",\n AfterBeach = \"after_beach\",\n Festival = \"festival\",\n Spectacle = \"spectacle\",\n Cruise = \"cruise\",\n OutsideAnimation = \"outside_animation\",\n Sport = \"sport\",\n Match = \"match\",\n Seminar = \"seminar\",\n Conference = \"conference\",\n WellnessDay = \"wellness_day\",\n Workshop = \"workshop\",\n TradeFair = \"trade_fair\",\n ConsumerShow = \"consumer_show\",\n Membership = \"membership\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events\", Event[]>\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events/:eventSlug\", Event>\n | Endpoint<\n \"POST\",\n \"/organizations/:organizationSlug/events\",\n Event,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { Base } from \"../..\";\nimport { OrganizationMemberDto } from \"../../../dtos\";\nimport { UpdateOrganizationMemberDto } from \"../../../dtos/organizations/members/update-organization-member.dto\";\nimport { Endpoint } from \"../../../endpoints\";\nimport { UserToken } from \"../../token\";\nimport { User } from \"../../users\";\n\nexport type OrganizationMember = Base & {\n organization: Organization;\n role: OrganizationMemberRole;\n status: OrganizationMemberStatus;\n user?: User;\n token?: UserToken;\n};\n\nexport enum OrganizationMemberStatus {\n Pending = \"pending\",\n Accepted = \"accepted\",\n Rejected = \"rejected\",\n}\n\nexport enum OrganizationMemberRole {\n Member = \"member\",\n Manager = \"manager\",\n Admin = \"admin\",\n Owner = \"owner\",\n}\n\nexport type OrganizationMembersEndpoints =\n | Endpoint<\"GET\", \"/organizations/members\", OrganizationMember[]>\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\"GET\", \"/organizations/:slug/members\", OrganizationMember[]>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/members\",\n OrganizationMember,\n OrganizationMemberDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember,\n UpdateOrganizationMemberDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember[],\n null\n >;\n","import type Stripe from \"stripe\";\n\nimport { OrganizationEvent, OrganizationEventEndpoints } from \"./events\";\nimport { OrganizationEventTicket } from \"./events/tickets\";\nimport { OrganizationMember, OrganizationMembersEndpoints } from \"./members\";\nimport { Base, Location, Profile, ProfileMetadata } from \"..\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport * from \"./events\";\nexport * from \"./members\";\n\nexport type Organization = Base & {\n slug: string;\n identity: OrganizationIdentity;\n members: OrganizationMember[];\n location?: Location;\n events: OrganizationEvent[];\n savedTickets: OrganizationEventTicket[];\n verified: boolean;\n billing: OrganizationBilling;\n};\n\nexport type OrganizationBilling = {\n account: string;\n};\n\nexport type OrganizationBillingAccount = Stripe.Account;\n\nexport type OrganizationIdentity = Profile & {\n socialLinks: OrganizationSocialLink[];\n\n metadata: ProfileMetadata & {\n eventsCount: number;\n viewsCount: number;\n membersCount: number;\n };\n};\n\nexport type OrganizationSocialLink = {\n type: OrganizationSocialType;\n url: string;\n};\n\nexport enum OrganizationSocialType {\n Facebook = \"facebook\",\n Twitter = \"twitter\",\n Instagram = \"instagram\",\n Linkedin = \"linkedin\",\n Youtube = \"youtube\",\n Website = \"website\",\n}\n\nexport type OrganizationEndpoints =\n | Endpoint<\"GET\", \"/organizations\", Organization[]>\n | Endpoint<\"GET\", \"/organizations/:slug\", Organization>\n | Endpoint<\"POST\", \"/organizations\", Organization, CreateOrganizationDto>\n | Endpoint<\"PUT\", \"/organizations/:slug\", Organization, UpdateOrganizationDto>\n | Endpoint<\"DELETE\", \"/organizations/:slug\", Organization, null>\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/billing/account\",\n OrganizationBillingAccount\n >\n | Endpoint<\"GET\", \"/organizations/:slug/billing/link\", void>\n | Endpoint<\"GET\", \"/organizations/:slug/billing/dashboard\", void>\n | OrganizationEventEndpoints\n | OrganizationMembersEndpoints;\n","import { User } from \"../users\";\n\nexport type UserToken = {\n type: UserTokenType;\n value: string;\n createdAt: Date;\n expiresAt: Date;\n user?: User;\n identifier?: string;\n};\n\nexport enum UserTokenType {\n Authentication = \"authentication\",\n OrganizationInvite = \"organization_invite\",\n PasswordRecovery = \"password_recovery\",\n EmailValidation = \"email_validation\",\n PhoneValidation = \"phone_validation\",\n}\n","import {\n Base,\n Currency,\n Language,\n Location,\n Profile,\n ProfileMetadata,\n} from \"..\";\nimport { UpdateUserDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport type User = Base & {\n identifier: UserIdentifier;\n password: string;\n identity: UserIdentity;\n role: UserRole;\n addresses: Location[];\n preferences: UserPreferences;\n connections: UserConnection[];\n verified: boolean;\n};\n\nexport type UserIdentifier = {\n email?: string;\n phoneNumber?: string;\n username: string;\n\n [key: string]: string | undefined;\n};\n\nexport type UserIdentity = Profile & {\n firstName: string;\n lastName: string;\n fullName: string;\n gender: UserIdentityGender;\n birthDate: Date;\n\n metadata: ProfileMetadata & {\n followingCount: number;\n hasPassPlus: boolean;\n idValid: boolean;\n };\n};\n\nexport enum UserRole {\n User = \"user\",\n Developer = \"developer\",\n Admin = \"admin\",\n}\n\nexport type UserIdentityGender =\n | \"male\"\n | \"female\"\n | \"non-binary\"\n | \"gender-fluid\"\n | \"neutral\"\n | \"other\"\n | string;\n\nexport type UserPreferences = {\n language: Language;\n currency: Currency;\n notifications: {\n email: {\n newsletter: boolean;\n message: boolean;\n };\n push: {\n message: boolean;\n };\n };\n};\n\nexport type UserConnection = {\n ip: string;\n os: UserConnectionOS;\n device: UserConnectionDevice;\n client: UserConnectionClient;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type UserConnectionOS = {\n name: string;\n version: string;\n};\n\nexport type UserConnectionDevice = {\n type: string;\n brand: string;\n};\n\nexport type UserConnectionClient = {\n name: string;\n version: string;\n};\n\nexport type UserEndpoints =\n | Endpoint<\"GET\", \"/users\", User[]>\n | Endpoint<\"GET\", \"/users/:id\", User, { id: string }>\n | Endpoint<\"GET\", \"/users/me\", User>\n | Endpoint<\n \"GET\",\n \"/users/check/:identifier\",\n {\n exists: boolean;\n identifier: UserIdentifier;\n suggestions?: string[];\n },\n { identifier: boolean; suggestions?: boolean }\n >\n | Endpoint<\"PUT\", \"/users/:id\", User, UpdateUserDto>;\n","import { Currency } from \"..\";\nimport { OrganizationEvent, OrganizationEventTicket } from \"../organizations\";\nimport { User } from \"../users\";\n\nexport enum OrderStatus {\n Created = \"created\",\n Cancelled = \"cancelled\",\n Completed = \"completed\",\n Pending = \"pending\",\n Confirmed = \"confirmed\",\n Declined = \"declined\",\n Refunded = \"refunded\",\n PartiallyRefunded = \"partially_refunded\",\n Expired = \"expired\",\n}\n\nexport type OrderItem = {\n id: string;\n ticket: OrganizationEventTicket;\n isUsed: boolean;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type Order = {\n id: string;\n owner: User;\n members: User[];\n status: OrderStatus;\n event: OrganizationEvent;\n items: OrderItem[];\n promoCode?: PromoCode;\n total: number;\n currency: Currency;\n createdAt: Date;\n};\n\nexport type PromoCode = {\n id: string;\n code: string;\n used: number;\n discount: number;\n isActive: boolean;\n expirationAt: Date;\n createdAt: Date;\n};\n","export * from \"./auth\";\nexport * from \"./careers\";\nexport * from \"./health\";\nexport * from \"./organizations\";\nexport * from \"./token\";\nexport * from \"./users\";\nexport * from \"./order\";\nexport * from \"./profiles\";\n\nexport type Base = {\n id: string;\n createdAt: Date;\n updatedAt: Date;\n};\n\nexport type ExcludeBase<T> = Omit<T, keyof Base>;\n\nexport type Location = {\n name?: string;\n address: string;\n zipCode: string;\n city: string;\n country: string;\n geometry?: {\n latitude: number;\n longitude: number;\n };\n};\n\n// Currency\nexport enum Currency {\n EUR = \"EUR\",\n USD = \"USD\",\n GBP = \"GBP\",\n}\n\n// I18n\nexport enum Language {\n FR = \"fr\",\n EN = \"en\",\n}\n","import { CreateOrganizationDto } from \"./create-organization.dto\";\n\nexport class UpdateOrganizationDto extends CreateOrganizationDto {}\n","import { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport { Location, OrganizationEventType } from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n title: string;\n description: string;\n organization: string;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n name: string;\n description?: string;\n price: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventTicketDto } from \"./create-organization-event-ticket.dto\";\n\nexport class UpdateOrganizationEventTicketDto extends CreateOrganizationEventTicketDto {}\n","import { Location, UserIdentifier, UserIdentityGender } from \"../../types\";\n\nexport class CreateUserDto {\n identifier: UserIdentifier;\n password: string;\n identity: CreateUserIdentituDto;\n addresses: Location[];\n}\n\nclass CreateUserIdentituDto {\n firstName: string;\n lastName: string;\n gender: UserIdentityGender;\n avatarUrl?: string;\n birthDate: Date;\n}\n","export class SignInUserDto {\n identifier: string;\n password: string;\n}\n","import { Type } from \"class-transformer\";\nimport {\n IsDateString,\n IsEmail,\n IsObject,\n IsOptional,\n IsPhoneNumber,\n IsString,\n IsUrl,\n Length,\n Matches,\n MaxLength,\n MinLength,\n ValidateNested,\n} from \"class-validator\";\n\nimport { NAME_REGEX } from \"../../../constants/regex\";\nimport { UserIdentifier, UserIdentity } from \"../../types\";\n\nexport class UpdateUserDto {\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentifierDto)\n identifier?: UpdateIdentifierDto;\n\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentityDto)\n identity?: UpdateIdentityDto;\n\n @IsOptional()\n @IsString()\n @MinLength(6)\n @MaxLength(130)\n password?: string;\n}\n\nclass UpdateIdentifierDto\n implements\n Partial<Pick<UserIdentifier, \"email\" | \"phoneNumber\" | \"username\">>\n{\n @IsOptional()\n @IsString()\n @IsEmail()\n email?: string;\n\n @IsOptional()\n @IsString()\n @IsPhoneNumber()\n phoneNumber?: string;\n\n @IsOptional()\n @IsString()\n @MinLength(3)\n username?: string;\n}\n\nclass UpdateIdentityDto\n implements\n Partial<\n Pick<\n UserIdentity,\n | \"firstName\"\n | \"lastName\"\n | \"displayName\"\n | \"description\"\n | \"avatarUrl\"\n | \"bannerUrl\"\n | \"gender\"\n | \"birthDate\"\n >\n >\n{\n @IsOptional()\n @IsString()\n @Length(2, 50)\n @Matches(NAME_REGEX, {\n message: \"First name must be composed of letters only\",\n })\n firstName?: string;\n\n @IsOptional()\n @IsString()\n @Length(2, 50)\n @Matches(NAME_REGEX, {\n message: \"Last name must be composed of letters only\",\n })\n lastName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 32)\n displayName?: string;\n\n @IsOptional()\n @IsString()\n @Length(15, 500)\n description?: string;\n\n @IsOptional()\n @IsUrl()\n avatarUrl?: string | undefined;\n\n @IsOptional()\n @IsUrl()\n bannerUrl?: string | undefined;\n\n @IsOptional()\n gender?: string;\n\n @IsOptional()\n @IsDateString()\n birthDate?: Date;\n}\n","import axios, { Options, Response } from \"redaxios\";\n\nimport { isBrowser } from \"../../utils\";\nimport { APIResponse, ErroredAPIResponse } from \"../endpoints\";\n\nconst instance = axios.create({\n headers: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n ...(!isBrowser && { \"User-Agent\": \"tonightpass-api-client\" }),\n },\n responseType: \"json\",\n transformRequest: [\n function (data) {\n return JSON.stringify(data);\n },\n ],\n withCredentials: isBrowser,\n});\n\nexport interface APIRequestOptions extends Options {}\n\nexport const request = async <T>(url: string, options?: Options) => {\n const response = instance<APIResponse<T>>(url, { ...options })\n .then((response) => response)\n .catch((error: Response<ErroredAPIResponse>) => {\n throw error.data;\n });\n\n return response;\n};\n","export const isBrowser = typeof window !== \"undefined\";\n","import { ParamValue, Query, pathcat } from \"pathcat\";\nimport { Options, Response } from \"redaxios\";\n\nimport { APIResponse, Endpoints, ErroredAPIResponse } from \"./endpoints\";\nimport { APIRequestOptions, request } from \"./request\";\nimport { DEFAULT_API_URL } from \"../constants\";\n\nexport type PathsFor<M extends Options[\"method\"]> = Extract<\n Endpoints,\n { method: M }\n>[\"path\"];\n\nexport class TonightPassAPIError<T> extends Error {\n public readonly status: number;\n\n constructor(\n public readonly response: Response<APIResponse<T>>,\n public readonly data: ErroredAPIResponse,\n ) {\n super(data.message);\n\n this.status = response.status;\n }\n}\n\nexport interface ClientOptions {\n readonly baseURL: string;\n}\n\nexport class Client {\n private options;\n public readonly url;\n\n constructor(options: ClientOptions) {\n this.options = options;\n this.url = (path: string, params: Record<string, ParamValue>) => {\n const baseURL = this.options.baseURL || DEFAULT_API_URL;\n return pathcat(baseURL, path, params);\n };\n }\n\n setOptions(options: ClientOptions) {\n this.options = options;\n }\n\n async get<Path extends PathsFor<\"GET\">>(\n path: Path,\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"GET\" }>[\"res\"]\n >(\"GET\", path, undefined, query, options);\n }\n\n async post<Path extends Extract<Endpoints, { method: \"POST\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"POST\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"POST\" }>[\"res\"]\n >(\"POST\", path, body, query, options);\n }\n\n async put<Path extends Extract<Endpoints, { method: \"PUT\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"res\"]\n >(\"PUT\", path, body, query, options);\n }\n\n async patch<Path extends Extract<Endpoints, { method: \"PATCH\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"res\"]\n >(\"PATCH\", path, body, query, options);\n }\n\n async delete<Path extends Extract<Endpoints, { method: \"DELETE\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"res\"]\n >(\"DELETE\", path, body, query, options);\n }\n\n private async requester<T>(\n method: Options[\"method\"],\n path: string,\n body: unknown,\n query: Query<string> = {},\n options: APIRequestOptions = {},\n ) {\n const url = this.url(path, query);\n\n if (body !== undefined) {\n if (method === \"GET\") {\n throw new Error(\"Cannot send a GET request with a body\");\n }\n }\n\n const response: Response<APIResponse<T>> = await request<T>(url, {\n method,\n data: body,\n ...options,\n });\n\n const result = response.data;\n\n if (!result.success) {\n throw new TonightPassAPIError<T>(response, result);\n }\n\n return result.data;\n }\n}\n","import { Client } from \"../rest\";\n\nexport function sdk<T>(builder: (client: Client) => T) {\n return builder;\n}\n","import { ParamValue } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\nimport { CreateUserDto, SignInUserDto } from \"../rest\";\nimport { isBrowser } from \"../utils\";\n\nexport const auth = sdk((client) => ({\n signIn: async (data: SignInUserDto) => client.post(\"/auth/sign-in\", data),\n signUp: async (data: CreateUserDto) => client.post(\"/auth/sign-up\", data),\n signOut: async () => client.post(\"/auth/sign-out\", null),\n refreshToken: async () => client.post(\"/auth/refresh-token\", null),\n\n oauth2: {\n google: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/google\", params || {});\n } else {\n throw new Error(\"Google OAuth2 is only available in the browser\");\n }\n },\n },\n twitter: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/twitter\", params || {});\n } else {\n throw new Error(\"Twitter OAuth2 is only available in the browser\");\n }\n },\n },\n },\n}));\n","import { Query } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\n\nexport const careers = sdk((client) => ({\n categories: {\n getAll: async (query?: Query<\"/careers/categories\">) =>\n client.get(\"/careers/categories\", query),\n },\n employmentTypes: {\n getAll: async (query?: Query<\"/careers/employmentTypes\">) =>\n client.get(\"/careers/employmentTypes\", query),\n },\n jobs: {\n getAll: async (query?: Query<\"/careers/jobs\">) =>\n client.get(\"/careers/jobs\", query),\n get: async (id: number) => client.get(\"/careers/jobs/:id\", { id }),\n },\n offices: {\n getAll: async (query?: Query<\"/careers/offices\">) =>\n client.get(\"/careers/offices\", query),\n },\n}));\n","import { sdk } from \"./builder\";\n\nexport const health = sdk((client) => ({\n getAll: async () => client.get(\"/health\"),\n database: async () => client.get(\"/health/database\"),\n http: async () => client.get(\"/health/http\"),\n}));\n","import { isBrowser } from \"../../../utils\";\nimport { sdk } from \"../../builder\";\n\nexport const organizationsBilling = sdk((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 {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../rest/dtos/organizations/events/events\";\nimport { sdk } from \"../../../builder\";\n\nexport const organizationsEventsStyles = sdk((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 CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../rest\";\nimport { sdk } from \"../../../builder\";\n\nexport const organizationsEventsTickets = sdk((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 CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\nimport { sdk } from \"../../builder\";\n\nexport const organizationsEvents = sdk((client) => ({\n getAll: async (organizationSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events\", {\n organizationSlug,\n }),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (organizationSlug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:organizationSlug/events\", data, {\n organizationSlug,\n }),\n update: async (\n organizationSlug: string,\n eventSlug: string,\n data: UpdateOrganizationEventDto,\n ) =>\n client.put(\"/organizations/:organizationSlug/events/:eventSlug\", data, {\n organizationSlug,\n eventSlug,\n }),\n delete: async (organizationSlug: string, eventSlug: string) =>\n client.delete(\"/organizations/:organizationSlug/events/:eventSlug\", null, {\n organizationSlug,\n eventSlug,\n }),\n styles: organizationsEventsStyles,\n tickets: organizationsEventsTickets,\n}));\n","import { sdk } from \"../../builder\";\n\nexport const organizationsMembers = sdk((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,\n events: organizationsEvents,\n members: organizationsMembers,\n}));\n","import { sdk } from \"./builder\";\n\nexport const profiles = sdk((client) => ({\n get: async (username: string) =>\n client.get(\"/profiles/:username\", { username }),\n}));\n","import { sdk } from \"./builder\";\nimport { UpdateUserDto } from \"../rest\";\n\nexport const users = sdk((client) => ({\n getAll: async () => client.get(\"/users\"),\n get: async (id: string) => client.get(\"/users\", { id }),\n me: async () => client.get(\"/users/me\"),\n check: async (identifier: string, suggestions?: boolean) =>\n client.get(\"/users/check/:identifier\", { identifier, suggestions }),\n update: async (id: string, data: UpdateUserDto) =>\n client.put(\"/users/:id\", data, { id }),\n}));\n","import { Client, ClientOptions } from \"./rest\";\nimport { auth, careers, health, organizations, profiles, users } from \"./sdk\";\n\nexport class TonightPass {\n public readonly client: Client;\n\n public readonly auth;\n public readonly careers;\n public readonly health;\n public readonly organizations;\n public readonly profiles;\n public readonly users;\n\n constructor(options: ClientOptions) {\n this.client = new Client(options);\n\n this.auth = auth(this.client);\n this.careers = careers(this.client);\n this.health = health(this.client);\n this.organizations = organizations(this.client);\n this.profiles = profiles(this.client);\n this.users = users(this.client);\n }\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tonightpass",
3
- "version": "0.0.30",
3
+ "version": "0.0.32",
4
4
  "description": "@tonightpass sdk and tools.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -7,6 +7,14 @@ export * from "./users";
7
7
  export * from "./order";
8
8
  export * from "./profiles";
9
9
 
10
+ export type Base = {
11
+ id: string;
12
+ createdAt: Date;
13
+ updatedAt: Date;
14
+ };
15
+
16
+ export type ExcludeBase<T> = Omit<T, keyof Base>;
17
+
10
18
  export type Location = {
11
19
  name?: string;
12
20
  address: string;
@@ -7,7 +7,7 @@ import {
7
7
  Organization,
8
8
  OrganizationEventTicketEndpoints,
9
9
  } from "..";
10
- import { Location } from "../..";
10
+ import { Base, Location } from "../..";
11
11
  import {
12
12
  CreateOrganizationEventDto,
13
13
  UpdateOrganizationEventDto,
@@ -17,7 +17,7 @@ import { Endpoint } from "../../../endpoints";
17
17
  export * from "./tickets";
18
18
  export * from "./styles";
19
19
 
20
- export type OrganizationEvent = {
20
+ export type OrganizationEvent = Base & {
21
21
  title: string;
22
22
  description: string;
23
23
  slug: string;
@@ -31,8 +31,6 @@ export type OrganizationEvent = {
31
31
  styles: OrganizationEventStyle[];
32
32
  startAt: Date;
33
33
  endAt: Date;
34
- updatedAt: Date;
35
- createdAt: Date;
36
34
  };
37
35
 
38
36
  export enum OrganizationEventType {
@@ -1,10 +1,11 @@
1
+ import { Base } from "../../..";
1
2
  import {
2
3
  CreateOrganizationEventStyleDto,
3
4
  UpdateOrganizationEventStyleDto,
4
5
  } from "../../../../dtos/organizations/events/events";
5
6
  import { Endpoint } from "../../../../endpoints";
6
7
 
7
- export type OrganizationEventStyle = {
8
+ export type OrganizationEventStyle = Base & {
8
9
  type: OrganizationEventStyleType;
9
10
  emoji: string;
10
11
  name: string;
@@ -1,12 +1,11 @@
1
- import { Currency } from "../../..";
1
+ import { Base, Currency } from "../../..";
2
2
  import {
3
3
  CreateOrganizationEventTicketDto,
4
4
  UpdateOrganizationEventTicketDto,
5
5
  } from "../../../../dtos";
6
6
  import { Endpoint } from "../../../../endpoints";
7
7
 
8
- export type OrganizationEventTicket = {
9
- id: string;
8
+ export type OrganizationEventTicket = Base & {
10
9
  name: string;
11
10
  description?: string;
12
11
  price: number;
@@ -21,8 +20,6 @@ export type OrganizationEventTicket = {
21
20
  isFeesIncluded: boolean;
22
21
  startAt: Date;
23
22
  endAt: Date;
24
- updatedAt: Date;
25
- createdAt: Date;
26
23
  };
27
24
 
28
25
  export type OrganizationEventTicketType = "e-ticket" | "other";
@@ -3,15 +3,14 @@ import type Stripe from "stripe";
3
3
  import { OrganizationEvent, OrganizationEventEndpoints } from "./events";
4
4
  import { OrganizationEventTicket } from "./events/tickets";
5
5
  import { OrganizationMember, OrganizationMembersEndpoints } from "./members";
6
- import { Location, Profile, ProfileMetadata } from "..";
6
+ import { Base, Location, Profile, ProfileMetadata } from "..";
7
7
  import { CreateOrganizationDto, UpdateOrganizationDto } from "../../dtos";
8
8
  import { Endpoint } from "../../endpoints";
9
9
 
10
10
  export * from "./events";
11
11
  export * from "./members";
12
12
 
13
- export type Organization = {
14
- id: string;
13
+ export type Organization = Base & {
15
14
  slug: string;
16
15
  identity: OrganizationIdentity;
17
16
  members: OrganizationMember[];
@@ -20,8 +19,6 @@ export type Organization = {
20
19
  savedTickets: OrganizationEventTicket[];
21
20
  verified: boolean;
22
21
  billing: OrganizationBilling;
23
- updatedAt: Date;
24
- createdAt: Date;
25
22
  };
26
23
 
27
24
  export type OrganizationBilling = {
@@ -1,16 +1,15 @@
1
1
  import { Organization } from "..";
2
+ import { Base } from "../..";
2
3
  import { OrganizationMemberDto } from "../../../dtos";
3
4
  import { UpdateOrganizationMemberDto } from "../../../dtos/organizations/members/update-organization-member.dto";
4
5
  import { Endpoint } from "../../../endpoints";
5
6
  import { UserToken } from "../../token";
6
7
  import { User } from "../../users";
7
8
 
8
- export type OrganizationMember = {
9
+ export type OrganizationMember = Base & {
9
10
  organization: Organization;
10
11
  role: OrganizationMemberRole;
11
12
  status: OrganizationMemberStatus;
12
- updatedAt: Date;
13
- createdAt: Date;
14
13
  user?: User;
15
14
  token?: UserToken;
16
15
  };
@@ -1,7 +1,6 @@
1
1
  import { User } from "../users";
2
2
 
3
3
  export type UserToken = {
4
- id: string;
5
4
  type: UserTokenType;
6
5
  value: string;
7
6
  createdAt: Date;
@@ -1,9 +1,15 @@
1
- import { Currency, Language, Location, Profile, ProfileMetadata } from "..";
1
+ import {
2
+ Base,
3
+ Currency,
4
+ Language,
5
+ Location,
6
+ Profile,
7
+ ProfileMetadata,
8
+ } from "..";
2
9
  import { UpdateUserDto } from "../../dtos";
3
10
  import { Endpoint } from "../../endpoints";
4
11
 
5
- export type User = {
6
- id: string;
12
+ export type User = Base & {
7
13
  identifier: UserIdentifier;
8
14
  password: string;
9
15
  identity: UserIdentity;
@@ -12,8 +18,6 @@ export type User = {
12
18
  preferences: UserPreferences;
13
19
  connections: UserConnection[];
14
20
  verified: boolean;
15
- updatedAt: Date;
16
- createdAt: Date;
17
21
  };
18
22
 
19
23
  export type UserIdentifier = {