bippy 0.3.2 → 0.3.4
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/dist/{chunk-LMTDJIAV.cjs → chunk-5UPESIXB.cjs} +9 -9
- package/dist/{chunk-OZZZ2ACU.cjs → chunk-HBEFN4VG.cjs} +68 -1
- package/dist/{chunk-AMVCK6H6.js → chunk-IXOVE6NU.js} +1 -1
- package/dist/{chunk-SI6Y374H.js → chunk-W6TIDV6X.js} +68 -2
- package/dist/{chunk-E67XFKKG.js → chunk-XG3B2MUK.js} +1 -1
- package/dist/{chunk-J2F3EJOS.cjs → chunk-ZGXPNYXM.cjs} +2 -2
- package/dist/core.cjs +74 -70
- package/dist/core.d.cts +8 -1
- package/dist/core.d.ts +8 -1
- package/dist/core.js +1 -1
- package/dist/experiments/inspect.cjs +262 -513
- package/dist/experiments/inspect.d.cts +10 -5
- package/dist/experiments/inspect.d.ts +10 -5
- package/dist/experiments/inspect.js +237 -488
- package/dist/index.cjs +75 -71
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.global.js +1 -1
- package/dist/index.js +2 -2
- package/dist/jsx-runtime.cjs +2 -2
- package/dist/jsx-runtime.js +2 -2
- package/dist/source.cjs +77 -73
- package/dist/source.d.cts +2 -2
- package/dist/source.d.ts +2 -2
- package/dist/source.global.js +2 -2
- package/dist/source.js +3 -3
- package/package.json +6 -5
- package/dist/experiments/shrinkwrap.cjs +0 -375
- package/dist/experiments/shrinkwrap.d.cts +0 -10
- package/dist/experiments/shrinkwrap.d.ts +0 -10
- package/dist/experiments/shrinkwrap.js +0 -370
- package/dist/shrinkwrap.global.js +0 -9
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { getFiberSource } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import { getFiberFromHostInstance,
|
|
1
|
+
import { getFiberSource } from '../chunk-IXOVE6NU.js';
|
|
2
|
+
import '../chunk-XG3B2MUK.js';
|
|
3
|
+
import { getFiberFromHostInstance, getLatestFiber, getDisplayName, isInstrumentationActive, hasRDTHook, getRDTHook, detectReactBuildType } from '../chunk-W6TIDV6X.js';
|
|
4
4
|
import '../chunk-EPG3GO3H.js';
|
|
5
|
-
import
|
|
5
|
+
import React14, { createContext, memo, Children, useContext, useCallback, useState, useLayoutEffect, forwardRef, useMemo, useEffect, useImperativeHandle as useImperativeHandle$1 } from 'react';
|
|
6
6
|
import ReactDOM from 'react-dom';
|
|
7
7
|
|
|
8
8
|
/**
|
|
@@ -432,15 +432,15 @@ var themeAcceptor = (WrappedComponent) => {
|
|
|
432
432
|
return createTheme(themes_exports[DEFAULT_THEME_NAME]);
|
|
433
433
|
}
|
|
434
434
|
}, [theme32]);
|
|
435
|
-
return /* @__PURE__ */
|
|
435
|
+
return /* @__PURE__ */ React14.createElement(ThemeContext.Provider, {
|
|
436
436
|
value: themeStyles
|
|
437
|
-
}, /* @__PURE__ */
|
|
437
|
+
}, /* @__PURE__ */ React14.createElement(WrappedComponent, {
|
|
438
438
|
...restProps
|
|
439
439
|
}));
|
|
440
440
|
};
|
|
441
441
|
return ThemeAcceptor;
|
|
442
442
|
};
|
|
443
|
-
var Arrow = ({ expanded, styles }) => /* @__PURE__ */
|
|
443
|
+
var Arrow = ({ expanded, styles }) => /* @__PURE__ */ React14.createElement("span", {
|
|
444
444
|
style: {
|
|
445
445
|
...styles.base,
|
|
446
446
|
...expanded ? styles.expanded : styles.collapsed
|
|
@@ -449,7 +449,7 @@ var Arrow = ({ expanded, styles }) => /* @__PURE__ */ React17.createElement("spa
|
|
|
449
449
|
var TreeNode = memo((props) => {
|
|
450
450
|
props = {
|
|
451
451
|
expanded: true,
|
|
452
|
-
nodeRenderer: ({ name }) => /* @__PURE__ */
|
|
452
|
+
nodeRenderer: ({ name }) => /* @__PURE__ */ React14.createElement("span", null, name),
|
|
453
453
|
onClick: () => {
|
|
454
454
|
},
|
|
455
455
|
shouldShowArrow: false,
|
|
@@ -459,22 +459,22 @@ var TreeNode = memo((props) => {
|
|
|
459
459
|
const { expanded, onClick, children, nodeRenderer, title, shouldShowArrow, shouldShowPlaceholder } = props;
|
|
460
460
|
const styles = useStyles("TreeNode");
|
|
461
461
|
const NodeRenderer = nodeRenderer;
|
|
462
|
-
return /* @__PURE__ */
|
|
462
|
+
return /* @__PURE__ */ React14.createElement("li", {
|
|
463
463
|
"aria-expanded": expanded,
|
|
464
464
|
role: "treeitem",
|
|
465
465
|
style: styles.treeNodeBase,
|
|
466
466
|
title
|
|
467
|
-
}, /* @__PURE__ */
|
|
467
|
+
}, /* @__PURE__ */ React14.createElement("div", {
|
|
468
468
|
style: styles.treeNodePreviewContainer,
|
|
469
469
|
onClick
|
|
470
|
-
}, shouldShowArrow || Children.count(children) > 0 ? /* @__PURE__ */
|
|
470
|
+
}, shouldShowArrow || Children.count(children) > 0 ? /* @__PURE__ */ React14.createElement(Arrow, {
|
|
471
471
|
expanded,
|
|
472
472
|
styles: styles.treeNodeArrow
|
|
473
|
-
}) : shouldShowPlaceholder && /* @__PURE__ */
|
|
473
|
+
}) : shouldShowPlaceholder && /* @__PURE__ */ React14.createElement("span", {
|
|
474
474
|
style: styles.treeNodePlaceholder
|
|
475
|
-
}, "\xA0"), /* @__PURE__ */
|
|
475
|
+
}, "\xA0"), /* @__PURE__ */ React14.createElement(NodeRenderer, {
|
|
476
476
|
...props
|
|
477
|
-
})), /* @__PURE__ */
|
|
477
|
+
})), /* @__PURE__ */ React14.createElement("ol", {
|
|
478
478
|
role: "group",
|
|
479
479
|
style: styles.treeNodeChildNodesContainer
|
|
480
480
|
}, expanded ? children : void 0));
|
|
@@ -533,7 +533,7 @@ var ConnectedTreeNode = memo((props) => {
|
|
|
533
533
|
...prevExpandedPaths,
|
|
534
534
|
[path]: !expanded
|
|
535
535
|
})), [nodeHasChildNodes, setExpandedPaths, path, expanded]);
|
|
536
|
-
return /* @__PURE__ */
|
|
536
|
+
return /* @__PURE__ */ React14.createElement(TreeNode, {
|
|
537
537
|
expanded,
|
|
538
538
|
onClick: handleClick,
|
|
539
539
|
shouldShowArrow: nodeHasChildNodes,
|
|
@@ -541,7 +541,7 @@ var ConnectedTreeNode = memo((props) => {
|
|
|
541
541
|
nodeRenderer,
|
|
542
542
|
...props
|
|
543
543
|
}, expanded ? [...dataIterator(data)].map(({ name, data: data2, ...renderNodeProps }) => {
|
|
544
|
-
return /* @__PURE__ */
|
|
544
|
+
return /* @__PURE__ */ React14.createElement(ConnectedTreeNode, {
|
|
545
545
|
name,
|
|
546
546
|
data: data2,
|
|
547
547
|
depth: depth + 1,
|
|
@@ -558,12 +558,12 @@ var TreeView = memo(({ name, data, dataIterator, nodeRenderer, expandPaths, expa
|
|
|
558
558
|
const stateAndSetter = useState({});
|
|
559
559
|
const [, setExpandedPaths] = stateAndSetter;
|
|
560
560
|
useLayoutEffect(() => setExpandedPaths((prevExpandedPaths) => getExpandedPaths(data, dataIterator, expandPaths, expandLevel, prevExpandedPaths)), [data, dataIterator, expandPaths, expandLevel]);
|
|
561
|
-
return /* @__PURE__ */
|
|
561
|
+
return /* @__PURE__ */ React14.createElement(ExpandedPathsContext.Provider, {
|
|
562
562
|
value: stateAndSetter
|
|
563
|
-
}, /* @__PURE__ */
|
|
563
|
+
}, /* @__PURE__ */ React14.createElement("ol", {
|
|
564
564
|
role: "tree",
|
|
565
565
|
style: styles.treeViewOutline
|
|
566
|
-
}, /* @__PURE__ */
|
|
566
|
+
}, /* @__PURE__ */ React14.createElement(ConnectedTreeNode, {
|
|
567
567
|
name,
|
|
568
568
|
data,
|
|
569
569
|
dataIterator,
|
|
@@ -579,7 +579,7 @@ var ObjectName = ({ name, dimmed = false, styles = {} }) => {
|
|
|
579
579
|
...dimmed ? themeStyles["dimmed"] : {},
|
|
580
580
|
...styles
|
|
581
581
|
};
|
|
582
|
-
return /* @__PURE__ */
|
|
582
|
+
return /* @__PURE__ */ React14.createElement("span", {
|
|
583
583
|
style: appliedStyles
|
|
584
584
|
}, name);
|
|
585
585
|
};
|
|
@@ -588,61 +588,61 @@ var ObjectValue = ({ object, styles }) => {
|
|
|
588
588
|
const mkStyle = (key) => ({ ...themeStyles[key], ...styles });
|
|
589
589
|
switch (typeof object) {
|
|
590
590
|
case "bigint":
|
|
591
|
-
return /* @__PURE__ */
|
|
591
|
+
return /* @__PURE__ */ React14.createElement("span", {
|
|
592
592
|
style: mkStyle("objectValueNumber")
|
|
593
593
|
}, String(object), "n");
|
|
594
594
|
case "number":
|
|
595
|
-
return /* @__PURE__ */
|
|
595
|
+
return /* @__PURE__ */ React14.createElement("span", {
|
|
596
596
|
style: mkStyle("objectValueNumber")
|
|
597
597
|
}, String(object));
|
|
598
598
|
case "string":
|
|
599
|
-
return /* @__PURE__ */
|
|
599
|
+
return /* @__PURE__ */ React14.createElement("span", {
|
|
600
600
|
style: mkStyle("objectValueString")
|
|
601
601
|
}, '"', object, '"');
|
|
602
602
|
case "boolean":
|
|
603
|
-
return /* @__PURE__ */
|
|
603
|
+
return /* @__PURE__ */ React14.createElement("span", {
|
|
604
604
|
style: mkStyle("objectValueBoolean")
|
|
605
605
|
}, String(object));
|
|
606
606
|
case "undefined":
|
|
607
|
-
return /* @__PURE__ */
|
|
607
|
+
return /* @__PURE__ */ React14.createElement("span", {
|
|
608
608
|
style: mkStyle("objectValueUndefined")
|
|
609
609
|
}, "undefined");
|
|
610
610
|
case "object":
|
|
611
611
|
if (object === null) {
|
|
612
|
-
return /* @__PURE__ */
|
|
612
|
+
return /* @__PURE__ */ React14.createElement("span", {
|
|
613
613
|
style: mkStyle("objectValueNull")
|
|
614
614
|
}, "null");
|
|
615
615
|
}
|
|
616
616
|
if (object instanceof Date) {
|
|
617
|
-
return /* @__PURE__ */
|
|
617
|
+
return /* @__PURE__ */ React14.createElement("span", null, object.toString());
|
|
618
618
|
}
|
|
619
619
|
if (object instanceof RegExp) {
|
|
620
|
-
return /* @__PURE__ */
|
|
620
|
+
return /* @__PURE__ */ React14.createElement("span", {
|
|
621
621
|
style: mkStyle("objectValueRegExp")
|
|
622
622
|
}, object.toString());
|
|
623
623
|
}
|
|
624
624
|
if (Array.isArray(object)) {
|
|
625
|
-
return /* @__PURE__ */
|
|
625
|
+
return /* @__PURE__ */ React14.createElement("span", null, `Array(${object.length})`);
|
|
626
626
|
}
|
|
627
627
|
if (!object.constructor) {
|
|
628
|
-
return /* @__PURE__ */
|
|
628
|
+
return /* @__PURE__ */ React14.createElement("span", null, "Object");
|
|
629
629
|
}
|
|
630
630
|
if (typeof object.constructor.isBuffer === "function" && object.constructor.isBuffer(object)) {
|
|
631
|
-
return /* @__PURE__ */
|
|
631
|
+
return /* @__PURE__ */ React14.createElement("span", null, `Buffer[${object.length}]`);
|
|
632
632
|
}
|
|
633
|
-
return /* @__PURE__ */
|
|
633
|
+
return /* @__PURE__ */ React14.createElement("span", null, object.constructor.name);
|
|
634
634
|
case "function":
|
|
635
|
-
return /* @__PURE__ */
|
|
635
|
+
return /* @__PURE__ */ React14.createElement("span", null, /* @__PURE__ */ React14.createElement("span", {
|
|
636
636
|
style: mkStyle("objectValueFunctionPrefix")
|
|
637
|
-
}, "\u0192\xA0"), /* @__PURE__ */
|
|
637
|
+
}, "\u0192\xA0"), /* @__PURE__ */ React14.createElement("span", {
|
|
638
638
|
style: mkStyle("objectValueFunctionName")
|
|
639
639
|
}, object.name, "()"));
|
|
640
640
|
case "symbol":
|
|
641
|
-
return /* @__PURE__ */
|
|
641
|
+
return /* @__PURE__ */ React14.createElement("span", {
|
|
642
642
|
style: mkStyle("objectValueSymbol")
|
|
643
643
|
}, object.toString());
|
|
644
644
|
default:
|
|
645
|
-
return /* @__PURE__ */
|
|
645
|
+
return /* @__PURE__ */ React14.createElement("span", null);
|
|
646
646
|
}
|
|
647
647
|
};
|
|
648
648
|
var hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
@@ -668,25 +668,25 @@ var ObjectPreview = ({ data }) => {
|
|
|
668
668
|
const styles = useStyles("ObjectPreview");
|
|
669
669
|
const object = data;
|
|
670
670
|
if (typeof object !== "object" || object === null || object instanceof Date || object instanceof RegExp) {
|
|
671
|
-
return /* @__PURE__ */
|
|
671
|
+
return /* @__PURE__ */ React14.createElement(ObjectValue, {
|
|
672
672
|
object
|
|
673
673
|
});
|
|
674
674
|
}
|
|
675
675
|
if (Array.isArray(object)) {
|
|
676
676
|
const maxProperties = styles.arrayMaxProperties;
|
|
677
|
-
const previewArray = object.slice(0, maxProperties).map((element, index) => /* @__PURE__ */
|
|
677
|
+
const previewArray = object.slice(0, maxProperties).map((element, index) => /* @__PURE__ */ React14.createElement(ObjectValue, {
|
|
678
678
|
key: index,
|
|
679
679
|
object: element
|
|
680
680
|
}));
|
|
681
681
|
if (object.length > maxProperties) {
|
|
682
|
-
previewArray.push(/* @__PURE__ */
|
|
682
|
+
previewArray.push(/* @__PURE__ */ React14.createElement("span", {
|
|
683
683
|
key: "ellipsis"
|
|
684
684
|
}, "\u2026"));
|
|
685
685
|
}
|
|
686
686
|
const arrayLength = object.length;
|
|
687
|
-
return /* @__PURE__ */
|
|
687
|
+
return /* @__PURE__ */ React14.createElement(React14.Fragment, null, /* @__PURE__ */ React14.createElement("span", {
|
|
688
688
|
style: styles.objectDescription
|
|
689
|
-
}, arrayLength === 0 ? `` : `(${arrayLength})\xA0`), /* @__PURE__ */
|
|
689
|
+
}, arrayLength === 0 ? `` : `(${arrayLength})\xA0`), /* @__PURE__ */ React14.createElement("span", {
|
|
690
690
|
style: styles.preview
|
|
691
691
|
}, "[", intersperse(previewArray, ", "), "]"));
|
|
692
692
|
} else {
|
|
@@ -696,16 +696,16 @@ var ObjectPreview = ({ data }) => {
|
|
|
696
696
|
if (hasOwnProperty.call(object, propertyName)) {
|
|
697
697
|
let ellipsis;
|
|
698
698
|
if (propertyNodes.length === maxProperties - 1 && Object.keys(object).length > maxProperties) {
|
|
699
|
-
ellipsis = /* @__PURE__ */
|
|
699
|
+
ellipsis = /* @__PURE__ */ React14.createElement("span", {
|
|
700
700
|
key: "ellipsis"
|
|
701
701
|
}, "\u2026");
|
|
702
702
|
}
|
|
703
703
|
const propertyValue = getPropertyValue(object, propertyName);
|
|
704
|
-
propertyNodes.push(/* @__PURE__ */
|
|
704
|
+
propertyNodes.push(/* @__PURE__ */ React14.createElement("span", {
|
|
705
705
|
key: propertyName
|
|
706
|
-
}, /* @__PURE__ */
|
|
706
|
+
}, /* @__PURE__ */ React14.createElement(ObjectName, {
|
|
707
707
|
name: propertyName || `""`
|
|
708
|
-
}), ":\xA0", /* @__PURE__ */
|
|
708
|
+
}), ":\xA0", /* @__PURE__ */ React14.createElement(ObjectValue, {
|
|
709
709
|
object: propertyValue
|
|
710
710
|
}), ellipsis));
|
|
711
711
|
if (ellipsis)
|
|
@@ -713,34 +713,34 @@ var ObjectPreview = ({ data }) => {
|
|
|
713
713
|
}
|
|
714
714
|
}
|
|
715
715
|
const objectConstructorName = object.constructor ? object.constructor.name : "Object";
|
|
716
|
-
return /* @__PURE__ */
|
|
716
|
+
return /* @__PURE__ */ React14.createElement(React14.Fragment, null, /* @__PURE__ */ React14.createElement("span", {
|
|
717
717
|
style: styles.objectDescription
|
|
718
|
-
}, objectConstructorName === "Object" ? "" : `${objectConstructorName} `), /* @__PURE__ */
|
|
718
|
+
}, objectConstructorName === "Object" ? "" : `${objectConstructorName} `), /* @__PURE__ */ React14.createElement("span", {
|
|
719
719
|
style: styles.preview
|
|
720
720
|
}, "{", intersperse(propertyNodes, ", "), "}"));
|
|
721
721
|
}
|
|
722
722
|
};
|
|
723
723
|
var ObjectRootLabel = ({ name, data }) => {
|
|
724
724
|
if (typeof name === "string") {
|
|
725
|
-
return /* @__PURE__ */
|
|
725
|
+
return /* @__PURE__ */ React14.createElement("span", null, /* @__PURE__ */ React14.createElement(ObjectName, {
|
|
726
726
|
name
|
|
727
|
-
}), /* @__PURE__ */
|
|
727
|
+
}), /* @__PURE__ */ React14.createElement("span", null, ": "), /* @__PURE__ */ React14.createElement(ObjectPreview, {
|
|
728
728
|
data
|
|
729
729
|
}));
|
|
730
730
|
} else {
|
|
731
|
-
return /* @__PURE__ */
|
|
731
|
+
return /* @__PURE__ */ React14.createElement(ObjectPreview, {
|
|
732
732
|
data
|
|
733
733
|
});
|
|
734
734
|
}
|
|
735
735
|
};
|
|
736
736
|
var ObjectLabel = ({ name, data, isNonenumerable = false }) => {
|
|
737
737
|
const object = data;
|
|
738
|
-
return /* @__PURE__ */
|
|
738
|
+
return /* @__PURE__ */ React14.createElement("span", null, typeof name === "string" ? /* @__PURE__ */ React14.createElement(ObjectName, {
|
|
739
739
|
name,
|
|
740
740
|
dimmed: isNonenumerable
|
|
741
|
-
}) : /* @__PURE__ */
|
|
741
|
+
}) : /* @__PURE__ */ React14.createElement(ObjectPreview, {
|
|
742
742
|
data: name
|
|
743
|
-
}), /* @__PURE__ */
|
|
743
|
+
}), /* @__PURE__ */ React14.createElement("span", null, ": "), /* @__PURE__ */ React14.createElement(ObjectValue, {
|
|
744
744
|
object
|
|
745
745
|
}));
|
|
746
746
|
};
|
|
@@ -807,10 +807,10 @@ var createIterator = (showNonenumerable, sortObjectKeys) => {
|
|
|
807
807
|
};
|
|
808
808
|
return objectIterator;
|
|
809
809
|
};
|
|
810
|
-
var defaultNodeRenderer = ({ depth, name, data, isNonenumerable }) => depth === 0 ? /* @__PURE__ */
|
|
810
|
+
var defaultNodeRenderer = ({ depth, name, data, isNonenumerable }) => depth === 0 ? /* @__PURE__ */ React14.createElement(ObjectRootLabel, {
|
|
811
811
|
name,
|
|
812
812
|
data
|
|
813
|
-
}) : /* @__PURE__ */
|
|
813
|
+
}) : /* @__PURE__ */ React14.createElement(ObjectLabel, {
|
|
814
814
|
name,
|
|
815
815
|
data,
|
|
816
816
|
isNonenumerable
|
|
@@ -818,7 +818,7 @@ var defaultNodeRenderer = ({ depth, name, data, isNonenumerable }) => depth ===
|
|
|
818
818
|
var ObjectInspector = ({ showNonenumerable = false, sortObjectKeys, nodeRenderer, ...treeViewProps }) => {
|
|
819
819
|
const dataIterator = createIterator(showNonenumerable, sortObjectKeys);
|
|
820
820
|
const renderer = nodeRenderer ? nodeRenderer : defaultNodeRenderer;
|
|
821
|
-
return /* @__PURE__ */
|
|
821
|
+
return /* @__PURE__ */ React14.createElement(TreeView, {
|
|
822
822
|
nodeRenderer: renderer,
|
|
823
823
|
dataIterator,
|
|
824
824
|
...treeViewProps
|
|
@@ -857,33 +857,33 @@ function getHeaders(data) {
|
|
|
857
857
|
var DataContainer = ({ rows, columns, rowsData }) => {
|
|
858
858
|
const styles = useStyles("TableInspectorDataContainer");
|
|
859
859
|
const borderStyles = useStyles("TableInspectorLeftBorder");
|
|
860
|
-
return /* @__PURE__ */
|
|
860
|
+
return /* @__PURE__ */ React14.createElement("div", {
|
|
861
861
|
style: styles.div
|
|
862
|
-
}, /* @__PURE__ */
|
|
862
|
+
}, /* @__PURE__ */ React14.createElement("table", {
|
|
863
863
|
style: styles.table
|
|
864
|
-
}, /* @__PURE__ */
|
|
864
|
+
}, /* @__PURE__ */ React14.createElement("colgroup", null), /* @__PURE__ */ React14.createElement("tbody", null, rows.map((row, i) => /* @__PURE__ */ React14.createElement("tr", {
|
|
865
865
|
key: row,
|
|
866
866
|
style: styles.tr
|
|
867
|
-
}, /* @__PURE__ */
|
|
867
|
+
}, /* @__PURE__ */ React14.createElement("td", {
|
|
868
868
|
style: { ...styles.td, ...borderStyles.none }
|
|
869
869
|
}, row), columns.map((column) => {
|
|
870
870
|
const rowData = rowsData[i];
|
|
871
871
|
if (typeof rowData === "object" && rowData !== null && hasOwnProperty.call(rowData, column)) {
|
|
872
|
-
return /* @__PURE__ */
|
|
872
|
+
return /* @__PURE__ */ React14.createElement("td", {
|
|
873
873
|
key: column,
|
|
874
874
|
style: { ...styles.td, ...borderStyles.solid }
|
|
875
|
-
}, /* @__PURE__ */
|
|
875
|
+
}, /* @__PURE__ */ React14.createElement(ObjectValue, {
|
|
876
876
|
object: rowData[column]
|
|
877
877
|
}));
|
|
878
878
|
} else {
|
|
879
|
-
return /* @__PURE__ */
|
|
879
|
+
return /* @__PURE__ */ React14.createElement("td", {
|
|
880
880
|
key: column,
|
|
881
881
|
style: { ...styles.td, ...borderStyles.solid }
|
|
882
882
|
});
|
|
883
883
|
}
|
|
884
884
|
}))))));
|
|
885
885
|
};
|
|
886
|
-
var SortIconContainer = (props) => /* @__PURE__ */
|
|
886
|
+
var SortIconContainer = (props) => /* @__PURE__ */ React14.createElement("div", {
|
|
887
887
|
style: {
|
|
888
888
|
position: "absolute",
|
|
889
889
|
top: 1,
|
|
@@ -896,7 +896,7 @@ var SortIconContainer = (props) => /* @__PURE__ */ React17.createElement("div",
|
|
|
896
896
|
var SortIcon = ({ sortAscending }) => {
|
|
897
897
|
const styles = useStyles("TableInspectorSortIcon");
|
|
898
898
|
const glyph = sortAscending ? "\u25B2" : "\u25BC";
|
|
899
|
-
return /* @__PURE__ */
|
|
899
|
+
return /* @__PURE__ */ React14.createElement("div", {
|
|
900
900
|
style: styles
|
|
901
901
|
}, glyph);
|
|
902
902
|
};
|
|
@@ -912,7 +912,7 @@ var TH = ({
|
|
|
912
912
|
const [hovered, setHovered] = useState(false);
|
|
913
913
|
const handleMouseEnter = useCallback(() => setHovered(true), []);
|
|
914
914
|
const handleMouseLeave = useCallback(() => setHovered(false), []);
|
|
915
|
-
return /* @__PURE__ */
|
|
915
|
+
return /* @__PURE__ */ React14.createElement("th", {
|
|
916
916
|
...thProps,
|
|
917
917
|
style: {
|
|
918
918
|
...styles.base,
|
|
@@ -922,9 +922,9 @@ var TH = ({
|
|
|
922
922
|
onMouseEnter: handleMouseEnter,
|
|
923
923
|
onMouseLeave: handleMouseLeave,
|
|
924
924
|
onClick
|
|
925
|
-
}, /* @__PURE__ */
|
|
925
|
+
}, /* @__PURE__ */ React14.createElement("div", {
|
|
926
926
|
style: styles.div
|
|
927
|
-
}, children), sorted && /* @__PURE__ */
|
|
927
|
+
}, children), sorted && /* @__PURE__ */ React14.createElement(SortIconContainer, null, /* @__PURE__ */ React14.createElement(SortIcon, {
|
|
928
928
|
sortAscending
|
|
929
929
|
})));
|
|
930
930
|
};
|
|
@@ -940,16 +940,16 @@ var HeaderContainer = ({
|
|
|
940
940
|
}) => {
|
|
941
941
|
const styles = useStyles("TableInspectorHeaderContainer");
|
|
942
942
|
const borderStyles = useStyles("TableInspectorLeftBorder");
|
|
943
|
-
return /* @__PURE__ */
|
|
943
|
+
return /* @__PURE__ */ React14.createElement("div", {
|
|
944
944
|
style: styles.base
|
|
945
|
-
}, /* @__PURE__ */
|
|
945
|
+
}, /* @__PURE__ */ React14.createElement("table", {
|
|
946
946
|
style: styles.table
|
|
947
|
-
}, /* @__PURE__ */
|
|
947
|
+
}, /* @__PURE__ */ React14.createElement("tbody", null, /* @__PURE__ */ React14.createElement("tr", null, /* @__PURE__ */ React14.createElement(TH, {
|
|
948
948
|
borderStyle: borderStyles.none,
|
|
949
949
|
sorted: sorted && sortIndexColumn,
|
|
950
950
|
sortAscending,
|
|
951
951
|
onClick: onIndexTHClick
|
|
952
|
-
}, indexColumnText), columns.map((column) => /* @__PURE__ */
|
|
952
|
+
}, indexColumnText), columns.map((column) => /* @__PURE__ */ React14.createElement(TH, {
|
|
953
953
|
borderStyle: borderStyles.solid,
|
|
954
954
|
key: column,
|
|
955
955
|
sorted: sorted && sortColumn === column,
|
|
@@ -985,7 +985,7 @@ var TableInspector = ({
|
|
|
985
985
|
}));
|
|
986
986
|
}, []);
|
|
987
987
|
if (typeof data !== "object" || data === null) {
|
|
988
|
-
return /* @__PURE__ */
|
|
988
|
+
return /* @__PURE__ */ React14.createElement("div", null);
|
|
989
989
|
}
|
|
990
990
|
let { rowHeaders, colHeaders } = getHeaders(data);
|
|
991
991
|
if (columns !== void 0) {
|
|
@@ -1049,9 +1049,9 @@ var TableInspector = ({
|
|
|
1049
1049
|
rowHeaders = sortedRowIndexes.map((i) => rowHeaders[i]);
|
|
1050
1050
|
rowsData = sortedRowIndexes.map((i) => rowsData[i]);
|
|
1051
1051
|
}
|
|
1052
|
-
return /* @__PURE__ */
|
|
1052
|
+
return /* @__PURE__ */ React14.createElement("div", {
|
|
1053
1053
|
style: styles.base
|
|
1054
|
-
}, /* @__PURE__ */
|
|
1054
|
+
}, /* @__PURE__ */ React14.createElement(HeaderContainer, {
|
|
1055
1055
|
columns: colHeaders,
|
|
1056
1056
|
sorted,
|
|
1057
1057
|
sortIndexColumn,
|
|
@@ -1059,7 +1059,7 @@ var TableInspector = ({
|
|
|
1059
1059
|
sortAscending,
|
|
1060
1060
|
onTHClick: handleTHClick,
|
|
1061
1061
|
onIndexTHClick: handleIndexTHClick
|
|
1062
|
-
}), /* @__PURE__ */
|
|
1062
|
+
}), /* @__PURE__ */ React14.createElement(DataContainer, {
|
|
1063
1063
|
rows: rowHeaders,
|
|
1064
1064
|
columns: colHeaders,
|
|
1065
1065
|
rowsData
|
|
@@ -1069,20 +1069,20 @@ var themedTableInspector = themeAcceptor(TableInspector);
|
|
|
1069
1069
|
var TEXT_NODE_MAX_INLINE_CHARS = 80;
|
|
1070
1070
|
var shouldInline = (data) => data.childNodes.length === 0 || data.childNodes.length === 1 && data.childNodes[0].nodeType === Node.TEXT_NODE && data.textContent.length < TEXT_NODE_MAX_INLINE_CHARS;
|
|
1071
1071
|
var OpenTag = ({ tagName, attributes, styles }) => {
|
|
1072
|
-
return /* @__PURE__ */
|
|
1072
|
+
return /* @__PURE__ */ React14.createElement("span", {
|
|
1073
1073
|
style: styles.base
|
|
1074
|
-
}, "<", /* @__PURE__ */
|
|
1074
|
+
}, "<", /* @__PURE__ */ React14.createElement("span", {
|
|
1075
1075
|
style: styles.tagName
|
|
1076
1076
|
}, tagName), (() => {
|
|
1077
1077
|
if (attributes) {
|
|
1078
1078
|
const attributeNodes = [];
|
|
1079
1079
|
for (let i = 0; i < attributes.length; i++) {
|
|
1080
1080
|
const attribute = attributes[i];
|
|
1081
|
-
attributeNodes.push(/* @__PURE__ */
|
|
1081
|
+
attributeNodes.push(/* @__PURE__ */ React14.createElement("span", {
|
|
1082
1082
|
key: i
|
|
1083
|
-
}, " ", /* @__PURE__ */
|
|
1083
|
+
}, " ", /* @__PURE__ */ React14.createElement("span", {
|
|
1084
1084
|
style: styles.htmlAttributeName
|
|
1085
|
-
}, attribute.name), '="', /* @__PURE__ */
|
|
1085
|
+
}, attribute.name), '="', /* @__PURE__ */ React14.createElement("span", {
|
|
1086
1086
|
style: styles.htmlAttributeValue
|
|
1087
1087
|
}, attribute.value), '"'));
|
|
1088
1088
|
}
|
|
@@ -1090,9 +1090,9 @@ var OpenTag = ({ tagName, attributes, styles }) => {
|
|
|
1090
1090
|
}
|
|
1091
1091
|
})(), ">");
|
|
1092
1092
|
};
|
|
1093
|
-
var CloseTag = ({ tagName, isChildNode = false, styles }) => /* @__PURE__ */
|
|
1093
|
+
var CloseTag = ({ tagName, isChildNode = false, styles }) => /* @__PURE__ */ React14.createElement("span", {
|
|
1094
1094
|
style: Object.assign({}, styles.base, isChildNode && styles.offsetLeft)
|
|
1095
|
-
}, "</", /* @__PURE__ */
|
|
1095
|
+
}, "</", /* @__PURE__ */ React14.createElement("span", {
|
|
1096
1096
|
style: styles.tagName
|
|
1097
1097
|
}, tagName), ">");
|
|
1098
1098
|
var nameByNodeType = {
|
|
@@ -1107,7 +1107,7 @@ var nameByNodeType = {
|
|
|
1107
1107
|
var DOMNodePreview = ({ isCloseTag, data, expanded }) => {
|
|
1108
1108
|
const styles = useStyles("DOMNodePreview");
|
|
1109
1109
|
if (isCloseTag) {
|
|
1110
|
-
return /* @__PURE__ */
|
|
1110
|
+
return /* @__PURE__ */ React14.createElement(CloseTag, {
|
|
1111
1111
|
styles: styles.htmlCloseTag,
|
|
1112
1112
|
isChildNode: true,
|
|
1113
1113
|
tagName: data.tagName
|
|
@@ -1115,34 +1115,34 @@ var DOMNodePreview = ({ isCloseTag, data, expanded }) => {
|
|
|
1115
1115
|
}
|
|
1116
1116
|
switch (data.nodeType) {
|
|
1117
1117
|
case Node.ELEMENT_NODE:
|
|
1118
|
-
return /* @__PURE__ */
|
|
1118
|
+
return /* @__PURE__ */ React14.createElement("span", null, /* @__PURE__ */ React14.createElement(OpenTag, {
|
|
1119
1119
|
tagName: data.tagName,
|
|
1120
1120
|
attributes: data.attributes,
|
|
1121
1121
|
styles: styles.htmlOpenTag
|
|
1122
|
-
}), shouldInline(data) ? data.textContent : !expanded && "\u2026", !expanded && /* @__PURE__ */
|
|
1122
|
+
}), shouldInline(data) ? data.textContent : !expanded && "\u2026", !expanded && /* @__PURE__ */ React14.createElement(CloseTag, {
|
|
1123
1123
|
tagName: data.tagName,
|
|
1124
1124
|
styles: styles.htmlCloseTag
|
|
1125
1125
|
}));
|
|
1126
1126
|
case Node.TEXT_NODE:
|
|
1127
|
-
return /* @__PURE__ */
|
|
1127
|
+
return /* @__PURE__ */ React14.createElement("span", null, data.textContent);
|
|
1128
1128
|
case Node.CDATA_SECTION_NODE:
|
|
1129
|
-
return /* @__PURE__ */
|
|
1129
|
+
return /* @__PURE__ */ React14.createElement("span", null, "<![CDATA[" + data.textContent + "]]>");
|
|
1130
1130
|
case Node.COMMENT_NODE:
|
|
1131
|
-
return /* @__PURE__ */
|
|
1131
|
+
return /* @__PURE__ */ React14.createElement("span", {
|
|
1132
1132
|
style: styles.htmlComment
|
|
1133
1133
|
}, "<!--", data.textContent, "-->");
|
|
1134
1134
|
case Node.PROCESSING_INSTRUCTION_NODE:
|
|
1135
|
-
return /* @__PURE__ */
|
|
1135
|
+
return /* @__PURE__ */ React14.createElement("span", null, data.nodeName);
|
|
1136
1136
|
case Node.DOCUMENT_TYPE_NODE:
|
|
1137
|
-
return /* @__PURE__ */
|
|
1137
|
+
return /* @__PURE__ */ React14.createElement("span", {
|
|
1138
1138
|
style: styles.htmlDoctype
|
|
1139
1139
|
}, "<!DOCTYPE ", data.name, data.publicId ? ` PUBLIC "${data.publicId}"` : "", !data.publicId && data.systemId ? " SYSTEM" : "", data.systemId ? ` "${data.systemId}"` : "", ">");
|
|
1140
1140
|
case Node.DOCUMENT_NODE:
|
|
1141
|
-
return /* @__PURE__ */
|
|
1141
|
+
return /* @__PURE__ */ React14.createElement("span", null, data.nodeName);
|
|
1142
1142
|
case Node.DOCUMENT_FRAGMENT_NODE:
|
|
1143
|
-
return /* @__PURE__ */
|
|
1143
|
+
return /* @__PURE__ */ React14.createElement("span", null, data.nodeName);
|
|
1144
1144
|
default:
|
|
1145
|
-
return /* @__PURE__ */
|
|
1145
|
+
return /* @__PURE__ */ React14.createElement("span", null, nameByNodeType[data.nodeType]);
|
|
1146
1146
|
}
|
|
1147
1147
|
};
|
|
1148
1148
|
var domIterator = function* (data) {
|
|
@@ -1172,7 +1172,7 @@ var domIterator = function* (data) {
|
|
|
1172
1172
|
}
|
|
1173
1173
|
};
|
|
1174
1174
|
var DOMInspector = (props) => {
|
|
1175
|
-
return /* @__PURE__ */
|
|
1175
|
+
return /* @__PURE__ */ React14.createElement(TreeView, {
|
|
1176
1176
|
nodeRenderer: DOMNodePreview,
|
|
1177
1177
|
dataIterator: domIterator,
|
|
1178
1178
|
...props
|
|
@@ -1182,41 +1182,35 @@ var themedDOMInspector = themeAcceptor(DOMInspector);
|
|
|
1182
1182
|
var import_is_dom = __toESM(require_is_dom());
|
|
1183
1183
|
var Inspector = ({ table = false, data, ...rest }) => {
|
|
1184
1184
|
if (table) {
|
|
1185
|
-
return /* @__PURE__ */
|
|
1185
|
+
return /* @__PURE__ */ React14.createElement(themedTableInspector, {
|
|
1186
1186
|
data,
|
|
1187
1187
|
...rest
|
|
1188
1188
|
});
|
|
1189
1189
|
}
|
|
1190
1190
|
if ((0, import_is_dom.default)(data))
|
|
1191
|
-
return /* @__PURE__ */
|
|
1191
|
+
return /* @__PURE__ */ React14.createElement(themedDOMInspector, {
|
|
1192
1192
|
data,
|
|
1193
1193
|
...rest
|
|
1194
1194
|
});
|
|
1195
|
-
return /* @__PURE__ */
|
|
1195
|
+
return /* @__PURE__ */ React14.createElement(themedObjectInspector, {
|
|
1196
1196
|
data,
|
|
1197
1197
|
...rest
|
|
1198
1198
|
});
|
|
1199
1199
|
};
|
|
1200
1200
|
|
|
1201
1201
|
// src/experiments/inspect.tsx
|
|
1202
|
-
var
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
pendingProps: "Props that are about to be applied",
|
|
1213
|
-
memoizedProps: "Props from the last render",
|
|
1214
|
-
memoizedState: "State from the last render",
|
|
1215
|
-
dependencies: "Context and other dependencies this fiber subscribes to",
|
|
1216
|
-
flags: "Side-effects flags (e.g. needs update, deletion)",
|
|
1217
|
-
lanes: "Priority lanes for updates",
|
|
1218
|
-
childLanes: "Priority lanes for child updates"
|
|
1202
|
+
var useImperativeHandlePolyfill = (ref, init, deps) => {
|
|
1203
|
+
useEffect(() => {
|
|
1204
|
+
if (ref) {
|
|
1205
|
+
if (typeof ref === "function") {
|
|
1206
|
+
ref(init());
|
|
1207
|
+
} else if (typeof ref === "object" && "current" in ref) {
|
|
1208
|
+
ref.current = init();
|
|
1209
|
+
}
|
|
1210
|
+
}
|
|
1211
|
+
}, deps);
|
|
1219
1212
|
};
|
|
1213
|
+
var useImperativeHandle = useImperativeHandle$1 || useImperativeHandlePolyfill;
|
|
1220
1214
|
var throttle = (fn, wait) => {
|
|
1221
1215
|
let timeout = null;
|
|
1222
1216
|
return function() {
|
|
@@ -1228,7 +1222,6 @@ var throttle = (fn, wait) => {
|
|
|
1228
1222
|
}
|
|
1229
1223
|
};
|
|
1230
1224
|
};
|
|
1231
|
-
var isMac = typeof navigator !== "undefined" && navigator.platform?.toLowerCase().includes("mac");
|
|
1232
1225
|
var theme3 = {
|
|
1233
1226
|
BASE_FONT_FAMILY: "Menlo, monospace",
|
|
1234
1227
|
BASE_FONT_SIZE: "12px",
|
|
@@ -1268,150 +1261,52 @@ var theme3 = {
|
|
|
1268
1261
|
TABLE_DATA_BACKGROUND_IMAGE: "none",
|
|
1269
1262
|
TABLE_DATA_BACKGROUND_SIZE: "0"
|
|
1270
1263
|
};
|
|
1271
|
-
var
|
|
1272
|
-
|
|
1273
|
-
{
|
|
1274
|
-
type: "button",
|
|
1275
|
-
onClick,
|
|
1276
|
-
style: {
|
|
1277
|
-
padding: "0.5ch 1ch",
|
|
1278
|
-
background: "#161616",
|
|
1279
|
-
border: "1px solid #282828",
|
|
1280
|
-
color: "#FFF",
|
|
1281
|
-
borderRadius: "0.25rem",
|
|
1282
|
-
cursor: "pointer",
|
|
1283
|
-
fontSize: "0.875rem",
|
|
1284
|
-
opacity: 0.8,
|
|
1285
|
-
transition: "opacity 150ms"
|
|
1286
|
-
},
|
|
1287
|
-
onMouseEnter: (e) => {
|
|
1288
|
-
e.currentTarget.style.opacity = "1";
|
|
1289
|
-
},
|
|
1290
|
-
onMouseLeave: (e) => {
|
|
1291
|
-
e.currentTarget.style.opacity = "0.8";
|
|
1292
|
-
}
|
|
1293
|
-
},
|
|
1294
|
-
"\u2190 Back"
|
|
1295
|
-
));
|
|
1296
|
-
var BreadcrumbButton = React17.memo(
|
|
1297
|
-
({
|
|
1298
|
-
name,
|
|
1299
|
-
onClick,
|
|
1300
|
-
onKeyDown
|
|
1301
|
-
}) => /* @__PURE__ */ React17.createElement(
|
|
1302
|
-
"button",
|
|
1303
|
-
{
|
|
1304
|
-
type: "button",
|
|
1305
|
-
onClick,
|
|
1306
|
-
onKeyDown,
|
|
1307
|
-
style: {
|
|
1308
|
-
cursor: "pointer",
|
|
1309
|
-
textDecoration: "underline",
|
|
1310
|
-
color: "#A0A0A0",
|
|
1311
|
-
background: "none",
|
|
1312
|
-
border: "none",
|
|
1313
|
-
padding: 0,
|
|
1314
|
-
font: "inherit"
|
|
1315
|
-
},
|
|
1316
|
-
onMouseEnter: (e) => {
|
|
1317
|
-
e.currentTarget.style.backgroundColor = "#232323";
|
|
1318
|
-
e.currentTarget.style.color = "#FFF";
|
|
1319
|
-
},
|
|
1320
|
-
onMouseLeave: (e) => {
|
|
1321
|
-
e.currentTarget.style.backgroundColor = "";
|
|
1322
|
-
e.currentTarget.style.color = "#A0A0A0";
|
|
1323
|
-
}
|
|
1324
|
-
},
|
|
1325
|
-
name
|
|
1326
|
-
)
|
|
1327
|
-
);
|
|
1328
|
-
var CloseButton = React17.memo(({ onClick }) => /* @__PURE__ */ React17.createElement(
|
|
1329
|
-
"button",
|
|
1330
|
-
{
|
|
1331
|
-
type: "button",
|
|
1332
|
-
onClick,
|
|
1333
|
-
style: {
|
|
1334
|
-
border: "none",
|
|
1335
|
-
background: "none",
|
|
1336
|
-
cursor: "pointer",
|
|
1337
|
-
padding: "0.5ch",
|
|
1338
|
-
fontSize: "2ch",
|
|
1339
|
-
opacity: 0.5,
|
|
1340
|
-
color: "#FFF"
|
|
1341
|
-
}
|
|
1342
|
-
},
|
|
1343
|
-
"\xD7"
|
|
1344
|
-
));
|
|
1345
|
-
var RawInspector = React17.memo(
|
|
1346
|
-
({ enabled = true, dangerouslyRunInProduction = false }) => {
|
|
1264
|
+
var RawInspector = forwardRef(
|
|
1265
|
+
({ enabled = true, dangerouslyRunInProduction = false }, ref) => {
|
|
1347
1266
|
const [element, setElement] = useState(null);
|
|
1267
|
+
const [currentFiber, setCurrentFiber] = useState(null);
|
|
1268
|
+
const [currentFiberSource, setCurrentFiberSource] = useState(null);
|
|
1348
1269
|
const [rect, setRect] = useState(null);
|
|
1349
1270
|
const [isActive, setIsActive] = useState(true);
|
|
1350
|
-
const [
|
|
1351
|
-
const [
|
|
1352
|
-
const
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
},
|
|
1366
|
-
true
|
|
1367
|
-
);
|
|
1368
|
-
console.log("fiber", parentFiber && getFiberSource(parentFiber));
|
|
1369
|
-
return fiber2;
|
|
1370
|
-
}, [selectedFiber, element]);
|
|
1371
|
-
const handlePropertyHover = (_e, propName) => {
|
|
1372
|
-
if (!isDialogMode) return;
|
|
1373
|
-
const explanation = FIBER_PROP_EXPLANATIONS[propName];
|
|
1374
|
-
setTooltip(explanation || null);
|
|
1375
|
-
};
|
|
1376
|
-
const handlePropertyLeave = () => {
|
|
1377
|
-
setTooltip(null);
|
|
1378
|
-
};
|
|
1379
|
-
const handleClose = useCallback(() => {
|
|
1380
|
-
setIsDialogMode(false);
|
|
1381
|
-
setFiberHistory([]);
|
|
1382
|
-
setTooltip(null);
|
|
1383
|
-
setSelectedFiber(null);
|
|
1384
|
-
setElement(null);
|
|
1385
|
-
setRect(null);
|
|
1386
|
-
}, []);
|
|
1387
|
-
useEffect(() => {
|
|
1388
|
-
const handleKeyDown = (e) => {
|
|
1389
|
-
if (e.key === "o" && (e.metaKey || e.ctrlKey) && rect) {
|
|
1390
|
-
e.preventDefault();
|
|
1391
|
-
const currentFiber = getFiberForDisplay();
|
|
1392
|
-
if (currentFiber) {
|
|
1393
|
-
setFiberHistory([currentFiber]);
|
|
1394
|
-
}
|
|
1395
|
-
setIsDialogMode(true);
|
|
1396
|
-
} else if (e.key === "Escape") {
|
|
1397
|
-
handleClose();
|
|
1398
|
-
}
|
|
1399
|
-
};
|
|
1400
|
-
window.addEventListener("keydown", handleKeyDown);
|
|
1401
|
-
return () => window.removeEventListener("keydown", handleKeyDown);
|
|
1402
|
-
}, [rect, getFiberForDisplay, handleClose]);
|
|
1403
|
-
useEffect(() => {
|
|
1404
|
-
if (!isDialogMode) {
|
|
1405
|
-
setTooltip(null);
|
|
1406
|
-
setFiberHistory([]);
|
|
1407
|
-
setSelectedFiber(null);
|
|
1271
|
+
const [isEnabled, setIsEnabled] = useState(enabled);
|
|
1272
|
+
const [position, setPosition] = useState({ top: 0, left: 0 });
|
|
1273
|
+
const currentCleanedFiber = useMemo(() => {
|
|
1274
|
+
if (!currentFiber) return null;
|
|
1275
|
+
const clonedFiber = { ...currentFiber };
|
|
1276
|
+
for (const key in clonedFiber) {
|
|
1277
|
+
const value = clonedFiber[key];
|
|
1278
|
+
if (!value) delete clonedFiber[key];
|
|
1279
|
+
}
|
|
1280
|
+
return clonedFiber;
|
|
1281
|
+
}, [currentFiber]);
|
|
1282
|
+
useImperativeHandle(ref, () => ({
|
|
1283
|
+
enable: () => setIsEnabled(true),
|
|
1284
|
+
disable: () => {
|
|
1285
|
+
setIsEnabled(false);
|
|
1408
1286
|
setElement(null);
|
|
1409
1287
|
setRect(null);
|
|
1288
|
+
},
|
|
1289
|
+
inspectElement: (element2) => {
|
|
1290
|
+
if (!isEnabled) return;
|
|
1291
|
+
setElement(element2);
|
|
1292
|
+
setRect(element2.getBoundingClientRect());
|
|
1410
1293
|
}
|
|
1411
|
-
}
|
|
1294
|
+
}));
|
|
1295
|
+
useEffect(() => {
|
|
1296
|
+
(async () => {
|
|
1297
|
+
if (!element) return;
|
|
1298
|
+
const fiber = getFiberFromHostInstance(element);
|
|
1299
|
+
if (!fiber) return;
|
|
1300
|
+
const latestFiber = getLatestFiber(fiber);
|
|
1301
|
+
const source = await getFiberSource(latestFiber);
|
|
1302
|
+
setCurrentFiber(latestFiber);
|
|
1303
|
+
if (source) {
|
|
1304
|
+
setCurrentFiberSource(source);
|
|
1305
|
+
}
|
|
1306
|
+
})();
|
|
1307
|
+
}, [element]);
|
|
1412
1308
|
useEffect(() => {
|
|
1413
1309
|
const handleMouseMove = (event) => {
|
|
1414
|
-
if (isDialogMode) return;
|
|
1415
1310
|
const isActive2 = isInstrumentationActive() || hasRDTHook();
|
|
1416
1311
|
if (!isActive2) {
|
|
1417
1312
|
setIsActive(false);
|
|
@@ -1427,29 +1322,20 @@ var RawInspector = React17.memo(
|
|
|
1427
1322
|
}
|
|
1428
1323
|
}
|
|
1429
1324
|
}
|
|
1430
|
-
if (!
|
|
1325
|
+
if (!isEnabled) {
|
|
1431
1326
|
setElement(null);
|
|
1432
1327
|
setRect(null);
|
|
1433
|
-
setSelectedFiber(null);
|
|
1434
1328
|
return;
|
|
1435
1329
|
}
|
|
1436
|
-
|
|
1437
|
-
|
|
1438
|
-
|
|
1439
|
-
|
|
1440
|
-
);
|
|
1441
|
-
if (!element2) return;
|
|
1442
|
-
setElement(element2);
|
|
1443
|
-
setRect(element2.getBoundingClientRect());
|
|
1444
|
-
setSelectedFiber(null);
|
|
1445
|
-
}
|
|
1330
|
+
const element2 = document.elementFromPoint(event.clientX, event.clientY);
|
|
1331
|
+
if (!element2) return;
|
|
1332
|
+
setElement(element2);
|
|
1333
|
+
setRect(element2.getBoundingClientRect());
|
|
1446
1334
|
};
|
|
1447
1335
|
const throttledMouseMove = throttle(handleMouseMove, 16);
|
|
1448
1336
|
document.addEventListener("mousemove", throttledMouseMove);
|
|
1449
|
-
return () =>
|
|
1450
|
-
|
|
1451
|
-
};
|
|
1452
|
-
}, [enabled, isDialogMode, dangerouslyRunInProduction]);
|
|
1337
|
+
return () => document.removeEventListener("mousemove", throttledMouseMove);
|
|
1338
|
+
}, [isEnabled, dangerouslyRunInProduction]);
|
|
1453
1339
|
useEffect(() => {
|
|
1454
1340
|
if (!rect) return;
|
|
1455
1341
|
const padding = 10;
|
|
@@ -1479,239 +1365,100 @@ var RawInspector = React17.memo(
|
|
|
1479
1365
|
);
|
|
1480
1366
|
setPosition({ top, left });
|
|
1481
1367
|
}, [rect]);
|
|
1482
|
-
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
if (element2) {
|
|
1486
|
-
setElement(element2);
|
|
1487
|
-
setRect(element2.getBoundingClientRect());
|
|
1488
|
-
}
|
|
1489
|
-
}
|
|
1490
|
-
}, [selectedFiber]);
|
|
1491
|
-
const handleBack = () => {
|
|
1492
|
-
const previousFiber = fiberHistory[fiberHistory.length - 1];
|
|
1493
|
-
if (previousFiber) {
|
|
1494
|
-
setFiberHistory((prev) => prev.slice(0, -1));
|
|
1495
|
-
setSelectedFiber(previousFiber);
|
|
1496
|
-
}
|
|
1497
|
-
};
|
|
1498
|
-
if (!rect || !isActive) return null;
|
|
1499
|
-
const fiber = getFiberForDisplay();
|
|
1500
|
-
if (!fiber) return null;
|
|
1501
|
-
let foundInspect = false;
|
|
1502
|
-
traverseFiber(
|
|
1503
|
-
fiber,
|
|
1504
|
-
(innerFiber) => {
|
|
1505
|
-
if (innerFiber.type === Inspector2) {
|
|
1506
|
-
foundInspect = true;
|
|
1507
|
-
return true;
|
|
1508
|
-
}
|
|
1509
|
-
},
|
|
1510
|
-
true
|
|
1511
|
-
);
|
|
1512
|
-
if (foundInspect) return null;
|
|
1513
|
-
const dialogStyle = isDialogMode ? {
|
|
1514
|
-
position: "fixed",
|
|
1515
|
-
top: "50%",
|
|
1516
|
-
left: "50%",
|
|
1517
|
-
transform: "translate(-50%, -50%)",
|
|
1518
|
-
width: "80vw",
|
|
1519
|
-
height: "80vh",
|
|
1520
|
-
maxWidth: "none",
|
|
1521
|
-
maxHeight: "none",
|
|
1522
|
-
padding: "2ch",
|
|
1523
|
-
boxShadow: "0 0 0 5px rgba(0, 0, 0, 0.3)",
|
|
1524
|
-
backgroundColor: "#1a1a1a",
|
|
1525
|
-
border: "1px solid #333",
|
|
1526
|
-
zIndex: 1e3
|
|
1527
|
-
} : {};
|
|
1528
|
-
const overlayStyle = isDialogMode ? {
|
|
1529
|
-
position: "fixed",
|
|
1530
|
-
top: 0,
|
|
1531
|
-
left: 0,
|
|
1532
|
-
right: 0,
|
|
1533
|
-
bottom: 0,
|
|
1534
|
-
backgroundColor: "rgba(0, 0, 0, 0.7)",
|
|
1535
|
-
zIndex: 999
|
|
1536
|
-
} : {};
|
|
1537
|
-
const fiberStack = fiber ? getFiberStack(fiber) : [];
|
|
1538
|
-
return /* @__PURE__ */ React17.createElement(React17.Fragment, null, isDialogMode && /* @__PURE__ */ React17.createElement(
|
|
1539
|
-
"div",
|
|
1540
|
-
{
|
|
1541
|
-
style: overlayStyle,
|
|
1542
|
-
onClick: handleClose,
|
|
1543
|
-
onKeyDown: (e) => {
|
|
1544
|
-
if (e.key === "Escape") {
|
|
1545
|
-
handleClose();
|
|
1546
|
-
}
|
|
1547
|
-
},
|
|
1548
|
-
role: "button",
|
|
1549
|
-
tabIndex: 0
|
|
1550
|
-
}
|
|
1551
|
-
), /* @__PURE__ */ React17.createElement(
|
|
1368
|
+
if (!rect || !isActive || !isEnabled) return null;
|
|
1369
|
+
if (!currentFiber) return null;
|
|
1370
|
+
return /* @__PURE__ */ React14.createElement(React14.Fragment, null, /* @__PURE__ */ React14.createElement(
|
|
1552
1371
|
"div",
|
|
1553
1372
|
{
|
|
1373
|
+
className: "inspector-container",
|
|
1554
1374
|
style: {
|
|
1555
1375
|
position: "fixed",
|
|
1556
1376
|
backgroundColor: "#101010",
|
|
1557
1377
|
color: "#FFF",
|
|
1558
1378
|
zIndex: 50,
|
|
1559
|
-
padding: "
|
|
1560
|
-
width: "
|
|
1561
|
-
height:
|
|
1562
|
-
transition: "all 150ms
|
|
1563
|
-
overflow: "
|
|
1564
|
-
boxShadow: "0
|
|
1565
|
-
border: "1px solid #
|
|
1566
|
-
|
|
1567
|
-
left: position.left,
|
|
1379
|
+
padding: "1rem",
|
|
1380
|
+
width: "30ch",
|
|
1381
|
+
height: "25ch",
|
|
1382
|
+
transition: "all 150ms ease-in-out",
|
|
1383
|
+
overflow: "auto",
|
|
1384
|
+
boxShadow: "0 4px 8px rgba(0, 0, 0, 0.5)",
|
|
1385
|
+
border: "1px solid #444",
|
|
1386
|
+
borderRadius: "8px",
|
|
1568
1387
|
opacity: rect ? 1 : 0,
|
|
1569
1388
|
transform: rect ? "translateY(0)" : "translateY(10px)",
|
|
1570
1389
|
pointerEvents: rect ? "auto" : "none",
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
...dialogStyle
|
|
1390
|
+
top: position.top,
|
|
1391
|
+
left: position.left
|
|
1574
1392
|
}
|
|
1575
1393
|
},
|
|
1576
|
-
/* @__PURE__ */
|
|
1394
|
+
currentFiber && /* @__PURE__ */ React14.createElement(
|
|
1395
|
+
Inspector,
|
|
1396
|
+
{
|
|
1397
|
+
theme: theme3,
|
|
1398
|
+
data: currentCleanedFiber,
|
|
1399
|
+
expandLevel: 1,
|
|
1400
|
+
table: false
|
|
1401
|
+
}
|
|
1402
|
+
),
|
|
1403
|
+
/* @__PURE__ */ React14.createElement(
|
|
1577
1404
|
"div",
|
|
1578
1405
|
{
|
|
1579
1406
|
style: {
|
|
1407
|
+
position: "absolute",
|
|
1408
|
+
bottom: "0",
|
|
1409
|
+
left: "0",
|
|
1410
|
+
right: "0",
|
|
1580
1411
|
display: "flex",
|
|
1581
|
-
|
|
1582
|
-
|
|
1412
|
+
alignItems: "center",
|
|
1413
|
+
gap: "1rem",
|
|
1414
|
+
backgroundColor: "#101010",
|
|
1415
|
+
padding: "0.75rem 1rem",
|
|
1416
|
+
borderTop: "1px solid #555",
|
|
1417
|
+
borderBottomLeftRadius: "8px",
|
|
1418
|
+
borderBottomRightRadius: "8px",
|
|
1419
|
+
zIndex: 1e3
|
|
1583
1420
|
}
|
|
1584
1421
|
},
|
|
1585
|
-
/* @__PURE__ */
|
|
1586
|
-
"
|
|
1422
|
+
/* @__PURE__ */ React14.createElement(
|
|
1423
|
+
"div",
|
|
1587
1424
|
{
|
|
1588
1425
|
style: {
|
|
1589
1426
|
fontSize: "0.875rem",
|
|
1590
|
-
backgroundColor: "#161616",
|
|
1591
1427
|
color: "#FFF",
|
|
1592
|
-
padding: "0 0.
|
|
1593
|
-
borderRadius: "
|
|
1594
|
-
|
|
1595
|
-
margin: 0
|
|
1428
|
+
padding: "0.25rem 0.5rem",
|
|
1429
|
+
borderRadius: "4px",
|
|
1430
|
+
backgroundColor: "#3a3a3a"
|
|
1596
1431
|
}
|
|
1597
1432
|
},
|
|
1598
|
-
`<${
|
|
1599
|
-
|
|
1600
|
-
|
|
1601
|
-
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
|
|
1605
|
-
|
|
1606
|
-
}
|
|
1607
|
-
},
|
|
1608
|
-
`Press ${isMac ? "\u2318" : "ctrl"}O to expand`
|
|
1609
|
-
)
|
|
1610
|
-
)),
|
|
1611
|
-
isDialogMode && /* @__PURE__ */ React17.createElement(CloseButton, { onClick: handleClose })
|
|
1612
|
-
),
|
|
1613
|
-
isDialogMode && /* @__PURE__ */ React17.createElement(
|
|
1614
|
-
"div",
|
|
1615
|
-
{
|
|
1616
|
-
style: {
|
|
1617
|
-
borderTop: "1px solid #282828",
|
|
1618
|
-
padding: "0.5ch 0",
|
|
1619
|
-
fontSize: "0.75rem",
|
|
1620
|
-
color: "#A0A0A0",
|
|
1621
|
-
whiteSpace: "nowrap",
|
|
1622
|
-
overflow: "hidden",
|
|
1623
|
-
textOverflow: "ellipsis"
|
|
1624
|
-
}
|
|
1625
|
-
},
|
|
1626
|
-
fiberStack.reverse().map((f, i, arr) => {
|
|
1627
|
-
const name = typeof f.type === "string" ? f.type : getDisplayName(f.type) || "unknown";
|
|
1628
|
-
if (!name) return null;
|
|
1629
|
-
return /* @__PURE__ */ React17.createElement(React17.Fragment, { key: getFiberId(f) }, /* @__PURE__ */ React17.createElement(
|
|
1630
|
-
BreadcrumbButton,
|
|
1631
|
-
{
|
|
1632
|
-
name,
|
|
1633
|
-
onClick: () => {
|
|
1634
|
-
if (selectedFiber) {
|
|
1635
|
-
setFiberHistory((prev) => [...prev, selectedFiber]);
|
|
1636
|
-
}
|
|
1637
|
-
setSelectedFiber(f);
|
|
1638
|
-
const element2 = getNearestHostFiber(f)?.stateNode;
|
|
1639
|
-
if (element2) {
|
|
1640
|
-
setElement(element2);
|
|
1641
|
-
setRect(element2.getBoundingClientRect());
|
|
1642
|
-
}
|
|
1643
|
-
},
|
|
1644
|
-
onKeyDown: (e) => {
|
|
1645
|
-
if (e.key === "Enter" || e.key === " ") {
|
|
1646
|
-
if (selectedFiber) {
|
|
1647
|
-
setFiberHistory((prev) => [...prev, selectedFiber]);
|
|
1648
|
-
}
|
|
1649
|
-
setSelectedFiber(f);
|
|
1650
|
-
const element2 = getNearestHostFiber(f)?.stateNode;
|
|
1651
|
-
if (element2) {
|
|
1652
|
-
setElement(element2);
|
|
1653
|
-
setRect(element2.getBoundingClientRect());
|
|
1654
|
-
}
|
|
1655
|
-
}
|
|
1656
|
-
}
|
|
1433
|
+
`<${getDisplayName(currentFiber.type) || "unknown"}>`
|
|
1434
|
+
),
|
|
1435
|
+
/* @__PURE__ */ React14.createElement(
|
|
1436
|
+
"div",
|
|
1437
|
+
{
|
|
1438
|
+
style: {
|
|
1439
|
+
fontSize: "0.75rem",
|
|
1440
|
+
color: "#CCC"
|
|
1657
1441
|
}
|
|
1658
|
-
|
|
1659
|
-
|
|
1660
|
-
|
|
1661
|
-
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
|
|
1665
|
-
data: fiber,
|
|
1666
|
-
expandLevel: 1,
|
|
1667
|
-
table: false,
|
|
1668
|
-
nodeRenderer: (props) => {
|
|
1669
|
-
const Component = props.depth === 0 ? ObjectRootLabel : ObjectLabel;
|
|
1670
|
-
return /* @__PURE__ */ React17.createElement(
|
|
1671
|
-
"span",
|
|
1672
|
-
{
|
|
1673
|
-
onMouseEnter: (e) => handlePropertyHover(e, props.name),
|
|
1674
|
-
onMouseLeave: handlePropertyLeave,
|
|
1675
|
-
style: {
|
|
1676
|
-
cursor: FIBER_PROP_EXPLANATIONS[props.name] ? "help" : "default",
|
|
1677
|
-
padding: "1px 0",
|
|
1678
|
-
display: "inline-block",
|
|
1679
|
-
fontWeight: FIBER_PROP_EXPLANATIONS[props.name] ? 500 : "normal"
|
|
1680
|
-
}
|
|
1681
|
-
},
|
|
1682
|
-
/* @__PURE__ */ React17.createElement(
|
|
1683
|
-
Component,
|
|
1684
|
-
{
|
|
1685
|
-
name: props.name,
|
|
1686
|
-
data: props.data,
|
|
1687
|
-
isNonenumerable: props.isNonenumerable
|
|
1688
|
-
}
|
|
1689
|
-
)
|
|
1690
|
-
);
|
|
1442
|
+
},
|
|
1443
|
+
currentFiberSource ? /* @__PURE__ */ React14.createElement(React14.Fragment, null, currentFiberSource.fileName.split("/").slice(-2).join("/"), " ", /* @__PURE__ */ React14.createElement("br", null), "@ line ", currentFiberSource.lineNumber, ", column", " ", currentFiberSource.columnNumber) : null
|
|
1444
|
+
)
|
|
1445
|
+
)
|
|
1446
|
+
), /* @__PURE__ */ React14.createElement("style", null, `
|
|
1447
|
+
.inspector-container::-webkit-scrollbar {
|
|
1448
|
+
width: 8px;
|
|
1691
1449
|
}
|
|
1692
|
-
|
|
1693
|
-
|
|
1694
|
-
|
|
1695
|
-
"div",
|
|
1696
|
-
{
|
|
1697
|
-
style: {
|
|
1698
|
-
position: "absolute",
|
|
1699
|
-
zIndex: 1001,
|
|
1700
|
-
backgroundColor: "#161616",
|
|
1701
|
-
color: "#FFF",
|
|
1702
|
-
bottom: "2ch",
|
|
1703
|
-
right: "2ch",
|
|
1704
|
-
pointerEvents: "none",
|
|
1705
|
-
overflowY: "auto",
|
|
1706
|
-
padding: "1ch",
|
|
1707
|
-
fontSize: "1ch",
|
|
1708
|
-
border: "1px solid #282828",
|
|
1709
|
-
borderRadius: "0.25ch"
|
|
1450
|
+
.inspector-container::-webkit-scrollbar-track {
|
|
1451
|
+
background: #1E1E1E;
|
|
1452
|
+
border-radius: 8px;
|
|
1710
1453
|
}
|
|
1711
|
-
|
|
1712
|
-
|
|
1713
|
-
|
|
1714
|
-
|
|
1454
|
+
.inspector-container::-webkit-scrollbar-thumb {
|
|
1455
|
+
background: #444;
|
|
1456
|
+
border-radius: 8px;
|
|
1457
|
+
}
|
|
1458
|
+
.inspector-container::-webkit-scrollbar-thumb:hover {
|
|
1459
|
+
background: #555;
|
|
1460
|
+
}
|
|
1461
|
+
`), /* @__PURE__ */ React14.createElement(
|
|
1715
1462
|
"div",
|
|
1716
1463
|
{
|
|
1717
1464
|
style: {
|
|
@@ -1730,20 +1477,22 @@ var RawInspector = React17.memo(
|
|
|
1730
1477
|
));
|
|
1731
1478
|
}
|
|
1732
1479
|
);
|
|
1733
|
-
var Inspector2 =
|
|
1734
|
-
|
|
1735
|
-
|
|
1736
|
-
|
|
1737
|
-
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
});
|
|
1480
|
+
var Inspector2 = forwardRef(
|
|
1481
|
+
(props, ref) => {
|
|
1482
|
+
const [root, setRoot] = useState(null);
|
|
1483
|
+
useEffect(() => {
|
|
1484
|
+
const div = document.createElement("div");
|
|
1485
|
+
document.body.appendChild(div);
|
|
1486
|
+
const shadowRoot = div.attachShadow({ mode: "open" });
|
|
1487
|
+
setRoot(shadowRoot);
|
|
1488
|
+
return () => {
|
|
1489
|
+
document.body.removeChild(div);
|
|
1490
|
+
};
|
|
1491
|
+
}, []);
|
|
1492
|
+
if (!root) return null;
|
|
1493
|
+
return ReactDOM.createPortal(/* @__PURE__ */ React14.createElement(RawInspector, { ref, ...props }), root);
|
|
1494
|
+
}
|
|
1495
|
+
);
|
|
1747
1496
|
var inspect_default = Inspector2;
|
|
1748
1497
|
|
|
1749
1498
|
export { Inspector2 as Inspector, RawInspector, inspect_default as default };
|