@uiw/react-json-view 2.0.0-alpha.1 → 2.0.0-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 (60) hide show
  1. package/README.md +21 -22
  2. package/cjs/Container.js +3 -6
  3. package/cjs/comps/KeyValues.js +10 -8
  4. package/cjs/comps/NestedClose.js +2 -2
  5. package/cjs/comps/NestedOpen.js +15 -14
  6. package/cjs/comps/Value.js +12 -12
  7. package/cjs/index.d.ts +1 -1
  8. package/cjs/index.js +5 -5
  9. package/cjs/section/CountInfo.d.ts +10 -1
  10. package/cjs/section/CountInfo.js +42 -2
  11. package/cjs/section/CountInfoExtra.d.ts +10 -1
  12. package/cjs/section/CountInfoExtra.js +32 -2
  13. package/cjs/section/Ellipsis.d.ts +10 -0
  14. package/cjs/section/Ellipsis.js +30 -2
  15. package/cjs/section/KeyName.d.ts +7 -0
  16. package/cjs/section/KeyName.js +36 -2
  17. package/cjs/store/Symbols.js +1 -0
  18. package/{esm/comps/ReRender/Symbols.d.ts → cjs/symbol/index.d.ts} +4 -6
  19. package/cjs/{comps/ReRender/Symbols.js → symbol/index.js} +26 -21
  20. package/{esm/comps/ReRender/Types.d.ts → cjs/types/index.d.ts} +6 -13
  21. package/cjs/{comps/ReRender/Types.js → types/index.js} +38 -72
  22. package/cjs/utils/useHighlight.js +0 -1
  23. package/esm/Container.js +4 -5
  24. package/esm/comps/KeyValues.js +7 -5
  25. package/esm/comps/NestedClose.js +1 -1
  26. package/esm/comps/NestedOpen.js +10 -9
  27. package/esm/comps/Value.js +1 -1
  28. package/esm/index.d.ts +1 -1
  29. package/esm/index.js +2 -2
  30. package/esm/section/CountInfo.d.ts +10 -1
  31. package/esm/section/CountInfo.js +43 -1
  32. package/esm/section/CountInfoExtra.d.ts +10 -1
  33. package/esm/section/CountInfoExtra.js +32 -1
  34. package/esm/section/Ellipsis.d.ts +10 -0
  35. package/esm/section/Ellipsis.js +31 -1
  36. package/esm/section/KeyName.d.ts +7 -0
  37. package/esm/section/KeyName.js +37 -1
  38. package/esm/store/Symbols.js +1 -0
  39. package/{cjs/comps/ReRender/Symbols.d.ts → esm/symbol/index.d.ts} +4 -6
  40. package/esm/{comps/ReRender/Symbols.js → symbol/index.js} +26 -24
  41. package/{cjs/comps/ReRender/Types.d.ts → esm/types/index.d.ts} +6 -13
  42. package/esm/{comps/ReRender/Types.js → types/index.js} +34 -71
  43. package/esm/utils/useHighlight.js +0 -1
  44. package/package.json +1 -1
  45. package/cjs/comps/CountInfo.d.ts +0 -19
  46. package/cjs/comps/CountInfo.js +0 -72
  47. package/cjs/comps/Ellipsis.d.ts +0 -10
  48. package/cjs/comps/Ellipsis.js +0 -35
  49. package/cjs/comps/Key.d.ts +0 -7
  50. package/cjs/comps/Key.js +0 -39
  51. package/cjs/type.d.ts +0 -50
  52. package/cjs/type.js +0 -57
  53. package/esm/comps/CountInfo.d.ts +0 -19
  54. package/esm/comps/CountInfo.js +0 -70
  55. package/esm/comps/Ellipsis.d.ts +0 -10
  56. package/esm/comps/Ellipsis.js +0 -31
  57. package/esm/comps/Key.d.ts +0 -7
  58. package/esm/comps/Key.js +0 -35
  59. package/esm/type.d.ts +0 -50
  60. package/esm/type.js +0 -50
@@ -1,11 +1,16 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
- exports.KeyName = void 0;
7
+ exports.KeyNameComp = exports.KeyName = void 0;
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
7
10
  var _Section = require("../store/Section");
8
11
  var _useRender = require("../utils/useRender");
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ var _excluded = ["as", "render"];
9
14
  var KeyName = function KeyName(props) {
10
15
  var _useSectionStore = (0, _Section.useSectionStore)(),
11
16
  _useSectionStore$KeyN = _useSectionStore.KeyName,
@@ -14,4 +19,33 @@ var KeyName = function KeyName(props) {
14
19
  return null;
15
20
  };
16
21
  exports.KeyName = KeyName;
17
- KeyName.displayName = 'JVR.KeyName';
22
+ KeyName.displayName = 'JVR.KeyName';
23
+ var KeyNameComp = function KeyNameComp(props) {
24
+ var children = props.children,
25
+ value = props.value,
26
+ keyName = props.keyName;
27
+ var isNumber = typeof children === 'number';
28
+ var style = {
29
+ color: isNumber ? 'var(--w-rjv-key-number, #268bd2)' : 'var(--w-rjv-key-string, #002b36)'
30
+ };
31
+ var _useSectionStore2 = (0, _Section.useSectionStore)(),
32
+ _useSectionStore2$Key = _useSectionStore2.KeyName,
33
+ Comp = _useSectionStore2$Key === void 0 ? {} : _useSectionStore2$Key;
34
+ var as = Comp.as,
35
+ render = Comp.render,
36
+ reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded);
37
+ reset.style = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset.style), style);
38
+ var Elm = as || 'span';
39
+ var child = render && typeof render === 'function' && render((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
40
+ children: children
41
+ }), {
42
+ value: value,
43
+ keyName: keyName
44
+ });
45
+ if (child) return child;
46
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(Elm, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
47
+ children: children
48
+ }));
49
+ };
50
+ exports.KeyNameComp = KeyNameComp;
51
+ KeyNameComp.displayName = 'JVR.KeyNameComp';
@@ -15,6 +15,7 @@ var _jsxRuntime = require("react/jsx-runtime");
15
15
  var initialState = {
16
16
  Arrow: {
17
17
  as: 'span',
18
+ className: 'w-rjv-arrow',
18
19
  style: {
19
20
  transform: 'rotate(0deg)',
20
21
  transition: 'all 0.3s'
@@ -1,16 +1,14 @@
1
1
  /// <reference types="react" />
2
- import { type SymbolsElement } from '../../store/Symbols';
3
- import { type TagType } from '../../store/Types';
2
+ import { type SymbolsElement } from '../store/Symbols';
3
+ import { type TagType } from '../store/Types';
4
4
  export declare const Quote: {
5
5
  (props: {
6
6
  isNumber?: boolean | undefined;
7
- }): string | number | true | Iterable<import("react").ReactNode> | import("react/jsx-runtime").JSX.Element | null;
7
+ } & import("react").HTMLAttributes<HTMLElement>): string | number | true | Iterable<import("react").ReactNode> | import("react/jsx-runtime").JSX.Element | null;
8
8
  displayName: string;
9
9
  };
10
10
  export declare const ValueQuote: {
11
- (props: {
12
- isNumber?: boolean | undefined;
13
- }): string | number | true | Iterable<import("react").ReactNode> | import("react/jsx-runtime").JSX.Element | null;
11
+ (props: React.HTMLAttributes<HTMLElement>): string | number | true | Iterable<import("react").ReactNode> | import("react/jsx-runtime").JSX.Element;
14
12
  displayName: string;
15
13
  };
16
14
  export declare const Colon: {
@@ -5,32 +5,37 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.ValueQuote = exports.Quote = exports.Colon = exports.BracketsOpen = exports.BracketsClose = exports.Arrow = void 0;
8
+ var _objectDestructuringEmpty2 = _interopRequireDefault(require("@babel/runtime/helpers/objectDestructuringEmpty"));
9
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
8
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
- var _Symbols = require("../../store/Symbols");
11
- var _Expands = require("../../store/Expands");
12
+ var _Symbols = require("../store/Symbols");
13
+ var _Expands = require("../store/Expands");
12
14
  var _jsxRuntime = require("react/jsx-runtime");
13
- var _excluded = ["as", "render"],
15
+ var _excluded = ["isNumber"],
14
16
  _excluded2 = ["as", "render"],
15
17
  _excluded3 = ["as", "render"],
16
- _excluded4 = ["as", "style", "render"],
17
- _excluded5 = ["as", "render"],
18
+ _excluded4 = ["as", "render"],
19
+ _excluded5 = ["as", "style", "render"],
18
20
  _excluded6 = ["as", "render"],
19
21
  _excluded7 = ["as", "render"],
20
- _excluded8 = ["as", "render"];
22
+ _excluded8 = ["as", "render"],
23
+ _excluded9 = ["as", "render"];
21
24
  var Quote = function Quote(props) {
22
25
  var _useSymbolsStore = (0, _Symbols.useSymbolsStore)(),
23
26
  _useSymbolsStore$Quot = _useSymbolsStore.Quote,
24
27
  Comp = _useSymbolsStore$Quot === void 0 ? {} : _useSymbolsStore$Quot;
25
- var isNumber = props.isNumber;
28
+ var isNumber = props.isNumber,
29
+ other = (0, _objectWithoutProperties2["default"])(props, _excluded);
26
30
  if (isNumber) return null;
27
31
  var as = Comp.as,
28
32
  render = Comp.render,
29
- reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded);
33
+ reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded2);
30
34
  var Elm = as || 'span';
31
- var child = render && typeof render === 'function' && render(reset);
35
+ var elmProps = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, other), reset);
36
+ var child = render && typeof render === 'function' && render(elmProps);
32
37
  if (child) return child;
33
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(Elm, (0, _objectSpread2["default"])({}, reset));
38
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(Elm, (0, _objectSpread2["default"])({}, elmProps));
34
39
  };
35
40
  exports.Quote = Quote;
36
41
  Quote.displayName = 'JVR.Quote';
@@ -38,15 +43,15 @@ var ValueQuote = function ValueQuote(props) {
38
43
  var _useSymbolsStore2 = (0, _Symbols.useSymbolsStore)(),
39
44
  _useSymbolsStore2$Val = _useSymbolsStore2.ValueQuote,
40
45
  Comp = _useSymbolsStore2$Val === void 0 ? {} : _useSymbolsStore2$Val;
41
- var isNumber = props.isNumber;
42
- if (isNumber) return null;
46
+ var other = (0, _extends2["default"])({}, ((0, _objectDestructuringEmpty2["default"])(props), props));
43
47
  var as = Comp.as,
44
48
  render = Comp.render,
45
- reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded2);
49
+ reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded3);
46
50
  var Elm = as || 'span';
47
- var child = render && typeof render === 'function' && render(reset);
51
+ var elmProps = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, other), reset);
52
+ var child = render && typeof render === 'function' && render(elmProps);
48
53
  if (child) return child;
49
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(Elm, (0, _objectSpread2["default"])({}, reset));
54
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(Elm, (0, _objectSpread2["default"])({}, elmProps));
50
55
  };
51
56
  exports.ValueQuote = ValueQuote;
52
57
  ValueQuote.displayName = 'JVR.ValueQuote';
@@ -56,7 +61,7 @@ var Colon = function Colon() {
56
61
  Comp = _useSymbolsStore3$Col === void 0 ? {} : _useSymbolsStore3$Col;
57
62
  var as = Comp.as,
58
63
  render = Comp.render,
59
- reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded3);
64
+ reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded4);
60
65
  var Elm = as || 'span';
61
66
  var child = render && typeof render === 'function' && render(reset);
62
67
  if (child) return child;
@@ -74,7 +79,7 @@ var Arrow = function Arrow(props) {
74
79
  var as = Comp.as,
75
80
  style = Comp.style,
76
81
  render = Comp.render,
77
- reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded4);
82
+ reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded5);
78
83
  var Elm = as || 'span';
79
84
  var isRender = render && typeof render === 'function';
80
85
  var child = isRender && render((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
@@ -98,7 +103,7 @@ var BracketsOpen = function BracketsOpen(_ref) {
98
103
  if (isBrackets) {
99
104
  var as = BracketsLeft.as,
100
105
  _render = BracketsLeft.render,
101
- reset = (0, _objectWithoutProperties2["default"])(BracketsLeft, _excluded5);
106
+ reset = (0, _objectWithoutProperties2["default"])(BracketsLeft, _excluded6);
102
107
  var BracketsLeftComp = as || 'span';
103
108
  var _child = _render && typeof _render === 'function' && _render(reset);
104
109
  if (_child) return _child;
@@ -106,7 +111,7 @@ var BracketsOpen = function BracketsOpen(_ref) {
106
111
  }
107
112
  var elm = BraceLeft.as,
108
113
  render = BraceLeft.render,
109
- props = (0, _objectWithoutProperties2["default"])(BraceLeft, _excluded6);
114
+ props = (0, _objectWithoutProperties2["default"])(BraceLeft, _excluded7);
110
115
  var BraceLeftComp = elm || 'span';
111
116
  var child = render && typeof render === 'function' && render(props);
112
117
  if (child) return child;
@@ -126,7 +131,7 @@ var BracketsClose = function BracketsClose(_ref2) {
126
131
  if (isBrackets) {
127
132
  var as = BracketsRight.as,
128
133
  _render2 = BracketsRight.render,
129
- _reset = (0, _objectWithoutProperties2["default"])(BracketsRight, _excluded7);
134
+ _reset = (0, _objectWithoutProperties2["default"])(BracketsRight, _excluded8);
130
135
  var BracketsRightComp = as || 'span';
131
136
  var _child2 = _render2 && typeof _render2 === 'function' && _render2(_reset);
132
137
  if (_child2) return _child2;
@@ -134,7 +139,7 @@ var BracketsClose = function BracketsClose(_ref2) {
134
139
  }
135
140
  var elm = BraceRight.as,
136
141
  render = BraceRight.render,
137
- reset = (0, _objectWithoutProperties2["default"])(BraceRight, _excluded8);
142
+ reset = (0, _objectWithoutProperties2["default"])(BraceRight, _excluded9);
138
143
  var BraceRightComp = elm || 'span';
139
144
  var child = render && typeof render === 'function' && render(reset);
140
145
  if (child) return child;
@@ -1,16 +1,10 @@
1
1
  import { FC, PropsWithChildren } from 'react';
2
- export declare const SetComp: {
3
- ({ isSet }: {
4
- isSet: boolean;
5
- }): string | number | true | Iterable<import("react").ReactNode> | import("react/jsx-runtime").JSX.Element | null;
6
- displayName: string;
7
- };
8
- export declare const MapComp: {
9
- ({ isMap }: {
10
- isMap: boolean;
11
- }): string | number | true | Iterable<import("react").ReactNode> | import("react/jsx-runtime").JSX.Element | null;
12
- displayName: string;
13
- };
2
+ export declare const SetComp: FC<PropsWithChildren<{
3
+ value: unknown;
4
+ }>>;
5
+ export declare const MapComp: FC<PropsWithChildren<{
6
+ value: unknown;
7
+ }>>;
14
8
  type TypeProps = PropsWithChildren<{
15
9
  expandKey: string;
16
10
  keyName: string | number;
@@ -32,5 +26,4 @@ export declare const TypeDate: FC<{
32
26
  export declare const TypeUndefined: FC<TypeProps>;
33
27
  export declare const TypeNull: FC<TypeProps>;
34
28
  export declare const TypeNan: FC<TypeProps>;
35
- export declare const TypeEmptyValue: FC<TypeProps>;
36
29
  export {};
@@ -4,15 +4,15 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.TypeUrl = exports.TypeUndefined = exports.TypeTrue = exports.TypeString = exports.TypeNull = exports.TypeNan = exports.TypeInt = exports.TypeFloat = exports.TypeFalse = exports.TypeEmptyValue = exports.TypeDate = exports.TypeBigint = exports.SetComp = exports.MapComp = void 0;
7
+ exports.TypeUrl = exports.TypeUndefined = exports.TypeTrue = exports.TypeString = exports.TypeNull = exports.TypeNan = exports.TypeInt = exports.TypeFloat = exports.TypeFalse = exports.TypeDate = exports.TypeBigint = exports.SetComp = exports.MapComp = void 0;
8
8
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
9
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
11
  var _react = require("react");
12
- var _Types = require("../../store/Types");
13
- var _store = require("../../store");
14
- var _Symbols = require("./Symbols");
15
- var _Copied = require("../Copied");
12
+ var _Types = require("../store/Types");
13
+ var _store = require("../store");
14
+ var _symbol = require("../symbol");
15
+ var _Copied = require("../comps/Copied");
16
16
  var _jsxRuntime = require("react/jsx-runtime");
17
17
  var _excluded = ["as", "render"],
18
18
  _excluded2 = ["as", "render"],
@@ -26,45 +26,48 @@ var _excluded = ["as", "render"],
26
26
  _excluded10 = ["as", "render"],
27
27
  _excluded11 = ["as", "render"],
28
28
  _excluded12 = ["as", "render"],
29
- _excluded13 = ["as", "render"],
30
- _excluded14 = ["as", "render"];
29
+ _excluded13 = ["as", "render"];
31
30
  var SetComp = function SetComp(_ref) {
32
- var isSet = _ref.isSet;
31
+ var value = _ref.value;
33
32
  var _useTypesStore = (0, _Types.useTypesStore)(),
34
33
  _useTypesStore$Set = _useTypesStore.Set,
35
- Set = _useTypesStore$Set === void 0 ? {} : _useTypesStore$Set,
34
+ Comp = _useTypesStore$Set === void 0 ? {} : _useTypesStore$Set,
36
35
  displayDataTypes = _useTypesStore.displayDataTypes;
36
+ var isSet = value instanceof Set;
37
37
  if (!isSet || !displayDataTypes) return null;
38
- var as = Set.as,
39
- render = Set.render,
40
- reset = (0, _objectWithoutProperties2["default"])(Set, _excluded);
38
+ var as = Comp.as,
39
+ render = Comp.render,
40
+ reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded);
41
41
  var isRender = render && typeof render === 'function';
42
42
  var type = isRender && render(reset, {
43
- type: 'type'
43
+ type: 'type',
44
+ value: value
44
45
  });
45
46
  if (type) return type;
46
- var Comp = as || 'span';
47
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(Comp, (0, _objectSpread2["default"])({}, reset));
47
+ var Elm = as || 'span';
48
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(Elm, (0, _objectSpread2["default"])({}, reset));
48
49
  };
49
50
  exports.SetComp = SetComp;
50
51
  SetComp.displayName = 'JVR.SetComp';
51
52
  var MapComp = function MapComp(_ref2) {
52
- var isMap = _ref2.isMap;
53
+ var value = _ref2.value;
53
54
  var _useTypesStore2 = (0, _Types.useTypesStore)(),
54
55
  _useTypesStore2$Map = _useTypesStore2.Map,
55
- Map = _useTypesStore2$Map === void 0 ? {} : _useTypesStore2$Map,
56
+ Comp = _useTypesStore2$Map === void 0 ? {} : _useTypesStore2$Map,
56
57
  displayDataTypes = _useTypesStore2.displayDataTypes;
58
+ var isMap = value instanceof Map;
57
59
  if (!isMap || !displayDataTypes) return null;
58
- var as = Map.as,
59
- render = Map.render,
60
- reset = (0, _objectWithoutProperties2["default"])(Map, _excluded2);
60
+ var as = Comp.as,
61
+ render = Comp.render,
62
+ reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded2);
61
63
  var isRender = render && typeof render === 'function';
62
64
  var type = isRender && render(reset, {
63
- type: 'type'
65
+ type: 'type',
66
+ value: value
64
67
  });
65
68
  if (type) return type;
66
- var Comp = as || 'span';
67
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(Comp, (0, _objectSpread2["default"])({}, reset));
69
+ var Elm = as || 'span';
70
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(Elm, (0, _objectSpread2["default"])({}, reset));
68
71
  };
69
72
  exports.MapComp = MapComp;
70
73
  MapComp.displayName = 'JVR.MapComp';
@@ -100,7 +103,6 @@ var TypeString = function TypeString(_ref3) {
100
103
  });
101
104
  if (childrenStr.length > length) {
102
105
  reset.onClick = function () {
103
- if (length && childrenStr.length <= length) return setShorten(false);
104
106
  setShorten(!shorten);
105
107
  };
106
108
  }
@@ -123,10 +125,12 @@ var TypeString = function TypeString(_ref3) {
123
125
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.Fragment, {
124
126
  children: [displayDataTypes && (type || /*#__PURE__*/(0, _jsxRuntime.jsx)(Comp, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
125
127
  style: style
126
- }))), child || /*#__PURE__*/(0, _jsxRuntime.jsxs)(Comp, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
127
- className: "w-rjv-value",
128
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Symbols.ValueQuote, {}), text, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Symbols.ValueQuote, {})]
129
- })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Copied.Copied, {
128
+ }))), child || /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.Fragment, {
129
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_symbol.ValueQuote, {}), /*#__PURE__*/(0, _jsxRuntime.jsx)(Comp, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
130
+ className: "w-rjv-value",
131
+ children: text
132
+ })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_symbol.ValueQuote, {})]
133
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Copied.Copied, {
130
134
  keyName: keyName,
131
135
  value: children,
132
136
  expandKey: expandKey
@@ -366,7 +370,7 @@ var TypeUrl = function TypeUrl(_ref9) {
366
370
  value: children
367
371
  });
368
372
  var child = isRender && render((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
369
- children: children,
373
+ children: children === null || children === void 0 ? void 0 : children.href,
370
374
  className: 'w-rjv-value'
371
375
  }), {
372
376
  type: 'value',
@@ -380,7 +384,7 @@ var TypeUrl = function TypeUrl(_ref9) {
380
384
  target: "_blank"
381
385
  }, reset), {}, {
382
386
  className: "w-rjv-value",
383
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Symbols.ValueQuote, {}), children === null || children === void 0 ? void 0 : children.href, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Symbols.ValueQuote, {})]
387
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_symbol.ValueQuote, {}), children === null || children === void 0 ? void 0 : children.href, /*#__PURE__*/(0, _jsxRuntime.jsx)(_symbol.ValueQuote, {})]
384
388
  })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Copied.Copied, {
385
389
  keyName: keyName,
386
390
  value: children,
@@ -410,8 +414,9 @@ var TypeDate = function TypeDate(_ref10) {
410
414
  type: 'type',
411
415
  value: children
412
416
  });
417
+ var childStr = children === null || children === void 0 ? void 0 : children.toString();
413
418
  var child = isRender && render((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
414
- children: children,
419
+ children: childStr,
415
420
  className: 'w-rjv-value'
416
421
  }), {
417
422
  type: 'value',
@@ -422,7 +427,7 @@ var TypeDate = function TypeDate(_ref10) {
422
427
  style: style
423
428
  }))), child || /*#__PURE__*/(0, _jsxRuntime.jsx)(Comp, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
424
429
  className: "w-rjv-value",
425
- children: children === null || children === void 0 ? void 0 : children.toString()
430
+ children: childStr
426
431
  })), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Copied.Copied, {
427
432
  keyName: keyName,
428
433
  value: children,
@@ -531,7 +536,7 @@ var TypeNan = function TypeNan(_ref13) {
531
536
  value: children
532
537
  });
533
538
  var child = isRender && render((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
534
- children: children,
539
+ children: children === null || children === void 0 ? void 0 : children.toString(),
535
540
  className: 'w-rjv-value'
536
541
  }), {
537
542
  type: 'value',
@@ -548,43 +553,4 @@ var TypeNan = function TypeNan(_ref13) {
548
553
  });
549
554
  };
550
555
  exports.TypeNan = TypeNan;
551
- TypeNan.displayName = 'JVR.TypeNan';
552
- var TypeEmptyValue = function TypeEmptyValue(_ref14) {
553
- var children = _ref14.children,
554
- expandKey = _ref14.expandKey,
555
- keyName = _ref14.keyName;
556
- var _useTypesStore14 = (0, _Types.useTypesStore)(),
557
- _useTypesStore14$Nan = _useTypesStore14.Nan,
558
- Nan = _useTypesStore14$Nan === void 0 ? {} : _useTypesStore14$Nan,
559
- displayDataTypes = _useTypesStore14.displayDataTypes;
560
- var as = Nan.as,
561
- render = Nan.render,
562
- reset = (0, _objectWithoutProperties2["default"])(Nan, _excluded14);
563
- var Comp = as || 'span';
564
- var style = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, defalutStyle), Nan.style || {});
565
- var isRender = render && typeof render === 'function';
566
- var type = isRender && render((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
567
- style: style
568
- }), {
569
- type: 'type',
570
- value: children
571
- });
572
- var child = isRender && render((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
573
- children: children,
574
- className: 'w-rjv-value'
575
- }), {
576
- type: 'value',
577
- value: children
578
- });
579
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.Fragment, {
580
- children: [displayDataTypes && (type || /*#__PURE__*/(0, _jsxRuntime.jsx)(Comp, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
581
- style: style
582
- }))), child, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Copied.Copied, {
583
- keyName: keyName,
584
- value: children,
585
- expandKey: expandKey
586
- })]
587
- });
588
- };
589
- exports.TypeEmptyValue = TypeEmptyValue;
590
556
  TypeNan.displayName = 'JVR.TypeNan';
@@ -45,7 +45,6 @@ function useHighlight(_ref) {
45
45
  if (value !== prevValue) {
46
46
  return true;
47
47
  }
48
- return false;
49
48
  }, [highlightUpdates, value]);
50
49
  (0, _react.useEffect)(function () {
51
50
  if (highlightContainer && highlightContainer.current && isHighlight && 'animate' in highlightContainer.current) {
package/esm/Container.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
3
3
  var _excluded = ["className", "children", "parentValue", "keyid", "level", "value", "initialValue", "keyName"];
4
- import React, { forwardRef, useId, useImperativeHandle, useRef } from 'react';
4
+ import React, { forwardRef, useId } from 'react';
5
5
  import { NestedClose } from './comps/NestedClose';
6
6
  import { NestedOpen } from './comps/NestedOpen';
7
7
  import { KeyValues } from './comps/KeyValues';
@@ -17,11 +17,9 @@ export var Container = /*#__PURE__*/forwardRef((props, ref) => {
17
17
  keyName
18
18
  } = props,
19
19
  elmProps = _objectWithoutPropertiesLoose(props, _excluded);
20
- var $ref = useRef(null);
21
20
  var dispatch = useShowToolsDispatch();
22
- useImperativeHandle(ref, () => $ref.current, [$ref]);
23
21
  var subkeyid = useId();
24
- var defaultClassNames = "w-rjv-inner " + className;
22
+ var defaultClassNames = [className, 'w-rjv-inner'].filter(Boolean).join(' ');
25
23
  var reset = {
26
24
  onMouseEnter: () => dispatch({
27
25
  [subkeyid]: true
@@ -31,7 +29,8 @@ export var Container = /*#__PURE__*/forwardRef((props, ref) => {
31
29
  })
32
30
  };
33
31
  return /*#__PURE__*/_jsxs("div", _extends({
34
- className: defaultClassNames
32
+ className: defaultClassNames,
33
+ ref: ref
35
34
  }, elmProps, reset, {
36
35
  children: [/*#__PURE__*/_jsx(NestedOpen, {
37
36
  expandKey: subkeyid,
@@ -4,9 +4,9 @@ import { useStore } from '../store';
4
4
  import { useExpandsStore } from '../store/Expands';
5
5
  import { useShowToolsDispatch } from '../store/ShowTools';
6
6
  import { Value } from './Value';
7
- import { Key } from './Key';
7
+ import { KeyNameComp } from '../section/KeyName';
8
8
  import { Container } from '../Container';
9
- import { Quote, Colon } from './ReRender/Symbols';
9
+ import { Quote, Colon } from '../symbol';
10
10
  import { useHighlight } from '../utils/useHighlight';
11
11
  import { jsx as _jsx } from "react/jsx-runtime";
12
12
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -80,13 +80,15 @@ export var KayName = props => {
80
80
  children: [/*#__PURE__*/_jsxs("span", {
81
81
  ref: highlightContainer,
82
82
  children: [/*#__PURE__*/_jsx(Quote, {
83
- isNumber: isNumber
84
- }), /*#__PURE__*/_jsx(Key, {
83
+ isNumber: isNumber,
84
+ "data-placement": "left"
85
+ }), /*#__PURE__*/_jsx(KeyNameComp, {
85
86
  keyName: keyName,
86
87
  value: value,
87
88
  children: keyName
88
89
  }), /*#__PURE__*/_jsx(Quote, {
89
- isNumber: isNumber
90
+ isNumber: isNumber,
91
+ "data-placement": "right"
90
92
  })]
91
93
  }), /*#__PURE__*/_jsx(Colon, {})]
92
94
  });
@@ -1,6 +1,6 @@
1
1
  import { useStore } from '../store';
2
2
  import { useExpandsStore } from '../store/Expands';
3
- import { BracketsClose } from './ReRender/Symbols';
3
+ import { BracketsClose } from '../symbol';
4
4
  import { jsx as _jsx } from "react/jsx-runtime";
5
5
  export var NestedClose = props => {
6
6
  var _expands$expandKey;
@@ -3,10 +3,11 @@ import { KayName } from './KeyValues';
3
3
  import { useExpandsStore, useExpandsDispatch } from '../store/Expands';
4
4
  import { useStore } from '../store';
5
5
  import { Copied } from './Copied';
6
- import { CountInfo, CountInfoExtra } from './CountInfo';
7
- import { Arrow, BracketsOpen, BracketsClose } from './ReRender/Symbols';
8
- import { Ellipsis } from './Ellipsis';
9
- import { SetComp, MapComp } from './ReRender/Types';
6
+ import { CountInfoExtraComps } from '../section/CountInfoExtra';
7
+ import { CountInfoComp } from '../section/CountInfo';
8
+ import { Arrow, BracketsOpen, BracketsClose } from '../symbol';
9
+ import { EllipsisComp } from '../section/Ellipsis';
10
+ import { SetComp, MapComp } from '../types';
10
11
  import { jsx as _jsx } from "react/jsx-runtime";
11
12
  import { jsxs as _jsxs } from "react/jsx-runtime";
12
13
  export var NestedOpen = props => {
@@ -63,22 +64,22 @@ export var NestedOpen = props => {
63
64
  }), (keyName || typeof keyName === 'number') && /*#__PURE__*/_jsx(KayName, {
64
65
  keyName: keyName
65
66
  }), /*#__PURE__*/_jsx(SetComp, {
66
- isSet: initialValue instanceof Set
67
+ value: initialValue
67
68
  }), /*#__PURE__*/_jsx(MapComp, {
68
- isMap: initialValue instanceof Map
69
+ value: initialValue
69
70
  }), /*#__PURE__*/_jsx(BracketsOpen, {
70
71
  isBrackets: isArray || isMySet
71
- }), /*#__PURE__*/_jsx(Ellipsis, {
72
+ }), /*#__PURE__*/_jsx(EllipsisComp, {
72
73
  keyName: keyName,
73
74
  value: value,
74
75
  isExpanded: isExpanded
75
76
  }), /*#__PURE__*/_jsx(BracketsClose, {
76
77
  isVisiable: isExpanded || !showArrow,
77
78
  isBrackets: isArray || isMySet
78
- }), /*#__PURE__*/_jsx(CountInfo, {
79
+ }), /*#__PURE__*/_jsx(CountInfoComp, {
79
80
  value: value,
80
81
  keyName: keyName
81
- }), /*#__PURE__*/_jsx(CountInfoExtra, {
82
+ }), /*#__PURE__*/_jsx(CountInfoExtraComps, {
82
83
  value: value,
83
84
  keyName: keyName
84
85
  }), /*#__PURE__*/_jsx(Copied, {
@@ -1,5 +1,5 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
- import { TypeString, TypeTrue, TypeNull, TypeFalse, TypeFloat, TypeBigint, TypeInt, TypeDate, TypeUndefined, TypeNan, TypeUrl } from './ReRender/Types';
2
+ import { TypeString, TypeTrue, TypeNull, TypeFalse, TypeFloat, TypeBigint, TypeInt, TypeDate, TypeUndefined, TypeNan, TypeUrl } from '../types';
3
3
  import { jsx as _jsx } from "react/jsx-runtime";
4
4
  export var isFloat = n => Number(n) === n && n % 1 !== 0 || isNaN(n);
5
5
  export var Value = props => {
package/esm/index.d.ts CHANGED
@@ -30,7 +30,7 @@ export * from './store/Expands';
30
30
  export * from './store/ShowTools';
31
31
  export * from './store/Symbols';
32
32
  export * from './store/Types';
33
- export * from './comps/ReRender/Symbols';
33
+ export * from './symbol';
34
34
  export interface JsonViewProps<T extends object> extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement> {
35
35
  /** This property contains your input JSON */
36
36
  value?: T;
package/esm/index.js CHANGED
@@ -37,7 +37,7 @@ export * from './store/Expands';
37
37
  export * from './store/ShowTools';
38
38
  export * from './store/Symbols';
39
39
  export * from './store/Types';
40
- export * from './comps/ReRender/Symbols';
40
+ export * from './symbol';
41
41
  var JsonView = /*#__PURE__*/forwardRef((props, ref) => {
42
42
  var {
43
43
  className = '',
@@ -62,7 +62,7 @@ var JsonView = /*#__PURE__*/forwardRef((props, ref) => {
62
62
  backgroundColor: 'var(--w-rjv-background-color, #00000000)',
63
63
  fontSize: 13
64
64
  }, style);
65
- var cls = "w-json-view-container w-rjv " + (className || '');
65
+ var cls = ['w-json-view-container', 'w-rjv', className].filter(Boolean).join(' ');
66
66
  return /*#__PURE__*/_jsxs(Provider, {
67
67
  initialState: {
68
68
  value,
@@ -1,6 +1,15 @@
1
+ /// <reference types="react" />
1
2
  import { type TagType } from '../store/Types';
2
- import { type SectionElement } from '../store/Section';
3
+ import { type SectionElement, type SectionElementProps } from '../store/Section';
3
4
  export declare const CountInfo: {
4
5
  <K extends TagType>(props: SectionElement<K>): null;
5
6
  displayName: string;
6
7
  };
8
+ export interface CountInfoCompProps<T extends object> {
9
+ value?: T;
10
+ keyName: string | number;
11
+ }
12
+ export declare const CountInfoComp: {
13
+ <T extends object>(props: SectionElementProps<TagType> & CountInfoCompProps<T> & import("react").HTMLAttributes<HTMLElement>): string | number | true | Iterable<import("react").ReactNode> | import("react/jsx-runtime").JSX.Element | null;
14
+ displayName: string;
15
+ };