@djangocfg/monitor 2.1.327 → 2.1.332

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 (59) hide show
  1. package/dist/client.cjs +239 -147
  2. package/dist/client.cjs.map +1 -1
  3. package/dist/client.d.cts +9 -9
  4. package/dist/client.d.ts +9 -9
  5. package/dist/client.mjs +239 -147
  6. package/dist/client.mjs.map +1 -1
  7. package/dist/index.cjs +217 -146
  8. package/dist/index.cjs.map +1 -1
  9. package/dist/index.d.cts +9 -9
  10. package/dist/index.d.ts +9 -9
  11. package/dist/index.mjs +217 -146
  12. package/dist/index.mjs.map +1 -1
  13. package/dist/server.cjs +237 -145
  14. package/dist/server.cjs.map +1 -1
  15. package/dist/server.d.cts +9 -9
  16. package/dist/server.d.ts +9 -9
  17. package/dist/server.mjs +237 -145
  18. package/dist/server.mjs.map +1 -1
  19. package/package.json +2 -2
  20. package/src/_api/BaseClient.ts +2 -2
  21. package/src/_api/generated/_cfg_monitor/api.ts +67 -0
  22. package/src/_api/generated/{cfg_monitor → _cfg_monitor}/events.ts +3 -3
  23. package/src/_api/generated/{cfg_monitor → _cfg_monitor}/hooks/index.ts +1 -1
  24. package/src/_api/generated/{cfg_monitor → _cfg_monitor}/hooks/useCfgMonitorIngestCreate.ts +3 -3
  25. package/src/_api/generated/{cfg_monitor → _cfg_monitor}/index.ts +6 -6
  26. package/src/_api/generated/{cfg_monitor → _cfg_monitor}/schemas/EventTypeEnum.ts +2 -2
  27. package/src/_api/generated/_cfg_monitor/schemas/FrontendEventIngestRequest.ts +27 -0
  28. package/src/_api/generated/{cfg_monitor → _cfg_monitor}/schemas/IngestBatchRequest.ts +2 -2
  29. package/src/_api/generated/{cfg_monitor → _cfg_monitor}/schemas/LevelEnum.ts +2 -2
  30. package/src/_api/generated/_cfg_monitor/sdk.gen.ts +5 -0
  31. package/src/_api/generated/_cfg_monitor/types.gen.ts +5 -0
  32. package/src/_api/generated/{cfg_monitor/client.gen.ts → client.gen.ts} +3 -0
  33. package/src/_api/generated/helpers/auth.ts +223 -0
  34. package/src/_api/generated/{_shared → helpers}/index.ts +1 -0
  35. package/src/_api/generated/index.ts +16 -12
  36. package/src/_api/index.ts +2 -2
  37. package/src/client/transport/ingest.ts +1 -1
  38. package/src/server/index.ts +1 -1
  39. package/src/_api/generated/cfg_monitor/api.ts +0 -122
  40. package/src/_api/generated/cfg_monitor/schemas/FrontendEventIngestRequest.ts +0 -27
  41. package/src/_api/generated/{cfg_monitor → _cfg_monitor}/schemas/index.ts +0 -0
  42. package/src/_api/generated/{cfg_monitor/client → client}/client.gen.ts +0 -0
  43. package/src/_api/generated/{cfg_monitor/client → client}/index.ts +0 -0
  44. package/src/_api/generated/{cfg_monitor/client → client}/types.gen.ts +0 -0
  45. package/src/_api/generated/{cfg_monitor/client → client}/utils.gen.ts +0 -0
  46. package/src/_api/generated/{cfg_monitor/core → core}/auth.gen.ts +0 -0
  47. package/src/_api/generated/{cfg_monitor/core → core}/bodySerializer.gen.ts +0 -0
  48. package/src/_api/generated/{cfg_monitor/core → core}/params.gen.ts +0 -0
  49. package/src/_api/generated/{cfg_monitor/core → core}/pathSerializer.gen.ts +0 -0
  50. package/src/_api/generated/{cfg_monitor/core → core}/queryKeySerializer.gen.ts +0 -0
  51. package/src/_api/generated/{cfg_monitor/core → core}/serverSentEvents.gen.ts +0 -0
  52. package/src/_api/generated/{cfg_monitor/core → core}/types.gen.ts +0 -0
  53. package/src/_api/generated/{cfg_monitor/core → core}/utils.gen.ts +0 -0
  54. package/src/_api/generated/{_shared → helpers}/errors.ts +0 -0
  55. package/src/_api/generated/{_shared → helpers}/logger.ts +0 -0
  56. package/src/_api/generated/{_shared → helpers}/storage.ts +0 -0
  57. package/src/_api/generated/{_shared → helpers}/validation-events.ts +0 -0
  58. package/src/_api/generated/{cfg_monitor/sdk.gen.ts → sdk.gen.ts} +0 -0
  59. package/src/_api/generated/{cfg_monitor/types.gen.ts → types.gen.ts} +9 -9
package/dist/index.cjs CHANGED
@@ -27,12 +27,12 @@ __export(index_exports, {
27
27
  });
28
28
  module.exports = __toCommonJS(index_exports);
29
29
 
30
- // src/_api/generated/cfg_monitor/core/bodySerializer.gen.ts
30
+ // src/_api/generated/core/bodySerializer.gen.ts
31
31
  var jsonBodySerializer = {
32
32
  bodySerializer: /* @__PURE__ */ __name((body) => JSON.stringify(body, (_key, value) => typeof value === "bigint" ? value.toString() : value), "bodySerializer")
33
33
  };
34
34
 
35
- // src/_api/generated/cfg_monitor/core/params.gen.ts
35
+ // src/_api/generated/core/params.gen.ts
36
36
  var extraPrefixesMap = {
37
37
  $body_: "body",
38
38
  $headers_: "headers",
@@ -41,7 +41,7 @@ var extraPrefixesMap = {
41
41
  };
42
42
  var extraPrefixes = Object.entries(extraPrefixesMap);
43
43
 
44
- // src/_api/generated/cfg_monitor/core/serverSentEvents.gen.ts
44
+ // src/_api/generated/core/serverSentEvents.gen.ts
45
45
  function createSseClient({
46
46
  onRequest,
47
47
  onSseError,
@@ -169,7 +169,7 @@ function createSseClient({
169
169
  }
170
170
  __name(createSseClient, "createSseClient");
171
171
 
172
- // src/_api/generated/cfg_monitor/core/pathSerializer.gen.ts
172
+ // src/_api/generated/core/pathSerializer.gen.ts
173
173
  var separatorArrayExplode = /* @__PURE__ */ __name((style) => {
174
174
  switch (style) {
175
175
  case "label":
@@ -293,7 +293,7 @@ var serializeObjectParam = /* @__PURE__ */ __name(({
293
293
  return style === "label" || style === "matrix" ? separator + joinedValues : joinedValues;
294
294
  }, "serializeObjectParam");
295
295
 
296
- // src/_api/generated/cfg_monitor/core/utils.gen.ts
296
+ // src/_api/generated/core/utils.gen.ts
297
297
  var PATH_PARAM_RE = /\{[^{}]+\}/g;
298
298
  var defaultPathSerializer = /* @__PURE__ */ __name(({ path, url: _url }) => {
299
299
  let url = _url;
@@ -391,22 +391,22 @@ function getValidRequestBody(options) {
391
391
  }
392
392
  __name(getValidRequestBody, "getValidRequestBody");
393
393
 
394
- // src/_api/generated/cfg_monitor/core/auth.gen.ts
395
- var getAuthToken = /* @__PURE__ */ __name(async (auth, callback) => {
396
- const token = typeof callback === "function" ? await callback(auth) : callback;
394
+ // src/_api/generated/core/auth.gen.ts
395
+ var getAuthToken = /* @__PURE__ */ __name(async (auth2, callback) => {
396
+ const token = typeof callback === "function" ? await callback(auth2) : callback;
397
397
  if (!token) {
398
398
  return;
399
399
  }
400
- if (auth.scheme === "bearer") {
400
+ if (auth2.scheme === "bearer") {
401
401
  return `Bearer ${token}`;
402
402
  }
403
- if (auth.scheme === "basic") {
403
+ if (auth2.scheme === "basic") {
404
404
  return `Basic ${btoa(token)}`;
405
405
  }
406
406
  return token;
407
407
  }, "getAuthToken");
408
408
 
409
- // src/_api/generated/cfg_monitor/client/utils.gen.ts
409
+ // src/_api/generated/client/utils.gen.ts
410
410
  var createQuerySerializer = /* @__PURE__ */ __name(({
411
411
  parameters = {},
412
412
  ...args
@@ -489,16 +489,16 @@ var setAuthParams = /* @__PURE__ */ __name(async ({
489
489
  security,
490
490
  ...options
491
491
  }) => {
492
- for (const auth of security) {
493
- if (checkForExistence(options, auth.name)) {
492
+ for (const auth2 of security) {
493
+ if (checkForExistence(options, auth2.name)) {
494
494
  continue;
495
495
  }
496
- const token = await getAuthToken(auth, options.auth);
496
+ const token = await getAuthToken(auth2, options.auth);
497
497
  if (!token) {
498
498
  continue;
499
499
  }
500
- const name = auth.name ?? "Authorization";
501
- switch (auth.in) {
500
+ const name = auth2.name ?? "Authorization";
501
+ switch (auth2.in) {
502
502
  case "query":
503
503
  if (!options.query) {
504
504
  options.query = {};
@@ -626,7 +626,7 @@ var createConfig = /* @__PURE__ */ __name((override = {}) => ({
626
626
  ...override
627
627
  }), "createConfig");
628
628
 
629
- // src/_api/generated/cfg_monitor/client/client.gen.ts
629
+ // src/_api/generated/client/client.gen.ts
630
630
  var createClient = /* @__PURE__ */ __name((config = {}) => {
631
631
  let _config = mergeConfigs(createConfig(), config);
632
632
  const getConfig = /* @__PURE__ */ __name(() => ({ ..._config }), "getConfig");
@@ -824,64 +824,211 @@ var createClient = /* @__PURE__ */ __name((config = {}) => {
824
824
  };
825
825
  }, "createClient");
826
826
 
827
- // src/_api/generated/cfg_monitor/client.gen.ts
827
+ // src/_api/generated/client.gen.ts
828
828
  var client = createClient(createConfig({ baseUrl: "http://localhost:8000" }));
829
829
 
830
- // src/_api/generated/_shared/storage.ts
831
- var _LocalStorageAdapter = class _LocalStorageAdapter {
832
- getItem(key) {
833
- if (typeof window === "undefined") return null;
830
+ // src/_api/generated/helpers/auth.ts
831
+ var ACCESS_KEY = "cfg.access_token";
832
+ var REFRESH_KEY = "cfg.refresh_token";
833
+ var API_KEY_KEY = "cfg.api_key";
834
+ var isBrowser = typeof window !== "undefined";
835
+ var localStorageBackend = {
836
+ get(key) {
837
+ if (!isBrowser) return null;
834
838
  try {
835
839
  return window.localStorage.getItem(key);
836
840
  } catch {
837
841
  return null;
838
842
  }
839
- }
840
- setItem(key, value) {
841
- if (typeof window === "undefined") return;
843
+ },
844
+ set(key, value) {
845
+ if (!isBrowser) return;
842
846
  try {
843
- window.localStorage.setItem(key, value);
847
+ if (value === null) window.localStorage.removeItem(key);
848
+ else window.localStorage.setItem(key, value);
844
849
  } catch {
845
850
  }
846
851
  }
847
- removeItem(key) {
848
- if (typeof window === "undefined") return;
852
+ };
853
+ var COOKIE_MAX_AGE = 60 * 60 * 24 * 30;
854
+ var cookieBackend = {
855
+ get(key) {
856
+ if (!isBrowser) return null;
849
857
  try {
850
- window.localStorage.removeItem(key);
858
+ const re = new RegExp(`(?:^|;\\s*)${encodeURIComponent(key)}=([^;]*)`);
859
+ const m = document.cookie.match(re);
860
+ return m ? decodeURIComponent(m[1]) : null;
851
861
  } catch {
862
+ return null;
852
863
  }
853
- }
854
- clear() {
855
- if (typeof window === "undefined") return;
864
+ },
865
+ set(key, value) {
866
+ if (!isBrowser) return;
856
867
  try {
857
- window.localStorage.clear();
868
+ const k = encodeURIComponent(key);
869
+ const secure = window.location.protocol === "https:" ? "; Secure" : "";
870
+ if (value === null) {
871
+ document.cookie = `${k}=; Path=/; Max-Age=0; SameSite=Lax${secure}`;
872
+ } else {
873
+ const v = encodeURIComponent(value);
874
+ document.cookie = `${k}=${v}; Path=/; Max-Age=${COOKIE_MAX_AGE}; SameSite=Lax${secure}`;
875
+ }
858
876
  } catch {
859
877
  }
860
878
  }
861
879
  };
862
- __name(_LocalStorageAdapter, "LocalStorageAdapter");
863
- var LocalStorageAdapter = _LocalStorageAdapter;
864
- var _MemoryStorageAdapter = class _MemoryStorageAdapter {
865
- constructor() {
866
- __publicField(this, "store", /* @__PURE__ */ new Map());
867
- }
868
- getItem(key) {
869
- return this.store.get(key) ?? null;
880
+ var _storage = localStorageBackend;
881
+ var _storageMode = "localStorage";
882
+ function detectLocale() {
883
+ try {
884
+ if (typeof document !== "undefined") {
885
+ const m = document.cookie.match(/(?:^|;\s*)NEXT_LOCALE=([^;]*)/);
886
+ if (m) return decodeURIComponent(m[1]);
887
+ }
888
+ if (typeof navigator !== "undefined" && navigator.language) {
889
+ return navigator.language;
890
+ }
891
+ } catch {
870
892
  }
871
- setItem(key, value) {
872
- this.store.set(key, value);
893
+ return null;
894
+ }
895
+ __name(detectLocale, "detectLocale");
896
+ function defaultBaseUrl() {
897
+ try {
898
+ if (typeof process !== "undefined" && process.env) {
899
+ if (process.env.NEXT_PUBLIC_STATIC_BUILD === "true") return "";
900
+ return process.env.NEXT_PUBLIC_API_URL || "";
901
+ }
902
+ } catch {
873
903
  }
874
- removeItem(key) {
875
- this.store.delete(key);
904
+ return "";
905
+ }
906
+ __name(defaultBaseUrl, "defaultBaseUrl");
907
+ function defaultApiKey() {
908
+ try {
909
+ if (typeof process !== "undefined" && process.env?.NEXT_PUBLIC_API_KEY) {
910
+ return process.env.NEXT_PUBLIC_API_KEY;
911
+ }
912
+ } catch {
876
913
  }
877
- clear() {
878
- this.store.clear();
914
+ return null;
915
+ }
916
+ __name(defaultApiKey, "defaultApiKey");
917
+ var _localeOverride = null;
918
+ var _apiKeyOverride = null;
919
+ var _baseUrlOverride = null;
920
+ var _withCredentials = true;
921
+ var _onUnauthorized = null;
922
+ var auth = {
923
+ // ── Storage mode ──────────────────────────────────────────────────
924
+ getStorageMode() {
925
+ return _storageMode;
926
+ },
927
+ /**
928
+ * Switch the storage backend. Existing values in the *previous*
929
+ * backend are NOT migrated — set fresh values after switching.
930
+ */
931
+ setStorageMode(mode) {
932
+ _storageMode = mode;
933
+ _storage = mode === "cookie" ? cookieBackend : localStorageBackend;
934
+ },
935
+ // ── Bearer token ──────────────────────────────────────────────────
936
+ getToken() {
937
+ return _storage.get(ACCESS_KEY);
938
+ },
939
+ setToken(token) {
940
+ _storage.set(ACCESS_KEY, token);
941
+ },
942
+ getRefreshToken() {
943
+ return _storage.get(REFRESH_KEY);
944
+ },
945
+ setRefreshToken(token) {
946
+ _storage.set(REFRESH_KEY, token);
947
+ },
948
+ clearTokens() {
949
+ _storage.set(ACCESS_KEY, null);
950
+ _storage.set(REFRESH_KEY, null);
951
+ },
952
+ isAuthenticated() {
953
+ return _storage.get(ACCESS_KEY) !== null;
954
+ },
955
+ // ── API key ───────────────────────────────────────────────────────
956
+ /** In-memory API key. Falls back to storage, then NEXT_PUBLIC_API_KEY. */
957
+ getApiKey() {
958
+ return _apiKeyOverride ?? _storage.get(API_KEY_KEY) ?? defaultApiKey();
959
+ },
960
+ /** In-memory only (cleared on reload). */
961
+ setApiKey(key) {
962
+ _apiKeyOverride = key;
963
+ },
964
+ /** Persist to active storage backend (localStorage or cookie). */
965
+ setApiKeyPersist(key) {
966
+ _apiKeyOverride = key;
967
+ _storage.set(API_KEY_KEY, key);
968
+ },
969
+ clearApiKey() {
970
+ _apiKeyOverride = null;
971
+ _storage.set(API_KEY_KEY, null);
972
+ },
973
+ // ── Locale ────────────────────────────────────────────────────────
974
+ /** Override locale → falls back to NEXT_LOCALE cookie / navigator.language. */
975
+ getLocale() {
976
+ return _localeOverride ?? detectLocale();
977
+ },
978
+ setLocale(locale) {
979
+ _localeOverride = locale;
980
+ },
981
+ // ── Base URL ──────────────────────────────────────────────────────
982
+ getBaseUrl() {
983
+ const url = _baseUrlOverride ?? defaultBaseUrl();
984
+ return url.replace(/\/$/, "");
985
+ },
986
+ setBaseUrl(url) {
987
+ _baseUrlOverride = url ? url.replace(/\/$/, "") : null;
988
+ client.setConfig({ baseUrl: this.getBaseUrl() });
989
+ },
990
+ // ── Credentials toggle (Django session/CSRF cross-origin) ─────────
991
+ getWithCredentials() {
992
+ return _withCredentials;
993
+ },
994
+ setWithCredentials(value) {
995
+ _withCredentials = value;
996
+ client.setConfig({ credentials: value ? "include" : "same-origin" });
997
+ },
998
+ // ── 401 handler ───────────────────────────────────────────────────
999
+ /**
1000
+ * Register a callback fired on every 401 response. Use this to wire
1001
+ * a token-refresh flow or a forced logout. Setting `null` removes
1002
+ * the handler.
1003
+ */
1004
+ onUnauthorized(cb) {
1005
+ _onUnauthorized = cb;
879
1006
  }
880
1007
  };
881
- __name(_MemoryStorageAdapter, "MemoryStorageAdapter");
882
- var MemoryStorageAdapter = _MemoryStorageAdapter;
1008
+ client.setConfig({
1009
+ baseUrl: auth.getBaseUrl(),
1010
+ credentials: _withCredentials ? "include" : "same-origin"
1011
+ });
1012
+ client.interceptors.request.use((request) => {
1013
+ const token = auth.getToken();
1014
+ if (token) request.headers.set("Authorization", `Bearer ${token}`);
1015
+ const locale = auth.getLocale();
1016
+ if (locale) request.headers.set("Accept-Language", locale);
1017
+ const apiKey = auth.getApiKey();
1018
+ if (apiKey) request.headers.set("X-API-Key", apiKey);
1019
+ return request;
1020
+ });
1021
+ client.interceptors.response.use((response) => {
1022
+ if (response.status === 401 && _onUnauthorized) {
1023
+ try {
1024
+ _onUnauthorized(response);
1025
+ } catch {
1026
+ }
1027
+ }
1028
+ return response;
1029
+ });
883
1030
 
884
- // src/_api/generated/_shared/logger.ts
1031
+ // src/_api/generated/helpers/logger.ts
885
1032
  var import_consola = require("consola");
886
1033
  var DEFAULT_CONFIG = {
887
1034
  enabled: typeof process !== "undefined" && process.env.NODE_ENV !== "production",
@@ -974,139 +1121,63 @@ __name(_APILogger, "APILogger");
974
1121
  var APILogger = _APILogger;
975
1122
  var defaultLogger = new APILogger();
976
1123
 
977
- // src/_api/generated/cfg_monitor/sdk.gen.ts
978
- var _Cfg = class _Cfg {
979
- /**
980
- * Ingest browser events
981
- *
982
- * Accepts a batch of up to 50 frontend events. No authentication required — anonymous visitors can send events.
983
- */
984
- static cfgMonitorIngestCreate(options) {
985
- return (options.client ?? client).post({
986
- url: "/cfg/monitor/ingest/",
987
- ...options,
988
- headers: {
989
- "Content-Type": "application/json",
990
- ...options.headers
991
- }
992
- });
993
- }
994
- };
995
- __name(_Cfg, "Cfg");
996
- var Cfg = _Cfg;
997
- var _Monitor = class _Monitor {
998
- /**
999
- * Ingest browser events
1000
- *
1001
- * Accepts a batch of up to 50 frontend events. No authentication required — anonymous visitors can send events.
1002
- */
1003
- static cfgMonitorIngestCreate(options) {
1004
- return (options.client ?? client).post({
1005
- url: "/cfg/monitor/ingest/",
1006
- ...options,
1007
- headers: {
1008
- "Content-Type": "application/json",
1009
- ...options.headers
1010
- }
1011
- });
1012
- }
1013
- };
1014
- __name(_Monitor, "Monitor");
1015
- var Monitor = _Monitor;
1016
-
1017
- // src/_api/generated/cfg_monitor/api.ts
1018
- var ACCESS_KEY = "cfg.access_token";
1019
- var REFRESH_KEY = "cfg.refresh_token";
1020
- function detectLocale() {
1021
- try {
1022
- if (typeof document !== "undefined") {
1023
- const m = document.cookie.match(/(?:^|;\s*)NEXT_LOCALE=([^;]*)/);
1024
- if (m) return decodeURIComponent(m[1]);
1025
- }
1026
- if (typeof navigator !== "undefined" && navigator.language) {
1027
- return navigator.language;
1028
- }
1029
- } catch {
1030
- }
1031
- return null;
1032
- }
1033
- __name(detectLocale, "detectLocale");
1124
+ // src/_api/generated/_cfg_monitor/api.ts
1034
1125
  var _API = class _API {
1035
- constructor(baseUrl, opts = {}) {
1036
- __publicField(this, "baseUrl");
1037
- __publicField(this, "storage");
1038
- __publicField(this, "locale");
1039
- __publicField(this, "apiKey");
1126
+ constructor(_baseUrl, opts = {}) {
1040
1127
  __publicField(this, "logger");
1041
- __publicField(this, "cfg", Cfg);
1042
- __publicField(this, "monitor", Monitor);
1043
- this.baseUrl = baseUrl.replace(/\/$/, "");
1044
- this.storage = opts.storage ?? new LocalStorageAdapter();
1045
1128
  this.logger = new APILogger(opts.logger);
1046
- this.locale = opts.locale ?? null;
1047
- this.apiKey = opts.apiKey ?? (typeof process !== "undefined" ? process.env?.NEXT_PUBLIC_API_KEY ?? null : null);
1048
- const credentials = opts.withCredentials ?? true ? "include" : "same-origin";
1049
- client.setConfig({ baseUrl: this.baseUrl, credentials });
1050
- client.interceptors.request.use((request) => {
1051
- const access = this.getToken();
1052
- if (access) request.headers.set("Authorization", `Bearer ${access}`);
1053
- const locale = this.locale ?? detectLocale();
1054
- if (locale) request.headers.set("Accept-Language", locale);
1055
- if (this.apiKey) request.headers.set("X-API-Key", this.apiKey);
1056
- return request;
1057
- });
1129
+ if (_baseUrl) auth.setBaseUrl(_baseUrl);
1130
+ if (opts.locale !== void 0) auth.setLocale(opts.locale);
1131
+ if (opts.apiKey !== void 0) auth.setApiKey(opts.apiKey);
1132
+ if (opts.withCredentials !== void 0) auth.setWithCredentials(opts.withCredentials);
1058
1133
  }
1059
1134
  // ── Base URL ────────────────────────────────────────────────────────────
1060
1135
  getBaseUrl() {
1061
- return this.baseUrl;
1136
+ return auth.getBaseUrl();
1062
1137
  }
1063
1138
  setBaseUrl(url) {
1064
- this.baseUrl = url.replace(/\/$/, "");
1065
- client.setConfig({ baseUrl: this.baseUrl });
1139
+ auth.setBaseUrl(url);
1066
1140
  }
1067
1141
  // ── Tokens ──────────────────────────────────────────────────────────────
1068
1142
  getToken() {
1069
- return this.storage.getItem(ACCESS_KEY);
1143
+ return auth.getToken();
1070
1144
  }
1071
1145
  setToken(token) {
1072
- if (token) this.storage.setItem(ACCESS_KEY, token);
1073
- else this.storage.removeItem(ACCESS_KEY);
1146
+ auth.setToken(token);
1074
1147
  }
1075
1148
  getRefreshToken() {
1076
- return this.storage.getItem(REFRESH_KEY);
1149
+ return auth.getRefreshToken();
1077
1150
  }
1078
1151
  setRefreshToken(token) {
1079
- if (token) this.storage.setItem(REFRESH_KEY, token);
1080
- else this.storage.removeItem(REFRESH_KEY);
1152
+ auth.setRefreshToken(token);
1081
1153
  }
1082
1154
  clearToken() {
1083
- this.storage.removeItem(ACCESS_KEY);
1084
- this.storage.removeItem(REFRESH_KEY);
1155
+ auth.clearTokens();
1085
1156
  }
1086
1157
  isAuthenticated() {
1087
- return this.getToken() !== null;
1158
+ return auth.isAuthenticated();
1088
1159
  }
1089
1160
  // ── Locale / API key ────────────────────────────────────────────────────
1090
1161
  getLocale() {
1091
- return this.locale ?? detectLocale();
1162
+ return auth.getLocale();
1092
1163
  }
1093
1164
  setLocale(locale) {
1094
- this.locale = locale;
1165
+ auth.setLocale(locale);
1095
1166
  }
1096
1167
  getApiKey() {
1097
- return this.apiKey;
1168
+ return auth.getApiKey();
1098
1169
  }
1099
1170
  setApiKey(key) {
1100
- this.apiKey = key;
1171
+ auth.setApiKey(key);
1101
1172
  }
1102
1173
  };
1103
1174
  __name(_API, "API");
1104
1175
  var API = _API;
1105
1176
 
1106
1177
  // src/_api/BaseClient.ts
1107
- var monitorApi = new API("", { storage: new MemoryStorageAdapter() });
1178
+ var monitorApi = new API("");
1108
1179
 
1109
- // src/_api/generated/cfg_monitor/types.gen.ts
1180
+ // src/_api/generated/types.gen.ts
1110
1181
  var EventTypeEnum = /* @__PURE__ */ ((EventTypeEnum2) => {
1111
1182
  EventTypeEnum2["JS_ERROR"] = "JS_ERROR";
1112
1183
  EventTypeEnum2["NETWORK_ERROR"] = "NETWORK_ERROR";