one 1.25.11 → 1.25.12

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.
@@ -99,7 +99,7 @@ function configure(props) {
99
99
  return;
100
100
  }
101
101
  disable?.();
102
- const initialLocation = `${window.location.pathname}${window.location.search}${window.location.hash}`;
102
+ const initialLocation = `${window.location.pathname}${window.location.search}`;
103
103
  let isFirstStateChange = true;
104
104
  previousPathname = window.location.pathname;
105
105
  const popStateController = new AbortController();
@@ -115,10 +115,11 @@ function configure(props) {
115
115
  }
116
116
  });
117
117
  const disposeOnRootState = (0, import_router.subscribeToRootState)(state => {
118
+ const currentHref = import_router.routeInfo?.unstable_globalHref ?? "";
119
+ const currentPathname = import_router.routeInfo?.pathname ?? "";
118
120
  if (isFirstStateChange) {
119
121
  isFirstStateChange = false;
120
- const currentLocation = `${window.location.pathname}${window.location.search}${window.location.hash}`;
121
- if (currentLocation === initialLocation) {
122
+ if (currentHref === initialLocation) {
122
123
  return;
123
124
  }
124
125
  }
@@ -128,7 +129,6 @@ function configure(props) {
128
129
  const {
129
130
  hash
130
131
  } = state;
131
- const currentPathname = window.location.pathname;
132
132
  if (hash) {
133
133
  setTimeout(() => {
134
134
  scrollToHash(hash);
@@ -124,7 +124,7 @@ function configure(props) {
124
124
  return;
125
125
  }
126
126
  disable === null || disable === void 0 ? void 0 : disable();
127
- var initialLocation = `${window.location.pathname}${window.location.search}${window.location.hash}`;
127
+ var initialLocation = `${window.location.pathname}${window.location.search}`;
128
128
  var isFirstStateChange = true;
129
129
  previousPathname = window.location.pathname;
130
130
  var popStateController = new AbortController();
@@ -140,11 +140,13 @@ function configure(props) {
140
140
  }
141
141
  });
142
142
  var disposeOnRootState = (0, import_router.subscribeToRootState)(function (state) {
143
+ var _ref, _ref1;
143
144
  var _state_linkOptions;
145
+ var currentHref = (_ref = import_router.routeInfo === null || import_router.routeInfo === void 0 ? void 0 : import_router.routeInfo.unstable_globalHref) !== null && _ref !== void 0 ? _ref : "";
146
+ var currentPathname = (_ref1 = import_router.routeInfo === null || import_router.routeInfo === void 0 ? void 0 : import_router.routeInfo.pathname) !== null && _ref1 !== void 0 ? _ref1 : "";
144
147
  if (isFirstStateChange) {
145
148
  isFirstStateChange = false;
146
- var currentLocation = `${window.location.pathname}${window.location.search}${window.location.hash}`;
147
- if (currentLocation === initialLocation) {
149
+ if (currentHref === initialLocation) {
148
150
  return;
149
151
  }
150
152
  }
@@ -154,7 +156,6 @@ function configure(props) {
154
156
  var {
155
157
  hash
156
158
  } = state;
157
- var currentPathname = window.location.pathname;
158
159
  if (hash) {
159
160
  setTimeout(function () {
160
161
  scrollToHash(hash);
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","ScrollBehavior_exports","__export","ScrollBehavior","registerScrollGroup","module","exports","import_react","require","import_lastAction","import_router","KEY","GROUP_KEY","getState","JSON","parse","sessionStorage","getItem","getGroupState","activeGroups","Set","groupId","add","delete","getGroupKey","pathname","longestMatch","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","group","startsWith","length","err","return","restorePosition","positions","saved","window","location","setTimeout","scrollTo","error","console","removeItem","restoreGroupPosition","didPop","previousPathname","rememberScrollPosition","state","scrollY","setItem","stringify","groupKey","groupState","disable","configure","props","addEventListener","initialLocation","search","hash","isFirstStateChange","popStateController","AbortController","setLastAction","signal","disposeOnLoadState","subscribeToLoadingState","disposeOnRootState","subscribeToRootState","_state_linkOptions","currentLocation","linkOptions","scroll","currentPathname","scrollToHash","_state_linkOptions1","prevGroup","currentGroup","scrollGroup","abort"],"sources":["../../../src/views/ScrollBehavior.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","ScrollBehavior_exports","__export","ScrollBehavior","registerScrollGroup","module","exports","import_react","require","import_lastAction","import_router","KEY","GROUP_KEY","getState","JSON","parse","sessionStorage","getItem","getGroupState","activeGroups","Set","groupId","add","delete","getGroupKey","pathname","longestMatch","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","group","startsWith","length","err","return","restorePosition","positions","saved","window","location","setTimeout","scrollTo","error","console","removeItem","restoreGroupPosition","didPop","previousPathname","rememberScrollPosition","state","scrollY","setItem","stringify","groupKey","groupState","disable","configure","props","addEventListener","initialLocation","search","isFirstStateChange","popStateController","AbortController","setLastAction","signal","disposeOnLoadState","subscribeToLoadingState","disposeOnRootState","subscribeToRootState","_ref","_ref1","_state_linkOptions","currentHref","routeInfo","unstable_globalHref","currentPathname","linkOptions","scroll","hash","scrollToHash","_state_linkOptions1","prevGroup","currentGroup","scrollGroup","abort"],"sources":["../../../src/views/ScrollBehavior.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -30,10 +30,19 @@ const subscriptions = import_vitest.vi.hoisted(() => ({
30
30
  loading: void 0,
31
31
  root: void 0
32
32
  }));
33
+ const router = import_vitest.vi.hoisted(() => ({
34
+ routeInfo: {
35
+ unstable_globalHref: "/",
36
+ pathname: "/"
37
+ }
38
+ }));
33
39
  import_vitest.vi.mock("../router/lastAction", () => ({
34
40
  setLastAction: import_vitest.vi.fn()
35
41
  }));
36
42
  import_vitest.vi.mock("../router/router", () => ({
43
+ get routeInfo() {
44
+ return router.routeInfo;
45
+ },
37
46
  subscribeToLoadingState: subscriber => {
38
47
  subscriptions.loading = subscriber;
39
48
  return () => {
@@ -51,6 +60,15 @@ globalThis.IS_REACT_ACT_ENVIRONMENT = true;
51
60
  let renderer;
52
61
  let location;
53
62
  let scrollTo;
63
+ function navigate(pathname, search = "") {
64
+ router.routeInfo = {
65
+ unstable_globalHref: `${pathname}${search}`,
66
+ pathname
67
+ };
68
+ (0, import_react_test_renderer.act)(() => subscriptions.root?.({}));
69
+ location.pathname = pathname;
70
+ location.search = search;
71
+ }
54
72
  (0, import_vitest.beforeEach)(() => {
55
73
  process.env.VITE_ENVIRONMENT = "client";
56
74
  location = {
@@ -58,6 +76,10 @@ let scrollTo;
58
76
  search: "",
59
77
  hash: ""
60
78
  };
79
+ router.routeInfo = {
80
+ unstable_globalHref: "/",
81
+ pathname: "/"
82
+ };
61
83
  scrollTo = import_vitest.vi.fn();
62
84
  const windowMock = Object.assign(new EventTarget(), {
63
85
  location,
@@ -91,13 +113,11 @@ let scrollTo;
91
113
  (0, import_vitest.expect)(scrollTo).not.toHaveBeenCalled();
92
114
  });
93
115
  (0, import_vitest.it)("scrolls to the top when the first state notification is a real navigation", () => {
94
- location.pathname = "/compat/react-native-gesture-handler";
95
- (0, import_react_test_renderer.act)(() => subscriptions.root?.({}));
116
+ navigate("/compat/react-native-gesture-handler");
96
117
  (0, import_vitest.expect)(scrollTo).toHaveBeenCalledWith(0, 0);
97
118
  });
98
119
  (0, import_vitest.it)("handles a query change as a first navigation", () => {
99
- location.search = "?platform=ios";
100
- (0, import_react_test_renderer.act)(() => subscriptions.root?.({}));
120
+ navigate("/", "?platform=ios");
101
121
  (0, import_vitest.expect)(scrollTo).toHaveBeenCalledWith(0, 0);
102
122
  });
103
123
  });
@@ -105,13 +125,10 @@ let scrollTo;
105
125
  (0, import_vitest.it)("preserves position between routes in the same group", () => {
106
126
  import_vitest.vi.useFakeTimers();
107
127
  const unregister = (0, import_ScrollBehavior.registerScrollGroup)("/compat/react-native-gesture-handler");
108
- (0, import_react_test_renderer.act)(() => subscriptions.root?.({}));
109
- location.pathname = "/compat/react-native-gesture-handler";
110
- (0, import_react_test_renderer.act)(() => subscriptions.root?.({}));
128
+ navigate("/compat/react-native-gesture-handler");
111
129
  scrollTo.mockClear();
112
130
  (0, import_react_test_renderer.act)(() => subscriptions.loading?.("loading"));
113
- location.pathname = "/compat/react-native-gesture-handler/pan-gesture";
114
- (0, import_react_test_renderer.act)(() => subscriptions.root?.({}));
131
+ navigate("/compat/react-native-gesture-handler/pan-gesture");
115
132
  import_vitest.vi.runAllTimers();
116
133
  (0, import_vitest.expect)(scrollTo).toHaveBeenCalledWith(0, 500);
117
134
  unregister();
@@ -119,13 +136,10 @@ let scrollTo;
119
136
  });
120
137
  (0, import_vitest.it)("does not match a different route whose slug has the same prefix", () => {
121
138
  const unregister = (0, import_ScrollBehavior.registerScrollGroup)("/compat/react-native");
122
- (0, import_react_test_renderer.act)(() => subscriptions.root?.({}));
123
- location.pathname = "/compat/react-native/core";
124
- (0, import_react_test_renderer.act)(() => subscriptions.root?.({}));
139
+ navigate("/compat/react-native/core");
125
140
  scrollTo.mockClear();
126
141
  (0, import_react_test_renderer.act)(() => subscriptions.loading?.("loading"));
127
- location.pathname = "/compat/react-native-gesture-handler";
128
- (0, import_react_test_renderer.act)(() => subscriptions.root?.({}));
142
+ navigate("/compat/react-native-gesture-handler");
129
143
  (0, import_vitest.expect)(scrollTo).toHaveBeenCalledWith(0, 0);
130
144
  unregister();
131
145
  });
@@ -35,6 +35,14 @@ var subscriptions = import_vitest.vi.hoisted(function () {
35
35
  root: void 0
36
36
  };
37
37
  });
38
+ var router = import_vitest.vi.hoisted(function () {
39
+ return {
40
+ routeInfo: {
41
+ unstable_globalHref: "/",
42
+ pathname: "/"
43
+ }
44
+ };
45
+ });
38
46
  import_vitest.vi.mock("../router/lastAction", function () {
39
47
  return {
40
48
  setLastAction: import_vitest.vi.fn()
@@ -42,6 +50,9 @@ import_vitest.vi.mock("../router/lastAction", function () {
42
50
  });
43
51
  import_vitest.vi.mock("../router/router", function () {
44
52
  return {
53
+ get routeInfo() {
54
+ return router.routeInfo;
55
+ },
45
56
  subscribeToLoadingState: function (subscriber) {
46
57
  subscriptions.loading = subscriber;
47
58
  return function () {
@@ -60,6 +71,19 @@ globalThis.IS_REACT_ACT_ENVIRONMENT = true;
60
71
  var renderer;
61
72
  var location;
62
73
  var scrollTo;
74
+ function navigate(pathname) {
75
+ var search = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
76
+ router.routeInfo = {
77
+ unstable_globalHref: `${pathname}${search}`,
78
+ pathname
79
+ };
80
+ (0, import_react_test_renderer.act)(function () {
81
+ var _subscriptions_root;
82
+ return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
83
+ });
84
+ location.pathname = pathname;
85
+ location.search = search;
86
+ }
63
87
  (0, import_vitest.beforeEach)(function () {
64
88
  process.env.VITE_ENVIRONMENT = "client";
65
89
  location = {
@@ -67,6 +91,10 @@ var scrollTo;
67
91
  search: "",
68
92
  hash: ""
69
93
  };
94
+ router.routeInfo = {
95
+ unstable_globalHref: "/",
96
+ pathname: "/"
97
+ };
70
98
  scrollTo = import_vitest.vi.fn();
71
99
  var windowMock = Object.assign(new EventTarget(), {
72
100
  location,
@@ -112,19 +140,11 @@ var scrollTo;
112
140
  (0, import_vitest.expect)(scrollTo).not.toHaveBeenCalled();
113
141
  });
114
142
  (0, import_vitest.it)("scrolls to the top when the first state notification is a real navigation", function () {
115
- location.pathname = "/compat/react-native-gesture-handler";
116
- (0, import_react_test_renderer.act)(function () {
117
- var _subscriptions_root;
118
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
119
- });
143
+ navigate("/compat/react-native-gesture-handler");
120
144
  (0, import_vitest.expect)(scrollTo).toHaveBeenCalledWith(0, 0);
121
145
  });
122
146
  (0, import_vitest.it)("handles a query change as a first navigation", function () {
123
- location.search = "?platform=ios";
124
- (0, import_react_test_renderer.act)(function () {
125
- var _subscriptions_root;
126
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
127
- });
147
+ navigate("/", "?platform=ios");
128
148
  (0, import_vitest.expect)(scrollTo).toHaveBeenCalledWith(0, 0);
129
149
  });
130
150
  });
@@ -132,25 +152,13 @@ var scrollTo;
132
152
  (0, import_vitest.it)("preserves position between routes in the same group", function () {
133
153
  import_vitest.vi.useFakeTimers();
134
154
  var unregister = (0, import_ScrollBehavior.registerScrollGroup)("/compat/react-native-gesture-handler");
135
- (0, import_react_test_renderer.act)(function () {
136
- var _subscriptions_root;
137
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
138
- });
139
- location.pathname = "/compat/react-native-gesture-handler";
140
- (0, import_react_test_renderer.act)(function () {
141
- var _subscriptions_root;
142
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
143
- });
155
+ navigate("/compat/react-native-gesture-handler");
144
156
  scrollTo.mockClear();
145
157
  (0, import_react_test_renderer.act)(function () {
146
158
  var _subscriptions_loading;
147
159
  return (_subscriptions_loading = subscriptions.loading) === null || _subscriptions_loading === void 0 ? void 0 : _subscriptions_loading.call(subscriptions, "loading");
148
160
  });
149
- location.pathname = "/compat/react-native-gesture-handler/pan-gesture";
150
- (0, import_react_test_renderer.act)(function () {
151
- var _subscriptions_root;
152
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
153
- });
161
+ navigate("/compat/react-native-gesture-handler/pan-gesture");
154
162
  import_vitest.vi.runAllTimers();
155
163
  (0, import_vitest.expect)(scrollTo).toHaveBeenCalledWith(0, 500);
156
164
  unregister();
@@ -158,25 +166,13 @@ var scrollTo;
158
166
  });
159
167
  (0, import_vitest.it)("does not match a different route whose slug has the same prefix", function () {
160
168
  var unregister = (0, import_ScrollBehavior.registerScrollGroup)("/compat/react-native");
161
- (0, import_react_test_renderer.act)(function () {
162
- var _subscriptions_root;
163
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
164
- });
165
- location.pathname = "/compat/react-native/core";
166
- (0, import_react_test_renderer.act)(function () {
167
- var _subscriptions_root;
168
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
169
- });
169
+ navigate("/compat/react-native/core");
170
170
  scrollTo.mockClear();
171
171
  (0, import_react_test_renderer.act)(function () {
172
172
  var _subscriptions_loading;
173
173
  return (_subscriptions_loading = subscriptions.loading) === null || _subscriptions_loading === void 0 ? void 0 : _subscriptions_loading.call(subscriptions, "loading");
174
174
  });
175
- location.pathname = "/compat/react-native-gesture-handler";
176
- (0, import_react_test_renderer.act)(function () {
177
- var _subscriptions_root;
178
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
179
- });
175
+ navigate("/compat/react-native-gesture-handler");
180
176
  (0, import_vitest.expect)(scrollTo).toHaveBeenCalledWith(0, 0);
181
177
  unregister();
182
178
  });
@@ -1 +1 @@
1
- {"version":3,"names":["import_jsx_runtime","require","import_react","__toESM","import_react_test_renderer","import_vitest","import_ScrollBehavior","subscriptions","vi","hoisted","loading","root","mock","setLastAction","fn","subscribeToLoadingState","subscriber","subscribeToRootState","globalThis","IS_REACT_ACT_ENVIRONMENT","renderer","location","scrollTo","beforeEach","process","env","VITE_ENVIRONMENT","pathname","search","hash","windowMock","Object","assign","EventTarget","scrollY","storage","Map","stubGlobal","getElementById","getItem","key","_storage_get","get","setItem","value","set","removeItem","delete","act","default","create","jsx","ScrollBehavior","afterEach","unmount","useRealTimers","unstubAllGlobals","describe","it","_subscriptions_root","call","expect","not","toHaveBeenCalled","toHaveBeenCalledWith"],"sources":["../../../src/views/ScrollBehavior.test.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;gBACA;AACA,IAAAA,kBAAgE,GAAAC,OAAA;AA0BhE,IAAAC,YAAA,GAAAC,OAAA,CAAAF,OAAoD;AAmCjB,IAAAG,0BAAA,GAAAD,OAAA,CAAAF,OAAA;AA3DnC,IAAAI,aAAM,GAAAJ,OAAgB;AAAkB,IACtCK,qBAAS,GAAAL,OAAA;AAAA,IACTM,aAAM,GAAAF,aAAA,CAAAG,EAAA,CAAAC,OAAA;EACN;IAEFC,OAAA,OAAG;IACDC,IAAA;EACA;AAEF;AAAmCN,aACjC,CAAAG,EAAA,CAAAI,IAAA,uBAAuE;EACrE;IACAC,aAAa,EAAAR,aAAA,CAAAG,EAAA,CAAAM,EAAA;EACX;AAAwB;AAC1BT,aACF,CAAAG,EAAA,CAAAI,IAAA;EACA;IACEG,uBAAqB,WAAAA,CAAAC,UAAA;MACrBT,aAAa,CAAAG,OAAA,GAAAM,UAAA;MACX,mBAAc;QAChBT,aAAA,CAAAG,OAAA;MACF;IACA;IAIAO,oBAAmB,WAAAA,CAAAD,UAA2B;MAQ5CT,aAAA,CAAAI,IAAA,GAAAK,UAAA;MACA;QACAT,aAAA,CAAAI,IAAA;MAEJ;IACE;EACA;AACA;AAEAO,UAAM,CAAAC,wBAA2B,OAAI;AAAe,IAClDC,QAAA;AAAA,IACAC,QAAA;AAAA,IACAC,QAAA;AAAS,EACX,EAACjB,aAAA,CAAAkB,UAAA;EACDC,OAAM,CAAAC,GAAA,CAAAC,gBAAU,WAAI;EAEpBL,QAAA;IACAM,QAAA;IACAC,MAAA;IACEC,IAAA;EAA8C;EACiBP,QAC/D,GAAAjB,aAA6B,CAAAG,EAAA,CAAAM,EAAA,CAAQ;EACvC,IAACgB,UAAA,GAAAC,MAAA,CAAAC,MAAA,KAAAC,WAAA;IAEDZ,QAAA;IACEC,QAAA;IACDY,OAAA;EACF;EAAA,IAEDC,OAAA,kBAAU,IAAMC,GAAA;EACd/B,aAAA,CAAAG,EAAA,CAAA6B,UAAA,SAAI,EAAAP,UAAM;EACVzB,aAAW,CAAAG,EAAA,CAAA6B,UAAA;IACXC,cAAA,EAAGjC,aAAc,CAAAG,EAAA,CAAAM,EAAA;EACjB;EACAT,aAAO,CAAAG,EAAQ,CAAA6B,UAAI;IACpBE,OAAA,WAAAA,CAAAC,GAAA;MAED,IAAAC,YAAA;MACE,QAAAA,YAAG,GAAAN,OAAA,CAAAO,GAAA,CAAAF,GAAA,eAAAC,YAAA,cAAAA,YAAA,OAA8E;IAC/E;IAEAE,OAAA,WAAAA,CAAAH,GAAA,EAAAI,KAAO;MACR,OAAAT,OAAA,CAAAU,GAAA,CAAAL,GAAA,EAAAI,KAAA;IAED;IACEE,UAAS,WAAAA,CAAWN,GAAA;MAEpB,OAAAL,OAAA,CAAAY,MAAA,CAAAP,GAAA;IAEA;EACF,CAAC;EAED,IAAApC,0BAAG,CAAA4C,GAAA;IACD5B,QAAA,GAAShB,0BAAS,CAAA6C,OAAA,CAAAC,MAAA,oBAAAlD,kBAAA,CAAAmD,GAAA,EAAA7C,qBAAA,CAAA8C,cAAA;EAElB;AAEA;AAA0C,EAC5C,EAAC/C,aAAA,CAAAgD,SAAA;EACF,IAAAjD,0BAAA,CAAA4C,GAAA;IAED,OAAA5B,QAAA,SAAS,IAAAA,QAAA,cAAyB,KAAM,IAAAA,QAAA,CAAAkC,OAAA;EACtC;EACElC,QAAA;EACAf,aAAM,CAAAG,EAAA,CAAA+C,aAAa;EAEnBlD,aAAA,CAAAG,EAAA,CAAAgD,gBAAA;EACA,OAAAhC,OAAS,CAAAC,GAAA,CAAAC,gBAAW;AACpB;AACA,IAAArB,aAAS,CAAAoD,QAAU;EAEnB,IAAApD,aAAA,CAAAqD,EAAA,8EAA4C;IAC5C,IAAAtD,0BAAoB,CAAA4C,GAAA;MACpB,IAAAW,mBAAA;MACA,QAAAA,mBAAG,GAAapD,aAAA,CAAAI,IAAA,cAAAgD,mBAAA,uBAAAA,mBAAA,CAAAC,IAAA,CAAArD,aAAA;IAEhB;IAEA,IAAAF,aAAW,CAAAwD,MAAA,EAAAvC,QAAA,EAAAwC,GAAA,CAAAC,gBAAA;EACX;EACF,CAAC,GAAA1D,aAAA,CAAAqD,EAAA;IAEDrC,QAAA,CAAAM,QAAA,GAAG;IACD,IAAAvB,0BAAmB,CAAA4C,GAAA;MAEnB,IAAAW,mBAAA;MACA,OAAS,CAAAA,mBAAW,GAAApD,aAAA,CAAAI,IAAA,cAAAgD,mBAAA,uBAAAA,mBAAA,CAAAC,IAAA,CAAArD,aAAA;IACpB;IACA,IAAAF,aAAS,CAAAwD,MAAU,EAAAvC,QAAA,EAAA0C,oBAAA;EAEnB;EACA,IAAA3D,aAAS,CAAAqD,EAAA,EAAW;IACpBrC,QAAA,CAAAO,MAAA;IAEA,IAAAxB,0BAAO,CAAA4C,GAAQ,EAAE;MAEjB,IAAAW,mBAAW;MACZ,QAAAA,mBAAA,GAAApD,aAAA,CAAAI,IAAA,cAAAgD,mBAAA,uBAAAA,mBAAA,CAAAC,IAAA,CAAArD,aAAA;IACF","ignoreList":[]}
1
+ {"version":3,"names":["import_jsx_runtime","require","import_react","__toESM","import_react_test_renderer","import_vitest","import_ScrollBehavior","subscriptions","vi","hoisted","loading","root","router","routeInfo","unstable_globalHref","pathname","mock","setLastAction","fn","subscribeToLoadingState","subscriber","subscribeToRootState","globalThis","IS_REACT_ACT_ENVIRONMENT","renderer","location","scrollTo","navigate","search","arguments","length","act","_subscriptions_root","call","beforeEach","process","env","VITE_ENVIRONMENT","hash","windowMock","Object","assign","EventTarget","scrollY","storage","Map","stubGlobal","getElementById","getItem","key","_storage_get","get","setItem","value","set","removeItem","delete","default","create","jsx","ScrollBehavior","afterEach","unmount","useRealTimers","unstubAllGlobals"],"sources":["../../../src/views/ScrollBehavior.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  import { useEffect } from "react";
2
2
  import { setLastAction } from "../router/lastAction.mjs";
3
- import { subscribeToLoadingState, subscribeToRootState } from "../router/router.mjs";
3
+ import { routeInfo, subscribeToLoadingState, subscribeToRootState } from "../router/router.mjs";
4
4
  const KEY = "one-sr";
5
5
  const GROUP_KEY = "one-sr-groups";
6
6
  const getState = () => JSON.parse(sessionStorage.getItem(KEY) || "{}");
@@ -71,7 +71,7 @@ function configure(props) {
71
71
  return;
72
72
  }
73
73
  disable?.();
74
- const initialLocation = `${window.location.pathname}${window.location.search}${window.location.hash}`;
74
+ const initialLocation = `${window.location.pathname}${window.location.search}`;
75
75
  let isFirstStateChange = true;
76
76
  previousPathname = window.location.pathname;
77
77
  const popStateController = new AbortController();
@@ -87,10 +87,11 @@ function configure(props) {
87
87
  }
88
88
  });
89
89
  const disposeOnRootState = subscribeToRootState(state => {
90
+ const currentHref = routeInfo?.unstable_globalHref ?? "";
91
+ const currentPathname = routeInfo?.pathname ?? "";
90
92
  if (isFirstStateChange) {
91
93
  isFirstStateChange = false;
92
- const currentLocation = `${window.location.pathname}${window.location.search}${window.location.hash}`;
93
- if (currentLocation === initialLocation) {
94
+ if (currentHref === initialLocation) {
94
95
  return;
95
96
  }
96
97
  }
@@ -100,7 +101,6 @@ function configure(props) {
100
101
  const {
101
102
  hash
102
103
  } = state;
103
- const currentPathname = window.location.pathname;
104
104
  if (hash) {
105
105
  setTimeout(() => {
106
106
  scrollToHash(hash);
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","setLastAction","subscribeToLoadingState","subscribeToRootState","KEY","GROUP_KEY","getState","JSON","parse","sessionStorage","getItem","getGroupState","activeGroups","Set","registerScrollGroup","groupId","add","delete","getGroupKey","pathname","longestMatch","group","startsWith","length","restorePosition","positions","saved","window","location","setTimeout","scrollTo","error","console","removeItem","restoreGroupPosition","didPop","previousPathname","rememberScrollPosition","state","scrollY","setItem","stringify","groupKey","groupState","disable","configure","props","addEventListener","initialLocation","search","hash","isFirstStateChange","popStateController","AbortController","signal","disposeOnLoadState","disposeOnRootState","currentLocation","linkOptions","scroll","currentPathname","scrollToHash","prevGroup","currentGroup","scrollGroup","abort","id","slice","el","document","getElementById","scrollIntoView","behavior","ScrollBehavior","process","env","VITE_ENVIRONMENT"],"sources":["../../../src/views/ScrollBehavior.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","setLastAction","routeInfo","subscribeToLoadingState","subscribeToRootState","KEY","GROUP_KEY","getState","JSON","parse","sessionStorage","getItem","getGroupState","activeGroups","Set","registerScrollGroup","groupId","add","delete","getGroupKey","pathname","longestMatch","group","startsWith","length","restorePosition","positions","saved","window","location","setTimeout","scrollTo","error","console","removeItem","restoreGroupPosition","didPop","previousPathname","rememberScrollPosition","state","scrollY","setItem","stringify","groupKey","groupState","disable","configure","props","addEventListener","initialLocation","search","isFirstStateChange","popStateController","AbortController","signal","disposeOnLoadState","disposeOnRootState","currentHref","unstable_globalHref","currentPathname","linkOptions","scroll","hash","scrollToHash","prevGroup","currentGroup","scrollGroup","abort","id","slice","el","document","getElementById","scrollIntoView","behavior","ScrollBehavior","process","env","VITE_ENVIRONMENT"],"sources":["../../../src/views/ScrollBehavior.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  import { useEffect } from "react";
2
2
  import { setLastAction } from "../router/lastAction.native.js";
3
- import { subscribeToLoadingState, subscribeToRootState } from "../router/router.native.js";
3
+ import { routeInfo, subscribeToLoadingState, subscribeToRootState } from "../router/router.native.js";
4
4
  var KEY = "one-sr";
5
5
  var GROUP_KEY = "one-sr-groups";
6
6
  var getState = function () {
@@ -94,7 +94,7 @@ function configure(props) {
94
94
  return;
95
95
  }
96
96
  disable === null || disable === void 0 ? void 0 : disable();
97
- var initialLocation = `${window.location.pathname}${window.location.search}${window.location.hash}`;
97
+ var initialLocation = `${window.location.pathname}${window.location.search}`;
98
98
  var isFirstStateChange = true;
99
99
  previousPathname = window.location.pathname;
100
100
  var popStateController = new AbortController();
@@ -110,11 +110,13 @@ function configure(props) {
110
110
  }
111
111
  });
112
112
  var disposeOnRootState = subscribeToRootState(function (state) {
113
+ var _ref, _ref1;
113
114
  var _state_linkOptions;
115
+ var currentHref = (_ref = routeInfo === null || routeInfo === void 0 ? void 0 : routeInfo.unstable_globalHref) !== null && _ref !== void 0 ? _ref : "";
116
+ var currentPathname = (_ref1 = routeInfo === null || routeInfo === void 0 ? void 0 : routeInfo.pathname) !== null && _ref1 !== void 0 ? _ref1 : "";
114
117
  if (isFirstStateChange) {
115
118
  isFirstStateChange = false;
116
- var currentLocation = `${window.location.pathname}${window.location.search}${window.location.hash}`;
117
- if (currentLocation === initialLocation) {
119
+ if (currentHref === initialLocation) {
118
120
  return;
119
121
  }
120
122
  }
@@ -124,7 +126,6 @@ function configure(props) {
124
126
  var {
125
127
  hash
126
128
  } = state;
127
- var currentPathname = window.location.pathname;
128
129
  if (hash) {
129
130
  setTimeout(function () {
130
131
  scrollToHash(hash);
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","setLastAction","subscribeToLoadingState","subscribeToRootState","KEY","GROUP_KEY","getState","JSON","parse","sessionStorage","getItem","getGroupState","activeGroups","Set","registerScrollGroup","groupId","add","delete","getGroupKey","pathname","longestMatch","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","group","value","startsWith","length","err","return","restorePosition","positions","saved","window","location","setTimeout","scrollTo","error","console","removeItem","restoreGroupPosition","didPop","previousPathname","rememberScrollPosition","state","scrollY","setItem","stringify","groupKey","groupState","disable","configure","props","addEventListener","initialLocation","search","hash","isFirstStateChange","popStateController","AbortController","signal","disposeOnLoadState","disposeOnRootState","_state_linkOptions","currentLocation","linkOptions","scroll","currentPathname","scrollToHash","_state_linkOptions1","prevGroup","currentGroup","scrollGroup","abort"],"sources":["../../../src/views/ScrollBehavior.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","setLastAction","routeInfo","subscribeToLoadingState","subscribeToRootState","KEY","GROUP_KEY","getState","JSON","parse","sessionStorage","getItem","getGroupState","activeGroups","Set","registerScrollGroup","groupId","add","delete","getGroupKey","pathname","longestMatch","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","group","value","startsWith","length","err","return","restorePosition","positions","saved","window","location","setTimeout","scrollTo","error","console","removeItem","restoreGroupPosition","didPop","previousPathname","rememberScrollPosition","state","scrollY","setItem","stringify","groupKey","groupState","disable","configure","props","addEventListener","initialLocation","search","isFirstStateChange","popStateController","AbortController","signal","disposeOnLoadState","disposeOnRootState","_ref","_ref1","_state_linkOptions","currentHref","unstable_globalHref","currentPathname","linkOptions","scroll","hash","scrollToHash","_state_linkOptions1","prevGroup","currentGroup","scrollGroup","abort"],"sources":["../../../src/views/ScrollBehavior.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -6,10 +6,19 @@ const subscriptions = vi.hoisted(() => ({
6
6
  loading: void 0,
7
7
  root: void 0
8
8
  }));
9
+ const router = vi.hoisted(() => ({
10
+ routeInfo: {
11
+ unstable_globalHref: "/",
12
+ pathname: "/"
13
+ }
14
+ }));
9
15
  vi.mock("../router/lastAction", () => ({
10
16
  setLastAction: vi.fn()
11
17
  }));
12
18
  vi.mock("../router/router", () => ({
19
+ get routeInfo() {
20
+ return router.routeInfo;
21
+ },
13
22
  subscribeToLoadingState: subscriber => {
14
23
  subscriptions.loading = subscriber;
15
24
  return () => {
@@ -27,6 +36,15 @@ globalThis.IS_REACT_ACT_ENVIRONMENT = true;
27
36
  let renderer;
28
37
  let location;
29
38
  let scrollTo;
39
+ function navigate(pathname, search = "") {
40
+ router.routeInfo = {
41
+ unstable_globalHref: `${pathname}${search}`,
42
+ pathname
43
+ };
44
+ act(() => subscriptions.root?.({}));
45
+ location.pathname = pathname;
46
+ location.search = search;
47
+ }
30
48
  beforeEach(() => {
31
49
  process.env.VITE_ENVIRONMENT = "client";
32
50
  location = {
@@ -34,6 +52,10 @@ beforeEach(() => {
34
52
  search: "",
35
53
  hash: ""
36
54
  };
55
+ router.routeInfo = {
56
+ unstable_globalHref: "/",
57
+ pathname: "/"
58
+ };
37
59
  scrollTo = vi.fn();
38
60
  const windowMock = Object.assign(new EventTarget(), {
39
61
  location,
@@ -67,13 +89,11 @@ describe("ScrollBehavior initial navigation", () => {
67
89
  expect(scrollTo).not.toHaveBeenCalled();
68
90
  });
69
91
  it("scrolls to the top when the first state notification is a real navigation", () => {
70
- location.pathname = "/compat/react-native-gesture-handler";
71
- act(() => subscriptions.root?.({}));
92
+ navigate("/compat/react-native-gesture-handler");
72
93
  expect(scrollTo).toHaveBeenCalledWith(0, 0);
73
94
  });
74
95
  it("handles a query change as a first navigation", () => {
75
- location.search = "?platform=ios";
76
- act(() => subscriptions.root?.({}));
96
+ navigate("/", "?platform=ios");
77
97
  expect(scrollTo).toHaveBeenCalledWith(0, 0);
78
98
  });
79
99
  });
@@ -81,13 +101,10 @@ describe("ScrollBehavior groups", () => {
81
101
  it("preserves position between routes in the same group", () => {
82
102
  vi.useFakeTimers();
83
103
  const unregister = registerScrollGroup("/compat/react-native-gesture-handler");
84
- act(() => subscriptions.root?.({}));
85
- location.pathname = "/compat/react-native-gesture-handler";
86
- act(() => subscriptions.root?.({}));
104
+ navigate("/compat/react-native-gesture-handler");
87
105
  scrollTo.mockClear();
88
106
  act(() => subscriptions.loading?.("loading"));
89
- location.pathname = "/compat/react-native-gesture-handler/pan-gesture";
90
- act(() => subscriptions.root?.({}));
107
+ navigate("/compat/react-native-gesture-handler/pan-gesture");
91
108
  vi.runAllTimers();
92
109
  expect(scrollTo).toHaveBeenCalledWith(0, 500);
93
110
  unregister();
@@ -95,13 +112,10 @@ describe("ScrollBehavior groups", () => {
95
112
  });
96
113
  it("does not match a different route whose slug has the same prefix", () => {
97
114
  const unregister = registerScrollGroup("/compat/react-native");
98
- act(() => subscriptions.root?.({}));
99
- location.pathname = "/compat/react-native/core";
100
- act(() => subscriptions.root?.({}));
115
+ navigate("/compat/react-native/core");
101
116
  scrollTo.mockClear();
102
117
  act(() => subscriptions.loading?.("loading"));
103
- location.pathname = "/compat/react-native-gesture-handler";
104
- act(() => subscriptions.root?.({}));
118
+ navigate("/compat/react-native-gesture-handler");
105
119
  expect(scrollTo).toHaveBeenCalledWith(0, 0);
106
120
  unregister();
107
121
  });
@@ -1 +1 @@
1
- {"version":3,"names":["TestRenderer","act","afterEach","beforeEach","describe","expect","it","vi","registerScrollGroup","ScrollBehavior","jsx","subscriptions","hoisted","loading","root","mock","setLastAction","fn","subscribeToLoadingState","subscriber","subscribeToRootState","globalThis","IS_REACT_ACT_ENVIRONMENT","renderer","location","scrollTo","process","env","VITE_ENVIRONMENT","pathname","search","hash","windowMock","Object","assign","EventTarget","scrollY","storage","Map","stubGlobal","getElementById","getItem","key","get","setItem","value","set","removeItem","delete","create","unmount","useRealTimers","unstubAllGlobals","not","toHaveBeenCalled","toHaveBeenCalledWith","useFakeTimers","unregister","mockClear","runAllTimers"],"sources":["../../../src/views/ScrollBehavior.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["TestRenderer","act","afterEach","beforeEach","describe","expect","it","vi","registerScrollGroup","ScrollBehavior","jsx","subscriptions","hoisted","loading","root","router","routeInfo","unstable_globalHref","pathname","mock","setLastAction","fn","subscribeToLoadingState","subscriber","subscribeToRootState","globalThis","IS_REACT_ACT_ENVIRONMENT","renderer","location","scrollTo","navigate","search","process","env","VITE_ENVIRONMENT","hash","windowMock","Object","assign","EventTarget","scrollY","storage","Map","stubGlobal","getElementById","getItem","key","get","setItem","value","set","removeItem","delete","create","unmount","useRealTimers","unstubAllGlobals","not","toHaveBeenCalled","toHaveBeenCalledWith","useFakeTimers","unregister","mockClear","runAllTimers"],"sources":["../../../src/views/ScrollBehavior.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -9,6 +9,14 @@ var subscriptions = vi.hoisted(function () {
9
9
  root: void 0
10
10
  };
11
11
  });
12
+ var router = vi.hoisted(function () {
13
+ return {
14
+ routeInfo: {
15
+ unstable_globalHref: "/",
16
+ pathname: "/"
17
+ }
18
+ };
19
+ });
12
20
  vi.mock("../router/lastAction", function () {
13
21
  return {
14
22
  setLastAction: vi.fn()
@@ -16,6 +24,9 @@ vi.mock("../router/lastAction", function () {
16
24
  });
17
25
  vi.mock("../router/router", function () {
18
26
  return {
27
+ get routeInfo() {
28
+ return router.routeInfo;
29
+ },
19
30
  subscribeToLoadingState: function (subscriber) {
20
31
  subscriptions.loading = subscriber;
21
32
  return function () {
@@ -34,6 +45,19 @@ globalThis.IS_REACT_ACT_ENVIRONMENT = true;
34
45
  var renderer;
35
46
  var location;
36
47
  var scrollTo;
48
+ function navigate(pathname) {
49
+ var search = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "";
50
+ router.routeInfo = {
51
+ unstable_globalHref: `${pathname}${search}`,
52
+ pathname
53
+ };
54
+ act(function () {
55
+ var _subscriptions_root;
56
+ return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
57
+ });
58
+ location.pathname = pathname;
59
+ location.search = search;
60
+ }
37
61
  beforeEach(function () {
38
62
  process.env.VITE_ENVIRONMENT = "client";
39
63
  location = {
@@ -41,6 +65,10 @@ beforeEach(function () {
41
65
  search: "",
42
66
  hash: ""
43
67
  };
68
+ router.routeInfo = {
69
+ unstable_globalHref: "/",
70
+ pathname: "/"
71
+ };
44
72
  scrollTo = vi.fn();
45
73
  var windowMock = Object.assign(new EventTarget(), {
46
74
  location,
@@ -86,19 +114,11 @@ describe("ScrollBehavior initial navigation", function () {
86
114
  expect(scrollTo).not.toHaveBeenCalled();
87
115
  });
88
116
  it("scrolls to the top when the first state notification is a real navigation", function () {
89
- location.pathname = "/compat/react-native-gesture-handler";
90
- act(function () {
91
- var _subscriptions_root;
92
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
93
- });
117
+ navigate("/compat/react-native-gesture-handler");
94
118
  expect(scrollTo).toHaveBeenCalledWith(0, 0);
95
119
  });
96
120
  it("handles a query change as a first navigation", function () {
97
- location.search = "?platform=ios";
98
- act(function () {
99
- var _subscriptions_root;
100
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
101
- });
121
+ navigate("/", "?platform=ios");
102
122
  expect(scrollTo).toHaveBeenCalledWith(0, 0);
103
123
  });
104
124
  });
@@ -106,25 +126,13 @@ describe("ScrollBehavior groups", function () {
106
126
  it("preserves position between routes in the same group", function () {
107
127
  vi.useFakeTimers();
108
128
  var unregister = registerScrollGroup("/compat/react-native-gesture-handler");
109
- act(function () {
110
- var _subscriptions_root;
111
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
112
- });
113
- location.pathname = "/compat/react-native-gesture-handler";
114
- act(function () {
115
- var _subscriptions_root;
116
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
117
- });
129
+ navigate("/compat/react-native-gesture-handler");
118
130
  scrollTo.mockClear();
119
131
  act(function () {
120
132
  var _subscriptions_loading;
121
133
  return (_subscriptions_loading = subscriptions.loading) === null || _subscriptions_loading === void 0 ? void 0 : _subscriptions_loading.call(subscriptions, "loading");
122
134
  });
123
- location.pathname = "/compat/react-native-gesture-handler/pan-gesture";
124
- act(function () {
125
- var _subscriptions_root;
126
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
127
- });
135
+ navigate("/compat/react-native-gesture-handler/pan-gesture");
128
136
  vi.runAllTimers();
129
137
  expect(scrollTo).toHaveBeenCalledWith(0, 500);
130
138
  unregister();
@@ -132,25 +140,13 @@ describe("ScrollBehavior groups", function () {
132
140
  });
133
141
  it("does not match a different route whose slug has the same prefix", function () {
134
142
  var unregister = registerScrollGroup("/compat/react-native");
135
- act(function () {
136
- var _subscriptions_root;
137
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
138
- });
139
- location.pathname = "/compat/react-native/core";
140
- act(function () {
141
- var _subscriptions_root;
142
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
143
- });
143
+ navigate("/compat/react-native/core");
144
144
  scrollTo.mockClear();
145
145
  act(function () {
146
146
  var _subscriptions_loading;
147
147
  return (_subscriptions_loading = subscriptions.loading) === null || _subscriptions_loading === void 0 ? void 0 : _subscriptions_loading.call(subscriptions, "loading");
148
148
  });
149
- location.pathname = "/compat/react-native-gesture-handler";
150
- act(function () {
151
- var _subscriptions_root;
152
- return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
153
- });
149
+ navigate("/compat/react-native-gesture-handler");
154
150
  expect(scrollTo).toHaveBeenCalledWith(0, 0);
155
151
  unregister();
156
152
  });
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","React","TestRenderer","act","afterEach","beforeEach","describe","expect","it","vi","registerScrollGroup","ScrollBehavior","subscriptions","hoisted","loading","root","mock","setLastAction","fn","subscribeToLoadingState","subscriber","subscribeToRootState","globalThis","IS_REACT_ACT_ENVIRONMENT","renderer","location","scrollTo","process","env","VITE_ENVIRONMENT","pathname","search","hash","windowMock","Object","assign","EventTarget","scrollY","storage","Map","stubGlobal","getElementById","getItem","key","_storage_get","get","setItem","value","set","removeItem","delete","create","unmount","useRealTimers","unstubAllGlobals","_subscriptions_root","call","not","toHaveBeenCalled","toHaveBeenCalledWith"],"sources":["../../../src/views/ScrollBehavior.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","React","TestRenderer","act","afterEach","beforeEach","describe","expect","it","vi","registerScrollGroup","ScrollBehavior","subscriptions","hoisted","loading","root","router","routeInfo","unstable_globalHref","pathname","mock","setLastAction","fn","subscribeToLoadingState","subscriber","subscribeToRootState","globalThis","IS_REACT_ACT_ENVIRONMENT","renderer","location","scrollTo","navigate","search","arguments","length","_subscriptions_root","call","process","env","VITE_ENVIRONMENT","hash","windowMock","Object","assign","EventTarget","scrollY","storage","Map","stubGlobal","getElementById","getItem","key","_storage_get","get","setItem","value","set","removeItem","delete","create","unmount","useRealTimers","unstubAllGlobals"],"sources":["../../../src/views/ScrollBehavior.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "one",
3
- "version": "1.25.11",
3
+ "version": "1.25.12",
4
4
  "license": "BSD-3-Clause",
5
5
  "sideEffects": [
6
6
  "setup.mjs",
@@ -193,18 +193,18 @@
193
193
  "@cloudflare/vite-plugin": "^1.33.1",
194
194
  "@swc/core": "^1.14.0",
195
195
  "@ungap/structured-clone": "^1.2.0",
196
- "@vxrn/color-scheme": "1.25.11",
197
- "@vxrn/compiler": "1.25.11",
198
- "@vxrn/resolve": "1.25.11",
199
- "@vxrn/tslib-lite": "1.25.11",
200
- "@vxrn/use-isomorphic-layout-effect": "1.25.11",
201
- "@vxrn/vite-plugin-metro": "1.25.11",
196
+ "@vxrn/color-scheme": "1.25.12",
197
+ "@vxrn/compiler": "1.25.12",
198
+ "@vxrn/resolve": "1.25.12",
199
+ "@vxrn/tslib-lite": "1.25.12",
200
+ "@vxrn/use-isomorphic-layout-effect": "1.25.12",
201
+ "@vxrn/vite-plugin-metro": "1.25.12",
202
202
  "babel-dead-code-elimination": "1.0.10",
203
203
  "babel-plugin-module-resolver": "^5.0.2",
204
204
  "babel-preset-expo": "~57.0.5",
205
205
  "citty": "^0.1.6",
206
206
  "core-js": "^3.38.1",
207
- "create-vxrn": "1.25.11",
207
+ "create-vxrn": "1.25.12",
208
208
  "escape-string-regexp": "^5.0.0",
209
209
  "expo-linking": "~57.0.5",
210
210
  "expo-modules-core": "~57.0.10",
@@ -224,7 +224,7 @@
224
224
  "tsconfig-paths": "^4",
225
225
  "use-latest-callback": "^0.2.3",
226
226
  "vite": "^8.2.2",
227
- "vxrn": "1.25.11",
227
+ "vxrn": "1.25.12",
228
228
  "web-streams-polyfill": "^4.3.0",
229
229
  "ws": "^8.21.0",
230
230
  "xxhashjs": "^0.2.2"
@@ -7,11 +7,25 @@ const subscriptions = vi.hoisted(() => ({
7
7
  root: undefined as ((state: any) => void) | undefined,
8
8
  }))
9
9
 
10
+ // the router's committed route. updateState writes this and then notifies root
11
+ // state subscribers, so it is current inside the subscriber while
12
+ // window.location still points at the route being left — react-navigation's
13
+ // linking listener writes the URL after. every test below drives the two in
14
+ // that order.
15
+ const router = vi.hoisted(() => ({
16
+ routeInfo: { unstable_globalHref: '/', pathname: '/' } as
17
+ | { unstable_globalHref: string; pathname: string }
18
+ | undefined,
19
+ }))
20
+
10
21
  vi.mock('../router/lastAction', () => ({
11
22
  setLastAction: vi.fn(),
12
23
  }))
13
24
 
14
25
  vi.mock('../router/router', () => ({
26
+ get routeInfo() {
27
+ return router.routeInfo
28
+ },
15
29
  subscribeToLoadingState: (subscriber: typeof subscriptions.loading) => {
16
30
  subscriptions.loading = subscriber
17
31
  return () => {
@@ -40,9 +54,19 @@ let renderer: TestRenderer.ReactTestRenderer | undefined
40
54
  let location: MockLocation
41
55
  let scrollTo: ReturnType<typeof vi.fn>
42
56
 
57
+ // one navigation, in the order the router performs it: commit the route, notify
58
+ // subscribers, then let the linking listener catch the URL up.
59
+ function navigate(pathname: string, search = '') {
60
+ router.routeInfo = { unstable_globalHref: `${pathname}${search}`, pathname }
61
+ act(() => subscriptions.root?.({}))
62
+ location.pathname = pathname
63
+ location.search = search
64
+ }
65
+
43
66
  beforeEach(() => {
44
67
  process.env.VITE_ENVIRONMENT = 'client'
45
68
  location = { pathname: '/', search: '', hash: '' }
69
+ router.routeInfo = { unstable_globalHref: '/', pathname: '/' }
46
70
  scrollTo = vi.fn()
47
71
 
48
72
  const windowMock = Object.assign(new EventTarget(), {
@@ -81,17 +105,13 @@ describe('ScrollBehavior initial navigation', () => {
81
105
  })
82
106
 
83
107
  it('scrolls to the top when the first state notification is a real navigation', () => {
84
- location.pathname = '/compat/react-native-gesture-handler'
85
-
86
- act(() => subscriptions.root?.({}))
108
+ navigate('/compat/react-native-gesture-handler')
87
109
 
88
110
  expect(scrollTo).toHaveBeenCalledWith(0, 0)
89
111
  })
90
112
 
91
113
  it('handles a query change as a first navigation', () => {
92
- location.search = '?platform=ios'
93
-
94
- act(() => subscriptions.root?.({}))
114
+ navigate('/', '?platform=ios')
95
115
 
96
116
  expect(scrollTo).toHaveBeenCalledWith(0, 0)
97
117
  })
@@ -102,14 +122,11 @@ describe('ScrollBehavior groups', () => {
102
122
  vi.useFakeTimers()
103
123
  const unregister = registerScrollGroup('/compat/react-native-gesture-handler')
104
124
 
105
- act(() => subscriptions.root?.({}))
106
- location.pathname = '/compat/react-native-gesture-handler'
107
- act(() => subscriptions.root?.({}))
125
+ navigate('/compat/react-native-gesture-handler')
108
126
  scrollTo.mockClear()
109
127
 
110
128
  act(() => subscriptions.loading?.('loading'))
111
- location.pathname = '/compat/react-native-gesture-handler/pan-gesture'
112
- act(() => subscriptions.root?.({}))
129
+ navigate('/compat/react-native-gesture-handler/pan-gesture')
113
130
  vi.runAllTimers()
114
131
 
115
132
  expect(scrollTo).toHaveBeenCalledWith(0, 500)
@@ -121,14 +138,11 @@ describe('ScrollBehavior groups', () => {
121
138
  it('does not match a different route whose slug has the same prefix', () => {
122
139
  const unregister = registerScrollGroup('/compat/react-native')
123
140
 
124
- act(() => subscriptions.root?.({}))
125
- location.pathname = '/compat/react-native/core'
126
- act(() => subscriptions.root?.({}))
141
+ navigate('/compat/react-native/core')
127
142
  scrollTo.mockClear()
128
143
 
129
144
  act(() => subscriptions.loading?.('loading'))
130
- location.pathname = '/compat/react-native-gesture-handler'
131
- act(() => subscriptions.root?.({}))
145
+ navigate('/compat/react-native-gesture-handler')
132
146
 
133
147
  expect(scrollTo).toHaveBeenCalledWith(0, 0)
134
148
 
@@ -1,6 +1,6 @@
1
1
  import { useEffect } from 'react'
2
2
  import { setLastAction } from '../router/lastAction'
3
- import { subscribeToLoadingState, subscribeToRootState } from '../router/router'
3
+ import { routeInfo, subscribeToLoadingState, subscribeToRootState } from '../router/router'
4
4
 
5
5
  const KEY = 'one-sr'
6
6
  const GROUP_KEY = 'one-sr-groups'
@@ -105,8 +105,8 @@ function configure(props: ScrollBehaviorProps) {
105
105
 
106
106
  disable?.()
107
107
 
108
- const initialLocation =
109
- `${window.location.pathname}${window.location.search}${window.location.hash}`
108
+ // routeInfo carries no hash, so the mount comparison below is pathname+search
109
+ const initialLocation = `${window.location.pathname}${window.location.search}`
110
110
  let isFirstStateChange = true
111
111
  previousPathname = window.location.pathname
112
112
 
@@ -130,16 +130,21 @@ function configure(props: ScrollBehaviorProps) {
130
130
  })
131
131
 
132
132
  const disposeOnRootState = subscribeToRootState((state) => {
133
+ // updateState refreshes routeInfo and then notifies these subscribers, all
134
+ // before react-navigation's linking listener writes the new URL. so
135
+ // window.location here still reports the route being left, and the router's
136
+ // own route info is the only current view of where we just navigated to.
137
+ const currentHref = routeInfo?.unstable_globalHref ?? ''
138
+ const currentPathname = routeInfo?.pathname ?? ''
139
+
133
140
  if (isFirstStateChange) {
134
141
  isFirstStateChange = false
135
142
 
136
143
  // Depending on navigator mount timing, the initial state notification may
137
144
  // happen before or after this effect subscribes. Only ignore it when the
138
- // browser is still at the URL where ScrollBehavior mounted. Otherwise this
145
+ // router is still on the route where ScrollBehavior mounted. Otherwise this
139
146
  // is the first real navigation and must receive normal scroll handling.
140
- const currentLocation =
141
- `${window.location.pathname}${window.location.search}${window.location.hash}`
142
- if (currentLocation === initialLocation) {
147
+ if (currentHref === initialLocation) {
143
148
  return
144
149
  }
145
150
  }
@@ -149,7 +154,6 @@ function configure(props: ScrollBehaviorProps) {
149
154
  }
150
155
 
151
156
  const { hash } = state
152
- const currentPathname = window.location.pathname
153
157
 
154
158
  if (hash) {
155
159
  setTimeout(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"ScrollBehavior.d.ts","sourceRoot":"","sources":["../../src/views/ScrollBehavior.tsx"],"names":[],"mappings":"AAaA;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,cAKlD;AAqED,KAAK,mBAAmB,GAAG;IACzB,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC9B,CAAA;AAwGD,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,QAcxD"}
1
+ {"version":3,"file":"ScrollBehavior.d.ts","sourceRoot":"","sources":["../../src/views/ScrollBehavior.tsx"],"names":[],"mappings":"AAaA;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,cAKlD;AAqED,KAAK,mBAAmB,GAAG;IACzB,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC9B,CAAA;AA4GD,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,QAcxD"}