ugly-app 0.1.139 → 0.1.140

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.139";
1
+ export declare const CLI_VERSION = "0.1.140";
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.139";
2
+ export const CLI_VERSION = "0.1.140";
3
3
  //# sourceMappingURL=version.js.map
@@ -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,CAyJ3D"}
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,CAgL3D"}
@@ -19,7 +19,27 @@ export function FeedbackButton({ socket }) {
19
19
  return;
20
20
  setSubmitting(true);
21
21
  try {
22
- const screenshotData = await captureScreenshot();
22
+ const screenshot = await captureScreenshot();
23
+ let screenshotUri;
24
+ let screenshotData;
25
+ if (screenshot) {
26
+ try {
27
+ const { uploadUrl: url, resultUrl: publicUrl } = (await socket.request('uploadUrl', {
28
+ key: `feedback/${Date.now()}.png`,
29
+ contentType: 'image/png',
30
+ }));
31
+ await fetch(url, {
32
+ method: 'PUT',
33
+ body: Uint8Array.from(atob(screenshot), (c) => c.charCodeAt(0)),
34
+ headers: { 'Content-Type': 'image/png' },
35
+ });
36
+ screenshotUri = publicUrl;
37
+ }
38
+ catch {
39
+ // Upload failed — fall back to inline base64
40
+ screenshotData = screenshot;
41
+ }
42
+ }
23
43
  const recentLogs = getConsoleBuffer().slice(-50).map((e) => ({
24
44
  timestamp: e.timestamp,
25
45
  level: e.level,
@@ -29,7 +49,8 @@ export function FeedbackButton({ socket }) {
29
49
  message: message.trim(),
30
50
  type,
31
51
  url: window.location.href,
32
- screenshotData: screenshotData ?? undefined,
52
+ screenshotUri,
53
+ screenshotData,
33
54
  context: JSON.stringify(getFeedbackContext()),
34
55
  previousLogs: recentLogs,
35
56
  });
@@ -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":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Storage.d.ts","sourceRoot":"","sources":["../../src/server/Storage.ts"],"names":[],"mappings":"AAuEA,MAAM,WAAW,aAAa;IAC5B,GAAG,CACD,MAAM,EAAE,QAAQ,GAAG,MAAM,EACzB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,GAAG,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACpD,YAAY,CACV,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,aAAa,CA8CnD"}
1
+ {"version":3,"file":"Storage.d.ts","sourceRoot":"","sources":["../../src/server/Storage.ts"],"names":[],"mappings":"AA0EA,MAAM,WAAW,aAAa;IAC5B,GAAG,CACD,MAAM,EAAE,QAAQ,GAAG,MAAM,EACzB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChE,GAAG,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACpD,YAAY,CACV,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,aAAa,CA8CnD"}
@@ -39,8 +39,10 @@ function getBucketName(bucket) {
39
39
  return name;
40
40
  }
41
41
  function getBaseUrl(bucket) {
42
- if (isDev())
43
- return `http://localhost:9000/${bucket}/`;
42
+ if (isDev()) {
43
+ const endpoint = process.env['MINIO_ENDPOINT'] ?? 'http://localhost:9000';
44
+ return `${endpoint}/${bucket}/`;
45
+ }
44
46
  const url = bucket === 'public'
45
47
  ? process.env['STORAGE_PUBLIC_URL'] ??
46
48
  process.env['CLOUDFLARE_R2_PUBLIC_URL']
@@ -1 +1 @@
1
- {"version":3,"file":"Storage.js","sourceRoot":"","sources":["../../src/server/Storage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,QAAQ,GACT,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,SAAS,KAAK;IACZ,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC;AAC/C,CAAC;AAED,SAAS,WAAW;IAClB,IAAI,KAAK,EAAE,EAAE,CAAC;QACZ,OAAO,IAAI,QAAQ,CAAC;YAClB,MAAM,EAAE,WAAW;YACnB,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,uBAAuB;YAClE,WAAW,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE;YACzE,cAAc,EAAE,IAAI;SACrB,CAAC,CAAC;IACL,CAAC;IACD,MAAM,SAAS,GACb,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAC5E,MAAM,WAAW,GACf,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC7C,MAAM,eAAe,GACnB,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IACjD,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW,IAAI,CAAC,eAAe,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CACb,uGAAuG,CACxG,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,QAAQ,CAAC;QAClB,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,WAAW,SAAS,2BAA2B;QACzD,WAAW,EAAE,EAAE,WAAW,EAAE,eAAe,EAAE;KAC9C,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,MAAyB;IAC9C,IAAI,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC;IAC3B,MAAM,IAAI,GACR,MAAM,KAAK,QAAQ;QACjB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;YACpC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;QAC5C,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IAC/C,IAAI,CAAC,IAAI;QACP,MAAM,IAAI,KAAK,CACb,qBAAqB,MAAM,CAAC,WAAW,EAAE,gCAAgC,CAC1E,CAAC;IACJ,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,MAAyB;IAC3C,IAAI,KAAK,EAAE;QAAE,OAAO,yBAAyB,MAAM,GAAG,CAAC;IACvD,MAAM,GAAG,GACP,MAAM,KAAK,QAAQ;QACjB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC;QACzC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IAC5C,IAAI,CAAC,GAAG;QACN,MAAM,IAAI,KAAK,CACb,qBAAqB,MAAM,CAAC,WAAW,EAAE,6BAA6B,CACvE,CAAC;IACJ,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC;AAC7C,CAAC;AAiBD;;;;GAIG;AACH,MAAM,UAAU,mBAAmB;IACjC,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IAEzB,OAAO;QACL,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW;YACtC,MAAM,EAAE,CAAC,IAAI,CACX,IAAI,gBAAgB,CAAC;gBACnB,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC;gBAC7B,GAAG,EAAE,GAAG;gBACR,IAAI,EAAE,IAAI;gBACV,WAAW,EAAE,WAAW;aACzB,CAAC,CACH,CAAC;YACF,OAAO,UAAU,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;QAClC,CAAC;QAED,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO;YACjC,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;YACxC,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC3C,MAAM,EAAE,CAAC,IAAI,CACX,IAAI,iBAAiB,CAAC;gBACpB,UAAU,EAAE,GAAG,SAAS,IAAI,OAAO,EAAE;gBACrC,MAAM,EAAE,UAAU;gBAClB,GAAG,EAAE,OAAO;aACb,CAAC,CACH,CAAC;YACF,MAAM,EAAE,CAAC,IAAI,CACX,IAAI,mBAAmB,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAC7D,CAAC;YACF,OAAO,UAAU,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC;QACxC,CAAC;QAED,GAAG,CAAC,MAAM,EAAE,GAAG;YACb,OAAO,UAAU,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;QAClC,CAAC;QAED,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG;YAC5B,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC;gBACnC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC;gBAC7B,GAAG,EAAE,GAAG;aACT,CAAC,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACvE,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;YAC3C,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;QAClC,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"Storage.js","sourceRoot":"","sources":["../../src/server/Storage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,EAChB,QAAQ,GACT,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,SAAS,KAAK;IACZ,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC;AAC/C,CAAC;AAED,SAAS,WAAW;IAClB,IAAI,KAAK,EAAE,EAAE,CAAC;QACZ,OAAO,IAAI,QAAQ,CAAC;YAClB,MAAM,EAAE,WAAW;YACnB,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,uBAAuB;YAClE,WAAW,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE;YACzE,cAAc,EAAE,IAAI;SACrB,CAAC,CAAC;IACL,CAAC;IACD,MAAM,SAAS,GACb,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAC5E,MAAM,WAAW,GACf,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC7C,MAAM,eAAe,GACnB,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IACjD,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW,IAAI,CAAC,eAAe,EAAE,CAAC;QACnD,MAAM,IAAI,KAAK,CACb,uGAAuG,CACxG,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,QAAQ,CAAC;QAClB,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,WAAW,SAAS,2BAA2B;QACzD,WAAW,EAAE,EAAE,WAAW,EAAE,eAAe,EAAE;KAC9C,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,MAAyB;IAC9C,IAAI,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC;IAC3B,MAAM,IAAI,GACR,MAAM,KAAK,QAAQ;QACjB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;YACpC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;QAC5C,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IAC/C,IAAI,CAAC,IAAI;QACP,MAAM,IAAI,KAAK,CACb,qBAAqB,MAAM,CAAC,WAAW,EAAE,gCAAgC,CAC1E,CAAC;IACJ,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,MAAyB;IAC3C,IAAI,KAAK,EAAE,EAAE,CAAC;QACZ,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,uBAAuB,CAAC;QAC1E,OAAO,GAAG,QAAQ,IAAI,MAAM,GAAG,CAAC;IAClC,CAAC;IACD,MAAM,GAAG,GACP,MAAM,KAAK,QAAQ;QACjB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC;QACzC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IAC5C,IAAI,CAAC,GAAG;QACN,MAAM,IAAI,KAAK,CACb,qBAAqB,MAAM,CAAC,WAAW,EAAE,6BAA6B,CACvE,CAAC;IACJ,OAAO,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC;AAC7C,CAAC;AAiBD;;;;GAIG;AACH,MAAM,UAAU,mBAAmB;IACjC,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IAEzB,OAAO;QACL,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW;YACtC,MAAM,EAAE,CAAC,IAAI,CACX,IAAI,gBAAgB,CAAC;gBACnB,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC;gBAC7B,GAAG,EAAE,GAAG;gBACR,IAAI,EAAE,IAAI;gBACV,WAAW,EAAE,WAAW;aACzB,CAAC,CACH,CAAC;YACF,OAAO,UAAU,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;QAClC,CAAC;QAED,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO;YACjC,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;YACxC,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC3C,MAAM,EAAE,CAAC,IAAI,CACX,IAAI,iBAAiB,CAAC;gBACpB,UAAU,EAAE,GAAG,SAAS,IAAI,OAAO,EAAE;gBACrC,MAAM,EAAE,UAAU;gBAClB,GAAG,EAAE,OAAO;aACb,CAAC,CACH,CAAC;YACF,MAAM,EAAE,CAAC,IAAI,CACX,IAAI,mBAAmB,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAC7D,CAAC;YACF,OAAO,UAAU,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC;QACxC,CAAC;QAED,GAAG,CAAC,MAAM,EAAE,GAAG;YACb,OAAO,UAAU,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;QAClC,CAAC;QAED,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG;YAC5B,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC;gBACnC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC;gBAC7B,GAAG,EAAE,GAAG;aACT,CAAC,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACvE,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;YAC3C,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;QAClC,CAAC;KACF,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ugly-app",
3
- "version": "0.1.139",
3
+ "version": "0.1.140",
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.139";
2
+ export const CLI_VERSION = "0.1.140";
@@ -26,7 +26,29 @@ export function FeedbackButton({ socket }: Props): ReactNode {
26
26
  if (!socket || !message.trim()) return;
27
27
  setSubmitting(true);
28
28
  try {
29
- const screenshotData = await captureScreenshot();
29
+ const screenshot = await captureScreenshot();
30
+ let screenshotUri: string | undefined;
31
+ let screenshotData: string | undefined;
32
+ if (screenshot) {
33
+ try {
34
+ const { uploadUrl: url, resultUrl: publicUrl } = (await socket.request(
35
+ 'uploadUrl',
36
+ {
37
+ key: `feedback/${Date.now()}.png`,
38
+ contentType: 'image/png',
39
+ },
40
+ )) as { uploadUrl: string; resultUrl: string };
41
+ await fetch(url, {
42
+ method: 'PUT',
43
+ body: Uint8Array.from(atob(screenshot), (c) => c.charCodeAt(0)),
44
+ headers: { 'Content-Type': 'image/png' },
45
+ });
46
+ screenshotUri = publicUrl;
47
+ } catch {
48
+ // Upload failed — fall back to inline base64
49
+ screenshotData = screenshot;
50
+ }
51
+ }
30
52
  const recentLogs = getConsoleBuffer().slice(-50).map((e) => ({
31
53
  timestamp: e.timestamp,
32
54
  level: e.level,
@@ -36,7 +58,8 @@ export function FeedbackButton({ socket }: Props): ReactNode {
36
58
  message: message.trim(),
37
59
  type,
38
60
  url: window.location.href,
39
- screenshotData: screenshotData ?? undefined,
61
+ screenshotUri,
62
+ screenshotData,
40
63
  context: JSON.stringify(getFeedbackContext()),
41
64
  previousLogs: recentLogs,
42
65
  });
@@ -55,7 +55,10 @@ function getBucketName(bucket: 'public' | 'temp'): string {
55
55
  }
56
56
 
57
57
  function getBaseUrl(bucket: 'public' | 'temp'): string {
58
- if (isDev()) return `http://localhost:9000/${bucket}/`;
58
+ if (isDev()) {
59
+ const endpoint = process.env['MINIO_ENDPOINT'] ?? 'http://localhost:9000';
60
+ return `${endpoint}/${bucket}/`;
61
+ }
59
62
  const url =
60
63
  bucket === 'public'
61
64
  ? process.env['STORAGE_PUBLIC_URL'] ??