tonightpass 0.0.36 → 0.0.38

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.36 build /home/runner/work/tonightpass/tonightpass/packages/node
2
+ > tonightpass@0.0.38 build /home/runner/work/tonightpass/tonightpass/packages/node
3
3
  > tsup
4
4
 
5
5
  CLI Building entry: src/index.ts
@@ -9,13 +9,13 @@
9
9
  CLI Target: esnext
10
10
  CJS Build start
11
11
  ESM Build start
12
- CJS dist/index.js 18.43 KB
13
- CJS dist/index.js.map 49.01 KB
14
- CJS ⚡️ Build success in 399ms
15
- ESM dist/index.mjs 16.13 KB
16
- ESM dist/index.mjs.map 49.01 KB
17
- ESM ⚡️ Build success in 400ms
18
12
  DTS Build start
19
- DTS ⚡️ Build success in 4371ms
20
- DTS dist/index.d.ts 35.82 KB
21
- DTS dist/index.d.mts 35.82 KB
13
+ CJS dist/index.js 20.07 KB
14
+ CJS dist/index.js.map 50.26 KB
15
+ CJS ⚡️ Build success in 435ms
16
+ ESM dist/index.mjs 17.33 KB
17
+ ESM dist/index.mjs.map 50.26 KB
18
+ ESM ⚡️ Build success in 436ms
19
+ DTS ⚡️ Build success in 3774ms
20
+ DTS dist/index.d.ts 36.02 KB
21
+ DTS dist/index.d.mts 36.02 KB
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # tonightpass
2
2
 
3
+ ## 0.0.38
4
+
5
+ ### Patch Changes
6
+
7
+ - [`370779f`](https://github.com/tonightpass/tonightpass/commit/370779fe1a778b113c5974dd0479ed541698f0f4) Thanks [@AntoineKM](https://github.com/AntoineKM)! - Update organization event dtos with class validator
8
+
9
+ ## 0.0.37
10
+
11
+ ### Patch Changes
12
+
13
+ - [`c81da9c`](https://github.com/tonightpass/tonightpass/commit/c81da9c934b567b821d6154875b70e38f12a7b27) Thanks [@AntoineKM](https://github.com/AntoineKM)! - Remove organization prop from create organization event dto
14
+
3
15
  ## 0.0.36
4
16
 
5
17
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -249,7 +249,7 @@ type OrganizationEvent = Base & {
249
249
  slug: string;
250
250
  organization: Organization;
251
251
  type: OrganizationEventType;
252
- public: boolean;
252
+ visibility: OrganizationEventVisibilityType;
253
253
  flyers: string[];
254
254
  trailers: string[];
255
255
  location: Location$1;
@@ -280,6 +280,11 @@ declare enum OrganizationEventType {
280
280
  ConsumerShow = "consumer_show",
281
281
  Membership = "membership"
282
282
  }
283
+ declare enum OrganizationEventVisibilityType {
284
+ Public = "public",
285
+ Unlisted = "unlisted",
286
+ Private = "private"
287
+ }
283
288
  type OrganizationEventEndpoints = Endpoint<"GET", "/organizations/:slug/events", Event[]> | Endpoint<"GET", "/organizations/:organizationSlug/events/:eventSlug", Event> | Endpoint<"POST", "/organizations/:slug/events", Event, CreateOrganizationEventDto> | Endpoint<"PUT", "/organizations/:organizationSlug/events/:eventSlug", Event, UpdateOrganizationEventDto> | Endpoint<"DELETE", "/organizations/:organizationSlug/events/:eventSlug", Event, null> | OrganizationEventStyleEndpoints | OrganizationEventTicketEndpoints;
284
289
 
285
290
  declare class UpdateOrganizationMemberDto {
@@ -480,10 +485,10 @@ declare class UpdateOrganizationEventTicketDto extends CreateOrganizationEventTi
480
485
 
481
486
  declare class CreateOrganizationEventDto {
482
487
  title: string;
488
+ slug?: string;
483
489
  description: string;
484
- organization: string;
485
490
  type: OrganizationEventType;
486
- public: boolean;
491
+ visibility: OrganizationEventVisibilityType;
487
492
  flyers: string[];
488
493
  trailers: string[];
489
494
  location: Location$1;
@@ -969,4 +974,4 @@ declare class TonightPass {
969
974
 
970
975
  declare const isBrowser: boolean;
971
976
 
972
- 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, CreateOrganizationMemberDto, 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$1 as 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, 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, UpdateOrganizationIdentityDto, UpdateOrganizationMemberDto, 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 };
977
+ 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, CreateOrganizationMemberDto, 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$1 as 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, OrganizationEventVisibilityType, type OrganizationIdentity, type OrganizationMember, 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, UpdateOrganizationIdentityDto, UpdateOrganizationMemberDto, 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
@@ -249,7 +249,7 @@ type OrganizationEvent = Base & {
249
249
  slug: string;
250
250
  organization: Organization;
251
251
  type: OrganizationEventType;
252
- public: boolean;
252
+ visibility: OrganizationEventVisibilityType;
253
253
  flyers: string[];
254
254
  trailers: string[];
255
255
  location: Location$1;
@@ -280,6 +280,11 @@ declare enum OrganizationEventType {
280
280
  ConsumerShow = "consumer_show",
281
281
  Membership = "membership"
282
282
  }
283
+ declare enum OrganizationEventVisibilityType {
284
+ Public = "public",
285
+ Unlisted = "unlisted",
286
+ Private = "private"
287
+ }
283
288
  type OrganizationEventEndpoints = Endpoint<"GET", "/organizations/:slug/events", Event[]> | Endpoint<"GET", "/organizations/:organizationSlug/events/:eventSlug", Event> | Endpoint<"POST", "/organizations/:slug/events", Event, CreateOrganizationEventDto> | Endpoint<"PUT", "/organizations/:organizationSlug/events/:eventSlug", Event, UpdateOrganizationEventDto> | Endpoint<"DELETE", "/organizations/:organizationSlug/events/:eventSlug", Event, null> | OrganizationEventStyleEndpoints | OrganizationEventTicketEndpoints;
284
289
 
285
290
  declare class UpdateOrganizationMemberDto {
@@ -480,10 +485,10 @@ declare class UpdateOrganizationEventTicketDto extends CreateOrganizationEventTi
480
485
 
481
486
  declare class CreateOrganizationEventDto {
482
487
  title: string;
488
+ slug?: string;
483
489
  description: string;
484
- organization: string;
485
490
  type: OrganizationEventType;
486
- public: boolean;
491
+ visibility: OrganizationEventVisibilityType;
487
492
  flyers: string[];
488
493
  trailers: string[];
489
494
  location: Location$1;
@@ -969,4 +974,4 @@ declare class TonightPass {
969
974
 
970
975
  declare const isBrowser: boolean;
971
976
 
972
- 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, CreateOrganizationMemberDto, 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$1 as 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, 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, UpdateOrganizationIdentityDto, UpdateOrganizationMemberDto, 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 };
977
+ 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, CreateOrganizationMemberDto, 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$1 as 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, OrganizationEventVisibilityType, type OrganizationIdentity, type OrganizationMember, 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, UpdateOrganizationIdentityDto, UpdateOrganizationMemberDto, 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 CHANGED
@@ -3,47 +3,47 @@
3
3
  require('reflect-metadata');
4
4
  var classValidator = require('class-validator');
5
5
  var classTransformer = require('class-transformer');
6
- var Ve = require('redaxios');
6
+ var tt = require('redaxios');
7
7
  var pathcat = require('pathcat');
8
8
 
9
9
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
10
10
 
11
- var Ve__default = /*#__PURE__*/_interopDefault(Ve);
11
+ var tt__default = /*#__PURE__*/_interopDefault(tt);
12
12
 
13
- var De=Object.defineProperty;var r=(e,t)=>De(e,"name",{value:t,configurable:!0});var X="https://api.tonightpass.com";var Qe=/^[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$/,Oe=/((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$/,k=/(^[\p{L}\d'\\.\s\\-]*$)/u,Te=/^[a-z\d]+(?:(\.|-|_)[a-z\d]+)*$/,et=/\$2[abxy]?\$\d{1,2}\$[A-Za-z\d\\./]{53}/,tt=/^\s*(?:\+?(\d{1,3}))?([-. (]*(\d{3})[-. )]*)?((\d{3})[-. ]*(\d{2,4})(?:[-.x ]*(\d+))?)\s*$/,ot=/(((http:\/\/www)|(http:\/\/)|(www))[-a-zA-Z0-9@:%_\\+.~#?&//=]+)\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;function g(e,t,o,s){var i=arguments.length,n=i<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,o):s,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,s);else for(var p=e.length-1;p>=0;p--)(a=e[p])&&(n=(i<3?a(n):i>3?a(t,o,n):a(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}r(g,"_ts_decorate");function y(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}r(y,"_ts_metadata");var _=class{static{r(this,"CreateOrganizationDto");}slug;identity;members;location};g([classValidator.IsOptional(),classValidator.IsString(),classValidator.IsLowercase(),classValidator.Length(1,48),y("design:type",String)],_.prototype,"slug",void 0);g([classValidator.IsObject(),y("design:type",typeof u>"u"?Object:u)],_.prototype,"identity",void 0);g([classValidator.IsArray(),y("design:type",Array)],_.prototype,"members",void 0);g([classValidator.IsOptional(),classValidator.IsObject(),y("design:type",typeof Location>"u"?Object:Location)],_.prototype,"location",void 0);var u=class{static{r(this,"CreateOrganizationIdentityDto");}displayName;description;avatarUrl;bannerUrl;socialLinks};g([classValidator.IsString(),classValidator.IsNotEmpty(),classValidator.Length(1,32),y("design:type",String)],u.prototype,"displayName",void 0);g([classValidator.IsString(),classValidator.IsNotEmpty(),classValidator.Length(16,1024),y("design:type",String)],u.prototype,"description",void 0);g([classValidator.IsUrl({protocols:["http","https"]}),y("design:type",String)],u.prototype,"avatarUrl",void 0);g([classValidator.IsOptional(),classValidator.IsUrl({protocols:["http","https"]}),y("design:type",String)],u.prototype,"bannerUrl",void 0);g([classValidator.IsOptional(),classValidator.IsArray(),y("design:type",Array)],u.prototype,"socialLinks",void 0);function x(e,t,o,s){var i=arguments.length,n=i<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,o):s,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,s);else for(var p=e.length-1;p>=0;p--)(a=e[p])&&(n=(i<3?a(n):i>3?a(t,o,n):a(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}r(x,"_ts_decorate");function b(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}r(b,"_ts_metadata");var A=class{static{r(this,"UpdateOrganizationDto");}slug;identity;members;location};x([classValidator.IsOptional(),classValidator.IsString(),classValidator.IsLowercase(),classValidator.Length(1,48),b("design:type",String)],A.prototype,"slug",void 0);x([classValidator.IsObject(),classValidator.IsOptional(),b("design:type",typeof h>"u"?Object:h)],A.prototype,"identity",void 0);x([classValidator.IsOptional(),classValidator.IsArray(),b("design:type",Array)],A.prototype,"members",void 0);x([classValidator.IsOptional(),classValidator.IsObject(),b("design:type",typeof Location>"u"?Object:Location)],A.prototype,"location",void 0);var h=class{static{r(this,"UpdateOrganizationIdentityDto");}displayName;description;avatarUrl;bannerUrl;socialLinks};x([classValidator.IsString(),classValidator.IsNotEmpty(),classValidator.Length(1,32),classValidator.IsOptional(),b("design:type",String)],h.prototype,"displayName",void 0);x([classValidator.IsString(),classValidator.IsNotEmpty(),classValidator.Length(16,1024),classValidator.IsOptional(),b("design:type",String)],h.prototype,"description",void 0);x([classValidator.IsUrl({protocols:["http","https"]}),classValidator.IsOptional(),b("design:type",String)],h.prototype,"avatarUrl",void 0);x([classValidator.IsOptional(),classValidator.IsUrl({protocols:["http","https"]}),b("design:type",String)],h.prototype,"bannerUrl",void 0);x([classValidator.IsOptional(),classValidator.IsArray(),b("design:type",Array)],h.prototype,"socialLinks",void 0);var N=class{static{r(this,"CreateOrganizationEventDto");}title;description;organization;type;public;flyers;trailers;location;tickets;styles;startAt;endAt};var Q=class extends N{static{r(this,"UpdateOrganizationEventDto");}};var U=class{static{r(this,"CreateOrganizationEventTicketDto");}name;description;price;quantity;type;category;currency;isVisible;isFeesIncluded;startAt;endAt};var O=class extends U{static{r(this,"UpdateOrganizationEventTicketDto");}};exports.OrganizationEventTicketCategory = void 0;(function(e){e.Entry="entry",e.Package="package",e.Meal="meal",e.Drink="drink",e.Parking="parking",e.Accommodation="accommodation",e.Camping="camping",e.Locker="locker",e.Shuttle="shuttle",e.Other="other";})(exports.OrganizationEventTicketCategory||(exports.OrganizationEventTicketCategory={}));exports.OrganizationEventStyleType = void 0;(function(e){e.Music="music",e.Dress="dress",e.Sport="sport",e.Food="food",e.Art="art";})(exports.OrganizationEventStyleType||(exports.OrganizationEventStyleType={}));exports.OrganizationEventType = void 0;(function(e){e.Clubbing="clubbing",e.Concert="concert",e.Afterwork="afterwork",e.DancingLunch="dancing_lunch",e.Diner="diner",e.Garden="garden",e.AfterBeach="after_beach",e.Festival="festival",e.Spectacle="spectacle",e.Cruise="cruise",e.OutsideAnimation="outside_animation",e.Sport="sport",e.Match="match",e.Seminar="seminar",e.Conference="conference",e.WellnessDay="wellness_day",e.Workshop="workshop",e.TradeFair="trade_fair",e.ConsumerShow="consumer_show",e.Membership="membership";})(exports.OrganizationEventType||(exports.OrganizationEventType={}));exports.OrganizationMemberStatus = void 0;(function(e){e.Pending="pending",e.Accepted="accepted",e.Rejected="rejected";})(exports.OrganizationMemberStatus||(exports.OrganizationMemberStatus={}));exports.OrganizationMemberRole = void 0;(function(e){e.Member="member",e.Manager="manager",e.Admin="admin",e.Owner="owner";})(exports.OrganizationMemberRole||(exports.OrganizationMemberRole={}));exports.OrganizationSocialType = void 0;(function(e){e.Facebook="facebook",e.Twitter="twitter",e.Instagram="instagram",e.Linkedin="linkedin",e.Youtube="youtube",e.Website="website";})(exports.OrganizationSocialType||(exports.OrganizationSocialType={}));exports.UserTokenType = void 0;(function(e){e.Authentication="authentication",e.OrganizationInvite="organization_invite",e.PasswordRecovery="password_recovery",e.EmailValidation="email_validation",e.PhoneValidation="phone_validation";})(exports.UserTokenType||(exports.UserTokenType={}));exports.UserRole = void 0;(function(e){e.User="user",e.Developer="developer",e.Admin="admin";})(exports.UserRole||(exports.UserRole={}));exports.OrderStatus = void 0;(function(e){e.Created="created",e.Cancelled="cancelled",e.Completed="completed",e.Pending="pending",e.Confirmed="confirmed",e.Declined="declined",e.Refunded="refunded",e.PartiallyRefunded="partially_refunded",e.Expired="expired";})(exports.OrderStatus||(exports.OrderStatus={}));exports.Currency = void 0;(function(e){e.EUR="EUR",e.USD="USD",e.GBP="GBP";})(exports.Currency||(exports.Currency={}));exports.Language = void 0;(function(e){e.FR="fr",e.EN="en";})(exports.Language||(exports.Language={}));function ce(e,t,o,s){var i=arguments.length,n=i<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,o):s,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,s);else for(var p=e.length-1;p>=0;p--)(a=e[p])&&(n=(i<3?a(n):i>3?a(t,o,n):a(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}r(ce,"_ts_decorate");function le(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}r(le,"_ts_metadata");var P=class{static{r(this,"CreateOrganizationMemberDto");}user;role};ce([classValidator.IsString(),classValidator.IsNotEmpty(),le("design:type",String)],P.prototype,"user",void 0);ce([classValidator.IsEnum(exports.OrganizationMemberRole),classValidator.IsNotEmpty(),le("design:type",typeof exports.OrganizationMemberRole>"u"?Object:exports.OrganizationMemberRole)],P.prototype,"role",void 0);function qe(e,t,o,s){var i=arguments.length,n=i<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,o):s,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,s);else for(var p=e.length-1;p>=0;p--)(a=e[p])&&(n=(i<3?a(n):i>3?a(t,o,n):a(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}r(qe,"_ts_decorate");function ze(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}r(ze,"_ts_metadata");var F=class{static{r(this,"UpdateOrganizationMemberDto");}role};qe([classValidator.IsEnum(exports.OrganizationMemberRole),classValidator.IsNotEmpty(),ze("design:type",typeof exports.OrganizationMemberRole>"u"?Object:exports.OrganizationMemberRole)],F.prototype,"role",void 0);var fe=class{static{r(this,"CreateUserDto");}identifier;password;identity;addresses};var me=class{static{r(this,"SignInUserDto");}identifier;password};function c(e,t,o,s){var i=arguments.length,n=i<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,o):s,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,s);else for(var p=e.length-1;p>=0;p--)(a=e[p])&&(n=(i<3?a(n):i>3?a(t,o,n):a(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}r(c,"_ts_decorate");function l(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}r(l,"_ts_metadata");var S=class{static{r(this,"UpdateUserDto");}identifier;identity;password};c([classValidator.IsOptional(),classValidator.IsObject(),classValidator.ValidateNested(),classTransformer.Type(()=>j),l("design:type",typeof j>"u"?Object:j)],S.prototype,"identifier",void 0);c([classValidator.IsOptional(),classValidator.IsObject(),classValidator.ValidateNested(),classTransformer.Type(()=>f),l("design:type",typeof f>"u"?Object:f)],S.prototype,"identity",void 0);c([classValidator.IsOptional(),classValidator.IsString(),classValidator.MinLength(8),classValidator.MaxLength(128),l("design:type",String)],S.prototype,"password",void 0);var j=class{static{r(this,"UpdateIdentifierDto");}email;phoneNumber;username};c([classValidator.IsOptional(),classValidator.IsString(),classValidator.IsEmail(),l("design:type",String)],j.prototype,"email",void 0);c([classValidator.IsOptional(),classValidator.IsString(),classValidator.IsPhoneNumber(),l("design:type",String)],j.prototype,"phoneNumber",void 0);c([classValidator.IsOptional(),classValidator.IsString(),classValidator.MinLength(3),l("design:type",String)],j.prototype,"username",void 0);var f=class{static{r(this,"UpdateIdentityDto");}firstName;lastName;displayName;description;avatarUrl;bannerUrl;gender;birthDate};c([classValidator.IsOptional(),classValidator.IsString(),classValidator.Length(2,32),classValidator.Matches(k,{message:"First name must be composed of letters only"}),l("design:type",String)],f.prototype,"firstName",void 0);c([classValidator.IsOptional(),classValidator.IsString(),classValidator.Length(2,32),classValidator.Matches(k,{message:"Last name must be composed of letters only"}),l("design:type",String)],f.prototype,"lastName",void 0);c([classValidator.IsOptional(),classValidator.IsString(),classValidator.Length(1,32),l("design:type",String)],f.prototype,"displayName",void 0);c([classValidator.IsOptional(),classValidator.IsString(),classValidator.Length(1,128),l("design:type",String)],f.prototype,"description",void 0);c([classValidator.IsOptional(),classValidator.IsUrl(),l("design:type",Object)],f.prototype,"avatarUrl",void 0);c([classValidator.IsOptional(),classValidator.IsUrl(),l("design:type",Object)],f.prototype,"bannerUrl",void 0);c([classValidator.IsOptional(),l("design:type",String)],f.prototype,"gender",void 0);c([classValidator.IsOptional(),classValidator.IsDateString(),l("design:type",typeof Date>"u"?Object:Date)],f.prototype,"birthDate",void 0);var w=typeof window<"u";var Ze=Ve__default.default.create({headers:{"Content-Type":"application/json",Accept:"application/json",...!w&&{"User-Agent":"tonightpass-api-client"}},responseType:"json",transformRequest:[function(e){return JSON.stringify(e)}],withCredentials:w}),ve=r(async(e,t)=>Ze(e,{...t}).then(s=>s).catch(s=>{throw s.data}),"request");var $=class extends Error{static{r(this,"TonightPassAPIError");}response;data;status;constructor(t,o){super(o.message),this.response=t,this.data=o,this.status=t.status;}},D=class{static{r(this,"Client");}options;url;constructor(t){this.options=t,this.url=(o,s)=>{let i=this.options.baseURL||X;return pathcat.pathcat(i,o,s)};}setOptions(t){this.options=t;}async get(t,o,s){return this.requester("GET",t,void 0,o,s)}async post(t,o,s,i){return this.requester("POST",t,o,s,i)}async put(t,o,s,i){return this.requester("PUT",t,o,s,i)}async patch(t,o,s,i){return this.requester("PATCH",t,o,s,i)}async delete(t,o,s,i){return this.requester("DELETE",t,o,s,i)}async requester(t,o,s,i={},n={}){let a=this.url(o,i);if(s!==void 0&&t==="GET")throw new Error("Cannot send a GET request with a body");let p=await ve(a,{method:t,data:s,...n}),G=p.data;if(!G.success)throw new $(p,G);return G.data}};function I(e){return e}r(I,"sdk");var we=e=>({signIn:async t=>e.post("/auth/sign-in",t),signUp:async t=>e.post("/auth/sign-up",t),signOut:async()=>e.post("/auth/sign-out",null),refreshToken:async()=>e.post("/auth/refresh-token",null),oauth2:{google:{connect:t=>{if(w)window.location.href=e.url("/oauth2/google",t||{});else throw new Error("Google OAuth2 is only available in the browser")}},twitter:{connect:t=>{if(w)window.location.href=e.url("/oauth2/twitter",t||{});else throw new Error("Twitter OAuth2 is only available in the browser")}}}});var Re=e=>({categories:{getAll:async t=>e.get("/careers/categories",t)},employmentTypes:{getAll:async t=>e.get("/careers/employmentTypes",t)},jobs:{getAll:async t=>e.get("/careers/jobs",t),get:async t=>e.get("/careers/jobs/:id",{id:t})},offices:{getAll:async t=>e.get("/careers/offices",t)}});var _e=e=>({getAll:async()=>e.get("/health"),database:async()=>e.get("/health/database"),http:async()=>e.get("/health/http")});var Ae=r(e=>({account:async t=>e.get("/organizations/:slug/billing/account",{slug:t}),link:t=>{if(w)window.location.href=e.url("/organizations/:slug/billing/link",{slug:t});else throw new Error("Billing link is only available in the browser")},dashboard:t=>{if(w)window.location.href=e.url("/organizations/:slug/billing/dashboard",{slug:t});else throw new Error("Billing dashboard is only available in the browser")}}),"organizationsBilling");var je=r(e=>({getAll:async()=>e.get("/organizations/events/styles"),get:async t=>e.get("/organizations/events/styles/:slug",{slug:t}),create:async t=>e.post("/organizations/events/styles",t),update:async(t,o)=>e.put("/organizations/events/styles/:slug",o,{slug:t}),delete:async t=>e.delete("/organizations/events/styles/:slug",null,{slug:t})}),"organizationsEventsStyles");var Ie=r(e=>({getAll:async(t,o)=>e.get("/organizations/:slug/events/:eventSlug/tickets",{slug:t,eventSlug:o}),get:async(t,o,s)=>e.get("/organizations/:slug/events/:eventSlug/tickets/:ticketId",{slug:t,eventSlug:o,ticketId:s}),create:async(t,o,s)=>e.post("/organizations/:slug/events/:eventSlug/tickets",s,{slug:t,eventSlug:o}),update:async(t,o,s,i)=>e.put("/organizations/:slug/events/:eventSlug/tickets/:ticketId",i,{slug:t,eventSlug:o,ticketId:s}),delete:async(t,o,s)=>e.delete("/organizations/:slug/events/:eventSlug/tickets/:ticketId",null,{slug:t,eventSlug:o,ticketId:s})}),"organizationsEventsTickets");var Se=r(e=>({getAll:async t=>e.get("/organizations/:slug/events",{slug:t}),get:async(t,o)=>e.get("/organizations/:organizationSlug/events/:eventSlug",{organizationSlug:t,eventSlug:o}),create:async(t,o)=>e.post("/organizations/:slug/events",o,{slug:t}),update:async(t,o,s)=>e.put("/organizations/:organizationSlug/events/:eventSlug",s,{organizationSlug:t,eventSlug:o}),delete:async(t,o)=>e.delete("/organizations/:organizationSlug/events/:eventSlug",null,{organizationSlug:t,eventSlug:o}),styles:je(e),tickets:Ie(e)}),"organizationsEvents");var Le=r(e=>({getAll:async()=>e.get("/organizations/members"),delete:async t=>e.delete("/organizations/members/:id",null,{id:t})}),"organizationsMembers");var Ne=e=>({getAll:async()=>e.get("/organizations"),get:async t=>e.get("/organizations/:slug",{slug:t}),create:async t=>e.post("/organizations",t),update:async(t,o)=>e.put("/organizations/:slug",o,{slug:t}),delete:async t=>e.delete("/organizations/:slug",null,{slug:t}),billing:Ae(e),events:Se(e),members:Le(e)});var Ue=e=>({get:async t=>e.get("/profiles/:username",{username:t})});var Pe=e=>({getAll:async()=>e.get("/users"),get:async t=>e.get("/users",{id:t}),me:async()=>e.get("/users/me"),check:async(t,o)=>e.get("/users/check/:identifier",{identifier:t,suggestions:o}),update:async(t,o)=>e.put("/users/:id",o,{id:t})});var Ee=class{static{r(this,"TonightPass");}client;auth;careers;health;organizations;profiles;users;constructor(t){this.client=new D(t),this.auth=we(this.client),this.careers=Re(this.client),this.health=_e(this.client),this.organizations=Ne(this.client),this.profiles=Ue(this.client),this.users=Pe(this.client);}};
13
+ var Fe=Object.defineProperty;var s=(e,t)=>Fe(e,"name",{value:t,configurable:!0});var Z="https://api.tonightpass.com";var it=/^[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$/,pt=/((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$/,k=/(^[\p{L}\d'\\.\s\\-]*$)/u,at=/^[a-z\d]+(?:(\.|-|_)[a-z\d]+)*$/,ct=/\$2[abxy]?\$\d{1,2}\$[A-Za-z\d\\./]{53}/,lt=/^\s*(?:\+?(\d{1,3}))?([-. (]*(\d{3})[-. )]*)?((\d{3})[-. ]*(\d{2,4})(?:[-.x ]*(\d+))?)\s*$/,dt=/(((http:\/\/www)|(http:\/\/)|(www))[-a-zA-Z0-9@:%_\\+.~#?&//=]+)\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;function y(e,t,o,r){var i=arguments.length,n=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,o):r,p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,r);else for(var a=e.length-1;a>=0;a--)(p=e[a])&&(n=(i<3?p(n):i>3?p(t,o,n):p(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}s(y,"_ts_decorate");function h(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}s(h,"_ts_metadata");var I=class{static{s(this,"CreateOrganizationDto");}slug;identity;members;location};y([classValidator.IsOptional(),classValidator.IsString(),classValidator.IsLowercase(),classValidator.Length(1,48),h("design:type",String)],I.prototype,"slug",void 0);y([classValidator.IsObject(),h("design:type",typeof g>"u"?Object:g)],I.prototype,"identity",void 0);y([classValidator.IsArray(),h("design:type",Array)],I.prototype,"members",void 0);y([classValidator.IsOptional(),classValidator.IsObject(),h("design:type",typeof Location>"u"?Object:Location)],I.prototype,"location",void 0);var g=class{static{s(this,"CreateOrganizationIdentityDto");}displayName;description;avatarUrl;bannerUrl;socialLinks};y([classValidator.IsString(),classValidator.IsNotEmpty(),classValidator.Length(1,32),h("design:type",String)],g.prototype,"displayName",void 0);y([classValidator.IsString(),classValidator.IsNotEmpty(),classValidator.Length(16,1024),h("design:type",String)],g.prototype,"description",void 0);y([classValidator.IsUrl({protocols:["http","https"]}),h("design:type",String)],g.prototype,"avatarUrl",void 0);y([classValidator.IsOptional(),classValidator.IsUrl({protocols:["http","https"]}),h("design:type",String)],g.prototype,"bannerUrl",void 0);y([classValidator.IsOptional(),classValidator.IsArray(),h("design:type",Array)],g.prototype,"socialLinks",void 0);function b(e,t,o,r){var i=arguments.length,n=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,o):r,p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,r);else for(var a=e.length-1;a>=0;a--)(p=e[a])&&(n=(i<3?p(n):i>3?p(t,o,n):p(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}s(b,"_ts_decorate");function v(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}s(v,"_ts_metadata");var S=class{static{s(this,"UpdateOrganizationDto");}slug;identity;members;location};b([classValidator.IsOptional(),classValidator.IsString(),classValidator.IsLowercase(),classValidator.Length(1,48),v("design:type",String)],S.prototype,"slug",void 0);b([classValidator.IsObject(),classValidator.IsOptional(),v("design:type",typeof x>"u"?Object:x)],S.prototype,"identity",void 0);b([classValidator.IsOptional(),classValidator.IsArray(),v("design:type",Array)],S.prototype,"members",void 0);b([classValidator.IsOptional(),classValidator.IsObject(),v("design:type",typeof Location>"u"?Object:Location)],S.prototype,"location",void 0);var x=class{static{s(this,"UpdateOrganizationIdentityDto");}displayName;description;avatarUrl;bannerUrl;socialLinks};b([classValidator.IsString(),classValidator.IsNotEmpty(),classValidator.Length(1,32),classValidator.IsOptional(),v("design:type",String)],x.prototype,"displayName",void 0);b([classValidator.IsString(),classValidator.IsNotEmpty(),classValidator.Length(16,1024),classValidator.IsOptional(),v("design:type",String)],x.prototype,"description",void 0);b([classValidator.IsUrl({protocols:["http","https"]}),classValidator.IsOptional(),v("design:type",String)],x.prototype,"avatarUrl",void 0);b([classValidator.IsOptional(),classValidator.IsUrl({protocols:["http","https"]}),v("design:type",String)],x.prototype,"bannerUrl",void 0);b([classValidator.IsOptional(),classValidator.IsArray(),v("design:type",Array)],x.prototype,"socialLinks",void 0);exports.OrganizationEventTicketCategory = void 0;(function(e){e.Entry="entry",e.Package="package",e.Meal="meal",e.Drink="drink",e.Parking="parking",e.Accommodation="accommodation",e.Camping="camping",e.Locker="locker",e.Shuttle="shuttle",e.Other="other";})(exports.OrganizationEventTicketCategory||(exports.OrganizationEventTicketCategory={}));exports.OrganizationEventStyleType = void 0;(function(e){e.Music="music",e.Dress="dress",e.Sport="sport",e.Food="food",e.Art="art";})(exports.OrganizationEventStyleType||(exports.OrganizationEventStyleType={}));exports.OrganizationEventType = void 0;(function(e){e.Clubbing="clubbing",e.Concert="concert",e.Afterwork="afterwork",e.DancingLunch="dancing_lunch",e.Diner="diner",e.Garden="garden",e.AfterBeach="after_beach",e.Festival="festival",e.Spectacle="spectacle",e.Cruise="cruise",e.OutsideAnimation="outside_animation",e.Sport="sport",e.Match="match",e.Seminar="seminar",e.Conference="conference",e.WellnessDay="wellness_day",e.Workshop="workshop",e.TradeFair="trade_fair",e.ConsumerShow="consumer_show",e.Membership="membership";})(exports.OrganizationEventType||(exports.OrganizationEventType={}));exports.OrganizationEventVisibilityType = void 0;(function(e){e.Public="public",e.Unlisted="unlisted",e.Private="private";})(exports.OrganizationEventVisibilityType||(exports.OrganizationEventVisibilityType={}));exports.OrganizationMemberStatus = void 0;(function(e){e.Pending="pending",e.Accepted="accepted",e.Rejected="rejected";})(exports.OrganizationMemberStatus||(exports.OrganizationMemberStatus={}));exports.OrganizationMemberRole = void 0;(function(e){e.Member="member",e.Manager="manager",e.Admin="admin",e.Owner="owner";})(exports.OrganizationMemberRole||(exports.OrganizationMemberRole={}));exports.OrganizationSocialType = void 0;(function(e){e.Facebook="facebook",e.Twitter="twitter",e.Instagram="instagram",e.Linkedin="linkedin",e.Youtube="youtube",e.Website="website";})(exports.OrganizationSocialType||(exports.OrganizationSocialType={}));exports.UserTokenType = void 0;(function(e){e.Authentication="authentication",e.OrganizationInvite="organization_invite",e.PasswordRecovery="password_recovery",e.EmailValidation="email_validation",e.PhoneValidation="phone_validation";})(exports.UserTokenType||(exports.UserTokenType={}));exports.UserRole = void 0;(function(e){e.User="user",e.Developer="developer",e.Admin="admin";})(exports.UserRole||(exports.UserRole={}));exports.OrderStatus = void 0;(function(e){e.Created="created",e.Cancelled="cancelled",e.Completed="completed",e.Pending="pending",e.Confirmed="confirmed",e.Declined="declined",e.Refunded="refunded",e.PartiallyRefunded="partially_refunded",e.Expired="expired";})(exports.OrderStatus||(exports.OrderStatus={}));exports.Currency = void 0;(function(e){e.EUR="EUR",e.USD="USD",e.GBP="GBP";})(exports.Currency||(exports.Currency={}));exports.Language = void 0;(function(e){e.FR="fr",e.EN="en";})(exports.Language||(exports.Language={}));function _(e,t,o,r){var i=arguments.length,n=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,o):r,p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,r);else for(var a=e.length-1;a>=0;a--)(p=e[a])&&(n=(i<3?p(n):i>3?p(t,o,n):p(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}s(_,"_ts_decorate");function A(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}s(A,"_ts_metadata");var f=class{static{s(this,"CreateOrganizationEventDto");}title;slug;description;type;visibility;flyers;trailers;location;tickets;styles;startAt;endAt};_([classValidator.IsString(),classValidator.Length(1,64),A("design:type",String)],f.prototype,"title",void 0);_([classValidator.IsOptional(),classValidator.IsString(),classValidator.IsLowercase(),classValidator.Length(1,48),A("design:type",String)],f.prototype,"slug",void 0);_([classValidator.IsString(),classValidator.Length(16,2048),A("design:type",String)],f.prototype,"description",void 0);_([classValidator.IsEnum(exports.OrganizationEventType),A("design:type",typeof exports.OrganizationEventType>"u"?Object:exports.OrganizationEventType)],f.prototype,"type",void 0);_([classValidator.IsEnum(exports.OrganizationEventVisibilityType),A("design:type",typeof exports.OrganizationEventVisibilityType>"u"?Object:exports.OrganizationEventVisibilityType)],f.prototype,"visibility",void 0);_([classValidator.IsDate(),A("design:type",typeof Date>"u"?Object:Date)],f.prototype,"startAt",void 0);_([classValidator.IsDate(),A("design:type",typeof Date>"u"?Object:Date)],f.prototype,"endAt",void 0);var ue=class extends f{static{s(this,"UpdateOrganizationEventDto");}};var G=class{static{s(this,"CreateOrganizationEventTicketDto");}name;description;price;quantity;type;category;currency;isVisible;isFeesIncluded;startAt;endAt};var ge=class extends G{static{s(this,"UpdateOrganizationEventTicketDto");}};function ye(e,t,o,r){var i=arguments.length,n=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,o):r,p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,r);else for(var a=e.length-1;a>=0;a--)(p=e[a])&&(n=(i<3?p(n):i>3?p(t,o,n):p(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}s(ye,"_ts_decorate");function he(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}s(he,"_ts_metadata");var B=class{static{s(this,"CreateOrganizationMemberDto");}user;role};ye([classValidator.IsString(),classValidator.IsNotEmpty(),he("design:type",String)],B.prototype,"user",void 0);ye([classValidator.IsEnum(exports.OrganizationMemberRole),classValidator.IsNotEmpty(),he("design:type",typeof exports.OrganizationMemberRole>"u"?Object:exports.OrganizationMemberRole)],B.prototype,"role",void 0);function Ve(e,t,o,r){var i=arguments.length,n=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,o):r,p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,r);else for(var a=e.length-1;a>=0;a--)(p=e[a])&&(n=(i<3?p(n):i>3?p(t,o,n):p(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}s(Ve,"_ts_decorate");function Ze(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}s(Ze,"_ts_metadata");var O=class{static{s(this,"UpdateOrganizationMemberDto");}role};Ve([classValidator.IsEnum(exports.OrganizationMemberRole),classValidator.IsNotEmpty(),Ze("design:type",typeof exports.OrganizationMemberRole>"u"?Object:exports.OrganizationMemberRole)],O.prototype,"role",void 0);var be=class{static{s(this,"CreateUserDto");}identifier;password;identity;addresses};var ve=class{static{s(this,"SignInUserDto");}identifier;password};function c(e,t,o,r){var i=arguments.length,n=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,o):r,p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,r);else for(var a=e.length-1;a>=0;a--)(p=e[a])&&(n=(i<3?p(n):i>3?p(t,o,n):p(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}s(c,"_ts_decorate");function l(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}s(l,"_ts_metadata");var D=class{static{s(this,"UpdateUserDto");}identifier;identity;password};c([classValidator.IsOptional(),classValidator.IsObject(),classValidator.ValidateNested(),classTransformer.Type(()=>U),l("design:type",typeof U>"u"?Object:U)],D.prototype,"identifier",void 0);c([classValidator.IsOptional(),classValidator.IsObject(),classValidator.ValidateNested(),classTransformer.Type(()=>m),l("design:type",typeof m>"u"?Object:m)],D.prototype,"identity",void 0);c([classValidator.IsOptional(),classValidator.IsString(),classValidator.MinLength(8),classValidator.MaxLength(128),l("design:type",String)],D.prototype,"password",void 0);var U=class{static{s(this,"UpdateIdentifierDto");}email;phoneNumber;username};c([classValidator.IsOptional(),classValidator.IsString(),classValidator.IsEmail(),l("design:type",String)],U.prototype,"email",void 0);c([classValidator.IsOptional(),classValidator.IsString(),classValidator.IsPhoneNumber(),l("design:type",String)],U.prototype,"phoneNumber",void 0);c([classValidator.IsOptional(),classValidator.IsString(),classValidator.MinLength(3),l("design:type",String)],U.prototype,"username",void 0);var m=class{static{s(this,"UpdateIdentityDto");}firstName;lastName;displayName;description;avatarUrl;bannerUrl;gender;birthDate};c([classValidator.IsOptional(),classValidator.IsString(),classValidator.Length(2,32),classValidator.Matches(k,{message:"First name must be composed of letters only"}),l("design:type",String)],m.prototype,"firstName",void 0);c([classValidator.IsOptional(),classValidator.IsString(),classValidator.Length(2,32),classValidator.Matches(k,{message:"Last name must be composed of letters only"}),l("design:type",String)],m.prototype,"lastName",void 0);c([classValidator.IsOptional(),classValidator.IsString(),classValidator.Length(1,32),l("design:type",String)],m.prototype,"displayName",void 0);c([classValidator.IsOptional(),classValidator.IsString(),classValidator.Length(1,128),l("design:type",String)],m.prototype,"description",void 0);c([classValidator.IsOptional(),classValidator.IsUrl(),l("design:type",Object)],m.prototype,"avatarUrl",void 0);c([classValidator.IsOptional(),classValidator.IsUrl(),l("design:type",Object)],m.prototype,"bannerUrl",void 0);c([classValidator.IsOptional(),l("design:type",String)],m.prototype,"gender",void 0);c([classValidator.IsOptional(),classValidator.IsDateString(),l("design:type",typeof Date>"u"?Object:Date)],m.prototype,"birthDate",void 0);var R=typeof window<"u";var ot=tt__default.default.create({headers:{"Content-Type":"application/json",Accept:"application/json",...!R&&{"User-Agent":"tonightpass-api-client"}},responseType:"json",transformRequest:[function(e){return JSON.stringify(e)}],withCredentials:R}),Se=s(async(e,t)=>ot(e,{...t}).then(r=>r).catch(r=>{throw r.data}),"request");var V=class extends Error{static{s(this,"TonightPassAPIError");}response;data;status;constructor(t,o){super(o.message),this.response=t,this.data=o,this.status=t.status;}},q=class{static{s(this,"Client");}options;url;constructor(t){this.options=t,this.url=(o,r)=>{let i=this.options.baseURL||Z;return pathcat.pathcat(i,o,r)};}setOptions(t){this.options=t;}async get(t,o,r){return this.requester("GET",t,void 0,o,r)}async post(t,o,r,i){return this.requester("POST",t,o,r,i)}async put(t,o,r,i){return this.requester("PUT",t,o,r,i)}async patch(t,o,r,i){return this.requester("PATCH",t,o,r,i)}async delete(t,o,r,i){return this.requester("DELETE",t,o,r,i)}async requester(t,o,r,i={},n={}){let p=this.url(o,i);if(r!==void 0&&t==="GET")throw new Error("Cannot send a GET request with a body");let a=await Se(p,{method:t,data:r,...n}),z=a.data;if(!z.success)throw new V(a,z);return z.data}};function N(e){return e}s(N,"sdk");var Le=e=>({signIn:async t=>e.post("/auth/sign-in",t),signUp:async t=>e.post("/auth/sign-up",t),signOut:async()=>e.post("/auth/sign-out",null),refreshToken:async()=>e.post("/auth/refresh-token",null),oauth2:{google:{connect:t=>{if(R)window.location.href=e.url("/oauth2/google",t||{});else throw new Error("Google OAuth2 is only available in the browser")}},twitter:{connect:t=>{if(R)window.location.href=e.url("/oauth2/twitter",t||{});else throw new Error("Twitter OAuth2 is only available in the browser")}}}});var Pe=e=>({categories:{getAll:async t=>e.get("/careers/categories",t)},employmentTypes:{getAll:async t=>e.get("/careers/employmentTypes",t)},jobs:{getAll:async t=>e.get("/careers/jobs",t),get:async t=>e.get("/careers/jobs/:id",{id:t})},offices:{getAll:async t=>e.get("/careers/offices",t)}});var Ue=e=>({getAll:async()=>e.get("/health"),database:async()=>e.get("/health/database"),http:async()=>e.get("/health/http")});var Ne=s(e=>({account:async t=>e.get("/organizations/:slug/billing/account",{slug:t}),link:t=>{if(R)window.location.href=e.url("/organizations/:slug/billing/link",{slug:t});else throw new Error("Billing link is only available in the browser")},dashboard:t=>{if(R)window.location.href=e.url("/organizations/:slug/billing/dashboard",{slug:t});else throw new Error("Billing dashboard is only available in the browser")}}),"organizationsBilling");var De=s(e=>({getAll:async()=>e.get("/organizations/events/styles"),get:async t=>e.get("/organizations/events/styles/:slug",{slug:t}),create:async t=>e.post("/organizations/events/styles",t),update:async(t,o)=>e.put("/organizations/events/styles/:slug",o,{slug:t}),delete:async t=>e.delete("/organizations/events/styles/:slug",null,{slug:t})}),"organizationsEventsStyles");var Ee=s(e=>({getAll:async(t,o)=>e.get("/organizations/:slug/events/:eventSlug/tickets",{slug:t,eventSlug:o}),get:async(t,o,r)=>e.get("/organizations/:slug/events/:eventSlug/tickets/:ticketId",{slug:t,eventSlug:o,ticketId:r}),create:async(t,o,r)=>e.post("/organizations/:slug/events/:eventSlug/tickets",r,{slug:t,eventSlug:o}),update:async(t,o,r,i)=>e.put("/organizations/:slug/events/:eventSlug/tickets/:ticketId",i,{slug:t,eventSlug:o,ticketId:r}),delete:async(t,o,r)=>e.delete("/organizations/:slug/events/:eventSlug/tickets/:ticketId",null,{slug:t,eventSlug:o,ticketId:r})}),"organizationsEventsTickets");var Ge=s(e=>({getAll:async t=>e.get("/organizations/:slug/events",{slug:t}),get:async(t,o)=>e.get("/organizations/:organizationSlug/events/:eventSlug",{organizationSlug:t,eventSlug:o}),create:async(t,o)=>e.post("/organizations/:slug/events",o,{slug:t}),update:async(t,o,r)=>e.put("/organizations/:organizationSlug/events/:eventSlug",r,{organizationSlug:t,eventSlug:o}),delete:async(t,o)=>e.delete("/organizations/:organizationSlug/events/:eventSlug",null,{organizationSlug:t,eventSlug:o}),styles:De(e),tickets:Ee(e)}),"organizationsEvents");var Be=s(e=>({getAll:async()=>e.get("/organizations/members"),delete:async t=>e.delete("/organizations/members/:id",null,{id:t})}),"organizationsMembers");var Me=e=>({getAll:async()=>e.get("/organizations"),get:async t=>e.get("/organizations/:slug",{slug:t}),create:async t=>e.post("/organizations",t),update:async(t,o)=>e.put("/organizations/:slug",o,{slug:t}),delete:async t=>e.delete("/organizations/:slug",null,{slug:t}),billing:Ne(e),events:Ge(e),members:Be(e)});var qe=e=>({get:async t=>e.get("/profiles/:username",{username:t})});var ze=e=>({getAll:async()=>e.get("/users"),get:async t=>e.get("/users",{id:t}),me:async()=>e.get("/users/me"),check:async(t,o)=>e.get("/users/check/:identifier",{identifier:t,suggestions:o}),update:async(t,o)=>e.put("/users/:id",o,{id:t})});var ke=class{static{s(this,"TonightPass");}client;auth;careers;health;organizations;profiles;users;constructor(t){this.client=new q(t),this.auth=Le(this.client),this.careers=Pe(this.client),this.health=Ue(this.client),this.organizations=Me(this.client),this.profiles=qe(this.client),this.users=ze(this.client);}};
14
14
 
15
- exports.BCRYPT_HASH = et;
16
- exports.Client = D;
17
- exports.CreateOrganizationDto = _;
18
- exports.CreateOrganizationEventDto = N;
19
- exports.CreateOrganizationEventTicketDto = U;
20
- exports.CreateOrganizationIdentityDto = u;
21
- exports.CreateOrganizationMemberDto = P;
22
- exports.CreateUserDto = fe;
23
- exports.DEFAULT_API_URL = X;
24
- exports.EMAIL_REGEX = Qe;
25
- exports.IMAGE_URL_REGEX = ot;
15
+ exports.BCRYPT_HASH = ct;
16
+ exports.Client = q;
17
+ exports.CreateOrganizationDto = I;
18
+ exports.CreateOrganizationEventDto = f;
19
+ exports.CreateOrganizationEventTicketDto = G;
20
+ exports.CreateOrganizationIdentityDto = g;
21
+ exports.CreateOrganizationMemberDto = B;
22
+ exports.CreateUserDto = be;
23
+ exports.DEFAULT_API_URL = Z;
24
+ exports.EMAIL_REGEX = it;
25
+ exports.IMAGE_URL_REGEX = dt;
26
26
  exports.NAME_REGEX = k;
27
- exports.PASSWORD_REGEX = Oe;
28
- exports.PHONE_NUMBER_REGEX = tt;
29
- exports.SLUG_REGEX = Te;
30
- exports.SignInUserDto = me;
31
- exports.TonightPass = Ee;
32
- exports.TonightPassAPIError = $;
33
- exports.UpdateOrganizationDto = A;
34
- exports.UpdateOrganizationEventDto = Q;
35
- exports.UpdateOrganizationEventTicketDto = O;
36
- exports.UpdateOrganizationIdentityDto = h;
37
- exports.UpdateOrganizationMemberDto = F;
38
- exports.UpdateUserDto = S;
39
- exports.auth = we;
40
- exports.careers = Re;
41
- exports.health = _e;
42
- exports.isBrowser = w;
43
- exports.organizations = Ne;
44
- exports.profiles = Ue;
45
- exports.request = ve;
46
- exports.sdk = I;
47
- exports.users = Pe;
27
+ exports.PASSWORD_REGEX = pt;
28
+ exports.PHONE_NUMBER_REGEX = lt;
29
+ exports.SLUG_REGEX = at;
30
+ exports.SignInUserDto = ve;
31
+ exports.TonightPass = ke;
32
+ exports.TonightPassAPIError = V;
33
+ exports.UpdateOrganizationDto = S;
34
+ exports.UpdateOrganizationEventDto = ue;
35
+ exports.UpdateOrganizationEventTicketDto = ge;
36
+ exports.UpdateOrganizationIdentityDto = x;
37
+ exports.UpdateOrganizationMemberDto = O;
38
+ exports.UpdateUserDto = D;
39
+ exports.auth = Le;
40
+ exports.careers = Pe;
41
+ exports.health = Ue;
42
+ exports.isBrowser = R;
43
+ exports.organizations = Me;
44
+ exports.profiles = qe;
45
+ exports.request = Se;
46
+ exports.sdk = N;
47
+ exports.users = ze;
48
48
  //# sourceMappingURL=out.js.map
49
49
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/constants/api.ts","../src/constants/regex.ts","../src/rest/dtos/index.ts","../src/rest/dtos/organizations/create-organization.dto.ts","../src/rest/dtos/organizations/update-organization.dto.ts","../src/rest/dtos/organizations/events/create-organization-event.dto.ts","../src/rest/dtos/organizations/events/update-organization-event.dto.ts","../src/rest/dtos/organizations/events/tickets/create-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/events/tickets/update-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/members/create-organization-member.dto.ts","../src/rest/types/organizations/events/tickets/index.ts","../src/rest/types/organizations/events/styles/index.ts","../src/rest/types/organizations/events/index.ts","../src/rest/types/organizations/members/index.ts","../src/rest/types/organizations/index.ts","../src/rest/types/token/index.ts","../src/rest/types/users/index.ts","../src/rest/types/order/index.ts","../src/rest/types/index.ts","../src/rest/dtos/organizations/members/update-organization-member.dto.ts","../src/rest/dtos/users/create-user.dto.ts","../src/rest/dtos/users/sign-in-user.dto.ts","../src/rest/dtos/users/update-user.dto.ts","../src/rest/request/request.ts","../src/utils/index.ts","../src/rest/client.ts","../src/sdk/builder.ts","../src/sdk/auth.ts","../src/sdk/careers.ts","../src/sdk/health.ts","../src/sdk/organizations/billing/index.ts","../src/sdk/organizations/events/styles/index.ts","../src/sdk/organizations/events/tickets/index.ts","../src/sdk/organizations/events/index.ts","../src/sdk/organizations/members/index.ts","../src/sdk/organizations/index.ts","../src/sdk/profiles.ts","../src/sdk/users.ts","../src/tonightpass.ts"],"names":["DEFAULT_API_URL","EMAIL_REGEX","PASSWORD_REGEX","NAME_REGEX","SLUG_REGEX","BCRYPT_HASH","PHONE_NUMBER_REGEX","IMAGE_URL_REGEX","IsArray","IsLowercase","IsNotEmpty","IsObject","IsOptional","IsString","IsUrl","Length","CreateOrganizationDto","slug","identity","members","location","CreateOrganizationIdentityDto","displayName","description","avatarUrl","bannerUrl","socialLinks","protocols","UpdateOrganizationDto","UpdateOrganizationIdentityDto","CreateOrganizationEventDto","title","organization","type","public","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","IsEnum","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationMemberDto","user","role","UpdateOrganizationMemberDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","IsDateString","IsEmail","IsPhoneNumber","Matches","MaxLength","MinLength","ValidateNested","UpdateUserDto","UpdateIdentifierDto","UpdateIdentityDto","email","phoneNumber","username","firstName","lastName","gender","birthDate","message","axios","isBrowser","window","instance","create","headers","Accept","responseType","transformRequest","data","JSON","stringify","withCredentials","request","__name","url","options","then","response","catch","error","pathcat","TonightPassAPIError","Error","status","constructor","Client","path","params","baseURL","setOptions","get","query","requester","undefined","post","body","put","patch","delete","method","result","success","sdk","builder","auth","client","signIn","signUp","signOut","refreshToken","oauth2","google","connect","href","twitter","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","organizationSlug","organizationsMembers","organizations","billing","events","profiles","users","me","check","suggestions","TonightPass"],"mappings":"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","sourcesContent":["export const DEFAULT_API_URL = \"https://api.tonightpass.com\";\n","export const EMAIL_REGEX = /^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$/;\n\n// checks if a password has at least one uppercase letter and a number or special character\nexport const PASSWORD_REGEX =\n /((?=.*\\d)|(?=.*\\W+))(?![.\\n])(?=.*[A-Z])(?=.*[a-z]).*$/;\n\n// checks if a string has only letters, numbers, spaces, apostrophes, dots and dashes\nexport const NAME_REGEX = /(^[\\p{L}\\d'\\\\.\\s\\\\-]*$)/u;\n\n// checks if a string is a valid slug, useful for usernames\nexport const SLUG_REGEX = /^[a-z\\d]+(?:(\\.|-|_)[a-z\\d]+)*$/;\n\n// validates if passwords are valid bcrypt hashes\nexport const BCRYPT_HASH = /\\$2[abxy]?\\$\\d{1,2}\\$[A-Za-z\\d\\\\./]{53}/;\n\nexport const PHONE_NUMBER_REGEX =\n /^\\s*(?:\\+?(\\d{1,3}))?([-. (]*(\\d{3})[-. )]*)?((\\d{3})[-. ]*(\\d{2,4})(?:[-.x ]*(\\d+))?)\\s*$/;\n\nexport const IMAGE_URL_REGEX =\n /(((http:\\/\\/www)|(http:\\/\\/)|(www))[-a-zA-Z0-9@:%_\\\\+.~#?&//=]+)\\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;\n","import \"reflect-metadata\";\n\nexport * from \"./organizations\";\nexport * from \"./users\";\n","import {\n IsArray,\n IsLowercase,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport { CreateOrganizationMemberDto } from \"./members/create-organization-member.dto\";\nimport { type Location, type OrganizationSocialLink } from \"../../types\";\n\nexport class CreateOrganizationDto {\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsObject()\n identity: CreateOrganizationIdentityDto;\n\n @IsArray()\n members: CreateOrganizationMemberDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class CreateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n displayName: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n description: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n","import {\n IsArray,\n IsLowercase,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport { UpdateOrganizationEventDto } from \"./events\";\nimport { OrganizationSocialLink } from \"../../types\";\n\nexport class UpdateOrganizationDto {\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsObject()\n @IsOptional()\n identity?: UpdateOrganizationIdentityDto;\n\n @IsOptional()\n @IsArray()\n members?: UpdateOrganizationEventDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class UpdateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n @IsOptional()\n displayName?: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n @IsOptional()\n description?: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n @IsOptional()\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n","import { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport { Location, OrganizationEventType } from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n title: string;\n description: string;\n organization: string;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n name: string;\n description?: string;\n price: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventTicketDto } from \"./create-organization-event-ticket.dto\";\n\nexport class UpdateOrganizationEventTicketDto extends CreateOrganizationEventTicketDto {}\n","import { IsEnum, IsNotEmpty, IsString } from \"class-validator\";\n\nimport { OrganizationMemberRole } from \"../../../types\";\n\nexport class CreateOrganizationMemberDto {\n @IsString()\n @IsNotEmpty()\n user: string;\n\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { Base, Currency } from \"../../..\";\nimport {\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../dtos\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventTicket = Base & {\n name: string;\n description?: string;\n price: number;\n displayPrice: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n vatRate: number;\n externalId?: string;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n};\n\nexport type OrganizationEventTicketType = \"e-ticket\" | \"other\";\n\nexport enum OrganizationEventTicketCategory {\n Entry = \"entry\",\n Package = \"package\",\n Meal = \"meal\",\n Drink = \"drink\",\n Parking = \"parking\",\n Accommodation = \"accommodation\",\n Camping = \"camping\",\n Locker = \"locker\",\n Shuttle = \"shuttle\",\n Other = \"other\",\n}\n\nexport type OrganizationEventTicketEndpoints =\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket[]\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket\n >\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket,\n CreateOrganizationEventTicketDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket,\n UpdateOrganizationEventTicketDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket[],\n null\n >;\n","import { Base } from \"../../..\";\nimport {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../dtos/organizations/events/events\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventStyle = Base & {\n type: OrganizationEventStyleType;\n emoji: string;\n name: string;\n slug: string;\n};\n\nexport enum OrganizationEventStyleType {\n Music = \"music\",\n Dress = \"dress\",\n Sport = \"sport\",\n Food = \"food\",\n Art = \"art\",\n}\n\nexport type OrganizationEventStyleEndpoints =\n | Endpoint<\"GET\", \"/organizations/events/styles\", OrganizationEventStyle[]>\n | Endpoint<\n \"GET\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle\n >\n | Endpoint<\n \"POST\",\n \"/organizations/events/styles\",\n OrganizationEventStyle,\n CreateOrganizationEventStyleDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle,\n UpdateOrganizationEventStyleDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle[],\n null\n >;\n","import {\n OrganizationEventStyle,\n OrganizationEventStyleEndpoints,\n} from \"./styles\";\nimport {\n OrganizationEventTicket,\n Organization,\n OrganizationEventTicketEndpoints,\n} from \"..\";\nimport { Base, Location } from \"../..\";\nimport {\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../dtos\";\nimport { Endpoint } from \"../../../endpoints\";\n\nexport * from \"./tickets\";\nexport * from \"./styles\";\n\nexport type OrganizationEvent = Base & {\n title: string;\n description: string;\n slug: string;\n organization: Organization;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: OrganizationEventTicket[];\n styles: OrganizationEventStyle[];\n startAt: Date;\n endAt: Date;\n};\n\nexport enum OrganizationEventType {\n Clubbing = \"clubbing\",\n Concert = \"concert\",\n Afterwork = \"afterwork\",\n DancingLunch = \"dancing_lunch\",\n Diner = \"diner\",\n Garden = \"garden\",\n AfterBeach = \"after_beach\",\n Festival = \"festival\",\n Spectacle = \"spectacle\",\n Cruise = \"cruise\",\n OutsideAnimation = \"outside_animation\",\n Sport = \"sport\",\n Match = \"match\",\n Seminar = \"seminar\",\n Conference = \"conference\",\n WellnessDay = \"wellness_day\",\n Workshop = \"workshop\",\n TradeFair = \"trade_fair\",\n ConsumerShow = \"consumer_show\",\n Membership = \"membership\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\"GET\", \"/organizations/:slug/events\", Event[]>\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events/:eventSlug\", Event>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events\",\n Event,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { Base } from \"../..\";\nimport { CreateOrganizationMemberDto } from \"../../../dtos\";\nimport { UpdateOrganizationMemberDto } from \"../../../dtos/organizations/members/update-organization-member.dto\";\nimport { Endpoint } from \"../../../endpoints\";\nimport { UserToken } from \"../../token\";\nimport { User } from \"../../users\";\n\nexport type OrganizationMember = Base & {\n organization: Organization;\n role: OrganizationMemberRole;\n status: OrganizationMemberStatus;\n user?: User;\n token?: UserToken;\n};\n\nexport enum OrganizationMemberStatus {\n Pending = \"pending\",\n Accepted = \"accepted\",\n Rejected = \"rejected\",\n}\n\nexport enum OrganizationMemberRole {\n Member = \"member\",\n Manager = \"manager\",\n Admin = \"admin\",\n Owner = \"owner\",\n}\n\nexport type OrganizationMembersEndpoints =\n | Endpoint<\"GET\", \"/organizations/members\", OrganizationMember[]>\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\"GET\", \"/organizations/:slug/members\", OrganizationMember[]>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/members\",\n OrganizationMember,\n CreateOrganizationMemberDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember,\n UpdateOrganizationMemberDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember[],\n null\n >;\n","import type Stripe from \"stripe\";\n\nimport { OrganizationEvent, OrganizationEventEndpoints } from \"./events\";\nimport { OrganizationEventTicket } from \"./events/tickets\";\nimport { OrganizationMember, OrganizationMembersEndpoints } from \"./members\";\nimport { Base, Location, Profile, ProfileMetadata } from \"..\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport * from \"./events\";\nexport * from \"./members\";\n\nexport type Organization = Base & {\n slug: string;\n identity: OrganizationIdentity;\n members: OrganizationMember[];\n location?: Location;\n events: OrganizationEvent[];\n savedTickets: OrganizationEventTicket[];\n verified: boolean;\n billing: OrganizationBilling;\n};\n\nexport type OrganizationBilling = {\n account: string;\n};\n\nexport type OrganizationBillingAccount = Stripe.Account;\n\nexport type OrganizationIdentity = Profile & {\n socialLinks: OrganizationSocialLink[];\n\n metadata: ProfileMetadata & {\n eventsCount: number;\n viewsCount: number;\n membersCount: number;\n };\n};\n\nexport type OrganizationSocialLink = {\n type: OrganizationSocialType;\n url: string;\n};\n\nexport enum OrganizationSocialType {\n Facebook = \"facebook\",\n Twitter = \"twitter\",\n Instagram = \"instagram\",\n Linkedin = \"linkedin\",\n Youtube = \"youtube\",\n Website = \"website\",\n}\n\nexport type OrganizationEndpoints =\n | Endpoint<\"GET\", \"/organizations\", Organization[]>\n | Endpoint<\"GET\", \"/organizations/:slug\", Organization>\n | Endpoint<\"POST\", \"/organizations\", Organization, CreateOrganizationDto>\n | Endpoint<\"PUT\", \"/organizations/:slug\", Organization, UpdateOrganizationDto>\n | Endpoint<\"DELETE\", \"/organizations/:slug\", Organization, null>\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/billing/account\",\n OrganizationBillingAccount\n >\n | Endpoint<\"GET\", \"/organizations/:slug/billing/link\", void>\n | Endpoint<\"GET\", \"/organizations/:slug/billing/dashboard\", void>\n | OrganizationEventEndpoints\n | OrganizationMembersEndpoints;\n","import { User } from \"../users\";\n\nexport type UserToken = {\n type: UserTokenType;\n value: string;\n createdAt: Date;\n expiresAt: Date;\n user?: User;\n identifier?: string;\n};\n\nexport enum UserTokenType {\n Authentication = \"authentication\",\n OrganizationInvite = \"organization_invite\",\n PasswordRecovery = \"password_recovery\",\n EmailValidation = \"email_validation\",\n PhoneValidation = \"phone_validation\",\n}\n","import {\n Base,\n Currency,\n Language,\n Location,\n Profile,\n ProfileMetadata,\n} from \"..\";\nimport { UpdateUserDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport type User = Base & {\n identifier: UserIdentifier;\n password: string;\n identity: UserIdentity;\n role: UserRole;\n addresses: Location[];\n preferences: UserPreferences;\n connections: UserConnection[];\n verified: boolean;\n};\n\nexport type UserIdentifier = {\n email?: string;\n phoneNumber?: string;\n username: string;\n\n [key: string]: string | undefined;\n};\n\nexport type UserIdentity = Profile & {\n firstName: string;\n lastName: string;\n fullName: string;\n gender: UserIdentityGender;\n birthDate: Date;\n\n metadata: ProfileMetadata & {\n followingCount: number;\n hasPassPlus: boolean;\n idValid: boolean;\n };\n};\n\nexport enum UserRole {\n User = \"user\",\n Developer = \"developer\",\n Admin = \"admin\",\n}\n\nexport type UserIdentityGender =\n | \"male\"\n | \"female\"\n | \"non-binary\"\n | \"gender-fluid\"\n | \"neutral\"\n | \"other\"\n | string;\n\nexport type UserPreferences = {\n language: Language;\n currency: Currency;\n notifications: {\n email: {\n newsletter: boolean;\n message: boolean;\n };\n push: {\n message: boolean;\n };\n };\n};\n\nexport type UserConnection = {\n ip: string;\n os: UserConnectionOS;\n device: UserConnectionDevice;\n client: UserConnectionClient;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type UserConnectionOS = {\n name: string;\n version: string;\n};\n\nexport type UserConnectionDevice = {\n type: string;\n brand: string;\n};\n\nexport type UserConnectionClient = {\n name: string;\n version: string;\n};\n\nexport type UserEndpoints =\n | Endpoint<\"GET\", \"/users\", User[]>\n | Endpoint<\"GET\", \"/users/:id\", User, { id: string }>\n | Endpoint<\"GET\", \"/users/me\", User>\n | Endpoint<\n \"GET\",\n \"/users/check/:identifier\",\n {\n exists: boolean;\n identifier: UserIdentifier;\n suggestions?: string[];\n },\n { identifier: boolean; suggestions?: boolean }\n >\n | Endpoint<\"PUT\", \"/users/:id\", User, UpdateUserDto>;\n","import { Currency } from \"..\";\nimport { OrganizationEvent, OrganizationEventTicket } from \"../organizations\";\nimport { User } from \"../users\";\n\nexport enum OrderStatus {\n Created = \"created\",\n Cancelled = \"cancelled\",\n Completed = \"completed\",\n Pending = \"pending\",\n Confirmed = \"confirmed\",\n Declined = \"declined\",\n Refunded = \"refunded\",\n PartiallyRefunded = \"partially_refunded\",\n Expired = \"expired\",\n}\n\nexport type OrderItem = {\n id: string;\n ticket: OrganizationEventTicket;\n isUsed: boolean;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type Order = {\n id: string;\n owner: User;\n members: User[];\n status: OrderStatus;\n event: OrganizationEvent;\n items: OrderItem[];\n promoCode?: PromoCode;\n total: number;\n currency: Currency;\n createdAt: Date;\n};\n\nexport type PromoCode = {\n id: string;\n code: string;\n used: number;\n discount: number;\n isActive: boolean;\n expirationAt: Date;\n createdAt: Date;\n};\n","export * from \"./auth\";\nexport * from \"./careers\";\nexport * from \"./health\";\nexport * from \"./organizations\";\nexport * from \"./token\";\nexport * from \"./users\";\nexport * from \"./order\";\nexport * from \"./profiles\";\n\nexport type Base = {\n id: string;\n createdAt: Date;\n updatedAt: Date;\n};\n\nexport type ExcludeBase<T> = Omit<T, keyof Base>;\n\nexport type Location = {\n name?: string;\n address: string;\n zipCode: string;\n city: string;\n country: string;\n geometry?: {\n latitude: number;\n longitude: number;\n };\n};\n\n// Currency\nexport enum Currency {\n EUR = \"EUR\",\n USD = \"USD\",\n GBP = \"GBP\",\n}\n\n// I18n\nexport enum Language {\n FR = \"fr\",\n EN = \"en\",\n}\n","import { IsEnum, IsNotEmpty } from \"class-validator\";\n\nimport { OrganizationMemberRole } from \"../../../types\";\n\nexport class UpdateOrganizationMemberDto {\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { Location, UserIdentifier, UserIdentityGender } from \"../../types\";\n\nexport class CreateUserDto {\n identifier: UserIdentifier;\n password: string;\n identity: CreateUserIdentituDto;\n addresses: Location[];\n}\n\nclass CreateUserIdentituDto {\n firstName: string;\n lastName: string;\n gender: UserIdentityGender;\n avatarUrl?: string;\n birthDate: Date;\n}\n","export class SignInUserDto {\n identifier: string;\n password: string;\n}\n","import { Type } from \"class-transformer\";\nimport {\n IsDateString,\n IsEmail,\n IsObject,\n IsOptional,\n IsPhoneNumber,\n IsString,\n IsUrl,\n Length,\n Matches,\n MaxLength,\n MinLength,\n ValidateNested,\n} from \"class-validator\";\n\nimport { NAME_REGEX } from \"../../../constants/regex\";\nimport { UserIdentifier, UserIdentity } from \"../../types\";\n\nexport class UpdateUserDto {\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentifierDto)\n identifier?: UpdateIdentifierDto;\n\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentityDto)\n identity?: UpdateIdentityDto;\n\n @IsOptional()\n @IsString()\n @MinLength(8)\n @MaxLength(128)\n password?: string;\n}\n\nclass UpdateIdentifierDto\n implements\n Partial<Pick<UserIdentifier, \"email\" | \"phoneNumber\" | \"username\">>\n{\n @IsOptional()\n @IsString()\n @IsEmail()\n email?: string;\n\n @IsOptional()\n @IsString()\n @IsPhoneNumber()\n phoneNumber?: string;\n\n @IsOptional()\n @IsString()\n @MinLength(3)\n username?: string;\n}\n\nclass UpdateIdentityDto\n implements\n Partial<\n Pick<\n UserIdentity,\n | \"firstName\"\n | \"lastName\"\n | \"displayName\"\n | \"description\"\n | \"avatarUrl\"\n | \"bannerUrl\"\n | \"gender\"\n | \"birthDate\"\n >\n >\n{\n @IsOptional()\n @IsString()\n @Length(2, 32)\n @Matches(NAME_REGEX, {\n message: \"First name must be composed of letters only\",\n })\n firstName?: string;\n\n @IsOptional()\n @IsString()\n @Length(2, 32)\n @Matches(NAME_REGEX, {\n message: \"Last name must be composed of letters only\",\n })\n lastName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 32)\n displayName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 128)\n description?: string;\n\n @IsOptional()\n @IsUrl()\n avatarUrl?: string | undefined;\n\n @IsOptional()\n @IsUrl()\n bannerUrl?: string | undefined;\n\n @IsOptional()\n gender?: string;\n\n @IsOptional()\n @IsDateString()\n birthDate?: Date;\n}\n","import axios, { Options, Response } from \"redaxios\";\n\nimport { isBrowser } from \"../../utils\";\nimport { APIResponse, ErroredAPIResponse } from \"../endpoints\";\n\nconst instance = axios.create({\n headers: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n ...(!isBrowser && { \"User-Agent\": \"tonightpass-api-client\" }),\n },\n responseType: \"json\",\n transformRequest: [\n function (data) {\n return JSON.stringify(data);\n },\n ],\n withCredentials: isBrowser,\n});\n\nexport interface APIRequestOptions extends Options {}\n\nexport const request = async <T>(url: string, options?: Options) => {\n const response = instance<APIResponse<T>>(url, { ...options })\n .then((response) => response)\n .catch((error: Response<ErroredAPIResponse>) => {\n throw error.data;\n });\n\n return response;\n};\n","export const isBrowser = typeof window !== \"undefined\";\n","import { ParamValue, Query, pathcat } from \"pathcat\";\nimport { Options, Response } from \"redaxios\";\n\nimport { APIResponse, Endpoints, ErroredAPIResponse } from \"./endpoints\";\nimport { APIRequestOptions, request } from \"./request\";\nimport { DEFAULT_API_URL } from \"../constants\";\n\nexport type PathsFor<M extends Options[\"method\"]> = Extract<\n Endpoints,\n { method: M }\n>[\"path\"];\n\nexport class TonightPassAPIError<T> extends Error {\n public readonly status: number;\n\n constructor(\n public readonly response: Response<APIResponse<T>>,\n public readonly data: ErroredAPIResponse,\n ) {\n super(data.message);\n\n this.status = response.status;\n }\n}\n\nexport interface ClientOptions {\n readonly baseURL: string;\n}\n\nexport class Client {\n private options;\n public readonly url;\n\n constructor(options: ClientOptions) {\n this.options = options;\n this.url = (path: string, params: Record<string, ParamValue>) => {\n const baseURL = this.options.baseURL || DEFAULT_API_URL;\n return pathcat(baseURL, path, params);\n };\n }\n\n setOptions(options: ClientOptions) {\n this.options = options;\n }\n\n async get<Path extends PathsFor<\"GET\">>(\n path: Path,\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"GET\" }>[\"res\"]\n >(\"GET\", path, undefined, query, options);\n }\n\n async post<Path extends Extract<Endpoints, { method: \"POST\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"POST\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"POST\" }>[\"res\"]\n >(\"POST\", path, body, query, options);\n }\n\n async put<Path extends Extract<Endpoints, { method: \"PUT\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"res\"]\n >(\"PUT\", path, body, query, options);\n }\n\n async patch<Path extends Extract<Endpoints, { method: \"PATCH\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"res\"]\n >(\"PATCH\", path, body, query, options);\n }\n\n async delete<Path extends Extract<Endpoints, { method: \"DELETE\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"res\"]\n >(\"DELETE\", path, body, query, options);\n }\n\n private async requester<T>(\n method: Options[\"method\"],\n path: string,\n body: unknown,\n query: Query<string> = {},\n options: APIRequestOptions = {},\n ) {\n const url = this.url(path, query);\n\n if (body !== undefined) {\n if (method === \"GET\") {\n throw new Error(\"Cannot send a GET request with a body\");\n }\n }\n\n const response: Response<APIResponse<T>> = await request<T>(url, {\n method,\n data: body,\n ...options,\n });\n\n const result = response.data;\n\n if (!result.success) {\n throw new TonightPassAPIError<T>(response, result);\n }\n\n return result.data;\n }\n}\n","import { Client } from \"../rest\";\n\nexport function sdk<T>(builder: (client: Client) => T) {\n return builder;\n}\n","import { ParamValue } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\nimport { CreateUserDto, SignInUserDto } from \"../rest\";\nimport { isBrowser } from \"../utils\";\n\nexport const auth = sdk((client) => ({\n signIn: async (data: SignInUserDto) => client.post(\"/auth/sign-in\", data),\n signUp: async (data: CreateUserDto) => client.post(\"/auth/sign-up\", data),\n signOut: async () => client.post(\"/auth/sign-out\", null),\n refreshToken: async () => client.post(\"/auth/refresh-token\", null),\n\n oauth2: {\n google: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/google\", params || {});\n } else {\n throw new Error(\"Google OAuth2 is only available in the browser\");\n }\n },\n },\n twitter: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/twitter\", params || {});\n } else {\n throw new Error(\"Twitter OAuth2 is only available in the browser\");\n }\n },\n },\n },\n}));\n","import { Query } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\n\nexport const careers = sdk((client) => ({\n categories: {\n getAll: async (query?: Query<\"/careers/categories\">) =>\n client.get(\"/careers/categories\", query),\n },\n employmentTypes: {\n getAll: async (query?: Query<\"/careers/employmentTypes\">) =>\n client.get(\"/careers/employmentTypes\", query),\n },\n jobs: {\n getAll: async (query?: Query<\"/careers/jobs\">) =>\n client.get(\"/careers/jobs\", query),\n get: async (id: number) => client.get(\"/careers/jobs/:id\", { id }),\n },\n offices: {\n getAll: async (query?: Query<\"/careers/offices\">) =>\n client.get(\"/careers/offices\", query),\n },\n}));\n","import { sdk } from \"./builder\";\n\nexport const health = sdk((client) => ({\n getAll: async () => client.get(\"/health\"),\n database: async () => client.get(\"/health/database\"),\n http: async () => client.get(\"/health/http\"),\n}));\n","import { Client } from \"../../../rest\";\nimport { isBrowser } from \"../../../utils\";\n\nexport const organizationsBilling = (client: Client) => ({\n account: async (slug: string) =>\n client.get(\"/organizations/:slug/billing/account\", { slug }),\n link: (slug: string) => {\n if (isBrowser) {\n window.location.href = client.url(\"/organizations/:slug/billing/link\", {\n slug,\n });\n } else {\n throw new Error(\"Billing link is only available in the browser\");\n }\n },\n dashboard: (slug: string) => {\n if (isBrowser) {\n window.location.href = client.url(\n \"/organizations/:slug/billing/dashboard\",\n {\n slug,\n },\n );\n } else {\n throw new Error(\"Billing dashboard is only available in the browser\");\n }\n },\n});\n","import { Client } from \"../../../../rest\";\nimport {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../rest/dtos/organizations/events/events\";\n\nexport const organizationsEventsStyles = (client: Client) => ({\n getAll: async () => client.get(\"/organizations/events/styles\"),\n get: async (slug: string) =>\n client.get(\"/organizations/events/styles/:slug\", { slug }),\n create: async (data: CreateOrganizationEventStyleDto) =>\n client.post(\"/organizations/events/styles\", data),\n update: async (slug: string, data: UpdateOrganizationEventStyleDto) =>\n client.put(\"/organizations/events/styles/:slug\", data, { slug }),\n delete: async (slug: string) =>\n client.delete(\"/organizations/events/styles/:slug\", null, { slug }),\n});\n","import {\n Client,\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../rest\";\n\nexport const organizationsEventsTickets = (client: Client) => ({\n getAll: async (slug: string, eventSlug: string) =>\n client.get(\"/organizations/:slug/events/:eventSlug/tickets\", {\n slug,\n eventSlug,\n }),\n get: async (slug: string, eventSlug: string, ticketId: string) =>\n client.get(\"/organizations/:slug/events/:eventSlug/tickets/:ticketId\", {\n slug,\n eventSlug,\n ticketId,\n }),\n create: async (\n slug: string,\n eventSlug: string,\n data: CreateOrganizationEventTicketDto,\n ) =>\n client.post(\"/organizations/:slug/events/:eventSlug/tickets\", data, {\n slug,\n eventSlug,\n }),\n update: async (\n slug: string,\n eventSlug: string,\n ticketId: string,\n data: UpdateOrganizationEventTicketDto,\n ) =>\n client.put(\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n data,\n {\n slug,\n eventSlug,\n ticketId,\n },\n ),\n delete: async (slug: string, eventSlug: string, ticketId: string) =>\n client.delete(\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n null,\n {\n slug,\n eventSlug,\n ticketId,\n },\n ),\n});\n","import { organizationsEventsStyles } from \"./styles\";\nimport { organizationsEventsTickets } from \"./tickets\";\nimport {\n Client,\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\n\nexport const organizationsEvents = (client: Client) => ({\n getAll: async (slug: string) =>\n client.get(\"/organizations/:slug/events\", {\n slug,\n }),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (slug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:slug/events\", data, {\n slug,\n }),\n update: async (\n organizationSlug: string,\n eventSlug: string,\n data: UpdateOrganizationEventDto,\n ) =>\n client.put(\"/organizations/:organizationSlug/events/:eventSlug\", data, {\n organizationSlug,\n eventSlug,\n }),\n delete: async (organizationSlug: string, eventSlug: string) =>\n client.delete(\"/organizations/:organizationSlug/events/:eventSlug\", null, {\n organizationSlug,\n eventSlug,\n }),\n styles: organizationsEventsStyles(client),\n tickets: organizationsEventsTickets(client),\n});\n","import { Client } from \"../../../rest\";\n\nexport const organizationsMembers = (client: Client) => ({\n getAll: async () => client.get(\"/organizations/members\"),\n delete: async (id: string) =>\n client.delete(\"/organizations/members/:id\", null, { id }),\n});\n","import { organizationsBilling } from \"./billing\";\nimport { organizationsEvents } from \"./events\";\nimport { organizationsMembers } from \"./members\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../rest\";\nimport { sdk } from \"../builder\";\n\nexport const organizations = sdk((client) => ({\n getAll: async () => client.get(\"/organizations\"),\n get: async (slug: string) => client.get(\"/organizations/:slug\", { slug }),\n create: async (data: CreateOrganizationDto) =>\n client.post(\"/organizations\", data),\n update: async (slug: string, data: UpdateOrganizationDto) =>\n client.put(\"/organizations/:slug\", data, { slug }),\n delete: async (slug: string) =>\n client.delete(\"/organizations/:slug\", null, { slug }),\n billing: organizationsBilling(client),\n events: organizationsEvents(client),\n members: organizationsMembers(client),\n}));\n","import { sdk } from \"./builder\";\n\nexport const profiles = sdk((client) => ({\n get: async (username: string) =>\n client.get(\"/profiles/:username\", { username }),\n}));\n","import { sdk } from \"./builder\";\nimport { UpdateUserDto } from \"../rest\";\n\nexport const users = sdk((client) => ({\n getAll: async () => client.get(\"/users\"),\n get: async (id: string) => client.get(\"/users\", { id }),\n me: async () => client.get(\"/users/me\"),\n check: async (identifier: string, suggestions?: boolean) =>\n client.get(\"/users/check/:identifier\", { identifier, suggestions }),\n update: async (id: string, data: UpdateUserDto) =>\n client.put(\"/users/:id\", data, { id }),\n}));\n","import { Client, ClientOptions } from \"./rest\";\nimport { auth, careers, health, organizations, profiles, users } from \"./sdk\";\n\nexport class TonightPass {\n public readonly client: Client;\n\n public readonly auth;\n public readonly careers;\n public readonly health;\n public readonly organizations;\n public readonly profiles;\n public readonly users;\n\n constructor(options: ClientOptions) {\n this.client = new Client(options);\n\n this.auth = auth(this.client);\n this.careers = careers(this.client);\n this.health = health(this.client);\n this.organizations = organizations(this.client);\n this.profiles = profiles(this.client);\n this.users = users(this.client);\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/constants/api.ts","../src/constants/regex.ts","../src/rest/dtos/index.ts","../src/rest/dtos/organizations/create-organization.dto.ts","../src/rest/dtos/organizations/update-organization.dto.ts","../src/rest/dtos/organizations/events/create-organization-event.dto.ts","../src/rest/types/organizations/events/tickets/index.ts","../src/rest/types/organizations/events/styles/index.ts","../src/rest/types/organizations/events/index.ts","../src/rest/types/organizations/members/index.ts","../src/rest/types/organizations/index.ts","../src/rest/types/token/index.ts","../src/rest/types/users/index.ts","../src/rest/types/order/index.ts","../src/rest/types/index.ts","../src/rest/dtos/organizations/events/update-organization-event.dto.ts","../src/rest/dtos/organizations/events/tickets/create-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/events/tickets/update-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/members/create-organization-member.dto.ts","../src/rest/dtos/organizations/members/update-organization-member.dto.ts","../src/rest/dtos/users/create-user.dto.ts","../src/rest/dtos/users/sign-in-user.dto.ts","../src/rest/dtos/users/update-user.dto.ts","../src/rest/request/request.ts","../src/utils/index.ts","../src/rest/client.ts","../src/sdk/builder.ts","../src/sdk/auth.ts","../src/sdk/careers.ts","../src/sdk/health.ts","../src/sdk/organizations/billing/index.ts","../src/sdk/organizations/events/styles/index.ts","../src/sdk/organizations/events/tickets/index.ts","../src/sdk/organizations/events/index.ts","../src/sdk/organizations/members/index.ts","../src/sdk/organizations/index.ts","../src/sdk/profiles.ts","../src/sdk/users.ts","../src/tonightpass.ts"],"names":["DEFAULT_API_URL","EMAIL_REGEX","PASSWORD_REGEX","NAME_REGEX","SLUG_REGEX","BCRYPT_HASH","PHONE_NUMBER_REGEX","IMAGE_URL_REGEX","IsArray","IsLowercase","IsNotEmpty","IsObject","IsOptional","IsString","IsUrl","Length","CreateOrganizationDto","slug","identity","members","location","CreateOrganizationIdentityDto","displayName","description","avatarUrl","bannerUrl","socialLinks","protocols","UpdateOrganizationDto","UpdateOrganizationIdentityDto","IsDate","IsEnum","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationEventVisibilityType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationEventDto","title","type","visibility","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","CreateOrganizationMemberDto","user","role","UpdateOrganizationMemberDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","IsDateString","IsEmail","IsPhoneNumber","Matches","MaxLength","MinLength","ValidateNested","UpdateUserDto","UpdateIdentifierDto","UpdateIdentityDto","email","phoneNumber","username","firstName","lastName","gender","birthDate","message","axios","isBrowser","window","instance","create","headers","Accept","responseType","transformRequest","data","JSON","stringify","withCredentials","request","__name","url","options","then","response","catch","error","pathcat","TonightPassAPIError","Error","status","constructor","Client","path","params","baseURL","setOptions","get","query","requester","undefined","post","body","put","patch","delete","method","result","success","sdk","builder","auth","client","signIn","signUp","signOut","refreshToken","oauth2","google","connect","href","twitter","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","organizationSlug","organizationsMembers","organizations","billing","events","profiles","users","me","check","suggestions","TonightPass"],"mappings":"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","sourcesContent":["export const DEFAULT_API_URL = \"https://api.tonightpass.com\";\n","export const EMAIL_REGEX = /^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$/;\n\n// checks if a password has at least one uppercase letter and a number or special character\nexport const PASSWORD_REGEX =\n /((?=.*\\d)|(?=.*\\W+))(?![.\\n])(?=.*[A-Z])(?=.*[a-z]).*$/;\n\n// checks if a string has only letters, numbers, spaces, apostrophes, dots and dashes\nexport const NAME_REGEX = /(^[\\p{L}\\d'\\\\.\\s\\\\-]*$)/u;\n\n// checks if a string is a valid slug, useful for usernames\nexport const SLUG_REGEX = /^[a-z\\d]+(?:(\\.|-|_)[a-z\\d]+)*$/;\n\n// validates if passwords are valid bcrypt hashes\nexport const BCRYPT_HASH = /\\$2[abxy]?\\$\\d{1,2}\\$[A-Za-z\\d\\\\./]{53}/;\n\nexport const PHONE_NUMBER_REGEX =\n /^\\s*(?:\\+?(\\d{1,3}))?([-. (]*(\\d{3})[-. )]*)?((\\d{3})[-. ]*(\\d{2,4})(?:[-.x ]*(\\d+))?)\\s*$/;\n\nexport const IMAGE_URL_REGEX =\n /(((http:\\/\\/www)|(http:\\/\\/)|(www))[-a-zA-Z0-9@:%_\\\\+.~#?&//=]+)\\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;\n","import \"reflect-metadata\";\n\nexport * from \"./organizations\";\nexport * from \"./users\";\n","import {\n IsArray,\n IsLowercase,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport { CreateOrganizationMemberDto } from \"./members/create-organization-member.dto\";\nimport { type Location, type OrganizationSocialLink } from \"../../types\";\n\nexport class CreateOrganizationDto {\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsObject()\n identity: CreateOrganizationIdentityDto;\n\n @IsArray()\n members: CreateOrganizationMemberDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class CreateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n displayName: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n description: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n","import {\n IsArray,\n IsLowercase,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport { UpdateOrganizationEventDto } from \"./events\";\nimport { OrganizationSocialLink } from \"../../types\";\n\nexport class UpdateOrganizationDto {\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsObject()\n @IsOptional()\n identity?: UpdateOrganizationIdentityDto;\n\n @IsOptional()\n @IsArray()\n members?: UpdateOrganizationEventDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class UpdateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n @IsOptional()\n displayName?: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n @IsOptional()\n description?: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n @IsOptional()\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n","import {\n IsDate,\n IsEnum,\n IsLowercase,\n IsOptional,\n IsString,\n Length,\n} from \"class-validator\";\n\nimport { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport {\n Location,\n OrganizationEventType,\n OrganizationEventVisibilityType,\n} from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n @IsString()\n @Length(1, 64)\n title: string;\n\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsString()\n @Length(16, 2048)\n description: string;\n\n @IsEnum(OrganizationEventType)\n type: OrganizationEventType;\n\n @IsEnum(OrganizationEventVisibilityType)\n visibility: OrganizationEventVisibilityType;\n\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n\n @IsDate()\n startAt: Date;\n\n @IsDate()\n endAt: Date;\n}\n","import { Base, Currency } from \"../../..\";\nimport {\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../dtos\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventTicket = Base & {\n name: string;\n description?: string;\n price: number;\n displayPrice: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n vatRate: number;\n externalId?: string;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n};\n\nexport 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 visibility: OrganizationEventVisibilityType;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: OrganizationEventTicket[];\n styles: OrganizationEventStyle[];\n startAt: Date;\n endAt: Date;\n};\n\nexport enum OrganizationEventType {\n Clubbing = \"clubbing\",\n Concert = \"concert\",\n Afterwork = \"afterwork\",\n DancingLunch = \"dancing_lunch\",\n Diner = \"diner\",\n Garden = \"garden\",\n AfterBeach = \"after_beach\",\n Festival = \"festival\",\n Spectacle = \"spectacle\",\n Cruise = \"cruise\",\n OutsideAnimation = \"outside_animation\",\n Sport = \"sport\",\n Match = \"match\",\n Seminar = \"seminar\",\n Conference = \"conference\",\n WellnessDay = \"wellness_day\",\n Workshop = \"workshop\",\n TradeFair = \"trade_fair\",\n ConsumerShow = \"consumer_show\",\n Membership = \"membership\",\n}\n\nexport enum OrganizationEventVisibilityType {\n Public = \"public\",\n Unlisted = \"unlisted\",\n Private = \"private\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\"GET\", \"/organizations/:slug/events\", Event[]>\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events/:eventSlug\", Event>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events\",\n Event,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { Base } from \"../..\";\nimport { CreateOrganizationMemberDto } from \"../../../dtos\";\nimport { UpdateOrganizationMemberDto } from \"../../../dtos/organizations/members/update-organization-member.dto\";\nimport { Endpoint } from \"../../../endpoints\";\nimport { UserToken } from \"../../token\";\nimport { User } from \"../../users\";\n\nexport type OrganizationMember = Base & {\n organization: Organization;\n role: OrganizationMemberRole;\n status: OrganizationMemberStatus;\n user?: User;\n token?: UserToken;\n};\n\nexport enum OrganizationMemberStatus {\n Pending = \"pending\",\n Accepted = \"accepted\",\n Rejected = \"rejected\",\n}\n\nexport enum OrganizationMemberRole {\n Member = \"member\",\n Manager = \"manager\",\n Admin = \"admin\",\n Owner = \"owner\",\n}\n\nexport type OrganizationMembersEndpoints =\n | Endpoint<\"GET\", \"/organizations/members\", OrganizationMember[]>\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\"GET\", \"/organizations/:slug/members\", OrganizationMember[]>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/members\",\n OrganizationMember,\n CreateOrganizationMemberDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember,\n UpdateOrganizationMemberDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember[],\n null\n >;\n","import type Stripe from \"stripe\";\n\nimport { OrganizationEvent, OrganizationEventEndpoints } from \"./events\";\nimport { OrganizationEventTicket } from \"./events/tickets\";\nimport { OrganizationMember, OrganizationMembersEndpoints } from \"./members\";\nimport { Base, Location, Profile, ProfileMetadata } from \"..\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport * from \"./events\";\nexport * from \"./members\";\n\nexport type Organization = Base & {\n slug: string;\n identity: OrganizationIdentity;\n members: OrganizationMember[];\n location?: Location;\n events: OrganizationEvent[];\n savedTickets: OrganizationEventTicket[];\n verified: boolean;\n billing: OrganizationBilling;\n};\n\nexport type OrganizationBilling = {\n account: string;\n};\n\nexport type OrganizationBillingAccount = Stripe.Account;\n\nexport type OrganizationIdentity = Profile & {\n socialLinks: OrganizationSocialLink[];\n\n metadata: ProfileMetadata & {\n eventsCount: number;\n viewsCount: number;\n membersCount: number;\n };\n};\n\nexport type OrganizationSocialLink = {\n type: OrganizationSocialType;\n url: string;\n};\n\nexport enum OrganizationSocialType {\n Facebook = \"facebook\",\n Twitter = \"twitter\",\n Instagram = \"instagram\",\n Linkedin = \"linkedin\",\n Youtube = \"youtube\",\n Website = \"website\",\n}\n\nexport type OrganizationEndpoints =\n | Endpoint<\"GET\", \"/organizations\", Organization[]>\n | Endpoint<\"GET\", \"/organizations/:slug\", Organization>\n | Endpoint<\"POST\", \"/organizations\", Organization, CreateOrganizationDto>\n | Endpoint<\"PUT\", \"/organizations/:slug\", Organization, UpdateOrganizationDto>\n | Endpoint<\"DELETE\", \"/organizations/:slug\", Organization, null>\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/billing/account\",\n OrganizationBillingAccount\n >\n | Endpoint<\"GET\", \"/organizations/:slug/billing/link\", void>\n | Endpoint<\"GET\", \"/organizations/:slug/billing/dashboard\", void>\n | OrganizationEventEndpoints\n | OrganizationMembersEndpoints;\n","import { User } from \"../users\";\n\nexport type UserToken = {\n type: UserTokenType;\n value: string;\n createdAt: Date;\n expiresAt: Date;\n user?: User;\n identifier?: string;\n};\n\nexport enum UserTokenType {\n Authentication = \"authentication\",\n OrganizationInvite = \"organization_invite\",\n PasswordRecovery = \"password_recovery\",\n EmailValidation = \"email_validation\",\n PhoneValidation = \"phone_validation\",\n}\n","import {\n Base,\n Currency,\n Language,\n Location,\n Profile,\n ProfileMetadata,\n} from \"..\";\nimport { UpdateUserDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport type User = Base & {\n identifier: UserIdentifier;\n password: string;\n identity: UserIdentity;\n role: UserRole;\n addresses: Location[];\n preferences: UserPreferences;\n connections: UserConnection[];\n verified: boolean;\n};\n\nexport type UserIdentifier = {\n email?: string;\n phoneNumber?: string;\n username: string;\n\n [key: string]: string | undefined;\n};\n\nexport type UserIdentity = Profile & {\n firstName: string;\n lastName: string;\n fullName: string;\n gender: UserIdentityGender;\n birthDate: Date;\n\n metadata: ProfileMetadata & {\n followingCount: number;\n hasPassPlus: boolean;\n idValid: boolean;\n };\n};\n\nexport enum UserRole {\n User = \"user\",\n Developer = \"developer\",\n Admin = \"admin\",\n}\n\nexport type UserIdentityGender =\n | \"male\"\n | \"female\"\n | \"non-binary\"\n | \"gender-fluid\"\n | \"neutral\"\n | \"other\"\n | string;\n\nexport type UserPreferences = {\n language: Language;\n currency: Currency;\n notifications: {\n email: {\n newsletter: boolean;\n message: boolean;\n };\n push: {\n message: boolean;\n };\n };\n};\n\nexport type UserConnection = {\n ip: string;\n os: UserConnectionOS;\n device: UserConnectionDevice;\n client: UserConnectionClient;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type UserConnectionOS = {\n name: string;\n version: string;\n};\n\nexport type UserConnectionDevice = {\n type: string;\n brand: string;\n};\n\nexport type UserConnectionClient = {\n name: string;\n version: string;\n};\n\nexport type UserEndpoints =\n | Endpoint<\"GET\", \"/users\", User[]>\n | Endpoint<\"GET\", \"/users/:id\", User, { id: string }>\n | Endpoint<\"GET\", \"/users/me\", User>\n | Endpoint<\n \"GET\",\n \"/users/check/:identifier\",\n {\n exists: boolean;\n identifier: UserIdentifier;\n suggestions?: string[];\n },\n { identifier: boolean; suggestions?: boolean }\n >\n | Endpoint<\"PUT\", \"/users/:id\", User, UpdateUserDto>;\n","import { Currency } from \"..\";\nimport { OrganizationEvent, OrganizationEventTicket } from \"../organizations\";\nimport { User } from \"../users\";\n\nexport enum OrderStatus {\n Created = \"created\",\n Cancelled = \"cancelled\",\n Completed = \"completed\",\n Pending = \"pending\",\n Confirmed = \"confirmed\",\n Declined = \"declined\",\n Refunded = \"refunded\",\n PartiallyRefunded = \"partially_refunded\",\n Expired = \"expired\",\n}\n\nexport type OrderItem = {\n id: string;\n ticket: OrganizationEventTicket;\n isUsed: boolean;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type Order = {\n id: string;\n owner: User;\n members: User[];\n status: OrderStatus;\n event: OrganizationEvent;\n items: OrderItem[];\n promoCode?: PromoCode;\n total: number;\n currency: Currency;\n createdAt: Date;\n};\n\nexport type PromoCode = {\n id: string;\n code: string;\n used: number;\n discount: number;\n isActive: boolean;\n expirationAt: Date;\n createdAt: Date;\n};\n","export * from \"./auth\";\nexport * from \"./careers\";\nexport * from \"./health\";\nexport * from \"./organizations\";\nexport * from \"./token\";\nexport * from \"./users\";\nexport * from \"./order\";\nexport * from \"./profiles\";\n\nexport type Base = {\n id: string;\n createdAt: Date;\n updatedAt: Date;\n};\n\nexport type ExcludeBase<T> = Omit<T, keyof Base>;\n\nexport type Location = {\n name?: string;\n address: string;\n zipCode: string;\n city: string;\n country: string;\n geometry?: {\n latitude: number;\n longitude: number;\n };\n};\n\n// Currency\nexport enum Currency {\n EUR = \"EUR\",\n USD = \"USD\",\n GBP = \"GBP\",\n}\n\n// I18n\nexport enum Language {\n FR = \"fr\",\n EN = \"en\",\n}\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n name: string;\n description?: string;\n price: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventTicketDto } from \"./create-organization-event-ticket.dto\";\n\nexport class UpdateOrganizationEventTicketDto extends CreateOrganizationEventTicketDto {}\n","import { IsEnum, IsNotEmpty, IsString } from \"class-validator\";\n\nimport { OrganizationMemberRole } from \"../../../types\";\n\nexport class CreateOrganizationMemberDto {\n @IsString()\n @IsNotEmpty()\n user: string;\n\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { IsEnum, IsNotEmpty } from \"class-validator\";\n\nimport { OrganizationMemberRole } from \"../../../types\";\n\nexport class UpdateOrganizationMemberDto {\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { Location, UserIdentifier, UserIdentityGender } from \"../../types\";\n\nexport class CreateUserDto {\n identifier: UserIdentifier;\n password: string;\n identity: CreateUserIdentituDto;\n addresses: Location[];\n}\n\nclass CreateUserIdentituDto {\n firstName: string;\n lastName: string;\n gender: UserIdentityGender;\n avatarUrl?: string;\n birthDate: Date;\n}\n","export class SignInUserDto {\n identifier: string;\n password: string;\n}\n","import { Type } from \"class-transformer\";\nimport {\n IsDateString,\n IsEmail,\n IsObject,\n IsOptional,\n IsPhoneNumber,\n IsString,\n IsUrl,\n Length,\n Matches,\n MaxLength,\n MinLength,\n ValidateNested,\n} from \"class-validator\";\n\nimport { NAME_REGEX } from \"../../../constants/regex\";\nimport { UserIdentifier, UserIdentity } from \"../../types\";\n\nexport class UpdateUserDto {\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentifierDto)\n identifier?: UpdateIdentifierDto;\n\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentityDto)\n identity?: UpdateIdentityDto;\n\n @IsOptional()\n @IsString()\n @MinLength(8)\n @MaxLength(128)\n password?: string;\n}\n\nclass UpdateIdentifierDto\n implements\n Partial<Pick<UserIdentifier, \"email\" | \"phoneNumber\" | \"username\">>\n{\n @IsOptional()\n @IsString()\n @IsEmail()\n email?: string;\n\n @IsOptional()\n @IsString()\n @IsPhoneNumber()\n phoneNumber?: string;\n\n @IsOptional()\n @IsString()\n @MinLength(3)\n username?: string;\n}\n\nclass UpdateIdentityDto\n implements\n Partial<\n Pick<\n UserIdentity,\n | \"firstName\"\n | \"lastName\"\n | \"displayName\"\n | \"description\"\n | \"avatarUrl\"\n | \"bannerUrl\"\n | \"gender\"\n | \"birthDate\"\n >\n >\n{\n @IsOptional()\n @IsString()\n @Length(2, 32)\n @Matches(NAME_REGEX, {\n message: \"First name must be composed of letters only\",\n })\n firstName?: string;\n\n @IsOptional()\n @IsString()\n @Length(2, 32)\n @Matches(NAME_REGEX, {\n message: \"Last name must be composed of letters only\",\n })\n lastName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 32)\n displayName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 128)\n description?: string;\n\n @IsOptional()\n @IsUrl()\n avatarUrl?: string | undefined;\n\n @IsOptional()\n @IsUrl()\n bannerUrl?: string | undefined;\n\n @IsOptional()\n gender?: string;\n\n @IsOptional()\n @IsDateString()\n birthDate?: Date;\n}\n","import axios, { Options, Response } from \"redaxios\";\n\nimport { isBrowser } from \"../../utils\";\nimport { APIResponse, ErroredAPIResponse } from \"../endpoints\";\n\nconst instance = axios.create({\n headers: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n ...(!isBrowser && { \"User-Agent\": \"tonightpass-api-client\" }),\n },\n responseType: \"json\",\n transformRequest: [\n function (data) {\n return JSON.stringify(data);\n },\n ],\n withCredentials: isBrowser,\n});\n\nexport interface APIRequestOptions extends Options {}\n\nexport const request = async <T>(url: string, options?: Options) => {\n const response = instance<APIResponse<T>>(url, { ...options })\n .then((response) => response)\n .catch((error: Response<ErroredAPIResponse>) => {\n throw error.data;\n });\n\n return response;\n};\n","export const isBrowser = typeof window !== \"undefined\";\n","import { ParamValue, Query, pathcat } from \"pathcat\";\nimport { Options, Response } from \"redaxios\";\n\nimport { APIResponse, Endpoints, ErroredAPIResponse } from \"./endpoints\";\nimport { APIRequestOptions, request } from \"./request\";\nimport { DEFAULT_API_URL } from \"../constants\";\n\nexport type PathsFor<M extends Options[\"method\"]> = Extract<\n Endpoints,\n { method: M }\n>[\"path\"];\n\nexport class TonightPassAPIError<T> extends Error {\n public readonly status: number;\n\n constructor(\n public readonly response: Response<APIResponse<T>>,\n public readonly data: ErroredAPIResponse,\n ) {\n super(data.message);\n\n this.status = response.status;\n }\n}\n\nexport interface ClientOptions {\n readonly baseURL: string;\n}\n\nexport class Client {\n private options;\n public readonly url;\n\n constructor(options: ClientOptions) {\n this.options = options;\n this.url = (path: string, params: Record<string, ParamValue>) => {\n const baseURL = this.options.baseURL || DEFAULT_API_URL;\n return pathcat(baseURL, path, params);\n };\n }\n\n setOptions(options: ClientOptions) {\n this.options = options;\n }\n\n async get<Path extends PathsFor<\"GET\">>(\n path: Path,\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"GET\" }>[\"res\"]\n >(\"GET\", path, undefined, query, options);\n }\n\n async post<Path extends Extract<Endpoints, { method: \"POST\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"POST\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"POST\" }>[\"res\"]\n >(\"POST\", path, body, query, options);\n }\n\n async put<Path extends Extract<Endpoints, { method: \"PUT\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"res\"]\n >(\"PUT\", path, body, query, options);\n }\n\n async patch<Path extends Extract<Endpoints, { method: \"PATCH\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"res\"]\n >(\"PATCH\", path, body, query, options);\n }\n\n async delete<Path extends Extract<Endpoints, { method: \"DELETE\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"res\"]\n >(\"DELETE\", path, body, query, options);\n }\n\n private async requester<T>(\n method: Options[\"method\"],\n path: string,\n body: unknown,\n query: Query<string> = {},\n options: APIRequestOptions = {},\n ) {\n const url = this.url(path, query);\n\n if (body !== undefined) {\n if (method === \"GET\") {\n throw new Error(\"Cannot send a GET request with a body\");\n }\n }\n\n const response: Response<APIResponse<T>> = await request<T>(url, {\n method,\n data: body,\n ...options,\n });\n\n const result = response.data;\n\n if (!result.success) {\n throw new TonightPassAPIError<T>(response, result);\n }\n\n return result.data;\n }\n}\n","import { Client } from \"../rest\";\n\nexport function sdk<T>(builder: (client: Client) => T) {\n return builder;\n}\n","import { ParamValue } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\nimport { CreateUserDto, SignInUserDto } from \"../rest\";\nimport { isBrowser } from \"../utils\";\n\nexport const auth = sdk((client) => ({\n signIn: async (data: SignInUserDto) => client.post(\"/auth/sign-in\", data),\n signUp: async (data: CreateUserDto) => client.post(\"/auth/sign-up\", data),\n signOut: async () => client.post(\"/auth/sign-out\", null),\n refreshToken: async () => client.post(\"/auth/refresh-token\", null),\n\n oauth2: {\n google: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/google\", params || {});\n } else {\n throw new Error(\"Google OAuth2 is only available in the browser\");\n }\n },\n },\n twitter: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/twitter\", params || {});\n } else {\n throw new Error(\"Twitter OAuth2 is only available in the browser\");\n }\n },\n },\n },\n}));\n","import { Query } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\n\nexport const careers = sdk((client) => ({\n categories: {\n getAll: async (query?: Query<\"/careers/categories\">) =>\n client.get(\"/careers/categories\", query),\n },\n employmentTypes: {\n getAll: async (query?: Query<\"/careers/employmentTypes\">) =>\n client.get(\"/careers/employmentTypes\", query),\n },\n jobs: {\n getAll: async (query?: Query<\"/careers/jobs\">) =>\n client.get(\"/careers/jobs\", query),\n get: async (id: number) => client.get(\"/careers/jobs/:id\", { id }),\n },\n offices: {\n getAll: async (query?: Query<\"/careers/offices\">) =>\n client.get(\"/careers/offices\", query),\n },\n}));\n","import { sdk } from \"./builder\";\n\nexport const health = sdk((client) => ({\n getAll: async () => client.get(\"/health\"),\n database: async () => client.get(\"/health/database\"),\n http: async () => client.get(\"/health/http\"),\n}));\n","import { Client } from \"../../../rest\";\nimport { isBrowser } from \"../../../utils\";\n\nexport const organizationsBilling = (client: Client) => ({\n account: async (slug: string) =>\n client.get(\"/organizations/:slug/billing/account\", { slug }),\n link: (slug: string) => {\n if (isBrowser) {\n window.location.href = client.url(\"/organizations/:slug/billing/link\", {\n slug,\n });\n } else {\n throw new Error(\"Billing link is only available in the browser\");\n }\n },\n dashboard: (slug: string) => {\n if (isBrowser) {\n window.location.href = client.url(\n \"/organizations/:slug/billing/dashboard\",\n {\n slug,\n },\n );\n } else {\n throw new Error(\"Billing dashboard is only available in the browser\");\n }\n },\n});\n","import { Client } from \"../../../../rest\";\nimport {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../rest/dtos/organizations/events/events\";\n\nexport const organizationsEventsStyles = (client: Client) => ({\n getAll: async () => client.get(\"/organizations/events/styles\"),\n get: async (slug: string) =>\n client.get(\"/organizations/events/styles/:slug\", { slug }),\n create: async (data: CreateOrganizationEventStyleDto) =>\n client.post(\"/organizations/events/styles\", data),\n update: async (slug: string, data: UpdateOrganizationEventStyleDto) =>\n client.put(\"/organizations/events/styles/:slug\", data, { slug }),\n delete: async (slug: string) =>\n client.delete(\"/organizations/events/styles/:slug\", null, { slug }),\n});\n","import {\n Client,\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../rest\";\n\nexport const organizationsEventsTickets = (client: Client) => ({\n getAll: async (slug: string, eventSlug: string) =>\n client.get(\"/organizations/:slug/events/:eventSlug/tickets\", {\n slug,\n eventSlug,\n }),\n get: async (slug: string, eventSlug: string, ticketId: string) =>\n client.get(\"/organizations/:slug/events/:eventSlug/tickets/:ticketId\", {\n slug,\n eventSlug,\n ticketId,\n }),\n create: async (\n slug: string,\n eventSlug: string,\n data: CreateOrganizationEventTicketDto,\n ) =>\n client.post(\"/organizations/:slug/events/:eventSlug/tickets\", data, {\n slug,\n eventSlug,\n }),\n update: async (\n slug: string,\n eventSlug: string,\n ticketId: string,\n data: UpdateOrganizationEventTicketDto,\n ) =>\n client.put(\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n data,\n {\n slug,\n eventSlug,\n ticketId,\n },\n ),\n delete: async (slug: string, eventSlug: string, ticketId: string) =>\n client.delete(\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n null,\n {\n slug,\n eventSlug,\n ticketId,\n },\n ),\n});\n","import { organizationsEventsStyles } from \"./styles\";\nimport { organizationsEventsTickets } from \"./tickets\";\nimport {\n Client,\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\n\nexport const organizationsEvents = (client: Client) => ({\n getAll: async (slug: string) =>\n client.get(\"/organizations/:slug/events\", {\n slug,\n }),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (slug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:slug/events\", data, {\n slug,\n }),\n update: async (\n organizationSlug: string,\n eventSlug: string,\n data: UpdateOrganizationEventDto,\n ) =>\n client.put(\"/organizations/:organizationSlug/events/:eventSlug\", data, {\n organizationSlug,\n eventSlug,\n }),\n delete: async (organizationSlug: string, eventSlug: string) =>\n client.delete(\"/organizations/:organizationSlug/events/:eventSlug\", null, {\n organizationSlug,\n eventSlug,\n }),\n styles: organizationsEventsStyles(client),\n tickets: organizationsEventsTickets(client),\n});\n","import { Client } from \"../../../rest\";\n\nexport const organizationsMembers = (client: Client) => ({\n getAll: async () => client.get(\"/organizations/members\"),\n delete: async (id: string) =>\n client.delete(\"/organizations/members/:id\", null, { id }),\n});\n","import { organizationsBilling } from \"./billing\";\nimport { organizationsEvents } from \"./events\";\nimport { organizationsMembers } from \"./members\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../rest\";\nimport { sdk } from \"../builder\";\n\nexport const organizations = sdk((client) => ({\n getAll: async () => client.get(\"/organizations\"),\n get: async (slug: string) => client.get(\"/organizations/:slug\", { slug }),\n create: async (data: CreateOrganizationDto) =>\n client.post(\"/organizations\", data),\n update: async (slug: string, data: UpdateOrganizationDto) =>\n client.put(\"/organizations/:slug\", data, { slug }),\n delete: async (slug: string) =>\n client.delete(\"/organizations/:slug\", null, { slug }),\n billing: organizationsBilling(client),\n events: organizationsEvents(client),\n members: organizationsMembers(client),\n}));\n","import { sdk } from \"./builder\";\n\nexport const profiles = sdk((client) => ({\n get: async (username: string) =>\n client.get(\"/profiles/:username\", { username }),\n}));\n","import { sdk } from \"./builder\";\nimport { UpdateUserDto } from \"../rest\";\n\nexport const users = sdk((client) => ({\n getAll: async () => client.get(\"/users\"),\n get: async (id: string) => client.get(\"/users\", { id }),\n me: async () => client.get(\"/users/me\"),\n check: async (identifier: string, suggestions?: boolean) =>\n client.get(\"/users/check/:identifier\", { identifier, suggestions }),\n update: async (id: string, data: UpdateUserDto) =>\n client.put(\"/users/:id\", data, { id }),\n}));\n","import { Client, ClientOptions } from \"./rest\";\nimport { auth, careers, health, organizations, profiles, users } from \"./sdk\";\n\nexport class TonightPass {\n public readonly client: Client;\n\n public readonly auth;\n public readonly careers;\n public readonly health;\n public readonly organizations;\n public readonly profiles;\n public readonly users;\n\n constructor(options: ClientOptions) {\n this.client = new Client(options);\n\n this.auth = auth(this.client);\n this.careers = careers(this.client);\n this.health = health(this.client);\n this.organizations = organizations(this.client);\n this.profiles = profiles(this.client);\n this.users = users(this.client);\n }\n}\n"]}
package/dist/index.mjs CHANGED
@@ -1,11 +1,11 @@
1
1
  import 'reflect-metadata';
2
- import { IsOptional, IsString, IsLowercase, Length, IsObject, IsArray, IsNotEmpty, IsUrl, IsEnum, ValidateNested, MinLength, MaxLength, IsEmail, IsPhoneNumber, Matches, IsDateString } from 'class-validator';
2
+ import { IsOptional, IsString, IsLowercase, Length, IsObject, IsArray, IsNotEmpty, IsUrl, IsEnum, IsDate, ValidateNested, MinLength, MaxLength, IsEmail, IsPhoneNumber, Matches, IsDateString } from 'class-validator';
3
3
  import { Type } from 'class-transformer';
4
- import Ve from 'redaxios';
4
+ import tt from 'redaxios';
5
5
  import { pathcat } from 'pathcat';
6
6
 
7
- var De=Object.defineProperty;var r=(e,t)=>De(e,"name",{value:t,configurable:!0});var X="https://api.tonightpass.com";var Qe=/^[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$/,Oe=/((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$/,k=/(^[\p{L}\d'\\.\s\\-]*$)/u,Te=/^[a-z\d]+(?:(\.|-|_)[a-z\d]+)*$/,et=/\$2[abxy]?\$\d{1,2}\$[A-Za-z\d\\./]{53}/,tt=/^\s*(?:\+?(\d{1,3}))?([-. (]*(\d{3})[-. )]*)?((\d{3})[-. ]*(\d{2,4})(?:[-.x ]*(\d+))?)\s*$/,ot=/(((http:\/\/www)|(http:\/\/)|(www))[-a-zA-Z0-9@:%_\\+.~#?&//=]+)\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;function g(e,t,o,s){var i=arguments.length,n=i<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,o):s,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,s);else for(var p=e.length-1;p>=0;p--)(a=e[p])&&(n=(i<3?a(n):i>3?a(t,o,n):a(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}r(g,"_ts_decorate");function y(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}r(y,"_ts_metadata");var _=class{static{r(this,"CreateOrganizationDto");}slug;identity;members;location};g([IsOptional(),IsString(),IsLowercase(),Length(1,48),y("design:type",String)],_.prototype,"slug",void 0);g([IsObject(),y("design:type",typeof u>"u"?Object:u)],_.prototype,"identity",void 0);g([IsArray(),y("design:type",Array)],_.prototype,"members",void 0);g([IsOptional(),IsObject(),y("design:type",typeof Location>"u"?Object:Location)],_.prototype,"location",void 0);var u=class{static{r(this,"CreateOrganizationIdentityDto");}displayName;description;avatarUrl;bannerUrl;socialLinks};g([IsString(),IsNotEmpty(),Length(1,32),y("design:type",String)],u.prototype,"displayName",void 0);g([IsString(),IsNotEmpty(),Length(16,1024),y("design:type",String)],u.prototype,"description",void 0);g([IsUrl({protocols:["http","https"]}),y("design:type",String)],u.prototype,"avatarUrl",void 0);g([IsOptional(),IsUrl({protocols:["http","https"]}),y("design:type",String)],u.prototype,"bannerUrl",void 0);g([IsOptional(),IsArray(),y("design:type",Array)],u.prototype,"socialLinks",void 0);function x(e,t,o,s){var i=arguments.length,n=i<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,o):s,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,s);else for(var p=e.length-1;p>=0;p--)(a=e[p])&&(n=(i<3?a(n):i>3?a(t,o,n):a(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}r(x,"_ts_decorate");function b(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}r(b,"_ts_metadata");var A=class{static{r(this,"UpdateOrganizationDto");}slug;identity;members;location};x([IsOptional(),IsString(),IsLowercase(),Length(1,48),b("design:type",String)],A.prototype,"slug",void 0);x([IsObject(),IsOptional(),b("design:type",typeof h>"u"?Object:h)],A.prototype,"identity",void 0);x([IsOptional(),IsArray(),b("design:type",Array)],A.prototype,"members",void 0);x([IsOptional(),IsObject(),b("design:type",typeof Location>"u"?Object:Location)],A.prototype,"location",void 0);var h=class{static{r(this,"UpdateOrganizationIdentityDto");}displayName;description;avatarUrl;bannerUrl;socialLinks};x([IsString(),IsNotEmpty(),Length(1,32),IsOptional(),b("design:type",String)],h.prototype,"displayName",void 0);x([IsString(),IsNotEmpty(),Length(16,1024),IsOptional(),b("design:type",String)],h.prototype,"description",void 0);x([IsUrl({protocols:["http","https"]}),IsOptional(),b("design:type",String)],h.prototype,"avatarUrl",void 0);x([IsOptional(),IsUrl({protocols:["http","https"]}),b("design:type",String)],h.prototype,"bannerUrl",void 0);x([IsOptional(),IsArray(),b("design:type",Array)],h.prototype,"socialLinks",void 0);var N=class{static{r(this,"CreateOrganizationEventDto");}title;description;organization;type;public;flyers;trailers;location;tickets;styles;startAt;endAt};var Q=class extends N{static{r(this,"UpdateOrganizationEventDto");}};var U=class{static{r(this,"CreateOrganizationEventTicketDto");}name;description;price;quantity;type;category;currency;isVisible;isFeesIncluded;startAt;endAt};var O=class extends U{static{r(this,"UpdateOrganizationEventTicketDto");}};var T;(function(e){e.Entry="entry",e.Package="package",e.Meal="meal",e.Drink="drink",e.Parking="parking",e.Accommodation="accommodation",e.Camping="camping",e.Locker="locker",e.Shuttle="shuttle",e.Other="other";})(T||(T={}));var ee;(function(e){e.Music="music",e.Dress="dress",e.Sport="sport",e.Food="food",e.Art="art";})(ee||(ee={}));var te;(function(e){e.Clubbing="clubbing",e.Concert="concert",e.Afterwork="afterwork",e.DancingLunch="dancing_lunch",e.Diner="diner",e.Garden="garden",e.AfterBeach="after_beach",e.Festival="festival",e.Spectacle="spectacle",e.Cruise="cruise",e.OutsideAnimation="outside_animation",e.Sport="sport",e.Match="match",e.Seminar="seminar",e.Conference="conference",e.WellnessDay="wellness_day",e.Workshop="workshop",e.TradeFair="trade_fair",e.ConsumerShow="consumer_show",e.Membership="membership";})(te||(te={}));var oe;(function(e){e.Pending="pending",e.Accepted="accepted",e.Rejected="rejected";})(oe||(oe={}));var m;(function(e){e.Member="member",e.Manager="manager",e.Admin="admin",e.Owner="owner";})(m||(m={}));var re;(function(e){e.Facebook="facebook",e.Twitter="twitter",e.Instagram="instagram",e.Linkedin="linkedin",e.Youtube="youtube",e.Website="website";})(re||(re={}));var se;(function(e){e.Authentication="authentication",e.OrganizationInvite="organization_invite",e.PasswordRecovery="password_recovery",e.EmailValidation="email_validation",e.PhoneValidation="phone_validation";})(se||(se={}));var ne;(function(e){e.User="user",e.Developer="developer",e.Admin="admin";})(ne||(ne={}));var ie;(function(e){e.Created="created",e.Cancelled="cancelled",e.Completed="completed",e.Pending="pending",e.Confirmed="confirmed",e.Declined="declined",e.Refunded="refunded",e.PartiallyRefunded="partially_refunded",e.Expired="expired";})(ie||(ie={}));var ae;(function(e){e.EUR="EUR",e.USD="USD",e.GBP="GBP";})(ae||(ae={}));var pe;(function(e){e.FR="fr",e.EN="en";})(pe||(pe={}));function ce(e,t,o,s){var i=arguments.length,n=i<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,o):s,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,s);else for(var p=e.length-1;p>=0;p--)(a=e[p])&&(n=(i<3?a(n):i>3?a(t,o,n):a(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}r(ce,"_ts_decorate");function le(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}r(le,"_ts_metadata");var P=class{static{r(this,"CreateOrganizationMemberDto");}user;role};ce([IsString(),IsNotEmpty(),le("design:type",String)],P.prototype,"user",void 0);ce([IsEnum(m),IsNotEmpty(),le("design:type",typeof m>"u"?Object:m)],P.prototype,"role",void 0);function qe(e,t,o,s){var i=arguments.length,n=i<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,o):s,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,s);else for(var p=e.length-1;p>=0;p--)(a=e[p])&&(n=(i<3?a(n):i>3?a(t,o,n):a(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}r(qe,"_ts_decorate");function ze(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}r(ze,"_ts_metadata");var F=class{static{r(this,"UpdateOrganizationMemberDto");}role};qe([IsEnum(m),IsNotEmpty(),ze("design:type",typeof m>"u"?Object:m)],F.prototype,"role",void 0);var fe=class{static{r(this,"CreateUserDto");}identifier;password;identity;addresses};var me=class{static{r(this,"SignInUserDto");}identifier;password};function c(e,t,o,s){var i=arguments.length,n=i<3?t:s===null?s=Object.getOwnPropertyDescriptor(t,o):s,a;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,s);else for(var p=e.length-1;p>=0;p--)(a=e[p])&&(n=(i<3?a(n):i>3?a(t,o,n):a(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}r(c,"_ts_decorate");function l(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}r(l,"_ts_metadata");var S=class{static{r(this,"UpdateUserDto");}identifier;identity;password};c([IsOptional(),IsObject(),ValidateNested(),Type(()=>j),l("design:type",typeof j>"u"?Object:j)],S.prototype,"identifier",void 0);c([IsOptional(),IsObject(),ValidateNested(),Type(()=>f),l("design:type",typeof f>"u"?Object:f)],S.prototype,"identity",void 0);c([IsOptional(),IsString(),MinLength(8),MaxLength(128),l("design:type",String)],S.prototype,"password",void 0);var j=class{static{r(this,"UpdateIdentifierDto");}email;phoneNumber;username};c([IsOptional(),IsString(),IsEmail(),l("design:type",String)],j.prototype,"email",void 0);c([IsOptional(),IsString(),IsPhoneNumber(),l("design:type",String)],j.prototype,"phoneNumber",void 0);c([IsOptional(),IsString(),MinLength(3),l("design:type",String)],j.prototype,"username",void 0);var f=class{static{r(this,"UpdateIdentityDto");}firstName;lastName;displayName;description;avatarUrl;bannerUrl;gender;birthDate};c([IsOptional(),IsString(),Length(2,32),Matches(k,{message:"First name must be composed of letters only"}),l("design:type",String)],f.prototype,"firstName",void 0);c([IsOptional(),IsString(),Length(2,32),Matches(k,{message:"Last name must be composed of letters only"}),l("design:type",String)],f.prototype,"lastName",void 0);c([IsOptional(),IsString(),Length(1,32),l("design:type",String)],f.prototype,"displayName",void 0);c([IsOptional(),IsString(),Length(1,128),l("design:type",String)],f.prototype,"description",void 0);c([IsOptional(),IsUrl(),l("design:type",Object)],f.prototype,"avatarUrl",void 0);c([IsOptional(),IsUrl(),l("design:type",Object)],f.prototype,"bannerUrl",void 0);c([IsOptional(),l("design:type",String)],f.prototype,"gender",void 0);c([IsOptional(),IsDateString(),l("design:type",typeof Date>"u"?Object:Date)],f.prototype,"birthDate",void 0);var w=typeof window<"u";var Ze=Ve.create({headers:{"Content-Type":"application/json",Accept:"application/json",...!w&&{"User-Agent":"tonightpass-api-client"}},responseType:"json",transformRequest:[function(e){return JSON.stringify(e)}],withCredentials:w}),ve=r(async(e,t)=>Ze(e,{...t}).then(s=>s).catch(s=>{throw s.data}),"request");var $=class extends Error{static{r(this,"TonightPassAPIError");}response;data;status;constructor(t,o){super(o.message),this.response=t,this.data=o,this.status=t.status;}},D=class{static{r(this,"Client");}options;url;constructor(t){this.options=t,this.url=(o,s)=>{let i=this.options.baseURL||X;return pathcat(i,o,s)};}setOptions(t){this.options=t;}async get(t,o,s){return this.requester("GET",t,void 0,o,s)}async post(t,o,s,i){return this.requester("POST",t,o,s,i)}async put(t,o,s,i){return this.requester("PUT",t,o,s,i)}async patch(t,o,s,i){return this.requester("PATCH",t,o,s,i)}async delete(t,o,s,i){return this.requester("DELETE",t,o,s,i)}async requester(t,o,s,i={},n={}){let a=this.url(o,i);if(s!==void 0&&t==="GET")throw new Error("Cannot send a GET request with a body");let p=await ve(a,{method:t,data:s,...n}),G=p.data;if(!G.success)throw new $(p,G);return G.data}};function I(e){return e}r(I,"sdk");var we=e=>({signIn:async t=>e.post("/auth/sign-in",t),signUp:async t=>e.post("/auth/sign-up",t),signOut:async()=>e.post("/auth/sign-out",null),refreshToken:async()=>e.post("/auth/refresh-token",null),oauth2:{google:{connect:t=>{if(w)window.location.href=e.url("/oauth2/google",t||{});else throw new Error("Google OAuth2 is only available in the browser")}},twitter:{connect:t=>{if(w)window.location.href=e.url("/oauth2/twitter",t||{});else throw new Error("Twitter OAuth2 is only available in the browser")}}}});var Re=e=>({categories:{getAll:async t=>e.get("/careers/categories",t)},employmentTypes:{getAll:async t=>e.get("/careers/employmentTypes",t)},jobs:{getAll:async t=>e.get("/careers/jobs",t),get:async t=>e.get("/careers/jobs/:id",{id:t})},offices:{getAll:async t=>e.get("/careers/offices",t)}});var _e=e=>({getAll:async()=>e.get("/health"),database:async()=>e.get("/health/database"),http:async()=>e.get("/health/http")});var Ae=r(e=>({account:async t=>e.get("/organizations/:slug/billing/account",{slug:t}),link:t=>{if(w)window.location.href=e.url("/organizations/:slug/billing/link",{slug:t});else throw new Error("Billing link is only available in the browser")},dashboard:t=>{if(w)window.location.href=e.url("/organizations/:slug/billing/dashboard",{slug:t});else throw new Error("Billing dashboard is only available in the browser")}}),"organizationsBilling");var je=r(e=>({getAll:async()=>e.get("/organizations/events/styles"),get:async t=>e.get("/organizations/events/styles/:slug",{slug:t}),create:async t=>e.post("/organizations/events/styles",t),update:async(t,o)=>e.put("/organizations/events/styles/:slug",o,{slug:t}),delete:async t=>e.delete("/organizations/events/styles/:slug",null,{slug:t})}),"organizationsEventsStyles");var Ie=r(e=>({getAll:async(t,o)=>e.get("/organizations/:slug/events/:eventSlug/tickets",{slug:t,eventSlug:o}),get:async(t,o,s)=>e.get("/organizations/:slug/events/:eventSlug/tickets/:ticketId",{slug:t,eventSlug:o,ticketId:s}),create:async(t,o,s)=>e.post("/organizations/:slug/events/:eventSlug/tickets",s,{slug:t,eventSlug:o}),update:async(t,o,s,i)=>e.put("/organizations/:slug/events/:eventSlug/tickets/:ticketId",i,{slug:t,eventSlug:o,ticketId:s}),delete:async(t,o,s)=>e.delete("/organizations/:slug/events/:eventSlug/tickets/:ticketId",null,{slug:t,eventSlug:o,ticketId:s})}),"organizationsEventsTickets");var Se=r(e=>({getAll:async t=>e.get("/organizations/:slug/events",{slug:t}),get:async(t,o)=>e.get("/organizations/:organizationSlug/events/:eventSlug",{organizationSlug:t,eventSlug:o}),create:async(t,o)=>e.post("/organizations/:slug/events",o,{slug:t}),update:async(t,o,s)=>e.put("/organizations/:organizationSlug/events/:eventSlug",s,{organizationSlug:t,eventSlug:o}),delete:async(t,o)=>e.delete("/organizations/:organizationSlug/events/:eventSlug",null,{organizationSlug:t,eventSlug:o}),styles:je(e),tickets:Ie(e)}),"organizationsEvents");var Le=r(e=>({getAll:async()=>e.get("/organizations/members"),delete:async t=>e.delete("/organizations/members/:id",null,{id:t})}),"organizationsMembers");var Ne=e=>({getAll:async()=>e.get("/organizations"),get:async t=>e.get("/organizations/:slug",{slug:t}),create:async t=>e.post("/organizations",t),update:async(t,o)=>e.put("/organizations/:slug",o,{slug:t}),delete:async t=>e.delete("/organizations/:slug",null,{slug:t}),billing:Ae(e),events:Se(e),members:Le(e)});var Ue=e=>({get:async t=>e.get("/profiles/:username",{username:t})});var Pe=e=>({getAll:async()=>e.get("/users"),get:async t=>e.get("/users",{id:t}),me:async()=>e.get("/users/me"),check:async(t,o)=>e.get("/users/check/:identifier",{identifier:t,suggestions:o}),update:async(t,o)=>e.put("/users/:id",o,{id:t})});var Ee=class{static{r(this,"TonightPass");}client;auth;careers;health;organizations;profiles;users;constructor(t){this.client=new D(t),this.auth=we(this.client),this.careers=Re(this.client),this.health=_e(this.client),this.organizations=Ne(this.client),this.profiles=Ue(this.client),this.users=Pe(this.client);}};
7
+ var Fe=Object.defineProperty;var s=(e,t)=>Fe(e,"name",{value:t,configurable:!0});var Z="https://api.tonightpass.com";var it=/^[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$/,pt=/((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$/,k=/(^[\p{L}\d'\\.\s\\-]*$)/u,at=/^[a-z\d]+(?:(\.|-|_)[a-z\d]+)*$/,ct=/\$2[abxy]?\$\d{1,2}\$[A-Za-z\d\\./]{53}/,lt=/^\s*(?:\+?(\d{1,3}))?([-. (]*(\d{3})[-. )]*)?((\d{3})[-. ]*(\d{2,4})(?:[-.x ]*(\d+))?)\s*$/,dt=/(((http:\/\/www)|(http:\/\/)|(www))[-a-zA-Z0-9@:%_\\+.~#?&//=]+)\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;function y(e,t,o,r){var i=arguments.length,n=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,o):r,p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,r);else for(var a=e.length-1;a>=0;a--)(p=e[a])&&(n=(i<3?p(n):i>3?p(t,o,n):p(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}s(y,"_ts_decorate");function h(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}s(h,"_ts_metadata");var I=class{static{s(this,"CreateOrganizationDto");}slug;identity;members;location};y([IsOptional(),IsString(),IsLowercase(),Length(1,48),h("design:type",String)],I.prototype,"slug",void 0);y([IsObject(),h("design:type",typeof g>"u"?Object:g)],I.prototype,"identity",void 0);y([IsArray(),h("design:type",Array)],I.prototype,"members",void 0);y([IsOptional(),IsObject(),h("design:type",typeof Location>"u"?Object:Location)],I.prototype,"location",void 0);var g=class{static{s(this,"CreateOrganizationIdentityDto");}displayName;description;avatarUrl;bannerUrl;socialLinks};y([IsString(),IsNotEmpty(),Length(1,32),h("design:type",String)],g.prototype,"displayName",void 0);y([IsString(),IsNotEmpty(),Length(16,1024),h("design:type",String)],g.prototype,"description",void 0);y([IsUrl({protocols:["http","https"]}),h("design:type",String)],g.prototype,"avatarUrl",void 0);y([IsOptional(),IsUrl({protocols:["http","https"]}),h("design:type",String)],g.prototype,"bannerUrl",void 0);y([IsOptional(),IsArray(),h("design:type",Array)],g.prototype,"socialLinks",void 0);function b(e,t,o,r){var i=arguments.length,n=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,o):r,p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,r);else for(var a=e.length-1;a>=0;a--)(p=e[a])&&(n=(i<3?p(n):i>3?p(t,o,n):p(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}s(b,"_ts_decorate");function v(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}s(v,"_ts_metadata");var S=class{static{s(this,"UpdateOrganizationDto");}slug;identity;members;location};b([IsOptional(),IsString(),IsLowercase(),Length(1,48),v("design:type",String)],S.prototype,"slug",void 0);b([IsObject(),IsOptional(),v("design:type",typeof x>"u"?Object:x)],S.prototype,"identity",void 0);b([IsOptional(),IsArray(),v("design:type",Array)],S.prototype,"members",void 0);b([IsOptional(),IsObject(),v("design:type",typeof Location>"u"?Object:Location)],S.prototype,"location",void 0);var x=class{static{s(this,"UpdateOrganizationIdentityDto");}displayName;description;avatarUrl;bannerUrl;socialLinks};b([IsString(),IsNotEmpty(),Length(1,32),IsOptional(),v("design:type",String)],x.prototype,"displayName",void 0);b([IsString(),IsNotEmpty(),Length(16,1024),IsOptional(),v("design:type",String)],x.prototype,"description",void 0);b([IsUrl({protocols:["http","https"]}),IsOptional(),v("design:type",String)],x.prototype,"avatarUrl",void 0);b([IsOptional(),IsUrl({protocols:["http","https"]}),v("design:type",String)],x.prototype,"bannerUrl",void 0);b([IsOptional(),IsArray(),v("design:type",Array)],x.prototype,"socialLinks",void 0);var re;(function(e){e.Entry="entry",e.Package="package",e.Meal="meal",e.Drink="drink",e.Parking="parking",e.Accommodation="accommodation",e.Camping="camping",e.Locker="locker",e.Shuttle="shuttle",e.Other="other";})(re||(re={}));var se;(function(e){e.Music="music",e.Dress="dress",e.Sport="sport",e.Food="food",e.Art="art";})(se||(se={}));var L;(function(e){e.Clubbing="clubbing",e.Concert="concert",e.Afterwork="afterwork",e.DancingLunch="dancing_lunch",e.Diner="diner",e.Garden="garden",e.AfterBeach="after_beach",e.Festival="festival",e.Spectacle="spectacle",e.Cruise="cruise",e.OutsideAnimation="outside_animation",e.Sport="sport",e.Match="match",e.Seminar="seminar",e.Conference="conference",e.WellnessDay="wellness_day",e.Workshop="workshop",e.TradeFair="trade_fair",e.ConsumerShow="consumer_show",e.Membership="membership";})(L||(L={}));var P;(function(e){e.Public="public",e.Unlisted="unlisted",e.Private="private";})(P||(P={}));var ne;(function(e){e.Pending="pending",e.Accepted="accepted",e.Rejected="rejected";})(ne||(ne={}));var u;(function(e){e.Member="member",e.Manager="manager",e.Admin="admin",e.Owner="owner";})(u||(u={}));var ie;(function(e){e.Facebook="facebook",e.Twitter="twitter",e.Instagram="instagram",e.Linkedin="linkedin",e.Youtube="youtube",e.Website="website";})(ie||(ie={}));var pe;(function(e){e.Authentication="authentication",e.OrganizationInvite="organization_invite",e.PasswordRecovery="password_recovery",e.EmailValidation="email_validation",e.PhoneValidation="phone_validation";})(pe||(pe={}));var ae;(function(e){e.User="user",e.Developer="developer",e.Admin="admin";})(ae||(ae={}));var ce;(function(e){e.Created="created",e.Cancelled="cancelled",e.Completed="completed",e.Pending="pending",e.Confirmed="confirmed",e.Declined="declined",e.Refunded="refunded",e.PartiallyRefunded="partially_refunded",e.Expired="expired";})(ce||(ce={}));var le;(function(e){e.EUR="EUR",e.USD="USD",e.GBP="GBP";})(le||(le={}));var de;(function(e){e.FR="fr",e.EN="en";})(de||(de={}));function _(e,t,o,r){var i=arguments.length,n=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,o):r,p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,r);else for(var a=e.length-1;a>=0;a--)(p=e[a])&&(n=(i<3?p(n):i>3?p(t,o,n):p(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}s(_,"_ts_decorate");function A(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}s(A,"_ts_metadata");var f=class{static{s(this,"CreateOrganizationEventDto");}title;slug;description;type;visibility;flyers;trailers;location;tickets;styles;startAt;endAt};_([IsString(),Length(1,64),A("design:type",String)],f.prototype,"title",void 0);_([IsOptional(),IsString(),IsLowercase(),Length(1,48),A("design:type",String)],f.prototype,"slug",void 0);_([IsString(),Length(16,2048),A("design:type",String)],f.prototype,"description",void 0);_([IsEnum(L),A("design:type",typeof L>"u"?Object:L)],f.prototype,"type",void 0);_([IsEnum(P),A("design:type",typeof P>"u"?Object:P)],f.prototype,"visibility",void 0);_([IsDate(),A("design:type",typeof Date>"u"?Object:Date)],f.prototype,"startAt",void 0);_([IsDate(),A("design:type",typeof Date>"u"?Object:Date)],f.prototype,"endAt",void 0);var ue=class extends f{static{s(this,"UpdateOrganizationEventDto");}};var G=class{static{s(this,"CreateOrganizationEventTicketDto");}name;description;price;quantity;type;category;currency;isVisible;isFeesIncluded;startAt;endAt};var ge=class extends G{static{s(this,"UpdateOrganizationEventTicketDto");}};function ye(e,t,o,r){var i=arguments.length,n=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,o):r,p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,r);else for(var a=e.length-1;a>=0;a--)(p=e[a])&&(n=(i<3?p(n):i>3?p(t,o,n):p(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}s(ye,"_ts_decorate");function he(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}s(he,"_ts_metadata");var B=class{static{s(this,"CreateOrganizationMemberDto");}user;role};ye([IsString(),IsNotEmpty(),he("design:type",String)],B.prototype,"user",void 0);ye([IsEnum(u),IsNotEmpty(),he("design:type",typeof u>"u"?Object:u)],B.prototype,"role",void 0);function Ve(e,t,o,r){var i=arguments.length,n=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,o):r,p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,r);else for(var a=e.length-1;a>=0;a--)(p=e[a])&&(n=(i<3?p(n):i>3?p(t,o,n):p(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}s(Ve,"_ts_decorate");function Ze(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}s(Ze,"_ts_metadata");var O=class{static{s(this,"UpdateOrganizationMemberDto");}role};Ve([IsEnum(u),IsNotEmpty(),Ze("design:type",typeof u>"u"?Object:u)],O.prototype,"role",void 0);var be=class{static{s(this,"CreateUserDto");}identifier;password;identity;addresses};var ve=class{static{s(this,"SignInUserDto");}identifier;password};function c(e,t,o,r){var i=arguments.length,n=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,o):r,p;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(e,t,o,r);else for(var a=e.length-1;a>=0;a--)(p=e[a])&&(n=(i<3?p(n):i>3?p(t,o,n):p(t,o))||n);return i>3&&n&&Object.defineProperty(t,o,n),n}s(c,"_ts_decorate");function l(e,t){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(e,t)}s(l,"_ts_metadata");var D=class{static{s(this,"UpdateUserDto");}identifier;identity;password};c([IsOptional(),IsObject(),ValidateNested(),Type(()=>U),l("design:type",typeof U>"u"?Object:U)],D.prototype,"identifier",void 0);c([IsOptional(),IsObject(),ValidateNested(),Type(()=>m),l("design:type",typeof m>"u"?Object:m)],D.prototype,"identity",void 0);c([IsOptional(),IsString(),MinLength(8),MaxLength(128),l("design:type",String)],D.prototype,"password",void 0);var U=class{static{s(this,"UpdateIdentifierDto");}email;phoneNumber;username};c([IsOptional(),IsString(),IsEmail(),l("design:type",String)],U.prototype,"email",void 0);c([IsOptional(),IsString(),IsPhoneNumber(),l("design:type",String)],U.prototype,"phoneNumber",void 0);c([IsOptional(),IsString(),MinLength(3),l("design:type",String)],U.prototype,"username",void 0);var m=class{static{s(this,"UpdateIdentityDto");}firstName;lastName;displayName;description;avatarUrl;bannerUrl;gender;birthDate};c([IsOptional(),IsString(),Length(2,32),Matches(k,{message:"First name must be composed of letters only"}),l("design:type",String)],m.prototype,"firstName",void 0);c([IsOptional(),IsString(),Length(2,32),Matches(k,{message:"Last name must be composed of letters only"}),l("design:type",String)],m.prototype,"lastName",void 0);c([IsOptional(),IsString(),Length(1,32),l("design:type",String)],m.prototype,"displayName",void 0);c([IsOptional(),IsString(),Length(1,128),l("design:type",String)],m.prototype,"description",void 0);c([IsOptional(),IsUrl(),l("design:type",Object)],m.prototype,"avatarUrl",void 0);c([IsOptional(),IsUrl(),l("design:type",Object)],m.prototype,"bannerUrl",void 0);c([IsOptional(),l("design:type",String)],m.prototype,"gender",void 0);c([IsOptional(),IsDateString(),l("design:type",typeof Date>"u"?Object:Date)],m.prototype,"birthDate",void 0);var R=typeof window<"u";var ot=tt.create({headers:{"Content-Type":"application/json",Accept:"application/json",...!R&&{"User-Agent":"tonightpass-api-client"}},responseType:"json",transformRequest:[function(e){return JSON.stringify(e)}],withCredentials:R}),Se=s(async(e,t)=>ot(e,{...t}).then(r=>r).catch(r=>{throw r.data}),"request");var V=class extends Error{static{s(this,"TonightPassAPIError");}response;data;status;constructor(t,o){super(o.message),this.response=t,this.data=o,this.status=t.status;}},q=class{static{s(this,"Client");}options;url;constructor(t){this.options=t,this.url=(o,r)=>{let i=this.options.baseURL||Z;return pathcat(i,o,r)};}setOptions(t){this.options=t;}async get(t,o,r){return this.requester("GET",t,void 0,o,r)}async post(t,o,r,i){return this.requester("POST",t,o,r,i)}async put(t,o,r,i){return this.requester("PUT",t,o,r,i)}async patch(t,o,r,i){return this.requester("PATCH",t,o,r,i)}async delete(t,o,r,i){return this.requester("DELETE",t,o,r,i)}async requester(t,o,r,i={},n={}){let p=this.url(o,i);if(r!==void 0&&t==="GET")throw new Error("Cannot send a GET request with a body");let a=await Se(p,{method:t,data:r,...n}),z=a.data;if(!z.success)throw new V(a,z);return z.data}};function N(e){return e}s(N,"sdk");var Le=e=>({signIn:async t=>e.post("/auth/sign-in",t),signUp:async t=>e.post("/auth/sign-up",t),signOut:async()=>e.post("/auth/sign-out",null),refreshToken:async()=>e.post("/auth/refresh-token",null),oauth2:{google:{connect:t=>{if(R)window.location.href=e.url("/oauth2/google",t||{});else throw new Error("Google OAuth2 is only available in the browser")}},twitter:{connect:t=>{if(R)window.location.href=e.url("/oauth2/twitter",t||{});else throw new Error("Twitter OAuth2 is only available in the browser")}}}});var Pe=e=>({categories:{getAll:async t=>e.get("/careers/categories",t)},employmentTypes:{getAll:async t=>e.get("/careers/employmentTypes",t)},jobs:{getAll:async t=>e.get("/careers/jobs",t),get:async t=>e.get("/careers/jobs/:id",{id:t})},offices:{getAll:async t=>e.get("/careers/offices",t)}});var Ue=e=>({getAll:async()=>e.get("/health"),database:async()=>e.get("/health/database"),http:async()=>e.get("/health/http")});var Ne=s(e=>({account:async t=>e.get("/organizations/:slug/billing/account",{slug:t}),link:t=>{if(R)window.location.href=e.url("/organizations/:slug/billing/link",{slug:t});else throw new Error("Billing link is only available in the browser")},dashboard:t=>{if(R)window.location.href=e.url("/organizations/:slug/billing/dashboard",{slug:t});else throw new Error("Billing dashboard is only available in the browser")}}),"organizationsBilling");var De=s(e=>({getAll:async()=>e.get("/organizations/events/styles"),get:async t=>e.get("/organizations/events/styles/:slug",{slug:t}),create:async t=>e.post("/organizations/events/styles",t),update:async(t,o)=>e.put("/organizations/events/styles/:slug",o,{slug:t}),delete:async t=>e.delete("/organizations/events/styles/:slug",null,{slug:t})}),"organizationsEventsStyles");var Ee=s(e=>({getAll:async(t,o)=>e.get("/organizations/:slug/events/:eventSlug/tickets",{slug:t,eventSlug:o}),get:async(t,o,r)=>e.get("/organizations/:slug/events/:eventSlug/tickets/:ticketId",{slug:t,eventSlug:o,ticketId:r}),create:async(t,o,r)=>e.post("/organizations/:slug/events/:eventSlug/tickets",r,{slug:t,eventSlug:o}),update:async(t,o,r,i)=>e.put("/organizations/:slug/events/:eventSlug/tickets/:ticketId",i,{slug:t,eventSlug:o,ticketId:r}),delete:async(t,o,r)=>e.delete("/organizations/:slug/events/:eventSlug/tickets/:ticketId",null,{slug:t,eventSlug:o,ticketId:r})}),"organizationsEventsTickets");var Ge=s(e=>({getAll:async t=>e.get("/organizations/:slug/events",{slug:t}),get:async(t,o)=>e.get("/organizations/:organizationSlug/events/:eventSlug",{organizationSlug:t,eventSlug:o}),create:async(t,o)=>e.post("/organizations/:slug/events",o,{slug:t}),update:async(t,o,r)=>e.put("/organizations/:organizationSlug/events/:eventSlug",r,{organizationSlug:t,eventSlug:o}),delete:async(t,o)=>e.delete("/organizations/:organizationSlug/events/:eventSlug",null,{organizationSlug:t,eventSlug:o}),styles:De(e),tickets:Ee(e)}),"organizationsEvents");var Be=s(e=>({getAll:async()=>e.get("/organizations/members"),delete:async t=>e.delete("/organizations/members/:id",null,{id:t})}),"organizationsMembers");var Me=e=>({getAll:async()=>e.get("/organizations"),get:async t=>e.get("/organizations/:slug",{slug:t}),create:async t=>e.post("/organizations",t),update:async(t,o)=>e.put("/organizations/:slug",o,{slug:t}),delete:async t=>e.delete("/organizations/:slug",null,{slug:t}),billing:Ne(e),events:Ge(e),members:Be(e)});var qe=e=>({get:async t=>e.get("/profiles/:username",{username:t})});var ze=e=>({getAll:async()=>e.get("/users"),get:async t=>e.get("/users",{id:t}),me:async()=>e.get("/users/me"),check:async(t,o)=>e.get("/users/check/:identifier",{identifier:t,suggestions:o}),update:async(t,o)=>e.put("/users/:id",o,{id:t})});var ke=class{static{s(this,"TonightPass");}client;auth;careers;health;organizations;profiles;users;constructor(t){this.client=new q(t),this.auth=Le(this.client),this.careers=Pe(this.client),this.health=Ue(this.client),this.organizations=Me(this.client),this.profiles=qe(this.client),this.users=ze(this.client);}};
8
8
 
9
- export { et as BCRYPT_HASH, D as Client, _ as CreateOrganizationDto, N as CreateOrganizationEventDto, U as CreateOrganizationEventTicketDto, u as CreateOrganizationIdentityDto, P as CreateOrganizationMemberDto, fe as CreateUserDto, ae as Currency, X as DEFAULT_API_URL, Qe as EMAIL_REGEX, ot as IMAGE_URL_REGEX, pe as Language, k as NAME_REGEX, ie as OrderStatus, ee as OrganizationEventStyleType, T as OrganizationEventTicketCategory, te as OrganizationEventType, m as OrganizationMemberRole, oe as OrganizationMemberStatus, re as OrganizationSocialType, Oe as PASSWORD_REGEX, tt as PHONE_NUMBER_REGEX, Te as SLUG_REGEX, me as SignInUserDto, Ee as TonightPass, $ as TonightPassAPIError, A as UpdateOrganizationDto, Q as UpdateOrganizationEventDto, O as UpdateOrganizationEventTicketDto, h as UpdateOrganizationIdentityDto, F as UpdateOrganizationMemberDto, S as UpdateUserDto, ne as UserRole, se as UserTokenType, we as auth, Re as careers, _e as health, w as isBrowser, Ne as organizations, Ue as profiles, ve as request, I as sdk, Pe as users };
9
+ export { ct as BCRYPT_HASH, q as Client, I as CreateOrganizationDto, f as CreateOrganizationEventDto, G as CreateOrganizationEventTicketDto, g as CreateOrganizationIdentityDto, B as CreateOrganizationMemberDto, be as CreateUserDto, le as Currency, Z as DEFAULT_API_URL, it as EMAIL_REGEX, dt as IMAGE_URL_REGEX, de as Language, k as NAME_REGEX, ce as OrderStatus, se as OrganizationEventStyleType, re as OrganizationEventTicketCategory, L as OrganizationEventType, P as OrganizationEventVisibilityType, u as OrganizationMemberRole, ne as OrganizationMemberStatus, ie as OrganizationSocialType, pt as PASSWORD_REGEX, lt as PHONE_NUMBER_REGEX, at as SLUG_REGEX, ve as SignInUserDto, ke as TonightPass, V as TonightPassAPIError, S as UpdateOrganizationDto, ue as UpdateOrganizationEventDto, ge as UpdateOrganizationEventTicketDto, x as UpdateOrganizationIdentityDto, O as UpdateOrganizationMemberDto, D as UpdateUserDto, ae as UserRole, pe as UserTokenType, Le as auth, Pe as careers, Ue as health, R as isBrowser, Me as organizations, qe as profiles, Se as request, N as sdk, ze as users };
10
10
  //# sourceMappingURL=out.js.map
11
11
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/constants/api.ts","../src/constants/regex.ts","../src/rest/dtos/index.ts","../src/rest/dtos/organizations/create-organization.dto.ts","../src/rest/dtos/organizations/update-organization.dto.ts","../src/rest/dtos/organizations/events/create-organization-event.dto.ts","../src/rest/dtos/organizations/events/update-organization-event.dto.ts","../src/rest/dtos/organizations/events/tickets/create-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/events/tickets/update-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/members/create-organization-member.dto.ts","../src/rest/types/organizations/events/tickets/index.ts","../src/rest/types/organizations/events/styles/index.ts","../src/rest/types/organizations/events/index.ts","../src/rest/types/organizations/members/index.ts","../src/rest/types/organizations/index.ts","../src/rest/types/token/index.ts","../src/rest/types/users/index.ts","../src/rest/types/order/index.ts","../src/rest/types/index.ts","../src/rest/dtos/organizations/members/update-organization-member.dto.ts","../src/rest/dtos/users/create-user.dto.ts","../src/rest/dtos/users/sign-in-user.dto.ts","../src/rest/dtos/users/update-user.dto.ts","../src/rest/request/request.ts","../src/utils/index.ts","../src/rest/client.ts","../src/sdk/builder.ts","../src/sdk/auth.ts","../src/sdk/careers.ts","../src/sdk/health.ts","../src/sdk/organizations/billing/index.ts","../src/sdk/organizations/events/styles/index.ts","../src/sdk/organizations/events/tickets/index.ts","../src/sdk/organizations/events/index.ts","../src/sdk/organizations/members/index.ts","../src/sdk/organizations/index.ts","../src/sdk/profiles.ts","../src/sdk/users.ts","../src/tonightpass.ts"],"names":["DEFAULT_API_URL","EMAIL_REGEX","PASSWORD_REGEX","NAME_REGEX","SLUG_REGEX","BCRYPT_HASH","PHONE_NUMBER_REGEX","IMAGE_URL_REGEX","IsArray","IsLowercase","IsNotEmpty","IsObject","IsOptional","IsString","IsUrl","Length","CreateOrganizationDto","slug","identity","members","location","CreateOrganizationIdentityDto","displayName","description","avatarUrl","bannerUrl","socialLinks","protocols","UpdateOrganizationDto","UpdateOrganizationIdentityDto","CreateOrganizationEventDto","title","organization","type","public","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","IsEnum","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationMemberDto","user","role","UpdateOrganizationMemberDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","IsDateString","IsEmail","IsPhoneNumber","Matches","MaxLength","MinLength","ValidateNested","UpdateUserDto","UpdateIdentifierDto","UpdateIdentityDto","email","phoneNumber","username","firstName","lastName","gender","birthDate","message","axios","isBrowser","window","instance","create","headers","Accept","responseType","transformRequest","data","JSON","stringify","withCredentials","request","__name","url","options","then","response","catch","error","pathcat","TonightPassAPIError","Error","status","constructor","Client","path","params","baseURL","setOptions","get","query","requester","undefined","post","body","put","patch","delete","method","result","success","sdk","builder","auth","client","signIn","signUp","signOut","refreshToken","oauth2","google","connect","href","twitter","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","organizationSlug","organizationsMembers","organizations","billing","events","profiles","users","me","check","suggestions","TonightPass"],"mappings":"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","sourcesContent":["export const DEFAULT_API_URL = \"https://api.tonightpass.com\";\n","export const EMAIL_REGEX = /^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$/;\n\n// checks if a password has at least one uppercase letter and a number or special character\nexport const PASSWORD_REGEX =\n /((?=.*\\d)|(?=.*\\W+))(?![.\\n])(?=.*[A-Z])(?=.*[a-z]).*$/;\n\n// checks if a string has only letters, numbers, spaces, apostrophes, dots and dashes\nexport const NAME_REGEX = /(^[\\p{L}\\d'\\\\.\\s\\\\-]*$)/u;\n\n// checks if a string is a valid slug, useful for usernames\nexport const SLUG_REGEX = /^[a-z\\d]+(?:(\\.|-|_)[a-z\\d]+)*$/;\n\n// validates if passwords are valid bcrypt hashes\nexport const BCRYPT_HASH = /\\$2[abxy]?\\$\\d{1,2}\\$[A-Za-z\\d\\\\./]{53}/;\n\nexport const PHONE_NUMBER_REGEX =\n /^\\s*(?:\\+?(\\d{1,3}))?([-. (]*(\\d{3})[-. )]*)?((\\d{3})[-. ]*(\\d{2,4})(?:[-.x ]*(\\d+))?)\\s*$/;\n\nexport const IMAGE_URL_REGEX =\n /(((http:\\/\\/www)|(http:\\/\\/)|(www))[-a-zA-Z0-9@:%_\\\\+.~#?&//=]+)\\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;\n","import \"reflect-metadata\";\n\nexport * from \"./organizations\";\nexport * from \"./users\";\n","import {\n IsArray,\n IsLowercase,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport { CreateOrganizationMemberDto } from \"./members/create-organization-member.dto\";\nimport { type Location, type OrganizationSocialLink } from \"../../types\";\n\nexport class CreateOrganizationDto {\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsObject()\n identity: CreateOrganizationIdentityDto;\n\n @IsArray()\n members: CreateOrganizationMemberDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class CreateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n displayName: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n description: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n","import {\n IsArray,\n IsLowercase,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport { UpdateOrganizationEventDto } from \"./events\";\nimport { OrganizationSocialLink } from \"../../types\";\n\nexport class UpdateOrganizationDto {\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsObject()\n @IsOptional()\n identity?: UpdateOrganizationIdentityDto;\n\n @IsOptional()\n @IsArray()\n members?: UpdateOrganizationEventDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class UpdateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n @IsOptional()\n displayName?: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n @IsOptional()\n description?: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n @IsOptional()\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n","import { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport { Location, OrganizationEventType } from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n title: string;\n description: string;\n organization: string;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n name: string;\n description?: string;\n price: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventTicketDto } from \"./create-organization-event-ticket.dto\";\n\nexport class UpdateOrganizationEventTicketDto extends CreateOrganizationEventTicketDto {}\n","import { IsEnum, IsNotEmpty, IsString } from \"class-validator\";\n\nimport { OrganizationMemberRole } from \"../../../types\";\n\nexport class CreateOrganizationMemberDto {\n @IsString()\n @IsNotEmpty()\n user: string;\n\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { Base, Currency } from \"../../..\";\nimport {\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../dtos\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventTicket = Base & {\n name: string;\n description?: string;\n price: number;\n displayPrice: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n vatRate: number;\n externalId?: string;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n};\n\nexport type OrganizationEventTicketType = \"e-ticket\" | \"other\";\n\nexport enum OrganizationEventTicketCategory {\n Entry = \"entry\",\n Package = \"package\",\n Meal = \"meal\",\n Drink = \"drink\",\n Parking = \"parking\",\n Accommodation = \"accommodation\",\n Camping = \"camping\",\n Locker = \"locker\",\n Shuttle = \"shuttle\",\n Other = \"other\",\n}\n\nexport type OrganizationEventTicketEndpoints =\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket[]\n >\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket\n >\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events/:eventSlug/tickets\",\n OrganizationEventTicket,\n CreateOrganizationEventTicketDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket,\n UpdateOrganizationEventTicketDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n OrganizationEventTicket[],\n null\n >;\n","import { Base } from \"../../..\";\nimport {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../dtos/organizations/events/events\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventStyle = Base & {\n type: OrganizationEventStyleType;\n emoji: string;\n name: string;\n slug: string;\n};\n\nexport enum OrganizationEventStyleType {\n Music = \"music\",\n Dress = \"dress\",\n Sport = \"sport\",\n Food = \"food\",\n Art = \"art\",\n}\n\nexport type OrganizationEventStyleEndpoints =\n | Endpoint<\"GET\", \"/organizations/events/styles\", OrganizationEventStyle[]>\n | Endpoint<\n \"GET\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle\n >\n | Endpoint<\n \"POST\",\n \"/organizations/events/styles\",\n OrganizationEventStyle,\n CreateOrganizationEventStyleDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle,\n UpdateOrganizationEventStyleDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/events/styles/:slug\",\n OrganizationEventStyle[],\n null\n >;\n","import {\n OrganizationEventStyle,\n OrganizationEventStyleEndpoints,\n} from \"./styles\";\nimport {\n OrganizationEventTicket,\n Organization,\n OrganizationEventTicketEndpoints,\n} from \"..\";\nimport { Base, Location } from \"../..\";\nimport {\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../dtos\";\nimport { Endpoint } from \"../../../endpoints\";\n\nexport * from \"./tickets\";\nexport * from \"./styles\";\n\nexport type OrganizationEvent = Base & {\n title: string;\n description: string;\n slug: string;\n organization: Organization;\n type: OrganizationEventType;\n public: boolean;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: OrganizationEventTicket[];\n styles: OrganizationEventStyle[];\n startAt: Date;\n endAt: Date;\n};\n\nexport enum OrganizationEventType {\n Clubbing = \"clubbing\",\n Concert = \"concert\",\n Afterwork = \"afterwork\",\n DancingLunch = \"dancing_lunch\",\n Diner = \"diner\",\n Garden = \"garden\",\n AfterBeach = \"after_beach\",\n Festival = \"festival\",\n Spectacle = \"spectacle\",\n Cruise = \"cruise\",\n OutsideAnimation = \"outside_animation\",\n Sport = \"sport\",\n Match = \"match\",\n Seminar = \"seminar\",\n Conference = \"conference\",\n WellnessDay = \"wellness_day\",\n Workshop = \"workshop\",\n TradeFair = \"trade_fair\",\n ConsumerShow = \"consumer_show\",\n Membership = \"membership\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\"GET\", \"/organizations/:slug/events\", Event[]>\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events/:eventSlug\", Event>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events\",\n Event,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { Base } from \"../..\";\nimport { CreateOrganizationMemberDto } from \"../../../dtos\";\nimport { UpdateOrganizationMemberDto } from \"../../../dtos/organizations/members/update-organization-member.dto\";\nimport { Endpoint } from \"../../../endpoints\";\nimport { UserToken } from \"../../token\";\nimport { User } from \"../../users\";\n\nexport type OrganizationMember = Base & {\n organization: Organization;\n role: OrganizationMemberRole;\n status: OrganizationMemberStatus;\n user?: User;\n token?: UserToken;\n};\n\nexport enum OrganizationMemberStatus {\n Pending = \"pending\",\n Accepted = \"accepted\",\n Rejected = \"rejected\",\n}\n\nexport enum OrganizationMemberRole {\n Member = \"member\",\n Manager = \"manager\",\n Admin = \"admin\",\n Owner = \"owner\",\n}\n\nexport type OrganizationMembersEndpoints =\n | Endpoint<\"GET\", \"/organizations/members\", OrganizationMember[]>\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\"GET\", \"/organizations/:slug/members\", OrganizationMember[]>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/members\",\n OrganizationMember,\n CreateOrganizationMemberDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember,\n UpdateOrganizationMemberDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember[],\n null\n >;\n","import type Stripe from \"stripe\";\n\nimport { OrganizationEvent, OrganizationEventEndpoints } from \"./events\";\nimport { OrganizationEventTicket } from \"./events/tickets\";\nimport { OrganizationMember, OrganizationMembersEndpoints } from \"./members\";\nimport { Base, Location, Profile, ProfileMetadata } from \"..\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport * from \"./events\";\nexport * from \"./members\";\n\nexport type Organization = Base & {\n slug: string;\n identity: OrganizationIdentity;\n members: OrganizationMember[];\n location?: Location;\n events: OrganizationEvent[];\n savedTickets: OrganizationEventTicket[];\n verified: boolean;\n billing: OrganizationBilling;\n};\n\nexport type OrganizationBilling = {\n account: string;\n};\n\nexport type OrganizationBillingAccount = Stripe.Account;\n\nexport type OrganizationIdentity = Profile & {\n socialLinks: OrganizationSocialLink[];\n\n metadata: ProfileMetadata & {\n eventsCount: number;\n viewsCount: number;\n membersCount: number;\n };\n};\n\nexport type OrganizationSocialLink = {\n type: OrganizationSocialType;\n url: string;\n};\n\nexport enum OrganizationSocialType {\n Facebook = \"facebook\",\n Twitter = \"twitter\",\n Instagram = \"instagram\",\n Linkedin = \"linkedin\",\n Youtube = \"youtube\",\n Website = \"website\",\n}\n\nexport type OrganizationEndpoints =\n | Endpoint<\"GET\", \"/organizations\", Organization[]>\n | Endpoint<\"GET\", \"/organizations/:slug\", Organization>\n | Endpoint<\"POST\", \"/organizations\", Organization, CreateOrganizationDto>\n | Endpoint<\"PUT\", \"/organizations/:slug\", Organization, UpdateOrganizationDto>\n | Endpoint<\"DELETE\", \"/organizations/:slug\", Organization, null>\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/billing/account\",\n OrganizationBillingAccount\n >\n | Endpoint<\"GET\", \"/organizations/:slug/billing/link\", void>\n | Endpoint<\"GET\", \"/organizations/:slug/billing/dashboard\", void>\n | OrganizationEventEndpoints\n | OrganizationMembersEndpoints;\n","import { User } from \"../users\";\n\nexport type UserToken = {\n type: UserTokenType;\n value: string;\n createdAt: Date;\n expiresAt: Date;\n user?: User;\n identifier?: string;\n};\n\nexport enum UserTokenType {\n Authentication = \"authentication\",\n OrganizationInvite = \"organization_invite\",\n PasswordRecovery = \"password_recovery\",\n EmailValidation = \"email_validation\",\n PhoneValidation = \"phone_validation\",\n}\n","import {\n Base,\n Currency,\n Language,\n Location,\n Profile,\n ProfileMetadata,\n} from \"..\";\nimport { UpdateUserDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport type User = Base & {\n identifier: UserIdentifier;\n password: string;\n identity: UserIdentity;\n role: UserRole;\n addresses: Location[];\n preferences: UserPreferences;\n connections: UserConnection[];\n verified: boolean;\n};\n\nexport type UserIdentifier = {\n email?: string;\n phoneNumber?: string;\n username: string;\n\n [key: string]: string | undefined;\n};\n\nexport type UserIdentity = Profile & {\n firstName: string;\n lastName: string;\n fullName: string;\n gender: UserIdentityGender;\n birthDate: Date;\n\n metadata: ProfileMetadata & {\n followingCount: number;\n hasPassPlus: boolean;\n idValid: boolean;\n };\n};\n\nexport enum UserRole {\n User = \"user\",\n Developer = \"developer\",\n Admin = \"admin\",\n}\n\nexport type UserIdentityGender =\n | \"male\"\n | \"female\"\n | \"non-binary\"\n | \"gender-fluid\"\n | \"neutral\"\n | \"other\"\n | string;\n\nexport type UserPreferences = {\n language: Language;\n currency: Currency;\n notifications: {\n email: {\n newsletter: boolean;\n message: boolean;\n };\n push: {\n message: boolean;\n };\n };\n};\n\nexport type UserConnection = {\n ip: string;\n os: UserConnectionOS;\n device: UserConnectionDevice;\n client: UserConnectionClient;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type UserConnectionOS = {\n name: string;\n version: string;\n};\n\nexport type UserConnectionDevice = {\n type: string;\n brand: string;\n};\n\nexport type UserConnectionClient = {\n name: string;\n version: string;\n};\n\nexport type UserEndpoints =\n | Endpoint<\"GET\", \"/users\", User[]>\n | Endpoint<\"GET\", \"/users/:id\", User, { id: string }>\n | Endpoint<\"GET\", \"/users/me\", User>\n | Endpoint<\n \"GET\",\n \"/users/check/:identifier\",\n {\n exists: boolean;\n identifier: UserIdentifier;\n suggestions?: string[];\n },\n { identifier: boolean; suggestions?: boolean }\n >\n | Endpoint<\"PUT\", \"/users/:id\", User, UpdateUserDto>;\n","import { Currency } from \"..\";\nimport { OrganizationEvent, OrganizationEventTicket } from \"../organizations\";\nimport { User } from \"../users\";\n\nexport enum OrderStatus {\n Created = \"created\",\n Cancelled = \"cancelled\",\n Completed = \"completed\",\n Pending = \"pending\",\n Confirmed = \"confirmed\",\n Declined = \"declined\",\n Refunded = \"refunded\",\n PartiallyRefunded = \"partially_refunded\",\n Expired = \"expired\",\n}\n\nexport type OrderItem = {\n id: string;\n ticket: OrganizationEventTicket;\n isUsed: boolean;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type Order = {\n id: string;\n owner: User;\n members: User[];\n status: OrderStatus;\n event: OrganizationEvent;\n items: OrderItem[];\n promoCode?: PromoCode;\n total: number;\n currency: Currency;\n createdAt: Date;\n};\n\nexport type PromoCode = {\n id: string;\n code: string;\n used: number;\n discount: number;\n isActive: boolean;\n expirationAt: Date;\n createdAt: Date;\n};\n","export * from \"./auth\";\nexport * from \"./careers\";\nexport * from \"./health\";\nexport * from \"./organizations\";\nexport * from \"./token\";\nexport * from \"./users\";\nexport * from \"./order\";\nexport * from \"./profiles\";\n\nexport type Base = {\n id: string;\n createdAt: Date;\n updatedAt: Date;\n};\n\nexport type ExcludeBase<T> = Omit<T, keyof Base>;\n\nexport type Location = {\n name?: string;\n address: string;\n zipCode: string;\n city: string;\n country: string;\n geometry?: {\n latitude: number;\n longitude: number;\n };\n};\n\n// Currency\nexport enum Currency {\n EUR = \"EUR\",\n USD = \"USD\",\n GBP = \"GBP\",\n}\n\n// I18n\nexport enum Language {\n FR = \"fr\",\n EN = \"en\",\n}\n","import { IsEnum, IsNotEmpty } from \"class-validator\";\n\nimport { OrganizationMemberRole } from \"../../../types\";\n\nexport class UpdateOrganizationMemberDto {\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { Location, UserIdentifier, UserIdentityGender } from \"../../types\";\n\nexport class CreateUserDto {\n identifier: UserIdentifier;\n password: string;\n identity: CreateUserIdentituDto;\n addresses: Location[];\n}\n\nclass CreateUserIdentituDto {\n firstName: string;\n lastName: string;\n gender: UserIdentityGender;\n avatarUrl?: string;\n birthDate: Date;\n}\n","export class SignInUserDto {\n identifier: string;\n password: string;\n}\n","import { Type } from \"class-transformer\";\nimport {\n IsDateString,\n IsEmail,\n IsObject,\n IsOptional,\n IsPhoneNumber,\n IsString,\n IsUrl,\n Length,\n Matches,\n MaxLength,\n MinLength,\n ValidateNested,\n} from \"class-validator\";\n\nimport { NAME_REGEX } from \"../../../constants/regex\";\nimport { UserIdentifier, UserIdentity } from \"../../types\";\n\nexport class UpdateUserDto {\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentifierDto)\n identifier?: UpdateIdentifierDto;\n\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentityDto)\n identity?: UpdateIdentityDto;\n\n @IsOptional()\n @IsString()\n @MinLength(8)\n @MaxLength(128)\n password?: string;\n}\n\nclass UpdateIdentifierDto\n implements\n Partial<Pick<UserIdentifier, \"email\" | \"phoneNumber\" | \"username\">>\n{\n @IsOptional()\n @IsString()\n @IsEmail()\n email?: string;\n\n @IsOptional()\n @IsString()\n @IsPhoneNumber()\n phoneNumber?: string;\n\n @IsOptional()\n @IsString()\n @MinLength(3)\n username?: string;\n}\n\nclass UpdateIdentityDto\n implements\n Partial<\n Pick<\n UserIdentity,\n | \"firstName\"\n | \"lastName\"\n | \"displayName\"\n | \"description\"\n | \"avatarUrl\"\n | \"bannerUrl\"\n | \"gender\"\n | \"birthDate\"\n >\n >\n{\n @IsOptional()\n @IsString()\n @Length(2, 32)\n @Matches(NAME_REGEX, {\n message: \"First name must be composed of letters only\",\n })\n firstName?: string;\n\n @IsOptional()\n @IsString()\n @Length(2, 32)\n @Matches(NAME_REGEX, {\n message: \"Last name must be composed of letters only\",\n })\n lastName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 32)\n displayName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 128)\n description?: string;\n\n @IsOptional()\n @IsUrl()\n avatarUrl?: string | undefined;\n\n @IsOptional()\n @IsUrl()\n bannerUrl?: string | undefined;\n\n @IsOptional()\n gender?: string;\n\n @IsOptional()\n @IsDateString()\n birthDate?: Date;\n}\n","import axios, { Options, Response } from \"redaxios\";\n\nimport { isBrowser } from \"../../utils\";\nimport { APIResponse, ErroredAPIResponse } from \"../endpoints\";\n\nconst instance = axios.create({\n headers: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n ...(!isBrowser && { \"User-Agent\": \"tonightpass-api-client\" }),\n },\n responseType: \"json\",\n transformRequest: [\n function (data) {\n return JSON.stringify(data);\n },\n ],\n withCredentials: isBrowser,\n});\n\nexport interface APIRequestOptions extends Options {}\n\nexport const request = async <T>(url: string, options?: Options) => {\n const response = instance<APIResponse<T>>(url, { ...options })\n .then((response) => response)\n .catch((error: Response<ErroredAPIResponse>) => {\n throw error.data;\n });\n\n return response;\n};\n","export const isBrowser = typeof window !== \"undefined\";\n","import { ParamValue, Query, pathcat } from \"pathcat\";\nimport { Options, Response } from \"redaxios\";\n\nimport { APIResponse, Endpoints, ErroredAPIResponse } from \"./endpoints\";\nimport { APIRequestOptions, request } from \"./request\";\nimport { DEFAULT_API_URL } from \"../constants\";\n\nexport type PathsFor<M extends Options[\"method\"]> = Extract<\n Endpoints,\n { method: M }\n>[\"path\"];\n\nexport class TonightPassAPIError<T> extends Error {\n public readonly status: number;\n\n constructor(\n public readonly response: Response<APIResponse<T>>,\n public readonly data: ErroredAPIResponse,\n ) {\n super(data.message);\n\n this.status = response.status;\n }\n}\n\nexport interface ClientOptions {\n readonly baseURL: string;\n}\n\nexport class Client {\n private options;\n public readonly url;\n\n constructor(options: ClientOptions) {\n this.options = options;\n this.url = (path: string, params: Record<string, ParamValue>) => {\n const baseURL = this.options.baseURL || DEFAULT_API_URL;\n return pathcat(baseURL, path, params);\n };\n }\n\n setOptions(options: ClientOptions) {\n this.options = options;\n }\n\n async get<Path extends PathsFor<\"GET\">>(\n path: Path,\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"GET\" }>[\"res\"]\n >(\"GET\", path, undefined, query, options);\n }\n\n async post<Path extends Extract<Endpoints, { method: \"POST\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"POST\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"POST\" }>[\"res\"]\n >(\"POST\", path, body, query, options);\n }\n\n async put<Path extends Extract<Endpoints, { method: \"PUT\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"res\"]\n >(\"PUT\", path, body, query, options);\n }\n\n async patch<Path extends Extract<Endpoints, { method: \"PATCH\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"res\"]\n >(\"PATCH\", path, body, query, options);\n }\n\n async delete<Path extends Extract<Endpoints, { method: \"DELETE\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"res\"]\n >(\"DELETE\", path, body, query, options);\n }\n\n private async requester<T>(\n method: Options[\"method\"],\n path: string,\n body: unknown,\n query: Query<string> = {},\n options: APIRequestOptions = {},\n ) {\n const url = this.url(path, query);\n\n if (body !== undefined) {\n if (method === \"GET\") {\n throw new Error(\"Cannot send a GET request with a body\");\n }\n }\n\n const response: Response<APIResponse<T>> = await request<T>(url, {\n method,\n data: body,\n ...options,\n });\n\n const result = response.data;\n\n if (!result.success) {\n throw new TonightPassAPIError<T>(response, result);\n }\n\n return result.data;\n }\n}\n","import { Client } from \"../rest\";\n\nexport function sdk<T>(builder: (client: Client) => T) {\n return builder;\n}\n","import { ParamValue } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\nimport { CreateUserDto, SignInUserDto } from \"../rest\";\nimport { isBrowser } from \"../utils\";\n\nexport const auth = sdk((client) => ({\n signIn: async (data: SignInUserDto) => client.post(\"/auth/sign-in\", data),\n signUp: async (data: CreateUserDto) => client.post(\"/auth/sign-up\", data),\n signOut: async () => client.post(\"/auth/sign-out\", null),\n refreshToken: async () => client.post(\"/auth/refresh-token\", null),\n\n oauth2: {\n google: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/google\", params || {});\n } else {\n throw new Error(\"Google OAuth2 is only available in the browser\");\n }\n },\n },\n twitter: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/twitter\", params || {});\n } else {\n throw new Error(\"Twitter OAuth2 is only available in the browser\");\n }\n },\n },\n },\n}));\n","import { Query } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\n\nexport const careers = sdk((client) => ({\n categories: {\n getAll: async (query?: Query<\"/careers/categories\">) =>\n client.get(\"/careers/categories\", query),\n },\n employmentTypes: {\n getAll: async (query?: Query<\"/careers/employmentTypes\">) =>\n client.get(\"/careers/employmentTypes\", query),\n },\n jobs: {\n getAll: async (query?: Query<\"/careers/jobs\">) =>\n client.get(\"/careers/jobs\", query),\n get: async (id: number) => client.get(\"/careers/jobs/:id\", { id }),\n },\n offices: {\n getAll: async (query?: Query<\"/careers/offices\">) =>\n client.get(\"/careers/offices\", query),\n },\n}));\n","import { sdk } from \"./builder\";\n\nexport const health = sdk((client) => ({\n getAll: async () => client.get(\"/health\"),\n database: async () => client.get(\"/health/database\"),\n http: async () => client.get(\"/health/http\"),\n}));\n","import { Client } from \"../../../rest\";\nimport { isBrowser } from \"../../../utils\";\n\nexport const organizationsBilling = (client: Client) => ({\n account: async (slug: string) =>\n client.get(\"/organizations/:slug/billing/account\", { slug }),\n link: (slug: string) => {\n if (isBrowser) {\n window.location.href = client.url(\"/organizations/:slug/billing/link\", {\n slug,\n });\n } else {\n throw new Error(\"Billing link is only available in the browser\");\n }\n },\n dashboard: (slug: string) => {\n if (isBrowser) {\n window.location.href = client.url(\n \"/organizations/:slug/billing/dashboard\",\n {\n slug,\n },\n );\n } else {\n throw new Error(\"Billing dashboard is only available in the browser\");\n }\n },\n});\n","import { Client } from \"../../../../rest\";\nimport {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../rest/dtos/organizations/events/events\";\n\nexport const organizationsEventsStyles = (client: Client) => ({\n getAll: async () => client.get(\"/organizations/events/styles\"),\n get: async (slug: string) =>\n client.get(\"/organizations/events/styles/:slug\", { slug }),\n create: async (data: CreateOrganizationEventStyleDto) =>\n client.post(\"/organizations/events/styles\", data),\n update: async (slug: string, data: UpdateOrganizationEventStyleDto) =>\n client.put(\"/organizations/events/styles/:slug\", data, { slug }),\n delete: async (slug: string) =>\n client.delete(\"/organizations/events/styles/:slug\", null, { slug }),\n});\n","import {\n Client,\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../rest\";\n\nexport const organizationsEventsTickets = (client: Client) => ({\n getAll: async (slug: string, eventSlug: string) =>\n client.get(\"/organizations/:slug/events/:eventSlug/tickets\", {\n slug,\n eventSlug,\n }),\n get: async (slug: string, eventSlug: string, ticketId: string) =>\n client.get(\"/organizations/:slug/events/:eventSlug/tickets/:ticketId\", {\n slug,\n eventSlug,\n ticketId,\n }),\n create: async (\n slug: string,\n eventSlug: string,\n data: CreateOrganizationEventTicketDto,\n ) =>\n client.post(\"/organizations/:slug/events/:eventSlug/tickets\", data, {\n slug,\n eventSlug,\n }),\n update: async (\n slug: string,\n eventSlug: string,\n ticketId: string,\n data: UpdateOrganizationEventTicketDto,\n ) =>\n client.put(\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n data,\n {\n slug,\n eventSlug,\n ticketId,\n },\n ),\n delete: async (slug: string, eventSlug: string, ticketId: string) =>\n client.delete(\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n null,\n {\n slug,\n eventSlug,\n ticketId,\n },\n ),\n});\n","import { organizationsEventsStyles } from \"./styles\";\nimport { organizationsEventsTickets } from \"./tickets\";\nimport {\n Client,\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\n\nexport const organizationsEvents = (client: Client) => ({\n getAll: async (slug: string) =>\n client.get(\"/organizations/:slug/events\", {\n slug,\n }),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (slug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:slug/events\", data, {\n slug,\n }),\n update: async (\n organizationSlug: string,\n eventSlug: string,\n data: UpdateOrganizationEventDto,\n ) =>\n client.put(\"/organizations/:organizationSlug/events/:eventSlug\", data, {\n organizationSlug,\n eventSlug,\n }),\n delete: async (organizationSlug: string, eventSlug: string) =>\n client.delete(\"/organizations/:organizationSlug/events/:eventSlug\", null, {\n organizationSlug,\n eventSlug,\n }),\n styles: organizationsEventsStyles(client),\n tickets: organizationsEventsTickets(client),\n});\n","import { Client } from \"../../../rest\";\n\nexport const organizationsMembers = (client: Client) => ({\n getAll: async () => client.get(\"/organizations/members\"),\n delete: async (id: string) =>\n client.delete(\"/organizations/members/:id\", null, { id }),\n});\n","import { organizationsBilling } from \"./billing\";\nimport { organizationsEvents } from \"./events\";\nimport { organizationsMembers } from \"./members\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../rest\";\nimport { sdk } from \"../builder\";\n\nexport const organizations = sdk((client) => ({\n getAll: async () => client.get(\"/organizations\"),\n get: async (slug: string) => client.get(\"/organizations/:slug\", { slug }),\n create: async (data: CreateOrganizationDto) =>\n client.post(\"/organizations\", data),\n update: async (slug: string, data: UpdateOrganizationDto) =>\n client.put(\"/organizations/:slug\", data, { slug }),\n delete: async (slug: string) =>\n client.delete(\"/organizations/:slug\", null, { slug }),\n billing: organizationsBilling(client),\n events: organizationsEvents(client),\n members: organizationsMembers(client),\n}));\n","import { sdk } from \"./builder\";\n\nexport const profiles = sdk((client) => ({\n get: async (username: string) =>\n client.get(\"/profiles/:username\", { username }),\n}));\n","import { sdk } from \"./builder\";\nimport { UpdateUserDto } from \"../rest\";\n\nexport const users = sdk((client) => ({\n getAll: async () => client.get(\"/users\"),\n get: async (id: string) => client.get(\"/users\", { id }),\n me: async () => client.get(\"/users/me\"),\n check: async (identifier: string, suggestions?: boolean) =>\n client.get(\"/users/check/:identifier\", { identifier, suggestions }),\n update: async (id: string, data: UpdateUserDto) =>\n client.put(\"/users/:id\", data, { id }),\n}));\n","import { Client, ClientOptions } from \"./rest\";\nimport { auth, careers, health, organizations, profiles, users } from \"./sdk\";\n\nexport class TonightPass {\n public readonly client: Client;\n\n public readonly auth;\n public readonly careers;\n public readonly health;\n public readonly organizations;\n public readonly profiles;\n public readonly users;\n\n constructor(options: ClientOptions) {\n this.client = new Client(options);\n\n this.auth = auth(this.client);\n this.careers = careers(this.client);\n this.health = health(this.client);\n this.organizations = organizations(this.client);\n this.profiles = profiles(this.client);\n this.users = users(this.client);\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/constants/api.ts","../src/constants/regex.ts","../src/rest/dtos/index.ts","../src/rest/dtos/organizations/create-organization.dto.ts","../src/rest/dtos/organizations/update-organization.dto.ts","../src/rest/dtos/organizations/events/create-organization-event.dto.ts","../src/rest/types/organizations/events/tickets/index.ts","../src/rest/types/organizations/events/styles/index.ts","../src/rest/types/organizations/events/index.ts","../src/rest/types/organizations/members/index.ts","../src/rest/types/organizations/index.ts","../src/rest/types/token/index.ts","../src/rest/types/users/index.ts","../src/rest/types/order/index.ts","../src/rest/types/index.ts","../src/rest/dtos/organizations/events/update-organization-event.dto.ts","../src/rest/dtos/organizations/events/tickets/create-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/events/tickets/update-organization-event-ticket.dto.ts","../src/rest/dtos/organizations/members/create-organization-member.dto.ts","../src/rest/dtos/organizations/members/update-organization-member.dto.ts","../src/rest/dtos/users/create-user.dto.ts","../src/rest/dtos/users/sign-in-user.dto.ts","../src/rest/dtos/users/update-user.dto.ts","../src/rest/request/request.ts","../src/utils/index.ts","../src/rest/client.ts","../src/sdk/builder.ts","../src/sdk/auth.ts","../src/sdk/careers.ts","../src/sdk/health.ts","../src/sdk/organizations/billing/index.ts","../src/sdk/organizations/events/styles/index.ts","../src/sdk/organizations/events/tickets/index.ts","../src/sdk/organizations/events/index.ts","../src/sdk/organizations/members/index.ts","../src/sdk/organizations/index.ts","../src/sdk/profiles.ts","../src/sdk/users.ts","../src/tonightpass.ts"],"names":["DEFAULT_API_URL","EMAIL_REGEX","PASSWORD_REGEX","NAME_REGEX","SLUG_REGEX","BCRYPT_HASH","PHONE_NUMBER_REGEX","IMAGE_URL_REGEX","IsArray","IsLowercase","IsNotEmpty","IsObject","IsOptional","IsString","IsUrl","Length","CreateOrganizationDto","slug","identity","members","location","CreateOrganizationIdentityDto","displayName","description","avatarUrl","bannerUrl","socialLinks","protocols","UpdateOrganizationDto","UpdateOrganizationIdentityDto","IsDate","IsEnum","OrganizationEventTicketCategory","OrganizationEventStyleType","OrganizationEventType","OrganizationEventVisibilityType","OrganizationMemberStatus","OrganizationMemberRole","OrganizationSocialType","UserTokenType","UserRole","OrderStatus","Currency","Language","CreateOrganizationEventDto","title","type","visibility","flyers","trailers","tickets","styles","startAt","endAt","UpdateOrganizationEventDto","CreateOrganizationEventTicketDto","name","price","quantity","category","currency","isVisible","isFeesIncluded","UpdateOrganizationEventTicketDto","CreateOrganizationMemberDto","user","role","UpdateOrganizationMemberDto","CreateUserDto","identifier","password","addresses","SignInUserDto","Type","IsDateString","IsEmail","IsPhoneNumber","Matches","MaxLength","MinLength","ValidateNested","UpdateUserDto","UpdateIdentifierDto","UpdateIdentityDto","email","phoneNumber","username","firstName","lastName","gender","birthDate","message","axios","isBrowser","window","instance","create","headers","Accept","responseType","transformRequest","data","JSON","stringify","withCredentials","request","__name","url","options","then","response","catch","error","pathcat","TonightPassAPIError","Error","status","constructor","Client","path","params","baseURL","setOptions","get","query","requester","undefined","post","body","put","patch","delete","method","result","success","sdk","builder","auth","client","signIn","signUp","signOut","refreshToken","oauth2","google","connect","href","twitter","careers","categories","getAll","employmentTypes","jobs","id","offices","health","database","http","organizationsBilling","account","link","dashboard","organizationsEventsStyles","update","organizationsEventsTickets","eventSlug","ticketId","organizationsEvents","organizationSlug","organizationsMembers","organizations","billing","events","profiles","users","me","check","suggestions","TonightPass"],"mappings":"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","sourcesContent":["export const DEFAULT_API_URL = \"https://api.tonightpass.com\";\n","export const EMAIL_REGEX = /^[a-z0-9._%+-]+@[a-z0-9.-]+\\.[a-z]{2,4}$/;\n\n// checks if a password has at least one uppercase letter and a number or special character\nexport const PASSWORD_REGEX =\n /((?=.*\\d)|(?=.*\\W+))(?![.\\n])(?=.*[A-Z])(?=.*[a-z]).*$/;\n\n// checks if a string has only letters, numbers, spaces, apostrophes, dots and dashes\nexport const NAME_REGEX = /(^[\\p{L}\\d'\\\\.\\s\\\\-]*$)/u;\n\n// checks if a string is a valid slug, useful for usernames\nexport const SLUG_REGEX = /^[a-z\\d]+(?:(\\.|-|_)[a-z\\d]+)*$/;\n\n// validates if passwords are valid bcrypt hashes\nexport const BCRYPT_HASH = /\\$2[abxy]?\\$\\d{1,2}\\$[A-Za-z\\d\\\\./]{53}/;\n\nexport const PHONE_NUMBER_REGEX =\n /^\\s*(?:\\+?(\\d{1,3}))?([-. (]*(\\d{3})[-. )]*)?((\\d{3})[-. ]*(\\d{2,4})(?:[-.x ]*(\\d+))?)\\s*$/;\n\nexport const IMAGE_URL_REGEX =\n /(((http:\\/\\/www)|(http:\\/\\/)|(www))[-a-zA-Z0-9@:%_\\\\+.~#?&//=]+)\\.(jpg|jpeg|gif|png|bmp|tiff|tga|svg)/i;\n","import \"reflect-metadata\";\n\nexport * from \"./organizations\";\nexport * from \"./users\";\n","import {\n IsArray,\n IsLowercase,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport { CreateOrganizationMemberDto } from \"./members/create-organization-member.dto\";\nimport { type Location, type OrganizationSocialLink } from \"../../types\";\n\nexport class CreateOrganizationDto {\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsObject()\n identity: CreateOrganizationIdentityDto;\n\n @IsArray()\n members: CreateOrganizationMemberDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class CreateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n displayName: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n description: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n","import {\n IsArray,\n IsLowercase,\n IsNotEmpty,\n IsObject,\n IsOptional,\n IsString,\n IsUrl,\n Length,\n} from \"class-validator\";\n\nimport { UpdateOrganizationEventDto } from \"./events\";\nimport { OrganizationSocialLink } from \"../../types\";\n\nexport class UpdateOrganizationDto {\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsObject()\n @IsOptional()\n identity?: UpdateOrganizationIdentityDto;\n\n @IsOptional()\n @IsArray()\n members?: UpdateOrganizationEventDto[];\n\n @IsOptional()\n @IsObject()\n location?: Location;\n}\n\nexport class UpdateOrganizationIdentityDto {\n @IsString()\n @IsNotEmpty()\n @Length(1, 32)\n @IsOptional()\n displayName?: string;\n\n @IsString()\n @IsNotEmpty()\n @Length(16, 1024)\n @IsOptional()\n description?: string;\n\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n @IsOptional()\n avatarUrl?: string;\n\n @IsOptional()\n @IsUrl({\n protocols: [\"http\", \"https\"],\n })\n bannerUrl?: string;\n\n @IsOptional()\n @IsArray()\n socialLinks?: OrganizationSocialLink[];\n}\n","import {\n IsDate,\n IsEnum,\n IsLowercase,\n IsOptional,\n IsString,\n Length,\n} from \"class-validator\";\n\nimport { CreateOrganizationEventTicketDto } from \"./tickets\";\nimport {\n Location,\n OrganizationEventType,\n OrganizationEventVisibilityType,\n} from \"../../../types\";\n\nexport class CreateOrganizationEventDto {\n @IsString()\n @Length(1, 64)\n title: string;\n\n @IsOptional()\n @IsString()\n @IsLowercase()\n @Length(1, 48)\n slug?: string;\n\n @IsString()\n @Length(16, 2048)\n description: string;\n\n @IsEnum(OrganizationEventType)\n type: OrganizationEventType;\n\n @IsEnum(OrganizationEventVisibilityType)\n visibility: OrganizationEventVisibilityType;\n\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: CreateOrganizationEventTicketDto[];\n styles: string[];\n\n @IsDate()\n startAt: Date;\n\n @IsDate()\n endAt: Date;\n}\n","import { Base, Currency } from \"../../..\";\nimport {\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../dtos\";\nimport { Endpoint } from \"../../../../endpoints\";\n\nexport type OrganizationEventTicket = Base & {\n name: string;\n description?: string;\n price: number;\n displayPrice: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n vatRate: number;\n externalId?: string;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n};\n\nexport 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 visibility: OrganizationEventVisibilityType;\n flyers: string[];\n trailers: string[];\n location: Location;\n tickets: OrganizationEventTicket[];\n styles: OrganizationEventStyle[];\n startAt: Date;\n endAt: Date;\n};\n\nexport enum OrganizationEventType {\n Clubbing = \"clubbing\",\n Concert = \"concert\",\n Afterwork = \"afterwork\",\n DancingLunch = \"dancing_lunch\",\n Diner = \"diner\",\n Garden = \"garden\",\n AfterBeach = \"after_beach\",\n Festival = \"festival\",\n Spectacle = \"spectacle\",\n Cruise = \"cruise\",\n OutsideAnimation = \"outside_animation\",\n Sport = \"sport\",\n Match = \"match\",\n Seminar = \"seminar\",\n Conference = \"conference\",\n WellnessDay = \"wellness_day\",\n Workshop = \"workshop\",\n TradeFair = \"trade_fair\",\n ConsumerShow = \"consumer_show\",\n Membership = \"membership\",\n}\n\nexport enum OrganizationEventVisibilityType {\n Public = \"public\",\n Unlisted = \"unlisted\",\n Private = \"private\",\n}\n\nexport type OrganizationEventEndpoints =\n | Endpoint<\"GET\", \"/organizations/:slug/events\", Event[]>\n | Endpoint<\"GET\", \"/organizations/:organizationSlug/events/:eventSlug\", Event>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/events\",\n Event,\n CreateOrganizationEventDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n UpdateOrganizationEventDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/events/:eventSlug\",\n Event,\n null\n >\n | OrganizationEventStyleEndpoints\n | OrganizationEventTicketEndpoints;\n","import { Organization } from \"..\";\nimport { Base } from \"../..\";\nimport { CreateOrganizationMemberDto } from \"../../../dtos\";\nimport { UpdateOrganizationMemberDto } from \"../../../dtos/organizations/members/update-organization-member.dto\";\nimport { Endpoint } from \"../../../endpoints\";\nimport { UserToken } from \"../../token\";\nimport { User } from \"../../users\";\n\nexport type OrganizationMember = Base & {\n organization: Organization;\n role: OrganizationMemberRole;\n status: OrganizationMemberStatus;\n user?: User;\n token?: UserToken;\n};\n\nexport enum OrganizationMemberStatus {\n Pending = \"pending\",\n Accepted = \"accepted\",\n Rejected = \"rejected\",\n}\n\nexport enum OrganizationMemberRole {\n Member = \"member\",\n Manager = \"manager\",\n Admin = \"admin\",\n Owner = \"owner\",\n}\n\nexport type OrganizationMembersEndpoints =\n | Endpoint<\"GET\", \"/organizations/members\", OrganizationMember[]>\n | Endpoint<\"DELETE\", \"/organizations/members/:id\", OrganizationMember[], null>\n | Endpoint<\"GET\", \"/organizations/:slug/members\", OrganizationMember[]>\n | Endpoint<\n \"POST\",\n \"/organizations/:slug/members\",\n OrganizationMember,\n CreateOrganizationMemberDto\n >\n | Endpoint<\n \"PUT\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember,\n UpdateOrganizationMemberDto\n >\n | Endpoint<\n \"DELETE\",\n \"/organizations/:organizationSlug/members/:userId\",\n OrganizationMember[],\n null\n >;\n","import type Stripe from \"stripe\";\n\nimport { OrganizationEvent, OrganizationEventEndpoints } from \"./events\";\nimport { OrganizationEventTicket } from \"./events/tickets\";\nimport { OrganizationMember, OrganizationMembersEndpoints } from \"./members\";\nimport { Base, Location, Profile, ProfileMetadata } from \"..\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport * from \"./events\";\nexport * from \"./members\";\n\nexport type Organization = Base & {\n slug: string;\n identity: OrganizationIdentity;\n members: OrganizationMember[];\n location?: Location;\n events: OrganizationEvent[];\n savedTickets: OrganizationEventTicket[];\n verified: boolean;\n billing: OrganizationBilling;\n};\n\nexport type OrganizationBilling = {\n account: string;\n};\n\nexport type OrganizationBillingAccount = Stripe.Account;\n\nexport type OrganizationIdentity = Profile & {\n socialLinks: OrganizationSocialLink[];\n\n metadata: ProfileMetadata & {\n eventsCount: number;\n viewsCount: number;\n membersCount: number;\n };\n};\n\nexport type OrganizationSocialLink = {\n type: OrganizationSocialType;\n url: string;\n};\n\nexport enum OrganizationSocialType {\n Facebook = \"facebook\",\n Twitter = \"twitter\",\n Instagram = \"instagram\",\n Linkedin = \"linkedin\",\n Youtube = \"youtube\",\n Website = \"website\",\n}\n\nexport type OrganizationEndpoints =\n | Endpoint<\"GET\", \"/organizations\", Organization[]>\n | Endpoint<\"GET\", \"/organizations/:slug\", Organization>\n | Endpoint<\"POST\", \"/organizations\", Organization, CreateOrganizationDto>\n | Endpoint<\"PUT\", \"/organizations/:slug\", Organization, UpdateOrganizationDto>\n | Endpoint<\"DELETE\", \"/organizations/:slug\", Organization, null>\n | Endpoint<\n \"GET\",\n \"/organizations/:slug/billing/account\",\n OrganizationBillingAccount\n >\n | Endpoint<\"GET\", \"/organizations/:slug/billing/link\", void>\n | Endpoint<\"GET\", \"/organizations/:slug/billing/dashboard\", void>\n | OrganizationEventEndpoints\n | OrganizationMembersEndpoints;\n","import { User } from \"../users\";\n\nexport type UserToken = {\n type: UserTokenType;\n value: string;\n createdAt: Date;\n expiresAt: Date;\n user?: User;\n identifier?: string;\n};\n\nexport enum UserTokenType {\n Authentication = \"authentication\",\n OrganizationInvite = \"organization_invite\",\n PasswordRecovery = \"password_recovery\",\n EmailValidation = \"email_validation\",\n PhoneValidation = \"phone_validation\",\n}\n","import {\n Base,\n Currency,\n Language,\n Location,\n Profile,\n ProfileMetadata,\n} from \"..\";\nimport { UpdateUserDto } from \"../../dtos\";\nimport { Endpoint } from \"../../endpoints\";\n\nexport type User = Base & {\n identifier: UserIdentifier;\n password: string;\n identity: UserIdentity;\n role: UserRole;\n addresses: Location[];\n preferences: UserPreferences;\n connections: UserConnection[];\n verified: boolean;\n};\n\nexport type UserIdentifier = {\n email?: string;\n phoneNumber?: string;\n username: string;\n\n [key: string]: string | undefined;\n};\n\nexport type UserIdentity = Profile & {\n firstName: string;\n lastName: string;\n fullName: string;\n gender: UserIdentityGender;\n birthDate: Date;\n\n metadata: ProfileMetadata & {\n followingCount: number;\n hasPassPlus: boolean;\n idValid: boolean;\n };\n};\n\nexport enum UserRole {\n User = \"user\",\n Developer = \"developer\",\n Admin = \"admin\",\n}\n\nexport type UserIdentityGender =\n | \"male\"\n | \"female\"\n | \"non-binary\"\n | \"gender-fluid\"\n | \"neutral\"\n | \"other\"\n | string;\n\nexport type UserPreferences = {\n language: Language;\n currency: Currency;\n notifications: {\n email: {\n newsletter: boolean;\n message: boolean;\n };\n push: {\n message: boolean;\n };\n };\n};\n\nexport type UserConnection = {\n ip: string;\n os: UserConnectionOS;\n device: UserConnectionDevice;\n client: UserConnectionClient;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type UserConnectionOS = {\n name: string;\n version: string;\n};\n\nexport type UserConnectionDevice = {\n type: string;\n brand: string;\n};\n\nexport type UserConnectionClient = {\n name: string;\n version: string;\n};\n\nexport type UserEndpoints =\n | Endpoint<\"GET\", \"/users\", User[]>\n | Endpoint<\"GET\", \"/users/:id\", User, { id: string }>\n | Endpoint<\"GET\", \"/users/me\", User>\n | Endpoint<\n \"GET\",\n \"/users/check/:identifier\",\n {\n exists: boolean;\n identifier: UserIdentifier;\n suggestions?: string[];\n },\n { identifier: boolean; suggestions?: boolean }\n >\n | Endpoint<\"PUT\", \"/users/:id\", User, UpdateUserDto>;\n","import { Currency } from \"..\";\nimport { OrganizationEvent, OrganizationEventTicket } from \"../organizations\";\nimport { User } from \"../users\";\n\nexport enum OrderStatus {\n Created = \"created\",\n Cancelled = \"cancelled\",\n Completed = \"completed\",\n Pending = \"pending\",\n Confirmed = \"confirmed\",\n Declined = \"declined\",\n Refunded = \"refunded\",\n PartiallyRefunded = \"partially_refunded\",\n Expired = \"expired\",\n}\n\nexport type OrderItem = {\n id: string;\n ticket: OrganizationEventTicket;\n isUsed: boolean;\n updatedAt: Date;\n createdAt: Date;\n};\n\nexport type Order = {\n id: string;\n owner: User;\n members: User[];\n status: OrderStatus;\n event: OrganizationEvent;\n items: OrderItem[];\n promoCode?: PromoCode;\n total: number;\n currency: Currency;\n createdAt: Date;\n};\n\nexport type PromoCode = {\n id: string;\n code: string;\n used: number;\n discount: number;\n isActive: boolean;\n expirationAt: Date;\n createdAt: Date;\n};\n","export * from \"./auth\";\nexport * from \"./careers\";\nexport * from \"./health\";\nexport * from \"./organizations\";\nexport * from \"./token\";\nexport * from \"./users\";\nexport * from \"./order\";\nexport * from \"./profiles\";\n\nexport type Base = {\n id: string;\n createdAt: Date;\n updatedAt: Date;\n};\n\nexport type ExcludeBase<T> = Omit<T, keyof Base>;\n\nexport type Location = {\n name?: string;\n address: string;\n zipCode: string;\n city: string;\n country: string;\n geometry?: {\n latitude: number;\n longitude: number;\n };\n};\n\n// Currency\nexport enum Currency {\n EUR = \"EUR\",\n USD = \"USD\",\n GBP = \"GBP\",\n}\n\n// I18n\nexport enum Language {\n FR = \"fr\",\n EN = \"en\",\n}\n","import { CreateOrganizationEventDto } from \"./create-organization-event.dto\";\n\nexport class UpdateOrganizationEventDto extends CreateOrganizationEventDto {}\n","import {\n Currency,\n OrganizationEventTicketCategory,\n OrganizationEventTicketType,\n} from \"../../../../types\";\n\nexport class CreateOrganizationEventTicketDto {\n name: string;\n description?: string;\n price: number;\n quantity: number;\n type: OrganizationEventTicketType;\n category: OrganizationEventTicketCategory;\n currency: Currency;\n isVisible: boolean;\n isFeesIncluded: boolean;\n startAt: Date;\n endAt: Date;\n}\n","import { CreateOrganizationEventTicketDto } from \"./create-organization-event-ticket.dto\";\n\nexport class UpdateOrganizationEventTicketDto extends CreateOrganizationEventTicketDto {}\n","import { IsEnum, IsNotEmpty, IsString } from \"class-validator\";\n\nimport { OrganizationMemberRole } from \"../../../types\";\n\nexport class CreateOrganizationMemberDto {\n @IsString()\n @IsNotEmpty()\n user: string;\n\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { IsEnum, IsNotEmpty } from \"class-validator\";\n\nimport { OrganizationMemberRole } from \"../../../types\";\n\nexport class UpdateOrganizationMemberDto {\n @IsEnum(OrganizationMemberRole)\n @IsNotEmpty()\n role: OrganizationMemberRole;\n}\n","import { Location, UserIdentifier, UserIdentityGender } from \"../../types\";\n\nexport class CreateUserDto {\n identifier: UserIdentifier;\n password: string;\n identity: CreateUserIdentituDto;\n addresses: Location[];\n}\n\nclass CreateUserIdentituDto {\n firstName: string;\n lastName: string;\n gender: UserIdentityGender;\n avatarUrl?: string;\n birthDate: Date;\n}\n","export class SignInUserDto {\n identifier: string;\n password: string;\n}\n","import { Type } from \"class-transformer\";\nimport {\n IsDateString,\n IsEmail,\n IsObject,\n IsOptional,\n IsPhoneNumber,\n IsString,\n IsUrl,\n Length,\n Matches,\n MaxLength,\n MinLength,\n ValidateNested,\n} from \"class-validator\";\n\nimport { NAME_REGEX } from \"../../../constants/regex\";\nimport { UserIdentifier, UserIdentity } from \"../../types\";\n\nexport class UpdateUserDto {\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentifierDto)\n identifier?: UpdateIdentifierDto;\n\n @IsOptional()\n @IsObject()\n @ValidateNested()\n @Type(() => UpdateIdentityDto)\n identity?: UpdateIdentityDto;\n\n @IsOptional()\n @IsString()\n @MinLength(8)\n @MaxLength(128)\n password?: string;\n}\n\nclass UpdateIdentifierDto\n implements\n Partial<Pick<UserIdentifier, \"email\" | \"phoneNumber\" | \"username\">>\n{\n @IsOptional()\n @IsString()\n @IsEmail()\n email?: string;\n\n @IsOptional()\n @IsString()\n @IsPhoneNumber()\n phoneNumber?: string;\n\n @IsOptional()\n @IsString()\n @MinLength(3)\n username?: string;\n}\n\nclass UpdateIdentityDto\n implements\n Partial<\n Pick<\n UserIdentity,\n | \"firstName\"\n | \"lastName\"\n | \"displayName\"\n | \"description\"\n | \"avatarUrl\"\n | \"bannerUrl\"\n | \"gender\"\n | \"birthDate\"\n >\n >\n{\n @IsOptional()\n @IsString()\n @Length(2, 32)\n @Matches(NAME_REGEX, {\n message: \"First name must be composed of letters only\",\n })\n firstName?: string;\n\n @IsOptional()\n @IsString()\n @Length(2, 32)\n @Matches(NAME_REGEX, {\n message: \"Last name must be composed of letters only\",\n })\n lastName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 32)\n displayName?: string;\n\n @IsOptional()\n @IsString()\n @Length(1, 128)\n description?: string;\n\n @IsOptional()\n @IsUrl()\n avatarUrl?: string | undefined;\n\n @IsOptional()\n @IsUrl()\n bannerUrl?: string | undefined;\n\n @IsOptional()\n gender?: string;\n\n @IsOptional()\n @IsDateString()\n birthDate?: Date;\n}\n","import axios, { Options, Response } from \"redaxios\";\n\nimport { isBrowser } from \"../../utils\";\nimport { APIResponse, ErroredAPIResponse } from \"../endpoints\";\n\nconst instance = axios.create({\n headers: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n ...(!isBrowser && { \"User-Agent\": \"tonightpass-api-client\" }),\n },\n responseType: \"json\",\n transformRequest: [\n function (data) {\n return JSON.stringify(data);\n },\n ],\n withCredentials: isBrowser,\n});\n\nexport interface APIRequestOptions extends Options {}\n\nexport const request = async <T>(url: string, options?: Options) => {\n const response = instance<APIResponse<T>>(url, { ...options })\n .then((response) => response)\n .catch((error: Response<ErroredAPIResponse>) => {\n throw error.data;\n });\n\n return response;\n};\n","export const isBrowser = typeof window !== \"undefined\";\n","import { ParamValue, Query, pathcat } from \"pathcat\";\nimport { Options, Response } from \"redaxios\";\n\nimport { APIResponse, Endpoints, ErroredAPIResponse } from \"./endpoints\";\nimport { APIRequestOptions, request } from \"./request\";\nimport { DEFAULT_API_URL } from \"../constants\";\n\nexport type PathsFor<M extends Options[\"method\"]> = Extract<\n Endpoints,\n { method: M }\n>[\"path\"];\n\nexport class TonightPassAPIError<T> extends Error {\n public readonly status: number;\n\n constructor(\n public readonly response: Response<APIResponse<T>>,\n public readonly data: ErroredAPIResponse,\n ) {\n super(data.message);\n\n this.status = response.status;\n }\n}\n\nexport interface ClientOptions {\n readonly baseURL: string;\n}\n\nexport class Client {\n private options;\n public readonly url;\n\n constructor(options: ClientOptions) {\n this.options = options;\n this.url = (path: string, params: Record<string, ParamValue>) => {\n const baseURL = this.options.baseURL || DEFAULT_API_URL;\n return pathcat(baseURL, path, params);\n };\n }\n\n setOptions(options: ClientOptions) {\n this.options = options;\n }\n\n async get<Path extends PathsFor<\"GET\">>(\n path: Path,\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"GET\" }>[\"res\"]\n >(\"GET\", path, undefined, query, options);\n }\n\n async post<Path extends Extract<Endpoints, { method: \"POST\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"POST\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"POST\" }>[\"res\"]\n >(\"POST\", path, body, query, options);\n }\n\n async put<Path extends Extract<Endpoints, { method: \"PUT\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PUT\" }>[\"res\"]\n >(\"PUT\", path, body, query, options);\n }\n\n async patch<Path extends Extract<Endpoints, { method: \"PATCH\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"PATCH\" }>[\"res\"]\n >(\"PATCH\", path, body, query, options);\n }\n\n async delete<Path extends Extract<Endpoints, { method: \"DELETE\" }>[\"path\"]>(\n path: Path,\n body: Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"body\"],\n query?: Query<Path>,\n options?: APIRequestOptions,\n ) {\n return this.requester<\n Extract<Endpoints, { path: Path; method: \"DELETE\" }>[\"res\"]\n >(\"DELETE\", path, body, query, options);\n }\n\n private async requester<T>(\n method: Options[\"method\"],\n path: string,\n body: unknown,\n query: Query<string> = {},\n options: APIRequestOptions = {},\n ) {\n const url = this.url(path, query);\n\n if (body !== undefined) {\n if (method === \"GET\") {\n throw new Error(\"Cannot send a GET request with a body\");\n }\n }\n\n const response: Response<APIResponse<T>> = await request<T>(url, {\n method,\n data: body,\n ...options,\n });\n\n const result = response.data;\n\n if (!result.success) {\n throw new TonightPassAPIError<T>(response, result);\n }\n\n return result.data;\n }\n}\n","import { Client } from \"../rest\";\n\nexport function sdk<T>(builder: (client: Client) => T) {\n return builder;\n}\n","import { ParamValue } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\nimport { CreateUserDto, SignInUserDto } from \"../rest\";\nimport { isBrowser } from \"../utils\";\n\nexport const auth = sdk((client) => ({\n signIn: async (data: SignInUserDto) => client.post(\"/auth/sign-in\", data),\n signUp: async (data: CreateUserDto) => client.post(\"/auth/sign-up\", data),\n signOut: async () => client.post(\"/auth/sign-out\", null),\n refreshToken: async () => client.post(\"/auth/refresh-token\", null),\n\n oauth2: {\n google: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/google\", params || {});\n } else {\n throw new Error(\"Google OAuth2 is only available in the browser\");\n }\n },\n },\n twitter: {\n connect: (params?: Record<string, ParamValue>) => {\n if (isBrowser) {\n window.location.href = client.url(\"/oauth2/twitter\", params || {});\n } else {\n throw new Error(\"Twitter OAuth2 is only available in the browser\");\n }\n },\n },\n },\n}));\n","import { Query } from \"pathcat\";\n\nimport { sdk } from \"./builder\";\n\nexport const careers = sdk((client) => ({\n categories: {\n getAll: async (query?: Query<\"/careers/categories\">) =>\n client.get(\"/careers/categories\", query),\n },\n employmentTypes: {\n getAll: async (query?: Query<\"/careers/employmentTypes\">) =>\n client.get(\"/careers/employmentTypes\", query),\n },\n jobs: {\n getAll: async (query?: Query<\"/careers/jobs\">) =>\n client.get(\"/careers/jobs\", query),\n get: async (id: number) => client.get(\"/careers/jobs/:id\", { id }),\n },\n offices: {\n getAll: async (query?: Query<\"/careers/offices\">) =>\n client.get(\"/careers/offices\", query),\n },\n}));\n","import { sdk } from \"./builder\";\n\nexport const health = sdk((client) => ({\n getAll: async () => client.get(\"/health\"),\n database: async () => client.get(\"/health/database\"),\n http: async () => client.get(\"/health/http\"),\n}));\n","import { Client } from \"../../../rest\";\nimport { isBrowser } from \"../../../utils\";\n\nexport const organizationsBilling = (client: Client) => ({\n account: async (slug: string) =>\n client.get(\"/organizations/:slug/billing/account\", { slug }),\n link: (slug: string) => {\n if (isBrowser) {\n window.location.href = client.url(\"/organizations/:slug/billing/link\", {\n slug,\n });\n } else {\n throw new Error(\"Billing link is only available in the browser\");\n }\n },\n dashboard: (slug: string) => {\n if (isBrowser) {\n window.location.href = client.url(\n \"/organizations/:slug/billing/dashboard\",\n {\n slug,\n },\n );\n } else {\n throw new Error(\"Billing dashboard is only available in the browser\");\n }\n },\n});\n","import { Client } from \"../../../../rest\";\nimport {\n CreateOrganizationEventStyleDto,\n UpdateOrganizationEventStyleDto,\n} from \"../../../../rest/dtos/organizations/events/events\";\n\nexport const organizationsEventsStyles = (client: Client) => ({\n getAll: async () => client.get(\"/organizations/events/styles\"),\n get: async (slug: string) =>\n client.get(\"/organizations/events/styles/:slug\", { slug }),\n create: async (data: CreateOrganizationEventStyleDto) =>\n client.post(\"/organizations/events/styles\", data),\n update: async (slug: string, data: UpdateOrganizationEventStyleDto) =>\n client.put(\"/organizations/events/styles/:slug\", data, { slug }),\n delete: async (slug: string) =>\n client.delete(\"/organizations/events/styles/:slug\", null, { slug }),\n});\n","import {\n Client,\n CreateOrganizationEventTicketDto,\n UpdateOrganizationEventTicketDto,\n} from \"../../../../rest\";\n\nexport const organizationsEventsTickets = (client: Client) => ({\n getAll: async (slug: string, eventSlug: string) =>\n client.get(\"/organizations/:slug/events/:eventSlug/tickets\", {\n slug,\n eventSlug,\n }),\n get: async (slug: string, eventSlug: string, ticketId: string) =>\n client.get(\"/organizations/:slug/events/:eventSlug/tickets/:ticketId\", {\n slug,\n eventSlug,\n ticketId,\n }),\n create: async (\n slug: string,\n eventSlug: string,\n data: CreateOrganizationEventTicketDto,\n ) =>\n client.post(\"/organizations/:slug/events/:eventSlug/tickets\", data, {\n slug,\n eventSlug,\n }),\n update: async (\n slug: string,\n eventSlug: string,\n ticketId: string,\n data: UpdateOrganizationEventTicketDto,\n ) =>\n client.put(\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n data,\n {\n slug,\n eventSlug,\n ticketId,\n },\n ),\n delete: async (slug: string, eventSlug: string, ticketId: string) =>\n client.delete(\n \"/organizations/:slug/events/:eventSlug/tickets/:ticketId\",\n null,\n {\n slug,\n eventSlug,\n ticketId,\n },\n ),\n});\n","import { organizationsEventsStyles } from \"./styles\";\nimport { organizationsEventsTickets } from \"./tickets\";\nimport {\n Client,\n CreateOrganizationEventDto,\n UpdateOrganizationEventDto,\n} from \"../../../rest\";\n\nexport const organizationsEvents = (client: Client) => ({\n getAll: async (slug: string) =>\n client.get(\"/organizations/:slug/events\", {\n slug,\n }),\n get: async (organizationSlug: string, eventSlug: string) =>\n client.get(\"/organizations/:organizationSlug/events/:eventSlug\", {\n organizationSlug,\n eventSlug,\n }),\n create: async (slug: string, data: CreateOrganizationEventDto) =>\n client.post(\"/organizations/:slug/events\", data, {\n slug,\n }),\n update: async (\n organizationSlug: string,\n eventSlug: string,\n data: UpdateOrganizationEventDto,\n ) =>\n client.put(\"/organizations/:organizationSlug/events/:eventSlug\", data, {\n organizationSlug,\n eventSlug,\n }),\n delete: async (organizationSlug: string, eventSlug: string) =>\n client.delete(\"/organizations/:organizationSlug/events/:eventSlug\", null, {\n organizationSlug,\n eventSlug,\n }),\n styles: organizationsEventsStyles(client),\n tickets: organizationsEventsTickets(client),\n});\n","import { Client } from \"../../../rest\";\n\nexport const organizationsMembers = (client: Client) => ({\n getAll: async () => client.get(\"/organizations/members\"),\n delete: async (id: string) =>\n client.delete(\"/organizations/members/:id\", null, { id }),\n});\n","import { organizationsBilling } from \"./billing\";\nimport { organizationsEvents } from \"./events\";\nimport { organizationsMembers } from \"./members\";\nimport { CreateOrganizationDto, UpdateOrganizationDto } from \"../../rest\";\nimport { sdk } from \"../builder\";\n\nexport const organizations = sdk((client) => ({\n getAll: async () => client.get(\"/organizations\"),\n get: async (slug: string) => client.get(\"/organizations/:slug\", { slug }),\n create: async (data: CreateOrganizationDto) =>\n client.post(\"/organizations\", data),\n update: async (slug: string, data: UpdateOrganizationDto) =>\n client.put(\"/organizations/:slug\", data, { slug }),\n delete: async (slug: string) =>\n client.delete(\"/organizations/:slug\", null, { slug }),\n billing: organizationsBilling(client),\n events: organizationsEvents(client),\n members: organizationsMembers(client),\n}));\n","import { sdk } from \"./builder\";\n\nexport const profiles = sdk((client) => ({\n get: async (username: string) =>\n client.get(\"/profiles/:username\", { username }),\n}));\n","import { sdk } from \"./builder\";\nimport { UpdateUserDto } from \"../rest\";\n\nexport const users = sdk((client) => ({\n getAll: async () => client.get(\"/users\"),\n get: async (id: string) => client.get(\"/users\", { id }),\n me: async () => client.get(\"/users/me\"),\n check: async (identifier: string, suggestions?: boolean) =>\n client.get(\"/users/check/:identifier\", { identifier, suggestions }),\n update: async (id: string, data: UpdateUserDto) =>\n client.put(\"/users/:id\", data, { id }),\n}));\n","import { Client, ClientOptions } from \"./rest\";\nimport { auth, careers, health, organizations, profiles, users } from \"./sdk\";\n\nexport class TonightPass {\n public readonly client: Client;\n\n public readonly auth;\n public readonly careers;\n public readonly health;\n public readonly organizations;\n public readonly profiles;\n public readonly users;\n\n constructor(options: ClientOptions) {\n this.client = new Client(options);\n\n this.auth = auth(this.client);\n this.careers = careers(this.client);\n this.health = health(this.client);\n this.organizations = organizations(this.client);\n this.profiles = profiles(this.client);\n this.users = users(this.client);\n }\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tonightpass",
3
- "version": "0.0.36",
3
+ "version": "0.0.38",
4
4
  "description": "@tonightpass sdk and tools.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,17 +1,49 @@
1
+ import {
2
+ IsDate,
3
+ IsEnum,
4
+ IsLowercase,
5
+ IsOptional,
6
+ IsString,
7
+ Length,
8
+ } from "class-validator";
9
+
1
10
  import { CreateOrganizationEventTicketDto } from "./tickets";
2
- import { Location, OrganizationEventType } from "../../../types";
11
+ import {
12
+ Location,
13
+ OrganizationEventType,
14
+ OrganizationEventVisibilityType,
15
+ } from "../../../types";
3
16
 
4
17
  export class CreateOrganizationEventDto {
18
+ @IsString()
19
+ @Length(1, 64)
5
20
  title: string;
21
+
22
+ @IsOptional()
23
+ @IsString()
24
+ @IsLowercase()
25
+ @Length(1, 48)
26
+ slug?: string;
27
+
28
+ @IsString()
29
+ @Length(16, 2048)
6
30
  description: string;
7
- organization: string;
31
+
32
+ @IsEnum(OrganizationEventType)
8
33
  type: OrganizationEventType;
9
- public: boolean;
34
+
35
+ @IsEnum(OrganizationEventVisibilityType)
36
+ visibility: OrganizationEventVisibilityType;
37
+
10
38
  flyers: string[];
11
39
  trailers: string[];
12
40
  location: Location;
13
41
  tickets: CreateOrganizationEventTicketDto[];
14
42
  styles: string[];
43
+
44
+ @IsDate()
15
45
  startAt: Date;
46
+
47
+ @IsDate()
16
48
  endAt: Date;
17
49
  }
@@ -23,7 +23,7 @@ export type OrganizationEvent = Base & {
23
23
  slug: string;
24
24
  organization: Organization;
25
25
  type: OrganizationEventType;
26
- public: boolean;
26
+ visibility: OrganizationEventVisibilityType;
27
27
  flyers: string[];
28
28
  trailers: string[];
29
29
  location: Location;
@@ -56,6 +56,12 @@ export enum OrganizationEventType {
56
56
  Membership = "membership",
57
57
  }
58
58
 
59
+ export enum OrganizationEventVisibilityType {
60
+ Public = "public",
61
+ Unlisted = "unlisted",
62
+ Private = "private",
63
+ }
64
+
59
65
  export type OrganizationEventEndpoints =
60
66
  | Endpoint<"GET", "/organizations/:slug/events", Event[]>
61
67
  | Endpoint<"GET", "/organizations/:organizationSlug/events/:eventSlug", Event>