weifuwu 0.17.12 → 0.17.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +10 -11
- package/dist/react.js +16 -17
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -578,6 +578,14 @@ import { useSyncExternalStore, createContext } from "react";
|
|
|
578
578
|
var fallbackT = (key, _params, fallback) => fallback ?? key;
|
|
579
579
|
var _ctx = { params: {}, query: {}, parsed: {}, prefs: {}, env: {}, t: fallbackT, user: {} };
|
|
580
580
|
var _listeners = /* @__PURE__ */ new Set();
|
|
581
|
+
var subscribe = (cb) => {
|
|
582
|
+
_listeners.add(cb);
|
|
583
|
+
return () => {
|
|
584
|
+
_listeners.delete(cb);
|
|
585
|
+
};
|
|
586
|
+
};
|
|
587
|
+
var getSnapshot = () => ({ params: _ctx.params, query: _ctx.query, user: _ctx.user, parsed: _ctx.parsed, prefs: _ctx.prefs, env: _ctx.env });
|
|
588
|
+
var getServerSnapshot = getSnapshot;
|
|
581
589
|
function setCtx(value) {
|
|
582
590
|
_ctx = { ..._ctx, ...value };
|
|
583
591
|
_listeners.forEach((fn) => fn());
|
|
@@ -595,18 +603,9 @@ function _buildT() {
|
|
|
595
603
|
};
|
|
596
604
|
}
|
|
597
605
|
function useCtx() {
|
|
598
|
-
useSyncExternalStore(
|
|
599
|
-
(cb) => {
|
|
600
|
-
_listeners.add(cb);
|
|
601
|
-
return () => {
|
|
602
|
-
_listeners.delete(cb);
|
|
603
|
-
};
|
|
604
|
-
},
|
|
605
|
-
() => _ctx,
|
|
606
|
-
() => _ctx
|
|
607
|
-
);
|
|
606
|
+
useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
|
|
608
607
|
const data = typeof window !== "undefined" ? window.__WEIFUWU_CTX : null;
|
|
609
|
-
const t =
|
|
608
|
+
const t = _ctx.t !== fallbackT ? _ctx.t : _buildT();
|
|
610
609
|
return { ..._ctx, ...data, t };
|
|
611
610
|
}
|
|
612
611
|
var TsxContext = createContext({ params: {}, query: {}, parsed: {}, prefs: {}, env: {}, t: fallbackT, user: {} });
|
package/dist/react.js
CHANGED
|
@@ -146,6 +146,14 @@ import { useSyncExternalStore, createContext } from "react";
|
|
|
146
146
|
var fallbackT = (key, _params, fallback) => fallback ?? key;
|
|
147
147
|
var _ctx = { params: {}, query: {}, parsed: {}, prefs: {}, env: {}, t: fallbackT, user: {} };
|
|
148
148
|
var _listeners = /* @__PURE__ */ new Set();
|
|
149
|
+
var subscribe = (cb) => {
|
|
150
|
+
_listeners.add(cb);
|
|
151
|
+
return () => {
|
|
152
|
+
_listeners.delete(cb);
|
|
153
|
+
};
|
|
154
|
+
};
|
|
155
|
+
var getSnapshot = () => ({ params: _ctx.params, query: _ctx.query, user: _ctx.user, parsed: _ctx.parsed, prefs: _ctx.prefs, env: _ctx.env });
|
|
156
|
+
var getServerSnapshot = getSnapshot;
|
|
149
157
|
function setCtx(value) {
|
|
150
158
|
_ctx = { ..._ctx, ...value };
|
|
151
159
|
_listeners.forEach((fn) => fn());
|
|
@@ -163,18 +171,9 @@ function _buildT() {
|
|
|
163
171
|
};
|
|
164
172
|
}
|
|
165
173
|
function useCtx() {
|
|
166
|
-
useSyncExternalStore(
|
|
167
|
-
(cb) => {
|
|
168
|
-
_listeners.add(cb);
|
|
169
|
-
return () => {
|
|
170
|
-
_listeners.delete(cb);
|
|
171
|
-
};
|
|
172
|
-
},
|
|
173
|
-
() => _ctx,
|
|
174
|
-
() => _ctx
|
|
175
|
-
);
|
|
174
|
+
useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
|
|
176
175
|
const data = typeof window !== "undefined" ? window.__WEIFUWU_CTX : null;
|
|
177
|
-
const t =
|
|
176
|
+
const t = _ctx.t !== fallbackT ? _ctx.t : _buildT();
|
|
178
177
|
return { ..._ctx, ...data, t };
|
|
179
178
|
}
|
|
180
179
|
var TsxContext = createContext({ params: {}, query: {}, parsed: {}, prefs: {}, env: {}, t: fallbackT, user: {} });
|
|
@@ -396,19 +395,19 @@ function createStore(initial) {
|
|
|
396
395
|
state = { ...state, ...next };
|
|
397
396
|
listeners.forEach((fn) => fn());
|
|
398
397
|
};
|
|
399
|
-
const
|
|
398
|
+
const subscribe2 = (listener) => {
|
|
400
399
|
listeners.add(listener);
|
|
401
400
|
return () => {
|
|
402
401
|
listeners.delete(listener);
|
|
403
402
|
};
|
|
404
403
|
};
|
|
405
404
|
const useStore = ((selector) => useSyncExternalStore2(
|
|
406
|
-
|
|
405
|
+
subscribe2,
|
|
407
406
|
() => selector ? selector(state) : state
|
|
408
407
|
));
|
|
409
408
|
useStore.getState = getState;
|
|
410
409
|
useStore.setState = setState;
|
|
411
|
-
useStore.subscribe =
|
|
410
|
+
useStore.subscribe = subscribe2;
|
|
412
411
|
return useStore;
|
|
413
412
|
}
|
|
414
413
|
var dataCache = /* @__PURE__ */ new Map();
|
|
@@ -488,7 +487,7 @@ function notifyQueryListeners() {
|
|
|
488
487
|
window.dispatchEvent(new PopStateEvent("popstate"));
|
|
489
488
|
}
|
|
490
489
|
function useQueryState(key, defaultValue = "") {
|
|
491
|
-
function
|
|
490
|
+
function getSnapshot2() {
|
|
492
491
|
if (typeof window === "undefined") return defaultValue;
|
|
493
492
|
const params = new URLSearchParams(window.location.search);
|
|
494
493
|
return params.get(key) ?? defaultValue;
|
|
@@ -500,12 +499,12 @@ function useQueryState(key, defaultValue = "") {
|
|
|
500
499
|
window.addEventListener("popstate", cb);
|
|
501
500
|
return () => window.removeEventListener("popstate", cb);
|
|
502
501
|
},
|
|
503
|
-
|
|
502
|
+
getSnapshot2,
|
|
504
503
|
() => defaultValue
|
|
505
504
|
);
|
|
506
505
|
const setValue = useCallback4((val) => {
|
|
507
506
|
if (typeof window === "undefined") return;
|
|
508
|
-
const resolved = typeof val === "function" ? val(
|
|
507
|
+
const resolved = typeof val === "function" ? val(getSnapshot2()) : val;
|
|
509
508
|
const url = new URL(window.location.href);
|
|
510
509
|
if (resolved === defaultValue || resolved === "") {
|
|
511
510
|
url.searchParams.delete(key);
|