bippy 0.0.20 → 0.0.21
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/index.cjs +63 -32
- package/dist/index.d.cts +10 -4
- package/dist/index.d.ts +10 -4
- package/dist/index.global.js +2 -1
- package/dist/index.js +62 -33
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -43,7 +43,7 @@ var Snapshot = 1024;
|
|
|
43
43
|
var Visibility = 8192;
|
|
44
44
|
var MutationMask = Placement | Update | ChildDeletion | ContentReset | Hydrating | Visibility | Snapshot;
|
|
45
45
|
var isValidElement = (element) => typeof element === "object" && element != null && "$$typeof" in element && // react 18 uses Symbol.for('react.element'), react 19 uses Symbol.for('react.transitional.element')
|
|
46
|
-
["react.element", "react.transitional.element"].includes(
|
|
46
|
+
["Symbol(react.element)", "Symbol(react.transitional.element)"].includes(
|
|
47
47
|
String(element.$$typeof)
|
|
48
48
|
);
|
|
49
49
|
var isHostFiber = (fiber) => fiber.tag === HostComponentTag || // @ts-expect-error: it exists
|
|
@@ -87,7 +87,11 @@ var traverseProps = (fiber, selector) => {
|
|
|
87
87
|
try {
|
|
88
88
|
const nextProps = fiber.memoizedProps;
|
|
89
89
|
const prevProps = fiber.alternate?.memoizedProps || {};
|
|
90
|
-
|
|
90
|
+
const allKeys = /* @__PURE__ */ new Set([
|
|
91
|
+
...Object.keys(prevProps),
|
|
92
|
+
...Object.keys(nextProps)
|
|
93
|
+
]);
|
|
94
|
+
for (const propName of allKeys) {
|
|
91
95
|
const prevValue = prevProps?.[propName];
|
|
92
96
|
const nextValue = nextProps?.[propName];
|
|
93
97
|
if (selector(prevValue, nextValue) === true) return true;
|
|
@@ -220,45 +224,70 @@ var getDisplayName = (type) => {
|
|
|
220
224
|
if (!type) return null;
|
|
221
225
|
return type.displayName || type.name || null;
|
|
222
226
|
};
|
|
227
|
+
var isUsingRDT = () => globalThis.__REACT_DEVTOOLS_BACKEND_MANAGER_INJECTED__ != null;
|
|
228
|
+
var detectReactBuildType = (renderer) => {
|
|
229
|
+
try {
|
|
230
|
+
if (typeof renderer.version === "string" && renderer.bundleType > 0) {
|
|
231
|
+
return "development";
|
|
232
|
+
}
|
|
233
|
+
} catch {
|
|
234
|
+
}
|
|
235
|
+
return "production";
|
|
236
|
+
};
|
|
237
|
+
var checkDCE = (fn) => {
|
|
238
|
+
try {
|
|
239
|
+
const code = Function.prototype.toString.call(fn);
|
|
240
|
+
if (code.indexOf("^_^") > -1) {
|
|
241
|
+
setTimeout(() => {
|
|
242
|
+
throw new Error(
|
|
243
|
+
"React is running in production mode, but dead code elimination has not been applied. Read how to correctly configure React for production: https://reactjs.org/link/perf-use-production-build"
|
|
244
|
+
);
|
|
245
|
+
});
|
|
246
|
+
}
|
|
247
|
+
} catch {
|
|
248
|
+
}
|
|
249
|
+
};
|
|
223
250
|
var NO_OP = () => {
|
|
224
251
|
};
|
|
225
252
|
var getRDTHook = (onActive) => {
|
|
226
253
|
let rdtHook = globalThis.__REACT_DEVTOOLS_GLOBAL_HOOK__;
|
|
227
254
|
const isActive = rdtHook && !("_instrumentationSource" in rdtHook);
|
|
228
255
|
if (isActive) onActive?.();
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
rdtHook._instrumentationIsActive
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
256
|
+
if (!window.hasOwnProperty("__REACT_DEVTOOLS_GLOBAL_HOOK__")) {
|
|
257
|
+
const renderers = /* @__PURE__ */ new Map();
|
|
258
|
+
let i = 0;
|
|
259
|
+
rdtHook ??= {
|
|
260
|
+
checkDCE,
|
|
261
|
+
supportsFiber: true,
|
|
262
|
+
supportsFlight: true,
|
|
263
|
+
renderers,
|
|
264
|
+
onCommitFiberRoot: NO_OP,
|
|
265
|
+
onCommitFiberUnmount: NO_OP,
|
|
266
|
+
onPostCommitFiberRoot: NO_OP,
|
|
267
|
+
inject(renderer) {
|
|
268
|
+
const nextID = ++i;
|
|
269
|
+
renderers.set(nextID, renderer);
|
|
270
|
+
if (!rdtHook._instrumentationIsActive) {
|
|
271
|
+
rdtHook._instrumentationIsActive = true;
|
|
272
|
+
onActive?.();
|
|
273
|
+
}
|
|
274
|
+
return nextID;
|
|
275
|
+
},
|
|
276
|
+
_instrumentationSource: "bippy",
|
|
277
|
+
_instrumentationIsActive: isActive
|
|
278
|
+
};
|
|
279
|
+
try {
|
|
280
|
+
Object.defineProperty(globalThis, "__REACT_DEVTOOLS_GLOBAL_HOOK__", {
|
|
281
|
+
configurable: true,
|
|
282
|
+
value: rdtHook
|
|
283
|
+
});
|
|
284
|
+
} catch {
|
|
285
|
+
}
|
|
257
286
|
}
|
|
258
287
|
return rdtHook;
|
|
259
288
|
};
|
|
260
|
-
var isInstrumentationActive = (
|
|
261
|
-
const rdtHook = getRDTHook(
|
|
289
|
+
var isInstrumentationActive = () => {
|
|
290
|
+
const rdtHook = getRDTHook();
|
|
262
291
|
return Boolean(rdtHook._instrumentationIsActive);
|
|
263
292
|
};
|
|
264
293
|
if (typeof window !== "undefined") {
|
|
@@ -479,6 +508,7 @@ exports.SuspenseComponentTag = SuspenseComponentTag;
|
|
|
479
508
|
exports.Update = Update;
|
|
480
509
|
exports.Visibility = Visibility;
|
|
481
510
|
exports.createFiberVisitor = createFiberVisitor;
|
|
511
|
+
exports.detectReactBuildType = detectReactBuildType;
|
|
482
512
|
exports.didFiberCommit = didFiberCommit;
|
|
483
513
|
exports.didFiberRender = didFiberRender;
|
|
484
514
|
exports.getDisplayName = getDisplayName;
|
|
@@ -493,6 +523,7 @@ exports.instrument = instrument;
|
|
|
493
523
|
exports.isCompositeFiber = isCompositeFiber;
|
|
494
524
|
exports.isHostFiber = isHostFiber;
|
|
495
525
|
exports.isInstrumentationActive = isInstrumentationActive;
|
|
526
|
+
exports.isUsingRDT = isUsingRDT;
|
|
496
527
|
exports.isValidElement = isValidElement;
|
|
497
528
|
exports.mountFiberRecursively = mountFiberRecursively;
|
|
498
529
|
exports.shouldFilterFiber = shouldFilterFiber;
|
package/dist/index.d.cts
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { Fiber, FiberRoot } from 'react-reconciler';
|
|
3
3
|
|
|
4
|
+
interface ReactRenderer {
|
|
5
|
+
version: string;
|
|
6
|
+
bundleType: 0 | 1;
|
|
7
|
+
}
|
|
4
8
|
interface ReactDevToolsGlobalHook {
|
|
5
|
-
checkDCE: () => void;
|
|
9
|
+
checkDCE: (fn: any) => void;
|
|
6
10
|
supportsFiber: boolean;
|
|
7
11
|
supportsFlight: boolean;
|
|
8
|
-
renderers: Map<number,
|
|
12
|
+
renderers: Map<number, ReactRenderer>;
|
|
9
13
|
onCommitFiberRoot: (rendererID: number, root: unknown, priority: void | number) => void;
|
|
10
14
|
onCommitFiberUnmount: (rendererID: number, root: unknown) => void;
|
|
11
15
|
onPostCommitFiberRoot: (rendererID: number, root: unknown) => void;
|
|
@@ -75,8 +79,10 @@ declare const getTimings: (fiber?: Fiber | null | undefined) => {
|
|
|
75
79
|
declare const hasMemoCache: (fiber: Fiber) => boolean;
|
|
76
80
|
declare const getType: (type: any) => any;
|
|
77
81
|
declare const getDisplayName: (type: any) => string | null;
|
|
82
|
+
declare const isUsingRDT: () => boolean;
|
|
83
|
+
declare const detectReactBuildType: (renderer: ReactRenderer) => "development" | "production";
|
|
78
84
|
declare const getRDTHook: (onActive?: () => unknown) => ReactDevToolsGlobalHook;
|
|
79
|
-
declare const isInstrumentationActive: (
|
|
85
|
+
declare const isInstrumentationActive: () => boolean;
|
|
80
86
|
type RenderHandler = <S>(fiber: Fiber, phase: 'mount' | 'update' | 'unmount', state?: S) => unknown;
|
|
81
87
|
declare const mountFiberRecursively: (onRender: RenderHandler, firstChild: Fiber, traverseSiblings: boolean) => void;
|
|
82
88
|
declare const updateFiberRecursively: (onRender: RenderHandler, nextFiber: Fiber, prevFiber: Fiber, parentFiber: Fiber | null) => void;
|
|
@@ -94,4 +100,4 @@ declare const instrument: ({ onCommitFiberRoot, onCommitFiberUnmount, onPostComm
|
|
|
94
100
|
name?: string;
|
|
95
101
|
}) => ReactDevToolsGlobalHook;
|
|
96
102
|
|
|
97
|
-
export { CONCURRENT_MODE_NUMBER, CONCURRENT_MODE_SYMBOL_STRING, ChildDeletion, ClassComponentTag, Cloned, ContentReset, ContextConsumerTag, DEPRECATED_ASYNC_MODE_SYMBOL_STRING, DehydratedSuspenseComponent, DidCapture, ForwardRefTag, Fragment, FunctionComponentTag, HostComponentTag, HostHoistableTag, HostRoot, HostSingletonTag, HostText, Hydrating, LegacyHiddenComponent, MemoComponentTag, MutationMask, OffscreenComponent, OffscreenComponentTag, PerformedWork, Placement, type ReactDevToolsGlobalHook, Ref, SimpleMemoComponentTag, Snapshot, SuspenseComponentTag, Update, Visibility, createFiberVisitor, didFiberCommit, didFiberRender, getDisplayName, getFiberStack, getMutatedHostFibers, getNearestHostFiber, getRDTHook, getTimings, getType, hasMemoCache, instrument, isCompositeFiber, isHostFiber, isInstrumentationActive, isValidElement, mountFiberRecursively, shouldFilterFiber, traverseContexts, traverseFiber, traverseProps, traverseState, unmountFiber, unmountFiberChildrenRecursively, updateFiberRecursively };
|
|
103
|
+
export { CONCURRENT_MODE_NUMBER, CONCURRENT_MODE_SYMBOL_STRING, ChildDeletion, ClassComponentTag, Cloned, ContentReset, ContextConsumerTag, DEPRECATED_ASYNC_MODE_SYMBOL_STRING, DehydratedSuspenseComponent, DidCapture, ForwardRefTag, Fragment, FunctionComponentTag, HostComponentTag, HostHoistableTag, HostRoot, HostSingletonTag, HostText, Hydrating, LegacyHiddenComponent, MemoComponentTag, MutationMask, OffscreenComponent, OffscreenComponentTag, PerformedWork, Placement, type ReactDevToolsGlobalHook, type ReactRenderer, Ref, SimpleMemoComponentTag, Snapshot, SuspenseComponentTag, Update, Visibility, createFiberVisitor, detectReactBuildType, didFiberCommit, didFiberRender, getDisplayName, getFiberStack, getMutatedHostFibers, getNearestHostFiber, getRDTHook, getTimings, getType, hasMemoCache, instrument, isCompositeFiber, isHostFiber, isInstrumentationActive, isUsingRDT, isValidElement, mountFiberRecursively, shouldFilterFiber, traverseContexts, traverseFiber, traverseProps, traverseState, unmountFiber, unmountFiberChildrenRecursively, updateFiberRecursively };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { Fiber, FiberRoot } from 'react-reconciler';
|
|
3
3
|
|
|
4
|
+
interface ReactRenderer {
|
|
5
|
+
version: string;
|
|
6
|
+
bundleType: 0 | 1;
|
|
7
|
+
}
|
|
4
8
|
interface ReactDevToolsGlobalHook {
|
|
5
|
-
checkDCE: () => void;
|
|
9
|
+
checkDCE: (fn: any) => void;
|
|
6
10
|
supportsFiber: boolean;
|
|
7
11
|
supportsFlight: boolean;
|
|
8
|
-
renderers: Map<number,
|
|
12
|
+
renderers: Map<number, ReactRenderer>;
|
|
9
13
|
onCommitFiberRoot: (rendererID: number, root: unknown, priority: void | number) => void;
|
|
10
14
|
onCommitFiberUnmount: (rendererID: number, root: unknown) => void;
|
|
11
15
|
onPostCommitFiberRoot: (rendererID: number, root: unknown) => void;
|
|
@@ -75,8 +79,10 @@ declare const getTimings: (fiber?: Fiber | null | undefined) => {
|
|
|
75
79
|
declare const hasMemoCache: (fiber: Fiber) => boolean;
|
|
76
80
|
declare const getType: (type: any) => any;
|
|
77
81
|
declare const getDisplayName: (type: any) => string | null;
|
|
82
|
+
declare const isUsingRDT: () => boolean;
|
|
83
|
+
declare const detectReactBuildType: (renderer: ReactRenderer) => "development" | "production";
|
|
78
84
|
declare const getRDTHook: (onActive?: () => unknown) => ReactDevToolsGlobalHook;
|
|
79
|
-
declare const isInstrumentationActive: (
|
|
85
|
+
declare const isInstrumentationActive: () => boolean;
|
|
80
86
|
type RenderHandler = <S>(fiber: Fiber, phase: 'mount' | 'update' | 'unmount', state?: S) => unknown;
|
|
81
87
|
declare const mountFiberRecursively: (onRender: RenderHandler, firstChild: Fiber, traverseSiblings: boolean) => void;
|
|
82
88
|
declare const updateFiberRecursively: (onRender: RenderHandler, nextFiber: Fiber, prevFiber: Fiber, parentFiber: Fiber | null) => void;
|
|
@@ -94,4 +100,4 @@ declare const instrument: ({ onCommitFiberRoot, onCommitFiberUnmount, onPostComm
|
|
|
94
100
|
name?: string;
|
|
95
101
|
}) => ReactDevToolsGlobalHook;
|
|
96
102
|
|
|
97
|
-
export { CONCURRENT_MODE_NUMBER, CONCURRENT_MODE_SYMBOL_STRING, ChildDeletion, ClassComponentTag, Cloned, ContentReset, ContextConsumerTag, DEPRECATED_ASYNC_MODE_SYMBOL_STRING, DehydratedSuspenseComponent, DidCapture, ForwardRefTag, Fragment, FunctionComponentTag, HostComponentTag, HostHoistableTag, HostRoot, HostSingletonTag, HostText, Hydrating, LegacyHiddenComponent, MemoComponentTag, MutationMask, OffscreenComponent, OffscreenComponentTag, PerformedWork, Placement, type ReactDevToolsGlobalHook, Ref, SimpleMemoComponentTag, Snapshot, SuspenseComponentTag, Update, Visibility, createFiberVisitor, didFiberCommit, didFiberRender, getDisplayName, getFiberStack, getMutatedHostFibers, getNearestHostFiber, getRDTHook, getTimings, getType, hasMemoCache, instrument, isCompositeFiber, isHostFiber, isInstrumentationActive, isValidElement, mountFiberRecursively, shouldFilterFiber, traverseContexts, traverseFiber, traverseProps, traverseState, unmountFiber, unmountFiberChildrenRecursively, updateFiberRecursively };
|
|
103
|
+
export { CONCURRENT_MODE_NUMBER, CONCURRENT_MODE_SYMBOL_STRING, ChildDeletion, ClassComponentTag, Cloned, ContentReset, ContextConsumerTag, DEPRECATED_ASYNC_MODE_SYMBOL_STRING, DehydratedSuspenseComponent, DidCapture, ForwardRefTag, Fragment, FunctionComponentTag, HostComponentTag, HostHoistableTag, HostRoot, HostSingletonTag, HostText, Hydrating, LegacyHiddenComponent, MemoComponentTag, MutationMask, OffscreenComponent, OffscreenComponentTag, PerformedWork, Placement, type ReactDevToolsGlobalHook, type ReactRenderer, Ref, SimpleMemoComponentTag, Snapshot, SuspenseComponentTag, Update, Visibility, createFiberVisitor, detectReactBuildType, didFiberCommit, didFiberRender, getDisplayName, getFiberStack, getMutatedHostFibers, getNearestHostFiber, getRDTHook, getTimings, getType, hasMemoCache, instrument, isCompositeFiber, isHostFiber, isInstrumentationActive, isUsingRDT, isValidElement, mountFiberRecursively, shouldFilterFiber, traverseContexts, traverseFiber, traverseProps, traverseState, unmountFiber, unmountFiberChildrenRecursively, updateFiberRecursively };
|
package/dist/index.global.js
CHANGED
|
@@ -6,4 +6,5 @@ var Bippy=(function(exports){'use strict';/**
|
|
|
6
6
|
* This source code is licensed under the MIT license found in the
|
|
7
7
|
* LICENSE file in the root directory of this source tree.
|
|
8
8
|
*/
|
|
9
|
-
var
|
|
9
|
+
var O=1,D=0,H=9,E=13,P=22,M=11,z=14,I=15,A=5,N=26,V=27,U=18,j=6,L=7,B=23,G=22,W=3,$=60111,R="Symbol(react.concurrent_mode)",_="Symbol(react.async_mode)",K=1,Y=2,J=128,Q=4096,q=4,X=8,Z=16,ee=32,te=512,ne=1024,oe=8192,re=13366,ie=e=>typeof e=="object"&&e!=null&&"$$typeof"in e&&["Symbol(react.element)","Symbol(react.transitional.element)"].includes(String(e.$$typeof)),d=e=>e.tag===5||e.tag===26||e.tag===27,se=e=>e.tag===0||e.tag===1||e.tag===15||e.tag===14||e.tag===11,le=(e,t)=>{try{let o=e.dependencies,n=e.alternate?.dependencies;if(!o||!n||typeof o!="object"||!("firstContext"in o)||typeof n!="object"||!("firstContext"in n))return !1;let l=o.firstContext,r=n.firstContext;for(;l&&typeof l=="object"&&"memoizedValue"in l&&r&&typeof r=="object"&&"memoizedValue"in r;){if(t(l,r)===!0)return !0;l=l.next,r=r.next;}}catch{}return !1},ae=(e,t)=>{try{let o=e.memoizedState,n=e.alternate?.memoizedState;for(;o&&n;){if(t(o,n)===!0)return !0;o=o.next,n=n.next;}}catch{}return !1},ce=(e,t)=>{try{let o=e.memoizedProps,n=e.alternate?.memoizedProps||{},l=new Set([...Object.keys(n),...Object.keys(o)]);for(let r of l){let s=n?.[r],c=o?.[r];if(t(s,c)===!0)return !0}}catch{}return !1},C=e=>{let t=e.memoizedProps,o=e.alternate?.memoizedProps||{},n=e.flags??e.effectTag??0;switch(e.tag){case 1:case 0:case 9:case 11:case 14:case 15:return (n&1)===1;default:return e.alternate?o!==t||e.alternate.memoizedState!==e.memoizedState||e.alternate.ref!==e.ref:!0}},w=e=>!!(e.flags&22||e.subtreeFlags&22),ue=e=>{let t=[],o=[e];for(;o.length;){let n=o.pop();n&&(d(n)&&w(n)&&C(n)&&t.push(n),n.child&&o.push(n.child),n.sibling&&o.push(n.sibling));}return t},me=e=>{let t=[];for(;e.return;)t.push(e),e=e.return;let o=new Array(t.length);for(let n=0;n<t.length;n++)o[n]=t[t.length-n-1];return o},g=e=>{switch(e.tag){case 18:return !0;case 6:case 7:case 23:case 22:return !0;case 3:return !1;default:{let t=typeof e.type=="object"&&e.type!==null?e.type.$$typeof:e.type;switch(typeof t=="symbol"?t.toString():t){case 60111:case R:case _:return !0;default:return !1}}}},pe=e=>{let t=b(e,d);return t||(t=b(e,d,!0)),t},b=(e,t,o=!1)=>{if(!e)return null;if(t(e)===!0)return e;let n=o?e.return:e.child;for(;n;){let l=b(n,t,o);if(l)return l;n=o?null:n.sibling;}return null},de=e=>{let t=e?.actualDuration??0,o=t,n=e?.child??null;for(;t>0&&n!=null;)o-=n.actualDuration??0,n=n.sibling;return {selfTime:o,totalTime:t}},be=e=>!!e.updateQueue?.memoCache,y=e=>typeof e=="function"?e:typeof e=="object"&&e?y(e.type||e.render):null,fe=e=>{if(typeof e!="function"&&!(typeof e=="object"&&e))return null;let t=e.displayName||e.name||null;return t||(e=y(e),e&&(e.displayName||e.name)||null)},Ce=()=>globalThis.__REACT_DEVTOOLS_BACKEND_MANAGER_INJECTED__!=null,ge=e=>{try{if(typeof e.version=="string"&&e.bundleType>0)return "development"}catch{}return "production"},k=e=>{try{Function.prototype.toString.call(e).indexOf("^_^")>-1&&setTimeout(()=>{throw new Error("React is running in production mode, but dead code elimination has not been applied. Read how to correctly configure React for production: https://reactjs.org/link/perf-use-production-build")});}catch{}},p=()=>{},h=e=>{let t=globalThis.__REACT_DEVTOOLS_GLOBAL_HOOK__,o=t&&!("_instrumentationSource"in t);if(o&&e?.(),!window.hasOwnProperty("__REACT_DEVTOOLS_GLOBAL_HOOK__")){let n=new Map,l=0;t??={checkDCE:k,supportsFiber:!0,supportsFlight:!0,renderers:n,onCommitFiberRoot:p,onCommitFiberUnmount:p,onPostCommitFiberRoot:p,inject(r){let s=++l;return n.set(s,r),t._instrumentationIsActive||(t._instrumentationIsActive=!0,e?.()),s},_instrumentationSource:"bippy",_instrumentationIsActive:o};try{Object.defineProperty(globalThis,"__REACT_DEVTOOLS_GLOBAL_HOOK__",{configurable:!0,value:t});}catch{}}return t},he=()=>!!h()._instrumentationIsActive;typeof window<"u"&&(performance.now(),h());var m=(e,t,o)=>{let n=t;for(;n!=null;){if(!g(n)&&C(n)&&e(n,"mount"),n.tag===13)if(n.memoizedState!==null){let s=n.child,c=s?s.sibling:null;if(c){let i=c.child;i!==null&&m(e,i,!1);}}else {let s=null;n.child!==null&&(s=n.child.child),s!==null&&m(e,s,!1);}else n.child!=null&&m(e,n.child,!0);n=o?n.sibling:null;}},f=(e,t,o,n)=>{if(!o)return;let l=t.tag===13,r=!g(t);r&&C(t)&&e(t,"update");let s=l&&o.memoizedState!==null,c=l&&t.memoizedState!==null;if(s&&c){let i=t.child?.sibling??null,a=o.child?.sibling??null;i!==null&&a!==null&&f(e,i,a);}else if(s&&!c){let i=t.child;i!==null&&m(e,i,!0);}else if(!s&&c){T(e,o);let i=t.child?.sibling??null;i!==null&&m(e,i,!0);}else if(t.child!==o.child){let i=t.child;for(;i;){if(i.alternate){let a=i.alternate;f(e,i,a);}else m(e,i,!1);i=i.sibling;}}},S=(e,t)=>{(t.tag===3||!g(t))&&e(t,"unmount");},T=(e,t)=>{let o=t.tag===13&&t.memoizedState!==null,n=t.child;for(o&&(n=(t.child?.sibling??null)?.child??null);n!==null;)n.return!==null&&(S(e,n),T(e,n)),n=n.sibling;},v=0,F=new WeakMap,xe=({onRender:e,onError:t})=>(o,n,l)=>{let r=n.current,s=(a,u)=>e(a,u,l),c=F.get(n);c||(c={prevFiber:null,id:v++},F.set(n,c));let{prevFiber:i}=c;try{if(i!==null){let a=i&&i.memoizedState!=null&&i.memoizedState.element!=null&&i.memoizedState.isDehydrated!==!0,u=r.memoizedState!=null&&r.memoizedState.element!=null&&r.memoizedState.isDehydrated!==!0;!a&&u?m(s,r,!1):a&&u?f(s,r,r.alternate,null):a&&!u&&S(s,r);}else m(s,r,!1);}catch(a){if(t)t(a);else throw a}c.prevFiber=r;},Fe=({onCommitFiberRoot:e,onCommitFiberUnmount:t,onPostCommitFiberRoot:o,onActive:n,name:l})=>{let r=h(n);r._instrumentationSource=l??"bippy";let s=r.onCommitFiberRoot;e&&(r.onCommitFiberRoot=(a,u,x)=>{s&&s(a,u,x),e(a,u,x);});let c=r.onCommitFiberUnmount;t&&(r.onCommitFiberUnmount=(a,u)=>{c&&c(a,u),t(a,u);});let i=r.onPostCommitFiberRoot;return o&&(r.onPostCommitFiberRoot=(a,u)=>{i&&i(a,u);}),r};
|
|
10
|
+
exports.CONCURRENT_MODE_NUMBER=$;exports.CONCURRENT_MODE_SYMBOL_STRING=R;exports.ChildDeletion=Z;exports.ClassComponentTag=O;exports.Cloned=X;exports.ContentReset=ee;exports.ContextConsumerTag=H;exports.DEPRECATED_ASYNC_MODE_SYMBOL_STRING=_;exports.DehydratedSuspenseComponent=U;exports.DidCapture=J;exports.ForwardRefTag=M;exports.Fragment=L;exports.FunctionComponentTag=D;exports.HostComponentTag=A;exports.HostHoistableTag=N;exports.HostRoot=W;exports.HostSingletonTag=V;exports.HostText=j;exports.Hydrating=Q;exports.LegacyHiddenComponent=B;exports.MemoComponentTag=z;exports.MutationMask=re;exports.OffscreenComponent=G;exports.OffscreenComponentTag=P;exports.PerformedWork=K;exports.Placement=Y;exports.Ref=te;exports.SimpleMemoComponentTag=I;exports.Snapshot=ne;exports.SuspenseComponentTag=E;exports.Update=q;exports.Visibility=oe;exports.createFiberVisitor=xe;exports.detectReactBuildType=ge;exports.didFiberCommit=w;exports.didFiberRender=C;exports.getDisplayName=fe;exports.getFiberStack=me;exports.getMutatedHostFibers=ue;exports.getNearestHostFiber=pe;exports.getRDTHook=h;exports.getTimings=de;exports.getType=y;exports.hasMemoCache=be;exports.instrument=Fe;exports.isCompositeFiber=se;exports.isHostFiber=d;exports.isInstrumentationActive=he;exports.isUsingRDT=Ce;exports.isValidElement=ie;exports.mountFiberRecursively=m;exports.shouldFilterFiber=g;exports.traverseContexts=le;exports.traverseFiber=b;exports.traverseProps=ce;exports.traverseState=ae;exports.unmountFiber=S;exports.unmountFiberChildrenRecursively=T;exports.updateFiberRecursively=f;return exports;})({});
|
package/dist/index.js
CHANGED
|
@@ -41,7 +41,7 @@ var Snapshot = 1024;
|
|
|
41
41
|
var Visibility = 8192;
|
|
42
42
|
var MutationMask = Placement | Update | ChildDeletion | ContentReset | Hydrating | Visibility | Snapshot;
|
|
43
43
|
var isValidElement = (element) => typeof element === "object" && element != null && "$$typeof" in element && // react 18 uses Symbol.for('react.element'), react 19 uses Symbol.for('react.transitional.element')
|
|
44
|
-
["react.element", "react.transitional.element"].includes(
|
|
44
|
+
["Symbol(react.element)", "Symbol(react.transitional.element)"].includes(
|
|
45
45
|
String(element.$$typeof)
|
|
46
46
|
);
|
|
47
47
|
var isHostFiber = (fiber) => fiber.tag === HostComponentTag || // @ts-expect-error: it exists
|
|
@@ -85,7 +85,11 @@ var traverseProps = (fiber, selector) => {
|
|
|
85
85
|
try {
|
|
86
86
|
const nextProps = fiber.memoizedProps;
|
|
87
87
|
const prevProps = fiber.alternate?.memoizedProps || {};
|
|
88
|
-
|
|
88
|
+
const allKeys = /* @__PURE__ */ new Set([
|
|
89
|
+
...Object.keys(prevProps),
|
|
90
|
+
...Object.keys(nextProps)
|
|
91
|
+
]);
|
|
92
|
+
for (const propName of allKeys) {
|
|
89
93
|
const prevValue = prevProps?.[propName];
|
|
90
94
|
const nextValue = nextProps?.[propName];
|
|
91
95
|
if (selector(prevValue, nextValue) === true) return true;
|
|
@@ -218,45 +222,70 @@ var getDisplayName = (type) => {
|
|
|
218
222
|
if (!type) return null;
|
|
219
223
|
return type.displayName || type.name || null;
|
|
220
224
|
};
|
|
225
|
+
var isUsingRDT = () => globalThis.__REACT_DEVTOOLS_BACKEND_MANAGER_INJECTED__ != null;
|
|
226
|
+
var detectReactBuildType = (renderer) => {
|
|
227
|
+
try {
|
|
228
|
+
if (typeof renderer.version === "string" && renderer.bundleType > 0) {
|
|
229
|
+
return "development";
|
|
230
|
+
}
|
|
231
|
+
} catch {
|
|
232
|
+
}
|
|
233
|
+
return "production";
|
|
234
|
+
};
|
|
235
|
+
var checkDCE = (fn) => {
|
|
236
|
+
try {
|
|
237
|
+
const code = Function.prototype.toString.call(fn);
|
|
238
|
+
if (code.indexOf("^_^") > -1) {
|
|
239
|
+
setTimeout(() => {
|
|
240
|
+
throw new Error(
|
|
241
|
+
"React is running in production mode, but dead code elimination has not been applied. Read how to correctly configure React for production: https://reactjs.org/link/perf-use-production-build"
|
|
242
|
+
);
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
} catch {
|
|
246
|
+
}
|
|
247
|
+
};
|
|
221
248
|
var NO_OP = () => {
|
|
222
249
|
};
|
|
223
250
|
var getRDTHook = (onActive) => {
|
|
224
251
|
let rdtHook = globalThis.__REACT_DEVTOOLS_GLOBAL_HOOK__;
|
|
225
252
|
const isActive = rdtHook && !("_instrumentationSource" in rdtHook);
|
|
226
253
|
if (isActive) onActive?.();
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
rdtHook._instrumentationIsActive
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
254
|
+
if (!window.hasOwnProperty("__REACT_DEVTOOLS_GLOBAL_HOOK__")) {
|
|
255
|
+
const renderers = /* @__PURE__ */ new Map();
|
|
256
|
+
let i = 0;
|
|
257
|
+
rdtHook ??= {
|
|
258
|
+
checkDCE,
|
|
259
|
+
supportsFiber: true,
|
|
260
|
+
supportsFlight: true,
|
|
261
|
+
renderers,
|
|
262
|
+
onCommitFiberRoot: NO_OP,
|
|
263
|
+
onCommitFiberUnmount: NO_OP,
|
|
264
|
+
onPostCommitFiberRoot: NO_OP,
|
|
265
|
+
inject(renderer) {
|
|
266
|
+
const nextID = ++i;
|
|
267
|
+
renderers.set(nextID, renderer);
|
|
268
|
+
if (!rdtHook._instrumentationIsActive) {
|
|
269
|
+
rdtHook._instrumentationIsActive = true;
|
|
270
|
+
onActive?.();
|
|
271
|
+
}
|
|
272
|
+
return nextID;
|
|
273
|
+
},
|
|
274
|
+
_instrumentationSource: "bippy",
|
|
275
|
+
_instrumentationIsActive: isActive
|
|
276
|
+
};
|
|
277
|
+
try {
|
|
278
|
+
Object.defineProperty(globalThis, "__REACT_DEVTOOLS_GLOBAL_HOOK__", {
|
|
279
|
+
configurable: true,
|
|
280
|
+
value: rdtHook
|
|
281
|
+
});
|
|
282
|
+
} catch {
|
|
283
|
+
}
|
|
255
284
|
}
|
|
256
285
|
return rdtHook;
|
|
257
286
|
};
|
|
258
|
-
var isInstrumentationActive = (
|
|
259
|
-
const rdtHook = getRDTHook(
|
|
287
|
+
var isInstrumentationActive = () => {
|
|
288
|
+
const rdtHook = getRDTHook();
|
|
260
289
|
return Boolean(rdtHook._instrumentationIsActive);
|
|
261
290
|
};
|
|
262
291
|
if (typeof window !== "undefined") {
|
|
@@ -444,4 +473,4 @@ var instrument = ({
|
|
|
444
473
|
return devtoolsHook;
|
|
445
474
|
};
|
|
446
475
|
|
|
447
|
-
export { CONCURRENT_MODE_NUMBER, CONCURRENT_MODE_SYMBOL_STRING, ChildDeletion, ClassComponentTag, Cloned, ContentReset, ContextConsumerTag, DEPRECATED_ASYNC_MODE_SYMBOL_STRING, DehydratedSuspenseComponent, DidCapture, ForwardRefTag, Fragment, FunctionComponentTag, HostComponentTag, HostHoistableTag, HostRoot, HostSingletonTag, HostText, Hydrating, LegacyHiddenComponent, MemoComponentTag, MutationMask, OffscreenComponent, OffscreenComponentTag, PerformedWork, Placement, Ref, SimpleMemoComponentTag, Snapshot, SuspenseComponentTag, Update, Visibility, createFiberVisitor, didFiberCommit, didFiberRender, getDisplayName, getFiberStack, getMutatedHostFibers, getNearestHostFiber, getRDTHook, getTimings, getType, hasMemoCache, instrument, isCompositeFiber, isHostFiber, isInstrumentationActive, isValidElement, mountFiberRecursively, shouldFilterFiber, traverseContexts, traverseFiber, traverseProps, traverseState, unmountFiber, unmountFiberChildrenRecursively, updateFiberRecursively };
|
|
476
|
+
export { CONCURRENT_MODE_NUMBER, CONCURRENT_MODE_SYMBOL_STRING, ChildDeletion, ClassComponentTag, Cloned, ContentReset, ContextConsumerTag, DEPRECATED_ASYNC_MODE_SYMBOL_STRING, DehydratedSuspenseComponent, DidCapture, ForwardRefTag, Fragment, FunctionComponentTag, HostComponentTag, HostHoistableTag, HostRoot, HostSingletonTag, HostText, Hydrating, LegacyHiddenComponent, MemoComponentTag, MutationMask, OffscreenComponent, OffscreenComponentTag, PerformedWork, Placement, Ref, SimpleMemoComponentTag, Snapshot, SuspenseComponentTag, Update, Visibility, createFiberVisitor, detectReactBuildType, didFiberCommit, didFiberRender, getDisplayName, getFiberStack, getMutatedHostFibers, getNearestHostFiber, getRDTHook, getTimings, getType, hasMemoCache, instrument, isCompositeFiber, isHostFiber, isInstrumentationActive, isUsingRDT, isValidElement, mountFiberRecursively, shouldFilterFiber, traverseContexts, traverseFiber, traverseProps, traverseState, unmountFiber, unmountFiberChildrenRecursively, updateFiberRecursively };
|