@freeappstore/sdk 0.11.1 → 0.13.0

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.
Files changed (60) hide show
  1. package/README.md +5 -1
  2. package/dist/email.d.ts.map +1 -1
  3. package/dist/email.js.map +1 -1
  4. package/dist/friends.d.ts +57 -0
  5. package/dist/friends.d.ts.map +1 -0
  6. package/dist/friends.js +133 -0
  7. package/dist/friends.js.map +1 -0
  8. package/dist/hooks.d.ts +18 -0
  9. package/dist/hooks.d.ts.map +1 -1
  10. package/dist/hooks.js +28 -1
  11. package/dist/hooks.js.map +1 -1
  12. package/dist/index.d.ts +11 -2
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +10 -0
  15. package/dist/index.js.map +1 -1
  16. package/dist/keys.d.ts.map +1 -1
  17. package/dist/keys.js.map +1 -1
  18. package/dist/logger.d.ts +70 -0
  19. package/dist/logger.d.ts.map +1 -0
  20. package/dist/logger.js +167 -0
  21. package/dist/logger.js.map +1 -0
  22. package/dist/roles.d.ts.map +1 -1
  23. package/dist/roles.js +6 -2
  24. package/dist/roles.js.map +1 -1
  25. package/dist/rooms.d.ts +9 -1
  26. package/dist/rooms.d.ts.map +1 -1
  27. package/dist/rooms.js +39 -13
  28. package/dist/rooms.js.map +1 -1
  29. package/dist/ui/components.d.ts +49 -4
  30. package/dist/ui/components.d.ts.map +1 -1
  31. package/dist/ui/components.js +382 -24
  32. package/dist/ui/components.js.map +1 -1
  33. package/dist/ui/core.d.ts.map +1 -1
  34. package/dist/ui/core.js +1 -1
  35. package/dist/ui/core.js.map +1 -1
  36. package/dist/ui/friends.d.ts +19 -0
  37. package/dist/ui/friends.d.ts.map +1 -0
  38. package/dist/ui/friends.js +191 -0
  39. package/dist/ui/friends.js.map +1 -0
  40. package/dist/ui/index.d.ts +9 -5
  41. package/dist/ui/index.d.ts.map +1 -1
  42. package/dist/ui/index.js +5 -3
  43. package/dist/ui/index.js.map +1 -1
  44. package/dist/ui/layout.d.ts +2 -2
  45. package/dist/ui/layout.d.ts.map +1 -1
  46. package/dist/ui/layout.js +96 -23
  47. package/dist/ui/layout.js.map +1 -1
  48. package/dist/ui/voice.d.ts +22 -0
  49. package/dist/ui/voice.d.ts.map +1 -0
  50. package/dist/ui/voice.js +64 -0
  51. package/dist/ui/voice.js.map +1 -0
  52. package/dist/voice.d.ts +10 -0
  53. package/dist/voice.d.ts.map +1 -0
  54. package/dist/voice.js +97 -0
  55. package/dist/voice.js.map +1 -0
  56. package/dist/webhooks.d.ts +42 -0
  57. package/dist/webhooks.d.ts.map +1 -0
  58. package/dist/webhooks.js +58 -0
  59. package/dist/webhooks.js.map +1 -0
  60. package/package.json +1 -1
@@ -1,78 +1,436 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useEffect, Component } from 'react';
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { Component, useEffect, useState } from 'react';
3
3
  // Inject keyframes once
4
4
  if (typeof document !== 'undefined' && !document.getElementById('fas-ui-keyframes')) {
5
5
  const style = document.createElement('style');
6
6
  style.id = 'fas-ui-keyframes';
7
- style.textContent = '@keyframes fas-spin{to{transform:rotate(360deg)}}@keyframes fas-fade-in{from{opacity:0}to{opacity:1}}@keyframes fas-slide-up{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}';
7
+ style.textContent =
8
+ '@keyframes fas-spin{to{transform:rotate(360deg)}}@keyframes fas-fade-in{from{opacity:0}to{opacity:1}}@keyframes fas-slide-up{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}';
8
9
  document.head.appendChild(style);
9
10
  }
10
11
  export function Spinner({ size = 24, color = 'var(--accent, #2563eb)' }) {
11
- return _jsx("div", { style: { width: size, height: size, border: '2px solid var(--border, #e2e8f0)', borderTopColor: color, borderRadius: '50%', animation: 'fas-spin 0.6s linear infinite' } });
12
+ return (_jsx("div", { style: {
13
+ width: size,
14
+ height: size,
15
+ border: '2px solid var(--border, #e2e8f0)',
16
+ borderTopColor: color,
17
+ borderRadius: '50%',
18
+ animation: 'fas-spin 0.6s linear infinite',
19
+ } }));
12
20
  }
13
21
  const badgeColors = {
14
- default: { bg: 'var(--surface, #f8fafc)', color: 'var(--muted, #64748b)', border: 'var(--border, #e2e8f0)' },
15
- accent: { bg: 'var(--accent-soft, #eff6ff)', color: 'var(--accent, #2563eb)', border: 'var(--accent, #2563eb)' },
22
+ default: {
23
+ bg: 'var(--surface, #f8fafc)',
24
+ color: 'var(--muted, #64748b)',
25
+ border: 'var(--border, #e2e8f0)',
26
+ },
27
+ accent: {
28
+ bg: 'var(--accent-soft, #eff6ff)',
29
+ color: 'var(--accent, #2563eb)',
30
+ border: 'var(--accent, #2563eb)',
31
+ },
16
32
  success: { bg: '#f0fdf4', color: '#16a34a', border: '#86efac' },
17
33
  warning: { bg: '#fefce8', color: '#ca8a04', border: '#fde047' },
18
34
  danger: { bg: '#fef2f2', color: '#dc2626', border: '#fecaca' },
19
35
  };
20
36
  export function Badge({ children, variant = 'default', style: extraStyle }) {
21
37
  const c = badgeColors[variant] ?? badgeColors.default;
22
- return (_jsx("span", { style: { display: 'inline-flex', alignItems: 'center', gap: '0.25rem', padding: '0.15rem 0.5rem', borderRadius: '9999px', fontSize: '0.75rem', fontWeight: 600, lineHeight: 1.4, background: c.bg, color: c.color, border: `1px solid ${c.border}`, ...extraStyle }, children: children }));
38
+ return (_jsx("span", { style: {
39
+ display: 'inline-flex',
40
+ alignItems: 'center',
41
+ gap: '0.25rem',
42
+ padding: '0.15rem 0.5rem',
43
+ borderRadius: '9999px',
44
+ fontSize: '0.75rem',
45
+ fontWeight: 600,
46
+ lineHeight: 1.4,
47
+ background: c.bg,
48
+ color: c.color,
49
+ border: `1px solid ${c.border}`,
50
+ ...extraStyle,
51
+ }, children: children }));
23
52
  }
24
53
  export function Card({ children, onClick, padding = '1rem', style: extraStyle }) {
25
54
  const interactive = !!onClick;
26
55
  const Tag = interactive ? 'button' : 'div';
27
- return (_jsx(Tag, { onClick: onClick, style: { display: 'block', width: '100%', textAlign: 'left', padding, borderRadius: 'var(--radius, 0.75rem)', border: '1px solid var(--border, var(--line, #e2e8f0))', background: 'var(--surface, var(--panel, #ffffff))', cursor: interactive ? 'pointer' : undefined, fontFamily: 'inherit', fontSize: 'inherit', color: 'inherit', transition: 'border-color 0.15s', ...(interactive ? { outline: 'none' } : {}), ...extraStyle }, children: children }));
56
+ return (_jsx(Tag, { onClick: onClick, style: {
57
+ display: 'block',
58
+ width: '100%',
59
+ textAlign: 'left',
60
+ padding,
61
+ borderRadius: 'var(--radius, 0.75rem)',
62
+ border: '1px solid var(--border, var(--line, #e2e8f0))',
63
+ background: 'var(--surface, var(--panel, #ffffff))',
64
+ cursor: interactive ? 'pointer' : undefined,
65
+ fontFamily: 'inherit',
66
+ fontSize: 'inherit',
67
+ color: 'inherit',
68
+ transition: 'border-color 0.15s',
69
+ ...(interactive ? { outline: 'none' } : {}),
70
+ ...extraStyle,
71
+ }, children: children }));
28
72
  }
29
73
  export function Tabs({ tabs, active, onChange, style: extraStyle }) {
30
- return (_jsx("div", { style: { display: 'inline-flex', gap: '0.25rem', padding: '0.25rem', borderRadius: '9999px', border: '1px solid var(--border, var(--line, #e2e8f0))', background: 'var(--surface, var(--glass, #f8fafc))', ...extraStyle }, children: tabs.map((tab) => (_jsx("button", { onClick: () => onChange(tab.key), style: { padding: '0.35rem 0.85rem', borderRadius: '9999px', border: 'none', fontSize: '0.8rem', fontWeight: 600, cursor: 'pointer', fontFamily: 'inherit', transition: 'all 0.15s', background: active === tab.key ? 'var(--ink, #1e293b)' : 'transparent', color: active === tab.key ? 'var(--surface, #ffffff)' : 'var(--muted, #64748b)' }, children: tab.label }, tab.key))) }));
74
+ return (_jsx("div", { style: {
75
+ display: 'inline-flex',
76
+ gap: '0.25rem',
77
+ padding: '0.25rem',
78
+ borderRadius: '9999px',
79
+ border: '1px solid var(--border, var(--line, #e2e8f0))',
80
+ background: 'var(--surface, var(--glass, #f8fafc))',
81
+ ...extraStyle,
82
+ }, children: tabs.map((tab) => (_jsx("button", { onClick: () => onChange(tab.key), style: {
83
+ padding: '0.35rem 0.85rem',
84
+ borderRadius: '9999px',
85
+ border: 'none',
86
+ fontSize: '0.8rem',
87
+ fontWeight: 600,
88
+ cursor: 'pointer',
89
+ fontFamily: 'inherit',
90
+ transition: 'all 0.15s',
91
+ background: active === tab.key ? 'var(--ink, #1e293b)' : 'transparent',
92
+ color: active === tab.key ? 'var(--surface, #ffffff)' : 'var(--muted, #64748b)',
93
+ }, children: tab.label }, tab.key))) }));
31
94
  }
32
95
  export function Modal({ open, onClose, children, title, maxWidth = 480 }) {
33
96
  useEffect(() => {
34
97
  if (!open)
35
98
  return;
36
- const handler = (e) => { if (e.key === 'Escape')
37
- onClose(); };
99
+ const handler = (e) => {
100
+ if (e.key === 'Escape')
101
+ onClose();
102
+ };
38
103
  document.addEventListener('keydown', handler);
39
104
  return () => document.removeEventListener('keydown', handler);
40
105
  }, [open, onClose]);
41
106
  if (!open)
42
107
  return null;
43
- return (_jsx("div", { onClick: onClose, style: { position: 'fixed', inset: 0, zIndex: 999, background: 'rgba(0,0,0,0.5)', backdropFilter: 'blur(4px)', display: 'flex', alignItems: 'center', justifyContent: 'center', padding: '1rem', animation: 'fas-fade-in 0.15s' }, children: _jsxs("div", { onClick: (e) => e.stopPropagation(), style: { background: 'var(--surface, var(--panel, #ffffff))', border: '1px solid var(--border, var(--line, #e2e8f0))', borderRadius: 'var(--radius-lg, var(--radius, 0.75rem))', maxWidth, width: '100%', maxHeight: '85dvh', overflow: 'auto', animation: 'fas-slide-up 0.2s' }, children: [title && (_jsxs("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'space-between', padding: '1rem 1.25rem', borderBottom: '1px solid var(--border, var(--line, #e2e8f0))' }, children: [_jsx("h2", { style: { margin: 0, fontSize: '1rem', fontWeight: 700, color: 'var(--ink, #1e293b)' }, children: title }), _jsx("button", { onClick: onClose, "aria-label": "Close", style: { background: 'none', border: 'none', cursor: 'pointer', padding: '0.25rem', color: 'var(--muted, #64748b)', fontSize: '1.25rem', lineHeight: 1, fontFamily: 'inherit' }, children: "\u00D7" })] })), _jsx("div", { style: { padding: '1.25rem' }, children: children })] }) }));
108
+ return (_jsx("div", { onClick: onClose, style: {
109
+ position: 'fixed',
110
+ inset: 0,
111
+ zIndex: 999,
112
+ background: 'rgba(0,0,0,0.5)',
113
+ backdropFilter: 'blur(4px)',
114
+ display: 'flex',
115
+ alignItems: 'center',
116
+ justifyContent: 'center',
117
+ padding: '1rem',
118
+ animation: 'fas-fade-in 0.15s',
119
+ }, children: _jsxs("div", { onClick: (e) => e.stopPropagation(), style: {
120
+ background: 'var(--surface, var(--panel, #ffffff))',
121
+ border: '1px solid var(--border, var(--line, #e2e8f0))',
122
+ borderRadius: 'var(--radius-lg, var(--radius, 0.75rem))',
123
+ maxWidth,
124
+ width: '100%',
125
+ maxHeight: '85dvh',
126
+ overflow: 'auto',
127
+ animation: 'fas-slide-up 0.2s',
128
+ }, children: [title && (_jsxs("div", { style: {
129
+ display: 'flex',
130
+ alignItems: 'center',
131
+ justifyContent: 'space-between',
132
+ padding: '1rem 1.25rem',
133
+ borderBottom: '1px solid var(--border, var(--line, #e2e8f0))',
134
+ }, children: [_jsx("h2", { style: { margin: 0, fontSize: '1rem', fontWeight: 700, color: 'var(--ink, #1e293b)' }, children: title }), _jsx("button", { onClick: onClose, "aria-label": "Close", style: {
135
+ background: 'none',
136
+ border: 'none',
137
+ cursor: 'pointer',
138
+ padding: '0.25rem',
139
+ color: 'var(--muted, #64748b)',
140
+ fontSize: '1.25rem',
141
+ lineHeight: 1,
142
+ fontFamily: 'inherit',
143
+ }, children: "\u00D7" })] })), _jsx("div", { style: { padding: '1.25rem' }, children: children })] }) }));
44
144
  }
45
- export function ConfirmDialog({ open, onConfirm, onCancel, title, message, confirmLabel = 'Confirm', variant = 'default' }) {
145
+ export function ConfirmDialog({ open, onConfirm, onCancel, title, message, confirmLabel = 'Confirm', variant = 'default', }) {
46
146
  const isDanger = variant === 'danger';
47
- return (_jsxs(Modal, { open: open, onClose: onCancel, title: title, maxWidth: 400, children: [_jsx("p", { style: { fontSize: '0.9rem', color: 'var(--muted, #64748b)', margin: '0 0 1.25rem' }, children: message }), _jsxs("div", { style: { display: 'flex', gap: '0.5rem', justifyContent: 'flex-end' }, children: [_jsx("button", { onClick: onCancel, style: { padding: '0.5rem 1rem', borderRadius: 'var(--radius-sm, 0.5rem)', border: '1px solid var(--border, #e2e8f0)', background: 'transparent', color: 'var(--ink, #1e293b)', fontSize: '0.85rem', fontWeight: 600, cursor: 'pointer', fontFamily: 'inherit' }, children: "Cancel" }), _jsx("button", { onClick: onConfirm, style: { padding: '0.5rem 1rem', borderRadius: 'var(--radius-sm, 0.5rem)', border: 'none', fontSize: '0.85rem', fontWeight: 600, cursor: 'pointer', fontFamily: 'inherit', background: isDanger ? '#dc2626' : 'var(--accent, #2563eb)', color: '#fff' }, children: confirmLabel })] })] }));
147
+ return (_jsxs(Modal, { open: open, onClose: onCancel, title: title, maxWidth: 400, children: [_jsx("p", { style: { fontSize: '0.9rem', color: 'var(--muted, #64748b)', margin: '0 0 1.25rem' }, children: message }), _jsxs("div", { style: { display: 'flex', gap: '0.5rem', justifyContent: 'flex-end' }, children: [_jsx("button", { onClick: onCancel, style: {
148
+ padding: '0.5rem 1rem',
149
+ borderRadius: 'var(--radius-sm, 0.5rem)',
150
+ border: '1px solid var(--border, #e2e8f0)',
151
+ background: 'transparent',
152
+ color: 'var(--ink, #1e293b)',
153
+ fontSize: '0.85rem',
154
+ fontWeight: 600,
155
+ cursor: 'pointer',
156
+ fontFamily: 'inherit',
157
+ }, children: "Cancel" }), _jsx("button", { onClick: onConfirm, style: {
158
+ padding: '0.5rem 1rem',
159
+ borderRadius: 'var(--radius-sm, 0.5rem)',
160
+ border: 'none',
161
+ fontSize: '0.85rem',
162
+ fontWeight: 600,
163
+ cursor: 'pointer',
164
+ fontFamily: 'inherit',
165
+ background: isDanger ? '#dc2626' : 'var(--accent, #2563eb)',
166
+ color: '#fff',
167
+ }, children: confirmLabel })] })] }));
48
168
  }
49
169
  export function EmptyState({ icon, title, message, action }) {
50
- return (_jsxs("div", { style: { textAlign: 'center', padding: '3rem 1.5rem' }, children: [icon && _jsx("div", { style: { marginBottom: '0.75rem', color: 'var(--muted, #94a3b8)', fontSize: '2rem' }, children: icon }), title && _jsx("div", { style: { fontSize: '1rem', fontWeight: 700, color: 'var(--ink, #1e293b)', marginBottom: '0.35rem' }, children: title }), _jsx("p", { style: { fontSize: '0.85rem', color: 'var(--muted, #64748b)', margin: '0 0 1rem', maxWidth: 320, marginInline: 'auto' }, children: message }), action] }));
170
+ return (_jsxs("div", { style: { textAlign: 'center', padding: '3rem 1.5rem' }, children: [icon && (_jsx("div", { style: { marginBottom: '0.75rem', color: 'var(--muted, #94a3b8)', fontSize: '2rem' }, children: icon })), title && (_jsx("div", { style: {
171
+ fontSize: '1rem',
172
+ fontWeight: 700,
173
+ color: 'var(--ink, #1e293b)',
174
+ marginBottom: '0.35rem',
175
+ }, children: title })), _jsx("p", { style: {
176
+ fontSize: '0.85rem',
177
+ color: 'var(--muted, #64748b)',
178
+ margin: '0 0 1rem',
179
+ maxWidth: 320,
180
+ marginInline: 'auto',
181
+ }, children: message }), action] }));
51
182
  }
52
- export function ProgressBar({ value, max = 100, color = 'var(--accent, #2563eb)', height = 8, label }) {
183
+ export function ProgressBar({ value, max = 100, color = 'var(--accent, #2563eb)', height = 8, label, }) {
53
184
  const pct = Math.min(100, Math.max(0, (value / max) * 100));
54
- return (_jsxs("div", { children: [label && _jsx("div", { style: { fontSize: '0.75rem', fontWeight: 600, color: 'var(--muted, #64748b)', marginBottom: '0.35rem' }, children: label }), _jsx("div", { style: { width: '100%', height, borderRadius: height, background: 'var(--border, var(--line, #e2e8f0))', overflow: 'hidden' }, children: _jsx("div", { style: { width: `${pct}%`, height: '100%', borderRadius: height, background: color, transition: 'width 0.3s' } }) })] }));
185
+ return (_jsxs("div", { children: [label && (_jsx("div", { style: {
186
+ fontSize: '0.75rem',
187
+ fontWeight: 600,
188
+ color: 'var(--muted, #64748b)',
189
+ marginBottom: '0.35rem',
190
+ }, children: label })), _jsx("div", { style: {
191
+ width: '100%',
192
+ height,
193
+ borderRadius: height,
194
+ background: 'var(--border, var(--line, #e2e8f0))',
195
+ overflow: 'hidden',
196
+ }, children: _jsx("div", { style: {
197
+ width: `${pct}%`,
198
+ height: '100%',
199
+ borderRadius: height,
200
+ background: color,
201
+ transition: 'width 0.3s',
202
+ } }) })] }));
55
203
  }
56
- export function SearchInput({ value, onChange, placeholder = 'Search...', style: extraStyle }) {
57
- return (_jsxs("div", { style: { position: 'relative', ...extraStyle }, children: [_jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "var(--muted, #64748b)", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: { position: 'absolute', left: 12, top: '50%', transform: 'translateY(-50%)', pointerEvents: 'none' }, children: [_jsx("circle", { cx: "11", cy: "11", r: "8" }), _jsx("line", { x1: "21", y1: "21", x2: "16.65", y2: "16.65" })] }), _jsx("input", { type: "text", value: value, onChange: (e) => onChange(e.currentTarget.value), placeholder: placeholder, style: { width: '100%', padding: '0.5rem 0.75rem 0.5rem 2.25rem', borderRadius: '9999px', border: '1px solid var(--border, var(--line, #e2e8f0))', background: 'var(--surface, var(--glass, #ffffff))', color: 'var(--ink, #1e293b)', fontSize: '0.85rem', fontFamily: 'inherit', outline: 'none' } })] }));
204
+ export function SearchInput({ value, onChange, placeholder = 'Search...', style: extraStyle, }) {
205
+ return (_jsxs("div", { style: { position: 'relative', ...extraStyle }, children: [_jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "var(--muted, #64748b)", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: {
206
+ position: 'absolute',
207
+ left: 12,
208
+ top: '50%',
209
+ transform: 'translateY(-50%)',
210
+ pointerEvents: 'none',
211
+ }, children: [_jsx("circle", { cx: "11", cy: "11", r: "8" }), _jsx("line", { x1: "21", y1: "21", x2: "16.65", y2: "16.65" })] }), _jsx("input", { type: "text", value: value, onChange: (e) => onChange(e.currentTarget.value), placeholder: placeholder, style: {
212
+ width: '100%',
213
+ padding: '0.5rem 0.75rem 0.5rem 2.25rem',
214
+ borderRadius: '9999px',
215
+ border: '1px solid var(--border, var(--line, #e2e8f0))',
216
+ background: 'var(--surface, var(--glass, #ffffff))',
217
+ color: 'var(--ink, #1e293b)',
218
+ fontSize: '0.85rem',
219
+ fontFamily: 'inherit',
220
+ outline: 'none',
221
+ } })] }));
58
222
  }
59
223
  export function ListRow({ icon, title, subtitle, trailing, onClick }) {
60
224
  const Tag = onClick ? 'button' : 'div';
61
- return (_jsxs(Tag, { onClick: onClick, style: { display: 'flex', alignItems: 'center', gap: '0.75rem', width: '100%', padding: '0.65rem 0.75rem', background: 'none', border: 'none', borderBottom: '1px solid var(--border, var(--line, #e2e8f0))', textAlign: 'left', cursor: onClick ? 'pointer' : undefined, fontFamily: 'inherit', color: 'inherit' }, children: [icon && _jsx("div", { style: { flexShrink: 0, color: 'var(--muted, #64748b)' }, children: icon }), _jsxs("div", { style: { flex: 1, minWidth: 0 }, children: [_jsx("div", { style: { fontSize: '0.9rem', fontWeight: 600, color: 'var(--ink, #1e293b)', overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }, children: title }), subtitle && _jsx("div", { style: { fontSize: '0.75rem', color: 'var(--muted, #64748b)', overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }, children: subtitle })] }), trailing && _jsx("div", { style: { flexShrink: 0 }, children: trailing })] }));
225
+ return (_jsxs(Tag, { onClick: onClick, style: {
226
+ display: 'flex',
227
+ alignItems: 'center',
228
+ gap: '0.75rem',
229
+ width: '100%',
230
+ padding: '0.65rem 0.75rem',
231
+ background: 'none',
232
+ border: 'none',
233
+ borderBottom: '1px solid var(--border, var(--line, #e2e8f0))',
234
+ textAlign: 'left',
235
+ cursor: onClick ? 'pointer' : undefined,
236
+ fontFamily: 'inherit',
237
+ color: 'inherit',
238
+ }, children: [icon && _jsx("div", { style: { flexShrink: 0, color: 'var(--muted, #64748b)' }, children: icon }), _jsxs("div", { style: { flex: 1, minWidth: 0 }, children: [_jsx("div", { style: {
239
+ fontSize: '0.9rem',
240
+ fontWeight: 600,
241
+ color: 'var(--ink, #1e293b)',
242
+ overflow: 'hidden',
243
+ textOverflow: 'ellipsis',
244
+ whiteSpace: 'nowrap',
245
+ }, children: title }), subtitle && (_jsx("div", { style: {
246
+ fontSize: '0.75rem',
247
+ color: 'var(--muted, #64748b)',
248
+ overflow: 'hidden',
249
+ textOverflow: 'ellipsis',
250
+ whiteSpace: 'nowrap',
251
+ }, children: subtitle }))] }), trailing && _jsx("div", { style: { flexShrink: 0 }, children: trailing })] }));
62
252
  }
63
253
  export class ErrorBoundary extends Component {
64
254
  state = { error: null };
65
- static getDerivedStateFromError(error) { return { error }; }
255
+ static getDerivedStateFromError(error) {
256
+ return { error };
257
+ }
66
258
  render() {
67
259
  if (this.state.error) {
68
- return this.props.fallback ?? (_jsxs("div", { style: { padding: '2rem', textAlign: 'center' }, children: [_jsx("p", { style: { color: '#dc2626', fontWeight: 700, marginBottom: '0.5rem' }, children: "Something went wrong" }), _jsx("p", { style: { color: 'var(--muted, #64748b)', fontSize: '0.85rem' }, children: this.state.error.message })] }));
260
+ return (this.props.fallback ?? (_jsxs("div", { style: { padding: '2rem', textAlign: 'center' }, children: [_jsx("p", { style: { color: '#dc2626', fontWeight: 700, marginBottom: '0.5rem' }, children: "Something went wrong" }), _jsx("p", { style: { color: 'var(--muted, #64748b)', fontSize: '0.85rem' }, children: this.state.error.message })] })));
69
261
  }
70
262
  return this.props.children;
71
263
  }
72
264
  }
265
+ /**
266
+ * Tiny debug badge showing build version, commit SHA, and build date.
267
+ * Hidden by default, revealed by tapping 5 times (mobile) or clicking
268
+ * while holding Alt/Option (desktop). Sticks to the bottom-right corner.
269
+ *
270
+ * Reads from Vite env vars automatically if no props are passed:
271
+ * VITE_APP_VERSION, VITE_COMMIT_SHA, VITE_BUILD_DATE
272
+ *
273
+ * Add to deploy.yml:
274
+ * env:
275
+ * VITE_APP_VERSION: ${{ github.event.repository.name }}@${{ github.run_number }}
276
+ * VITE_COMMIT_SHA: ${{ github.sha }}
277
+ * VITE_BUILD_DATE: ${{ github.event.head_commit.timestamp }}
278
+ */
279
+ export function BuildInfo({ version, commit, buildDate, extra }) {
280
+ const [visible, setVisible] = useState(false);
281
+ const [tapCount, setTapCount] = useState(0);
282
+ // Auto-read from Vite env vars if props not provided
283
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
284
+ const env = typeof import.meta !== 'undefined' ? (import.meta.env ?? {}) : {};
285
+ const v = version ?? env.VITE_APP_VERSION ?? '';
286
+ const sha = commit ?? env.VITE_COMMIT_SHA ?? '';
287
+ const date = buildDate ?? env.VITE_BUILD_DATE ?? '';
288
+ const handleClick = (e) => {
289
+ if (e.altKey) {
290
+ setVisible(!visible);
291
+ return;
292
+ }
293
+ const next = tapCount + 1;
294
+ if (next >= 5) {
295
+ setVisible(!visible);
296
+ setTapCount(0);
297
+ }
298
+ else {
299
+ setTapCount(next);
300
+ setTimeout(() => setTapCount(0), 2000);
301
+ }
302
+ };
303
+ if (!v && !sha && !date)
304
+ return null;
305
+ return (_jsxs(_Fragment, { children: [_jsx("div", { onClick: handleClick, style: {
306
+ position: 'fixed',
307
+ bottom: 8,
308
+ right: 8,
309
+ width: 24,
310
+ height: 24,
311
+ zIndex: 9999,
312
+ cursor: 'default',
313
+ opacity: 0,
314
+ }, "aria-hidden": "true" }), visible && (_jsxs("div", { onClick: () => setVisible(false), style: {
315
+ position: 'fixed',
316
+ bottom: 8,
317
+ right: 8,
318
+ zIndex: 9999,
319
+ background: 'rgba(0,0,0,0.85)',
320
+ color: '#e5e5e5',
321
+ padding: '0.5rem 0.75rem',
322
+ borderRadius: '0.5rem',
323
+ fontSize: '0.7rem',
324
+ fontFamily: 'monospace',
325
+ lineHeight: 1.6,
326
+ maxWidth: 280,
327
+ cursor: 'pointer',
328
+ animation: 'fas-fade-in 0.15s',
329
+ }, children: [v && (_jsxs("div", { children: [_jsx("span", { style: { color: '#94a3b8' }, children: "version " }), v] })), sha && (_jsxs("div", { children: [_jsx("span", { style: { color: '#94a3b8' }, children: "commit " }), sha.slice(0, 7)] })), date && (_jsxs("div", { children: [_jsx("span", { style: { color: '#94a3b8' }, children: "built " }), new Date(date).toLocaleString()] })), extra &&
330
+ Object.entries(extra).map(([k, val]) => (_jsxs("div", { children: [_jsx("span", { style: { color: '#94a3b8' }, children: k.padEnd(8) }), val] }, k))), _jsx("div", { style: { color: '#64748b', marginTop: '0.25rem', fontSize: '0.6rem' }, children: "tap to dismiss" })] }))] }));
331
+ }
332
+ /**
333
+ * Fixed bottom footer for PWA standalone mode. Shows "Part of FreeAppStore"
334
+ * branding and creates safe-area padding so app content doesn't sit in the
335
+ * iPhone home indicator / Siri zone.
336
+ *
337
+ * **Only renders when installed to home screen** (standalone display mode).
338
+ * Hidden in regular browser tabs where the browser already provides its own
339
+ * bottom chrome. This prevents accidental Siri activations on iPhones when
340
+ * users tap near the bottom of the screen.
341
+ *
342
+ * The Shell component includes this automatically. Use Footer directly only
343
+ * if you're building a custom layout without Shell.
344
+ */
345
+ export function Footer({ text }) {
346
+ const [isStandalone, setIsStandalone] = useState(false);
347
+ useEffect(() => {
348
+ if (typeof window === 'undefined')
349
+ return;
350
+ const mq = window.matchMedia('(display-mode: standalone)');
351
+ const check = () => {
352
+ setIsStandalone(mq.matches || navigator.standalone === true);
353
+ };
354
+ check();
355
+ mq.addEventListener('change', check);
356
+ return () => mq.removeEventListener('change', check);
357
+ }, []);
358
+ if (!isStandalone)
359
+ return null;
360
+ return (_jsx("footer", { style: {
361
+ position: 'fixed',
362
+ left: 0,
363
+ right: 0,
364
+ bottom: 0,
365
+ zIndex: 900,
366
+ textAlign: 'center',
367
+ background: 'var(--surface, var(--dock, #ffffff))',
368
+ borderTop: '1px solid var(--border, var(--line, #e2e8f0))',
369
+ paddingTop: '0.5rem',
370
+ paddingBottom: 'calc(0.5rem + env(safe-area-inset-bottom, 0px))',
371
+ backdropFilter: 'blur(20px)',
372
+ WebkitBackdropFilter: 'blur(20px)',
373
+ }, children: _jsx("a", { href: "https://freeappstore.online", target: "_blank", rel: "noopener noreferrer", style: {
374
+ fontSize: '0.65rem',
375
+ fontWeight: 600,
376
+ letterSpacing: '0.05em',
377
+ textTransform: 'uppercase',
378
+ color: 'var(--muted, #64748b)',
379
+ textDecoration: 'none',
380
+ }, children: text ?? 'Part of FreeAppStore' }) }));
381
+ }
382
+ /**
383
+ * Returns true when the app is running in PWA standalone mode (installed
384
+ * to home screen). Use this to add bottom padding to your content area
385
+ * so it doesn't sit behind the Footer.
386
+ */
387
+ export function useStandalone() {
388
+ const [standalone, setStandalone] = useState(false);
389
+ useEffect(() => {
390
+ if (typeof window === 'undefined')
391
+ return;
392
+ const mq = window.matchMedia('(display-mode: standalone)');
393
+ const check = () => {
394
+ setStandalone(mq.matches || navigator.standalone === true);
395
+ };
396
+ check();
397
+ mq.addEventListener('change', check);
398
+ return () => mq.removeEventListener('change', check);
399
+ }, []);
400
+ return standalone;
401
+ }
73
402
  export function KeyPrompt({ app, provider, providerName, message }) {
74
403
  const name = providerName ?? provider;
75
- const msg = message ?? `This app uses ${name} and needs your API key. Your key is stored securely on the FreeAppStore platform and is never visible to the app.`;
76
- return (_jsxs("div", { style: { background: 'var(--surface, var(--panel, #f8fafc))', border: '1px solid var(--border, var(--line, #e2e8f0))', borderRadius: 'var(--radius, 0.75rem)', padding: '1.5rem', maxWidth: 420, margin: '2rem auto', textAlign: 'center' }, children: [_jsx("div", { style: { fontSize: '1.5rem', marginBottom: '0.5rem' }, children: _jsx("svg", { width: "28", height: "28", viewBox: "0 0 24 24", fill: "none", stroke: "var(--muted, #64748b)", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: { display: 'inline-block', verticalAlign: 'middle' }, children: _jsx("path", { d: "M21 2l-2 2m-7.61 7.61a5.5 5.5 0 1 1-7.778 7.778 5.5 5.5 0 0 1 7.777-7.777zm0 0L15.5 7.5m0 0l3 3L22 7l-3-3m-3.5 3.5L19 4" }) }) }), _jsxs("div", { style: { fontSize: '1rem', fontWeight: 700, color: 'var(--ink, #1e293b)', marginBottom: '0.5rem' }, children: [name, " API key required"] }), _jsx("p", { style: { fontSize: '0.85rem', color: 'var(--muted, #64748b)', margin: '0 0 1rem', lineHeight: 1.5 }, children: msg }), _jsxs("button", { onClick: () => app.keys.manage(provider), style: { background: 'var(--accent, #2563eb)', color: '#fff', border: 'none', padding: '0.6rem 1.5rem', borderRadius: 'var(--radius, 0.75rem)', fontSize: '0.9rem', fontWeight: 700, cursor: 'pointer', fontFamily: 'inherit' }, children: ["Configure ", name, " key"] })] }));
404
+ const msg = message ??
405
+ `This app uses ${name} and needs your API key. Your key is stored securely on the FreeAppStore platform and is never visible to the app.`;
406
+ return (_jsxs("div", { style: {
407
+ background: 'var(--surface, var(--panel, #f8fafc))',
408
+ border: '1px solid var(--border, var(--line, #e2e8f0))',
409
+ borderRadius: 'var(--radius, 0.75rem)',
410
+ padding: '1.5rem',
411
+ maxWidth: 420,
412
+ margin: '2rem auto',
413
+ textAlign: 'center',
414
+ }, children: [_jsx("div", { style: { fontSize: '1.5rem', marginBottom: '0.5rem' }, children: _jsx("svg", { width: "28", height: "28", viewBox: "0 0 24 24", fill: "none", stroke: "var(--muted, #64748b)", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", style: { display: 'inline-block', verticalAlign: 'middle' }, children: _jsx("path", { d: "M21 2l-2 2m-7.61 7.61a5.5 5.5 0 1 1-7.778 7.778 5.5 5.5 0 0 1 7.777-7.777zm0 0L15.5 7.5m0 0l3 3L22 7l-3-3m-3.5 3.5L19 4" }) }) }), _jsxs("div", { style: {
415
+ fontSize: '1rem',
416
+ fontWeight: 700,
417
+ color: 'var(--ink, #1e293b)',
418
+ marginBottom: '0.5rem',
419
+ }, children: [name, " API key required"] }), _jsx("p", { style: {
420
+ fontSize: '0.85rem',
421
+ color: 'var(--muted, #64748b)',
422
+ margin: '0 0 1rem',
423
+ lineHeight: 1.5,
424
+ }, children: msg }), _jsxs("button", { onClick: () => app.keys.manage(provider), style: {
425
+ background: 'var(--accent, #2563eb)',
426
+ color: '#fff',
427
+ border: 'none',
428
+ padding: '0.6rem 1.5rem',
429
+ borderRadius: 'var(--radius, 0.75rem)',
430
+ fontSize: '0.9rem',
431
+ fontWeight: 700,
432
+ cursor: 'pointer',
433
+ fontFamily: 'inherit',
434
+ }, children: ["Configure ", name, " key"] })] }));
77
435
  }
78
436
  //# sourceMappingURL=components.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/ui/components.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/ui/components.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/ui/core.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAOxC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,6DAA6D;AAC7D,wBAAgB,MAAM,CAAC,EAAE,IAAI,EAAE,IAAS,EAAE,EAAE,WAAW,2CAmCtD;AAMD,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,YAAY,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,gEAAgE;AAChE,wBAAgB,YAAY,CAAC,EAAE,GAAG,EAAE,KAA6B,EAAE,EAAE,iBAAiB,2CAmBrF;AAMD,+DAA+D;AAC/D,wBAAgB,WAAW,4CAkD1B;AAyBD,0EAA0E;AAC1E,wBAAgB,cAAc,4CA6C7B"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/ui/core.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAMxC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,6DAA6D;AAC7D,wBAAgB,MAAM,CAAC,EAAE,IAAI,EAAE,IAAS,EAAE,EAAE,WAAW,2CAmCtD;AAMD,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,YAAY,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,gEAAgE;AAChE,wBAAgB,YAAY,CAAC,EAAE,GAAG,EAAE,KAA6B,EAAE,EAAE,iBAAiB,2CAmBrF;AAMD,+DAA+D;AAC/D,wBAAgB,WAAW,4CAqE1B;AAyBD,0EAA0E;AAC1E,wBAAgB,cAAc,4CA6C7B"}
package/dist/ui/core.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useState, useEffect, useCallback } from 'react';
2
+ import { useCallback, useEffect, useState } from 'react';
3
3
  import { useTheme } from '../hooks.js';
4
4
  /** GitHub avatar with fallback to colored initial circle. */
5
5
  export function Avatar({ user, size = 32 }) {
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/ui/core.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/ui/core.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { FreeAppStore } from '../index.js';
2
+ export interface FriendRequestBadgeProps {
3
+ app: FreeAppStore;
4
+ }
5
+ /** Red dot with incoming request count. Renders nothing if 0. Polls every 30s. */
6
+ export declare function FriendRequestBadge({ app }: FriendRequestBadgeProps): import("react/jsx-runtime").JSX.Element | null;
7
+ export interface AddFriendButtonProps {
8
+ app: FreeAppStore;
9
+ userId: string;
10
+ }
11
+ /** Context-aware button: shows Add Friend / Pending / Accept / Friends. */
12
+ export declare function AddFriendButton({ app, userId }: AddFriendButtonProps): import("react/jsx-runtime").JSX.Element | null;
13
+ export interface FriendsListProps {
14
+ app: FreeAppStore;
15
+ onSelectFriend?: (userId: string) => void;
16
+ }
17
+ /** Tabbed panel: Friends / Requests / Search. */
18
+ export declare function FriendsList({ app, onSelectFriend }: FriendsListProps): import("react/jsx-runtime").JSX.Element;
19
+ //# sourceMappingURL=friends.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"friends.d.ts","sourceRoot":"","sources":["../../src/ui/friends.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAShD,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,YAAY,CAAC;CACnB;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,CAAC,EAAE,GAAG,EAAE,EAAE,uBAAuB,kDAqClE;AAMD,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,YAAY,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,2EAA2E;AAC3E,wBAAgB,eAAe,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,oBAAoB,kDAsDpE;AAMD,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,YAAY,CAAC;IAClB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3C;AAED,iDAAiD;AACjD,wBAAgB,WAAW,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,EAAE,gBAAgB,2CAqLpE"}