@effect-tui/react 0.9.0 → 0.9.1

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.
@@ -1,9 +1,11 @@
1
1
  import { type ReactNode } from "react";
2
- export type ToastType = "success" | "info" | "warning" | "error";
2
+ export type ToastType = "success" | "info" | "warning" | "error" | "screenshot";
3
3
  export interface Toast {
4
4
  id: number;
5
5
  message: string;
6
6
  type: ToastType;
7
+ /** Timestamp when the toast was created (for animations) */
8
+ createdAt: number;
7
9
  }
8
10
  export interface ToastContextValue {
9
11
  toasts: Toast[];
@@ -1 +1 @@
1
- {"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../../src/dev/Toast.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAiB,KAAK,SAAS,EAAqC,MAAM,OAAO,CAAA;AAMxF,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAA;AAEhE,MAAM,WAAW,KAAK;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,SAAS,CAAA;CACf;AAED,MAAM,WAAW,iBAAiB;IACjC,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACtE,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CAC7B;AAQD,wBAAgB,QAAQ,IAAI,iBAAiB,CAM5C;AAsBD,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,aAiBlE;AAMD,wBAAgB,cAAc,cAqB7B;AAMD,wBAAgB,kBAAkB,WAIzB,MAAM,UAKd"}
1
+ {"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../../src/dev/Toast.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAiB,KAAK,SAAS,EAAgD,MAAM,OAAO,CAAA;AAMnG,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,YAAY,CAAA;AAE/E,MAAM,WAAW,KAAK;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,SAAS,CAAA;IACf,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,iBAAiB;IACjC,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACtE,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CAC7B;AAQD,wBAAgB,QAAQ,IAAI,iBAAiB,CAM5C;AAuBD,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,aAiBlE;AAiED,wBAAgB,cAAc,cA2B7B;AAMD,wBAAgB,kBAAkB,WAIzB,MAAM,UAKd"}
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "@effect-tui/react/jsx-runtime";
2
2
  // Toast notification system for dev mode
3
3
  // Beautiful, minimal notifications that appear at the top of the screen
4
4
  import { Colors } from "@effect-tui/core";
5
- import { createContext, useCallback, useContext, useState } from "react";
5
+ import { createContext, useCallback, useContext, useEffect, useState } from "react";
6
6
  // ─────────────────────────────────────────────────────────────
7
7
  // Context
8
8
  // ─────────────────────────────────────────────────────────────
@@ -22,6 +22,7 @@ const TOAST_STYLES = {
22
22
  info: { bg: Colors.rgb(30, 50, 80), fg: Colors.rgb(140, 180, 230), icon: "ℹ" },
23
23
  warning: { bg: Colors.rgb(80, 60, 20), fg: Colors.rgb(230, 200, 100), icon: "⚠" },
24
24
  error: { bg: Colors.rgb(80, 30, 30), fg: Colors.rgb(230, 140, 140), icon: "✗" },
25
+ screenshot: { bg: Colors.rgb(30, 70, 40), fg: Colors.rgb(140, 230, 140), icon: "📷" },
25
26
  };
26
27
  // ─────────────────────────────────────────────────────────────
27
28
  // Provider
@@ -31,7 +32,7 @@ export function ToastProvider({ children }) {
31
32
  const [toasts, setToasts] = useState([]);
32
33
  const show = useCallback((message, type = "info", durationMs = 2000) => {
33
34
  const id = ++toastId;
34
- setToasts((prev) => [...prev, { id, message, type }]);
35
+ setToasts((prev) => [...prev, { id, message, type, createdAt: Date.now() }]);
35
36
  setTimeout(() => {
36
37
  setToasts((prev) => prev.filter((t) => t.id !== id));
37
38
  }, durationMs);
@@ -41,6 +42,41 @@ export function ToastProvider({ children }) {
41
42
  }, []);
42
43
  return _jsx(ToastContext.Provider, { value: { toasts, show, dismiss }, children: children });
43
44
  }
45
+ const SCREENSHOT_PHASES = {
46
+ camera: {
47
+ icon: "📷",
48
+ bg: Colors.rgb(40, 50, 60),
49
+ fg: Colors.rgb(180, 200, 220),
50
+ },
51
+ flash: {
52
+ icon: "⚡",
53
+ bg: Colors.rgb(255, 255, 200), // Bright flash!
54
+ fg: Colors.rgb(60, 60, 40),
55
+ },
56
+ success: {
57
+ icon: "✓",
58
+ bg: Colors.rgb(30, 70, 40),
59
+ fg: Colors.rgb(140, 230, 140),
60
+ },
61
+ };
62
+ function ScreenshotToast({ message, createdAt }) {
63
+ const [phase, setPhase] = useState("camera");
64
+ useEffect(() => {
65
+ // Phase timing: camera (0-120ms) → flash (120-280ms) → success (280ms+)
66
+ const elapsed = Date.now() - createdAt;
67
+ const cameraDelay = Math.max(0, 120 - elapsed);
68
+ const flashDelay = Math.max(0, 280 - elapsed);
69
+ const flashTimer = setTimeout(() => setPhase("flash"), cameraDelay);
70
+ const successTimer = setTimeout(() => setPhase("success"), flashDelay);
71
+ return () => {
72
+ clearTimeout(flashTimer);
73
+ clearTimeout(successTimer);
74
+ };
75
+ }, [createdAt]);
76
+ const style = SCREENSHOT_PHASES[phase];
77
+ const content = ` ${style.icon} ${message} `;
78
+ return (_jsxs("hstack", { children: [_jsx("spacer", {}), _jsx("box", { bg: style.bg, padding: { x: 1 }, children: _jsx("text", { fg: style.fg, children: content }) })] }));
79
+ }
44
80
  // ─────────────────────────────────────────────────────────────
45
81
  // Toast Display Component
46
82
  // ─────────────────────────────────────────────────────────────
@@ -50,6 +86,10 @@ export function ToastContainer() {
50
86
  return null;
51
87
  // Show only the most recent toast
52
88
  const toast = toasts[toasts.length - 1];
89
+ // Special animated toast for screenshots
90
+ if (toast.type === "screenshot") {
91
+ return _jsx(ScreenshotToast, { message: toast.message, createdAt: toast.createdAt });
92
+ }
53
93
  const style = TOAST_STYLES[toast.type];
54
94
  // Compact pill in upper right
55
95
  const content = ` ${style.icon} ${toast.message} `;
@@ -1 +1 @@
1
- {"version":3,"file":"Toast.js","sourceRoot":"","sources":["../../../src/dev/Toast.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Toast.js","sourceRoot":"","sources":["../../../src/dev/Toast.tsx"],"names":[],"mappings":"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"}