one 1.25.7 → 1.25.8
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/cjs/cli/prebuild.cjs +2 -0
- package/dist/cjs/cli/prebuild.native.js +2 -0
- package/dist/cjs/cli/prebuild.native.js.map +1 -1
- package/dist/cjs/cli/prebuild.test.cjs +45 -0
- package/dist/cjs/cli/prebuild.test.native.js +54 -0
- package/dist/cjs/cli/prebuild.test.native.js.map +1 -0
- package/dist/cjs/createHandleRequest.cjs +5 -1
- package/dist/cjs/createHandleRequest.native.js +5 -1
- package/dist/cjs/createHandleRequest.native.js.map +1 -1
- package/dist/cjs/createHandleRequest.test.cjs +59 -1
- package/dist/cjs/createHandleRequest.test.native.js +70 -0
- package/dist/cjs/createHandleRequest.test.native.js.map +1 -1
- package/dist/cjs/server/oneServe.cjs +0 -2
- package/dist/cjs/server/oneServe.native.js +0 -2
- package/dist/cjs/server/oneServe.native.js.map +1 -1
- package/dist/cjs/server/workerHandler.cjs +1 -1
- package/dist/cjs/server/workerHandler.native.js +1 -1
- package/dist/cjs/server/workerHandler.native.js.map +1 -1
- package/dist/cjs/server/workerHandler.test.cjs +117 -0
- package/dist/cjs/server/workerHandler.test.native.js +137 -0
- package/dist/cjs/server/workerHandler.test.native.js.map +1 -0
- package/dist/cjs/views/ScrollBehavior.cjs +10 -6
- package/dist/cjs/views/ScrollBehavior.native.js +10 -6
- package/dist/cjs/views/ScrollBehavior.native.js.map +1 -1
- package/dist/cjs/views/ScrollBehavior.test.cjs +132 -0
- package/dist/cjs/views/ScrollBehavior.test.native.js +184 -0
- package/dist/cjs/views/ScrollBehavior.test.native.js.map +1 -0
- package/dist/esm/cli/prebuild.mjs +2 -0
- package/dist/esm/cli/prebuild.mjs.map +1 -1
- package/dist/esm/cli/prebuild.native.js +2 -0
- package/dist/esm/cli/prebuild.native.js.map +1 -1
- package/dist/esm/cli/prebuild.test.mjs +46 -0
- package/dist/esm/cli/prebuild.test.mjs.map +1 -0
- package/dist/esm/cli/prebuild.test.native.js +52 -0
- package/dist/esm/cli/prebuild.test.native.js.map +1 -0
- package/dist/esm/createHandleRequest.mjs +5 -2
- package/dist/esm/createHandleRequest.mjs.map +1 -1
- package/dist/esm/createHandleRequest.native.js +5 -2
- package/dist/esm/createHandleRequest.native.js.map +1 -1
- package/dist/esm/createHandleRequest.test.mjs +59 -1
- package/dist/esm/createHandleRequest.test.mjs.map +1 -1
- package/dist/esm/createHandleRequest.test.native.js +70 -0
- package/dist/esm/createHandleRequest.test.native.js.map +1 -1
- package/dist/esm/server/oneServe.mjs +0 -2
- package/dist/esm/server/oneServe.mjs.map +1 -1
- package/dist/esm/server/oneServe.native.js +0 -2
- package/dist/esm/server/oneServe.native.js.map +1 -1
- package/dist/esm/server/workerHandler.mjs +2 -2
- package/dist/esm/server/workerHandler.mjs.map +1 -1
- package/dist/esm/server/workerHandler.native.js +2 -2
- package/dist/esm/server/workerHandler.native.js.map +1 -1
- package/dist/esm/server/workerHandler.test.mjs +118 -0
- package/dist/esm/server/workerHandler.test.mjs.map +1 -0
- package/dist/esm/server/workerHandler.test.native.js +135 -0
- package/dist/esm/server/workerHandler.test.native.js.map +1 -0
- package/dist/esm/views/ScrollBehavior.mjs +10 -6
- package/dist/esm/views/ScrollBehavior.mjs.map +1 -1
- package/dist/esm/views/ScrollBehavior.native.js +10 -6
- package/dist/esm/views/ScrollBehavior.native.js.map +1 -1
- package/dist/esm/views/ScrollBehavior.test.mjs +109 -0
- package/dist/esm/views/ScrollBehavior.test.mjs.map +1 -0
- package/dist/esm/views/ScrollBehavior.test.native.js +158 -0
- package/dist/esm/views/ScrollBehavior.test.native.js.map +1 -0
- package/package.json +9 -9
- package/src/cli/prebuild.test.ts +48 -0
- package/src/cli/prebuild.ts +3 -0
- package/src/createHandleRequest.test.ts +55 -1
- package/src/createHandleRequest.ts +8 -1
- package/src/server/oneServe.ts +0 -2
- package/src/server/workerHandler.test.ts +125 -0
- package/src/server/workerHandler.ts +3 -2
- package/src/views/ScrollBehavior.test.tsx +137 -0
- package/src/views/ScrollBehavior.tsx +18 -8
- package/types/cli/prebuild.d.ts.map +1 -1
- package/types/cli/prebuild.test.d.ts +2 -0
- package/types/cli/prebuild.test.d.ts.map +1 -0
- package/types/createHandleRequest.d.ts +1 -0
- package/types/createHandleRequest.d.ts.map +1 -1
- package/types/server/oneServe.d.ts.map +1 -1
- package/types/server/workerHandler.d.ts.map +1 -1
- package/types/server/workerHandler.test.d.ts +2 -0
- package/types/server/workerHandler.test.d.ts.map +1 -0
- package/types/views/ScrollBehavior.d.ts.map +1 -1
- package/types/views/ScrollBehavior.test.d.ts +2 -0
- package/types/views/ScrollBehavior.test.d.ts.map +1 -0
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { afterEach, describe, expect, it, vi } from "vitest";
|
|
2
|
+
import { createWorkerHandler } from "./workerHandler.native.js";
|
|
3
|
+
function _instanceof(left, right) {
|
|
4
|
+
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
5
|
+
return !!right[Symbol.hasInstance](left);
|
|
6
|
+
} else {
|
|
7
|
+
return left instanceof right;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
var pageRoute = {
|
|
11
|
+
file: "app/some-page.tsx",
|
|
12
|
+
page: "/some-page",
|
|
13
|
+
namedRegex: "^/some-page(?:/)?$",
|
|
14
|
+
urlPath: "/some-page",
|
|
15
|
+
urlCleanPath: "/some-page",
|
|
16
|
+
routeKeys: {},
|
|
17
|
+
type: "ssr",
|
|
18
|
+
middlewares: []
|
|
19
|
+
};
|
|
20
|
+
var apiRoute = {
|
|
21
|
+
file: "app/api/status+api.ts",
|
|
22
|
+
page: "/api/status",
|
|
23
|
+
namedRegex: "^/api/status(?:/)?$",
|
|
24
|
+
urlPath: "/api/status",
|
|
25
|
+
urlCleanPath: "/api/status",
|
|
26
|
+
routeKeys: {},
|
|
27
|
+
type: "api",
|
|
28
|
+
middlewares: []
|
|
29
|
+
};
|
|
30
|
+
var buildInfo = {
|
|
31
|
+
constants: {
|
|
32
|
+
CACHE_KEY: "test"
|
|
33
|
+
},
|
|
34
|
+
routeToBuildInfo: {
|
|
35
|
+
[pageRoute.file]: {
|
|
36
|
+
type: "ssr",
|
|
37
|
+
path: pageRoute.page,
|
|
38
|
+
routeFile: pageRoute.file,
|
|
39
|
+
middlewares: [],
|
|
40
|
+
preloadPath: "",
|
|
41
|
+
cssPreloadPath: "",
|
|
42
|
+
loaderPath: "",
|
|
43
|
+
cleanPath: pageRoute.page,
|
|
44
|
+
htmlPath: "",
|
|
45
|
+
clientJsPath: "",
|
|
46
|
+
serverJsPath: "",
|
|
47
|
+
params: {},
|
|
48
|
+
preloads: [],
|
|
49
|
+
css: [],
|
|
50
|
+
layoutCSS: []
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
pathToRoute: {},
|
|
54
|
+
routeMap: {},
|
|
55
|
+
manifest: {
|
|
56
|
+
pageRoutes: [pageRoute],
|
|
57
|
+
apiRoutes: [apiRoute],
|
|
58
|
+
allRoutes: [pageRoute, apiRoute]
|
|
59
|
+
},
|
|
60
|
+
preloads: {},
|
|
61
|
+
cssPreloads: {},
|
|
62
|
+
loaders: {}
|
|
63
|
+
};
|
|
64
|
+
var lazyRoutes = {
|
|
65
|
+
serverEntry: async function () {
|
|
66
|
+
return {
|
|
67
|
+
default: {
|
|
68
|
+
render: function () {
|
|
69
|
+
return "<html></html>";
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
},
|
|
74
|
+
pages: {
|
|
75
|
+
[pageRoute.file]: async function () {
|
|
76
|
+
return {};
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
api: {
|
|
80
|
+
[apiRoute.page]: async function () {
|
|
81
|
+
return {
|
|
82
|
+
HEAD: function () {
|
|
83
|
+
return new Response(null, {
|
|
84
|
+
status: 204
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
middlewares: {}
|
|
91
|
+
};
|
|
92
|
+
function createHandler() {
|
|
93
|
+
vi.stubEnv("ONE_BUFFERED_SSR", "1");
|
|
94
|
+
return createWorkerHandler({
|
|
95
|
+
oneOptions: {
|
|
96
|
+
web: {
|
|
97
|
+
defaultRenderMode: "ssr"
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
buildInfo,
|
|
101
|
+
lazyRoutes
|
|
102
|
+
}).handleRequest;
|
|
103
|
+
}
|
|
104
|
+
afterEach(function () {
|
|
105
|
+
vi.unstubAllEnvs();
|
|
106
|
+
});
|
|
107
|
+
describe("createWorkerHandler", function () {
|
|
108
|
+
it("answers HEAD page requests exactly like GET", async function () {
|
|
109
|
+
var handleRequest = createHandler();
|
|
110
|
+
var get = await handleRequest(new Request("https://example.com/some-page"));
|
|
111
|
+
var head = await handleRequest(new Request("https://example.com/some-page", {
|
|
112
|
+
method: "HEAD"
|
|
113
|
+
}));
|
|
114
|
+
if (!_instanceof(get, Response) || !_instanceof(head, Response)) {
|
|
115
|
+
throw new Error("expected both GET and HEAD to return a Response");
|
|
116
|
+
}
|
|
117
|
+
expect(get.status).toBe(200);
|
|
118
|
+
expect(head.status).toBe(get.status);
|
|
119
|
+
expect(head.headers.get("content-type")).toBe(get.headers.get("content-type"));
|
|
120
|
+
});
|
|
121
|
+
it("does not route POST requests to page handlers", async function () {
|
|
122
|
+
var response = await createHandler()(new Request("https://example.com/some-page", {
|
|
123
|
+
method: "POST"
|
|
124
|
+
}));
|
|
125
|
+
expect(response).toBeNull();
|
|
126
|
+
});
|
|
127
|
+
it("continues routing HEAD requests to API handlers", async function () {
|
|
128
|
+
var response = await createHandler()(new Request("https://example.com/api/status", {
|
|
129
|
+
method: "HEAD"
|
|
130
|
+
}));
|
|
131
|
+
expect(response).toBeInstanceOf(Response);
|
|
132
|
+
expect(response === null || response === void 0 ? void 0 : response.status).toBe(204);
|
|
133
|
+
});
|
|
134
|
+
});
|
|
135
|
+
//# sourceMappingURL=workerHandler.test.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["afterEach","describe","expect","it","vi","createWorkerHandler","_instanceof","left","right","Symbol","hasInstance","pageRoute","file","page","namedRegex","urlPath","urlCleanPath","routeKeys","type","middlewares","apiRoute","buildInfo","constants","CACHE_KEY","routeToBuildInfo","path","routeFile","preloadPath","cssPreloadPath","loaderPath","cleanPath","htmlPath","clientJsPath","serverJsPath","params","preloads","css","layoutCSS","pathToRoute","routeMap","manifest","pageRoutes","apiRoutes","allRoutes","cssPreloads","loaders","lazyRoutes","serverEntry","default","render","pages","api","HEAD","Response","status","createHandler","stubEnv","oneOptions","web","defaultRenderMode","handleRequest"],"sources":["../../../src/server/workerHandler.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,EAAWC,QAAA,EAAUC,MAAA,EAAQC,EAAA,EAAIC,EAAA,QAAU;AAEpD,SAASC,mBAAA,QAA4C;AAErD,SAAMC,WAAYA,CAAAC,IAAA,EAAAC,KAAA;EAChB,IAAAA,KAAM,mBAAAC,MAAA,oBAAAD,KAAA,CAAAC,MAAA,CAAAC,WAAA;IACN,OAAM,EAAAF,KAAA,CAAAC,MAAA,CAAAC,WAAA,EAAAH,IAAA;EACN;IACA,OAASA,IAAA,YAAAC,KAAA;EACT;AAAc;AACF,IACZG,SAAM;EACNC,IAAA,qBAAc;EAChBC,IAAA;EAEAC,UAAM,sBAAW;EACfC,OAAM;EACNC,YAAM;EACNC,SAAA,GAAY;EACZC,IAAA,OAAS;EACTC,WAAA;AAAc;AACF,IACZC,QAAM;EACNR,IAAA,yBAAc;EAChBC,IAAA;EAEAC,UAAM,uBAAY;EAChBC,OAAA,eAAa;EACbC,YAAA,eAAkB;EAAAC,SACf,IAAU;EAAOC,IAChB,OAAM;EAAAC,WACA;AAAU;AACK,IAAAE,SACrB;EAAcC,SACd;IAAaC,SACb;EAAgB;EACJC,gBACD;IAAU,CAAAb,SACrB,CAAAC,IAAU;MACVM,IAAA;MACAO,IAAA,EAAAd,SAAc,CAAAE,IAAA;MACda,SAAS,EAAAf,SAAA,CAAAC,IAAA;MACTO,WAAW;MACXQ,WAAM;MACNC,cAAY;MACdC,UAAA;MACFC,SAAA,EAAAnB,SAAA,CAAAE,IAAA;MACAkB,QAAA,EAAc;MACdC,YAAW;MACXC,YAAU;MACRC,MAAA,IAAY;MACZC,QAAA,EAAY;MACZC,GAAA;MACFC,SAAA;IACA;EACA;EACAC,WAAU;EACZC,QAAA;EAEAC,QAAM;IACJC,UAAA,EAAa,CACX9B,SAAS;IAET+B,SAAA,GACFtB,QAAA,CACA;IACEuB,SAAC,EAAU,CACbhC,SAAA,EACAS,QAAK;EAC2B;EACkBe,QAChD;EACFS,WAAA;EACAC,OAAA;AACF;AAEA,IAAAC,UAAS;EACPC,WAAW,iBAAAA,CAAA;IACX,OAAO;MACLC,OAAA;QACAC,MAAA,WAAAA,CAAA;UACA;QACC;MACL;IAEA;EACE;EACDC,KAAA;IAED,CAAAvC,SAAS,CAAAC,IAAA,qBAA6B;MACjC;IACD;EACA;EACAuC,GAAA;IAAmB,CAAA/B,QACb,CAAAP,IAAQ;MACd;QAEIuC,IAAE,WAAAA,CAAA,EAAe;UACnB,OAAU,IAAAC,QAAM;YAClBC,MAAA;UAIA,CAAO;QACP;MACA;IACD;EAED;EACEnC,WAAM;AAA+B;AAC4B,SACjEoC,cAAA;EAEAnD,EAAA,CAAAoD,OAAO,mBAAmB;EAC5B,OAACnD,mBAAA;IAEDoD,UAAG;MACDC,GAAA,EAAM;QACJC,iBAAY;MACd;IAEA;IACAtC,SAAO;IACRyB;EACF,GAAAc,aAAA","ignoreList":[]}
|
|
@@ -5,7 +5,6 @@ const KEY = "one-sr";
|
|
|
5
5
|
const GROUP_KEY = "one-sr-groups";
|
|
6
6
|
const getState = () => JSON.parse(sessionStorage.getItem(KEY) || "{}");
|
|
7
7
|
const getGroupState = () => JSON.parse(sessionStorage.getItem(GROUP_KEY) || "{}");
|
|
8
|
-
let isFirstLoad = true;
|
|
9
8
|
let activeGroups = /* @__PURE__ */new Set();
|
|
10
9
|
function registerScrollGroup(groupId) {
|
|
11
10
|
activeGroups.add(groupId);
|
|
@@ -16,7 +15,7 @@ function registerScrollGroup(groupId) {
|
|
|
16
15
|
function getGroupKey(pathname) {
|
|
17
16
|
let longestMatch = null;
|
|
18
17
|
for (const group of activeGroups) {
|
|
19
|
-
if (pathname.startsWith(group) && (!longestMatch || group.length > longestMatch.length)) {
|
|
18
|
+
if ((pathname === group || pathname.startsWith(`${group}/`)) && (!longestMatch || group.length > longestMatch.length)) {
|
|
20
19
|
longestMatch = group;
|
|
21
20
|
}
|
|
22
21
|
}
|
|
@@ -72,6 +71,9 @@ function configure(props) {
|
|
|
72
71
|
return;
|
|
73
72
|
}
|
|
74
73
|
disable?.();
|
|
74
|
+
const initialLocation = `${window.location.pathname}${window.location.search}${window.location.hash}`;
|
|
75
|
+
let isFirstStateChange = true;
|
|
76
|
+
previousPathname = window.location.pathname;
|
|
75
77
|
const popStateController = new AbortController();
|
|
76
78
|
window.addEventListener("popstate", () => {
|
|
77
79
|
didPop = true;
|
|
@@ -85,10 +87,12 @@ function configure(props) {
|
|
|
85
87
|
}
|
|
86
88
|
});
|
|
87
89
|
const disposeOnRootState = subscribeToRootState(state => {
|
|
88
|
-
if (
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
90
|
+
if (isFirstStateChange) {
|
|
91
|
+
isFirstStateChange = false;
|
|
92
|
+
const currentLocation = `${window.location.pathname}${window.location.search}${window.location.hash}`;
|
|
93
|
+
if (currentLocation === initialLocation) {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
92
96
|
}
|
|
93
97
|
if (state.linkOptions?.scroll === false) {
|
|
94
98
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","setLastAction","subscribeToLoadingState","subscribeToRootState","KEY","GROUP_KEY","getState","JSON","parse","sessionStorage","getItem","getGroupState","
|
|
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":[]}
|
|
@@ -9,7 +9,6 @@ var getState = function () {
|
|
|
9
9
|
var getGroupState = function () {
|
|
10
10
|
return JSON.parse(sessionStorage.getItem(GROUP_KEY) || "{}");
|
|
11
11
|
};
|
|
12
|
-
var isFirstLoad = true;
|
|
13
12
|
var activeGroups = /* @__PURE__ */new Set();
|
|
14
13
|
function registerScrollGroup(groupId) {
|
|
15
14
|
activeGroups.add(groupId);
|
|
@@ -25,7 +24,7 @@ function getGroupKey(pathname) {
|
|
|
25
24
|
try {
|
|
26
25
|
for (var _iterator = activeGroups[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
27
26
|
var group = _step.value;
|
|
28
|
-
if (pathname.startsWith(group) && (!longestMatch || group.length > longestMatch.length)) {
|
|
27
|
+
if ((pathname === group || pathname.startsWith(`${group}/`)) && (!longestMatch || group.length > longestMatch.length)) {
|
|
29
28
|
longestMatch = group;
|
|
30
29
|
}
|
|
31
30
|
}
|
|
@@ -95,6 +94,9 @@ function configure(props) {
|
|
|
95
94
|
return;
|
|
96
95
|
}
|
|
97
96
|
disable === null || disable === void 0 ? void 0 : disable();
|
|
97
|
+
var initialLocation = `${window.location.pathname}${window.location.search}${window.location.hash}`;
|
|
98
|
+
var isFirstStateChange = true;
|
|
99
|
+
previousPathname = window.location.pathname;
|
|
98
100
|
var popStateController = new AbortController();
|
|
99
101
|
window.addEventListener("popstate", function () {
|
|
100
102
|
didPop = true;
|
|
@@ -109,10 +111,12 @@ function configure(props) {
|
|
|
109
111
|
});
|
|
110
112
|
var disposeOnRootState = subscribeToRootState(function (state) {
|
|
111
113
|
var _state_linkOptions;
|
|
112
|
-
if (
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
114
|
+
if (isFirstStateChange) {
|
|
115
|
+
isFirstStateChange = false;
|
|
116
|
+
var currentLocation = `${window.location.pathname}${window.location.search}${window.location.hash}`;
|
|
117
|
+
if (currentLocation === initialLocation) {
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
116
120
|
}
|
|
117
121
|
if (((_state_linkOptions = state.linkOptions) === null || _state_linkOptions === void 0 ? void 0 : _state_linkOptions.scroll) === false) {
|
|
118
122
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","setLastAction","subscribeToLoadingState","subscribeToRootState","KEY","GROUP_KEY","getState","JSON","parse","sessionStorage","getItem","getGroupState","
|
|
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":[]}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import TestRenderer, { act } from "react-test-renderer";
|
|
2
|
+
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
|
|
3
|
+
import { registerScrollGroup, ScrollBehavior } from "./ScrollBehavior.mjs";
|
|
4
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
|
+
const subscriptions = vi.hoisted(() => ({
|
|
6
|
+
loading: void 0,
|
|
7
|
+
root: void 0
|
|
8
|
+
}));
|
|
9
|
+
vi.mock("../router/lastAction", () => ({
|
|
10
|
+
setLastAction: vi.fn()
|
|
11
|
+
}));
|
|
12
|
+
vi.mock("../router/router", () => ({
|
|
13
|
+
subscribeToLoadingState: subscriber => {
|
|
14
|
+
subscriptions.loading = subscriber;
|
|
15
|
+
return () => {
|
|
16
|
+
subscriptions.loading = void 0;
|
|
17
|
+
};
|
|
18
|
+
},
|
|
19
|
+
subscribeToRootState: subscriber => {
|
|
20
|
+
subscriptions.root = subscriber;
|
|
21
|
+
return () => {
|
|
22
|
+
subscriptions.root = void 0;
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
}));
|
|
26
|
+
globalThis.IS_REACT_ACT_ENVIRONMENT = true;
|
|
27
|
+
let renderer;
|
|
28
|
+
let location;
|
|
29
|
+
let scrollTo;
|
|
30
|
+
beforeEach(() => {
|
|
31
|
+
process.env.VITE_ENVIRONMENT = "client";
|
|
32
|
+
location = {
|
|
33
|
+
pathname: "/",
|
|
34
|
+
search: "",
|
|
35
|
+
hash: ""
|
|
36
|
+
};
|
|
37
|
+
scrollTo = vi.fn();
|
|
38
|
+
const windowMock = Object.assign(new EventTarget(), {
|
|
39
|
+
location,
|
|
40
|
+
scrollTo,
|
|
41
|
+
scrollY: 500
|
|
42
|
+
});
|
|
43
|
+
const storage = /* @__PURE__ */new Map();
|
|
44
|
+
vi.stubGlobal("window", windowMock);
|
|
45
|
+
vi.stubGlobal("document", {
|
|
46
|
+
getElementById: vi.fn()
|
|
47
|
+
});
|
|
48
|
+
vi.stubGlobal("sessionStorage", {
|
|
49
|
+
getItem: key => storage.get(key) ?? null,
|
|
50
|
+
setItem: (key, value) => storage.set(key, value),
|
|
51
|
+
removeItem: key => storage.delete(key)
|
|
52
|
+
});
|
|
53
|
+
act(() => {
|
|
54
|
+
renderer = TestRenderer.create(/* @__PURE__ */jsx(ScrollBehavior, {}));
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
afterEach(() => {
|
|
58
|
+
act(() => renderer?.unmount());
|
|
59
|
+
renderer = void 0;
|
|
60
|
+
vi.useRealTimers();
|
|
61
|
+
vi.unstubAllGlobals();
|
|
62
|
+
delete process.env.VITE_ENVIRONMENT;
|
|
63
|
+
});
|
|
64
|
+
describe("ScrollBehavior initial navigation", () => {
|
|
65
|
+
it("does not scroll when the navigator publishes its initial state after mount", () => {
|
|
66
|
+
act(() => subscriptions.root?.({}));
|
|
67
|
+
expect(scrollTo).not.toHaveBeenCalled();
|
|
68
|
+
});
|
|
69
|
+
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?.({}));
|
|
72
|
+
expect(scrollTo).toHaveBeenCalledWith(0, 0);
|
|
73
|
+
});
|
|
74
|
+
it("handles a query change as a first navigation", () => {
|
|
75
|
+
location.search = "?platform=ios";
|
|
76
|
+
act(() => subscriptions.root?.({}));
|
|
77
|
+
expect(scrollTo).toHaveBeenCalledWith(0, 0);
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
describe("ScrollBehavior groups", () => {
|
|
81
|
+
it("preserves position between routes in the same group", () => {
|
|
82
|
+
vi.useFakeTimers();
|
|
83
|
+
const unregister = registerScrollGroup("/compat/react-native-gesture-handler");
|
|
84
|
+
act(() => subscriptions.root?.({}));
|
|
85
|
+
location.pathname = "/compat/react-native-gesture-handler";
|
|
86
|
+
act(() => subscriptions.root?.({}));
|
|
87
|
+
scrollTo.mockClear();
|
|
88
|
+
act(() => subscriptions.loading?.("loading"));
|
|
89
|
+
location.pathname = "/compat/react-native-gesture-handler/pan-gesture";
|
|
90
|
+
act(() => subscriptions.root?.({}));
|
|
91
|
+
vi.runAllTimers();
|
|
92
|
+
expect(scrollTo).toHaveBeenCalledWith(0, 500);
|
|
93
|
+
unregister();
|
|
94
|
+
vi.useRealTimers();
|
|
95
|
+
});
|
|
96
|
+
it("does not match a different route whose slug has the same prefix", () => {
|
|
97
|
+
const unregister = registerScrollGroup("/compat/react-native");
|
|
98
|
+
act(() => subscriptions.root?.({}));
|
|
99
|
+
location.pathname = "/compat/react-native/core";
|
|
100
|
+
act(() => subscriptions.root?.({}));
|
|
101
|
+
scrollTo.mockClear();
|
|
102
|
+
act(() => subscriptions.loading?.("loading"));
|
|
103
|
+
location.pathname = "/compat/react-native-gesture-handler";
|
|
104
|
+
act(() => subscriptions.root?.({}));
|
|
105
|
+
expect(scrollTo).toHaveBeenCalledWith(0, 0);
|
|
106
|
+
unregister();
|
|
107
|
+
});
|
|
108
|
+
});
|
|
109
|
+
//# sourceMappingURL=ScrollBehavior.test.mjs.map
|
|
@@ -0,0 +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":[]}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import TestRenderer, { act } from "react-test-renderer";
|
|
4
|
+
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
|
|
5
|
+
import { registerScrollGroup, ScrollBehavior } from "./ScrollBehavior.native.js";
|
|
6
|
+
var subscriptions = vi.hoisted(function () {
|
|
7
|
+
return {
|
|
8
|
+
loading: void 0,
|
|
9
|
+
root: void 0
|
|
10
|
+
};
|
|
11
|
+
});
|
|
12
|
+
vi.mock("../router/lastAction", function () {
|
|
13
|
+
return {
|
|
14
|
+
setLastAction: vi.fn()
|
|
15
|
+
};
|
|
16
|
+
});
|
|
17
|
+
vi.mock("../router/router", function () {
|
|
18
|
+
return {
|
|
19
|
+
subscribeToLoadingState: function (subscriber) {
|
|
20
|
+
subscriptions.loading = subscriber;
|
|
21
|
+
return function () {
|
|
22
|
+
subscriptions.loading = void 0;
|
|
23
|
+
};
|
|
24
|
+
},
|
|
25
|
+
subscribeToRootState: function (subscriber) {
|
|
26
|
+
subscriptions.root = subscriber;
|
|
27
|
+
return function () {
|
|
28
|
+
subscriptions.root = void 0;
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
});
|
|
33
|
+
globalThis.IS_REACT_ACT_ENVIRONMENT = true;
|
|
34
|
+
var renderer;
|
|
35
|
+
var location;
|
|
36
|
+
var scrollTo;
|
|
37
|
+
beforeEach(function () {
|
|
38
|
+
process.env.VITE_ENVIRONMENT = "client";
|
|
39
|
+
location = {
|
|
40
|
+
pathname: "/",
|
|
41
|
+
search: "",
|
|
42
|
+
hash: ""
|
|
43
|
+
};
|
|
44
|
+
scrollTo = vi.fn();
|
|
45
|
+
var windowMock = Object.assign(new EventTarget(), {
|
|
46
|
+
location,
|
|
47
|
+
scrollTo,
|
|
48
|
+
scrollY: 500
|
|
49
|
+
});
|
|
50
|
+
var storage = /* @__PURE__ */new Map();
|
|
51
|
+
vi.stubGlobal("window", windowMock);
|
|
52
|
+
vi.stubGlobal("document", {
|
|
53
|
+
getElementById: vi.fn()
|
|
54
|
+
});
|
|
55
|
+
vi.stubGlobal("sessionStorage", {
|
|
56
|
+
getItem: function (key) {
|
|
57
|
+
var _storage_get;
|
|
58
|
+
return (_storage_get = storage.get(key)) !== null && _storage_get !== void 0 ? _storage_get : null;
|
|
59
|
+
},
|
|
60
|
+
setItem: function (key, value) {
|
|
61
|
+
return storage.set(key, value);
|
|
62
|
+
},
|
|
63
|
+
removeItem: function (key) {
|
|
64
|
+
return storage.delete(key);
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
act(function () {
|
|
68
|
+
renderer = TestRenderer.create(/* @__PURE__ */_jsx(ScrollBehavior, {}));
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
afterEach(function () {
|
|
72
|
+
act(function () {
|
|
73
|
+
return renderer === null || renderer === void 0 ? void 0 : renderer.unmount();
|
|
74
|
+
});
|
|
75
|
+
renderer = void 0;
|
|
76
|
+
vi.useRealTimers();
|
|
77
|
+
vi.unstubAllGlobals();
|
|
78
|
+
delete process.env.VITE_ENVIRONMENT;
|
|
79
|
+
});
|
|
80
|
+
describe("ScrollBehavior initial navigation", function () {
|
|
81
|
+
it("does not scroll when the navigator publishes its initial state after mount", function () {
|
|
82
|
+
act(function () {
|
|
83
|
+
var _subscriptions_root;
|
|
84
|
+
return (_subscriptions_root = subscriptions.root) === null || _subscriptions_root === void 0 ? void 0 : _subscriptions_root.call(subscriptions, {});
|
|
85
|
+
});
|
|
86
|
+
expect(scrollTo).not.toHaveBeenCalled();
|
|
87
|
+
});
|
|
88
|
+
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
|
+
});
|
|
94
|
+
expect(scrollTo).toHaveBeenCalledWith(0, 0);
|
|
95
|
+
});
|
|
96
|
+
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
|
+
});
|
|
102
|
+
expect(scrollTo).toHaveBeenCalledWith(0, 0);
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
describe("ScrollBehavior groups", function () {
|
|
106
|
+
it("preserves position between routes in the same group", function () {
|
|
107
|
+
vi.useFakeTimers();
|
|
108
|
+
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
|
+
});
|
|
118
|
+
scrollTo.mockClear();
|
|
119
|
+
act(function () {
|
|
120
|
+
var _subscriptions_loading;
|
|
121
|
+
return (_subscriptions_loading = subscriptions.loading) === null || _subscriptions_loading === void 0 ? void 0 : _subscriptions_loading.call(subscriptions, "loading");
|
|
122
|
+
});
|
|
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
|
+
});
|
|
128
|
+
vi.runAllTimers();
|
|
129
|
+
expect(scrollTo).toHaveBeenCalledWith(0, 500);
|
|
130
|
+
unregister();
|
|
131
|
+
vi.useRealTimers();
|
|
132
|
+
});
|
|
133
|
+
it("does not match a different route whose slug has the same prefix", function () {
|
|
134
|
+
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
|
+
});
|
|
144
|
+
scrollTo.mockClear();
|
|
145
|
+
act(function () {
|
|
146
|
+
var _subscriptions_loading;
|
|
147
|
+
return (_subscriptions_loading = subscriptions.loading) === null || _subscriptions_loading === void 0 ? void 0 : _subscriptions_loading.call(subscriptions, "loading");
|
|
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
|
+
});
|
|
154
|
+
expect(scrollTo).toHaveBeenCalledWith(0, 0);
|
|
155
|
+
unregister();
|
|
156
|
+
});
|
|
157
|
+
});
|
|
158
|
+
//# sourceMappingURL=ScrollBehavior.test.native.js.map
|
|
@@ -0,0 +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":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "one",
|
|
3
|
-
"version": "1.25.
|
|
3
|
+
"version": "1.25.8",
|
|
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.
|
|
197
|
-
"@vxrn/compiler": "1.25.
|
|
198
|
-
"@vxrn/resolve": "1.25.
|
|
199
|
-
"@vxrn/tslib-lite": "1.25.
|
|
200
|
-
"@vxrn/use-isomorphic-layout-effect": "1.25.
|
|
201
|
-
"@vxrn/vite-plugin-metro": "1.25.
|
|
196
|
+
"@vxrn/color-scheme": "1.25.8",
|
|
197
|
+
"@vxrn/compiler": "1.25.8",
|
|
198
|
+
"@vxrn/resolve": "1.25.8",
|
|
199
|
+
"@vxrn/tslib-lite": "1.25.8",
|
|
200
|
+
"@vxrn/use-isomorphic-layout-effect": "1.25.8",
|
|
201
|
+
"@vxrn/vite-plugin-metro": "1.25.8",
|
|
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.
|
|
207
|
+
"create-vxrn": "1.25.8",
|
|
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.
|
|
227
|
+
"vxrn": "1.25.8",
|
|
228
228
|
"web-streams-polyfill": "^4.3.0",
|
|
229
229
|
"ws": "^8.21.0",
|
|
230
230
|
"xxhashjs": "^0.2.2"
|