@tanstack/react-router-devtools 0.0.1-alpha.1 → 0.0.1-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/build/cjs/node_modules/date-fns/esm/_lib/assign/index.js +30 -0
  2. package/build/cjs/node_modules/date-fns/esm/_lib/assign/index.js.map +1 -0
  3. package/build/cjs/node_modules/date-fns/esm/_lib/cloneObject/index.js +22 -0
  4. package/build/cjs/node_modules/date-fns/esm/_lib/cloneObject/index.js.map +1 -0
  5. package/build/cjs/node_modules/date-fns/esm/_lib/defaultLocale/index.js +20 -0
  6. package/build/cjs/node_modules/date-fns/esm/_lib/defaultLocale/index.js.map +1 -0
  7. package/build/cjs/node_modules/date-fns/esm/_lib/defaultOptions/index.js +21 -0
  8. package/build/cjs/node_modules/date-fns/esm/_lib/defaultOptions/index.js.map +1 -0
  9. package/build/cjs/node_modules/date-fns/esm/_lib/getTimezoneOffsetInMilliseconds/index.js +33 -0
  10. package/build/cjs/node_modules/date-fns/esm/_lib/getTimezoneOffsetInMilliseconds/index.js.map +1 -0
  11. package/build/cjs/node_modules/date-fns/esm/_lib/requiredArgs/index.js +22 -0
  12. package/build/cjs/node_modules/date-fns/esm/_lib/requiredArgs/index.js.map +1 -0
  13. package/build/cjs/node_modules/date-fns/esm/compareAsc/index.js +67 -0
  14. package/build/cjs/node_modules/date-fns/esm/compareAsc/index.js.map +1 -0
  15. package/build/cjs/node_modules/date-fns/esm/formatDistanceStrict/index.js +207 -0
  16. package/build/cjs/node_modules/date-fns/esm/formatDistanceStrict/index.js.map +1 -0
  17. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildFormatLongFn/index.js +26 -0
  18. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildFormatLongFn/index.js.map +1 -0
  19. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildLocalizeFn/index.js +39 -0
  20. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildLocalizeFn/index.js.map +1 -0
  21. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildMatchFn/index.js +65 -0
  22. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildMatchFn/index.js.map +1 -0
  23. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildMatchPatternFn/index.js +34 -0
  24. package/build/cjs/node_modules/date-fns/esm/locale/_lib/buildMatchPatternFn/index.js.map +1 -0
  25. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/formatDistance/index.js +105 -0
  26. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/formatDistance/index.js.map +1 -0
  27. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/formatLong/index.js +52 -0
  28. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/formatLong/index.js.map +1 -0
  29. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/formatRelative/index.js +31 -0
  30. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/formatRelative/index.js.map +1 -0
  31. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/localize/index.js +164 -0
  32. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/localize/index.js.map +1 -0
  33. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/match/index.js +116 -0
  34. package/build/cjs/node_modules/date-fns/esm/locale/en-US/_lib/match/index.js.map +1 -0
  35. package/build/cjs/node_modules/date-fns/esm/locale/en-US/index.js +47 -0
  36. package/build/cjs/node_modules/date-fns/esm/locale/en-US/index.js.map +1 -0
  37. package/build/cjs/node_modules/date-fns/esm/toDate/index.js +70 -0
  38. package/build/cjs/node_modules/date-fns/esm/toDate/index.js.map +1 -0
  39. package/build/cjs/packages/react-router-devtools/src/Explorer.js.map +1 -1
  40. package/build/cjs/packages/react-router-devtools/src/useLocalStorage.js.map +1 -1
  41. package/build/cjs/packages/react-router-devtools/src/useMediaQuery.js +4 -0
  42. package/build/cjs/packages/react-router-devtools/src/useMediaQuery.js.map +1 -1
  43. package/build/esm/index.js +4 -0
  44. package/build/esm/index.js.map +1 -1
  45. package/build/stats-html.html +1 -1
  46. package/build/stats-react.json +2675 -2675
  47. package/build/umd/index.development.js +4 -0
  48. package/build/umd/index.development.js.map +1 -1
  49. package/build/umd/index.production.js.map +1 -1
  50. package/package.json +3 -3
  51. package/src/Explorer.tsx +1 -1
  52. package/src/useLocalStorage.ts +5 -5
  53. package/src/useMediaQuery.ts +3 -0
@@ -0,0 +1,70 @@
1
+ /**
2
+ * react-router-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
+ 'use strict';
12
+
13
+ Object.defineProperty(exports, '__esModule', { value: true });
14
+
15
+ var index = require('../_lib/requiredArgs/index.js');
16
+
17
+ /**
18
+ * @name toDate
19
+ * @category Common Helpers
20
+ * @summary Convert the given argument to an instance of Date.
21
+ *
22
+ * @description
23
+ * Convert the given argument to an instance of Date.
24
+ *
25
+ * If the argument is an instance of Date, the function returns its clone.
26
+ *
27
+ * If the argument is a number, it is treated as a timestamp.
28
+ *
29
+ * If the argument is none of the above, the function returns Invalid Date.
30
+ *
31
+ * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.
32
+ *
33
+ * @param {Date|Number} argument - the value to convert
34
+ * @returns {Date} the parsed date in the local time zone
35
+ * @throws {TypeError} 1 argument required
36
+ *
37
+ * @example
38
+ * // Clone the date:
39
+ * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))
40
+ * //=> Tue Feb 11 2014 11:30:30
41
+ *
42
+ * @example
43
+ * // Convert the timestamp to date:
44
+ * const result = toDate(1392098430000)
45
+ * //=> Tue Feb 11 2014 11:30:30
46
+ */
47
+
48
+ function toDate(argument) {
49
+ index["default"](1, arguments);
50
+ var argStr = Object.prototype.toString.call(argument); // Clone the date
51
+
52
+ if (argument instanceof Date || typeof argument === 'object' && argStr === '[object Date]') {
53
+ // Prevent the date to lose the milliseconds when passed to new Date() in IE10
54
+ return new Date(argument.getTime());
55
+ } else if (typeof argument === 'number' || argStr === '[object Number]') {
56
+ return new Date(argument);
57
+ } else {
58
+ if ((typeof argument === 'string' || argStr === '[object String]') && typeof console !== 'undefined') {
59
+ // eslint-disable-next-line no-console
60
+ console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"); // eslint-disable-next-line no-console
61
+
62
+ console.warn(new Error().stack);
63
+ }
64
+
65
+ return new Date(NaN);
66
+ }
67
+ }
68
+
69
+ exports["default"] = toDate;
70
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../../node_modules/date-fns/esm/toDate/index.js"],"sourcesContent":["import requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n *\n * @param {Date|Number} argument - the value to convert\n * @returns {Date} the parsed date in the local time zone\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Clone the date:\n * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert the timestamp to date:\n * const result = toDate(1392098430000)\n * //=> Tue Feb 11 2014 11:30:30\n */\n\nexport default function toDate(argument) {\n requiredArgs(1, arguments);\n var argStr = Object.prototype.toString.call(argument); // Clone the date\n\n if (argument instanceof Date || typeof argument === 'object' && argStr === '[object Date]') {\n // Prevent the date to lose the milliseconds when passed to new Date() in IE10\n return new Date(argument.getTime());\n } else if (typeof argument === 'number' || argStr === '[object Number]') {\n return new Date(argument);\n } else {\n if ((typeof argument === 'string' || argStr === '[object String]') && typeof console !== 'undefined') {\n // eslint-disable-next-line no-console\n console.warn(\"Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments\"); // eslint-disable-next-line no-console\n\n console.warn(new Error().stack);\n }\n\n return new Date(NaN);\n }\n}"],"names":["requiredArgs"],"mappings":";;;;;;;;;;;;;;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAAS,MAAM,CAAC,QAAQ,EAAE;AACzC,EAAEA,gBAAY,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAC7B,EAAE,IAAI,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACxD;AACA,EAAE,IAAI,QAAQ,YAAY,IAAI,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,MAAM,KAAK,eAAe,EAAE;AAC9F;AACA,IAAI,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;AACxC,GAAG,MAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,MAAM,KAAK,iBAAiB,EAAE;AAC3E,IAAI,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC9B,GAAG,MAAM;AACT,IAAI,IAAI,CAAC,OAAO,QAAQ,KAAK,QAAQ,IAAI,MAAM,KAAK,iBAAiB,KAAK,OAAO,OAAO,KAAK,WAAW,EAAE;AAC1G;AACA,MAAM,OAAO,CAAC,IAAI,CAAC,oNAAoN,CAAC,CAAC;AACzO;AACA,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;AACtC,KAAK;AACL;AACA,IAAI,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,GAAG;AACH;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Explorer.js","sources":["../../../../../src/Explorer.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { displayValue, styled } from './utils'\n\nexport const Entry = styled('div', {\n fontFamily: 'Menlo, monospace',\n fontSize: '.7rem',\n lineHeight: '1.7',\n outline: 'none',\n wordBreak: 'break-word',\n})\n\nexport const Label = styled('span', {\n color: 'white',\n})\n\nexport const LabelButton = styled('button', {\n cursor: 'pointer',\n color: 'white',\n})\n\nexport const ExpandButton = styled('button', {\n cursor: 'pointer',\n color: 'inherit',\n font: 'inherit',\n outline: 'inherit',\n background: 'transparent',\n border: 'none',\n padding: 0,\n})\n\nexport const Value = styled('span', (_props, theme) => ({\n color: theme.danger,\n}))\n\nexport const SubEntries = styled('div', {\n marginLeft: '.1em',\n paddingLeft: '1em',\n borderLeft: '2px solid rgba(0,0,0,.15)',\n})\n\nexport const Info = styled('span', {\n color: 'grey',\n fontSize: '.7em',\n})\n\ntype ExpanderProps = {\n expanded: boolean\n style?: React.CSSProperties\n}\n\nexport const Expander = ({ expanded, style = {} }: ExpanderProps) => (\n <span\n style={{\n display: 'inline-block',\n transition: 'all .1s ease',\n transform: `rotate(${expanded ? 90 : 0}deg) ${style.transform || ''}`,\n ...style,\n }}\n >\n ▶\n </span>\n)\n\ntype Entry = {\n label: string\n}\n\ntype RendererProps = {\n HandleEntry: HandleEntryComponent\n label?: React.ReactNode\n value: unknown\n subEntries: Entry[]\n subEntryPages: Entry[][]\n type: string\n expanded: boolean\n toggleExpanded: () => void\n pageSize: number\n renderer?: Renderer\n}\n\n/**\n * Chunk elements in the array by size\n *\n * when the array cannot be chunked evenly by size, the last chunk will be\n * filled with the remaining elements\n *\n * @example\n * chunkArray(['a','b', 'c', 'd', 'e'], 2) // returns [['a','b'], ['c', 'd'], ['e']]\n */\nexport function chunkArray<T>(array: T[], size: number): T[][] {\n if (size < 1) return []\n let i = 0\n const result: T[][] = []\n while (i < array.length) {\n result.push(array.slice(i, i + size))\n i = i + size\n }\n return result\n}\n\ntype Renderer = (props: RendererProps) => JSX.Element\n\nexport const DefaultRenderer: Renderer = ({\n HandleEntry,\n label,\n value,\n subEntries = [],\n subEntryPages = [],\n type,\n expanded = false,\n toggleExpanded,\n pageSize,\n renderer,\n}) => {\n const [expandedPages, setExpandedPages] = React.useState<number[]>([])\n const [valueSnapshot, setValueSnapshot] = React.useState(undefined)\n\n const refreshValueSnapshot = () => {\n setValueSnapshot((value as () => any)())\n }\n\n return (\n <Entry key={label}>\n {subEntryPages.length ? (\n <>\n <ExpandButton onClick={() => toggleExpanded()}>\n <Expander expanded={expanded} /> {label}{' '}\n <Info>\n {String(type).toLowerCase() === 'iterable' ? '(Iterable) ' : ''}\n {subEntries.length} {subEntries.length > 1 ? `items` : `item`}\n </Info>\n </ExpandButton>\n {expanded ? (\n subEntryPages.length === 1 ? (\n <SubEntries>\n {subEntries.map((entry) => (\n <HandleEntry key={entry.label} entry={entry} />\n ))}\n </SubEntries>\n ) : (\n <SubEntries>\n {subEntryPages.map((entries, index) => (\n <div key={index}>\n <Entry>\n <LabelButton\n onClick={() =>\n setExpandedPages((old) =>\n old.includes(index)\n ? old.filter((d) => d !== index)\n : [...old, index],\n )\n }\n >\n <Expander expanded={expanded} /> [{index * pageSize} ...{' '}\n {index * pageSize + pageSize - 1}]\n </LabelButton>\n {expandedPages.includes(index) ? (\n <SubEntries>\n {entries.map((entry) => (\n <HandleEntry key={entry.label} entry={entry} />\n ))}\n </SubEntries>\n ) : null}\n </Entry>\n </div>\n ))}\n </SubEntries>\n )\n ) : null}\n </>\n ) : type === 'function' ? (\n <>\n <Explorer\n renderer={renderer}\n label={\n <button\n onClick={refreshValueSnapshot}\n style={{\n appearance: 'none',\n border: '0',\n background: 'transparent',\n }}\n >\n <Label>{label}</Label> 🔄{' '}\n </button>\n }\n value={valueSnapshot}\n defaultExpanded={{}}\n />\n </>\n ) : (\n <>\n <Label>{label}:</Label> <Value>{displayValue(value)}</Value>\n </>\n )}\n </Entry>\n )\n}\n\ntype HandleEntryComponent = (props: { entry: Entry }) => JSX.Element\n\ntype ExplorerProps = Partial<RendererProps> & {\n renderer?: Renderer\n defaultExpanded?: true | Record<string, boolean>\n}\n\ntype Property = {\n defaultExpanded?: boolean | Record<string, boolean>\n label: string\n value: unknown\n}\n\nfunction isIterable(x: any): x is Iterable<unknown> {\n return Symbol.iterator in x\n}\n\nexport default function Explorer({\n value,\n defaultExpanded,\n renderer = DefaultRenderer,\n pageSize = 100,\n ...rest\n}: ExplorerProps) {\n const [expanded, setExpanded] = React.useState(Boolean(defaultExpanded))\n const toggleExpanded = React.useCallback(() => setExpanded((old) => !old), [])\n\n let type: string = typeof value\n let subEntries: Property[] = []\n\n const makeProperty = (sub: { label: string; value: unknown }): Property => {\n const subDefaultExpanded =\n defaultExpanded === true\n ? { [sub.label]: true }\n : defaultExpanded?.[sub.label]\n return {\n ...sub,\n defaultExpanded: subDefaultExpanded,\n }\n }\n\n if (Array.isArray(value)) {\n type = 'array'\n subEntries = value.map((d, i) =>\n makeProperty({\n label: i.toString(),\n value: d,\n }),\n )\n } else if (\n value !== null &&\n typeof value === 'object' &&\n isIterable(value) &&\n typeof value[Symbol.iterator] === 'function'\n ) {\n type = 'Iterable'\n subEntries = Array.from(value, (val, i) =>\n makeProperty({\n label: i.toString(),\n value: val,\n }),\n )\n } else if (typeof value === 'object' && value !== null) {\n type = 'object'\n subEntries = Object.entries(value).map(([key, val]) =>\n makeProperty({\n label: key,\n value: val,\n }),\n )\n }\n\n const subEntryPages = chunkArray(subEntries, pageSize)\n\n return renderer({\n HandleEntry: ({ entry }) => (\n <Explorer value={value} renderer={renderer} {...rest} {...entry} />\n ),\n type,\n subEntries,\n subEntryPages,\n value,\n expanded,\n toggleExpanded,\n pageSize,\n ...rest,\n })\n}\n"],"names":["Entry","styled","fontFamily","fontSize","lineHeight","outline","wordBreak","Label","color","LabelButton","cursor","ExpandButton","font","background","border","padding","Value","_props","theme","danger","SubEntries","marginLeft","paddingLeft","borderLeft","Info","Expander","expanded","style","React","_extends","display","transition","transform","chunkArray","array","size","i","result","length","push","slice","DefaultRenderer","HandleEntry","label","value","subEntries","subEntryPages","type","toggleExpanded","pageSize","renderer","expandedPages","setExpandedPages","useState","valueSnapshot","setValueSnapshot","undefined","refreshValueSnapshot","String","toLowerCase","map","entry","entries","index","old","includes","filter","d","appearance","displayValue","isIterable","x","Symbol","iterator","Explorer","defaultExpanded","rest","_objectWithoutPropertiesLoose","setExpanded","Boolean","useCallback","makeProperty","sub","subDefaultExpanded","Array","isArray","toString","from","val","Object","key"],"mappings":"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"}
1
+ {"version":3,"file":"Explorer.js","sources":["../../../../../src/Explorer.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { displayValue, styled } from './utils'\n\nexport const Entry = styled('div', {\n fontFamily: 'Menlo, monospace',\n fontSize: '.7rem',\n lineHeight: '1.7',\n outline: 'none',\n wordBreak: 'break-word',\n})\n\nexport const Label = styled('span', {\n color: 'white',\n})\n\nexport const LabelButton = styled('button', {\n cursor: 'pointer',\n color: 'white',\n})\n\nexport const ExpandButton = styled('button', {\n cursor: 'pointer',\n color: 'inherit',\n font: 'inherit',\n outline: 'inherit',\n background: 'transparent',\n border: 'none',\n padding: 0,\n})\n\nexport const Value = styled('span', (_props, theme) => ({\n color: theme.danger,\n}))\n\nexport const SubEntries = styled('div', {\n marginLeft: '.1em',\n paddingLeft: '1em',\n borderLeft: '2px solid rgba(0,0,0,.15)',\n})\n\nexport const Info = styled('span', {\n color: 'grey',\n fontSize: '.7em',\n})\n\ntype ExpanderProps = {\n expanded: boolean\n style?: React.CSSProperties\n}\n\nexport const Expander = ({ expanded, style = {} }: ExpanderProps) => (\n <span\n style={{\n display: 'inline-block',\n transition: 'all .1s ease',\n transform: `rotate(${expanded ? 90 : 0}deg) ${style.transform || ''}`,\n ...style,\n }}\n >\n ▶\n </span>\n)\n\ntype Entry = {\n label: string\n}\n\ntype RendererProps = {\n HandleEntry: HandleEntryComponent\n label?: React.ReactNode\n value: unknown\n subEntries: Entry[]\n subEntryPages: Entry[][]\n type: string\n expanded: boolean\n toggleExpanded: () => void\n pageSize: number\n renderer?: Renderer\n}\n\n/**\n * Chunk elements in the array by size\n *\n * when the array cannot be chunked evenly by size, the last chunk will be\n * filled with the remaining elements\n *\n * @example\n * chunkArray(['a','b', 'c', 'd', 'e'], 2) // returns [['a','b'], ['c', 'd'], ['e']]\n */\nexport function chunkArray<T>(array: T[], size: number): T[][] {\n if (size < 1) return []\n let i = 0\n const result: T[][] = []\n while (i < array.length) {\n result.push(array.slice(i, i + size))\n i = i + size\n }\n return result\n}\n\ntype Renderer = (props: RendererProps) => JSX.Element\n\nexport const DefaultRenderer: Renderer = ({\n HandleEntry,\n label,\n value,\n subEntries = [],\n subEntryPages = [],\n type,\n expanded = false,\n toggleExpanded,\n pageSize,\n renderer,\n}) => {\n const [expandedPages, setExpandedPages] = React.useState<number[]>([])\n const [valueSnapshot, setValueSnapshot] = React.useState(undefined)\n\n const refreshValueSnapshot = () => {\n setValueSnapshot((value as () => any)())\n }\n\n return (\n <Entry key={label as string}>\n {subEntryPages.length ? (\n <>\n <ExpandButton onClick={() => toggleExpanded()}>\n <Expander expanded={expanded} /> {label}{' '}\n <Info>\n {String(type).toLowerCase() === 'iterable' ? '(Iterable) ' : ''}\n {subEntries.length} {subEntries.length > 1 ? `items` : `item`}\n </Info>\n </ExpandButton>\n {expanded ? (\n subEntryPages.length === 1 ? (\n <SubEntries>\n {subEntries.map((entry) => (\n <HandleEntry key={entry.label} entry={entry} />\n ))}\n </SubEntries>\n ) : (\n <SubEntries>\n {subEntryPages.map((entries, index) => (\n <div key={index}>\n <Entry>\n <LabelButton\n onClick={() =>\n setExpandedPages((old) =>\n old.includes(index)\n ? old.filter((d) => d !== index)\n : [...old, index],\n )\n }\n >\n <Expander expanded={expanded} /> [{index * pageSize} ...{' '}\n {index * pageSize + pageSize - 1}]\n </LabelButton>\n {expandedPages.includes(index) ? (\n <SubEntries>\n {entries.map((entry) => (\n <HandleEntry key={entry.label} entry={entry} />\n ))}\n </SubEntries>\n ) : null}\n </Entry>\n </div>\n ))}\n </SubEntries>\n )\n ) : null}\n </>\n ) : type === 'function' ? (\n <>\n <Explorer\n renderer={renderer}\n label={\n <button\n onClick={refreshValueSnapshot}\n style={{\n appearance: 'none',\n border: '0',\n background: 'transparent',\n }}\n >\n <Label>{label}</Label> 🔄{' '}\n </button>\n }\n value={valueSnapshot}\n defaultExpanded={{}}\n />\n </>\n ) : (\n <>\n <Label>{label}:</Label> <Value>{displayValue(value)}</Value>\n </>\n )}\n </Entry>\n )\n}\n\ntype HandleEntryComponent = (props: { entry: Entry }) => JSX.Element\n\ntype ExplorerProps = Partial<RendererProps> & {\n renderer?: Renderer\n defaultExpanded?: true | Record<string, boolean>\n}\n\ntype Property = {\n defaultExpanded?: boolean | Record<string, boolean>\n label: string\n value: unknown\n}\n\nfunction isIterable(x: any): x is Iterable<unknown> {\n return Symbol.iterator in x\n}\n\nexport default function Explorer({\n value,\n defaultExpanded,\n renderer = DefaultRenderer,\n pageSize = 100,\n ...rest\n}: ExplorerProps) {\n const [expanded, setExpanded] = React.useState(Boolean(defaultExpanded))\n const toggleExpanded = React.useCallback(() => setExpanded((old) => !old), [])\n\n let type: string = typeof value\n let subEntries: Property[] = []\n\n const makeProperty = (sub: { label: string; value: unknown }): Property => {\n const subDefaultExpanded =\n defaultExpanded === true\n ? { [sub.label]: true }\n : defaultExpanded?.[sub.label]\n return {\n ...sub,\n defaultExpanded: subDefaultExpanded,\n }\n }\n\n if (Array.isArray(value)) {\n type = 'array'\n subEntries = value.map((d, i) =>\n makeProperty({\n label: i.toString(),\n value: d,\n }),\n )\n } else if (\n value !== null &&\n typeof value === 'object' &&\n isIterable(value) &&\n typeof value[Symbol.iterator] === 'function'\n ) {\n type = 'Iterable'\n subEntries = Array.from(value, (val, i) =>\n makeProperty({\n label: i.toString(),\n value: val,\n }),\n )\n } else if (typeof value === 'object' && value !== null) {\n type = 'object'\n subEntries = Object.entries(value).map(([key, val]) =>\n makeProperty({\n label: key,\n value: val,\n }),\n )\n }\n\n const subEntryPages = chunkArray(subEntries, pageSize)\n\n return renderer({\n HandleEntry: ({ entry }) => (\n <Explorer value={value} renderer={renderer} {...rest} {...entry} />\n ),\n type,\n subEntries,\n subEntryPages,\n value,\n expanded,\n toggleExpanded,\n pageSize,\n ...rest,\n })\n}\n"],"names":["Entry","styled","fontFamily","fontSize","lineHeight","outline","wordBreak","Label","color","LabelButton","cursor","ExpandButton","font","background","border","padding","Value","_props","theme","danger","SubEntries","marginLeft","paddingLeft","borderLeft","Info","Expander","expanded","style","React","_extends","display","transition","transform","chunkArray","array","size","i","result","length","push","slice","DefaultRenderer","HandleEntry","label","value","subEntries","subEntryPages","type","toggleExpanded","pageSize","renderer","expandedPages","setExpandedPages","useState","valueSnapshot","setValueSnapshot","undefined","refreshValueSnapshot","String","toLowerCase","map","entry","entries","index","old","includes","filter","d","appearance","displayValue","isIterable","x","Symbol","iterator","Explorer","defaultExpanded","rest","_objectWithoutPropertiesLoose","setExpanded","Boolean","useCallback","makeProperty","sub","subDefaultExpanded","Array","isArray","toString","from","val","Object","key"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLocalStorage.js","sources":["../../../../../src/useLocalStorage.ts"],"sourcesContent":["import 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 => {\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,OAAM,OAAA,EAAA;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,yBAAK,CAACC,QAAN,EAA1B,CAAA;EAEAD,yBAAK,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,yBAAK,CAACK,WAAN,CACbC,OAAO,IAAI;IACTP,QAAQ,CAACQ,GAAG,IAAI;MACd,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,iBAAM,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;;;;"}
1
+ {"version":3,"file":"useLocalStorage.js","sources":["../../../../../src/useLocalStorage.ts"],"sourcesContent":["import 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,OAAM,OAAA,EAAA;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,yBAAK,CAACC,QAAN,EAA1B,CAAA;EAEAD,yBAAK,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,yBAAK,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,iBAAM,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;;;;"}
@@ -24,6 +24,8 @@ function useMediaQuery(query) {
24
24
  if (typeof window !== 'undefined') {
25
25
  return window.matchMedia && window.matchMedia(query).matches;
26
26
  }
27
+
28
+ return;
27
29
  }); // Watch for changes
28
30
 
29
31
  React__default["default"].useEffect(() => {
@@ -49,6 +51,8 @@ function useMediaQuery(query) {
49
51
  matcher.removeListener(onChange);
50
52
  };
51
53
  }
54
+
55
+ return;
52
56
  }, [isMatch, query, setIsMatch]);
53
57
  return isMatch;
54
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useMediaQuery.js","sources":["../../../../../src/useMediaQuery.ts"],"sourcesContent":["import 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 && window.matchMedia(query).matches\n }\n })\n\n // Watch for changes\n React.useEffect(() => {\n if (typeof window !== 'undefined') {\n if (!window.matchMedia) {\n return\n }\n\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,yBAAK,CAACC,QAAN,CAAe,MAAM;AACjD,IAAA,IAAI,OAAOC,MAAP,KAAkB,WAAtB,EAAmC;MACjC,OAAOA,MAAM,CAACC,UAAP,IAAqBD,MAAM,CAACC,UAAP,CAAkBN,KAAlB,CAAA,CAAyBO,OAArD,CAAA;AACD,KAAA;GAH2B,CAA9B,CAFwE;;EASxEJ,yBAAK,CAACK,SAAN,CAAgB,MAAM;AACpB,IAAA,IAAI,OAAOH,MAAP,KAAkB,WAAtB,EAAmC;AACjC,MAAA,IAAI,CAACA,MAAM,CAACC,UAAZ,EAAwB;AACtB,QAAA,OAAA;AACD,OAHgC;;;MAMjC,MAAMG,OAAO,GAAGJ,MAAM,CAACC,UAAP,CAAkBN,KAAlB,CAAhB,CANiC;;AASjC,MAAA,MAAMU,QAAQ,GAAG,IAAA,IAAA;QAAA,IAAC;AAAEH,UAAAA,OAAAA;SAAH,GAAA,IAAA,CAAA;QAAA,OACfL,UAAU,CAACK,OAAD,CADK,CAAA;AAAA,OAAjB,CATiC;;;MAajCE,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,GArBD,EAqBG,CAACT,OAAD,EAAUD,KAAV,EAAiBE,UAAjB,CArBH,CAAA,CAAA;AAuBA,EAAA,OAAOD,OAAP,CAAA;AACD;;;;"}
1
+ {"version":3,"file":"useMediaQuery.js","sources":["../../../../../src/useMediaQuery.ts"],"sourcesContent":["import 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 && window.matchMedia(query).matches\n }\n return\n })\n\n // Watch for changes\n React.useEffect(() => {\n if (typeof window !== 'undefined') {\n if (!window.matchMedia) {\n return\n }\n\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\n return\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,yBAAK,CAACC,QAAN,CAAe,MAAM;AACjD,IAAA,IAAI,OAAOC,MAAP,KAAkB,WAAtB,EAAmC;MACjC,OAAOA,MAAM,CAACC,UAAP,IAAqBD,MAAM,CAACC,UAAP,CAAkBN,KAAlB,CAAA,CAAyBO,OAArD,CAAA;AACD,KAAA;;AACD,IAAA,OAAA;GAJ4B,CAA9B,CAFwE;;EAUxEJ,yBAAK,CAACK,SAAN,CAAgB,MAAM;AACpB,IAAA,IAAI,OAAOH,MAAP,KAAkB,WAAtB,EAAmC;AACjC,MAAA,IAAI,CAACA,MAAM,CAACC,UAAZ,EAAwB;AACtB,QAAA,OAAA;AACD,OAHgC;;;MAMjC,MAAMG,OAAO,GAAGJ,MAAM,CAACC,UAAP,CAAkBN,KAAlB,CAAhB,CANiC;;AASjC,MAAA,MAAMU,QAAQ,GAAG,IAAA,IAAA;QAAA,IAAC;AAAEH,UAAAA,OAAAA;SAAH,GAAA,IAAA,CAAA;QAAA,OACfL,UAAU,CAACK,OAAD,CADK,CAAA;AAAA,OAAjB,CATiC;;;MAajCE,OAAO,CAACE,WAAR,CAAoBD,QAApB,CAAA,CAAA;AAEA,MAAA,OAAO,MAAM;AACX;QACAD,OAAO,CAACG,cAAR,CAAuBF,QAAvB,CAAA,CAAA;OAFF,CAAA;AAID,KAAA;;AAED,IAAA,OAAA;AACD,GAvBD,EAuBG,CAACT,OAAD,EAAUD,KAAV,EAAiBE,UAAjB,CAvBH,CAAA,CAAA;AAyBA,EAAA,OAAOD,OAAP,CAAA;AACD;;;;"}
@@ -956,6 +956,8 @@ function useMediaQuery(query) {
956
956
  if (typeof window !== 'undefined') {
957
957
  return window.matchMedia && window.matchMedia(query).matches;
958
958
  }
959
+
960
+ return;
959
961
  }); // Watch for changes
960
962
 
961
963
  React__default.useEffect(() => {
@@ -981,6 +983,8 @@ function useMediaQuery(query) {
981
983
  matcher.removeListener(onChange);
982
984
  };
983
985
  }
986
+
987
+ return;
984
988
  }, [isMatch, query, setIsMatch]);
985
989
  return isMatch;
986
990
  }