weifuwu 0.67.1 → 0.67.3

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.
@@ -537,6 +537,12 @@ code {
537
537
  scroll-behavior: auto !important;
538
538
  }
539
539
  }
540
+
541
+ /* 拖拽中禁用文本选中(useDragDrop 拖拽生命周期标记——Kanban 教训) */
542
+ body.wf-dragging {
543
+ user-select: none;
544
+ -webkit-user-select: none;
545
+ }
540
546
  }
541
547
 
542
548
  @layer layout {
package/dist/index.js CHANGED
@@ -4250,6 +4250,34 @@ function createReactiveState(dirty) {
4250
4250
  const watchers = /* @__PURE__ */ new Set();
4251
4251
  const reactive = (target) => {
4252
4252
  if (target === null || typeof target !== "object") return target;
4253
+ if (target instanceof Set || target instanceof Map) {
4254
+ if (proxyCache.has(target)) return proxyCache.get(target);
4255
+ const MUTATING = target instanceof Set ? /* @__PURE__ */ new Set(["add", "delete", "clear"]) : /* @__PURE__ */ new Set(["set", "delete", "clear"]);
4256
+ const proxy2 = new Proxy(target, {
4257
+ get(t, prop) {
4258
+ const v = Reflect.get(t, prop);
4259
+ if (typeof v === "function") {
4260
+ if (!MUTATING.has(String(prop))) return v.bind(t);
4261
+ return (...args) => {
4262
+ const result = v.apply(t, args);
4263
+ dirty();
4264
+ for (const w of watchers) w();
4265
+ return result;
4266
+ };
4267
+ }
4268
+ return v;
4269
+ },
4270
+ set(t, key, value) {
4271
+ Reflect.set(t, key, value);
4272
+ dirty();
4273
+ for (const w of watchers) w();
4274
+ return true;
4275
+ }
4276
+ });
4277
+ proxyCache.set(target, proxy2);
4278
+ return proxy2;
4279
+ }
4280
+ if (target instanceof Date || target instanceof RegExp) return target;
4253
4281
  if (proxyCache.has(target)) return proxyCache.get(target);
4254
4282
  const proxy = new Proxy(target, {
4255
4283
  set(target2, key, value) {
@@ -4631,7 +4659,7 @@ function ui() {
4631
4659
  console.log(`[ui:js-cache] \u8BF7\u6C42: ${absPath.split("/").pop()} (cached=${!!cached})`);
4632
4660
  if (cached && await jsCacheFresh(cached.inputs)) {
4633
4661
  return new Response(cached.code, {
4634
- headers: { "Content-Type": "application/javascript", "Cache-Control": "no-cache" }
4662
+ headers: { "Content-Type": "application/javascript", "Cache-Control": "no-store" }
4635
4663
  });
4636
4664
  }
4637
4665
  const result = await build({
@@ -4660,7 +4688,7 @@ function ui() {
4660
4688
  console.log(`[ui:js-cache] \u7F16\u8BD1: ${absPath.split("/").pop()} (${Object.keys(inputs).length} inputs, ${(code.length / 1024).toFixed(0)}KB)`);
4661
4689
  jsCache.set(absPath, { code, inputs });
4662
4690
  return new Response(code, {
4663
- headers: { "Content-Type": "application/javascript", "Cache-Control": "no-cache" }
4691
+ headers: { "Content-Type": "application/javascript", "Cache-Control": "no-store" }
4664
4692
  });
4665
4693
  },
4666
4694
  async css(entryPath) {
@@ -4669,7 +4697,7 @@ function ui() {
4669
4697
  const cached = cssCache.get(absPath);
4670
4698
  if (cached && cached.mtime === st.mtimeMs) {
4671
4699
  return new Response(cached.code, {
4672
- headers: { "Content-Type": "text/css; charset=utf-8", "Cache-Control": "no-cache" }
4700
+ headers: { "Content-Type": "text/css; charset=utf-8", "Cache-Control": "no-store" }
4673
4701
  });
4674
4702
  }
4675
4703
  let code = await readFile(absPath, "utf-8");
@@ -4687,7 +4715,7 @@ function ui() {
4687
4715
  }
4688
4716
  cssCache.set(absPath, { code, mtime: st.mtimeMs });
4689
4717
  return new Response(code, {
4690
- headers: { "Content-Type": "text/css; charset=utf-8", "Cache-Control": "no-cache" }
4718
+ headers: { "Content-Type": "text/css; charset=utf-8", "Cache-Control": "no-store" }
4691
4719
  });
4692
4720
  }
4693
4721
  };
@@ -537,6 +537,12 @@ code {
537
537
  scroll-behavior: auto !important;
538
538
  }
539
539
  }
540
+
541
+ /* 拖拽中禁用文本选中(useDragDrop 拖拽生命周期标记——Kanban 教训) */
542
+ body.wf-dragging {
543
+ user-select: none;
544
+ -webkit-user-select: none;
545
+ }
540
546
  }
541
547
 
542
548
  @layer layout {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "weifuwu",
3
3
  "type": "module",
4
- "version": "0.67.1",
4
+ "version": "0.67.3",
5
5
  "description": "AI SaaS framework — (req, ctx) => Response",
6
6
  "exports": {
7
7
  ".": {