@farm.js/core 0.1.0-beta.54 → 0.1.0-beta.56
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-427JQ6OZ.mjs → chunk-5T2XATMK.mjs} +58 -11
- package/dist/chunk-5T2XATMK.mjs.map +1 -0
- package/dist/{chunk-J34JCW6R.mjs → chunk-FOEPWRHM.mjs} +2 -2
- package/dist/{chunk-BDHDDITP.mjs → chunk-FPLRESQA.mjs} +30 -18
- package/dist/chunk-FPLRESQA.mjs.map +1 -0
- package/dist/{chunk-JECGLPIS.mjs → chunk-PYIVNTDI.mjs} +4 -4
- package/dist/{chunk-GPHLXAFT.mjs → chunk-UH5R4J5M.mjs} +2 -2
- package/dist/{chunk-ENPB4CSY.mjs → chunk-XLQVJDK2.mjs} +2 -2
- package/dist/{chunk-ENPB4CSY.mjs.map → chunk-XLQVJDK2.mjs.map} +1 -1
- package/dist/{chunk-GVQ54ERX.mjs → chunk-YPKCFGA7.mjs} +9 -3
- package/dist/chunk-YPKCFGA7.mjs.map +1 -0
- package/dist/{chunk-PGZVE6P7.mjs → chunk-ZOQLQAUG.mjs} +2 -2
- package/dist/client/lifecycle.mjs +2 -2
- package/dist/client-plugins.cjs +1 -1
- package/dist/client-plugins.cjs.map +1 -1
- package/dist/client-plugins.mjs +2 -2
- package/dist/client.cjs +76 -23
- package/dist/client.cjs.map +1 -1
- package/dist/client.d.mts +2 -5
- package/dist/client.d.ts +2 -5
- package/dist/client.mjs +11 -11
- package/dist/index.cjs +85 -24
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.mjs +17 -17
- package/dist/internal/build-runtime.cjs +8 -2
- package/dist/internal/build-runtime.cjs.map +1 -1
- package/dist/internal/build-runtime.mjs +3 -3
- package/dist/internal/client-runtime.cjs +1 -1
- package/dist/internal/client-runtime.cjs.map +1 -1
- package/dist/internal/client-runtime.mjs +2 -2
- package/dist/navigation.cjs +74 -20
- package/dist/navigation.cjs.map +1 -1
- package/dist/navigation.mjs +4 -4
- package/dist/plugin.cjs +1 -1
- package/dist/plugin.cjs.map +1 -1
- package/dist/plugin.mjs +2 -2
- package/dist/query/client.cjs +105 -11
- package/dist/query/client.cjs.map +1 -1
- package/dist/query/client.mjs +18 -11
- package/dist/query/client.mjs.map +1 -1
- package/dist/renderer-client.cjs +56 -12
- package/dist/renderer-client.cjs.map +1 -1
- package/dist/renderer-client.d.mts +1 -1
- package/dist/renderer-client.d.ts +1 -1
- package/dist/renderer-client.mjs +12 -11
- package/dist/renderer-client.mjs.map +1 -1
- package/dist/server.cjs +1 -1
- package/dist/server.cjs.map +1 -1
- package/dist/server.mjs +2 -2
- package/dist/{spa-router-BD7iUG-C.d.mts → spa-router-BV71GGW0.d.mts} +4 -3
- package/dist/{spa-router-swFKTqwR.d.ts → spa-router-BylM6JXm.d.ts} +4 -3
- package/dist/version.cjs +1 -1
- package/dist/version.cjs.map +1 -1
- package/dist/version.mjs +1 -1
- package/dist/vite.cjs +1 -1
- package/dist/vite.cjs.map +1 -1
- package/dist/vite.mjs +2 -2
- package/package.json +1 -1
- package/dist/chunk-427JQ6OZ.mjs.map +0 -1
- package/dist/chunk-BDHDDITP.mjs.map +0 -1
- package/dist/chunk-GVQ54ERX.mjs.map +0 -1
- /package/dist/{chunk-J34JCW6R.mjs.map → chunk-FOEPWRHM.mjs.map} +0 -0
- /package/dist/{chunk-JECGLPIS.mjs.map → chunk-PYIVNTDI.mjs.map} +0 -0
- /package/dist/{chunk-GPHLXAFT.mjs.map → chunk-UH5R4J5M.mjs.map} +0 -0
- /package/dist/{chunk-PGZVE6P7.mjs.map → chunk-ZOQLQAUG.mjs.map} +0 -0
package/dist/renderer-client.cjs
CHANGED
|
@@ -429,6 +429,35 @@ function rejectPendingDeferred(controllers, message) {
|
|
|
429
429
|
}
|
|
430
430
|
__name(rejectPendingDeferred, "rejectPendingDeferred");
|
|
431
431
|
|
|
432
|
+
// src/client/history-sync.ts
|
|
433
|
+
var FARM_HISTORY_CHANGE_EVENT = "farm:historychange";
|
|
434
|
+
function notifyHistoryChange(kind) {
|
|
435
|
+
if (typeof window === "undefined") return;
|
|
436
|
+
setTimeout(() => {
|
|
437
|
+
if (kind === "url-search" && !getInstalledFarmSPARouter()) {
|
|
438
|
+
window.dispatchEvent(new PopStateEvent("popstate"));
|
|
439
|
+
return;
|
|
440
|
+
}
|
|
441
|
+
window.dispatchEvent(
|
|
442
|
+
new CustomEvent(FARM_HISTORY_CHANGE_EVENT, {
|
|
443
|
+
detail: { kind }
|
|
444
|
+
})
|
|
445
|
+
);
|
|
446
|
+
}, 0);
|
|
447
|
+
}
|
|
448
|
+
__name(notifyHistoryChange, "notifyHistoryChange");
|
|
449
|
+
function subscribeHistoryChange(listener) {
|
|
450
|
+
if (typeof window === "undefined") return () => {
|
|
451
|
+
};
|
|
452
|
+
window.addEventListener("popstate", listener);
|
|
453
|
+
window.addEventListener(FARM_HISTORY_CHANGE_EVENT, listener);
|
|
454
|
+
return () => {
|
|
455
|
+
window.removeEventListener("popstate", listener);
|
|
456
|
+
window.removeEventListener(FARM_HISTORY_CHANGE_EVENT, listener);
|
|
457
|
+
};
|
|
458
|
+
}
|
|
459
|
+
__name(subscribeHistoryChange, "subscribeHistoryChange");
|
|
460
|
+
|
|
432
461
|
// src/deployment.ts
|
|
433
462
|
var FARM_DEPLOYMENT_ID_HEADER = "x-farm-deployment-id";
|
|
434
463
|
var FARM_DEPLOYMENT_MISMATCH_HEADER = "x-farm-deployment-mismatch";
|
|
@@ -635,6 +664,16 @@ var _SPARouter = class _SPARouter {
|
|
|
635
664
|
this.navigationListeners = /* @__PURE__ */ new Set();
|
|
636
665
|
this.navigationState = IDLE_NAVIGATION_STATE;
|
|
637
666
|
this.scrollElements = /* @__PURE__ */ new Map();
|
|
667
|
+
this.onPopState = /* @__PURE__ */ __name((event) => {
|
|
668
|
+
void this.handlePopState(event);
|
|
669
|
+
}, "onPopState");
|
|
670
|
+
this.onBeforeUnload = /* @__PURE__ */ __name((event) => {
|
|
671
|
+
if (this.blockers.size > 0) {
|
|
672
|
+
event.preventDefault();
|
|
673
|
+
event.returnValue = "";
|
|
674
|
+
}
|
|
675
|
+
this.saveScrollPosition(window.location.pathname);
|
|
676
|
+
}, "onBeforeUnload");
|
|
638
677
|
this.options = {
|
|
639
678
|
prefetchTimeout: options.prefetchTimeout ?? 100,
|
|
640
679
|
cacheMaxAge: options.cacheMaxAge ?? 3e4,
|
|
@@ -644,16 +683,16 @@ var _SPARouter = class _SPARouter {
|
|
|
644
683
|
deploymentId: options.deploymentId ?? readBrowserDeploymentId()
|
|
645
684
|
};
|
|
646
685
|
if (typeof window !== "undefined") {
|
|
647
|
-
window.addEventListener("popstate", this.
|
|
648
|
-
window.addEventListener("beforeunload",
|
|
649
|
-
if (this.blockers.size > 0) {
|
|
650
|
-
event.preventDefault();
|
|
651
|
-
event.returnValue = "";
|
|
652
|
-
}
|
|
653
|
-
this.saveScrollPosition(window.location.pathname);
|
|
654
|
-
});
|
|
686
|
+
window.addEventListener("popstate", this.onPopState);
|
|
687
|
+
window.addEventListener("beforeunload", this.onBeforeUnload);
|
|
655
688
|
}
|
|
656
689
|
}
|
|
690
|
+
/** Remove global listeners. Intended for tests and teardown. */
|
|
691
|
+
destroy() {
|
|
692
|
+
if (typeof window === "undefined") return;
|
|
693
|
+
window.removeEventListener("popstate", this.onPopState);
|
|
694
|
+
window.removeEventListener("beforeunload", this.onBeforeUnload);
|
|
695
|
+
}
|
|
657
696
|
/**
|
|
658
697
|
* Set the navigation handler that updates React
|
|
659
698
|
*/
|
|
@@ -1047,7 +1086,7 @@ var _SPARouter = class _SPARouter {
|
|
|
1047
1086
|
} else {
|
|
1048
1087
|
window.history.pushState(nextState, "", url);
|
|
1049
1088
|
}
|
|
1050
|
-
|
|
1089
|
+
notifyHistoryChange("page-state");
|
|
1051
1090
|
}
|
|
1052
1091
|
/**
|
|
1053
1092
|
* Save scroll position for a path
|
|
@@ -1116,11 +1155,16 @@ function dispatchDeploymentMismatch(error) {
|
|
|
1116
1155
|
window.dispatchEvent(new CustomEvent("farm:deployment-mismatch", { detail: error }));
|
|
1117
1156
|
}
|
|
1118
1157
|
__name(dispatchDeploymentMismatch, "dispatchDeploymentMismatch");
|
|
1158
|
+
function getInstalledFarmSPARouter() {
|
|
1159
|
+
if (typeof window === "undefined") return void 0;
|
|
1160
|
+
return window.__FARM_SPA_ROUTER__;
|
|
1161
|
+
}
|
|
1162
|
+
__name(getInstalledFarmSPARouter, "getInstalledFarmSPARouter");
|
|
1119
1163
|
function getRouter() {
|
|
1120
1164
|
if (typeof window === "undefined") {
|
|
1121
1165
|
return new SPARouter();
|
|
1122
1166
|
}
|
|
1123
|
-
const installedRouter =
|
|
1167
|
+
const installedRouter = getInstalledFarmSPARouter();
|
|
1124
1168
|
if (installedRouter) {
|
|
1125
1169
|
routerInstance = installedRouter;
|
|
1126
1170
|
return installedRouter;
|
|
@@ -2413,11 +2457,11 @@ function createRendererRouter(options = {}) {
|
|
|
2413
2457
|
listener();
|
|
2414
2458
|
}, "notify");
|
|
2415
2459
|
const unsubscribeNavigation = router.subscribeNavigation(notify);
|
|
2416
|
-
|
|
2460
|
+
const unsubscribeHistory = subscribeHistoryChange(notify);
|
|
2417
2461
|
read();
|
|
2418
2462
|
return () => {
|
|
2419
2463
|
unsubscribeNavigation();
|
|
2420
|
-
|
|
2464
|
+
unsubscribeHistory();
|
|
2421
2465
|
};
|
|
2422
2466
|
},
|
|
2423
2467
|
push(href, navigateOptions) {
|