@casual-simulation/aux-records 3.2.3 → 3.2.4-alpha.5857788915

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.
@@ -400,10 +400,6 @@ export interface GetUserInfoSuccess {
400
400
  * The subscription tier that the user is subscribed to.
401
401
  */
402
402
  subscriptionTier: string;
403
- /**
404
- * The OpenAI API Key that the user has configured in their account.
405
- */
406
- openAiKey: string | null;
407
403
  }
408
404
  export interface GetUserInfoFailure {
409
405
  success: false;
@@ -425,7 +421,7 @@ export interface UpdateUserInfoRequest {
425
421
  /**
426
422
  * The new info for the user.
427
423
  */
428
- update: Partial<Pick<AuthUser, 'name' | 'email' | 'phoneNumber' | 'avatarUrl' | 'avatarPortraitUrl' | 'openAiKey'>>;
424
+ update: Partial<Pick<AuthUser, 'name' | 'email' | 'phoneNumber' | 'avatarUrl' | 'avatarPortraitUrl'>>;
429
425
  }
430
426
  export type UpdateUserInfoResult = UpdateUserInfoSuccess | UpdateUserInfoFailure;
431
427
  export interface UpdateUserInfoSuccess {
package/AuthController.js CHANGED
@@ -12,7 +12,7 @@ import { randomBytes } from 'tweetnacl';
12
12
  import { hashHighEntropyPasswordWithSalt, hashPasswordWithSalt, verifyPasswordAgainstHashes, } from '@casual-simulation/crypto';
13
13
  import { fromByteArray } from 'base64-js';
14
14
  import { cleanupObject, isActiveSubscription, isStringValid, } from './Utils';
15
- import { formatV1OpenAiKey, formatV1SessionKey, parseSessionKey, randomCode, } from './AuthUtils';
15
+ import { formatV1SessionKey, parseSessionKey, randomCode, } from './AuthUtils';
16
16
  /**
17
17
  * The number of miliseconds that a login request should be valid for before expiration.
18
18
  */
@@ -776,7 +776,6 @@ export class AuthController {
776
776
  avatarUrl: result.avatarUrl,
777
777
  hasActiveSubscription: hasActiveSubscription,
778
778
  subscriptionTier: hasActiveSubscription ? tier : null,
779
- openAiKey: hasActiveSubscription ? result.openAiKey : null,
780
779
  };
781
780
  }
782
781
  catch (err) {
@@ -869,21 +868,13 @@ export class AuthController {
869
868
  if (!user) {
870
869
  throw new Error('Unable to find user even though a valid session key was presented!');
871
870
  }
872
- const hasActiveSubscription = this._forceAllowSubscriptionFeatures ||
873
- isActiveSubscription(user.subscriptionStatus);
874
871
  const cleaned = cleanupObject({
875
872
  name: request.update.name,
876
873
  avatarUrl: request.update.avatarUrl,
877
874
  avatarPortraitUrl: request.update.avatarPortraitUrl,
878
875
  email: request.update.email,
879
876
  phoneNumber: request.update.phoneNumber,
880
- openAiKey: hasActiveSubscription
881
- ? request.update.openAiKey
882
- : undefined,
883
877
  });
884
- if (cleaned.openAiKey) {
885
- cleaned.openAiKey = formatV1OpenAiKey(cleaned.openAiKey);
886
- }
887
878
  yield this._store.saveUser(Object.assign(Object.assign({}, user), cleaned));
888
879
  return {
889
880
  success: true,
@@ -1 +1 @@
1
- {"version":3,"file":"AuthController.js","sourceRoot":"","sources":["AuthController.ts"],"names":[],"mappings":";;;;;;;;;AAQA,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EACH,+BAA+B,EAC/B,oBAAoB,EAEpB,2BAA2B,GAC9B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EACH,aAAa,EAEb,oBAAoB,EACpB,aAAa,GAGhB,MAAM,SAAS,CAAC;AACjB,OAAO,EACH,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,UAAU,GACb,MAAM,aAAa,CAAC;AAGrB;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,YAAY;AAEpE;;GAEG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,CAAC,CAAC,UAAU;AAE1D;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAC,CAAC,UAAU;AAEpD;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,CAAC,CAAC,UAAU;AAExD;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,UAAU;AAEvE;;GAEG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,+BAA+B,CAAC;AAE7E;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC;AAE5C;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,6BAA6B,CAAC;AAEvE;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CAAC;AAE5C;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAEzC;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAC;AAE9C;;GAEG;AACH,MAAM,OAAO,cAAc;IAMvB,YACI,SAAoB,EACpB,SAAwB,EACxB,kBAAoD,EACpD,iCAA0C,KAAK;QAE/C,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,mBAAmB,GAAG,kBAAkB,CAAC;QAC9C,IAAI,CAAC,+BAA+B,GAAG,8BAA8B,CAAC;IAC1E,CAAC;IAEK,YAAY,CAAC,OAAqB;;YACpC,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,KAAK,EAAE,EAAE;gBAC/D,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,sBAAsB;oBACjC,YAAY,EACR,oDAAoD;iBAC3D,CAAC;aACL;iBAAM,IACH,OAAO,OAAO,CAAC,WAAW,KAAK,QAAQ;gBACvC,CAAC,CACG,OAAO,CAAC,WAAW,KAAK,OAAO;oBAC/B,OAAO,CAAC,WAAW,KAAK,OAAO,CAClC,EACH;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,2BAA2B;oBACtC,YAAY,EACR,8FAA8F;iBACrG,CAAC;aACL;iBAAM,IACH,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ;gBACrC,OAAO,CAAC,SAAS,KAAK,EAAE,EAC1B;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,yBAAyB;oBACpC,YAAY,EACR,uDAAuD;iBAC9D,CAAC;aACL;YAED,IAAI,OAAO,CAAC,WAAW,KAAK,OAAO,EAAE;gBACjC,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,wBAAwB,EAAE;oBACnD,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,sBAAsB;wBACjC,YAAY,EAAE,mDAAmD,wBAAwB,mCAAmC;qBAC/H,CAAC;iBACL;aACJ;iBAAM,IAAI,OAAO,CAAC,WAAW,KAAK,OAAO,EAAE;gBACxC,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,sBAAsB,EAAE;oBACjD,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,sBAAsB;wBACjC,YAAY,EAAE,iDAAiD,sBAAsB,+BAA+B;qBACvH,CAAC;iBACL;aACJ;YAED,IAAI;gBACA,IAAI,OAAO,GAAG,KAAK,CAAC;gBACpB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,mBAAmB,CACvD,OAAO,CAAC,WAAW,CACtB,CAAC;gBACF,IAAI,CAAC,SAAS,EAAE;oBACZ,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,4BAA4B;wBACvC,YAAY,EACR,OAAO,CAAC,WAAW,KAAK,OAAO;4BAC3B,CAAC,CAAC,oCAAoC;4BACtC,CAAC,CAAC,iCAAiC;qBAC9C,CAAC;iBACL;gBAED,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAC1C,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,WAAW,CACtB,CAAC;gBACF,IAAI,CAAC,IAAI,EAAE;oBACP,OAAO,GAAG,IAAI,CAAC;oBACf,IAAI,GAAG;wBACH,EAAE,EAAE,IAAI,EAAE;wBACV,KAAK,EACD,OAAO,CAAC,WAAW,KAAK,OAAO;4BAC3B,CAAC,CAAC,OAAO,CAAC,OAAO;4BACjB,CAAC,CAAC,IAAI;wBACd,WAAW,EACP,OAAO,CAAC,WAAW,KAAK,OAAO;4BAC3B,CAAC,CAAC,OAAO,CAAC,OAAO;4BACjB,CAAC,CAAC,IAAI;wBACd,sBAAsB,EAAE,IAAI;wBAC5B,qBAAqB,EAAE,IAAI;qBAC9B,CAAC;oBAEF,IACI,CAAC,CAAC,MAAM,IAAI,CAAC,gBAAgB,CACzB,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,WAAW,CACtB,CAAC,EACJ;wBACE,OAAO,CAAC,GAAG,CACP,2FAA2F,OAAO,CAAC,WAAW,wBAAwB,CACzI,CAAC;wBACF,OAAO;4BACH,OAAO,EAAE,KAAK;4BACd,SAAS,EAAE,sBAAsB;4BACjC,YAAY,EAAE,oCAAoC;yBACrD,CAAC;qBACL;iBACJ;gBAED,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE;oBACpB,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,gBAAgB;wBAC3B,YAAY,EAAE,2BAA2B;wBACzC,SAAS,EAAE,IAAI,CAAC,SAAS;qBAC5B,CAAC;iBACL;gBAED,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC/B,MAAM,SAAS,GAAG,aAAa,CAC3B,WAAW,CAAC,4BAA4B,CAAC,CAC5C,CAAC;gBACF,MAAM,IAAI,GAAG,UAAU,EAAE,CAAC;gBAE1B,MAAM,IAAI,GAAG,oBAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;gBAEnD,MAAM,YAAY,GAAqB;oBACnC,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,SAAS,EAAE,SAAS;oBACpB,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,WAAW,EAAE,OAAO,CAAC,WAAW;oBAChC,YAAY,EAAE,CAAC;oBACf,aAAa,EAAE,WAAW;oBAC1B,YAAY,EAAE,WAAW,GAAG,yBAAyB;oBACrD,eAAe,EAAE,IAAI;oBACrB,SAAS,EAAE,OAAO,CAAC,SAAS;iBAC/B,CAAC;gBACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CACzC,YAAY,CAAC,OAAO,EACpB,YAAY,CAAC,WAAW,EACxB,IAAI,CACP,CAAC;gBAEF,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE;oBACzB,IAAI,OAAO,EAAE;wBACT,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;wBACnD,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE;4BAC1B,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CACtC,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,WAAW,CACtB,CAAC;4BACF,IAAI,CAAC,IAAI,EAAE;gCACP,OAAO,CAAC,GAAG,CACP,mFAAmF,CACtF,CAAC;gCACF,OAAO;oCACH,OAAO,EAAE,KAAK;oCACd,SAAS,EAAE,cAAc;oCACzB,YAAY,EACR,kCAAkC;iCACzC,CAAC;6BACL;4BACD,YAAY,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;yBACjC;qBACJ;oBACD,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;oBACjD,MAAM,IAAI,CAAC,MAAM,CAAC,sBAAsB,CACpC,YAAY,CAAC,MAAM,EACnB,YAAY,CAAC,SAAS,CACzB,CAAC;oBAEF,OAAO;wBACH,OAAO,EAAE,IAAI;wBACb,SAAS,EAAE,YAAY,CAAC,SAAS;wBACjC,MAAM,EAAE,YAAY,CAAC,MAAM;wBAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,WAAW,EAAE,OAAO,CAAC,WAAW;wBAChC,YAAY,EAAE,YAAY,CAAC,YAAY;qBAC1C,CAAC;iBACL;qBAAM;oBACH,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,MAAM,CAAC,SAAS;wBAC3B,YAAY,EAAE,MAAM,CAAC,YAAY;qBACpC,CAAC;iBACL;aACJ;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,KAAK,CACT,8DAA8D,EAC9D,GAAG,CACN,CAAC;gBACF,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,cAAc;oBACzB,YAAY,EAAE,0BAA0B;iBAC3C,CAAC;aACL;QACL,CAAC;KAAA;IAEa,gBAAgB,CAC1B,OAAe,EACf,WAAwB;;YAExB,IAAI;gBACA,MAAM,KAAK,GACP,WAAW,KAAK,OAAO;oBACnB,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE;oBACpC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;gBAE3C,IAAI,KAAK,EAAE;oBACP,OAAO,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;iBACxC;qBAAM;oBACH,OAAO,IAAI,CAAC;iBACf;aACJ;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,KAAK,CAAC;aAChB;QACL,CAAC;KAAA;IAEK,aAAa,CACf,OAA6B;;YAE7B,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE;gBAC7D,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,sBAAsB;oBACjC,YAAY,EACR,mDAAmD;iBAC1D,CAAC;aACL;iBAAM,IACH,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ;gBACrC,OAAO,CAAC,SAAS,KAAK,EAAE,EAC1B;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,yBAAyB;oBACpC,YAAY,EACR,sDAAsD;iBAC7D,CAAC;aACL;iBAAM,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,EAAE;gBAChE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,mBAAmB;oBAC9B,YAAY,EAAE,iDAAiD;iBAClE,CAAC;aACL;iBAAM,IACH,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ;gBACrC,OAAO,CAAC,SAAS,KAAK,EAAE,EAC1B;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,yBAAyB;oBACpC,YAAY,EACR,uDAAuD;iBAC9D,CAAC;aACL;YAED,IAAI;gBACA,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CACnD,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,SAAS,CACpB,CAAC;gBACF,IAAI,CAAC,YAAY,EAAE;oBACf,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,iBAAiB;wBAC5B,YAAY,EAAE,6BAA6B;qBAC9C,CAAC;iBACL;gBAED,IAAI,YAAY,GAAG,IAAI,CAAC;gBACxB,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,YAAY,CAAC,YAAY,EAAE;oBACzC,YAAY,GAAG,KAAK,CAAC;iBACxB;qBAAM,IAAI,YAAY,CAAC,eAAe,GAAG,CAAC,EAAE;oBACzC,YAAY,GAAG,KAAK,CAAC;iBACxB;qBAAM,IACH,YAAY,CAAC,YAAY,IAAI,0BAA0B,EACzD;oBACE,YAAY,GAAG,KAAK,CAAC;iBACxB;qBAAM,IAAI,YAAY,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS,EAAE;oBACrD,YAAY,GAAG,KAAK,CAAC;iBACxB;gBAED,IAAI,CAAC,YAAY,EAAE;oBACf,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,iBAAiB;wBAC5B,YAAY,EAAE,6BAA6B;qBAC9C,CAAC;iBACL;gBAED,IAAI,SAAS,GAAG,KAAK,CAAC;gBACtB,IAAI;oBACA,IACI,2BAA2B,CACvB,OAAO,CAAC,IAAI,EACZ,YAAY,CAAC,SAAS,EACtB,CAAC,YAAY,CAAC,UAAU,CAAC,CAC5B,EACH;wBACE,SAAS,GAAG,IAAI,CAAC;qBACpB;iBACJ;gBAAC,OAAO,GAAG,EAAE;oBACV,OAAO,CAAC,KAAK,CACT,oEAAoE,EACpE,GAAG,CACN,CAAC;iBACL;gBAED,IAAI,CAAC,SAAS,EAAE;oBACZ,MAAM,IAAI,CAAC,MAAM,CAAC,iCAAiC,CAC/C,YAAY,CAAC,MAAM,EACnB,YAAY,CAAC,SAAS,CACzB,CAAC;oBACF,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,cAAc;wBACzB,YAAY,EAAE,sBAAsB;qBACvC,CAAC;iBACL;gBAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gBAE7D,IAAI,CAAC,IAAI,EAAE;oBACP,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,iBAAiB;wBAC5B,YAAY,EAAE,6BAA6B;qBAC9C,CAAC;iBACL;gBAED,IAAI,IAAI,CAAC,qBAAqB,KAAK,YAAY,CAAC,SAAS,EAAE;oBACvD,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,iBAAiB;wBAC5B,YAAY,EAAE,6BAA6B;qBAC9C,CAAC;iBACL;gBAED,MAAM,SAAS,GAAG,aAAa,CAC3B,WAAW,CAAC,sBAAsB,CAAC,CACtC,CAAC;gBACF,MAAM,aAAa,GAAG,aAAa,CAC/B,WAAW,CAAC,0BAA0B,CAAC,CAC1C,CAAC;gBACF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAEvB,MAAM,OAAO,GAAgB;oBACzB,MAAM,EAAE,YAAY,CAAC,MAAM;oBAC3B,SAAS,EAAE,SAAS;oBACpB,SAAS,EAAE,YAAY,CAAC,SAAS;oBACjC,yEAAyE;oBACzE,qEAAqE;oBACrE,UAAU,EAAE,+BAA+B,CACvC,aAAa,EACb,SAAS,CACZ;oBACD,aAAa,EAAE,GAAG;oBAClB,YAAY,EAAE,IAAI;oBAClB,YAAY,EAAE,GAAG,GAAG,mBAAmB;oBACvC,iBAAiB,EAAE,IAAI;oBACvB,aAAa,EAAE,IAAI;oBACnB,SAAS,EAAE,OAAO,CAAC,SAAS;iBAC/B,CAAC;gBACF,MAAM,IAAI,CAAC,MAAM,CAAC,wBAAwB,CACtC,YAAY,CAAC,MAAM,EACnB,YAAY,CAAC,SAAS,EACtB,GAAG,CACN,CAAC;gBACF,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBAEvC,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,UAAU,EAAE,kBAAkB,CAC1B,YAAY,CAAC,MAAM,EACnB,SAAS,EACT,aAAa,EACb,OAAO,CAAC,YAAY,CACvB;oBACD,YAAY,EAAE,OAAO,CAAC,YAAY;iBACrC,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,KAAK,CACT,gEAAgE,EAChE,GAAG,CACN,CAAC;gBACF,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,cAAc;oBACzB,YAAY,EAAE,0BAA0B;iBAC3C,CAAC;aACL;QACL,CAAC;KAAA;IAEK,kBAAkB,CAAC,GAAW;;YAChC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,EAAE,EAAE;gBACvC,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,0BAA0B;oBACrC,YAAY,EACR,4EAA4E;iBACnF,CAAC;aACL;YACD,IAAI;gBACA,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;gBACvC,IAAI,CAAC,SAAS,EAAE;oBACZ,OAAO,CAAC,GAAG,CACP,4DAA4D,CAC/D,CAAC;oBACF,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,0BAA0B;wBACrC,YAAY,EACR,4EAA4E;qBACnF,CAAC;iBACL;gBAED,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,GAAG,SAAS,CAAC;gBACrD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;gBAEjE,IAAI,CAAC,OAAO,EAAE;oBACV,OAAO,CAAC,GAAG,CACP,+DAA+D,CAClE,CAAC;oBACF,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,aAAa;wBACxB,YAAY,EAAE,yBAAyB;qBAC1C,CAAC;iBACL;gBAED,IACI,CAAC,2BAA2B,CAAC,aAAa,EAAE,OAAO,CAAC,SAAS,EAAE;oBAC3D,OAAO,CAAC,UAAU;iBACrB,CAAC,EACJ;oBACE,OAAO,CAAC,GAAG,CACP,mEAAmE,CACtE,CAAC;oBACF,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,aAAa;wBACxB,YAAY,EAAE,yBAAyB;qBAC1C,CAAC;iBACL;gBAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACvB,IAAI,OAAO,CAAC,YAAY,IAAI,GAAG,IAAI,OAAO,CAAC,YAAY,EAAE;oBACrD,OAAO,CAAC,GAAG,CACP,iEAAiE,CACpE,CAAC;oBACF,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,aAAa;wBACxB,YAAY,EAAE,yBAAyB;qBAC1C,CAAC;iBACL;gBAED,IAAI,GAAG,IAAI,OAAO,CAAC,YAAY,EAAE;oBAC7B,OAAO,CAAC,GAAG,CACP,4DAA4D,CAC/D,CAAC;oBACF,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,iBAAiB;wBAC5B,YAAY,EAAE,0BAA0B;qBAC3C,CAAC;iBACL;gBAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAEpD,IAAI,CAAC,QAAQ,EAAE;oBACX,OAAO,CAAC,GAAG,CACP,4DAA4D,CAC/D,CAAC;oBACF,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,aAAa;wBACxB,YAAY,EAAE,yBAAyB;qBAC1C,CAAC;iBACL;qBAAM;oBACH,IAAI,OAAO,QAAQ,CAAC,sBAAsB,KAAK,QAAQ,EAAE;wBACrD,IACI,QAAQ,CAAC,sBAAsB,IAAI,OAAO,CAAC,aAAa,EAC1D;4BACE,OAAO;gCACH,OAAO,EAAE,KAAK;gCACd,SAAS,EAAE,aAAa;gCACxB,YAAY,EAAE,yBAAyB;6BAC1C,CAAC;yBACL;qBACJ;oBAED,IAAI,QAAQ,CAAC,SAAS,GAAG,CAAC,EAAE;wBACxB,OAAO;4BACH,OAAO,EAAE,KAAK;4BACd,SAAS,EAAE,gBAAgB;4BAC3B,YAAY,EAAE,2BAA2B;4BACzC,SAAS,EAAE,QAAQ,CAAC,SAAS;yBAChC,CAAC;qBACL;iBACJ;gBAED,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,GACtC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;gBAExC,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,wBAAwB,EAAE,QAAQ,CAAC,sBAAsB;oBAEzD,cAAc,EAAE,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,SAAS;oBAC3C,gBAAgB,EAAE,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI,SAAS;iBAClD,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,KAAK,CACT,+DAA+D,EAC/D,GAAG,CACN,CAAC;gBACF,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,cAAc;oBACzB,YAAY,EAAE,0BAA0B;iBAC3C,CAAC;aACL;QACL,CAAC;KAAA;IAEK,aAAa,CACf,OAA6B;;YAE7B,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE;gBAC7D,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,sBAAsB;oBACjC,YAAY,EACR,mDAAmD;iBAC1D,CAAC;aACL;iBAAM,IACH,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ;gBACrC,OAAO,CAAC,SAAS,KAAK,EAAE,EAC1B;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,yBAAyB;oBACpC,YAAY,EACR,sDAAsD;iBAC7D,CAAC;aACL;iBAAM,IACH,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ;gBACtC,OAAO,CAAC,UAAU,KAAK,EAAE,EAC3B;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,0BAA0B;oBACrC,YAAY,EACR,wDAAwD;iBAC/D,CAAC;aACL;YACD,IAAI;gBACA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBACpE,IAAI,SAAS,CAAC,OAAO,KAAK,KAAK,EAAE;oBAC7B,OAAO,SAAS,CAAC;iBACpB;qBAAM,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE;oBAC5C,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,aAAa;wBACxB,YAAY,EAAE,yBAAyB;qBAC1C,CAAC;iBACL;gBAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CACzC,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,SAAS,CACpB,CAAC;gBACF,IAAI,CAAC,OAAO,EAAE;oBACV,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,mBAAmB;wBAC9B,YAAY,EAAE,4BAA4B;qBAC7C,CAAC;iBACL;gBAED,IAAI,OAAO,CAAC,YAAY,EAAE;oBACtB,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,yBAAyB;wBACpC,YAAY,EAAE,uCAAuC;qBACxD,CAAC;iBACL;gBAED,MAAM,UAAU,mCACT,OAAO,KACV,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE,GAC3B,CAAC;gBAEF,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;gBAE1C,OAAO;oBACH,OAAO,EAAE,IAAI;iBAChB,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,KAAK,CACT,uDAAuD,EACvD,GAAG,CACN,CAAC;gBACF,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,cAAc;oBACzB,YAAY,EAAE,yBAAyB;iBAC1C,CAAC;aACL;QACL,CAAC;KAAA;IAED;;;OAGG;IACG,iBAAiB,CACnB,OAAiC;;YAEjC,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE;gBAC7D,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,sBAAsB;oBACjC,YAAY,EACR,mDAAmD;iBAC1D,CAAC;aACL;iBAAM,IACH,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ;gBACtC,OAAO,CAAC,UAAU,KAAK,EAAE,EAC3B;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,0BAA0B;oBACrC,YAAY,EACR,wDAAwD;iBAC/D,CAAC;aACL;YAED,IAAI;gBACA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBACpE,IAAI,SAAS,CAAC,OAAO,KAAK,KAAK,EAAE;oBAC7B,OAAO,SAAS,CAAC;iBACpB;qBAAM,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE;oBAC5C,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,aAAa;wBACxB,YAAY,EAAE,yBAAyB;qBAC1C,CAAC;iBACL;gBAED,MAAM,IAAI,CAAC,MAAM,CAAC,+BAA+B,CAC7C,OAAO,CAAC,MAAM,EACd,IAAI,CAAC,GAAG,EAAE,CACb,CAAC;gBAEF,OAAO;oBACH,OAAO,EAAE,IAAI;iBAChB,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,KAAK,CACT,4DAA4D,EAC5D,GAAG,CACN,CAAC;gBACF,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,cAAc;oBACzB,YAAY,EAAE,0BAA0B;iBAC3C,CAAC;aACL;QACL,CAAC;KAAA;IAED;;;OAGG;IACG,cAAc,CAChB,OAA8B;;YAE9B,IACI,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ;gBACtC,OAAO,CAAC,UAAU,KAAK,EAAE,EAC3B;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,0BAA0B;oBACrC,YAAY,EACR,uDAAuD;iBAC9D,CAAC;aACL;iBAAM,IACH,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ;gBACrC,OAAO,CAAC,SAAS,KAAK,EAAE,EAC1B;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,yBAAyB;oBACpC,YAAY,EACR,uDAAuD;iBAC9D,CAAC;aACL;YAED,IAAI;gBACA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAEpE,IAAI,SAAS,CAAC,OAAO,KAAK,KAAK,EAAE;oBAC7B,OAAO,SAAS,CAAC;iBACpB;gBAED,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;gBAChC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAEvB,MAAM,YAAY,GAAG,aAAa,CAC9B,WAAW,CAAC,sBAAsB,CAAC,CACtC,CAAC;gBACF,MAAM,gBAAgB,GAAG,aAAa,CAClC,WAAW,CAAC,0BAA0B,CAAC,CAC1C,CAAC;gBAEF,MAAM,UAAU,GAAgB;oBAC5B,MAAM,EAAE,MAAM;oBACd,SAAS,EAAE,YAAY;oBACvB,SAAS,EAAE,IAAI;oBACf,UAAU,EAAE,oBAAoB,CAC5B,gBAAgB,EAChB,YAAY,CACf;oBACD,aAAa,EAAE,GAAG;oBAClB,YAAY,EAAE,IAAI;oBAClB,YAAY,EAAE,GAAG,GAAG,mBAAmB;oBACvC,iBAAiB,EAAE,SAAS,CAAC,SAAS;oBACtC,aAAa,EAAE,IAAI;oBACnB,SAAS,EAAE,OAAO,CAAC,SAAS;iBAC/B,CAAC;gBAEF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CACzC,MAAM,EACN,SAAS,CAAC,SAAS,CACtB,CAAC;gBAEF,IAAI,CAAC,OAAO,EAAE;oBACV,OAAO,CAAC,GAAG,CACP,2DAA2D,CAC9D,CAAC;oBACF,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,aAAa;wBACxB,YAAY,EAAE,yBAAyB;qBAC1C,CAAC;iBACL;gBAED,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;gBAE3D,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,MAAM;oBACd,UAAU,EAAE,kBAAkB,CAC1B,MAAM,EACN,YAAY,EACZ,gBAAgB,EAChB,UAAU,CAAC,YAAY,CAC1B;oBACD,YAAY,EAAE,UAAU,CAAC,YAAY;iBACxC,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,KAAK,CACT,wDAAwD,EACxD,GAAG,CACN,CAAC;gBACF,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,cAAc;oBACzB,YAAY,EAAE,yBAAyB;iBAC1C,CAAC;aACL;QACL,CAAC;KAAA;IAED;;;OAGG;IACG,YAAY,CACd,OAA4B;;YAE5B,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE;gBAC7D,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,sBAAsB;oBACjC,YAAY,EACR,mDAAmD;iBAC1D,CAAC;aACL;iBAAM,IACH,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ;gBACxC,OAAO,CAAC,YAAY,KAAK,IAAI;gBAC7B,OAAO,OAAO,CAAC,YAAY,KAAK,WAAW,EAC7C;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,0BAA0B;oBACrC,YAAY,EACR,oEAAoE;iBAC3E,CAAC;aACL;iBAAM,IACH,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ;gBACtC,OAAO,CAAC,UAAU,KAAK,EAAE,EAC3B;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,0BAA0B;oBACrC,YAAY,EACR,wDAAwD;iBAC/D,CAAC;aACL;YAED,IAAI;gBACA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBACpE,IAAI,SAAS,CAAC,OAAO,KAAK,KAAK,EAAE;oBAC7B,OAAO,SAAS,CAAC;iBACpB;qBAAM,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE;oBAC5C,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,aAAa;wBACxB,YAAY,EAAE,yBAAyB;qBAC1C,CAAC;iBACL;gBAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CACzC,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,YAAY,CACvB,CAAC;gBAEF,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE;oBAC1B,OAAO,MAAM,CAAC;iBACjB;gBAED,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAClC,MAAM,EAAE,CAAC,CAAC,MAAM;wBAChB,SAAS,EAAE,CAAC,CAAC,SAAS;wBACtB,aAAa,EAAE,CAAC,CAAC,aAAa;wBAC9B,YAAY,EAAE,CAAC,CAAC,YAAY;wBAC5B,YAAY,EACR,SAAS,CAAC,wBAAwB,IAAI,CAAC,CAAC,aAAa;4BACrD,CAAC,CAAC,CAAC,CAAC,YAAY;gCACZ,CAAC,CAAC,YAAY,GAAG,SAAS,CAAC,wBAAwB,CAAC;4BACpD,CAAC,CAAC,SAAS,CAAC,wBAAwB;4BACpC,CAAC,CAAC,CAAC,CAAC,YAAY;wBACxB,cAAc,EAAE,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,SAAS;wBACnD,SAAS,EAAE,CAAC,CAAC,SAAS;wBACtB,aAAa,EAAE,CAAC,CAAC,aAAa;qBACjC,CAAC,CAAC;iBACN,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,KAAK,CACT,uDAAuD,EACvD,GAAG,CACN,CAAC;gBACF,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,cAAc;oBACzB,YAAY,EAAE,0BAA0B;iBAC3C,CAAC;aACL;QACL,CAAC;KAAA;IAED;;;OAGG;IACG,WAAW,CAAC,OAA2B;;YACzC,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE;gBAC7D,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,sBAAsB;oBACjC,YAAY,EACR,mDAAmD;iBAC1D,CAAC;aACL;iBAAM,IACH,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ;gBACtC,OAAO,CAAC,UAAU,KAAK,EAAE,EAC3B;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,0BAA0B;oBACrC,YAAY,EACR,wDAAwD;iBAC/D,CAAC;aACL;YAED,IAAI;gBACA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBACpE,IAAI,SAAS,CAAC,OAAO,KAAK,KAAK,EAAE;oBAC7B,OAAO,SAAS,CAAC;iBACpB;qBAAM,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE;oBAC5C,OAAO,CAAC,GAAG,CACP,kFAAkF,CACrF,CAAC;oBACF,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,aAAa;wBACxB,YAAY,EAAE,yBAAyB;qBAC1C,CAAC;iBACL;gBAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAE1D,IAAI,CAAC,MAAM,EAAE;oBACT,MAAM,IAAI,KAAK,CACX,oEAAoE,CACvE,CAAC;iBACL;gBAED,MAAM,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,IAAI,EAAE,GACnD,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;gBAEtC,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,MAAM,CAAC,EAAE;oBACjB,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;oBAC3C,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,qBAAqB,EAAE,qBAAqB;oBAC5C,gBAAgB,EAAE,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;oBACrD,SAAS,EAAE,qBAAqB,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;iBAC7D,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,KAAK,CACT,wDAAwD,EACxD,GAAG,CACN,CAAC;gBACF,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,cAAc;oBACzB,YAAY,EAAE,0BAA0B;iBAC3C,CAAC;aACL;QACL,CAAC;KAAA;IAEO,oBAAoB,CAAC,IAAc;;QACvC,MAAM,qBAAqB,GACvB,IAAI,CAAC,+BAA+B;YACpC,oBAAoB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAElD,IAAI,IAAI,GAAW,IAAI,CAAC;QACxB,IAAI,GAAG,GAAkD,IAAI,CAAC;QAC9D,IAAI,qBAAqB,EAAE;YACvB,IAAI,IAAI,CAAC,cAAc,EAAE;gBACrB,GAAG,GAAG,MAAA,IAAI,CAAC,mBAAmB,0CAAE,aAAa,CAAC,IAAI,CAC9C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,cAAc,CACtC,CAAC;aACL;YACD,IAAI,CAAC,GAAG,EAAE;gBACN,GAAG,GAAG,MAAA,IAAI,CAAC,mBAAmB,0CAAE,aAAa,CAAC,IAAI,CAC9C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAC/B,CAAC;gBACF,IAAI,GAAG,EAAE;oBACL,OAAO,CAAC,GAAG,CACP,qEAAqE,CACxE,CAAC;iBACL;aACJ;YAED,IAAI,CAAC,GAAG,EAAE;gBACN,GAAG,GAAG,MAAA,IAAI,CAAC,mBAAmB,0CAAE,aAAa,CAAC,CAAC,CAAC,CAAC;gBACjD,IAAI,GAAG,EAAE;oBACL,OAAO,CAAC,GAAG,CACP,mEAAmE,CACtE,CAAC;iBACL;aACJ;YAED,IAAI,GAAG,MAAM,CAAC;YACd,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE;gBACjB,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;aACnB;SACJ;QAED,OAAO;YACH,qBAAqB;YACrB,cAAc,EAAE,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,EAAE;YACvB,gBAAgB,EAAE,IAAI;SACzB,CAAC;IACN,CAAC;IAED;;;OAGG;IACG,cAAc,CAChB,OAA8B;;YAE9B,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE;gBAC7D,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,sBAAsB;oBACjC,YAAY,EACR,mDAAmD;iBAC1D,CAAC;aACL;iBAAM,IACH,OAAO,OAAO,CAAC,UAAU,KAAK,QAAQ;gBACtC,OAAO,CAAC,UAAU,KAAK,EAAE,EAC3B;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,0BAA0B;oBACrC,YAAY,EACR,wDAAwD;iBAC/D,CAAC;aACL;iBAAM,IACH,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ;gBAClC,OAAO,CAAC,MAAM,KAAK,IAAI;gBACvB,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAC/B;gBACE,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,qBAAqB;oBAChC,YAAY,EACR,oDAAoD;iBAC3D,CAAC;aACL;YAED,IAAI;gBACA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBACpE,IAAI,SAAS,CAAC,OAAO,KAAK,KAAK,EAAE;oBAC7B,OAAO,SAAS,CAAC;iBACpB;qBAAM,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE;oBAC5C,OAAO,CAAC,GAAG,CACP,qFAAqF,CACxF,CAAC;oBACF,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,SAAS,EAAE,aAAa;wBACxB,YAAY,EAAE,yBAAyB;qBAC1C,CAAC;iBACL;gBAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAExD,IAAI,CAAC,IAAI,EAAE;oBACP,MAAM,IAAI,KAAK,CACX,oEAAoE,CACvE,CAAC;iBACL;gBAED,MAAM,qBAAqB,GACvB,IAAI,CAAC,+BAA+B;oBACpC,oBAAoB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBAElD,MAAM,OAAO,GAAG,aAAa,CAAC;oBAC1B,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI;oBACzB,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS;oBACnC,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB;oBACnD,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK;oBAC3B,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW;oBACvC,SAAS,EAAE,qBAAqB;wBAC5B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS;wBAC1B,CAAC,CAAC,SAAS;iBAClB,CAAC,CAAC;gBAEH,IAAI,OAAO,CAAC,SAAS,EAAE;oBACnB,OAAO,CAAC,SAAS,GAAG,iBAAiB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;iBAC5D;gBAED,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,iCACnB,IAAI,GACJ,OAAO,EACZ,CAAC;gBAEH,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,IAAI,CAAC,EAAE;iBAClB,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,KAAK,CACT,wDAAwD,EACxD,GAAG,CACN,CAAC;gBACF,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,cAAc;oBACzB,YAAY,EAAE,0BAA0B;iBAC3C,CAAC;aACL;QACL,CAAC;KAAA;IAED;;OAEG;IACG,cAAc;;YAChB,IAAI;gBACA,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;gBAEjD,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,KAAK;iBACR,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,KAAK,CACT,0DAA0D,EAC1D,GAAG,CACN,CAAC;gBACF,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,cAAc;oBACzB,YAAY,EAAE,0BAA0B;iBAC3C,CAAC;aACL;QACL,CAAC;KAAA;IAED;;OAEG;IACG,YAAY;;YACd,IAAI;gBACA,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;gBAE/C,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,KAAK;iBACR,CAAC;aACL;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,KAAK,CACT,0DAA0D,EAC1D,GAAG,CACN,CAAC;gBACF,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,SAAS,EAAE,cAAc;oBACzB,YAAY,EAAE,0BAA0B;iBAC3C,CAAC;aACL;QACL,CAAC;KAAA;CACJ"}
1
+ {"version":3,"file":"AuthController.js","sourceRoot":"","sources":["AuthController.ts"],"names":[],"mappings":"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"}
package/AuthStore.d.ts CHANGED
@@ -109,10 +109,6 @@ export interface AuthUser {
109
109
  phoneNumber: string | null;
110
110
  avatarUrl?: string | null;
111
111
  avatarPortraitUrl?: string | null;
112
- /**
113
- * The OpenAI API Key that the user has configured in their account.
114
- */
115
- openAiKey?: string | null;
116
112
  /**
117
113
  * The ID of the stripe customer that is associated with this user.
118
114
  */
@@ -1,7 +1,12 @@
1
- import { ListedRecord, Record, RecordKey, RecordsStore } from './RecordsStore';
1
+ import { ListStudioAssignmentFilters, ListedRecord, ListedStudio, ListedStudioAssignment, ListedUserAssignment, Record, RecordKey, RecordsStore, Studio, StudioAssignment } from './RecordsStore';
2
+ import { AuthStore } from './AuthStore';
2
3
  export declare class MemoryRecordsStore implements RecordsStore {
3
4
  private _records;
4
5
  private _recordKeys;
6
+ private _studios;
7
+ private _studioAssignments;
8
+ private _auth;
9
+ constructor(auth: AuthStore);
5
10
  get recordKeys(): RecordKey[];
6
11
  getRecordByName(name: string): Promise<Record>;
7
12
  updateRecord(record: Record): Promise<void>;
@@ -9,5 +14,21 @@ export declare class MemoryRecordsStore implements RecordsStore {
9
14
  addRecordKey(key: RecordKey): Promise<void>;
10
15
  getRecordKeyByRecordAndHash(recordName: string, hash: string): Promise<RecordKey>;
11
16
  listRecordsByOwnerId(ownerId: string): Promise<ListedRecord[]>;
17
+ listRecordsByStudioId(studioId: string): Promise<ListedRecord[]>;
18
+ listRecordsByStudioIdAndUserId(studioId: string, userId: string): Promise<ListedRecord[]>;
19
+ addStudio(studio: Studio): Promise<void>;
20
+ createStudioForUser(studio: Studio, adminId: string): Promise<{
21
+ studio: Studio;
22
+ assignment: StudioAssignment;
23
+ }>;
24
+ updateStudio(studio: Studio): Promise<void>;
25
+ getStudioById(id: string): Promise<Studio>;
26
+ getStudioByStripeCustomerId(customerId: string): Promise<Studio>;
27
+ listStudiosForUser(userId: string): Promise<ListedStudio[]>;
28
+ addStudioAssignment(assignment: StudioAssignment): Promise<void>;
29
+ removeStudioAssignment(studioId: string, userId: string): Promise<void>;
30
+ updateStudioAssignment(assignment: StudioAssignment): Promise<void>;
31
+ listStudioAssignments(studioId: string, filters?: ListStudioAssignmentFilters): Promise<ListedStudioAssignment[]>;
32
+ listUserAssignments(userId: string): Promise<ListedUserAssignment[]>;
12
33
  }
13
34
  //# sourceMappingURL=MemoryRecordsStore.d.ts.map
@@ -9,9 +9,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  };
10
10
  import { sortBy } from 'lodash';
11
11
  export class MemoryRecordsStore {
12
- constructor() {
12
+ constructor(auth) {
13
13
  this._records = [];
14
14
  this._recordKeys = [];
15
+ this._studios = [];
16
+ this._studioAssignments = [];
17
+ this._auth = auth;
15
18
  }
16
19
  get recordKeys() {
17
20
  return this._recordKeys;
@@ -60,8 +63,166 @@ export class MemoryRecordsStore {
60
63
  .map((r) => ({
61
64
  name: r.name,
62
65
  ownerId: r.ownerId,
66
+ studioId: r.studioId,
63
67
  })), (r) => r.name);
64
68
  });
65
69
  }
70
+ listRecordsByStudioId(studioId) {
71
+ return __awaiter(this, void 0, void 0, function* () {
72
+ return sortBy(this._records
73
+ .filter((r) => r.studioId === studioId)
74
+ .map((r) => ({
75
+ name: r.name,
76
+ ownerId: r.ownerId,
77
+ studioId: r.studioId,
78
+ })), (r) => r.name);
79
+ });
80
+ }
81
+ listRecordsByStudioIdAndUserId(studioId, userId) {
82
+ return __awaiter(this, void 0, void 0, function* () {
83
+ return sortBy(this._records
84
+ .filter((s) => {
85
+ if (s.studioId !== studioId) {
86
+ return false;
87
+ }
88
+ const isAssigned = this._studioAssignments.some((a) => a.studioId === studioId && a.userId === userId);
89
+ return isAssigned;
90
+ })
91
+ .map((r) => ({
92
+ name: r.name,
93
+ ownerId: r.ownerId,
94
+ studioId: r.studioId,
95
+ })), (r) => r.name);
96
+ });
97
+ }
98
+ addStudio(studio) {
99
+ return __awaiter(this, void 0, void 0, function* () {
100
+ const existingStudioIndex = this._studios.findIndex((r) => r.id === studio.id);
101
+ if (existingStudioIndex < 0) {
102
+ this._studios.push(studio);
103
+ }
104
+ });
105
+ }
106
+ createStudioForUser(studio, adminId) {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ yield this.addStudio(studio);
109
+ const assignment = {
110
+ studioId: studio.id,
111
+ userId: adminId,
112
+ isPrimaryContact: true,
113
+ role: 'admin',
114
+ };
115
+ yield this.addStudioAssignment(assignment);
116
+ return {
117
+ studio,
118
+ assignment,
119
+ };
120
+ });
121
+ }
122
+ updateStudio(studio) {
123
+ return __awaiter(this, void 0, void 0, function* () {
124
+ const existingStudioIndex = this._studios.findIndex((r) => r.id === studio.id);
125
+ if (existingStudioIndex >= 0) {
126
+ this._studios[existingStudioIndex] = studio;
127
+ }
128
+ });
129
+ }
130
+ getStudioById(id) {
131
+ return __awaiter(this, void 0, void 0, function* () {
132
+ return this._studios.find((s) => s.id === id);
133
+ });
134
+ }
135
+ getStudioByStripeCustomerId(customerId) {
136
+ return __awaiter(this, void 0, void 0, function* () {
137
+ return this._studios.find((s) => s.stripeCustomerId === customerId);
138
+ });
139
+ }
140
+ listStudiosForUser(userId) {
141
+ return __awaiter(this, void 0, void 0, function* () {
142
+ const assignments = yield this.listUserAssignments(userId);
143
+ const studios = yield Promise.all(assignments.map((a) => __awaiter(this, void 0, void 0, function* () {
144
+ const s = yield this.getStudioById(a.studioId);
145
+ return Object.assign(Object.assign({}, s), a);
146
+ })));
147
+ return studios.map((s) => ({
148
+ studioId: s.id,
149
+ displayName: s.displayName,
150
+ role: s.role,
151
+ isPrimaryContact: s.isPrimaryContact,
152
+ }));
153
+ });
154
+ }
155
+ addStudioAssignment(assignment) {
156
+ return __awaiter(this, void 0, void 0, function* () {
157
+ const existingAssignmentIndex = this._studioAssignments.findIndex((r) => r.studioId === assignment.studioId &&
158
+ r.userId === assignment.userId);
159
+ if (existingAssignmentIndex < 0) {
160
+ this._studioAssignments.push(assignment);
161
+ }
162
+ });
163
+ }
164
+ removeStudioAssignment(studioId, userId) {
165
+ return __awaiter(this, void 0, void 0, function* () {
166
+ this._studioAssignments = this._studioAssignments.filter((s) => s.studioId !== studioId || s.userId !== userId);
167
+ });
168
+ }
169
+ updateStudioAssignment(assignment) {
170
+ return __awaiter(this, void 0, void 0, function* () {
171
+ const existingAssignmentIndex = this._studioAssignments.findIndex((r) => r.studioId === assignment.studioId &&
172
+ r.userId === assignment.userId);
173
+ if (existingAssignmentIndex >= 0) {
174
+ this._studioAssignments[existingAssignmentIndex] = assignment;
175
+ }
176
+ });
177
+ }
178
+ listStudioAssignments(studioId, filters) {
179
+ return __awaiter(this, void 0, void 0, function* () {
180
+ const assignments = this._studioAssignments.filter((s) => {
181
+ const matchesRole = !(filters === null || filters === void 0 ? void 0 : filters.role) || s.role === filters.role;
182
+ const matchesPrimaryContact = !(filters === null || filters === void 0 ? void 0 : filters.isPrimaryContact) ||
183
+ s.isPrimaryContact === filters.isPrimaryContact;
184
+ const matchesUserId = !(filters === null || filters === void 0 ? void 0 : filters.userId) || s.userId === filters.userId;
185
+ return (s.studioId === studioId &&
186
+ matchesRole &&
187
+ matchesPrimaryContact &&
188
+ matchesUserId);
189
+ });
190
+ let results = [];
191
+ for (let s of assignments) {
192
+ const user = yield this._auth.findUser(s.userId);
193
+ if (!user) {
194
+ continue;
195
+ }
196
+ results.push({
197
+ studioId: s.studioId,
198
+ userId: s.userId,
199
+ isPrimaryContact: s.isPrimaryContact,
200
+ role: s.role,
201
+ user: {
202
+ id: user.id,
203
+ name: user.name,
204
+ email: user.email,
205
+ phoneNumber: user.phoneNumber,
206
+ },
207
+ });
208
+ }
209
+ return results;
210
+ });
211
+ }
212
+ listUserAssignments(userId) {
213
+ return __awaiter(this, void 0, void 0, function* () {
214
+ const assignments = this._studioAssignments.filter((s) => s.userId === userId);
215
+ return assignments.map((s) => {
216
+ const studio = this._studios.find((studio) => studio.id === s.studioId);
217
+ return {
218
+ displayName: studio.displayName,
219
+ studioId: s.studioId,
220
+ userId: s.userId,
221
+ isPrimaryContact: s.isPrimaryContact,
222
+ role: s.role,
223
+ };
224
+ });
225
+ });
226
+ }
66
227
  }
67
228
  //# sourceMappingURL=MemoryRecordsStore.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MemoryRecordsStore.js","sourceRoot":"","sources":["MemoryRecordsStore.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,MAAM,OAAO,kBAAkB;IAA/B;QACY,aAAQ,GAAa,EAAE,CAAC;QACxB,gBAAW,GAAgB,EAAE,CAAC;IA6D1C,CAAC;IA3DG,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAEK,eAAe,CAAC,IAAY;;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAC1D,OAAO,MAAM,CAAC;QAClB,CAAC;KAAA;IAEK,YAAY,CAAC,MAAc;;YAC7B,MAAM,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAC/C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAChC,CAAC;YACF,IAAI,mBAAmB,IAAI,CAAC,EAAE;gBAC1B,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,GAAG,MAAM,CAAC;aAC/C;QACL,CAAC;KAAA;IAEK,SAAS,CAAC,MAAc;;YAC1B,MAAM,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAC/C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAChC,CAAC;YACF,IAAI,mBAAmB,GAAG,CAAC,EAAE;gBACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC9B;QACL,CAAC;KAAA;IAEK,YAAY,CAAC,GAAc;;YAC7B,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAC/C,CAAC,CAAC,EAAE,EAAE,CACF,CAAC,CAAC,UAAU,KAAK,GAAG,CAAC,UAAU;gBAC/B,CAAC,CAAC,UAAU,KAAK,GAAG,CAAC,UAAU,CACtC,CAAC;YACF,IAAI,gBAAgB,GAAG,CAAC,EAAE;gBACtB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAC9B;QACL,CAAC;KAAA;IAEK,2BAA2B,CAC7B,UAAkB,EAClB,IAAY;;YAEZ,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAC7B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,IAAI,CAAC,CAAC,UAAU,IAAI,IAAI,CAC7D,CAAC;YACF,OAAO,GAAG,CAAC;QACf,CAAC;KAAA;IAEK,oBAAoB,CAAC,OAAe;;YACtC,OAAO,MAAM,CACT,IAAI,CAAC,QAAQ;iBACR,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC;iBACpC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACT,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;aACrB,CAAC,CAAC,EACP,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAChB,CAAC;QACN,CAAC;KAAA;CACJ"}
1
+ {"version":3,"file":"MemoryRecordsStore.js","sourceRoot":"","sources":["MemoryRecordsStore.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { AuthController } from './AuthController';
2
2
  import { RecordsController, ValidatePublicRecordKeyFailure, ValidatePublicRecordKeyResult } from './RecordsController';
3
3
  import { NotSupportedError, ServerError } from './Errors';
4
4
  import { AvailablePermissions, PolicyDocument } from './PolicyPermissions';
5
- import { PublicRecordKeyPolicy } from './RecordsStore';
5
+ import { ListedStudioAssignment, PublicRecordKeyPolicy } from './RecordsStore';
6
6
  import { AssignedRole, GetUserPolicyFailure, ListedUserPolicy, PolicyStore, RoleAssignment, UpdateUserPolicyFailure, UpdateUserRolesFailure } from './PolicyStore';
7
7
  /**
8
8
  * The maximum number of instances that can be authorized at once.
@@ -205,6 +205,7 @@ export declare class PolicyController {
205
205
  private _byFile;
206
206
  private _byEvent;
207
207
  private _byRecordOwner;
208
+ private _byStudioRole;
208
209
  private _byEveryoneRole;
209
210
  private _byAdminRole;
210
211
  private _bySubjectRole;
@@ -251,6 +252,8 @@ export interface AuthorizationContext {
251
252
  recordKeyProvided: boolean;
252
253
  recordName: string;
253
254
  recordOwnerId: string;
255
+ recordStudioId: string;
256
+ recordStudioMembers?: ListedStudioAssignment[];
254
257
  subjectPolicy: PublicRecordKeyPolicy;
255
258
  }
256
259
  export interface RolesContext<T extends AuthorizeRequestBase> extends AuthorizationContext {
@@ -68,6 +68,8 @@ export class PolicyController {
68
68
  let recordKeyResult = null;
69
69
  let recordName;
70
70
  let ownerId;
71
+ let studioId;
72
+ let studioMembers = undefined;
71
73
  const recordKeyProvided = isRecordKey(request.recordKeyOrRecordName);
72
74
  if (recordKeyProvided) {
73
75
  recordKeyResult = yield this._records.validatePublicRecordKey(request.recordKeyOrRecordName);
@@ -94,6 +96,8 @@ export class PolicyController {
94
96
  }
95
97
  recordName = result.recordName;
96
98
  ownerId = result.ownerId;
99
+ studioId = result.studioId;
100
+ studioMembers = result.studioMembers;
97
101
  }
98
102
  const subjectPolicy = !!recordKeyResult && recordKeyResult.success
99
103
  ? recordKeyResult.policy
@@ -104,6 +108,8 @@ export class PolicyController {
104
108
  subjectPolicy,
105
109
  recordKeyProvided,
106
110
  recordOwnerId: ownerId,
111
+ recordStudioId: studioId,
112
+ recordStudioMembers: studioMembers,
107
113
  };
108
114
  return {
109
115
  success: true,
@@ -1927,7 +1933,7 @@ export class PolicyController {
1927
1933
  let denialReason;
1928
1934
  for (let marker of context.markers) {
1929
1935
  const actionPermission = yield this._findPermissionByFilter(marker.permissions, this._every(this._byPolicy('policy.grantPermission', context.request.policy), role === null
1930
- ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id))
1936
+ ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id), this._byStudioRole(context, type, id, 'admin'))
1931
1937
  : this._byRole(role)));
1932
1938
  if (!actionPermission) {
1933
1939
  denialReason = {
@@ -1983,7 +1989,7 @@ export class PolicyController {
1983
1989
  let denialReason;
1984
1990
  for (let marker of context.markers) {
1985
1991
  const actionPermission = yield this._findPermissionByFilter(marker.permissions, this._every(this._byPolicy('policy.revokePermission', context.request.policy), role === null
1986
- ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id))
1992
+ ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id), this._byStudioRole(context, type, id, 'admin'))
1987
1993
  : this._byRole(role)));
1988
1994
  if (!actionPermission) {
1989
1995
  denialReason = {
@@ -2039,7 +2045,7 @@ export class PolicyController {
2039
2045
  let denialReason;
2040
2046
  for (let marker of context.markers) {
2041
2047
  const actionPermission = yield this._findPermissionByFilter(marker.permissions, this._every(this._byPolicy('policy.read', context.request.policy), role === null
2042
- ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id))
2048
+ ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id), this._byStudioRole(context, type, id, 'admin'))
2043
2049
  : this._byRole(role)));
2044
2050
  if (!actionPermission) {
2045
2051
  denialReason = {
@@ -2095,7 +2101,7 @@ export class PolicyController {
2095
2101
  let denialReason;
2096
2102
  for (let marker of context.markers) {
2097
2103
  const actionPermission = yield this._findPermissionByFilter(marker.permissions, this._every(this._byPolicyList('policy.list'), role === null
2098
- ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id))
2104
+ ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id), this._byStudioRole(context, type, id, 'admin'))
2099
2105
  : this._byRole(role)));
2100
2106
  if (!actionPermission) {
2101
2107
  denialReason = {
@@ -2151,7 +2157,7 @@ export class PolicyController {
2151
2157
  let denialReason;
2152
2158
  for (let marker of context.markers) {
2153
2159
  const actionPermission = yield this._findPermissionByFilter(marker.permissions, this._every(this._byRoleList('role.list'), role === null
2154
- ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id))
2160
+ ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id), this._byStudioRole(context, type, id, 'admin'))
2155
2161
  : this._byRole(role)));
2156
2162
  if (!actionPermission) {
2157
2163
  denialReason = {
@@ -2207,7 +2213,7 @@ export class PolicyController {
2207
2213
  let denialReason;
2208
2214
  for (let marker of context.markers) {
2209
2215
  const actionPermission = yield this._findPermissionByFilter(marker.permissions, this._every(this._byRolePermission('role.read', context.request.role), role === null
2210
- ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id))
2216
+ ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id), this._byStudioRole(context, type, id, 'admin'))
2211
2217
  : this._byRole(role)));
2212
2218
  if (!actionPermission) {
2213
2219
  denialReason = {
@@ -2264,7 +2270,7 @@ export class PolicyController {
2264
2270
  const durationMs = getExpireTime(context.request.expireTimeMs) - Date.now();
2265
2271
  for (let marker of context.markers) {
2266
2272
  const actionPermission = yield this._findPermissionByFilter(marker.permissions, this._every(this._byRoleGrant('role.grant', context.request.role, context.request.targetUserId, context.request.targetInstance, durationMs), role === null
2267
- ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id))
2273
+ ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id), this._byStudioRole(context, type, id, 'admin'))
2268
2274
  : this._byRole(role)));
2269
2275
  if (!actionPermission) {
2270
2276
  denialReason = {
@@ -2320,7 +2326,7 @@ export class PolicyController {
2320
2326
  let denialReason;
2321
2327
  for (let marker of context.markers) {
2322
2328
  const actionPermission = yield this._findPermissionByFilter(marker.permissions, this._every(this._byRoleRevoke('role.revoke', context.request.role, context.request.targetUserId, context.request.targetInstance), role === null
2323
- ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id))
2329
+ ? this._some(this._byEveryoneRole(), this._bySubjectRole(context, type, context.recordName, id), this._byRecordOwner(context, type, id), this._byStudioRole(context, type, id, 'admin'))
2324
2330
  : this._byRole(role)));
2325
2331
  if (!actionPermission) {
2326
2332
  denialReason = {
@@ -2582,6 +2588,22 @@ export class PolicyController {
2582
2588
  }
2583
2589
  return () => __awaiter(this, void 0, void 0, function* () { return false; });
2584
2590
  }
2591
+ _byStudioRole(context, subjectType, id, role) {
2592
+ if (subjectType === 'inst') {
2593
+ return () => __awaiter(this, void 0, void 0, function* () { return false; });
2594
+ }
2595
+ if (!context.recordStudioId ||
2596
+ !context.recordStudioMembers ||
2597
+ context.recordStudioMembers.length <= 0) {
2598
+ return () => __awaiter(this, void 0, void 0, function* () { return false; });
2599
+ }
2600
+ if (role) {
2601
+ return () => __awaiter(this, void 0, void 0, function* () {
2602
+ return context.recordStudioMembers.some((m) => m.userId === id && m.role === role);
2603
+ });
2604
+ }
2605
+ return () => __awaiter(this, void 0, void 0, function* () { return context.recordStudioMembers.some((m) => m.userId === id); });
2606
+ }
2585
2607
  _byEveryoneRole() {
2586
2608
  return this._byRole(true);
2587
2609
  }
@@ -2589,6 +2611,9 @@ export class PolicyController {
2589
2611
  if (!!context.recordKeyResult && context.recordKeyResult.success) {
2590
2612
  return this._byRole(ADMIN_ROLE_NAME);
2591
2613
  }
2614
+ else if (context.recordStudioId) {
2615
+ return this._byStudioRole(context, subjectType, id);
2616
+ }
2592
2617
  else {
2593
2618
  return this._byRecordOwner(context, subjectType, id);
2594
2619
  }