@tanstack/react-query-devtools 4.3.0-beta.7 → 4.3.2

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 (52) hide show
  1. package/build/lib/Explorer.js +205 -0
  2. package/build/lib/Explorer.js.map +1 -0
  3. package/build/lib/Explorer.mjs +171 -0
  4. package/build/lib/Explorer.mjs.map +1 -0
  5. package/build/lib/Logo.js +56 -0
  6. package/build/lib/Logo.js.map +1 -0
  7. package/build/lib/Logo.mjs +32 -0
  8. package/build/lib/Logo.mjs.map +1 -0
  9. package/build/lib/_virtual/_rollupPluginBabelHelpers.js +23 -0
  10. package/build/lib/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  11. package/build/lib/_virtual/_rollupPluginBabelHelpers.mjs +19 -0
  12. package/build/lib/_virtual/_rollupPluginBabelHelpers.mjs.map +1 -0
  13. package/build/lib/devtools.js +801 -0
  14. package/build/lib/devtools.js.map +1 -0
  15. package/build/lib/{index.prod.mjs → devtools.mjs} +12 -491
  16. package/build/lib/devtools.mjs.map +1 -0
  17. package/build/lib/index.js +3 -1275
  18. package/build/lib/index.js.map +1 -1
  19. package/build/lib/index.mjs +3 -1255
  20. package/build/lib/index.mjs.map +1 -1
  21. package/build/lib/screenreader.js +41 -0
  22. package/build/lib/screenreader.js.map +1 -0
  23. package/build/lib/screenreader.mjs +17 -0
  24. package/build/lib/screenreader.mjs.map +1 -0
  25. package/build/lib/styledComponents.js +103 -0
  26. package/build/lib/styledComponents.js.map +1 -0
  27. package/build/lib/styledComponents.mjs +92 -0
  28. package/build/lib/styledComponents.mjs.map +1 -0
  29. package/build/lib/theme.js +58 -0
  30. package/build/lib/theme.js.map +1 -0
  31. package/build/lib/theme.mjs +32 -0
  32. package/build/lib/theme.mjs.map +1 -0
  33. package/build/lib/useLocalStorage.js +71 -0
  34. package/build/lib/useLocalStorage.js.map +1 -0
  35. package/build/lib/useLocalStorage.mjs +47 -0
  36. package/build/lib/useLocalStorage.mjs.map +1 -0
  37. package/build/lib/useMediaQuery.js +56 -0
  38. package/build/lib/useMediaQuery.js.map +1 -0
  39. package/build/lib/useMediaQuery.mjs +32 -0
  40. package/build/lib/useMediaQuery.mjs.map +1 -0
  41. package/build/lib/utils.js +101 -0
  42. package/build/lib/utils.js.map +1 -0
  43. package/build/lib/utils.mjs +72 -0
  44. package/build/lib/utils.mjs.map +1 -0
  45. package/build/umd/index.development.js +0 -10
  46. package/build/umd/index.development.js.map +1 -1
  47. package/build/umd/index.production.js +0 -10
  48. package/build/umd/index.production.js.map +1 -1
  49. package/package.json +2 -2
  50. package/build/lib/index.prod.js +0 -1280
  51. package/build/lib/index.prod.js.map +0 -1
  52. package/build/lib/index.prod.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.js","sources":["../../src/theme.tsx"],"sourcesContent":["import * as React from 'react'\n\nexport const defaultTheme = {\n background: '#0b1521',\n backgroundAlt: '#132337',\n foreground: 'white',\n gray: '#3f4e60',\n grayAlt: '#222e3e',\n inputBackgroundColor: '#fff',\n inputTextColor: '#000',\n success: '#00ab52',\n danger: '#ff0085',\n active: '#006bff',\n paused: '#8c49eb',\n warning: '#ffb200',\n} as const\n\nexport type Theme = typeof defaultTheme\ninterface ProviderProps {\n theme: Theme\n children?: React.ReactNode\n}\n\nconst ThemeContext = React.createContext(defaultTheme)\n\nexport function ThemeProvider({ theme, ...rest }: ProviderProps) {\n return <ThemeContext.Provider value={theme} {...rest} />\n}\n\nexport function useTheme() {\n return React.useContext(ThemeContext)\n}\n"],"names":["defaultTheme","background","backgroundAlt","foreground","gray","grayAlt","inputBackgroundColor","inputTextColor","success","danger","active","paused","warning","ThemeContext","React","createContext","ThemeProvider","theme","rest","_extends","useTheme","useContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEO,MAAMA,YAAY,GAAG;AAC1BC,EAAAA,UAAU,EAAE,SADc;AAE1BC,EAAAA,aAAa,EAAE,SAFW;AAG1BC,EAAAA,UAAU,EAAE,OAHc;AAI1BC,EAAAA,IAAI,EAAE,SAJoB;AAK1BC,EAAAA,OAAO,EAAE,SALiB;AAM1BC,EAAAA,oBAAoB,EAAE,MANI;AAO1BC,EAAAA,cAAc,EAAE,MAPU;AAQ1BC,EAAAA,OAAO,EAAE,SARiB;AAS1BC,EAAAA,MAAM,EAAE,SATkB;AAU1BC,EAAAA,MAAM,EAAE,SAVkB;AAW1BC,EAAAA,MAAM,EAAE,SAXkB;AAY1BC,EAAAA,OAAO,EAAE,SAAA;AAZiB,EAArB;AAqBP,MAAMC,YAAY,gBAAGC,gBAAK,CAACC,aAAN,CAAoBf,YAApB,CAArB,CAAA;AAEO,SAASgB,aAAT,CAAuB;EAAEC,KAAF;EAAS,GAAGC,IAAAA;AAAZ,CAAvB,EAA0D;EAC/D,oBAAOJ,gBAAA,CAAA,aAAA,CAAC,YAAD,CAAc,QAAd,EAAAK,oCAAA,CAAA;AAAuB,IAAA,KAAK,EAAEF,KAAAA;AAA9B,GAAA,EAAyCC,IAAzC,CAAP,CAAA,CAAA;AACD,CAAA;AAEM,SAASE,QAAT,GAAoB;AACzB,EAAA,OAAON,gBAAK,CAACO,UAAN,CAAiBR,YAAjB,CAAP,CAAA;AACD;;;;;;"}
@@ -0,0 +1,32 @@
1
+ import { extends as _extends } from './_virtual/_rollupPluginBabelHelpers.mjs';
2
+ import * as React from 'react';
3
+
4
+ const defaultTheme = {
5
+ background: '#0b1521',
6
+ backgroundAlt: '#132337',
7
+ foreground: 'white',
8
+ gray: '#3f4e60',
9
+ grayAlt: '#222e3e',
10
+ inputBackgroundColor: '#fff',
11
+ inputTextColor: '#000',
12
+ success: '#00ab52',
13
+ danger: '#ff0085',
14
+ active: '#006bff',
15
+ paused: '#8c49eb',
16
+ warning: '#ffb200'
17
+ };
18
+ const ThemeContext = /*#__PURE__*/React.createContext(defaultTheme);
19
+ function ThemeProvider({
20
+ theme,
21
+ ...rest
22
+ }) {
23
+ return /*#__PURE__*/React.createElement(ThemeContext.Provider, _extends({
24
+ value: theme
25
+ }, rest));
26
+ }
27
+ function useTheme() {
28
+ return React.useContext(ThemeContext);
29
+ }
30
+
31
+ export { ThemeProvider, defaultTheme, useTheme };
32
+ //# sourceMappingURL=theme.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.mjs","sources":["../../src/theme.tsx"],"sourcesContent":["import * as React from 'react'\n\nexport const defaultTheme = {\n background: '#0b1521',\n backgroundAlt: '#132337',\n foreground: 'white',\n gray: '#3f4e60',\n grayAlt: '#222e3e',\n inputBackgroundColor: '#fff',\n inputTextColor: '#000',\n success: '#00ab52',\n danger: '#ff0085',\n active: '#006bff',\n paused: '#8c49eb',\n warning: '#ffb200',\n} as const\n\nexport type Theme = typeof defaultTheme\ninterface ProviderProps {\n theme: Theme\n children?: React.ReactNode\n}\n\nconst ThemeContext = React.createContext(defaultTheme)\n\nexport function ThemeProvider({ theme, ...rest }: ProviderProps) {\n return <ThemeContext.Provider value={theme} {...rest} />\n}\n\nexport function useTheme() {\n return React.useContext(ThemeContext)\n}\n"],"names":["defaultTheme","background","backgroundAlt","foreground","gray","grayAlt","inputBackgroundColor","inputTextColor","success","danger","active","paused","warning","ThemeContext","React","createContext","ThemeProvider","theme","rest","useTheme","useContext"],"mappings":";;;AAEO,MAAMA,YAAY,GAAG;AAC1BC,EAAAA,UAAU,EAAE,SADc;AAE1BC,EAAAA,aAAa,EAAE,SAFW;AAG1BC,EAAAA,UAAU,EAAE,OAHc;AAI1BC,EAAAA,IAAI,EAAE,SAJoB;AAK1BC,EAAAA,OAAO,EAAE,SALiB;AAM1BC,EAAAA,oBAAoB,EAAE,MANI;AAO1BC,EAAAA,cAAc,EAAE,MAPU;AAQ1BC,EAAAA,OAAO,EAAE,SARiB;AAS1BC,EAAAA,MAAM,EAAE,SATkB;AAU1BC,EAAAA,MAAM,EAAE,SAVkB;AAW1BC,EAAAA,MAAM,EAAE,SAXkB;AAY1BC,EAAAA,OAAO,EAAE,SAAA;AAZiB,EAArB;AAqBP,MAAMC,YAAY,gBAAGC,KAAK,CAACC,aAAN,CAAoBf,YAApB,CAArB,CAAA;AAEO,SAASgB,aAAT,CAAuB;EAAEC,KAAF;EAAS,GAAGC,IAAAA;AAAZ,CAAvB,EAA0D;EAC/D,oBAAO,KAAA,CAAA,aAAA,CAAC,YAAD,CAAc,QAAd,EAAA,QAAA,CAAA;AAAuB,IAAA,KAAK,EAAED,KAAAA;AAA9B,GAAA,EAAyCC,IAAzC,CAAP,CAAA,CAAA;AACD,CAAA;AAEM,SAASC,QAAT,GAAoB;AACzB,EAAA,OAAOL,KAAK,CAACM,UAAN,CAAiBP,YAAjB,CAAP,CAAA;AACD;;;;"}
@@ -0,0 +1,71 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+
7
+ function _interopNamespace(e) {
8
+ if (e && e.__esModule) return e;
9
+ var n = Object.create(null);
10
+ if (e) {
11
+ Object.keys(e).forEach(function (k) {
12
+ if (k !== 'default') {
13
+ var d = Object.getOwnPropertyDescriptor(e, k);
14
+ Object.defineProperty(n, k, d.get ? d : {
15
+ enumerable: true,
16
+ get: function () { return e[k]; }
17
+ });
18
+ }
19
+ });
20
+ }
21
+ n["default"] = e;
22
+ return Object.freeze(n);
23
+ }
24
+
25
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
26
+
27
+ const getItem = key => {
28
+ try {
29
+ const itemValue = localStorage.getItem(key);
30
+
31
+ if (typeof itemValue === 'string') {
32
+ return JSON.parse(itemValue);
33
+ }
34
+
35
+ return undefined;
36
+ } catch {
37
+ return undefined;
38
+ }
39
+ };
40
+
41
+ function useLocalStorage(key, defaultValue) {
42
+ const [value, setValue] = React__namespace.useState();
43
+ React__namespace.useEffect(() => {
44
+ const initialValue = getItem(key);
45
+
46
+ if (typeof initialValue === 'undefined' || initialValue === null) {
47
+ setValue(typeof defaultValue === 'function' ? defaultValue() : defaultValue);
48
+ } else {
49
+ setValue(initialValue);
50
+ }
51
+ }, [defaultValue, key]);
52
+ const setter = React__namespace.useCallback(updater => {
53
+ setValue(old => {
54
+ let newVal = updater;
55
+
56
+ if (typeof updater == 'function') {
57
+ newVal = updater(old);
58
+ }
59
+
60
+ try {
61
+ localStorage.setItem(key, JSON.stringify(newVal));
62
+ } catch {}
63
+
64
+ return newVal;
65
+ });
66
+ }, [key]);
67
+ return [value, setter];
68
+ }
69
+
70
+ exports["default"] = useLocalStorage;
71
+ //# sourceMappingURL=useLocalStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLocalStorage.js","sources":["../../src/useLocalStorage.ts"],"sourcesContent":["import * as React from 'react'\n\nconst getItem = (key: string): unknown => {\n try {\n const itemValue = localStorage.getItem(key)\n if (typeof itemValue === 'string') {\n return JSON.parse(itemValue)\n }\n return undefined\n } catch {\n return undefined\n }\n}\n\nexport default function useLocalStorage<T>(\n key: string,\n defaultValue: T | undefined,\n): [T | undefined, (newVal: T | ((prevVal: T) => T)) => void] {\n const [value, setValue] = React.useState<T>()\n\n React.useEffect(() => {\n const initialValue = getItem(key) as T | undefined\n\n if (typeof initialValue === 'undefined' || initialValue === null) {\n setValue(\n typeof defaultValue === 'function' ? defaultValue() : defaultValue,\n )\n } else {\n setValue(initialValue)\n }\n }, [defaultValue, key])\n\n const setter = React.useCallback(\n (updater: any) => {\n setValue((old) => {\n let newVal = updater\n\n if (typeof updater == 'function') {\n newVal = updater(old)\n }\n try {\n localStorage.setItem(key, JSON.stringify(newVal))\n } catch {}\n\n return newVal\n })\n },\n [key],\n )\n\n return [value, setter]\n}\n"],"names":["getItem","key","itemValue","localStorage","JSON","parse","undefined","useLocalStorage","defaultValue","value","setValue","React","useState","useEffect","initialValue","setter","useCallback","updater","old","newVal","setItem","stringify"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAAMA,OAAO,GAAIC,GAAD,IAA0B;EACxC,IAAI;AACF,IAAA,MAAMC,SAAS,GAAGC,YAAY,CAACH,OAAb,CAAqBC,GAArB,CAAlB,CAAA;;AACA,IAAA,IAAI,OAAOC,SAAP,KAAqB,QAAzB,EAAmC;AACjC,MAAA,OAAOE,IAAI,CAACC,KAAL,CAAWH,SAAX,CAAP,CAAA;AACD,KAAA;;AACD,IAAA,OAAOI,SAAP,CAAA;AACD,GAND,CAME,MAAM;AACN,IAAA,OAAOA,SAAP,CAAA;AACD,GAAA;AACF,CAVD,CAAA;;AAYe,SAASC,eAAT,CACbN,GADa,EAEbO,YAFa,EAG+C;EAC5D,MAAM,CAACC,KAAD,EAAQC,QAAR,IAAoBC,gBAAK,CAACC,QAAN,EAA1B,CAAA;EAEAD,gBAAK,CAACE,SAAN,CAAgB,MAAM;AACpB,IAAA,MAAMC,YAAY,GAAGd,OAAO,CAACC,GAAD,CAA5B,CAAA;;IAEA,IAAI,OAAOa,YAAP,KAAwB,WAAxB,IAAuCA,YAAY,KAAK,IAA5D,EAAkE;MAChEJ,QAAQ,CACN,OAAOF,YAAP,KAAwB,UAAxB,GAAqCA,YAAY,EAAjD,GAAsDA,YADhD,CAAR,CAAA;AAGD,KAJD,MAIO;MACLE,QAAQ,CAACI,YAAD,CAAR,CAAA;AACD,KAAA;AACF,GAVD,EAUG,CAACN,YAAD,EAAeP,GAAf,CAVH,CAAA,CAAA;AAYA,EAAA,MAAMc,MAAM,GAAGJ,gBAAK,CAACK,WAAN,CACZC,OAAD,IAAkB;IAChBP,QAAQ,CAAEQ,GAAD,IAAS;MAChB,IAAIC,MAAM,GAAGF,OAAb,CAAA;;AAEA,MAAA,IAAI,OAAOA,OAAP,IAAkB,UAAtB,EAAkC;AAChCE,QAAAA,MAAM,GAAGF,OAAO,CAACC,GAAD,CAAhB,CAAA;AACD,OAAA;;MACD,IAAI;QACFf,YAAY,CAACiB,OAAb,CAAqBnB,GAArB,EAA0BG,IAAI,CAACiB,SAAL,CAAeF,MAAf,CAA1B,CAAA,CAAA;OADF,CAEE,MAAM,EAAE;;AAEV,MAAA,OAAOA,MAAP,CAAA;AACD,KAXO,CAAR,CAAA;AAYD,GAdY,EAeb,CAAClB,GAAD,CAfa,CAAf,CAAA;AAkBA,EAAA,OAAO,CAACQ,KAAD,EAAQM,MAAR,CAAP,CAAA;AACD;;;;"}
@@ -0,0 +1,47 @@
1
+ import * as React from 'react';
2
+
3
+ const getItem = key => {
4
+ try {
5
+ const itemValue = localStorage.getItem(key);
6
+
7
+ if (typeof itemValue === 'string') {
8
+ return JSON.parse(itemValue);
9
+ }
10
+
11
+ return undefined;
12
+ } catch {
13
+ return undefined;
14
+ }
15
+ };
16
+
17
+ function useLocalStorage(key, defaultValue) {
18
+ const [value, setValue] = React.useState();
19
+ React.useEffect(() => {
20
+ const initialValue = getItem(key);
21
+
22
+ if (typeof initialValue === 'undefined' || initialValue === null) {
23
+ setValue(typeof defaultValue === 'function' ? defaultValue() : defaultValue);
24
+ } else {
25
+ setValue(initialValue);
26
+ }
27
+ }, [defaultValue, key]);
28
+ const setter = React.useCallback(updater => {
29
+ setValue(old => {
30
+ let newVal = updater;
31
+
32
+ if (typeof updater == 'function') {
33
+ newVal = updater(old);
34
+ }
35
+
36
+ try {
37
+ localStorage.setItem(key, JSON.stringify(newVal));
38
+ } catch {}
39
+
40
+ return newVal;
41
+ });
42
+ }, [key]);
43
+ return [value, setter];
44
+ }
45
+
46
+ export { useLocalStorage as default };
47
+ //# sourceMappingURL=useLocalStorage.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLocalStorage.mjs","sources":["../../src/useLocalStorage.ts"],"sourcesContent":["import * as React from 'react'\n\nconst getItem = (key: string): unknown => {\n try {\n const itemValue = localStorage.getItem(key)\n if (typeof itemValue === 'string') {\n return JSON.parse(itemValue)\n }\n return undefined\n } catch {\n return undefined\n }\n}\n\nexport default function useLocalStorage<T>(\n key: string,\n defaultValue: T | undefined,\n): [T | undefined, (newVal: T | ((prevVal: T) => T)) => void] {\n const [value, setValue] = React.useState<T>()\n\n React.useEffect(() => {\n const initialValue = getItem(key) as T | undefined\n\n if (typeof initialValue === 'undefined' || initialValue === null) {\n setValue(\n typeof defaultValue === 'function' ? defaultValue() : defaultValue,\n )\n } else {\n setValue(initialValue)\n }\n }, [defaultValue, key])\n\n const setter = React.useCallback(\n (updater: any) => {\n setValue((old) => {\n let newVal = updater\n\n if (typeof updater == 'function') {\n newVal = updater(old)\n }\n try {\n localStorage.setItem(key, JSON.stringify(newVal))\n } catch {}\n\n return newVal\n })\n },\n [key],\n )\n\n return [value, setter]\n}\n"],"names":["getItem","key","itemValue","localStorage","JSON","parse","undefined","useLocalStorage","defaultValue","value","setValue","React","useState","useEffect","initialValue","setter","useCallback","updater","old","newVal","setItem","stringify"],"mappings":";;AAEA,MAAMA,OAAO,GAAIC,GAAD,IAA0B;EACxC,IAAI;AACF,IAAA,MAAMC,SAAS,GAAGC,YAAY,CAACH,OAAb,CAAqBC,GAArB,CAAlB,CAAA;;AACA,IAAA,IAAI,OAAOC,SAAP,KAAqB,QAAzB,EAAmC;AACjC,MAAA,OAAOE,IAAI,CAACC,KAAL,CAAWH,SAAX,CAAP,CAAA;AACD,KAAA;;AACD,IAAA,OAAOI,SAAP,CAAA;AACD,GAND,CAME,MAAM;AACN,IAAA,OAAOA,SAAP,CAAA;AACD,GAAA;AACF,CAVD,CAAA;;AAYe,SAASC,eAAT,CACbN,GADa,EAEbO,YAFa,EAG+C;EAC5D,MAAM,CAACC,KAAD,EAAQC,QAAR,IAAoBC,KAAK,CAACC,QAAN,EAA1B,CAAA;EAEAD,KAAK,CAACE,SAAN,CAAgB,MAAM;AACpB,IAAA,MAAMC,YAAY,GAAGd,OAAO,CAACC,GAAD,CAA5B,CAAA;;IAEA,IAAI,OAAOa,YAAP,KAAwB,WAAxB,IAAuCA,YAAY,KAAK,IAA5D,EAAkE;MAChEJ,QAAQ,CACN,OAAOF,YAAP,KAAwB,UAAxB,GAAqCA,YAAY,EAAjD,GAAsDA,YADhD,CAAR,CAAA;AAGD,KAJD,MAIO;MACLE,QAAQ,CAACI,YAAD,CAAR,CAAA;AACD,KAAA;AACF,GAVD,EAUG,CAACN,YAAD,EAAeP,GAAf,CAVH,CAAA,CAAA;AAYA,EAAA,MAAMc,MAAM,GAAGJ,KAAK,CAACK,WAAN,CACZC,OAAD,IAAkB;IAChBP,QAAQ,CAAEQ,GAAD,IAAS;MAChB,IAAIC,MAAM,GAAGF,OAAb,CAAA;;AAEA,MAAA,IAAI,OAAOA,OAAP,IAAkB,UAAtB,EAAkC;AAChCE,QAAAA,MAAM,GAAGF,OAAO,CAACC,GAAD,CAAhB,CAAA;AACD,OAAA;;MACD,IAAI;QACFf,YAAY,CAACiB,OAAb,CAAqBnB,GAArB,EAA0BG,IAAI,CAACiB,SAAL,CAAeF,MAAf,CAA1B,CAAA,CAAA;OADF,CAEE,MAAM,EAAE;;AAEV,MAAA,OAAOA,MAAP,CAAA;AACD,KAXO,CAAR,CAAA;AAYD,GAdY,EAeb,CAAClB,GAAD,CAfa,CAAf,CAAA;AAkBA,EAAA,OAAO,CAACQ,KAAD,EAAQM,MAAR,CAAP,CAAA;AACD;;;;"}
@@ -0,0 +1,56 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+
7
+ function _interopNamespace(e) {
8
+ if (e && e.__esModule) return e;
9
+ var n = Object.create(null);
10
+ if (e) {
11
+ Object.keys(e).forEach(function (k) {
12
+ if (k !== 'default') {
13
+ var d = Object.getOwnPropertyDescriptor(e, k);
14
+ Object.defineProperty(n, k, d.get ? d : {
15
+ enumerable: true,
16
+ get: function () { return e[k]; }
17
+ });
18
+ }
19
+ });
20
+ }
21
+ n["default"] = e;
22
+ return Object.freeze(n);
23
+ }
24
+
25
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
26
+
27
+ function useMediaQuery(query) {
28
+ // Keep track of the preference in state, start with the current match
29
+ const [isMatch, setIsMatch] = React__namespace.useState(() => {
30
+ if (typeof window !== 'undefined') {
31
+ return window.matchMedia(query).matches;
32
+ }
33
+ }); // Watch for changes
34
+
35
+ React__namespace.useEffect(() => {
36
+ if (typeof window !== 'undefined') {
37
+ // Create a matcher
38
+ const matcher = window.matchMedia(query); // Create our handler
39
+
40
+ const onChange = ({
41
+ matches
42
+ }) => setIsMatch(matches); // Listen for changes
43
+
44
+
45
+ matcher.addListener(onChange);
46
+ return () => {
47
+ // Stop listening for changes
48
+ matcher.removeListener(onChange);
49
+ };
50
+ }
51
+ }, [isMatch, query, setIsMatch]);
52
+ return isMatch;
53
+ }
54
+
55
+ exports["default"] = useMediaQuery;
56
+ //# sourceMappingURL=useMediaQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMediaQuery.js","sources":["../../src/useMediaQuery.ts"],"sourcesContent":["import * as React from 'react'\n\nexport default function useMediaQuery(query: string): boolean | undefined {\n // Keep track of the preference in state, start with the current match\n const [isMatch, setIsMatch] = React.useState(() => {\n if (typeof window !== 'undefined') {\n return window.matchMedia(query).matches\n }\n })\n\n // Watch for changes\n React.useEffect(() => {\n if (typeof window !== 'undefined') {\n // Create a matcher\n const matcher = window.matchMedia(query)\n\n // Create our handler\n const onChange = ({ matches }: { matches: boolean }) =>\n setIsMatch(matches)\n\n // Listen for changes\n matcher.addListener(onChange)\n\n return () => {\n // Stop listening for changes\n matcher.removeListener(onChange)\n }\n }\n }, [isMatch, query, setIsMatch])\n\n return isMatch\n}\n"],"names":["useMediaQuery","query","isMatch","setIsMatch","React","useState","window","matchMedia","matches","useEffect","matcher","onChange","addListener","removeListener"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEe,SAASA,aAAT,CAAuBC,KAAvB,EAA2D;AACxE;EACA,MAAM,CAACC,OAAD,EAAUC,UAAV,IAAwBC,gBAAK,CAACC,QAAN,CAAe,MAAM;AACjD,IAAA,IAAI,OAAOC,MAAP,KAAkB,WAAtB,EAAmC;AACjC,MAAA,OAAOA,MAAM,CAACC,UAAP,CAAkBN,KAAlB,EAAyBO,OAAhC,CAAA;AACD,KAAA;GAH2B,CAA9B,CAFwE;;EASxEJ,gBAAK,CAACK,SAAN,CAAgB,MAAM;AACpB,IAAA,IAAI,OAAOH,MAAP,KAAkB,WAAtB,EAAmC;AACjC;MACA,MAAMI,OAAO,GAAGJ,MAAM,CAACC,UAAP,CAAkBN,KAAlB,CAAhB,CAFiC;;MAKjC,MAAMU,QAAQ,GAAG,CAAC;AAAEH,QAAAA,OAAAA;AAAF,OAAD,KACfL,UAAU,CAACK,OAAD,CADZ,CALiC;;;MASjCE,OAAO,CAACE,WAAR,CAAoBD,QAApB,CAAA,CAAA;AAEA,MAAA,OAAO,MAAM;AACX;QACAD,OAAO,CAACG,cAAR,CAAuBF,QAAvB,CAAA,CAAA;OAFF,CAAA;AAID,KAAA;AACF,GAjBD,EAiBG,CAACT,OAAD,EAAUD,KAAV,EAAiBE,UAAjB,CAjBH,CAAA,CAAA;AAmBA,EAAA,OAAOD,OAAP,CAAA;AACD;;;;"}
@@ -0,0 +1,32 @@
1
+ import * as React from 'react';
2
+
3
+ function useMediaQuery(query) {
4
+ // Keep track of the preference in state, start with the current match
5
+ const [isMatch, setIsMatch] = React.useState(() => {
6
+ if (typeof window !== 'undefined') {
7
+ return window.matchMedia(query).matches;
8
+ }
9
+ }); // Watch for changes
10
+
11
+ React.useEffect(() => {
12
+ if (typeof window !== 'undefined') {
13
+ // Create a matcher
14
+ const matcher = window.matchMedia(query); // Create our handler
15
+
16
+ const onChange = ({
17
+ matches
18
+ }) => setIsMatch(matches); // Listen for changes
19
+
20
+
21
+ matcher.addListener(onChange);
22
+ return () => {
23
+ // Stop listening for changes
24
+ matcher.removeListener(onChange);
25
+ };
26
+ }
27
+ }, [isMatch, query, setIsMatch]);
28
+ return isMatch;
29
+ }
30
+
31
+ export { useMediaQuery as default };
32
+ //# sourceMappingURL=useMediaQuery.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMediaQuery.mjs","sources":["../../src/useMediaQuery.ts"],"sourcesContent":["import * as React from 'react'\n\nexport default function useMediaQuery(query: string): boolean | undefined {\n // Keep track of the preference in state, start with the current match\n const [isMatch, setIsMatch] = React.useState(() => {\n if (typeof window !== 'undefined') {\n return window.matchMedia(query).matches\n }\n })\n\n // Watch for changes\n React.useEffect(() => {\n if (typeof window !== 'undefined') {\n // Create a matcher\n const matcher = window.matchMedia(query)\n\n // Create our handler\n const onChange = ({ matches }: { matches: boolean }) =>\n setIsMatch(matches)\n\n // Listen for changes\n matcher.addListener(onChange)\n\n return () => {\n // Stop listening for changes\n matcher.removeListener(onChange)\n }\n }\n }, [isMatch, query, setIsMatch])\n\n return isMatch\n}\n"],"names":["useMediaQuery","query","isMatch","setIsMatch","React","useState","window","matchMedia","matches","useEffect","matcher","onChange","addListener","removeListener"],"mappings":";;AAEe,SAASA,aAAT,CAAuBC,KAAvB,EAA2D;AACxE;EACA,MAAM,CAACC,OAAD,EAAUC,UAAV,IAAwBC,KAAK,CAACC,QAAN,CAAe,MAAM;AACjD,IAAA,IAAI,OAAOC,MAAP,KAAkB,WAAtB,EAAmC;AACjC,MAAA,OAAOA,MAAM,CAACC,UAAP,CAAkBN,KAAlB,EAAyBO,OAAhC,CAAA;AACD,KAAA;GAH2B,CAA9B,CAFwE;;EASxEJ,KAAK,CAACK,SAAN,CAAgB,MAAM;AACpB,IAAA,IAAI,OAAOH,MAAP,KAAkB,WAAtB,EAAmC;AACjC;MACA,MAAMI,OAAO,GAAGJ,MAAM,CAACC,UAAP,CAAkBN,KAAlB,CAAhB,CAFiC;;MAKjC,MAAMU,QAAQ,GAAG,CAAC;AAAEH,QAAAA,OAAAA;AAAF,OAAD,KACfL,UAAU,CAACK,OAAD,CADZ,CALiC;;;MASjCE,OAAO,CAACE,WAAR,CAAoBD,QAApB,CAAA,CAAA;AAEA,MAAA,OAAO,MAAM;AACX;QACAD,OAAO,CAACG,cAAR,CAAuBF,QAAvB,CAAA,CAAA;OAFF,CAAA;AAID,KAAA;AACF,GAjBD,EAiBG,CAACT,OAAD,EAAUD,KAAV,EAAiBE,UAAjB,CAjBH,CAAA,CAAA;AAmBA,EAAA,OAAOD,OAAP,CAAA;AACD;;;;"}
@@ -0,0 +1,101 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var theme = require('./theme.js');
7
+ var useMediaQuery = require('./useMediaQuery.js');
8
+
9
+ function _interopNamespace(e) {
10
+ if (e && e.__esModule) return e;
11
+ var n = Object.create(null);
12
+ if (e) {
13
+ Object.keys(e).forEach(function (k) {
14
+ if (k !== 'default') {
15
+ var d = Object.getOwnPropertyDescriptor(e, k);
16
+ Object.defineProperty(n, k, d.get ? d : {
17
+ enumerable: true,
18
+ get: function () { return e[k]; }
19
+ });
20
+ }
21
+ });
22
+ }
23
+ n["default"] = e;
24
+ return Object.freeze(n);
25
+ }
26
+
27
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
28
+
29
+ function getQueryStatusColor({
30
+ queryState,
31
+ observerCount,
32
+ isStale,
33
+ theme
34
+ }) {
35
+ return queryState.fetchStatus === 'fetching' ? theme.active : !observerCount ? theme.gray : queryState.fetchStatus === 'paused' ? theme.paused : isStale ? theme.warning : theme.success;
36
+ }
37
+ function getQueryStatusLabel(query) {
38
+ return query.state.fetchStatus === 'fetching' ? 'fetching' : !query.getObserversCount() ? 'inactive' : query.state.fetchStatus === 'paused' ? 'paused' : query.isStale() ? 'stale' : 'fresh';
39
+ }
40
+ function styled(type, newStyles, queries = {}) {
41
+ return /*#__PURE__*/React__namespace.forwardRef(({
42
+ style,
43
+ ...rest
44
+ }, ref) => {
45
+ const theme$1 = theme.useTheme();
46
+ const mediaStyles = Object.entries(queries).reduce((current, [key, value]) => {
47
+ // eslint-disable-next-line react-hooks/rules-of-hooks
48
+ return useMediaQuery["default"](key) ? { ...current,
49
+ ...(typeof value === 'function' ? value(rest, theme$1) : value)
50
+ } : current;
51
+ }, {});
52
+ return /*#__PURE__*/React__namespace.createElement(type, { ...rest,
53
+ style: { ...(typeof newStyles === 'function' ? newStyles(rest, theme$1) : newStyles),
54
+ ...style,
55
+ ...mediaStyles
56
+ },
57
+ ref
58
+ });
59
+ });
60
+ }
61
+ function useIsMounted() {
62
+ const mountedRef = React__namespace.useRef(false);
63
+ const isMounted = React__namespace.useCallback(() => mountedRef.current, []);
64
+ React__namespace.useEffect(() => {
65
+ mountedRef.current = true;
66
+ return () => {
67
+ mountedRef.current = false;
68
+ };
69
+ }, []);
70
+ return isMounted;
71
+ }
72
+ /**
73
+ * Displays a string regardless the type of the data
74
+ * @param {unknown} value Value to be stringified
75
+ */
76
+
77
+ const displayValue = value => {
78
+ const name = Object.getOwnPropertyNames(Object(value));
79
+ const newValue = typeof value === 'bigint' ? value.toString() + "n" : value;
80
+ return JSON.stringify(newValue, name);
81
+ };
82
+
83
+ const getStatusRank = q => q.state.fetchStatus !== 'idle' ? 0 : !q.getObserversCount() ? 3 : q.isStale() ? 2 : 1;
84
+
85
+ const sortFns = {
86
+ 'Status > Last Updated': (a, b) => {
87
+ var _sortFns$LastUpdated;
88
+
89
+ return getStatusRank(a) === getStatusRank(b) ? (_sortFns$LastUpdated = sortFns['Last Updated']) == null ? void 0 : _sortFns$LastUpdated.call(sortFns, a, b) : getStatusRank(a) > getStatusRank(b) ? 1 : -1;
90
+ },
91
+ 'Query Hash': (a, b) => a.queryHash > b.queryHash ? 1 : -1,
92
+ 'Last Updated': (a, b) => a.state.dataUpdatedAt < b.state.dataUpdatedAt ? 1 : -1
93
+ };
94
+
95
+ exports.displayValue = displayValue;
96
+ exports.getQueryStatusColor = getQueryStatusColor;
97
+ exports.getQueryStatusLabel = getQueryStatusLabel;
98
+ exports.sortFns = sortFns;
99
+ exports.styled = styled;
100
+ exports.useIsMounted = useIsMounted;
101
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sources":["../../src/utils.ts"],"sourcesContent":["import * as React from 'react'\nimport type { Query } from '@tanstack/react-query'\n\nimport { Theme, useTheme } from './theme'\nimport useMediaQuery from './useMediaQuery'\n\ntype StyledComponent<T> = T extends 'button'\n ? React.DetailedHTMLProps<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n >\n : T extends 'input'\n ? React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n >\n : T extends 'select'\n ? React.DetailedHTMLProps<\n React.SelectHTMLAttributes<HTMLSelectElement>,\n HTMLSelectElement\n >\n : T extends keyof HTMLElementTagNameMap\n ? React.HTMLAttributes<HTMLElementTagNameMap[T]>\n : never\n\nexport function getQueryStatusColor({\n queryState,\n observerCount,\n isStale,\n theme,\n}: {\n queryState: Query['state']\n observerCount: number\n isStale: boolean\n theme: Theme\n}) {\n return queryState.fetchStatus === 'fetching'\n ? theme.active\n : !observerCount\n ? theme.gray\n : queryState.fetchStatus === 'paused'\n ? theme.paused\n : isStale\n ? theme.warning\n : theme.success\n}\n\nexport function getQueryStatusLabel(query: Query) {\n return query.state.fetchStatus === 'fetching'\n ? 'fetching'\n : !query.getObserversCount()\n ? 'inactive'\n : query.state.fetchStatus === 'paused'\n ? 'paused'\n : query.isStale()\n ? 'stale'\n : 'fresh'\n}\n\ntype Styles =\n | React.CSSProperties\n | ((props: Record<string, any>, theme: Theme) => React.CSSProperties)\n\nexport function styled<T extends keyof HTMLElementTagNameMap>(\n type: T,\n newStyles: Styles,\n queries: Record<string, Styles> = {},\n) {\n return React.forwardRef<HTMLElementTagNameMap[T], StyledComponent<T>>(\n ({ style, ...rest }, ref) => {\n const theme = useTheme()\n\n const mediaStyles = Object.entries(queries).reduce(\n (current, [key, value]) => {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return useMediaQuery(key)\n ? {\n ...current,\n ...(typeof value === 'function' ? value(rest, theme) : value),\n }\n : current\n },\n {},\n )\n\n return React.createElement(type, {\n ...rest,\n style: {\n ...(typeof newStyles === 'function'\n ? newStyles(rest, theme)\n : newStyles),\n ...style,\n ...mediaStyles,\n },\n ref,\n })\n },\n )\n}\n\nexport function useIsMounted() {\n const mountedRef = React.useRef(false)\n const isMounted = React.useCallback(() => mountedRef.current, [])\n\n React.useEffect(() => {\n mountedRef.current = true\n return () => {\n mountedRef.current = false\n }\n }, [])\n\n return isMounted\n}\n\n/**\n * Displays a string regardless the type of the data\n * @param {unknown} value Value to be stringified\n */\nexport const displayValue = (value: unknown) => {\n const name = Object.getOwnPropertyNames(Object(value))\n const newValue = typeof value === 'bigint' ? `${value.toString()}n` : value\n\n return JSON.stringify(newValue, name)\n}\n\nconst getStatusRank = (q: Query) =>\n q.state.fetchStatus !== 'idle'\n ? 0\n : !q.getObserversCount()\n ? 3\n : q.isStale()\n ? 2\n : 1\n\nexport const sortFns: Record<string, (a: Query, b: Query) => number> = {\n 'Status > Last Updated': (a, b) =>\n getStatusRank(a) === getStatusRank(b)\n ? (sortFns['Last Updated']?.(a, b) as number)\n : getStatusRank(a) > getStatusRank(b)\n ? 1\n : -1,\n 'Query Hash': (a, b) => (a.queryHash > b.queryHash ? 1 : -1),\n 'Last Updated': (a, b) =>\n a.state.dataUpdatedAt < b.state.dataUpdatedAt ? 1 : -1,\n}\n"],"names":["getQueryStatusColor","queryState","observerCount","isStale","theme","fetchStatus","active","gray","paused","warning","success","getQueryStatusLabel","query","state","getObserversCount","styled","type","newStyles","queries","React","forwardRef","style","rest","ref","useTheme","mediaStyles","Object","entries","reduce","current","key","value","useMediaQuery","createElement","useIsMounted","mountedRef","useRef","isMounted","useCallback","useEffect","displayValue","name","getOwnPropertyNames","newValue","toString","JSON","stringify","getStatusRank","q","sortFns","a","b","queryHash","dataUpdatedAt"],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ import * as React from 'react';
2
+ import { useTheme } from './theme.mjs';
3
+ import useMediaQuery from './useMediaQuery.mjs';
4
+
5
+ function getQueryStatusColor({
6
+ queryState,
7
+ observerCount,
8
+ isStale,
9
+ theme
10
+ }) {
11
+ return queryState.fetchStatus === 'fetching' ? theme.active : !observerCount ? theme.gray : queryState.fetchStatus === 'paused' ? theme.paused : isStale ? theme.warning : theme.success;
12
+ }
13
+ function getQueryStatusLabel(query) {
14
+ return query.state.fetchStatus === 'fetching' ? 'fetching' : !query.getObserversCount() ? 'inactive' : query.state.fetchStatus === 'paused' ? 'paused' : query.isStale() ? 'stale' : 'fresh';
15
+ }
16
+ function styled(type, newStyles, queries = {}) {
17
+ return /*#__PURE__*/React.forwardRef(({
18
+ style,
19
+ ...rest
20
+ }, ref) => {
21
+ const theme = useTheme();
22
+ const mediaStyles = Object.entries(queries).reduce((current, [key, value]) => {
23
+ // eslint-disable-next-line react-hooks/rules-of-hooks
24
+ return useMediaQuery(key) ? { ...current,
25
+ ...(typeof value === 'function' ? value(rest, theme) : value)
26
+ } : current;
27
+ }, {});
28
+ return /*#__PURE__*/React.createElement(type, { ...rest,
29
+ style: { ...(typeof newStyles === 'function' ? newStyles(rest, theme) : newStyles),
30
+ ...style,
31
+ ...mediaStyles
32
+ },
33
+ ref
34
+ });
35
+ });
36
+ }
37
+ function useIsMounted() {
38
+ const mountedRef = React.useRef(false);
39
+ const isMounted = React.useCallback(() => mountedRef.current, []);
40
+ React.useEffect(() => {
41
+ mountedRef.current = true;
42
+ return () => {
43
+ mountedRef.current = false;
44
+ };
45
+ }, []);
46
+ return isMounted;
47
+ }
48
+ /**
49
+ * Displays a string regardless the type of the data
50
+ * @param {unknown} value Value to be stringified
51
+ */
52
+
53
+ const displayValue = value => {
54
+ const name = Object.getOwnPropertyNames(Object(value));
55
+ const newValue = typeof value === 'bigint' ? value.toString() + "n" : value;
56
+ return JSON.stringify(newValue, name);
57
+ };
58
+
59
+ const getStatusRank = q => q.state.fetchStatus !== 'idle' ? 0 : !q.getObserversCount() ? 3 : q.isStale() ? 2 : 1;
60
+
61
+ const sortFns = {
62
+ 'Status > Last Updated': (a, b) => {
63
+ var _sortFns$LastUpdated;
64
+
65
+ return getStatusRank(a) === getStatusRank(b) ? (_sortFns$LastUpdated = sortFns['Last Updated']) == null ? void 0 : _sortFns$LastUpdated.call(sortFns, a, b) : getStatusRank(a) > getStatusRank(b) ? 1 : -1;
66
+ },
67
+ 'Query Hash': (a, b) => a.queryHash > b.queryHash ? 1 : -1,
68
+ 'Last Updated': (a, b) => a.state.dataUpdatedAt < b.state.dataUpdatedAt ? 1 : -1
69
+ };
70
+
71
+ export { displayValue, getQueryStatusColor, getQueryStatusLabel, sortFns, styled, useIsMounted };
72
+ //# sourceMappingURL=utils.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.mjs","sources":["../../src/utils.ts"],"sourcesContent":["import * as React from 'react'\nimport type { Query } from '@tanstack/react-query'\n\nimport { Theme, useTheme } from './theme'\nimport useMediaQuery from './useMediaQuery'\n\ntype StyledComponent<T> = T extends 'button'\n ? React.DetailedHTMLProps<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n >\n : T extends 'input'\n ? React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n >\n : T extends 'select'\n ? React.DetailedHTMLProps<\n React.SelectHTMLAttributes<HTMLSelectElement>,\n HTMLSelectElement\n >\n : T extends keyof HTMLElementTagNameMap\n ? React.HTMLAttributes<HTMLElementTagNameMap[T]>\n : never\n\nexport function getQueryStatusColor({\n queryState,\n observerCount,\n isStale,\n theme,\n}: {\n queryState: Query['state']\n observerCount: number\n isStale: boolean\n theme: Theme\n}) {\n return queryState.fetchStatus === 'fetching'\n ? theme.active\n : !observerCount\n ? theme.gray\n : queryState.fetchStatus === 'paused'\n ? theme.paused\n : isStale\n ? theme.warning\n : theme.success\n}\n\nexport function getQueryStatusLabel(query: Query) {\n return query.state.fetchStatus === 'fetching'\n ? 'fetching'\n : !query.getObserversCount()\n ? 'inactive'\n : query.state.fetchStatus === 'paused'\n ? 'paused'\n : query.isStale()\n ? 'stale'\n : 'fresh'\n}\n\ntype Styles =\n | React.CSSProperties\n | ((props: Record<string, any>, theme: Theme) => React.CSSProperties)\n\nexport function styled<T extends keyof HTMLElementTagNameMap>(\n type: T,\n newStyles: Styles,\n queries: Record<string, Styles> = {},\n) {\n return React.forwardRef<HTMLElementTagNameMap[T], StyledComponent<T>>(\n ({ style, ...rest }, ref) => {\n const theme = useTheme()\n\n const mediaStyles = Object.entries(queries).reduce(\n (current, [key, value]) => {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return useMediaQuery(key)\n ? {\n ...current,\n ...(typeof value === 'function' ? value(rest, theme) : value),\n }\n : current\n },\n {},\n )\n\n return React.createElement(type, {\n ...rest,\n style: {\n ...(typeof newStyles === 'function'\n ? newStyles(rest, theme)\n : newStyles),\n ...style,\n ...mediaStyles,\n },\n ref,\n })\n },\n )\n}\n\nexport function useIsMounted() {\n const mountedRef = React.useRef(false)\n const isMounted = React.useCallback(() => mountedRef.current, [])\n\n React.useEffect(() => {\n mountedRef.current = true\n return () => {\n mountedRef.current = false\n }\n }, [])\n\n return isMounted\n}\n\n/**\n * Displays a string regardless the type of the data\n * @param {unknown} value Value to be stringified\n */\nexport const displayValue = (value: unknown) => {\n const name = Object.getOwnPropertyNames(Object(value))\n const newValue = typeof value === 'bigint' ? `${value.toString()}n` : value\n\n return JSON.stringify(newValue, name)\n}\n\nconst getStatusRank = (q: Query) =>\n q.state.fetchStatus !== 'idle'\n ? 0\n : !q.getObserversCount()\n ? 3\n : q.isStale()\n ? 2\n : 1\n\nexport const sortFns: Record<string, (a: Query, b: Query) => number> = {\n 'Status > Last Updated': (a, b) =>\n getStatusRank(a) === getStatusRank(b)\n ? (sortFns['Last Updated']?.(a, b) as number)\n : getStatusRank(a) > getStatusRank(b)\n ? 1\n : -1,\n 'Query Hash': (a, b) => (a.queryHash > b.queryHash ? 1 : -1),\n 'Last Updated': (a, b) =>\n a.state.dataUpdatedAt < b.state.dataUpdatedAt ? 1 : -1,\n}\n"],"names":["getQueryStatusColor","queryState","observerCount","isStale","theme","fetchStatus","active","gray","paused","warning","success","getQueryStatusLabel","query","state","getObserversCount","styled","type","newStyles","queries","React","forwardRef","style","rest","ref","useTheme","mediaStyles","Object","entries","reduce","current","key","value","useMediaQuery","createElement","useIsMounted","mountedRef","useRef","isMounted","useCallback","useEffect","displayValue","name","getOwnPropertyNames","newValue","toString","JSON","stringify","getStatusRank","q","sortFns","a","b","queryHash","dataUpdatedAt"],"mappings":"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"}
@@ -1,13 +1,3 @@
1
- /**
2
- * react-query-devtools
3
- *
4
- * Copyright (c) TanStack
5
- *
6
- * This source code is licensed under the MIT license found in the
7
- * LICENSE.md file in the root directory of this source tree.
8
- *
9
- * @license MIT
10
- */
11
1
  (function (global, factory) {
12
2
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react'), require('@tanstack/react-query')) :
13
3
  typeof define === 'function' && define.amd ? define(['exports', 'react', '@tanstack/react-query'], factory) :