ugly-app 0.1.141 → 0.1.142

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,2 +1,2 @@
1
- export declare const CLI_VERSION = "0.1.141";
1
+ export declare const CLI_VERSION = "0.1.142";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1,3 +1,3 @@
1
1
  // Auto-generated by prebuild — do not edit manually
2
- export const CLI_VERSION = "0.1.141";
2
+ export const CLI_VERSION = "0.1.142";
3
3
  //# sourceMappingURL=version.js.map
@@ -2,6 +2,7 @@ import { type ReactNode } from 'react';
2
2
  interface Props {
3
3
  socket: {
4
4
  request(name: string, input: unknown): Promise<unknown>;
5
+ uploadFile(file: File, key: string): Promise<string>;
5
6
  } | null;
6
7
  }
7
8
  export declare function FeedbackButton({ socket }: Props): ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"FeedbackButton.d.ts","sourceRoot":"","sources":["../../../src/client/components/FeedbackButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAKjD,UAAU,KAAK;IACb,MAAM,EAAE;QAAE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;KAAE,GAAG,IAAI,CAAC;CAC5E;AAID,wBAAgB,cAAc,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,GAAG,SAAS,CAqL3D"}
1
+ {"version":3,"file":"FeedbackButton.d.ts","sourceRoot":"","sources":["../../../src/client/components/FeedbackButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAKjD,UAAU,KAAK;IACb,MAAM,EAAE;QACN,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QACxD,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;KACtD,GAAG,IAAI,CAAC;CACV;AAID,wBAAgB,cAAc,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,GAAG,SAAS,CAsK3D"}
@@ -21,26 +21,14 @@ export function FeedbackButton({ socket }) {
21
21
  try {
22
22
  console.log('[Feedback] Capturing screenshot...');
23
23
  const screenshot = await captureScreenshot();
24
- console.log('[Feedback] Screenshot captured:', screenshot ? `${screenshot.length} chars` : 'null');
24
+ console.log('[Feedback] Screenshot captured:', screenshot ? `${Math.round(screenshot.length / 1024)}KB` : 'null');
25
25
  let screenshotUri;
26
26
  if (screenshot) {
27
- console.log('[Feedback] Requesting upload URL...');
28
- const { uploadUrl: url, resultUrl: publicUrl } = (await socket.request('uploadUrl', {
29
- key: `feedback/${Date.now()}.png`,
30
- contentType: 'image/png',
31
- }));
32
- console.log('[Feedback] Upload URL:', url);
33
- console.log('[Feedback] Result URL:', publicUrl);
34
- const resp = await fetch(url, {
35
- method: 'PUT',
36
- body: Uint8Array.from(atob(screenshot), (c) => c.charCodeAt(0)),
37
- headers: { 'Content-Type': 'image/png' },
38
- });
39
- console.log('[Feedback] Upload response:', resp.status, resp.statusText);
40
- if (!resp.ok) {
41
- throw new Error(`Screenshot upload failed: ${resp.status} ${resp.statusText}`);
42
- }
43
- screenshotUri = publicUrl;
27
+ const bytes = Uint8Array.from(atob(screenshot), (c) => c.charCodeAt(0));
28
+ const file = new File([bytes], `feedback-${Date.now()}.png`, { type: 'image/png' });
29
+ console.log('[Feedback] Uploading screenshot...');
30
+ screenshotUri = await socket.uploadFile(file, `feedback/${Date.now()}.png`);
31
+ console.log('[Feedback] Screenshot uploaded:', screenshotUri);
44
32
  }
45
33
  const recentLogs = getConsoleBuffer().slice(-50).map((e) => ({
46
34
  timestamp: e.timestamp,
@@ -1 +1 @@
1
- {"version":3,"file":"FeedbackButton.js","sourceRoot":"","sources":["../../../src/client/components/FeedbackButton.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FeedbackButton.js","sourceRoot":"","sources":["../../../src/client/components/FeedbackButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAWrD,MAAM,UAAU,cAAc,CAAC,EAAE,MAAM,EAAS;IAC9C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC3C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAe,SAAS,CAAC,CAAC;IAC1D,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExC,SAAS,UAAU;QACjB,OAAO,CAAC,IAAI,CAAC,CAAC;QACd,OAAO,CAAC,KAAK,CAAC,CAAC;QACf,UAAU,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,UAAU,YAAY;QACzB,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;YAAE,OAAO;QACvC,aAAa,CAAC,IAAI,CAAC,CAAC;QACpB,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;YAClD,MAAM,UAAU,GAAG,MAAM,iBAAiB,EAAE,CAAC;YAC7C,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAClH,IAAI,aAAiC,CAAC;YACtC,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxE,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,YAAY,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;gBACpF,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;gBAClD,aAAa,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBAC5E,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,aAAa,CAAC,CAAC;YAChE,CAAC;YACD,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC3D,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,OAAO,EAAE,CAAC,CAAC,OAAO;aACnB,CAAC,CAAC,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,oDAAoD,EAAE,aAAa,CAAC,CAAC;YACjF,MAAM,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE;gBACrC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE;gBACvB,IAAI;gBACJ,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;gBACzB,aAAa;gBACb,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC;gBAC7C,YAAY,EAAE,UAAU;aACzB,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,CAAC;YACd,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;QAChD,CAAC;gBAAS,CAAC;YACT,aAAa,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAED,OAAO,CACL,8BACE,4BACU,iBAAiB,EACzB,OAAO,EAAE,UAAU,EACnB,KAAK,EAAE;oBACL,QAAQ,EAAE,OAAO;oBACjB,MAAM,EAAE,EAAE;oBACV,KAAK,EAAE,EAAE;oBACT,MAAM,EAAE,IAAI;oBACZ,OAAO,EAAE,UAAU;oBACnB,YAAY,EAAE,CAAC;oBACf,MAAM,EAAE,MAAM;oBACd,UAAU,EAAE,SAAS;oBACrB,KAAK,EAAE,MAAM;oBACb,MAAM,EAAE,SAAS;oBACjB,QAAQ,EAAE,EAAE;oBACZ,UAAU,EAAE,GAAG;iBAChB,yBAGM,EAER,IAAI,IAAI,CACP,cACE,KAAK,EAAE;oBACL,QAAQ,EAAE,OAAO;oBACjB,MAAM,EAAE,EAAE;oBACV,KAAK,EAAE,EAAE;oBACT,MAAM,EAAE,IAAI;oBACZ,UAAU,EAAE,MAAM;oBAClB,MAAM,EAAE,mBAAmB;oBAC3B,YAAY,EAAE,EAAE;oBAChB,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE,GAAG;oBACV,SAAS,EAAE,6BAA6B;iBACzC,YAEA,IAAI,CAAC,CAAC,CAAC,CACN,YAAG,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,0CAE/C,CACL,CAAC,CAAC,CAAC,CACF,8BACE,cAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,YACrD,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAC3D,iBAEE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EACzB,KAAK,EAAE;oCACL,IAAI,EAAE,CAAC;oCACP,OAAO,EAAE,SAAS;oCAClB,YAAY,EAAE,CAAC;oCACf,MAAM,EAAE,aAAa,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE;oCACzD,UAAU,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;oCAC3C,KAAK,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;oCACnC,MAAM,EAAE,SAAS;oCACjB,QAAQ,EAAE,EAAE;iCACb,YAEA,CAAC,IAbG,CAAC,CAcC,CACV,CAAC,GACE,EACN,mBACE,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC3C,WAAW,EAAC,2BAA2B,EACvC,IAAI,EAAE,CAAC,EACP,KAAK,EAAE;gCACL,KAAK,EAAE,MAAM;gCACb,YAAY,EAAE,CAAC;gCACf,MAAM,EAAE,mBAAmB;gCAC3B,OAAO,EAAE,CAAC;gCACV,QAAQ,EAAE,EAAE;gCACZ,SAAS,EAAE,YAAY;6BACxB,GACD,EACF,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,aACpD,iBACE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAC7B,KAAK,EAAE;wCACL,IAAI,EAAE,CAAC;wCACP,OAAO,EAAE,CAAC;wCACV,YAAY,EAAE,CAAC;wCACf,MAAM,EAAE,mBAAmB;wCAC3B,UAAU,EAAE,MAAM;wCAClB,MAAM,EAAE,SAAS;qCAClB,uBAGM,EACT,iBACE,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK,YAAY,EAAE,CAAC,CAAC,CAAC,EACvC,QAAQ,EAAE,UAAU,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EACvC,KAAK,EAAE;wCACL,IAAI,EAAE,CAAC;wCACP,OAAO,EAAE,CAAC;wCACV,YAAY,EAAE,CAAC;wCACf,MAAM,EAAE,MAAM;wCACd,UAAU,EAAE,SAAS;wCACrB,KAAK,EAAE,MAAM;wCACb,MAAM,EAAE,SAAS;wCACjB,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;qCAC9B,YAEA,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,GAC5B,IACL,IACL,CACJ,GACG,CACP,IACA,CACJ,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ugly-app",
3
- "version": "0.1.141",
3
+ "version": "0.1.142",
4
4
  "type": "module",
5
5
  "main": "./dist/server/index.js",
6
6
  "exports": {
@@ -1,2 +1,2 @@
1
1
  // Auto-generated by prebuild — do not edit manually
2
- export const CLI_VERSION = "0.1.141";
2
+ export const CLI_VERSION = "0.1.142";
@@ -4,7 +4,10 @@ import { getConsoleBuffer } from '../Logger.js';
4
4
  import { captureScreenshot } from '../Screenshot.js';
5
5
 
6
6
  interface Props {
7
- socket: { request(name: string, input: unknown): Promise<unknown> } | null;
7
+ socket: {
8
+ request(name: string, input: unknown): Promise<unknown>;
9
+ uploadFile(file: File, key: string): Promise<string>;
10
+ } | null;
8
11
  }
9
12
 
10
13
  type FeedbackType = 'bug' | 'feature' | 'design';
@@ -28,29 +31,14 @@ export function FeedbackButton({ socket }: Props): ReactNode {
28
31
  try {
29
32
  console.log('[Feedback] Capturing screenshot...');
30
33
  const screenshot = await captureScreenshot();
31
- console.log('[Feedback] Screenshot captured:', screenshot ? `${screenshot.length} chars` : 'null');
34
+ console.log('[Feedback] Screenshot captured:', screenshot ? `${Math.round(screenshot.length / 1024)}KB` : 'null');
32
35
  let screenshotUri: string | undefined;
33
36
  if (screenshot) {
34
- console.log('[Feedback] Requesting upload URL...');
35
- const { uploadUrl: url, resultUrl: publicUrl } = (await socket.request(
36
- 'uploadUrl',
37
- {
38
- key: `feedback/${Date.now()}.png`,
39
- contentType: 'image/png',
40
- },
41
- )) as { uploadUrl: string; resultUrl: string };
42
- console.log('[Feedback] Upload URL:', url);
43
- console.log('[Feedback] Result URL:', publicUrl);
44
- const resp = await fetch(url, {
45
- method: 'PUT',
46
- body: Uint8Array.from(atob(screenshot), (c) => c.charCodeAt(0)),
47
- headers: { 'Content-Type': 'image/png' },
48
- });
49
- console.log('[Feedback] Upload response:', resp.status, resp.statusText);
50
- if (!resp.ok) {
51
- throw new Error(`Screenshot upload failed: ${resp.status} ${resp.statusText}`);
52
- }
53
- screenshotUri = publicUrl;
37
+ const bytes = Uint8Array.from(atob(screenshot), (c) => c.charCodeAt(0));
38
+ const file = new File([bytes], `feedback-${Date.now()}.png`, { type: 'image/png' });
39
+ console.log('[Feedback] Uploading screenshot...');
40
+ screenshotUri = await socket.uploadFile(file, `feedback/${Date.now()}.png`);
41
+ console.log('[Feedback] Screenshot uploaded:', screenshotUri);
54
42
  }
55
43
  const recentLogs = getConsoleBuffer().slice(-50).map((e) => ({
56
44
  timestamp: e.timestamp,