@makroz/web 1.2.5 → 1.2.6-rc14

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 (34) hide show
  1. package/README.md +1 -1
  2. package/dist/auth/AuthStorageAdapter.d.ts +74 -0
  3. package/dist/auth/AuthStorageAdapter.d.ts.map +1 -0
  4. package/dist/auth/AuthStorageAdapter.js +140 -0
  5. package/dist/auth/AuthStorageAdapter.js.map +1 -0
  6. package/dist/auth/MkAuthProvider.d.ts +11 -2
  7. package/dist/auth/MkAuthProvider.d.ts.map +1 -1
  8. package/dist/auth/MkAuthProvider.js +15 -25
  9. package/dist/auth/MkAuthProvider.js.map +1 -1
  10. package/dist/components/MkFileUpload.d.ts.map +1 -1
  11. package/dist/components/MkFileUpload.js +36 -2
  12. package/dist/components/MkFileUpload.js.map +1 -1
  13. package/dist/components/MkTable.d.ts +8 -1
  14. package/dist/components/MkTable.d.ts.map +1 -1
  15. package/dist/components/MkTable.js +28 -2
  16. package/dist/components/MkTable.js.map +1 -1
  17. package/dist/hooks/useApi.d.ts +21 -5
  18. package/dist/hooks/useApi.d.ts.map +1 -1
  19. package/dist/hooks/useApi.js +83 -63
  20. package/dist/hooks/useApi.js.map +1 -1
  21. package/dist/hooks/useMkInfiniteList.d.ts +1 -1
  22. package/dist/hooks/useMkList.d.ts +8 -12
  23. package/dist/hooks/useMkList.d.ts.map +1 -1
  24. package/dist/hooks/useMkList.js +23 -9
  25. package/dist/hooks/useMkList.js.map +1 -1
  26. package/dist/index.d.ts +2 -1
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +1 -0
  29. package/dist/index.js.map +1 -1
  30. package/dist/theme/MkThemeProvider.d.ts.map +1 -1
  31. package/dist/theme/MkThemeProvider.js.map +1 -1
  32. package/eslint-plugin-mk/__tests__/no-cross-module-import-dynamic.test.js +89 -0
  33. package/eslint-plugin-mk/rules/no-cross-module-import.js +16 -0
  34. package/package.json +2 -2
package/README.md CHANGED
@@ -5,7 +5,7 @@ Librería de componentes UI para proyectos Web (React). Enfocada en performance
5
5
  ## Características Core
6
6
  - **Native CSS Theming**: Todo el look se controla via variables CSS (`--mk-primary`, etc.). Sin Tailwind.
7
7
  - **Micro-Animations**: Transiciones fluidas y estados activos integrados.
8
- - **useApi Hook**: Comunicación estandarizada con backend MK-Director, manejando loading/error/success automáticamente.
8
+ - **useApi Hook**: Comunicación estandarizada con backend MK-Director, manejando loading/error/success automáticamente. AbortController wired up on unmount and param change, `response.ok` checked before parsing JSON, default 30s timeout. Returned by `useApi()` directly so consumer call sites do not need to change.
9
9
 
10
10
  ## Instalación & Tematización
11
11
  Importa los estilos en tu root:
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Storage adapters for `<MkAuthProvider>`.
3
+ *
4
+ * `AuthStorageAdapter` is the interface; `CookieStorageAdapter` is the
5
+ * default implementation; `LocalStorageAdapter` is an opt-in escape hatch
6
+ * kept for one release cycle and marked `@deprecated`.
7
+ *
8
+ * ## Why a Cookie default?
9
+ *
10
+ * Mobile (`@makroz/mobile`) already stores tokens in `expo-secure-store`
11
+ * (device keychain / Android Keystore). That is the secure pattern for
12
+ * tokens. Web never had an equivalent — the previous default wrote
13
+ * `access_token` and `refresh_token` into `localStorage`, where any
14
+ * XSS payload could exfiltrate them and where they survive tab close
15
+ * (extending the attack window). Switching the default to cookies
16
+ * aligns web with the mobile pattern; the migration story is in the
17
+ * package CHANGELOG.
18
+ *
19
+ * ## SSR safety
20
+ *
21
+ * Both adapters are no-ops when `document` / `window` are unavailable
22
+ * (server-side rendering). The provider should be hydrated client-side
23
+ * to pick up tokens — that has always been the case.
24
+ *
25
+ * ## Future GA work
26
+ *
27
+ * When the consumer migrates to `makroz/director-laravel` Sanctum v4
28
+ * cookie mode, the cookies will become `httpOnly` and the JS adapter
29
+ * will only manage a non-secret CSRF/read mirror. That sprint is
30
+ * out of scope here; this file only ships the adapter surface.
31
+ */
32
+ import type { AuthStorageAdapter } from './types';
33
+ export interface CookieStorageAdapterOptions {
34
+ /**
35
+ * Emit the `Secure` flag. Set `true` in production over HTTPS.
36
+ * Defaults to `false` (so the adapter works in `http://localhost`
37
+ * during development without surprises).
38
+ */
39
+ secure?: boolean;
40
+ }
41
+ /**
42
+ * Default storage adapter. Reads/writes browser cookies via
43
+ * `document.cookie`. Use this unless you have a specific reason to
44
+ * pin tokens in JavaScript-managed storage (and you almost certainly
45
+ * don't — that's the XSS risk this adapter exists to retire).
46
+ */
47
+ export declare class CookieStorageAdapter implements AuthStorageAdapter {
48
+ private readonly secure;
49
+ constructor(opts?: CookieStorageAdapterOptions);
50
+ getItem(key: string): string | null;
51
+ setItem(key: string, value: string): void;
52
+ removeItem(key: string): void;
53
+ }
54
+ /**
55
+ * @deprecated Use `CookieStorageAdapter` instead. Persists tokens in
56
+ * `localStorage`, where any XSS payload can read them and where they
57
+ * survive tab close — the opposite of what mobile's
58
+ * `expo-secure-store` does. Scheduled for removal in v1.4.x. A
59
+ * one-shot `console.warn` is emitted on the first `setItem` to make
60
+ * accidental usage greppable.
61
+ */
62
+ export declare class LocalStorageAdapter implements AuthStorageAdapter {
63
+ getItem(key: string): string | null;
64
+ setItem(key: string, value: string): void;
65
+ removeItem(key: string): void;
66
+ }
67
+ /**
68
+ * Factory for the default storage used by `<MkAuthProvider>` when no
69
+ * `storage` prop is passed. Always returns a fresh `CookieStorageAdapter`
70
+ * so multiple providers in the same tree (different scopes) get their
71
+ * own adapter instances — cookies themselves are scoped by key name.
72
+ */
73
+ export declare function getDefaultAuthStorage(): AuthStorageAdapter;
74
+ //# sourceMappingURL=AuthStorageAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthStorageAdapter.d.ts","sourceRoot":"","sources":["../../src/auth/AuthStorageAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAKlD,MAAM,WAAW,2BAA2B;IACxC;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;GAKG;AACH,qBAAa,oBAAqB,YAAW,kBAAkB;IAC3D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;gBAErB,IAAI,GAAE,2BAAgC;IAIlD,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAkBnC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAOzC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;CAKhC;AAID;;;;;;;GAOG;AACH,qBAAa,mBAAoB,YAAW,kBAAkB;IAC1D,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IASnC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAUzC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;CAQhC;AAaD;;;;;GAKG;AACH,wBAAgB,qBAAqB,IAAI,kBAAkB,CAE1D"}
@@ -0,0 +1,140 @@
1
+ /**
2
+ * Storage adapters for `<MkAuthProvider>`.
3
+ *
4
+ * `AuthStorageAdapter` is the interface; `CookieStorageAdapter` is the
5
+ * default implementation; `LocalStorageAdapter` is an opt-in escape hatch
6
+ * kept for one release cycle and marked `@deprecated`.
7
+ *
8
+ * ## Why a Cookie default?
9
+ *
10
+ * Mobile (`@makroz/mobile`) already stores tokens in `expo-secure-store`
11
+ * (device keychain / Android Keystore). That is the secure pattern for
12
+ * tokens. Web never had an equivalent — the previous default wrote
13
+ * `access_token` and `refresh_token` into `localStorage`, where any
14
+ * XSS payload could exfiltrate them and where they survive tab close
15
+ * (extending the attack window). Switching the default to cookies
16
+ * aligns web with the mobile pattern; the migration story is in the
17
+ * package CHANGELOG.
18
+ *
19
+ * ## SSR safety
20
+ *
21
+ * Both adapters are no-ops when `document` / `window` are unavailable
22
+ * (server-side rendering). The provider should be hydrated client-side
23
+ * to pick up tokens — that has always been the case.
24
+ *
25
+ * ## Future GA work
26
+ *
27
+ * When the consumer migrates to `makroz/director-laravel` Sanctum v4
28
+ * cookie mode, the cookies will become `httpOnly` and the JS adapter
29
+ * will only manage a non-secret CSRF/read mirror. That sprint is
30
+ * out of scope here; this file only ships the adapter surface.
31
+ */
32
+ const COOKIE_DEFAULTS = 'Path=/; SameSite=Lax';
33
+ const COOKIE_MAX_AGE = 60 * 60 * 24 * 30; // 30 days
34
+ /**
35
+ * Default storage adapter. Reads/writes browser cookies via
36
+ * `document.cookie`. Use this unless you have a specific reason to
37
+ * pin tokens in JavaScript-managed storage (and you almost certainly
38
+ * don't — that's the XSS risk this adapter exists to retire).
39
+ */
40
+ export class CookieStorageAdapter {
41
+ constructor(opts = {}) {
42
+ var _a;
43
+ this.secure = (_a = opts.secure) !== null && _a !== void 0 ? _a : false;
44
+ }
45
+ getItem(key) {
46
+ if (typeof document === 'undefined' || !document.cookie)
47
+ return null;
48
+ const cookies = document.cookie.split('; ');
49
+ for (const cookie of cookies) {
50
+ const eq = cookie.indexOf('=');
51
+ if (eq === -1)
52
+ continue;
53
+ const name = cookie.slice(0, eq);
54
+ if (name !== key)
55
+ continue;
56
+ const raw = cookie.slice(eq + 1);
57
+ try {
58
+ return decodeURIComponent(raw);
59
+ }
60
+ catch (_a) {
61
+ return raw;
62
+ }
63
+ }
64
+ return null;
65
+ }
66
+ setItem(key, value) {
67
+ if (typeof document === 'undefined')
68
+ return;
69
+ const encoded = encodeURIComponent(value);
70
+ const flags = `${COOKIE_DEFAULTS}${this.secure ? '; Secure' : ''}`;
71
+ document.cookie = `${key}=${encoded}; Max-Age=${COOKIE_MAX_AGE}; ${flags}`;
72
+ }
73
+ removeItem(key) {
74
+ if (typeof document === 'undefined')
75
+ return;
76
+ const flags = `${COOKIE_DEFAULTS}${this.secure ? '; Secure' : ''}`;
77
+ document.cookie = `${key}=; Max-Age=0; ${flags}`;
78
+ }
79
+ }
80
+ let localStorageWarned = false;
81
+ /**
82
+ * @deprecated Use `CookieStorageAdapter` instead. Persists tokens in
83
+ * `localStorage`, where any XSS payload can read them and where they
84
+ * survive tab close — the opposite of what mobile's
85
+ * `expo-secure-store` does. Scheduled for removal in v1.4.x. A
86
+ * one-shot `console.warn` is emitted on the first `setItem` to make
87
+ * accidental usage greppable.
88
+ */
89
+ export class LocalStorageAdapter {
90
+ getItem(key) {
91
+ if (typeof window === 'undefined' || !window.localStorage)
92
+ return null;
93
+ try {
94
+ return window.localStorage.getItem(key);
95
+ }
96
+ catch (_a) {
97
+ return null;
98
+ }
99
+ }
100
+ setItem(key, value) {
101
+ warnOnce();
102
+ if (typeof window === 'undefined' || !window.localStorage)
103
+ return;
104
+ try {
105
+ window.localStorage.setItem(key, value);
106
+ }
107
+ catch (_a) {
108
+ /* quota / private mode — silent */
109
+ }
110
+ }
111
+ removeItem(key) {
112
+ if (typeof window === 'undefined' || !window.localStorage)
113
+ return;
114
+ try {
115
+ window.localStorage.removeItem(key);
116
+ }
117
+ catch (_a) {
118
+ /* silent */
119
+ }
120
+ }
121
+ }
122
+ function warnOnce() {
123
+ if (localStorageWarned)
124
+ return;
125
+ // eslint-disable-next-line no-console
126
+ console.warn('[mk-web] LocalStorageAdapter is deprecated. Tokens in localStorage are ' +
127
+ 'reachable from any XSS payload. Migrate to CookieStorageAdapter ' +
128
+ '(browser-managed cookies) or a server-set httpOnly cookie.');
129
+ localStorageWarned = true;
130
+ }
131
+ /**
132
+ * Factory for the default storage used by `<MkAuthProvider>` when no
133
+ * `storage` prop is passed. Always returns a fresh `CookieStorageAdapter`
134
+ * so multiple providers in the same tree (different scopes) get their
135
+ * own adapter instances — cookies themselves are scoped by key name.
136
+ */
137
+ export function getDefaultAuthStorage() {
138
+ return new CookieStorageAdapter();
139
+ }
140
+ //# sourceMappingURL=AuthStorageAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthStorageAdapter.js","sourceRoot":"","sources":["../../src/auth/AuthStorageAdapter.ts"],"names":[],"mappings":"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"}
@@ -11,8 +11,17 @@ export interface MkAuthProviderProps {
11
11
  /** Children wrapped by the provider. */
12
12
  children: ReactNode;
13
13
  /**
14
- * Optional storage adapter. Defaults to `window.localStorage` when
15
- * available. Tests pass an in-memory adapter.
14
+ * Storage adapter for tokens and the cached user.
15
+ *
16
+ * **Required since v1.3.0.** Default if omitted is
17
+ * `new CookieStorageAdapter()` — aligned with the mobile
18
+ * `expo-secure-store` pattern, immune to the XSS exfiltration
19
+ * window that `localStorage` opened. Tests pass an in-memory
20
+ * adapter; consumers with a specific need can pass
21
+ * `new LocalStorageAdapter()` (deprecated) or their own impl.
22
+ *
23
+ * @see CookieStorageAdapter
24
+ * @see LocalStorageAdapter
16
25
  */
17
26
  storage?: AuthStorageAdapter;
18
27
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"MkAuthProvider.d.ts","sourceRoot":"","sources":["../../src/auth/MkAuthProvider.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAUvC,OAAO,KAAK,EAER,kBAAkB,EAKrB,MAAM,SAAS,CAAC;AAmBjB,MAAM,WAAW,mBAAmB;IAChC,uEAAuE;IACvE,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,QAAQ,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AAgSD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAkB5E"}
1
+ {"version":3,"file":"MkAuthProvider.d.ts","sourceRoot":"","sources":["../../src/auth/MkAuthProvider.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAUvC,OAAO,KAAK,EAER,kBAAkB,EAKrB,MAAM,SAAS,CAAC;AAWjB,MAAM,WAAW,mBAAmB;IAChC,uEAAuE;IACvE,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,QAAQ,EAAE,SAAS,CAAC;IACpB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AAsSD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAkB5E"}
@@ -3,13 +3,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { useEffect, useMemo, useRef, useState, useCallback } from 'react';
4
4
  import { QueryClient, QueryClientProvider, useQuery, useMutation, useQueryClient, } from '@tanstack/react-query';
5
5
  import { MkAuthContext } from './MkAuthContext';
6
- const DEFAULT_STORAGE = typeof window !== 'undefined' && typeof window.localStorage !== 'undefined'
7
- ? {
8
- getItem: (key) => window.localStorage.getItem(key),
9
- setItem: (key, value) => window.localStorage.setItem(key, value),
10
- removeItem: (key) => window.localStorage.removeItem(key),
11
- }
12
- : undefined;
6
+ import { getDefaultAuthStorage } from './AuthStorageAdapter';
13
7
  function tokenKey(scope, kind) {
14
8
  return `mk_auth_${scope}_${kind}_token`;
15
9
  }
@@ -21,22 +15,24 @@ function userKey(scope) {
21
15
  * Exported only as `<MkAuthProvider>`, which wraps it in
22
16
  * `<QueryClientProvider>`.
23
17
  */
24
- function MkAuthProviderInner({ scope, apiBaseUrl, children, storage = DEFAULT_STORAGE, fetcher, }) {
25
- var _a, _b, _c;
18
+ function MkAuthProviderInner({ scope, apiBaseUrl, children, storage: storageProp, fetcher, }) {
19
+ var _a;
26
20
  const normalizedBase = apiBaseUrl.replace(/\/+$/, '');
27
21
  const queryClient = useQueryClient();
28
22
  const fetchImpl = fetcher !== null && fetcher !== void 0 ? fetcher : (_a = globalThis.fetch) === null || _a === void 0 ? void 0 : _a.bind(globalThis);
23
+ // Resolve the storage adapter once per provider instance. Re-creating
24
+ // it every render would invalidate every `useCallback` that lists
25
+ // `storage` as a dep, churning child re-renders for no reason.
26
+ const storage = useMemo(() => storageProp !== null && storageProp !== void 0 ? storageProp : getDefaultAuthStorage(), [storageProp]);
29
27
  // Persisted token + user snapshots (read on first render only, to keep
30
28
  // `useState` initializer cheap; we still write back on every change).
31
- const initialAccess = (_b = storage === null || storage === void 0 ? void 0 : storage.getItem(tokenKey(scope, 'access'))) !== null && _b !== void 0 ? _b : null;
32
- const initialRefresh = (_c = storage === null || storage === void 0 ? void 0 : storage.getItem(tokenKey(scope, 'refresh'))) !== null && _c !== void 0 ? _c : null;
33
- const initialUserJson = storage === null || storage === void 0 ? void 0 : storage.getItem(userKey(scope));
29
+ const initialAccess = storage.getItem(tokenKey(scope, 'access'));
30
+ const initialRefresh = storage.getItem(tokenKey(scope, 'refresh'));
31
+ const initialUserJson = storage.getItem(userKey(scope));
34
32
  const initialUser = useRef(initialUserJson ? safeParse(initialUserJson) : null).current;
35
33
  const [user, setUserState] = useState(initialUser);
36
34
  const [error, setError] = useState(null);
37
35
  const persistUser = useCallback((next) => {
38
- if (!storage)
39
- return;
40
36
  if (next) {
41
37
  storage.setItem(userKey(scope), JSON.stringify(next));
42
38
  }
@@ -45,8 +41,6 @@ function MkAuthProviderInner({ scope, apiBaseUrl, children, storage = DEFAULT_ST
45
41
  }
46
42
  }, [scope, storage]);
47
43
  const persistTokens = useCallback((access, refresh) => {
48
- if (!storage)
49
- return;
50
44
  if (access) {
51
45
  storage.setItem(tokenKey(scope, 'access'), access);
52
46
  }
@@ -74,8 +68,7 @@ function MkAuthProviderInner({ scope, apiBaseUrl, children, storage = DEFAULT_ST
74
68
  const meQuery = useQuery({
75
69
  queryKey: ['mk-auth', scope, 'me'],
76
70
  queryFn: async ({ signal }) => {
77
- var _a;
78
- const access = (_a = storage === null || storage === void 0 ? void 0 : storage.getItem(tokenKey(scope, 'access'))) !== null && _a !== void 0 ? _a : null;
71
+ const access = storage.getItem(tokenKey(scope, 'access'));
79
72
  if (!access) {
80
73
  throw new Error('No access token available');
81
74
  }
@@ -113,8 +106,7 @@ function MkAuthProviderInner({ scope, apiBaseUrl, children, storage = DEFAULT_ST
113
106
  // ---- refresh mutation (also used on mount when /me 401s) ---------------
114
107
  const refreshMutation = useMutation({
115
108
  mutationFn: async () => {
116
- var _a;
117
- const refresh = (_a = storage === null || storage === void 0 ? void 0 : storage.getItem(tokenKey(scope, 'refresh'))) !== null && _a !== void 0 ? _a : null;
109
+ const refresh = storage.getItem(tokenKey(scope, 'refresh'));
118
110
  if (!refresh) {
119
111
  throw new Error('No refresh token available');
120
112
  }
@@ -157,7 +149,7 @@ function MkAuthProviderInner({ scope, apiBaseUrl, children, storage = DEFAULT_ST
157
149
  // ---- logout mutation ---------------------------------------------------
158
150
  const logoutMutation = useMutation({
159
151
  mutationFn: async () => {
160
- const access = storage === null || storage === void 0 ? void 0 : storage.getItem(tokenKey(scope, 'access'));
152
+ const access = storage.getItem(tokenKey(scope, 'access'));
161
153
  if (!access)
162
154
  return;
163
155
  const res = await fetchImpl(`${normalizedBase}/api/${scope}/auth/logout`, {
@@ -187,9 +179,8 @@ function MkAuthProviderInner({ scope, apiBaseUrl, children, storage = DEFAULT_ST
187
179
  // meQuery executes automatically on mount if access token exists (enabled: true).
188
180
  const tokenRefreshed = useRef(false);
189
181
  useEffect(() => {
190
- var _a;
191
182
  if (meQuery.isError && !tokenRefreshed.current) {
192
- const refresh = (_a = storage === null || storage === void 0 ? void 0 : storage.getItem(tokenKey(scope, 'refresh'))) !== null && _a !== void 0 ? _a : null;
183
+ const refresh = storage.getItem(tokenKey(scope, 'refresh'));
193
184
  if (refresh) {
194
185
  tokenRefreshed.current = true;
195
186
  refreshMutation
@@ -213,8 +204,7 @@ function MkAuthProviderInner({ scope, apiBaseUrl, children, storage = DEFAULT_ST
213
204
  }, [meQuery.isError, scope, storage, refreshMutation, persistTokens, setUser, clearAll, meQuery]);
214
205
  // Handle initial state if no token exists
215
206
  useEffect(() => {
216
- var _a;
217
- const access = (_a = storage === null || storage === void 0 ? void 0 : storage.getItem(tokenKey(scope, 'access'))) !== null && _a !== void 0 ? _a : null;
207
+ const access = storage.getItem(tokenKey(scope, 'access'));
218
208
  if (!access) {
219
209
  setUser(null);
220
210
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MkAuthProvider.js","sourceRoot":"","sources":["../../src/auth/MkAuthProvider.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAE1E,OAAO,EACH,WAAW,EACX,mBAAmB,EACnB,QAAQ,EACR,WAAW,EACX,cAAc,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAWhD,MAAM,eAAe,GACjB,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,YAAY,KAAK,WAAW;IACvE,CAAC,CAAC;QACI,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC;QAClD,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC;QAChE,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC;KAC3D;IACH,CAAC,CAAC,SAAS,CAAC;AAEpB,SAAS,QAAQ,CAAC,KAAa,EAAE,IAA0B;IACvD,OAAO,WAAW,KAAK,IAAI,IAAI,QAAQ,CAAC;AAC5C,CAAC;AAED,SAAS,OAAO,CAAC,KAAa;IAC1B,OAAO,WAAW,KAAK,OAAO,CAAC;AACnC,CAAC;AAwBD;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,EACzB,KAAK,EACL,UAAU,EACV,QAAQ,EACR,OAAO,GAAG,eAAe,EACzB,OAAO,GACW;;IAClB,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACtD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,SAAS,GAAiB,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,MAAA,UAAU,CAAC,KAAK,0CAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAE9E,uEAAuE;IACvE,sEAAsE;IACtE,MAAM,aAAa,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,mCAAI,IAAI,CAAC;IAC1E,MAAM,cAAc,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,mCAAI,IAAI,CAAC;IAC5E,MAAM,eAAe,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,MAAM,CACtB,eAAe,CAAC,CAAC,CAAC,SAAS,CAAW,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAChE,CAAC,OAAO,CAAC;IAEV,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAkB,WAAW,CAAC,CAAC;IACpE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAC;IAEvD,MAAM,WAAW,GAAG,WAAW,CAC3B,CAAC,IAAqB,EAAE,EAAE;QACtB,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,IAAI,EAAE,CAAC;YACP,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACvC,CAAC;IACL,CAAC,EACD,CAAC,KAAK,EAAE,OAAO,CAAC,CACnB,CAAC;IAEF,MAAM,aAAa,GAAG,WAAW,CAC7B,CAAC,MAAqB,EAAE,OAAsB,EAAE,EAAE;QAC9C,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAI,MAAM,EAAE,CAAC;YACT,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YACV,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;QACnD,CAAC;IACL,CAAC,EACD,CAAC,KAAK,EAAE,OAAO,CAAC,CACnB,CAAC;IAEF,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9B,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,EAAE,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC;IAEjC,MAAM,OAAO,GAAG,WAAW,CACvB,CAAC,IAAqB,EAAE,EAAE;QACtB,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,WAAW,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,EACD,CAAC,WAAW,CAAC,CAChB,CAAC;IAEF,2EAA2E;IAC3E,0EAA0E;IAC1E,sDAAsD;IACtD,MAAM,OAAO,GAAG,QAAQ,CAAkB;QACtC,QAAQ,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC;QAClC,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;;YAC1B,MAAM,MAAM,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,mCAAI,IAAI,CAAC;YACnE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YACjD,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,cAAc,QAAQ,KAAK,UAAU,EAAE;gBAClE,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE;oBACL,MAAM,EAAE,kBAAkB;oBAC1B,aAAa,EAAE,UAAU,MAAM,EAAE;iBACpC;gBACD,MAAM;aACT,CAAC,CAAC;YACH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACrB,MAAM,YAAY,EAAE,CAAC;YACzB,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;YAC5D,CAAC;YACD,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA0B,CAAC;YACzD,MAAM,GAAG,GACL,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,IAAI,IAAI;gBAC9C,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI;gBACb,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACjB,OAAO,GAAG,CAAC;QACf,CAAC;QACD,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC;QACrD,SAAS,EAAE,KAAM;QACjB,KAAK,EAAE,KAAK;QACZ,oBAAoB,EAAE,KAAK;KAC9B,CAAC,CAAC;IAEH,+DAA+D;IAC/D,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;IACL,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAE5B,2EAA2E;IAC3E,MAAM,eAAe,GAAG,WAAW,CAAyB;QACxD,UAAU,EAAE,KAAK,IAAI,EAAE;;YACnB,MAAM,OAAO,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,mCAAI,IAAI,CAAC;YACrE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAClD,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,cAAc,QAAQ,KAAK,eAAe,EAAE;gBACvE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACL,MAAM,EAAE,kBAAkB;oBAC1B,cAAc,EAAE,kBAAkB;iBACrC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;aACnD,CAAC,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACV,MAAM,YAAY,EAAE,CAAC;YACzB,CAAC;YACD,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAoB,CAAC;QACjD,CAAC;KACJ,CAAC,CAAC;IAEH,2EAA2E;IAC3E,MAAM,aAAa,GAAG,WAAW,CAAmC;QAChE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YACxB,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,cAAc,QAAQ,KAAK,aAAa,EAAE;gBACrE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACL,MAAM,EAAE,kBAAkB;oBAC1B,cAAc,EAAE,kBAAkB;iBACrC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;aAC9B,CAAC,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACV,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,qBAAqB,CAAC,CAAC;YACnD,CAAC;YACD,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAkB,CAAC;QAC/C,CAAC;QACD,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;KACJ,CAAC,CAAC;IAEH,2EAA2E;IAC3E,MAAM,cAAc,GAAG,WAAW,CAAoB;QAClD,UAAU,EAAE,KAAK,IAAI,EAAE;YACnB,MAAM,MAAM,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC3D,IAAI,CAAC,MAAM;gBAAE,OAAO;YACpB,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,cAAc,QAAQ,KAAK,cAAc,EAAE;gBACtE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACL,MAAM,EAAE,kBAAkB;oBAC1B,aAAa,EAAE,UAAU,MAAM,EAAE;iBACpC;aACJ,CAAC,CAAC;YACH,oEAAoE;YACpE,oCAAoC;YACpC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAEhC,OAAO,CAAC,IAAI,CAAC,mBAAmB,GAAG,CAAC,MAAM,gCAAgC,CAAC,CAAC;YAChF,CAAC;QACL,CAAC;QACD,SAAS,EAAE,GAAG,EAAE;YACZ,4DAA4D;YAC5D,4DAA4D;YAC5D,WAAW,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAClE,WAAW,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAClE,QAAQ,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;KACJ,CAAC,CAAC;IAEH,2EAA2E;IAC3E,6DAA6D;IAC7D,kFAAkF;IAClF,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACrC,SAAS,CAAC,GAAG,EAAE;;QACX,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;YAC7C,MAAM,OAAO,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,mCAAI,IAAI,CAAC;YACrE,IAAI,OAAO,EAAE,CAAC;gBACV,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC;gBAC9B,eAAe;qBACV,WAAW,EAAE;qBACb,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;oBACX,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;oBACrD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACpB,8CAA8C;oBAC9C,OAAO,CAAC,OAAO,EAAE,CAAC;gBACtB,CAAC,CAAC;qBACD,KAAK,CAAC,GAAG,EAAE;oBACR,QAAQ,EAAE,CAAC;oBACX,OAAO,CAAC,IAAI,CAAC,CAAC;gBAClB,CAAC,CAAC,CAAC;YACX,CAAC;iBAAM,CAAC;gBACJ,QAAQ,EAAE,CAAC;gBACX,OAAO,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;QACL,CAAC;IACL,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAElG,0CAA0C;IAC1C,SAAS,CAAC,GAAG,EAAE;;QACX,MAAM,MAAM,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,mCAAI,IAAI,CAAC;QACnE,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;IACL,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAE9B,2EAA2E;IAC3E,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,IAA8B,EAAE;QAC7D,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,WAAW,EAAE,CAAC;YACjD,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpB,OAAO,IAAI,CAAC,KAAK,CAAC;QACtB,CAAC;QAAC,WAAM,CAAC;YACL,QAAQ,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,CAAC;YACd,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC,EAAE,CAAC,eAAe,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IAExD,MAAM,KAAK,GAAG,WAAW,CACrB,KAAK,EAAE,KAAa,EAAE,QAAgB,EAAqB,EAAE;QACzD,QAAQ,CAAC,IAAI,CAAC,CAAC;QACf,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YAClE,OAAO,IAAI,CAAC,KAAK,CAAC;QACtB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,MAAM,CAAC,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;YACjE,QAAQ,CAAC,CAAC,CAAC,CAAC;YACZ,MAAM,CAAC,CAAC;QACZ,CAAC;IACL,CAAC,EACD,CAAC,aAAa,CAAC,CAClB,CAAC;IAEF,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,IAAmB,EAAE;QACjD,mEAAmE;QACnE,wDAAwD;QACxD,MAAM,cAAc,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,MAAM,UAAU,GAAG,WAAW,CAC1B,CAAC,OAAe,EAAW,EAAE;QACzB,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACxB,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC7E,CAAC,EACD,CAAC,IAAI,CAAC,CACT,CAAC;IAEF,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,UAAU,IAAI,aAAa,CAAC,SAAS,CAAC;IAErF,MAAM,KAAK,GAAG,OAAO,CACjB,GAAG,EAAE,CAAC,CAAC;QACH,IAAI;QACJ,SAAS;QACT,eAAe,EAAE,IAAI,KAAK,IAAI;QAC9B,KAAK;QACL,KAAK;QACL,MAAM;QACN,OAAO;QACP,UAAU;KACb,CAAC,EACF,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,CAC/D,CAAC;IAEF,OAAO,KAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAAG,QAAQ,GAA0B,CAAC;AACrF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,KAA0B;IACrD,MAAM,CAAC,MAAM,CAAC,GAAG,QAAQ,CACrB,GAAG,EAAE,CACD,IAAI,WAAW,CAAC;QACZ,cAAc,EAAE;YACZ,OAAO,EAAE;gBACL,KAAK,EAAE,KAAK;gBACZ,oBAAoB,EAAE,KAAK;aAC9B;SACJ;KACJ,CAAC,CACT,CAAC;IAEF,OAAO,CACH,KAAC,mBAAmB,IAAC,MAAM,EAAE,MAAM,YAC/B,KAAC,mBAAmB,oBAAK,KAAK,EAAI,GAChB,CACzB,CAAC;AACN,CAAC;AAED,8EAA8E;AAE9E,SAAS,YAAY;IACjB,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;IACpC,CAAC,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAC7B,OAAO,CAAC,CAAC;AACb,CAAC;AAED,SAAS,SAAS,CAAI,IAAY;IAC9B,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAC;IACjC,CAAC;IAAC,WAAM,CAAC;QACL,OAAO,IAAI,CAAC;IAChB,CAAC;AACL,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,GAAa;IACtC,IAAI,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAyB,CAAC;QACxD,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC;IACtE,CAAC;IAAC,WAAM,CAAC;QACL,iBAAiB;IACrB,CAAC;IACD,OAAO,mBAAmB,GAAG,CAAC,MAAM,GAAG,CAAC;AAC5C,CAAC"}
1
+ {"version":3,"file":"MkAuthProvider.js","sourceRoot":"","sources":["../../src/auth/MkAuthProvider.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MkFileUpload.d.ts","sourceRoot":"","sources":["../../src/components/MkFileUpload.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAG7D;;;;;;;;;;;;;;GAcG;AAEH,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA8GpD,CAAC"}
1
+ {"version":3,"file":"MkFileUpload.d.ts","sourceRoot":"","sources":["../../src/components/MkFileUpload.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAGxE;;;;;;;;;;;;;;GAcG;AAEH,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAqJpD,CAAC"}
@@ -1,11 +1,26 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useCallback, useRef, useState } from 'react';
2
+ import { useCallback, useEffect, useRef, useState } from 'react';
3
3
  import styles from './MkFileUpload.module.css';
4
4
  export const MkFileUpload = ({ onFiles, accept, multiple = false, maxSizeMB = 10, label = 'Arrastra archivos aquí o haz clic', sublabel, disabled = false, error, className, }) => {
5
5
  const inputRef = useRef(null);
6
6
  const [isDragging, setIsDragging] = useState(false);
7
7
  const [localError, setLocalError] = useState('');
8
8
  const [fileList, setFileList] = useState([]);
9
+ // Track every preview URL we create so we can revoke them on
10
+ // unmount and on replacement. Without this, every replace
11
+ // (`!multiple` selection) and every unmount leaks blob URLs that
12
+ // the browser keeps the underlying blob alive for — a real memory
13
+ // cost when users pick many large images.
14
+ const previewUrlsRef = useRef([]);
15
+ // Revoke all tracked URLs on unmount. Empty-deps so we close over
16
+ // the ref (which is mutated by processFiles/removeFile), not over
17
+ // `fileList` (which would capture only the mount-time value).
18
+ useEffect(() => {
19
+ return () => {
20
+ previewUrlsRef.current.forEach((url) => URL.revokeObjectURL(url));
21
+ previewUrlsRef.current = [];
22
+ };
23
+ }, []);
9
24
  const processFiles = useCallback((rawFiles) => {
10
25
  const results = [];
11
26
  const errors = [];
@@ -17,7 +32,9 @@ export const MkFileUpload = ({ onFiles, accept, multiple = false, maxSizeMB = 10
17
32
  }
18
33
  const info = { file, name: file.name, sizeMB, type: file.type };
19
34
  if (file.type.startsWith('image/')) {
20
- info.preview = URL.createObjectURL(file);
35
+ const url = URL.createObjectURL(file);
36
+ info.preview = url;
37
+ previewUrlsRef.current.push(url);
21
38
  }
22
39
  results.push(info);
23
40
  });
@@ -26,6 +43,18 @@ export const MkFileUpload = ({ onFiles, accept, multiple = false, maxSizeMB = 10
26
43
  return;
27
44
  }
28
45
  setLocalError('');
46
+ if (!multiple) {
47
+ // Single-selection mode replaces the fileList wholesale. The
48
+ // previous previews are no longer reachable via the DOM, so
49
+ // revoke them now to release the underlying blobs.
50
+ fileList.forEach((f) => {
51
+ if (f.preview)
52
+ URL.revokeObjectURL(f.preview);
53
+ });
54
+ previewUrlsRef.current = results
55
+ .map((r) => r.preview)
56
+ .filter((u) => Boolean(u));
57
+ }
29
58
  const next = multiple ? [...fileList, ...results] : results;
30
59
  setFileList(next);
31
60
  onFiles(next);
@@ -38,6 +67,11 @@ export const MkFileUpload = ({ onFiles, accept, multiple = false, maxSizeMB = 10
38
67
  }
39
68
  }, [disabled, processFiles]);
40
69
  const removeFile = useCallback((idx) => {
70
+ const removed = fileList[idx];
71
+ if (removed === null || removed === void 0 ? void 0 : removed.preview) {
72
+ URL.revokeObjectURL(removed.preview);
73
+ previewUrlsRef.current = previewUrlsRef.current.filter((u) => u !== removed.preview);
74
+ }
41
75
  const next = fileList.filter((_, i) => i !== idx);
42
76
  setFileList(next);
43
77
  onFiles(next);
@@ -1 +1 @@
1
- {"version":3,"file":"MkFileUpload.js","sourceRoot":"","sources":["../../src/components/MkFileUpload.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MkFileUpload.js","sourceRoot":"","sources":["../../src/components/MkFileUpload.tsx"],"names":[],"mappings":"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"}
@@ -21,7 +21,14 @@ interface MkTableProps<T> {
21
21
  onPageChange?: (page: number) => void;
22
22
  actions?: (item: T) => MkDropdownOptionType[];
23
23
  onAction?: (action: string | number, item: T) => void;
24
+ /**
25
+ * Override the default `key` extraction. Use this only if your
26
+ * rows have none of `id`, `uuid`, or `key` (the built-in smart
27
+ * fallback) — supply a stable, unique string per row so React
28
+ * can reconcile the list correctly across sort / filter.
29
+ */
30
+ keyExtractor?: (item: T, index: number) => string;
24
31
  }
25
- export declare function MkTable<T>({ data, columns, loading, onSort, sortField, sortOrder, pagination, onPageChange, actions, onAction }: MkTableProps<T>): import("react/jsx-runtime").JSX.Element;
32
+ export declare function MkTable<T>({ data, columns, loading, onSort, sortField, sortOrder, pagination, onPageChange, actions, onAction, keyExtractor, }: MkTableProps<T>): import("react/jsx-runtime").JSX.Element;
26
33
  export {};
27
34
  //# sourceMappingURL=MkTable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MkTable.d.ts","sourceRoot":"","sources":["../../src/components/MkTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAGzD,UAAU,MAAM,CAAC,CAAC;IACd,GAAG,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,UAAU,YAAY,CAAC,CAAC;IACpB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE;QACT,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,oBAAoB,EAAE,CAAC;IAC9C,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;CACzD;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,EACvB,IAAS,EACT,OAAY,EACZ,OAAO,EACP,MAAM,EACN,SAAS,EACT,SAAS,EACT,UAAU,EACV,YAAY,EACZ,OAAO,EACP,QAAQ,EACX,EAAE,YAAY,CAAC,CAAC,CAAC,2CA4FjB"}
1
+ {"version":3,"file":"MkTable.d.ts","sourceRoot":"","sources":["../../src/components/MkTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAGzD,UAAU,MAAM,CAAC,CAAC;IACd,GAAG,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,UAAU,YAAY,CAAC,CAAC;IACpB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE;QACT,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,oBAAoB,EAAE,CAAC;IAC9C,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IACtD;;;;;OAKG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACrD;AA6BD,wBAAgB,OAAO,CAAC,CAAC,EAAE,EACvB,IAAS,EACT,OAAY,EACZ,OAAO,EACP,MAAM,EACN,SAAS,EACT,SAAS,EACT,UAAU,EACV,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,YAAkC,GACrC,EAAE,YAAY,CAAC,CAAC,CAAC,2CA4FjB"}
@@ -1,11 +1,37 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import styles from './MkTable.module.css';
3
3
  import { MkDropDown } from './MkDropDown';
4
- export function MkTable({ data = [], columns = [], loading, onSort, sortField, sortOrder, pagination, onPageChange, actions, onAction }) {
4
+ /**
5
+ * Default row-key resolver. Tries the common stable-id field names
6
+ * first, then warns once in dev when nothing matches, and finally
7
+ * falls back to a positional placeholder. The positional fallback
8
+ * is unique per index within a render, but it WILL cause React to
9
+ * reconcile rows incorrectly across sort/filter — the console
10
+ * warning is there so the missing stable id gets fixed at the
11
+ * source.
12
+ */
13
+ function defaultKeyExtractor(item, index) {
14
+ const candidate = item;
15
+ const toKey = (v) => typeof v === 'string' || typeof v === 'number' ? String(v) : '';
16
+ if (toKey(candidate === null || candidate === void 0 ? void 0 : candidate.id))
17
+ return toKey(candidate.id);
18
+ if (toKey(candidate === null || candidate === void 0 ? void 0 : candidate.uuid))
19
+ return toKey(candidate.uuid);
20
+ if (toKey(candidate === null || candidate === void 0 ? void 0 : candidate.key))
21
+ return toKey(candidate.key);
22
+ if (process.env.NODE_ENV !== 'production') {
23
+ // eslint-disable-next-line no-console
24
+ console.warn(`[MkTable] Row at index ${index} has no id/uuid/key. ` +
25
+ 'Falling back to a positional key — add a stable id to fix ' +
26
+ 'reconciliation bugs after sort/filter.');
27
+ }
28
+ return `mk-row-${index}`;
29
+ }
30
+ export function MkTable({ data = [], columns = [], loading, onSort, sortField, sortOrder, pagination, onPageChange, actions, onAction, keyExtractor = defaultKeyExtractor, }) {
5
31
  const handleSort = (key) => {
6
32
  if (onSort)
7
33
  onSort(key);
8
34
  };
9
- return (_jsxs("div", { className: styles.container, children: [_jsx("div", { className: styles.tableWrapper, children: _jsxs("table", { className: styles.table, children: [_jsx("thead", { children: _jsxs("tr", { children: [columns.map((col) => (_jsx("th", { onClick: () => col.sortable && handleSort(String(col.key)), className: col.sortable ? styles.sortable : '', children: _jsxs("div", { className: styles.headerContent, children: [col.label, col.sortable && sortField === col.key && (_jsx("span", { className: styles.sortIcon, children: sortOrder === 'asc' ? '↑' : '↓' }))] }) }, String(col.key)))), actions && _jsx("th", { className: styles.actionsHeader, children: "Acciones" })] }) }), _jsxs("tbody", { children: [loading && (_jsx("tr", { className: styles.loadingRow, children: _jsx("td", { colSpan: columns.length, children: _jsx("div", { className: styles.skeleton }) }) })), !loading && data.length === 0 && (_jsx("tr", { className: styles.emptyRow, children: _jsx("td", { colSpan: columns.length, children: "No se encontraron datos." }) })), !loading && data.map((item, idx) => (_jsxs("tr", { className: styles.row, style: { '--row-index': idx }, children: [columns.map((col) => (_jsx("td", { children: col.render ? col.render(item) : item[col.key] }, String(col.key)))), actions && (_jsx("td", { className: styles.actionsCell, children: _jsx(MkDropDown, { options: actions(item), onSelect: (val) => onAction === null || onAction === void 0 ? void 0 : onAction(val, item) }) }))] }, idx)))] })] }) }), pagination && pagination.last_page && pagination.last_page > 1 && (_jsxs("div", { className: styles.pagination, children: [_jsx("button", { disabled: pagination.current_page === 1, onClick: () => onPageChange === null || onPageChange === void 0 ? void 0 : onPageChange((pagination.current_page || 1) - 1), className: styles.pageBtn, children: "Anterior" }), _jsxs("span", { className: styles.pageInfo, children: ["P\u00E1gina ", pagination.current_page, " de ", pagination.last_page] }), _jsx("button", { disabled: pagination.current_page === pagination.last_page, onClick: () => onPageChange === null || onPageChange === void 0 ? void 0 : onPageChange((pagination.current_page || 1) + 1), className: styles.pageBtn, children: "Siguiente" })] }))] }));
35
+ return (_jsxs("div", { className: styles.container, children: [_jsx("div", { className: styles.tableWrapper, children: _jsxs("table", { className: styles.table, children: [_jsx("thead", { children: _jsxs("tr", { children: [columns.map((col) => (_jsx("th", { onClick: () => col.sortable && handleSort(String(col.key)), className: col.sortable ? styles.sortable : '', children: _jsxs("div", { className: styles.headerContent, children: [col.label, col.sortable && sortField === col.key && (_jsx("span", { className: styles.sortIcon, children: sortOrder === 'asc' ? '↑' : '↓' }))] }) }, String(col.key)))), actions && _jsx("th", { className: styles.actionsHeader, children: "Acciones" })] }) }), _jsxs("tbody", { children: [loading && (_jsx("tr", { className: styles.loadingRow, children: _jsx("td", { colSpan: columns.length, children: _jsx("div", { className: styles.skeleton }) }) })), !loading && data.length === 0 && (_jsx("tr", { className: styles.emptyRow, children: _jsx("td", { colSpan: columns.length, children: "No se encontraron datos." }) })), !loading && data.map((item, idx) => (_jsxs("tr", { className: styles.row, style: { '--row-index': idx }, children: [columns.map((col) => (_jsx("td", { children: col.render ? col.render(item) : item[col.key] }, String(col.key)))), actions && (_jsx("td", { className: styles.actionsCell, children: _jsx(MkDropDown, { options: actions(item), onSelect: (val) => onAction === null || onAction === void 0 ? void 0 : onAction(val, item) }) }))] }, keyExtractor(item, idx))))] })] }) }), pagination && pagination.last_page && pagination.last_page > 1 && (_jsxs("div", { className: styles.pagination, children: [_jsx("button", { disabled: pagination.current_page === 1, onClick: () => onPageChange === null || onPageChange === void 0 ? void 0 : onPageChange((pagination.current_page || 1) - 1), className: styles.pageBtn, children: "Anterior" }), _jsxs("span", { className: styles.pageInfo, children: ["P\u00E1gina ", pagination.current_page, " de ", pagination.last_page] }), _jsx("button", { disabled: pagination.current_page === pagination.last_page, onClick: () => onPageChange === null || onPageChange === void 0 ? void 0 : onPageChange((pagination.current_page || 1) + 1), className: styles.pageBtn, children: "Siguiente" })] }))] }));
10
36
  }
11
37
  //# sourceMappingURL=MkTable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MkTable.js","sourceRoot":"","sources":["../../src/components/MkTable.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MkTable.js","sourceRoot":"","sources":["../../src/components/MkTable.tsx"],"names":[],"mappings":"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"}