@djangocfg/api 2.1.88 → 2.1.90

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.
Files changed (53) hide show
  1. package/dist/auth-server.cjs +335 -320
  2. package/dist/auth-server.cjs.map +1 -1
  3. package/dist/auth-server.mjs +335 -320
  4. package/dist/auth-server.mjs.map +1 -1
  5. package/dist/auth.cjs +464 -394
  6. package/dist/auth.cjs.map +1 -1
  7. package/dist/auth.d.cts +1 -1
  8. package/dist/auth.d.ts +1 -1
  9. package/dist/auth.mjs +464 -394
  10. package/dist/auth.mjs.map +1 -1
  11. package/dist/clients.cjs +460 -383
  12. package/dist/clients.cjs.map +1 -1
  13. package/dist/clients.d.cts +26 -6
  14. package/dist/clients.d.ts +26 -6
  15. package/dist/clients.mjs +460 -383
  16. package/dist/clients.mjs.map +1 -1
  17. package/dist/hooks.cjs +130 -105
  18. package/dist/hooks.cjs.map +1 -1
  19. package/dist/hooks.d.cts +24 -4
  20. package/dist/hooks.d.ts +24 -4
  21. package/dist/hooks.mjs +130 -105
  22. package/dist/hooks.mjs.map +1 -1
  23. package/dist/index.cjs +373 -311
  24. package/dist/index.cjs.map +1 -1
  25. package/dist/index.d.cts +54 -8
  26. package/dist/index.d.ts +54 -8
  27. package/dist/index.mjs +373 -311
  28. package/dist/index.mjs.map +1 -1
  29. package/package.json +3 -3
  30. package/src/auth/context/AccountsContext.tsx +3 -3
  31. package/src/auth/hooks/useTokenRefresh.ts +4 -10
  32. package/src/auth/middlewares/tokenRefresh.ts +4 -15
  33. package/src/generated/cfg_accounts/CLAUDE.md +2 -9
  34. package/src/generated/cfg_accounts/_utils/fetchers/accounts__user_profile.ts +2 -1
  35. package/src/generated/cfg_accounts/_utils/hooks/accounts__user_profile.ts +2 -1
  36. package/src/generated/cfg_accounts/_utils/schemas/CfgAccountsProfileAvatarCreateRequest.schema.ts +15 -0
  37. package/src/generated/cfg_accounts/_utils/schemas/index.ts +1 -0
  38. package/src/generated/cfg_accounts/accounts/models.ts +0 -1
  39. package/src/generated/cfg_accounts/accounts__user_profile/client.ts +4 -2
  40. package/src/generated/cfg_accounts/accounts__user_profile/models.ts +9 -1
  41. package/src/generated/cfg_accounts/client.ts +18 -0
  42. package/src/generated/cfg_accounts/index.ts +3 -1
  43. package/src/generated/cfg_accounts/schema.json +2 -2
  44. package/src/generated/cfg_centrifugo/CLAUDE.md +1 -8
  45. package/src/generated/cfg_centrifugo/client.ts +18 -0
  46. package/src/generated/cfg_centrifugo/index.ts +3 -1
  47. package/src/generated/cfg_totp/CLAUDE.md +1 -8
  48. package/src/generated/cfg_totp/client.ts +18 -0
  49. package/src/generated/cfg_totp/index.ts +3 -1
  50. package/src/generated/cfg_totp/totp/models.ts +2 -0
  51. package/src/generated/cfg_webpush/CLAUDE.md +1 -8
  52. package/src/generated/cfg_webpush/client.ts +18 -0
  53. package/src/generated/cfg_webpush/index.ts +3 -1
package/dist/hooks.cjs CHANGED
@@ -159,7 +159,9 @@ var UserProfile = class {
159
159
  * multipart/form-data with 'avatar' field.
160
160
  */
161
161
  async accountsProfileAvatarCreate(data) {
162
- const response = await this.client.request("POST", "/cfg/accounts/profile/avatar/", { formData: data });
162
+ const formData = new FormData();
163
+ formData.append("avatar", data.avatar);
164
+ const response = await this.client.request("POST", "/cfg/accounts/profile/avatar/", { formData });
163
165
  return response;
164
166
  }
165
167
  /**
@@ -595,8 +597,10 @@ var APIClient = class {
595
597
  constructor(baseUrl, options) {
596
598
  this.logger = null;
597
599
  this.retryConfig = null;
600
+ this.tokenGetter = null;
598
601
  this.baseUrl = baseUrl.replace(/\/$/, "");
599
602
  this.httpClient = options?.httpClient || new FetchAdapter();
603
+ this.tokenGetter = options?.tokenGetter || null;
600
604
  if (options?.loggerConfig !== void 0) {
601
605
  this.logger = new APILogger(options.loggerConfig);
602
606
  }
@@ -625,6 +629,19 @@ var APIClient = class {
625
629
  }
626
630
  return null;
627
631
  }
632
+ /**
633
+ * Get the base URL for building streaming/download URLs.
634
+ */
635
+ getBaseUrl() {
636
+ return this.baseUrl;
637
+ }
638
+ /**
639
+ * Get JWT token for URL authentication (used in streaming endpoints).
640
+ * Returns null if no token getter is configured or no token is available.
641
+ */
642
+ getToken() {
643
+ return this.tokenGetter ? this.tokenGetter() : null;
644
+ }
628
645
  /**
629
646
  * Make HTTP request with Django CSRF and session handling.
630
647
  * Automatically retries on network errors and 5xx server errors.
@@ -865,161 +882,167 @@ var CentrifugoTokenSchema = import_zod2.z.object({
865
882
  channels: import_zod2.z.array(import_zod2.z.string())
866
883
  });
867
884
 
868
- // src/generated/cfg_accounts/_utils/schemas/OAuthAuthorizeRequestRequest.schema.ts
885
+ // src/generated/cfg_accounts/_utils/schemas/CfgAccountsProfileAvatarCreateRequest.schema.ts
869
886
  var import_zod3 = require("zod");
870
- var OAuthAuthorizeRequestRequestSchema = import_zod3.z.object({
871
- redirect_uri: import_zod3.z.union([import_zod3.z.url(), import_zod3.z.literal("")]).optional(),
872
- source_url: import_zod3.z.union([import_zod3.z.url(), import_zod3.z.literal("")]).optional()
887
+ var CfgAccountsProfileAvatarCreateRequestSchema = import_zod3.z.object({
888
+ avatar: import_zod3.z.union([import_zod3.z.instanceof(File), import_zod3.z.instanceof(Blob)])
873
889
  });
874
890
 
875
- // src/generated/cfg_accounts/_utils/schemas/OAuthAuthorizeResponse.schema.ts
891
+ // src/generated/cfg_accounts/_utils/schemas/OAuthAuthorizeRequestRequest.schema.ts
876
892
  var import_zod4 = require("zod");
877
- var OAuthAuthorizeResponseSchema = import_zod4.z.object({
878
- authorization_url: import_zod4.z.union([import_zod4.z.url(), import_zod4.z.literal("")]),
879
- state: import_zod4.z.string()
893
+ var OAuthAuthorizeRequestRequestSchema = import_zod4.z.object({
894
+ redirect_uri: import_zod4.z.union([import_zod4.z.url(), import_zod4.z.literal("")]).optional(),
895
+ source_url: import_zod4.z.union([import_zod4.z.url(), import_zod4.z.literal("")]).optional()
880
896
  });
881
897
 
882
- // src/generated/cfg_accounts/_utils/schemas/OAuthCallbackRequestRequest.schema.ts
898
+ // src/generated/cfg_accounts/_utils/schemas/OAuthAuthorizeResponse.schema.ts
883
899
  var import_zod5 = require("zod");
884
- var OAuthCallbackRequestRequestSchema = import_zod5.z.object({
885
- code: import_zod5.z.string().min(10).max(500),
886
- state: import_zod5.z.string().min(20).max(100),
887
- redirect_uri: import_zod5.z.union([import_zod5.z.url(), import_zod5.z.literal("")]).optional()
900
+ var OAuthAuthorizeResponseSchema = import_zod5.z.object({
901
+ authorization_url: import_zod5.z.union([import_zod5.z.url(), import_zod5.z.literal("")]),
902
+ state: import_zod5.z.string()
888
903
  });
889
904
 
890
- // src/generated/cfg_accounts/_utils/schemas/OAuthConnection.schema.ts
905
+ // src/generated/cfg_accounts/_utils/schemas/OAuthCallbackRequestRequest.schema.ts
891
906
  var import_zod6 = require("zod");
892
- var OAuthConnectionSchema = import_zod6.z.object({
893
- id: import_zod6.z.int(),
894
- provider: import_zod6.z.nativeEnum(OAuthConnectionProvider),
895
- provider_display: import_zod6.z.string(),
896
- provider_username: import_zod6.z.string(),
897
- provider_email: import_zod6.z.email(),
898
- provider_avatar_url: import_zod6.z.union([import_zod6.z.url(), import_zod6.z.literal("")]),
899
- connected_at: import_zod6.z.iso.datetime(),
900
- last_login_at: import_zod6.z.iso.datetime()
907
+ var OAuthCallbackRequestRequestSchema = import_zod6.z.object({
908
+ code: import_zod6.z.string().min(10).max(500),
909
+ state: import_zod6.z.string().min(20).max(100),
910
+ redirect_uri: import_zod6.z.union([import_zod6.z.url(), import_zod6.z.literal("")]).optional()
901
911
  });
902
912
 
903
- // src/generated/cfg_accounts/_utils/schemas/OAuthDisconnectRequestRequest.schema.ts
913
+ // src/generated/cfg_accounts/_utils/schemas/OAuthConnection.schema.ts
904
914
  var import_zod7 = require("zod");
905
- var OAuthDisconnectRequestRequestSchema = import_zod7.z.object({
906
- provider: import_zod7.z.nativeEnum(OAuthDisconnectRequestRequestProvider)
915
+ var OAuthConnectionSchema = import_zod7.z.object({
916
+ id: import_zod7.z.int(),
917
+ provider: import_zod7.z.nativeEnum(OAuthConnectionProvider),
918
+ provider_display: import_zod7.z.string(),
919
+ provider_username: import_zod7.z.string(),
920
+ provider_email: import_zod7.z.email(),
921
+ provider_avatar_url: import_zod7.z.union([import_zod7.z.url(), import_zod7.z.literal("")]),
922
+ connected_at: import_zod7.z.iso.datetime(),
923
+ last_login_at: import_zod7.z.iso.datetime()
907
924
  });
908
925
 
909
- // src/generated/cfg_accounts/_utils/schemas/OAuthError.schema.ts
926
+ // src/generated/cfg_accounts/_utils/schemas/OAuthDisconnectRequestRequest.schema.ts
910
927
  var import_zod8 = require("zod");
911
- var OAuthErrorSchema = import_zod8.z.object({
912
- error: import_zod8.z.string(),
913
- error_description: import_zod8.z.string().optional()
928
+ var OAuthDisconnectRequestRequestSchema = import_zod8.z.object({
929
+ provider: import_zod8.z.nativeEnum(OAuthDisconnectRequestRequestProvider)
914
930
  });
915
931
 
916
- // src/generated/cfg_accounts/_utils/schemas/OAuthProvidersResponse.schema.ts
932
+ // src/generated/cfg_accounts/_utils/schemas/OAuthError.schema.ts
917
933
  var import_zod9 = require("zod");
918
- var OAuthProvidersResponseSchema = import_zod9.z.object({
919
- providers: import_zod9.z.array(import_zod9.z.record(import_zod9.z.string(), import_zod9.z.any()))
934
+ var OAuthErrorSchema = import_zod9.z.object({
935
+ error: import_zod9.z.string(),
936
+ error_description: import_zod9.z.string().optional()
920
937
  });
921
938
 
922
- // src/generated/cfg_accounts/_utils/schemas/OAuthTokenResponse.schema.ts
939
+ // src/generated/cfg_accounts/_utils/schemas/OAuthProvidersResponse.schema.ts
923
940
  var import_zod10 = require("zod");
924
- var OAuthTokenResponseSchema = import_zod10.z.object({
925
- requires_2fa: import_zod10.z.boolean().optional(),
926
- session_id: import_zod10.z.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i).nullable().optional(),
927
- access: import_zod10.z.string().nullable().optional(),
928
- refresh: import_zod10.z.string().nullable().optional(),
929
- user: import_zod10.z.record(import_zod10.z.string(), import_zod10.z.any()).nullable().optional(),
930
- is_new_user: import_zod10.z.boolean(),
931
- is_new_connection: import_zod10.z.boolean(),
932
- should_prompt_2fa: import_zod10.z.boolean().optional()
941
+ var OAuthProvidersResponseSchema = import_zod10.z.object({
942
+ providers: import_zod10.z.array(import_zod10.z.record(import_zod10.z.string(), import_zod10.z.any()))
933
943
  });
934
944
 
935
- // src/generated/cfg_accounts/_utils/schemas/OTPErrorResponse.schema.ts
945
+ // src/generated/cfg_accounts/_utils/schemas/OAuthTokenResponse.schema.ts
936
946
  var import_zod11 = require("zod");
937
- var OTPErrorResponseSchema = import_zod11.z.object({
938
- error: import_zod11.z.string()
947
+ var OAuthTokenResponseSchema = import_zod11.z.object({
948
+ requires_2fa: import_zod11.z.boolean().optional(),
949
+ session_id: import_zod11.z.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i).nullable().optional(),
950
+ access: import_zod11.z.string().nullable().optional(),
951
+ refresh: import_zod11.z.string().nullable().optional(),
952
+ user: import_zod11.z.record(import_zod11.z.string(), import_zod11.z.any()).nullable().optional(),
953
+ is_new_user: import_zod11.z.boolean(),
954
+ is_new_connection: import_zod11.z.boolean(),
955
+ should_prompt_2fa: import_zod11.z.boolean().optional()
939
956
  });
940
957
 
941
- // src/generated/cfg_accounts/_utils/schemas/OTPRequestRequest.schema.ts
958
+ // src/generated/cfg_accounts/_utils/schemas/OTPErrorResponse.schema.ts
942
959
  var import_zod12 = require("zod");
943
- var OTPRequestRequestSchema = import_zod12.z.object({
944
- identifier: import_zod12.z.string().min(1),
945
- channel: import_zod12.z.nativeEnum(OTPRequestRequestChannel).optional(),
946
- source_url: import_zod12.z.union([import_zod12.z.url(), import_zod12.z.literal("")]).optional()
960
+ var OTPErrorResponseSchema = import_zod12.z.object({
961
+ error: import_zod12.z.string()
947
962
  });
948
963
 
949
- // src/generated/cfg_accounts/_utils/schemas/OTPRequestResponse.schema.ts
964
+ // src/generated/cfg_accounts/_utils/schemas/OTPRequestRequest.schema.ts
950
965
  var import_zod13 = require("zod");
951
- var OTPRequestResponseSchema = import_zod13.z.object({
952
- message: import_zod13.z.string()
966
+ var OTPRequestRequestSchema = import_zod13.z.object({
967
+ identifier: import_zod13.z.string().min(1),
968
+ channel: import_zod13.z.nativeEnum(OTPRequestRequestChannel).optional(),
969
+ source_url: import_zod13.z.union([import_zod13.z.url(), import_zod13.z.literal("")]).optional()
953
970
  });
954
971
 
955
- // src/generated/cfg_accounts/_utils/schemas/OTPVerifyRequest.schema.ts
972
+ // src/generated/cfg_accounts/_utils/schemas/OTPRequestResponse.schema.ts
956
973
  var import_zod14 = require("zod");
957
- var OTPVerifyRequestSchema = import_zod14.z.object({
958
- identifier: import_zod14.z.string().min(1),
959
- otp: import_zod14.z.string().min(6).max(6),
960
- channel: import_zod14.z.nativeEnum(OTPVerifyRequestChannel).optional(),
961
- source_url: import_zod14.z.union([import_zod14.z.url(), import_zod14.z.literal("")]).optional()
974
+ var OTPRequestResponseSchema = import_zod14.z.object({
975
+ message: import_zod14.z.string()
976
+ });
977
+
978
+ // src/generated/cfg_accounts/_utils/schemas/OTPVerifyRequest.schema.ts
979
+ var import_zod15 = require("zod");
980
+ var OTPVerifyRequestSchema = import_zod15.z.object({
981
+ identifier: import_zod15.z.string().min(1),
982
+ otp: import_zod15.z.string().min(6).max(6),
983
+ channel: import_zod15.z.nativeEnum(OTPVerifyRequestChannel).optional(),
984
+ source_url: import_zod15.z.union([import_zod15.z.url(), import_zod15.z.literal("")]).optional()
962
985
  });
963
986
 
964
987
  // src/generated/cfg_accounts/_utils/schemas/OTPVerifyResponse.schema.ts
965
- var import_zod16 = require("zod");
988
+ var import_zod17 = require("zod");
966
989
 
967
990
  // src/generated/cfg_accounts/_utils/schemas/User.schema.ts
968
- var import_zod15 = require("zod");
969
- var UserSchema = import_zod15.z.object({
970
- id: import_zod15.z.int(),
971
- email: import_zod15.z.email(),
972
- first_name: import_zod15.z.string().max(50).optional(),
973
- last_name: import_zod15.z.string().max(50).optional(),
974
- full_name: import_zod15.z.string(),
975
- initials: import_zod15.z.string(),
976
- display_username: import_zod15.z.string(),
977
- company: import_zod15.z.string().max(100).optional(),
978
- phone: import_zod15.z.string().max(20).optional(),
979
- position: import_zod15.z.string().max(100).optional(),
980
- avatar: import_zod15.z.union([import_zod15.z.url(), import_zod15.z.literal("")]).nullable(),
981
- is_staff: import_zod15.z.boolean(),
982
- is_superuser: import_zod15.z.boolean(),
983
- date_joined: import_zod15.z.iso.datetime(),
984
- last_login: import_zod15.z.iso.datetime().nullable(),
985
- unanswered_messages_count: import_zod15.z.int(),
991
+ var import_zod16 = require("zod");
992
+ var UserSchema = import_zod16.z.object({
993
+ id: import_zod16.z.int(),
994
+ email: import_zod16.z.email(),
995
+ first_name: import_zod16.z.string().max(50).optional(),
996
+ last_name: import_zod16.z.string().max(50).optional(),
997
+ full_name: import_zod16.z.string(),
998
+ initials: import_zod16.z.string(),
999
+ display_username: import_zod16.z.string(),
1000
+ company: import_zod16.z.string().max(100).optional(),
1001
+ phone: import_zod16.z.string().max(20).optional(),
1002
+ position: import_zod16.z.string().max(100).optional(),
1003
+ avatar: import_zod16.z.union([import_zod16.z.url(), import_zod16.z.literal("")]).nullable(),
1004
+ is_staff: import_zod16.z.boolean(),
1005
+ is_superuser: import_zod16.z.boolean(),
1006
+ date_joined: import_zod16.z.iso.datetime(),
1007
+ last_login: import_zod16.z.iso.datetime().nullable(),
1008
+ unanswered_messages_count: import_zod16.z.int(),
986
1009
  centrifugo: CentrifugoTokenSchema.nullable()
987
1010
  });
988
1011
 
989
1012
  // src/generated/cfg_accounts/_utils/schemas/OTPVerifyResponse.schema.ts
990
- var OTPVerifyResponseSchema = import_zod16.z.object({
991
- requires_2fa: import_zod16.z.boolean().optional(),
992
- session_id: import_zod16.z.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i).nullable().optional(),
993
- refresh: import_zod16.z.string().nullable().optional(),
994
- access: import_zod16.z.string().nullable().optional(),
1013
+ var OTPVerifyResponseSchema = import_zod17.z.object({
1014
+ requires_2fa: import_zod17.z.boolean().optional(),
1015
+ session_id: import_zod17.z.string().regex(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i).nullable().optional(),
1016
+ refresh: import_zod17.z.string().nullable().optional(),
1017
+ access: import_zod17.z.string().nullable().optional(),
995
1018
  user: UserSchema.nullable().optional(),
996
- should_prompt_2fa: import_zod16.z.boolean().optional()
1019
+ should_prompt_2fa: import_zod17.z.boolean().optional()
997
1020
  });
998
1021
 
999
1022
  // src/generated/cfg_accounts/_utils/schemas/PatchedUserProfileUpdateRequest.schema.ts
1000
- var import_zod17 = require("zod");
1001
- var PatchedUserProfileUpdateRequestSchema = import_zod17.z.object({
1002
- first_name: import_zod17.z.string().max(50).optional(),
1003
- last_name: import_zod17.z.string().max(50).optional(),
1004
- company: import_zod17.z.string().max(100).optional(),
1005
- phone: import_zod17.z.string().max(20).optional(),
1006
- position: import_zod17.z.string().max(100).optional()
1023
+ var import_zod18 = require("zod");
1024
+ var PatchedUserProfileUpdateRequestSchema = import_zod18.z.object({
1025
+ first_name: import_zod18.z.string().max(50).optional(),
1026
+ last_name: import_zod18.z.string().max(50).optional(),
1027
+ company: import_zod18.z.string().max(100).optional(),
1028
+ phone: import_zod18.z.string().max(20).optional(),
1029
+ position: import_zod18.z.string().max(100).optional()
1007
1030
  });
1008
1031
 
1009
1032
  // src/generated/cfg_accounts/_utils/schemas/TokenRefreshRequest.schema.ts
1010
- var import_zod18 = require("zod");
1011
- var TokenRefreshRequestSchema = import_zod18.z.object({
1012
- refresh: import_zod18.z.string().min(1)
1033
+ var import_zod19 = require("zod");
1034
+ var TokenRefreshRequestSchema = import_zod19.z.object({
1035
+ refresh: import_zod19.z.string().min(1)
1013
1036
  });
1014
1037
 
1015
1038
  // src/generated/cfg_accounts/_utils/schemas/UserProfileUpdateRequest.schema.ts
1016
- var import_zod19 = require("zod");
1017
- var UserProfileUpdateRequestSchema = import_zod19.z.object({
1018
- first_name: import_zod19.z.string().max(50).optional(),
1019
- last_name: import_zod19.z.string().max(50).optional(),
1020
- company: import_zod19.z.string().max(100).optional(),
1021
- phone: import_zod19.z.string().max(20).optional(),
1022
- position: import_zod19.z.string().max(100).optional()
1039
+ var import_zod20 = require("zod");
1040
+ var UserProfileUpdateRequestSchema = import_zod20.z.object({
1041
+ first_name: import_zod20.z.string().max(50).optional(),
1042
+ last_name: import_zod20.z.string().max(50).optional(),
1043
+ company: import_zod20.z.string().max(100).optional(),
1044
+ phone: import_zod20.z.string().max(20).optional(),
1045
+ position: import_zod20.z.string().max(100).optional()
1023
1046
  });
1024
1047
 
1025
1048
  // src/generated/cfg_accounts/_utils/fetchers/accounts.ts
@@ -1530,7 +1553,8 @@ var API = class {
1530
1553
  this._loadTokensFromStorage();
1531
1554
  this._client = new APIClient(this.baseUrl, {
1532
1555
  retryConfig: this.options?.retryConfig,
1533
- loggerConfig: this.options?.loggerConfig
1556
+ loggerConfig: this.options?.loggerConfig,
1557
+ tokenGetter: /* @__PURE__ */ __name(() => this.getToken(), "tokenGetter")
1534
1558
  });
1535
1559
  this._injectAuthHeader();
1536
1560
  this.auth = this._client.auth;
@@ -1548,7 +1572,8 @@ var API = class {
1548
1572
  _reinitClients() {
1549
1573
  this._client = new APIClient(this.baseUrl, {
1550
1574
  retryConfig: this.options?.retryConfig,
1551
- loggerConfig: this.options?.loggerConfig
1575
+ loggerConfig: this.options?.loggerConfig,
1576
+ tokenGetter: /* @__PURE__ */ __name(() => this.getToken(), "tokenGetter")
1552
1577
  });
1553
1578
  this._injectAuthHeader();
1554
1579
  this.auth = this._client.auth;