@kubb/react-fabric 0.0.0 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/dist/devtools.cjs +154 -85
  2. package/dist/devtools.cjs.map +1 -1
  3. package/dist/devtools.js +154 -85
  4. package/dist/devtools.js.map +1 -1
  5. package/dist/{globals-C6rGETh5.d.ts → globals-BQ_tJj2b.d.ts} +3 -3
  6. package/dist/{globals-CnATk-Sl.d.cts → globals-C-9ezLk9.d.cts} +3 -3
  7. package/dist/globals.d.cts +2 -2
  8. package/dist/globals.d.ts +2 -2
  9. package/dist/index.cjs +47 -73
  10. package/dist/index.cjs.map +1 -1
  11. package/dist/index.d.cts +63 -52
  12. package/dist/index.d.ts +63 -52
  13. package/dist/index.js +47 -72
  14. package/dist/index.js.map +1 -1
  15. package/dist/jsx-runtime.cjs +15 -7
  16. package/dist/jsx-runtime.cjs.map +1 -0
  17. package/dist/{jsx-dev-runtime.d.ts → jsx-runtime.d.cts} +3 -3
  18. package/dist/{jsx-dev-runtime.d.cts → jsx-runtime.d.ts} +3 -3
  19. package/dist/jsx-runtime.js +12 -4
  20. package/dist/jsx-runtime.js.map +1 -0
  21. package/dist/{types-C3p0Ljxf.d.cts → types-CUKR3KZn.d.cts} +1 -1
  22. package/dist/{types-DEroxUW0.d.ts → types-D9OfSq91.d.ts} +1 -1
  23. package/dist/types.d.cts +1 -1
  24. package/dist/types.d.ts +1 -1
  25. package/package.json +9 -7
  26. package/src/ReactTemplate.tsx +22 -24
  27. package/src/components/Const.tsx +4 -17
  28. package/src/components/File.tsx +1 -1
  29. package/src/components/Function.tsx +6 -38
  30. package/src/components/Root.tsx +5 -9
  31. package/src/components/Type.tsx +1 -7
  32. package/src/{hooks → composables}/useApp.ts +2 -2
  33. package/src/createApp.ts +4 -9
  34. package/src/dom.ts +5 -3
  35. package/src/globals.ts +1 -1
  36. package/src/index.ts +3 -4
  37. package/src/utils/processFiles.ts +1 -1
  38. package/src/utils/squashExportNodes.ts +1 -1
  39. package/src/utils/squashImportNodes.ts +1 -1
  40. package/src/utils/squashSourceNodes.ts +1 -1
  41. package/dist/jsx-dev-runtime.cjs +0 -9
  42. package/dist/jsx-dev-runtime.js +0 -6
  43. package/dist/jsx-runtime-DmD5u6a-.js +0 -13
  44. package/dist/jsx-runtime-DmD5u6a-.js.map +0 -1
  45. package/dist/jsx-runtime-zKfRQHQD.cjs +0 -36
  46. package/dist/jsx-runtime-zKfRQHQD.cjs.map +0 -1
  47. package/src/components/Text.tsx +0 -31
  48. package/src/utils/throttle.ts +0 -30
  49. /package/src/{hooks → composables}/useFile.ts +0 -0
  50. /package/src/{hooks → composables}/useLifecycle.tsx +0 -0
package/dist/devtools.cjs CHANGED
@@ -2,8 +2,8 @@ const require_react$1 = require('./react-Bq0UOw6S.cjs');
2
2
  let ws = require("ws");
3
3
  ws = require_react$1.__toESM(ws);
4
4
 
5
- //#region ../../node_modules/.pnpm/react-devtools-inline@7.0.0/node_modules/react-devtools-inline/dist/backend.js
6
- var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node_modules/.pnpm/react-devtools-inline@7.0.0/node_modules/react-devtools-inline/dist/backend.js": ((exports, module) => {
5
+ //#region ../../node_modules/.pnpm/react-devtools-inline@7.0.1/node_modules/react-devtools-inline/dist/backend.js
6
+ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node_modules/.pnpm/react-devtools-inline@7.0.1/node_modules/react-devtools-inline/dist/backend.js": ((exports, module) => {
7
7
  (() => {
8
8
  var __webpack_modules__ = {
9
9
  3018: ((module$1, __unused_webpack_exports, __webpack_require__$1) => {
@@ -2077,6 +2077,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
2077
2077
  return isReactNativeEnvironment() ? showOverlayNative(elements, agent$1) : showOverlayWeb(elements, componentName, agent$1, hideAfterTimeout);
2078
2078
  }
2079
2079
  let iframesListeningTo = /* @__PURE__ */ new Set();
2080
+ let inspectOnlySuspenseNodes = false;
2080
2081
  function setupHighlighter(bridge$1, agent$1) {
2081
2082
  bridge$1.addListener("clearHostInstanceHighlight", clearHostInstanceHighlight);
2082
2083
  bridge$1.addListener("highlightHostInstance", highlightHostInstance);
@@ -2085,7 +2086,8 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
2085
2086
  bridge$1.addListener("shutdown", stopInspectingHost);
2086
2087
  bridge$1.addListener("startInspectingHost", startInspectingHost);
2087
2088
  bridge$1.addListener("stopInspectingHost", stopInspectingHost);
2088
- function startInspectingHost() {
2089
+ function startInspectingHost(onlySuspenseNodes) {
2090
+ inspectOnlySuspenseNodes = onlySuspenseNodes;
2089
2091
  registerListenersOnWindow(window);
2090
2092
  }
2091
2093
  function registerListenersOnWindow(window$1) {
@@ -2268,16 +2270,32 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
2268
2270
  }
2269
2271
  } catch (error) {}
2270
2272
  }
2271
- showOverlay([target], null, agent$1, false);
2272
- selectElementForNode(target);
2273
+ if (inspectOnlySuspenseNodes) {
2274
+ const match = agent$1.getIDForHostInstance(target, inspectOnlySuspenseNodes);
2275
+ if (match !== null) {
2276
+ const renderer = agent$1.rendererInterfaces[match.rendererID];
2277
+ if (renderer == null) {
2278
+ console.warn(`Invalid renderer id "${match.rendererID}" for element "${match.id}"`);
2279
+ return;
2280
+ }
2281
+ highlightHostInstance({
2282
+ displayName: renderer.getDisplayNameForElementID(match.id),
2283
+ hideAfterTimeout: false,
2284
+ id: match.id,
2285
+ openBuiltinElementsPanel: false,
2286
+ rendererID: match.rendererID,
2287
+ scrollIntoView: false
2288
+ });
2289
+ }
2290
+ } else showOverlay([target], null, agent$1, false);
2273
2291
  }
2274
2292
  function onPointerUp(event) {
2275
2293
  event.preventDefault();
2276
2294
  event.stopPropagation();
2277
2295
  }
2278
2296
  const selectElementForNode = (node) => {
2279
- const id = agent$1.getIDForHostInstance(node);
2280
- if (id !== null) bridge$1.send("selectElement", id);
2297
+ const match = agent$1.getIDForHostInstance(node, inspectOnlySuspenseNodes);
2298
+ if (match !== null) bridge$1.send("selectElement", match.id);
2281
2299
  };
2282
2300
  function getEventTarget(event) {
2283
2301
  if (event.composed) return event.composedPath()[0];
@@ -2767,7 +2785,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
2767
2785
  else renderer.deletePath(type, id, hookID, path);
2768
2786
  });
2769
2787
  agent_defineProperty(this, "getBackendVersion", () => {
2770
- this._bridge.send("backendVersion", "7.0.0-3b2a398106");
2788
+ this._bridge.send("backendVersion", "7.0.1-3cde211b0c");
2771
2789
  });
2772
2790
  agent_defineProperty(this, "getBridgeProtocol", () => {
2773
2791
  this._bridge.send("bridgeProtocol", currentBridgeProtocol);
@@ -3117,19 +3135,23 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
3117
3135
  }
3118
3136
  return renderer.getInstanceAndStyle(id);
3119
3137
  }
3120
- getIDForHostInstance(target) {
3138
+ getIDForHostInstance(target, onlySuspenseNodes) {
3121
3139
  if (isReactNativeEnvironment() || typeof target.nodeType !== "number") {
3122
3140
  for (const rendererID in this._rendererInterfaces) {
3123
3141
  const renderer = this._rendererInterfaces[rendererID];
3124
3142
  try {
3125
- const match = renderer.getElementIDForHostInstance(target);
3126
- if (match != null) return match;
3143
+ const id = onlySuspenseNodes ? renderer.getSuspenseNodeIDForHostInstance(target) : renderer.getElementIDForHostInstance(target);
3144
+ if (id !== null) return {
3145
+ id,
3146
+ rendererID: +rendererID
3147
+ };
3127
3148
  } catch (error) {}
3128
3149
  }
3129
3150
  return null;
3130
3151
  } else {
3131
3152
  let bestMatch = null;
3132
3153
  let bestRenderer = null;
3154
+ let bestRendererID = 0;
3133
3155
  for (const rendererID in this._rendererInterfaces) {
3134
3156
  const renderer = this._rendererInterfaces[rendererID];
3135
3157
  const nearestNode = renderer.getNearestMountedDOMNode(target);
@@ -3137,58 +3159,34 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
3137
3159
  if (nearestNode === target) {
3138
3160
  bestMatch = nearestNode;
3139
3161
  bestRenderer = renderer;
3162
+ bestRendererID = +rendererID;
3140
3163
  break;
3141
3164
  }
3142
3165
  if (bestMatch === null || bestMatch.contains(nearestNode)) {
3143
3166
  bestMatch = nearestNode;
3144
3167
  bestRenderer = renderer;
3168
+ bestRendererID = +rendererID;
3145
3169
  }
3146
3170
  }
3147
3171
  }
3148
3172
  if (bestRenderer != null && bestMatch != null) try {
3149
- return bestRenderer.getElementIDForHostInstance(bestMatch);
3173
+ const id = onlySuspenseNodes ? bestRenderer.getSuspenseNodeIDForHostInstance(bestMatch) : bestRenderer.getElementIDForHostInstance(bestMatch);
3174
+ if (id !== null) return {
3175
+ id,
3176
+ rendererID: bestRendererID
3177
+ };
3150
3178
  } catch (error) {}
3151
3179
  return null;
3152
3180
  }
3153
3181
  }
3154
3182
  getComponentNameForHostInstance(target) {
3155
- if (isReactNativeEnvironment() || typeof target.nodeType !== "number") {
3156
- for (const rendererID in this._rendererInterfaces) {
3157
- const renderer = this._rendererInterfaces[rendererID];
3158
- try {
3159
- const id = renderer.getElementIDForHostInstance(target);
3160
- if (id) return renderer.getDisplayNameForElementID(id);
3161
- } catch (error) {}
3162
- }
3163
- return null;
3164
- } else {
3165
- let bestMatch = null;
3166
- let bestRenderer = null;
3167
- for (const rendererID in this._rendererInterfaces) {
3168
- const renderer = this._rendererInterfaces[rendererID];
3169
- const nearestNode = renderer.getNearestMountedDOMNode(target);
3170
- if (nearestNode !== null) {
3171
- if (nearestNode === target) {
3172
- bestMatch = nearestNode;
3173
- bestRenderer = renderer;
3174
- break;
3175
- }
3176
- if (bestMatch === null || bestMatch.contains(nearestNode)) {
3177
- bestMatch = nearestNode;
3178
- bestRenderer = renderer;
3179
- }
3180
- }
3181
- }
3182
- if (bestRenderer != null && bestMatch != null) try {
3183
- const id = bestRenderer.getElementIDForHostInstance(bestMatch);
3184
- if (id) return bestRenderer.getDisplayNameForElementID(id);
3185
- } catch (error) {}
3186
- return null;
3187
- }
3183
+ const match = this.getIDForHostInstance(target);
3184
+ if (match !== null) return this._rendererInterfaces[match.rendererID].getDisplayNameForElementID(match.id);
3185
+ return null;
3188
3186
  }
3189
3187
  selectNode(target) {
3190
- const id = this.getIDForHostInstance(target);
3191
- if (id !== null) this._bridge.send("selectElement", id);
3188
+ const match = this.getIDForHostInstance(target);
3189
+ if (match !== null) this._bridge.send("selectElement", match.id);
3192
3190
  }
3193
3191
  registerRendererInterface(rendererID, rendererInterface) {
3194
3192
  this._rendererInterfaces[rendererID] = rendererInterface;
@@ -3543,6 +3541,9 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
3543
3541
  getElementIDForHostInstance() {
3544
3542
  return null;
3545
3543
  },
3544
+ getSuspenseNodeIDForHostInstance() {
3545
+ return null;
3546
+ },
3546
3547
  getInstanceAndStyle() {
3547
3548
  return {
3548
3549
  instance: null,
@@ -4840,8 +4841,6 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
4840
4841
  "--color-timeline-text-dim-color": "#ccc",
4841
4842
  "--color-timeline-react-work-border": "#eeeeee",
4842
4843
  "--color-timebar-background": "#f6f6f6",
4843
- "--color-timespan-background": "#62bc6a",
4844
- "--color-timespan-background-errored": "#d57066",
4845
4844
  "--color-search-match": "yellow",
4846
4845
  "--color-search-match-current": "#f7923b",
4847
4846
  "--color-selected-tree-highlight-active": "rgba(0, 136, 250, 0.1)",
@@ -4859,6 +4858,13 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
4859
4858
  "--color-warning-background-hover": "#f82042",
4860
4859
  "--color-warning-text-color": "#ffffff",
4861
4860
  "--color-warning-text-color-inverted": "#fd4d69",
4861
+ "--color-suspense-default": "#0088fa",
4862
+ "--color-transition-default": "#6a51b2",
4863
+ "--color-suspense-server": "#62bc6a",
4864
+ "--color-transition-server": "#3f7844",
4865
+ "--color-suspense-other": "#f3ce49",
4866
+ "--color-transition-other": "#917b2c",
4867
+ "--color-suspense-errored": "#d57066",
4862
4868
  "--color-scroll-thumb": "#c2c2c2",
4863
4869
  "--color-scroll-track": "#fafafa",
4864
4870
  "--color-tooltip-background": "rgba(0, 0, 0, 0.9)",
@@ -4988,8 +4994,6 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
4988
4994
  "--color-timeline-text-dim-color": "#555b66",
4989
4995
  "--color-timeline-react-work-border": "#3d424a",
4990
4996
  "--color-timebar-background": "#1d2129",
4991
- "--color-timespan-background": "#62bc6a",
4992
- "--color-timespan-background-errored": "#d57066",
4993
4997
  "--color-search-match": "yellow",
4994
4998
  "--color-search-match-current": "#f7923b",
4995
4999
  "--color-selected-tree-highlight-active": "rgba(23, 143, 185, 0.15)",
@@ -5008,6 +5012,13 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
5008
5012
  "--color-warning-background-hover": "#da1030",
5009
5013
  "--color-warning-text-color": "#ffffff",
5010
5014
  "--color-warning-text-color-inverted": "#ee1638",
5015
+ "--color-suspense-default": "#61dafb",
5016
+ "--color-transition-default": "#6a51b2",
5017
+ "--color-suspense-server": "#62bc6a",
5018
+ "--color-transition-server": "#3f7844",
5019
+ "--color-suspense-other": "#f3ce49",
5020
+ "--color-transition-other": "#917b2c",
5021
+ "--color-suspense-errored": "#d57066",
5011
5022
  "--color-scroll-thumb": "#afb3b9",
5012
5023
  "--color-scroll-track": "#313640",
5013
5024
  "--color-tooltip-background": "rgba(255, 255, 255, 0.95)",
@@ -6419,7 +6430,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
6419
6430
  const numUnmountIDs = pendingRealUnmountedIDs.length + (pendingUnmountedRootID === null ? 0 : 1);
6420
6431
  const numUnmountSuspenseIDs = pendingRealUnmountedSuspenseIDs.length;
6421
6432
  const numSuspenderChanges = pendingSuspenderChanges.size;
6422
- const operations = new Array(3 + pendingStringTableLength + (numUnmountSuspenseIDs > 0 ? 2 + numUnmountSuspenseIDs : 0) + (numUnmountIDs > 0 ? 2 + numUnmountIDs : 0) + pendingOperations.length + (numSuspenderChanges > 0 ? 2 + numSuspenderChanges * 2 : 0));
6433
+ const operations = new Array(3 + pendingStringTableLength + (numUnmountSuspenseIDs > 0 ? 2 + numUnmountSuspenseIDs : 0) + (numUnmountIDs > 0 ? 2 + numUnmountIDs : 0) + pendingOperations.length + (numSuspenderChanges > 0 ? 2 + numSuspenderChanges * 3 : 0));
6423
6434
  let i = 0;
6424
6435
  operations[i++] = rendererID;
6425
6436
  if (currentRoot === null) operations[i++] = -1;
@@ -6456,6 +6467,9 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
6456
6467
  if (suspense === void 0) throw new Error(`Could not send suspender changes for "${fiberIdWithChanges}" since the Fiber no longer exists.`);
6457
6468
  operations[i++] = fiberIdWithChanges;
6458
6469
  operations[i++] = suspense.hasUniqueSuspenders ? 1 : 0;
6470
+ const instance = suspense.instance;
6471
+ const isSuspended = (instance.kind === FIBER_INSTANCE || instance.kind === FILTERED_FIBER_INSTANCE) && instance.data.tag === SuspenseComponent && instance.data.memoizedState !== null;
6472
+ operations[i++] = isSuspended ? 1 : 0;
6459
6473
  operations[i++] = suspense.environments.size;
6460
6474
  suspense.environments.forEach((count, env) => {
6461
6475
  operations[i++] = getStringID(env);
@@ -6473,7 +6487,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
6473
6487
  }
6474
6488
  function measureHostInstance(instance) {
6475
6489
  if (typeof instance !== "object" || instance === null) return null;
6476
- if (typeof instance.getClientRects === "function") {
6490
+ if (typeof instance.getClientRects === "function" || instance.nodeType === 3) {
6477
6491
  const doc = instance.ownerDocument;
6478
6492
  if (instance === doc.documentElement) return [{
6479
6493
  x: 0,
@@ -6485,7 +6499,14 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
6485
6499
  const win = doc && doc.defaultView;
6486
6500
  const scrollX = win ? win.scrollX : 0;
6487
6501
  const scrollY = win ? win.scrollY : 0;
6488
- const rects = instance.getClientRects();
6502
+ let rects;
6503
+ if (instance.nodeType === 3) {
6504
+ if (typeof doc.createRange !== "function") return null;
6505
+ const range = doc.createRange();
6506
+ if (typeof range.getClientRects !== "function") return null;
6507
+ range.selectNodeContents(instance);
6508
+ rects = range.getClientRects();
6509
+ } else rects = instance.getClientRects();
6489
6510
  for (let i = 0; i < rects.length; i++) {
6490
6511
  const rect = rects[i];
6491
6512
  result.push({
@@ -6656,23 +6677,26 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
6656
6677
  const unfilteredParentInstance = unfilteredParent !== null ? unfilteredParent.instance : null;
6657
6678
  if (unfilteredParentInstance !== null && unfilteredParentInstance.kind === FILTERED_FIBER_INSTANCE) throw new Error("Should not have a filtered instance at this point. This is a bug.");
6658
6679
  const parentID = unfilteredParentInstance === null ? 0 : unfilteredParentInstance.id;
6659
- const props = fiberInstance.data.memoizedProps;
6660
- const nameStringID = getStringID(props === null ? null : props.name || null);
6680
+ const fiber = fiberInstance.data;
6681
+ const props = fiber.memoizedProps;
6682
+ const nameStringID = getStringID(fiber.tag !== SuspenseComponent || props === null ? null : props.name || null);
6683
+ const isSuspended = fiber.tag === SuspenseComponent && fiber.memoizedState !== null;
6661
6684
  idToSuspenseNodeMap.set(fiberID, suspenseInstance);
6662
6685
  pushOperation(SUSPENSE_TREE_OPERATION_ADD);
6663
6686
  pushOperation(fiberID);
6664
6687
  pushOperation(parentID);
6665
6688
  pushOperation(nameStringID);
6689
+ pushOperation(isSuspended ? 1 : 0);
6666
6690
  const rects = suspenseInstance.rects;
6667
6691
  if (rects === null) pushOperation(-1);
6668
6692
  else {
6669
6693
  pushOperation(rects.length);
6670
6694
  for (let i = 0; i < rects.length; ++i) {
6671
6695
  const rect = rects[i];
6672
- pushOperation(Math.round(rect.x));
6673
- pushOperation(Math.round(rect.y));
6674
- pushOperation(Math.round(rect.width));
6675
- pushOperation(Math.round(rect.height));
6696
+ pushOperation(Math.round(rect.x * 1e3));
6697
+ pushOperation(Math.round(rect.y * 1e3));
6698
+ pushOperation(Math.round(rect.width * 1e3));
6699
+ pushOperation(Math.round(rect.height * 1e3));
6676
6700
  }
6677
6701
  }
6678
6702
  }
@@ -6702,10 +6726,10 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
6702
6726
  pushOperation(rects.length);
6703
6727
  for (let i = 0; i < rects.length; ++i) {
6704
6728
  const rect = rects[i];
6705
- pushOperation(Math.round(rect.x));
6706
- pushOperation(Math.round(rect.y));
6707
- pushOperation(Math.round(rect.width));
6708
- pushOperation(Math.round(rect.height));
6729
+ pushOperation(Math.round(rect.x * 1e3));
6730
+ pushOperation(Math.round(rect.y * 1e3));
6731
+ pushOperation(Math.round(rect.width * 1e3));
6732
+ pushOperation(Math.round(rect.height * 1e3));
6709
6733
  }
6710
6734
  }
6711
6735
  }
@@ -6743,7 +6767,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
6743
6767
  if (reconcilingParent === null || reconcilingParentSuspenseNode === null) throw new Error("It should not be possible to have suspended data outside the root. Even suspending at the first position is still a child of the root.");
6744
6768
  const parentSuspenseNode = reconcilingParentSuspenseNode;
6745
6769
  let parentInstance = reconcilingParent;
6746
- while (parentInstance.kind === FILTERED_FIBER_INSTANCE && parentInstance.parent !== null) parentInstance = parentInstance.parent;
6770
+ while (parentInstance.kind === FILTERED_FIBER_INSTANCE && parentInstance.parent !== null && parentInstance !== parentSuspenseNode.instance) parentInstance = parentInstance.parent;
6747
6771
  const suspenseNodeSuspendedBy = parentSuspenseNode.suspendedBy;
6748
6772
  const ioInfo = asyncInfo.awaited;
6749
6773
  let suspendedBySet = suspenseNodeSuspendedBy.get(ioInfo);
@@ -6908,8 +6932,15 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
6908
6932
  default: return false;
6909
6933
  }
6910
6934
  }
6935
+ function isSuspendedOffscreen(fiber) {
6936
+ switch (fiber.tag) {
6937
+ case LegacyHiddenComponent:
6938
+ case OffscreenComponent: return fiber.memoizedState !== null && fiber.return !== null && fiber.return.tag === SuspenseComponent;
6939
+ default: return false;
6940
+ }
6941
+ }
6911
6942
  function unmountRemainingChildren() {
6912
- if (reconcilingParent !== null && (reconcilingParent.kind === FIBER_INSTANCE || reconcilingParent.kind === FILTERED_FIBER_INSTANCE) && isHiddenOffscreen(reconcilingParent.data) && !isInDisconnectedSubtree) {
6943
+ if (reconcilingParent !== null && (reconcilingParent.kind === FIBER_INSTANCE || reconcilingParent.kind === FILTERED_FIBER_INSTANCE) && isSuspendedOffscreen(reconcilingParent.data) && !isInDisconnectedSubtree) {
6913
6944
  isInDisconnectedSubtree = true;
6914
6945
  try {
6915
6946
  let child = remainingReconcilingChildren;
@@ -6957,15 +6988,17 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
6957
6988
  }
6958
6989
  function measureUnchangedSuspenseNodesRecursively(suspenseNode) {
6959
6990
  if (isInDisconnectedSubtree) return;
6960
- const nextRects = measureInstance(suspenseNode.instance);
6961
- const prevRects = suspenseNode.rects;
6962
- if (areEqualRects(prevRects, nextRects)) return;
6963
- let parent = suspenseNode.instance.parent;
6991
+ const instance = suspenseNode.instance;
6992
+ if ((instance.kind === FIBER_INSTANCE || instance.kind === FILTERED_FIBER_INSTANCE) && instance.data.tag === SuspenseComponent && instance.data.memoizedState !== null) return;
6993
+ let parent = instance.parent;
6964
6994
  while (parent !== null) {
6965
6995
  if ((parent.kind === FIBER_INSTANCE || parent.kind === FILTERED_FIBER_INSTANCE) && isHiddenOffscreen(parent.data)) return;
6966
6996
  if (parent.suspenseNode !== null) break;
6967
6997
  parent = parent.parent;
6968
6998
  }
6999
+ const nextRects = measureInstance(suspenseNode.instance);
7000
+ const prevRects = suspenseNode.rects;
7001
+ if (areEqualRects(prevRects, nextRects)) return;
6969
7002
  for (let child = suspenseNode.firstChild; child !== null; child = child.nextSibling) measureUnchangedSuspenseNodesRecursively(child);
6970
7003
  suspenseNode.rects = nextRects;
6971
7004
  recordSuspenseResize(suspenseNode);
@@ -7294,7 +7327,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
7294
7327
  aquireHostInstance(nearestInstance, fiber.stateNode);
7295
7328
  trackDebugInfoFromHostComponent(nearestInstance, fiber);
7296
7329
  }
7297
- if (isHiddenOffscreen(fiber)) {
7330
+ if (isSuspendedOffscreen(fiber)) {
7298
7331
  const stashedDisconnected = isInDisconnectedSubtree;
7299
7332
  isInDisconnectedSubtree = true;
7300
7333
  try {
@@ -7302,7 +7335,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
7302
7335
  } finally {
7303
7336
  isInDisconnectedSubtree = stashedDisconnected;
7304
7337
  }
7305
- } else if (fiber.tag === SuspenseComponent && OffscreenComponent === -1) {
7338
+ } else if (isHiddenOffscreen(fiber)) {} else if (fiber.tag === SuspenseComponent && OffscreenComponent === -1) {
7306
7339
  if (newSuspenseNode !== null) trackThrownPromisesFromRetryCache(newSuspenseNode, fiber.stateNode);
7307
7340
  if (fiber.memoizedState !== null) {
7308
7341
  const primaryChildFragment = fiber.child;
@@ -7695,8 +7728,14 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
7695
7728
  const nextDidTimeOut = isLegacySuspense && nextFiber.memoizedState !== null;
7696
7729
  const prevWasHidden = isHiddenOffscreen(prevFiber);
7697
7730
  const nextIsHidden = isHiddenOffscreen(nextFiber);
7731
+ const prevWasSuspended = isSuspendedOffscreen(prevFiber);
7732
+ const nextIsSuspended = isSuspendedOffscreen(nextFiber);
7698
7733
  if (isLegacySuspense) {
7699
- if (fiberInstance !== null && fiberInstance.suspenseNode !== null && prevFiber.stateNode === null !== (nextFiber.stateNode === null)) trackThrownPromisesFromRetryCache(fiberInstance.suspenseNode, nextFiber.stateNode);
7734
+ if (fiberInstance !== null && fiberInstance.suspenseNode !== null) {
7735
+ const suspenseNode = fiberInstance.suspenseNode;
7736
+ if (prevFiber.stateNode === null !== (nextFiber.stateNode === null)) trackThrownPromisesFromRetryCache(suspenseNode, nextFiber.stateNode);
7737
+ if (prevFiber.memoizedState === null !== (nextFiber.memoizedState === null)) recordSuspenseSuspenders(suspenseNode);
7738
+ }
7700
7739
  }
7701
7740
  if (prevDidTimeout && nextDidTimeOut) {
7702
7741
  const nextFiberChild = nextFiber.child;
@@ -7722,8 +7761,8 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
7722
7761
  mountChildrenRecursively(nextFallbackChildSet, traceNearestHostComponentUpdate);
7723
7762
  updateFlags |= ShouldResetChildren | ShouldResetSuspenseChildren;
7724
7763
  }
7725
- } else if (nextIsHidden) {
7726
- if (!prevWasHidden) {
7764
+ } else if (nextIsSuspended) {
7765
+ if (!prevWasSuspended) {
7727
7766
  if (fiberInstance !== null && !isInDisconnectedSubtree) disconnectChildrenRecursively(remainingReconcilingChildren);
7728
7767
  }
7729
7768
  const stashedDisconnected = isInDisconnectedSubtree;
@@ -7733,7 +7772,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
7733
7772
  } finally {
7734
7773
  isInDisconnectedSubtree = stashedDisconnected;
7735
7774
  }
7736
- } else if (prevWasHidden && !nextIsHidden) {
7775
+ } else if (prevWasSuspended && !nextIsSuspended) {
7737
7776
  const stashedDisconnected = isInDisconnectedSubtree;
7738
7777
  isInDisconnectedSubtree = true;
7739
7778
  try {
@@ -7747,7 +7786,8 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
7747
7786
  reconnectChildrenRecursively(fiberInstance);
7748
7787
  updateFlags |= ShouldResetChildren | ShouldResetSuspenseChildren;
7749
7788
  }
7750
- } else if (nextFiber.tag === SuspenseComponent && OffscreenComponent !== -1 && fiberInstance !== null && fiberInstance.suspenseNode !== null) {
7789
+ } else if (nextIsHidden) if (prevWasHidden) {} else unmountRemainingChildren();
7790
+ else if (nextFiber.tag === SuspenseComponent && OffscreenComponent !== -1 && fiberInstance !== null && fiberInstance.suspenseNode !== null) {
7751
7791
  const suspenseNode = fiberInstance.suspenseNode;
7752
7792
  const prevContentFiber = prevFiber.child;
7753
7793
  const nextContentFiber = nextFiber.child;
@@ -7756,6 +7796,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
7756
7796
  if (previousHydrated && nextHydrated) {
7757
7797
  if (nextContentFiber === null || prevContentFiber === null) throw new Error("There should always be an Offscreen Fiber child in a hydrated Suspense boundary.");
7758
7798
  if (prevFiber.stateNode === null !== (nextFiber.stateNode === null)) trackThrownPromisesFromRetryCache(suspenseNode, nextFiber.stateNode);
7799
+ if (prevFiber.memoizedState === null !== (nextFiber.memoizedState === null)) recordSuspenseSuspenders(suspenseNode);
7759
7800
  shouldMeasureSuspenseNode = false;
7760
7801
  updateFlags |= updateSuspenseChildrenRecursively(nextContentFiber, prevContentFiber, traceNearestHostComponentUpdate, stashedSuspenseParent, stashedSuspensePrevious, stashedSuspenseRemaining);
7761
7802
  shouldPopSuspenseNode = false;
@@ -7763,6 +7804,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
7763
7804
  } else if (!previousHydrated && nextHydrated) {
7764
7805
  if (nextContentFiber === null) throw new Error("There should always be an Offscreen Fiber child in a hydrated Suspense boundary.");
7765
7806
  trackThrownPromisesFromRetryCache(suspenseNode, nextFiber.stateNode);
7807
+ recordSuspenseSuspenders(suspenseNode);
7766
7808
  mountSuspenseChildrenRecursively(nextContentFiber, traceNearestHostComponentUpdate, stashedSuspenseParent, stashedSuspensePrevious, stashedSuspenseRemaining);
7767
7809
  shouldPopSuspenseNode = false;
7768
7810
  } else if (previousHydrated && !nextHydrated) throw new Error("Encountered a dehydrated Suspense boundary that was previously hydrated.");
@@ -7792,7 +7834,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
7792
7834
  }
7793
7835
  if ((updateFlags & ShouldResetChildren) !== NoUpdate) {
7794
7836
  if (fiberInstance !== null && fiberInstance.kind === FIBER_INSTANCE) {
7795
- if (!nextIsHidden && !isInDisconnectedSubtree) recordResetChildren(fiberInstance);
7837
+ if (!nextIsSuspended && !isInDisconnectedSubtree) recordResetChildren(fiberInstance);
7796
7838
  updateFlags &= ~ShouldResetChildren;
7797
7839
  }
7798
7840
  }
@@ -7842,7 +7884,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
7842
7884
  }
7843
7885
  function disconnectChildrenRecursively(firstChild) {
7844
7886
  for (let child = firstChild; child !== null; child = child.nextSibling) {
7845
- if ((child.kind === FIBER_INSTANCE || child.kind === FILTERED_FIBER_INSTANCE) && isHiddenOffscreen(child.data)) {} else disconnectChildrenRecursively(child.firstChild);
7887
+ if ((child.kind === FIBER_INSTANCE || child.kind === FILTERED_FIBER_INSTANCE) && isSuspendedOffscreen(child.data)) {} else disconnectChildrenRecursively(child.firstChild);
7846
7888
  if (child.kind === FIBER_INSTANCE) recordDisconnect(child);
7847
7889
  else if (child.kind === VIRTUAL_INSTANCE) recordVirtualDisconnect(child);
7848
7890
  }
@@ -8021,8 +8063,18 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
8021
8063
  function getDisplayNameForElementID(id) {
8022
8064
  const devtoolsInstance = idToDevToolsInstanceMap.get(id);
8023
8065
  if (devtoolsInstance === void 0) return null;
8024
- if (devtoolsInstance.kind === FIBER_INSTANCE) return getDisplayNameForFiber(devtoolsInstance.data);
8025
- else return devtoolsInstance.data.name || "";
8066
+ if (devtoolsInstance.kind === FIBER_INSTANCE) {
8067
+ const fiber = devtoolsInstance.data;
8068
+ if (fiber.tag === HostRoot) return "Initial Paint";
8069
+ if (fiber.tag === SuspenseComponent || fiber.tag === ActivityComponent) {
8070
+ const props = fiber.memoizedProps;
8071
+ if (props.name != null) return props.name;
8072
+ const owner = getUnfilteredOwner(fiber);
8073
+ if (owner != null) if (typeof owner.tag === "number") return getDisplayNameForFiber(owner);
8074
+ else return owner.name || "";
8075
+ }
8076
+ return getDisplayNameForFiber(fiber);
8077
+ } else return devtoolsInstance.data.name || "";
8026
8078
  }
8027
8079
  function getNearestSuspenseNode(instance) {
8028
8080
  while (instance.suspenseNode === null) {
@@ -8044,6 +8096,18 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
8044
8096
  }
8045
8097
  return null;
8046
8098
  }
8099
+ function getSuspenseNodeIDForHostInstance(publicInstance) {
8100
+ const instance = publicInstanceToDevToolsInstanceMap.get(publicInstance);
8101
+ if (instance !== void 0) {
8102
+ let suspenseInstance = instance;
8103
+ while (suspenseInstance.suspenseNode === null || suspenseInstance.kind === FILTERED_FIBER_INSTANCE) {
8104
+ if (suspenseInstance.parent === null) return null;
8105
+ suspenseInstance = suspenseInstance.parent;
8106
+ }
8107
+ return suspenseInstance.id;
8108
+ }
8109
+ return null;
8110
+ }
8047
8111
  function getElementAttributeByPath(id, path) {
8048
8112
  if (isMostRecentlyInspectedElement(id)) return utils_getInObject(mostRecentlyInspectedElement, path);
8049
8113
  }
@@ -8192,7 +8256,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
8192
8256
  }
8193
8257
  }
8194
8258
  const newIO = asyncInfo.awaited;
8195
- if (newIO.name === "RSC stream" && newIO.value != null) {
8259
+ if ((newIO.name === "RSC stream" || newIO.name === "rsc stream") && newIO.value != null) {
8196
8260
  const streamPromise = newIO.value;
8197
8261
  const existingEntry = streamEntries.get(streamPromise);
8198
8262
  if (existingEntry === void 0) streamEntries.set(streamPromise, {
@@ -8228,7 +8292,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
8228
8292
  const ioInfo = asyncInfo.awaited;
8229
8293
  if (foundIOEntries.has(ioInfo)) continue;
8230
8294
  foundIOEntries.add(ioInfo);
8231
- if (ioInfo.name === "RSC stream" && ioInfo.value != null) {
8295
+ if ((ioInfo.name === "RSC stream" || ioInfo.name === "rsc stream") && ioInfo.value != null) {
8232
8296
  const streamPromise = ioInfo.value;
8233
8297
  const existingEntry = streamEntries.get(streamPromise);
8234
8298
  if (existingEntry === void 0) streamEntries.set(streamPromise, asyncInfo);
@@ -9375,6 +9439,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
9375
9439
  getDisplayNameForElementID,
9376
9440
  getNearestMountedDOMNode,
9377
9441
  getElementIDForHostInstance,
9442
+ getSuspenseNodeIDForHostInstance,
9378
9443
  getInstanceAndStyle,
9379
9444
  getOwnersList,
9380
9445
  getPathForElement,
@@ -9625,6 +9690,7 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
9625
9690
  pushOperation(id);
9626
9691
  pushOperation(parentID);
9627
9692
  pushOperation(getStringID(null));
9693
+ pushOperation(0);
9628
9694
  pushOperation(-1);
9629
9695
  } else {
9630
9696
  const type = getElementType(internalInstance);
@@ -10114,6 +10180,9 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
10114
10180
  getDisplayNameForElementID,
10115
10181
  getNearestMountedDOMNode,
10116
10182
  getElementIDForHostInstance,
10183
+ getSuspenseNodeIDForHostInstance(id) {
10184
+ return null;
10185
+ },
10117
10186
  getInstanceAndStyle,
10118
10187
  findHostInstancesForElementID: (id) => {
10119
10188
  const hostInstance = findHostInstanceForInternalID(id);
@@ -10800,8 +10869,8 @@ var require_backend$1 = /* @__PURE__ */ require_react$1.__commonJS({ "../../node
10800
10869
  }) });
10801
10870
 
10802
10871
  //#endregion
10803
- //#region ../../node_modules/.pnpm/react-devtools-inline@7.0.0/node_modules/react-devtools-inline/backend.js
10804
- var require_backend = /* @__PURE__ */ require_react$1.__commonJS({ "../../node_modules/.pnpm/react-devtools-inline@7.0.0/node_modules/react-devtools-inline/backend.js": ((exports, module) => {
10872
+ //#region ../../node_modules/.pnpm/react-devtools-inline@7.0.1/node_modules/react-devtools-inline/backend.js
10873
+ var require_backend = /* @__PURE__ */ require_react$1.__commonJS({ "../../node_modules/.pnpm/react-devtools-inline@7.0.1/node_modules/react-devtools-inline/backend.js": ((exports, module) => {
10805
10874
  module.exports = require_backend$1();
10806
10875
  }) });
10807
10876