weifuwu 0.17.12 → 0.17.14

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 CHANGED
@@ -577,9 +577,19 @@ import chokidar from "chokidar";
577
577
  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
+ var _snapshot = { params: _ctx.params, query: _ctx.query, user: _ctx.user, parsed: _ctx.parsed, prefs: _ctx.prefs, env: _ctx.env };
580
581
  var _listeners = /* @__PURE__ */ new Set();
582
+ var subscribe = (cb) => {
583
+ _listeners.add(cb);
584
+ return () => {
585
+ _listeners.delete(cb);
586
+ };
587
+ };
588
+ var getSnapshot = () => _snapshot;
589
+ var getServerSnapshot = getSnapshot;
581
590
  function setCtx(value) {
582
591
  _ctx = { ..._ctx, ...value };
592
+ _snapshot = { params: _ctx.params, query: _ctx.query, user: _ctx.user, parsed: _ctx.parsed, prefs: _ctx.prefs, env: _ctx.env };
583
593
  _listeners.forEach((fn) => fn());
584
594
  }
585
595
  function _buildT() {
@@ -595,18 +605,9 @@ function _buildT() {
595
605
  };
596
606
  }
597
607
  function useCtx() {
598
- useSyncExternalStore(
599
- (cb) => {
600
- _listeners.add(cb);
601
- return () => {
602
- _listeners.delete(cb);
603
- };
604
- },
605
- () => _ctx,
606
- () => _ctx
607
- );
608
+ useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
608
609
  const data = typeof window !== "undefined" ? window.__WEIFUWU_CTX : null;
609
- const t = data?.t ?? (_ctx.t !== fallbackT ? _ctx.t : _buildT());
610
+ const t = _ctx.t !== fallbackT ? _ctx.t : _buildT();
610
611
  return { ..._ctx, ...data, t };
611
612
  }
612
613
  var TsxContext = createContext({ params: {}, query: {}, parsed: {}, prefs: {}, env: {}, t: fallbackT, user: {} });
package/dist/react.js CHANGED
@@ -145,9 +145,19 @@ import { createElement, useCallback as useCallback3, useState as useState3, useE
145
145
  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
+ var _snapshot = { params: _ctx.params, query: _ctx.query, user: _ctx.user, parsed: _ctx.parsed, prefs: _ctx.prefs, env: _ctx.env };
148
149
  var _listeners = /* @__PURE__ */ new Set();
150
+ var subscribe = (cb) => {
151
+ _listeners.add(cb);
152
+ return () => {
153
+ _listeners.delete(cb);
154
+ };
155
+ };
156
+ var getSnapshot = () => _snapshot;
157
+ var getServerSnapshot = getSnapshot;
149
158
  function setCtx(value) {
150
159
  _ctx = { ..._ctx, ...value };
160
+ _snapshot = { params: _ctx.params, query: _ctx.query, user: _ctx.user, parsed: _ctx.parsed, prefs: _ctx.prefs, env: _ctx.env };
151
161
  _listeners.forEach((fn) => fn());
152
162
  }
153
163
  function _buildT() {
@@ -163,18 +173,9 @@ function _buildT() {
163
173
  };
164
174
  }
165
175
  function useCtx() {
166
- useSyncExternalStore(
167
- (cb) => {
168
- _listeners.add(cb);
169
- return () => {
170
- _listeners.delete(cb);
171
- };
172
- },
173
- () => _ctx,
174
- () => _ctx
175
- );
176
+ useSyncExternalStore(subscribe, getSnapshot, getServerSnapshot);
176
177
  const data = typeof window !== "undefined" ? window.__WEIFUWU_CTX : null;
177
- const t = data?.t ?? (_ctx.t !== fallbackT ? _ctx.t : _buildT());
178
+ const t = _ctx.t !== fallbackT ? _ctx.t : _buildT();
178
179
  return { ..._ctx, ...data, t };
179
180
  }
180
181
  var TsxContext = createContext({ params: {}, query: {}, parsed: {}, prefs: {}, env: {}, t: fallbackT, user: {} });
@@ -396,19 +397,19 @@ function createStore(initial) {
396
397
  state = { ...state, ...next };
397
398
  listeners.forEach((fn) => fn());
398
399
  };
399
- const subscribe = (listener) => {
400
+ const subscribe2 = (listener) => {
400
401
  listeners.add(listener);
401
402
  return () => {
402
403
  listeners.delete(listener);
403
404
  };
404
405
  };
405
406
  const useStore = ((selector) => useSyncExternalStore2(
406
- subscribe,
407
+ subscribe2,
407
408
  () => selector ? selector(state) : state
408
409
  ));
409
410
  useStore.getState = getState;
410
411
  useStore.setState = setState;
411
- useStore.subscribe = subscribe;
412
+ useStore.subscribe = subscribe2;
412
413
  return useStore;
413
414
  }
414
415
  var dataCache = /* @__PURE__ */ new Map();
@@ -488,7 +489,7 @@ function notifyQueryListeners() {
488
489
  window.dispatchEvent(new PopStateEvent("popstate"));
489
490
  }
490
491
  function useQueryState(key, defaultValue = "") {
491
- function getSnapshot() {
492
+ function getSnapshot2() {
492
493
  if (typeof window === "undefined") return defaultValue;
493
494
  const params = new URLSearchParams(window.location.search);
494
495
  return params.get(key) ?? defaultValue;
@@ -500,12 +501,12 @@ function useQueryState(key, defaultValue = "") {
500
501
  window.addEventListener("popstate", cb);
501
502
  return () => window.removeEventListener("popstate", cb);
502
503
  },
503
- getSnapshot,
504
+ getSnapshot2,
504
505
  () => defaultValue
505
506
  );
506
507
  const setValue = useCallback4((val) => {
507
508
  if (typeof window === "undefined") return;
508
- const resolved = typeof val === "function" ? val(getSnapshot()) : val;
509
+ const resolved = typeof val === "function" ? val(getSnapshot2()) : val;
509
510
  const url = new URL(window.location.href);
510
511
  if (resolved === defaultValue || resolved === "") {
511
512
  url.searchParams.delete(key);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "weifuwu",
3
- "version": "0.17.12",
3
+ "version": "0.17.14",
4
4
  "description": "Web-standard HTTP framework for Node.js — (req, ctx) => Response",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",