@uiw/react-json-view 2.0.0-alpha.1 → 2.0.0-alpha.11
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.
- package/README.md +145 -36
- package/cjs/Container.js +4 -8
- package/cjs/comps/Copied.js +15 -13
- package/cjs/comps/KeyValues.js +30 -22
- package/cjs/comps/NestedClose.js +3 -4
- package/cjs/comps/NestedOpen.js +18 -16
- package/cjs/comps/Value.js +14 -16
- package/cjs/editor/KeyName.d.ts +2 -0
- package/cjs/editor/KeyName.js +82 -0
- package/cjs/editor/index.d.ts +19 -0
- package/cjs/editor/index.js +44 -0
- package/cjs/editor/store.d.ts +28 -0
- package/cjs/editor/store.js +23 -0
- package/cjs/index.d.ts +5 -3
- package/cjs/index.js +9 -8
- package/cjs/section/Copied.d.ts +1 -1
- package/cjs/section/Copied.js +1 -2
- package/cjs/section/CountInfo.d.ts +10 -1
- package/cjs/section/CountInfo.js +42 -4
- package/cjs/section/CountInfoExtra.d.ts +10 -1
- package/cjs/section/CountInfoExtra.js +32 -4
- package/cjs/section/Ellipsis.d.ts +10 -0
- package/cjs/section/Ellipsis.js +30 -4
- package/cjs/section/KeyName.d.ts +8 -0
- package/cjs/section/KeyName.js +38 -4
- package/cjs/section/Row.d.ts +16 -0
- package/cjs/section/Row.js +50 -0
- package/cjs/store/Expands.js +2 -4
- package/cjs/store/Section.d.ts +5 -2
- package/cjs/store/Section.js +6 -4
- package/cjs/store/ShowTools.js +2 -4
- package/cjs/store/Symbols.d.ts +2 -2
- package/cjs/store/Symbols.js +3 -4
- package/cjs/store/Types.d.ts +28 -24
- package/cjs/store/Types.js +8 -8
- package/cjs/store.d.ts +7 -4
- package/cjs/store.js +5 -10
- package/cjs/symbol/Arrow.d.ts +1 -1
- package/cjs/symbol/Arrow.js +1 -2
- package/cjs/symbol/BraceLeft.d.ts +1 -1
- package/cjs/symbol/BraceLeft.js +1 -2
- package/cjs/symbol/BraceRight.d.ts +1 -1
- package/cjs/symbol/BraceRight.js +1 -2
- package/cjs/symbol/BracketsLeft.d.ts +1 -1
- package/cjs/symbol/BracketsLeft.js +1 -2
- package/cjs/symbol/BracketsRight.d.ts +1 -1
- package/cjs/symbol/BracketsRight.js +1 -2
- package/cjs/symbol/Colon.d.ts +1 -1
- package/cjs/symbol/Colon.js +1 -2
- package/cjs/symbol/Quote.d.ts +1 -1
- package/cjs/symbol/Quote.js +1 -2
- package/cjs/symbol/ValueQuote.d.ts +1 -1
- package/cjs/symbol/ValueQuote.js +1 -2
- package/{esm/comps/ReRender/Symbols.d.ts → cjs/symbol/index.d.ts} +4 -6
- package/cjs/{comps/ReRender/Symbols.js → symbol/index.js} +32 -33
- package/cjs/theme/basic.js +2 -3
- package/cjs/theme/dark.js +2 -3
- package/cjs/theme/github.dark.js +2 -3
- package/cjs/theme/github.light.js +2 -3
- package/cjs/theme/gruvbox.js +2 -3
- package/cjs/theme/light.js +2 -3
- package/cjs/theme/monokai.js +2 -3
- package/cjs/theme/nord.js +2 -3
- package/cjs/theme/vscode.js +2 -3
- package/cjs/types/Bigint.d.ts +1 -1
- package/cjs/types/Bigint.js +1 -2
- package/cjs/types/Date.d.ts +1 -1
- package/cjs/types/Date.js +1 -2
- package/cjs/types/False.d.ts +1 -1
- package/cjs/types/False.js +1 -2
- package/cjs/types/Float.d.ts +1 -1
- package/cjs/types/Float.js +1 -2
- package/cjs/types/Int.d.ts +1 -1
- package/cjs/types/Int.js +1 -2
- package/cjs/types/Map.d.ts +1 -1
- package/cjs/types/Map.js +1 -2
- package/cjs/types/Nan.d.ts +1 -1
- package/cjs/types/Nan.js +1 -2
- package/cjs/types/Null.d.ts +1 -1
- package/cjs/types/Null.js +1 -2
- package/cjs/types/Set.d.ts +1 -1
- package/cjs/types/Set.js +1 -2
- package/cjs/types/String.d.ts +1 -1
- package/cjs/types/String.js +1 -2
- package/cjs/types/True.d.ts +1 -1
- package/cjs/types/True.js +1 -2
- package/cjs/types/Undefined.d.ts +1 -1
- package/cjs/types/Undefined.js +1 -2
- package/cjs/types/Url.d.ts +1 -1
- package/cjs/types/Url.js +1 -2
- package/{esm/comps/ReRender/Types.d.ts → cjs/types/index.d.ts} +8 -13
- package/cjs/{comps/ReRender/Types.js → types/index.js} +103 -121
- package/cjs/utils/useHighlight.js +0 -1
- package/cjs/utils/useRender.d.ts +1 -1
- package/editor.d.ts +22 -20
- package/esm/Container.js +4 -5
- package/esm/comps/Copied.js +14 -11
- package/esm/comps/KeyValues.js +20 -11
- package/esm/comps/NestedClose.js +1 -1
- package/esm/comps/NestedOpen.js +12 -9
- package/esm/comps/Value.js +1 -1
- package/esm/editor/KeyName.d.ts +2 -0
- package/esm/editor/KeyName.js +77 -0
- package/esm/editor/index.d.ts +19 -0
- package/esm/editor/index.js +34 -0
- package/esm/editor/store.d.ts +28 -0
- package/esm/editor/store.js +13 -0
- package/esm/index.d.ts +5 -3
- package/esm/index.js +5 -3
- package/esm/section/Copied.d.ts +1 -1
- package/esm/section/CountInfo.d.ts +10 -1
- package/esm/section/CountInfo.js +43 -1
- package/esm/section/CountInfoExtra.d.ts +10 -1
- package/esm/section/CountInfoExtra.js +32 -1
- package/esm/section/Ellipsis.d.ts +10 -0
- package/esm/section/Ellipsis.js +31 -1
- package/esm/section/KeyName.d.ts +8 -0
- package/esm/section/KeyName.js +39 -1
- package/esm/section/Row.d.ts +16 -0
- package/esm/section/Row.js +45 -0
- package/esm/store/Section.d.ts +5 -2
- package/esm/store/Section.js +4 -0
- package/esm/store/Symbols.d.ts +2 -2
- package/esm/store/Symbols.js +1 -0
- package/esm/store/Types.d.ts +28 -24
- package/esm/store/Types.js +6 -4
- package/esm/store.d.ts +7 -4
- package/esm/symbol/Arrow.d.ts +1 -1
- package/esm/symbol/BraceLeft.d.ts +1 -1
- package/esm/symbol/BraceRight.d.ts +1 -1
- package/esm/symbol/BracketsLeft.d.ts +1 -1
- package/esm/symbol/BracketsRight.d.ts +1 -1
- package/esm/symbol/Colon.d.ts +1 -1
- package/esm/symbol/Quote.d.ts +1 -1
- package/esm/symbol/ValueQuote.d.ts +1 -1
- package/{cjs/comps/ReRender/Symbols.d.ts → esm/symbol/index.d.ts} +4 -6
- package/esm/{comps/ReRender/Symbols.js → symbol/index.js} +26 -24
- package/esm/types/Bigint.d.ts +1 -1
- package/esm/types/Date.d.ts +1 -1
- package/esm/types/False.d.ts +1 -1
- package/esm/types/Float.d.ts +1 -1
- package/esm/types/Int.d.ts +1 -1
- package/esm/types/Map.d.ts +1 -1
- package/esm/types/Nan.d.ts +1 -1
- package/esm/types/Null.d.ts +1 -1
- package/esm/types/Set.d.ts +1 -1
- package/esm/types/String.d.ts +1 -1
- package/esm/types/True.d.ts +1 -1
- package/esm/types/Undefined.d.ts +1 -1
- package/esm/types/Url.d.ts +1 -1
- package/{cjs/comps/ReRender/Types.d.ts → esm/types/index.d.ts} +8 -13
- package/esm/{comps/ReRender/Types.js → types/index.js} +84 -94
- package/esm/utils/useHighlight.js +0 -1
- package/esm/utils/useRender.d.ts +1 -1
- package/package.json +3 -4
- package/cjs/comps/CountInfo.d.ts +0 -19
- package/cjs/comps/CountInfo.js +0 -72
- package/cjs/comps/Ellipsis.d.ts +0 -10
- package/cjs/comps/Ellipsis.js +0 -35
- package/cjs/comps/Key.d.ts +0 -7
- package/cjs/comps/Key.js +0 -39
- package/cjs/type.d.ts +0 -50
- package/cjs/type.js +0 -57
- package/esm/comps/CountInfo.d.ts +0 -19
- package/esm/comps/CountInfo.js +0 -70
- package/esm/comps/Ellipsis.d.ts +0 -10
- package/esm/comps/Ellipsis.js +0 -31
- package/esm/comps/Key.d.ts +0 -7
- package/esm/comps/Key.js +0 -35
- package/esm/type.d.ts +0 -50
- package/esm/type.js +0 -50
package/cjs/comps/Value.js
CHANGED
|
@@ -6,13 +6,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.isFloat = exports.Value = void 0;
|
|
8
8
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
9
|
-
var
|
|
9
|
+
var _types = require("../types");
|
|
10
10
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
|
-
var isFloat = function isFloat(n) {
|
|
11
|
+
var isFloat = exports.isFloat = function isFloat(n) {
|
|
12
12
|
return Number(n) === n && n % 1 !== 0 || isNaN(n);
|
|
13
13
|
};
|
|
14
|
-
exports.
|
|
15
|
-
var Value = function Value(props) {
|
|
14
|
+
var Value = exports.Value = function Value(props) {
|
|
16
15
|
var value = props.value,
|
|
17
16
|
keyName = props.keyName,
|
|
18
17
|
expandKey = props.expandKey;
|
|
@@ -21,58 +20,57 @@ var Value = function Value(props) {
|
|
|
21
20
|
expandKey: expandKey
|
|
22
21
|
};
|
|
23
22
|
if (value instanceof URL) {
|
|
24
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
23
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_types.TypeUrl, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
25
24
|
children: value
|
|
26
25
|
}));
|
|
27
26
|
}
|
|
28
27
|
if (typeof value === 'string') {
|
|
29
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
28
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_types.TypeString, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
30
29
|
children: value
|
|
31
30
|
}));
|
|
32
31
|
}
|
|
33
32
|
if (value === true) {
|
|
34
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
33
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_types.TypeTrue, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
35
34
|
children: value
|
|
36
35
|
}));
|
|
37
36
|
}
|
|
38
37
|
if (value === false) {
|
|
39
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
38
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_types.TypeFalse, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
40
39
|
children: value
|
|
41
40
|
}));
|
|
42
41
|
}
|
|
43
42
|
if (value === null) {
|
|
44
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
43
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_types.TypeNull, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
45
44
|
children: value
|
|
46
45
|
}));
|
|
47
46
|
}
|
|
48
47
|
if (value === undefined) {
|
|
49
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
48
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_types.TypeUndefined, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
50
49
|
children: value
|
|
51
50
|
}));
|
|
52
51
|
}
|
|
53
52
|
if (value instanceof Date) {
|
|
54
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
53
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_types.TypeDate, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
55
54
|
children: value
|
|
56
55
|
}));
|
|
57
56
|
}
|
|
58
57
|
if (typeof value === 'number' && isNaN(value)) {
|
|
59
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
58
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_types.TypeNan, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
60
59
|
children: value
|
|
61
60
|
}));
|
|
62
61
|
} else if (typeof value === 'number' && isFloat(value)) {
|
|
63
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
62
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_types.TypeFloat, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
64
63
|
children: value
|
|
65
64
|
}));
|
|
66
65
|
} else if (typeof value === 'bigint') {
|
|
67
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
66
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_types.TypeBigint, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
68
67
|
children: value
|
|
69
68
|
}));
|
|
70
69
|
} else if (typeof value === 'number') {
|
|
71
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
70
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_types.TypeInt, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
72
71
|
children: value
|
|
73
72
|
}));
|
|
74
73
|
}
|
|
75
74
|
return null;
|
|
76
75
|
};
|
|
77
|
-
exports.Value = Value;
|
|
78
76
|
Value.displayName = 'JVR.Value';
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.KeyNameRender = void 0;
|
|
8
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
9
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
10
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
|
+
var _react = require("react");
|
|
12
|
+
var _store = require("./store");
|
|
13
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
|
+
var _excluded = ["children"],
|
|
15
|
+
_excluded2 = ["value", "parentValue", "keyName"];
|
|
16
|
+
var KeyNameRender = exports.KeyNameRender = function KeyNameRender(_ref, _ref2) {
|
|
17
|
+
var children = _ref.children,
|
|
18
|
+
reset = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
19
|
+
var value = _ref2.value,
|
|
20
|
+
parentValue = _ref2.parentValue,
|
|
21
|
+
keyName = _ref2.keyName;
|
|
22
|
+
if (typeof children === 'number') {
|
|
23
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("span", (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
24
|
+
children: children
|
|
25
|
+
}));
|
|
26
|
+
}
|
|
27
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Child, (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
28
|
+
value: value,
|
|
29
|
+
parentValue: parentValue,
|
|
30
|
+
keyName: keyName,
|
|
31
|
+
children: children
|
|
32
|
+
}));
|
|
33
|
+
};
|
|
34
|
+
var Child = function Child(props) {
|
|
35
|
+
var value = props.value,
|
|
36
|
+
parentValue = props.parentValue,
|
|
37
|
+
keyName = props.keyName,
|
|
38
|
+
reset = (0, _objectWithoutProperties2["default"])(props, _excluded2);
|
|
39
|
+
var $dom = (0, _react.useRef)(null);
|
|
40
|
+
var _useState = (0, _react.useState)(props.children),
|
|
41
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
42
|
+
currentValue = _useState2[0],
|
|
43
|
+
setCurrentValue = _useState2[1];
|
|
44
|
+
var _useStore = (0, _store.useStore)(),
|
|
45
|
+
onEdit = _useStore.onEdit;
|
|
46
|
+
var onKeyDown = function onKeyDown(evn) {
|
|
47
|
+
if (evn.key === 'Enter') {
|
|
48
|
+
var _$dom$current;
|
|
49
|
+
(_$dom$current = $dom.current) === null || _$dom$current === void 0 || _$dom$current.setAttribute('contentEditable', 'false');
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
var onClick = function onClick(evn) {
|
|
53
|
+
var _$dom$current2, _$dom$current3;
|
|
54
|
+
evn.stopPropagation();
|
|
55
|
+
(_$dom$current2 = $dom.current) === null || _$dom$current2 === void 0 || _$dom$current2.setAttribute('contentEditable', 'true');
|
|
56
|
+
(_$dom$current3 = $dom.current) === null || _$dom$current3 === void 0 || _$dom$current3.focus();
|
|
57
|
+
};
|
|
58
|
+
var onBlur = function onBlur(evn) {
|
|
59
|
+
var _$dom$current4;
|
|
60
|
+
(_$dom$current4 = $dom.current) === null || _$dom$current4 === void 0 || _$dom$current4.setAttribute('contentEditable', 'false');
|
|
61
|
+
var callback = onEdit && onEdit({
|
|
62
|
+
value: evn.target.textContent,
|
|
63
|
+
oldValue: value,
|
|
64
|
+
keyName: keyName
|
|
65
|
+
});
|
|
66
|
+
if (callback) {
|
|
67
|
+
setCurrentValue(evn.target.textContent);
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
var spanProps = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
71
|
+
onKeyDown: onKeyDown,
|
|
72
|
+
onClick: onClick,
|
|
73
|
+
onBlur: onBlur,
|
|
74
|
+
spellCheck: false,
|
|
75
|
+
contentEditable: 'false',
|
|
76
|
+
suppressContentEditableWarning: true,
|
|
77
|
+
children: currentValue
|
|
78
|
+
});
|
|
79
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("span", (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, spanProps), {}, {
|
|
80
|
+
ref: $dom
|
|
81
|
+
}));
|
|
82
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { type JsonViewProps } from '../';
|
|
3
|
+
export interface JsonViewEditorProps<T extends object> extends Omit<JsonViewProps<T>, 'shortenTextAfterLength'> {
|
|
4
|
+
/**
|
|
5
|
+
* When a callback function is passed in, edit functionality is enabled. The callback is invoked before edits are completed.
|
|
6
|
+
* @returns {boolean} Returning false from onEdit will prevent the change from being made.
|
|
7
|
+
*/
|
|
8
|
+
onEdit?: (option: {
|
|
9
|
+
value: unknown;
|
|
10
|
+
oldValue: unknown;
|
|
11
|
+
keyName?: string | number;
|
|
12
|
+
parentName?: string | number;
|
|
13
|
+
type?: 'value' | 'key';
|
|
14
|
+
}) => boolean;
|
|
15
|
+
/** Whether enable edit feature. @default true */
|
|
16
|
+
editable?: boolean;
|
|
17
|
+
}
|
|
18
|
+
declare const JsonViewEditor: import("react").ForwardRefExoticComponent<Omit<JsonViewEditorProps<object>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
19
|
+
export default JsonViewEditor;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
|
+
var _react = require("react");
|
|
12
|
+
var _ = _interopRequireDefault(require("../"));
|
|
13
|
+
var _KeyName = require("./KeyName");
|
|
14
|
+
var _store = require("./store");
|
|
15
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
|
+
var _excluded = ["children", "onEdit", "editable"];
|
|
17
|
+
var JsonViewEditor = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
18
|
+
var children = props.children,
|
|
19
|
+
onEdit = props.onEdit,
|
|
20
|
+
_props$editable = props.editable,
|
|
21
|
+
editable = _props$editable === void 0 ? true : _props$editable,
|
|
22
|
+
reset = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
23
|
+
var _useStoreReducer = (0, _store.useStoreReducer)({
|
|
24
|
+
onEdit: onEdit
|
|
25
|
+
}),
|
|
26
|
+
_useStoreReducer2 = (0, _slicedToArray2["default"])(_useStoreReducer, 2),
|
|
27
|
+
state = _useStoreReducer2[0],
|
|
28
|
+
dispatch = _useStoreReducer2[1];
|
|
29
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_store.Context.Provider, {
|
|
30
|
+
value: state,
|
|
31
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_store.Dispatch.Provider, {
|
|
32
|
+
value: dispatch,
|
|
33
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_["default"], (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
34
|
+
shortenTextAfterLength: 0,
|
|
35
|
+
ref: ref,
|
|
36
|
+
children: [editable && /*#__PURE__*/(0, _jsxRuntime.jsx)(_["default"].KeyName, {
|
|
37
|
+
render: _KeyName.KeyNameRender
|
|
38
|
+
}), children]
|
|
39
|
+
}))
|
|
40
|
+
})
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
var _default = exports["default"] = JsonViewEditor;
|
|
44
|
+
module.exports = exports.default;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
type InitialState = {
|
|
3
|
+
/**
|
|
4
|
+
* When a callback function is passed in, edit functionality is enabled. The callback is invoked before edits are completed.
|
|
5
|
+
* @returns {boolean} Returning false from onEdit will prevent the change from being made.
|
|
6
|
+
*/
|
|
7
|
+
onEdit?: (option: {
|
|
8
|
+
value: unknown;
|
|
9
|
+
oldValue: unknown;
|
|
10
|
+
keyName?: string | number;
|
|
11
|
+
parentName?: string | number;
|
|
12
|
+
type?: 'value' | 'key';
|
|
13
|
+
}) => boolean;
|
|
14
|
+
};
|
|
15
|
+
type Dispatch = React.Dispatch<InitialState>;
|
|
16
|
+
export declare const Context: import("react").Context<InitialState>;
|
|
17
|
+
export declare const Dispatch: import("react").Context<Dispatch>;
|
|
18
|
+
export declare const useStore: () => InitialState;
|
|
19
|
+
export declare function useStoreReducer(initialState: InitialState): [{
|
|
20
|
+
onEdit?: ((option: {
|
|
21
|
+
value: unknown;
|
|
22
|
+
oldValue: unknown;
|
|
23
|
+
keyName?: string | number | undefined;
|
|
24
|
+
parentName?: string | number | undefined;
|
|
25
|
+
type?: "value" | "key" | undefined;
|
|
26
|
+
}) => boolean) | undefined;
|
|
27
|
+
}, import("react").Dispatch<InitialState>];
|
|
28
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.useStore = exports.Dispatch = exports.Context = void 0;
|
|
8
|
+
exports.useStoreReducer = useStoreReducer;
|
|
9
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
10
|
+
var _react = require("react");
|
|
11
|
+
var initialState = {};
|
|
12
|
+
var Context = exports.Context = /*#__PURE__*/(0, _react.createContext)(initialState);
|
|
13
|
+
var reducer = function reducer(state, action) {
|
|
14
|
+
return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, state), action);
|
|
15
|
+
};
|
|
16
|
+
var Dispatch = exports.Dispatch = /*#__PURE__*/(0, _react.createContext)(function () {});
|
|
17
|
+
Dispatch.displayName = 'JVR.Editor.Dispatch';
|
|
18
|
+
var useStore = exports.useStore = function useStore() {
|
|
19
|
+
return (0, _react.useContext)(Context);
|
|
20
|
+
};
|
|
21
|
+
function useStoreReducer(initialState) {
|
|
22
|
+
return (0, _react.useReducer)(reducer, initialState);
|
|
23
|
+
}
|
package/cjs/index.d.ts
CHANGED
|
@@ -25,19 +25,20 @@ import { CountInfo } from './section/CountInfo';
|
|
|
25
25
|
import { CountInfoExtra } from './section/CountInfoExtra';
|
|
26
26
|
import { Ellipsis } from './section/Ellipsis';
|
|
27
27
|
import { KeyName } from './section/KeyName';
|
|
28
|
+
import { Row } from './section/Row';
|
|
28
29
|
export * from './store';
|
|
29
30
|
export * from './store/Expands';
|
|
30
31
|
export * from './store/ShowTools';
|
|
31
32
|
export * from './store/Symbols';
|
|
32
33
|
export * from './store/Types';
|
|
33
|
-
export * from './
|
|
34
|
+
export * from './symbol';
|
|
34
35
|
export interface JsonViewProps<T extends object> extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement> {
|
|
35
36
|
/** This property contains your input JSON */
|
|
36
37
|
value?: T;
|
|
37
38
|
/** Define the root node name. @default undefined */
|
|
38
39
|
keyName?: string | number;
|
|
39
40
|
/** Whether sort keys through `String.prototype.localeCompare()` @default false */
|
|
40
|
-
objectSortKeys?: boolean | ((
|
|
41
|
+
objectSortKeys?: boolean | ((keyA: string, keyB: string, valueA: T, valueB: T) => number);
|
|
41
42
|
/** Set the indent-width for nested objects @default 15 */
|
|
42
43
|
indentWidth?: number;
|
|
43
44
|
/** When set to `true`, `objects` and `arrays` are labeled with size @default true */
|
|
@@ -50,7 +51,7 @@ export interface JsonViewProps<T extends object> extends React.DetailedHTMLProps
|
|
|
50
51
|
collapsed?: boolean | number;
|
|
51
52
|
/** Whether to highlight updates. @default true */
|
|
52
53
|
highlightUpdates?: boolean;
|
|
53
|
-
/** Shorten long JSON strings, Set to `0` to disable this feature @default
|
|
54
|
+
/** Shorten long JSON strings, Set to `0` to disable this feature @default 30 */
|
|
54
55
|
shortenTextAfterLength?: number;
|
|
55
56
|
/** Callback function for when a treeNode is expanded or collapsed */
|
|
56
57
|
onExpand?: (props: {
|
|
@@ -89,6 +90,7 @@ type JsonViewComponent = React.FC<React.PropsWithRef<JsonViewProps<object>>> & {
|
|
|
89
90
|
CountInfo: typeof CountInfo;
|
|
90
91
|
CountInfoExtra: typeof CountInfoExtra;
|
|
91
92
|
KeyName: typeof KeyName;
|
|
93
|
+
Row: typeof Row;
|
|
92
94
|
};
|
|
93
95
|
declare const JsonView: JsonViewComponent;
|
|
94
96
|
export default JsonView;
|
package/cjs/index.js
CHANGED
|
@@ -48,6 +48,7 @@ var _CountInfo = require("./section/CountInfo");
|
|
|
48
48
|
var _CountInfoExtra = require("./section/CountInfoExtra");
|
|
49
49
|
var _Ellipsis = require("./section/Ellipsis");
|
|
50
50
|
var _KeyName = require("./section/KeyName");
|
|
51
|
+
var _Row = require("./section/Row");
|
|
51
52
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
52
53
|
var _Expands = require("./store/Expands");
|
|
53
54
|
Object.keys(_Expands).forEach(function (key) {
|
|
@@ -97,15 +98,15 @@ Object.keys(_Types).forEach(function (key) {
|
|
|
97
98
|
}
|
|
98
99
|
});
|
|
99
100
|
});
|
|
100
|
-
var
|
|
101
|
-
Object.keys(
|
|
101
|
+
var _symbol = require("./symbol");
|
|
102
|
+
Object.keys(_symbol).forEach(function (key) {
|
|
102
103
|
if (key === "default" || key === "__esModule") return;
|
|
103
104
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
104
|
-
if (key in exports && exports[key] ===
|
|
105
|
+
if (key in exports && exports[key] === _symbol[key]) return;
|
|
105
106
|
Object.defineProperty(exports, key, {
|
|
106
107
|
enumerable: true,
|
|
107
108
|
get: function get() {
|
|
108
|
-
return
|
|
109
|
+
return _symbol[key];
|
|
109
110
|
}
|
|
110
111
|
});
|
|
111
112
|
});
|
|
@@ -122,7 +123,7 @@ var JsonView = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
122
123
|
_props$displayObjectS = props.displayObjectSize,
|
|
123
124
|
displayObjectSize = _props$displayObjectS === void 0 ? true : _props$displayObjectS,
|
|
124
125
|
_props$shortenTextAft = props.shortenTextAfterLength,
|
|
125
|
-
shortenTextAfterLength = _props$shortenTextAft === void 0 ?
|
|
126
|
+
shortenTextAfterLength = _props$shortenTextAft === void 0 ? 30 : _props$shortenTextAft,
|
|
126
127
|
_props$highlightUpdat = props.highlightUpdates,
|
|
127
128
|
highlightUpdates = _props$highlightUpdat === void 0 ? true : _props$highlightUpdat,
|
|
128
129
|
_props$enableClipboar = props.enableClipboard,
|
|
@@ -140,7 +141,7 @@ var JsonView = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
140
141
|
backgroundColor: 'var(--w-rjv-background-color, #00000000)',
|
|
141
142
|
fontSize: 13
|
|
142
143
|
}, style);
|
|
143
|
-
var cls =
|
|
144
|
+
var cls = ['w-json-view-container', 'w-rjv', className].filter(Boolean).join(' ');
|
|
144
145
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_store.Provider, {
|
|
145
146
|
initialState: {
|
|
146
147
|
value: value,
|
|
@@ -191,6 +192,6 @@ JsonView.Copied = _Copied.Copied;
|
|
|
191
192
|
JsonView.CountInfo = _CountInfo.CountInfo;
|
|
192
193
|
JsonView.CountInfoExtra = _CountInfoExtra.CountInfoExtra;
|
|
193
194
|
JsonView.KeyName = _KeyName.KeyName;
|
|
195
|
+
JsonView.Row = _Row.Row;
|
|
194
196
|
JsonView.displayName = 'JVR.JsonView';
|
|
195
|
-
var _default = JsonView;
|
|
196
|
-
exports["default"] = _default;
|
|
197
|
+
var _default = exports["default"] = JsonView;
|
package/cjs/section/Copied.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type TagType } from '../store/Types';
|
|
2
2
|
import { type SectionElement } from '../store/Section';
|
|
3
3
|
export declare const Copied: {
|
|
4
|
-
(props: SectionElement<
|
|
4
|
+
<K extends TagType = "svg">(props: SectionElement<K>): null;
|
|
5
5
|
displayName: string;
|
|
6
6
|
};
|
package/cjs/section/Copied.js
CHANGED
|
@@ -6,12 +6,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.Copied = void 0;
|
|
7
7
|
var _Section = require("../store/Section");
|
|
8
8
|
var _useRender = require("../utils/useRender");
|
|
9
|
-
var Copied = function Copied(props) {
|
|
9
|
+
var Copied = exports.Copied = function Copied(props) {
|
|
10
10
|
var _useSectionStore = (0, _Section.useSectionStore)(),
|
|
11
11
|
_useSectionStore$Copi = _useSectionStore.Copied,
|
|
12
12
|
Comp = _useSectionStore$Copi === void 0 ? {} : _useSectionStore$Copi;
|
|
13
13
|
(0, _useRender.useSectionRender)(Comp, props, 'Copied');
|
|
14
14
|
return null;
|
|
15
15
|
};
|
|
16
|
-
exports.Copied = Copied;
|
|
17
16
|
Copied.displayName = 'JVR.Copied';
|
|
@@ -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
|
+
<K extends TagType, T extends object>(props: SectionElementProps<K> & CountInfoCompProps<T> & import("react").HTMLAttributes<HTMLElement>): string | number | true | Iterable<import("react").ReactNode> | import("react/jsx-runtime").JSX.Element | null;
|
|
14
|
+
displayName: string;
|
|
15
|
+
};
|
package/cjs/section/CountInfo.js
CHANGED
|
@@ -1,17 +1,55 @@
|
|
|
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.CountInfo = void 0;
|
|
7
|
+
exports.CountInfoComp = exports.CountInfo = 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");
|
|
9
|
-
var
|
|
12
|
+
var _store = require("../store");
|
|
13
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
|
+
var _excluded = ["value", "keyName"],
|
|
15
|
+
_excluded2 = ["as", "render"];
|
|
16
|
+
var CountInfo = exports.CountInfo = function CountInfo(props) {
|
|
10
17
|
var _useSectionStore = (0, _Section.useSectionStore)(),
|
|
11
18
|
_useSectionStore$Coun = _useSectionStore.CountInfo,
|
|
12
19
|
Comp = _useSectionStore$Coun === void 0 ? {} : _useSectionStore$Coun;
|
|
13
20
|
(0, _useRender.useSectionRender)(Comp, props, 'CountInfo');
|
|
14
21
|
return null;
|
|
15
22
|
};
|
|
16
|
-
|
|
17
|
-
|
|
23
|
+
CountInfo.displayName = 'JVR.CountInfo';
|
|
24
|
+
var CountInfoComp = exports.CountInfoComp = function CountInfoComp(props) {
|
|
25
|
+
var _props$value = props.value,
|
|
26
|
+
value = _props$value === void 0 ? {} : _props$value,
|
|
27
|
+
keyName = props.keyName,
|
|
28
|
+
other = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
29
|
+
var _useStore = (0, _store.useStore)(),
|
|
30
|
+
displayObjectSize = _useStore.displayObjectSize;
|
|
31
|
+
var _useSectionStore2 = (0, _Section.useSectionStore)(),
|
|
32
|
+
_useSectionStore2$Cou = _useSectionStore2.CountInfo,
|
|
33
|
+
Comp = _useSectionStore2$Cou === void 0 ? {} : _useSectionStore2$Cou;
|
|
34
|
+
if (!displayObjectSize) return null;
|
|
35
|
+
var as = Comp.as,
|
|
36
|
+
render = Comp.render,
|
|
37
|
+
reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded2);
|
|
38
|
+
var Elm = as || 'span';
|
|
39
|
+
reset.style = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset.style), props.style);
|
|
40
|
+
var len = Object.keys(value).length;
|
|
41
|
+
if (!reset.children) {
|
|
42
|
+
reset.children = "".concat(len, " items");
|
|
43
|
+
}
|
|
44
|
+
var elmProps = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), other);
|
|
45
|
+
var isRender = render && typeof render === 'function';
|
|
46
|
+
var child = isRender && render((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, elmProps), {}, {
|
|
47
|
+
'data-length': len
|
|
48
|
+
}), {
|
|
49
|
+
value: value,
|
|
50
|
+
keyName: keyName
|
|
51
|
+
});
|
|
52
|
+
if (child) return child;
|
|
53
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Elm, (0, _objectSpread2["default"])({}, elmProps));
|
|
54
|
+
};
|
|
55
|
+
CountInfoComp.displayName = 'JVR.CountInfoComp';
|
|
@@ -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 CountInfoExtra: {
|
|
4
5
|
<K extends TagType>(props: SectionElement<K>): null;
|
|
5
6
|
displayName: string;
|
|
6
7
|
};
|
|
8
|
+
export interface CountInfoExtraCompsProps<T extends object> {
|
|
9
|
+
value?: T;
|
|
10
|
+
keyName: string | number;
|
|
11
|
+
}
|
|
12
|
+
export declare const CountInfoExtraComps: {
|
|
13
|
+
<T extends object, K extends TagType>(props: SectionElementProps<K> & CountInfoExtraCompsProps<T>): string | number | true | Iterable<import("react").ReactNode> | import("react/jsx-runtime").JSX.Element | null;
|
|
14
|
+
displayName: string;
|
|
15
|
+
};
|
|
@@ -1,17 +1,45 @@
|
|
|
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.CountInfoExtra = void 0;
|
|
7
|
+
exports.CountInfoExtraComps = exports.CountInfoExtra = 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");
|
|
9
|
-
var
|
|
12
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
|
+
var _excluded = ["value", "keyName"],
|
|
14
|
+
_excluded2 = ["as", "render"];
|
|
15
|
+
var CountInfoExtra = exports.CountInfoExtra = function CountInfoExtra(props) {
|
|
10
16
|
var _useSectionStore = (0, _Section.useSectionStore)(),
|
|
11
17
|
_useSectionStore$Coun = _useSectionStore.CountInfoExtra,
|
|
12
18
|
Comp = _useSectionStore$Coun === void 0 ? {} : _useSectionStore$Coun;
|
|
13
19
|
(0, _useRender.useSectionRender)(Comp, props, 'CountInfoExtra');
|
|
14
20
|
return null;
|
|
15
21
|
};
|
|
16
|
-
|
|
17
|
-
|
|
22
|
+
CountInfoExtra.displayName = 'JVR.CountInfoExtra';
|
|
23
|
+
var CountInfoExtraComps = exports.CountInfoExtraComps = function CountInfoExtraComps(props) {
|
|
24
|
+
var _props$value = props.value,
|
|
25
|
+
value = _props$value === void 0 ? {} : _props$value,
|
|
26
|
+
keyName = props.keyName,
|
|
27
|
+
other = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
28
|
+
var _useSectionStore2 = (0, _Section.useSectionStore)(),
|
|
29
|
+
_useSectionStore2$Cou = _useSectionStore2.CountInfoExtra,
|
|
30
|
+
Comp = _useSectionStore2$Cou === void 0 ? {} : _useSectionStore2$Cou;
|
|
31
|
+
var as = Comp.as,
|
|
32
|
+
render = Comp.render,
|
|
33
|
+
reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded2);
|
|
34
|
+
if (!render && !reset.children) return null;
|
|
35
|
+
var Elm = as || 'span';
|
|
36
|
+
var isRender = render && typeof render === 'function';
|
|
37
|
+
var elmProps = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), other);
|
|
38
|
+
var child = isRender && render(elmProps, {
|
|
39
|
+
value: value,
|
|
40
|
+
keyName: keyName
|
|
41
|
+
});
|
|
42
|
+
if (child) return child;
|
|
43
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Elm, (0, _objectSpread2["default"])({}, elmProps));
|
|
44
|
+
};
|
|
45
|
+
CountInfoExtraComps.displayName = 'JVR.CountInfoExtraComps';
|
|
@@ -1,6 +1,16 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
1
2
|
import { type TagType } from '../store/Types';
|
|
2
3
|
import { type SectionElement } from '../store/Section';
|
|
3
4
|
export declare const Ellipsis: {
|
|
4
5
|
<K extends TagType>(props: SectionElement<K>): null;
|
|
5
6
|
displayName: string;
|
|
6
7
|
};
|
|
8
|
+
export interface EllipsisCompProps<T extends object> {
|
|
9
|
+
value?: T;
|
|
10
|
+
keyName: string | number;
|
|
11
|
+
isExpanded: boolean;
|
|
12
|
+
}
|
|
13
|
+
export declare const EllipsisComp: {
|
|
14
|
+
<T extends object>({ isExpanded, value, keyName }: EllipsisCompProps<T>): string | number | true | Iterable<import("react").ReactNode> | import("react/jsx-runtime").JSX.Element | null;
|
|
15
|
+
displayName: string;
|
|
16
|
+
};
|
package/cjs/section/Ellipsis.js
CHANGED
|
@@ -1,17 +1,43 @@
|
|
|
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.Ellipsis = void 0;
|
|
7
|
+
exports.EllipsisComp = exports.Ellipsis = 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");
|
|
9
|
-
var
|
|
12
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
|
+
var _excluded = ["as", "render"];
|
|
14
|
+
var Ellipsis = exports.Ellipsis = function Ellipsis(props) {
|
|
10
15
|
var _useSectionStore = (0, _Section.useSectionStore)(),
|
|
11
16
|
_useSectionStore$Elli = _useSectionStore.Ellipsis,
|
|
12
17
|
Comp = _useSectionStore$Elli === void 0 ? {} : _useSectionStore$Elli;
|
|
13
18
|
(0, _useRender.useSectionRender)(Comp, props, 'Ellipsis');
|
|
14
19
|
return null;
|
|
15
20
|
};
|
|
16
|
-
|
|
17
|
-
|
|
21
|
+
Ellipsis.displayName = 'JVR.Ellipsis';
|
|
22
|
+
var EllipsisComp = exports.EllipsisComp = function EllipsisComp(_ref) {
|
|
23
|
+
var isExpanded = _ref.isExpanded,
|
|
24
|
+
value = _ref.value,
|
|
25
|
+
keyName = _ref.keyName;
|
|
26
|
+
var _useSectionStore2 = (0, _Section.useSectionStore)(),
|
|
27
|
+
_useSectionStore2$Ell = _useSectionStore2.Ellipsis,
|
|
28
|
+
Comp = _useSectionStore2$Ell === void 0 ? {} : _useSectionStore2$Ell;
|
|
29
|
+
var as = Comp.as,
|
|
30
|
+
render = Comp.render,
|
|
31
|
+
reset = (0, _objectWithoutProperties2["default"])(Comp, _excluded);
|
|
32
|
+
var Elm = as || 'span';
|
|
33
|
+
var child = render && typeof render === 'function' && render((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, reset), {}, {
|
|
34
|
+
'data-expanded': isExpanded
|
|
35
|
+
}), {
|
|
36
|
+
value: value,
|
|
37
|
+
keyName: keyName
|
|
38
|
+
});
|
|
39
|
+
if (child) return child;
|
|
40
|
+
if (!isExpanded) return null;
|
|
41
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Elm, (0, _objectSpread2["default"])({}, reset));
|
|
42
|
+
};
|
|
43
|
+
EllipsisComp.displayName = 'JVR.EllipsisComp';
|
package/cjs/section/KeyName.d.ts
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
|
+
import { type FC, type PropsWithChildren } from 'react';
|
|
1
2
|
import { type TagType } from '../store/Types';
|
|
2
3
|
import { type SectionElement } from '../store/Section';
|
|
3
4
|
export declare const KeyName: {
|
|
4
5
|
<K extends TagType>(props: SectionElement<K>): null;
|
|
5
6
|
displayName: string;
|
|
6
7
|
};
|
|
8
|
+
type KeyNameCompProps = {
|
|
9
|
+
keyName: string | number;
|
|
10
|
+
value?: unknown;
|
|
11
|
+
parentValue?: unknown;
|
|
12
|
+
};
|
|
13
|
+
export declare const KeyNameComp: FC<PropsWithChildren<KeyNameCompProps>>;
|
|
14
|
+
export {};
|