@vibes.diy/vibe-runtime 2.4.4 → 2.4.5

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibes.diy/vibe-runtime",
3
- "version": "2.4.4",
3
+ "version": "2.4.5",
4
4
  "type": "module",
5
5
  "main": "./index.js",
6
6
  "scripts": {
@@ -8,8 +8,8 @@
8
8
  },
9
9
  "dependencies": {
10
10
  "@adviser/cement": "~0.5.34",
11
- "@vibes.diy/base": "2.4.4",
12
- "@vibes.diy/vibe-types": "2.4.4",
11
+ "@vibes.diy/base": "2.4.5",
12
+ "@vibes.diy/vibe-types": "2.4.5",
13
13
  "arktype": "~2.2.0",
14
14
  "charwise": "~3.0.1",
15
15
  "react": "~19.2.5",
package/use-viewer-tag.js CHANGED
@@ -1,9 +1,19 @@
1
- import React, { useRef, useState } from "react";
1
+ import React, { useEffect, useRef, useState } from "react";
2
2
  import { getRegisteredVibeApi } from "./register-dependencies.js";
3
3
  export function ViewerTagImpl({ _viewer, style, ...props }) {
4
4
  const [uploading, setUploading] = useState(false);
5
+ const [avatarError, setAvatarError] = useState(false);
5
6
  const fileRef = useRef(null);
6
7
  const slugFromProp = "user" in props && props.user ? props.user.userSlug : "userSlug" in props ? props.userSlug : undefined;
8
+ const resolvedSlug = slugFromProp ?? _viewer?.userSlug ?? "";
9
+ const resolvedAvatarUrl = "user" in props && props.user?.avatarUrl
10
+ ? props.user.avatarUrl
11
+ : resolvedSlug
12
+ ? `/u/${encodeURIComponent(resolvedSlug)}/avatar`
13
+ : undefined;
14
+ useEffect(() => {
15
+ setAvatarError(false);
16
+ }, [resolvedAvatarUrl]);
7
17
  if (("userSlug" in props || "user" in props) && !slugFromProp) {
8
18
  return React.createElement("span", { style: { color: "var(--muted, #888)", fontStyle: "italic", fontSize: 13 } }, "no user handle provided");
9
19
  }
@@ -24,12 +34,6 @@ export function ViewerTagImpl({ _viewer, style, ...props }) {
24
34
  ...style,
25
35
  } }, "Sign in"));
26
36
  }
27
- const resolvedSlug = slugFromProp ?? _viewer?.userSlug ?? "";
28
- const resolvedAvatarUrl = "user" in props && props.user?.avatarUrl
29
- ? props.user.avatarUrl
30
- : resolvedSlug
31
- ? `/u/${encodeURIComponent(resolvedSlug)}/avatar`
32
- : undefined;
33
37
  const isSelf = _viewer !== null && ((!("userSlug" in props) && !("user" in props)) || resolvedSlug === _viewer?.userSlug);
34
38
  async function handleFileChange(e) {
35
39
  const file = e.target.files?.[0];
@@ -85,7 +89,7 @@ export function ViewerTagImpl({ _viewer, style, ...props }) {
85
89
  opacity: uploading ? 0.5 : 1,
86
90
  ...(isSelf ? { outline: "2px dashed var(--accent, #818cf8)", outlineOffset: 2 } : {}),
87
91
  } },
88
- resolvedAvatarUrl ? (React.createElement("img", { src: resolvedAvatarUrl, alt: resolvedSlug, style: { width: "100%", height: "100%", objectFit: "cover", borderRadius: "50%" } })) : (initial),
92
+ resolvedAvatarUrl && !avatarError ? (React.createElement("img", { src: resolvedAvatarUrl, alt: resolvedSlug, onError: () => setAvatarError(true), style: { width: "100%", height: "100%", objectFit: "cover", borderRadius: "50%" } })) : (initial),
89
93
  isSelf && (React.createElement("span", { style: {
90
94
  position: "absolute",
91
95
  inset: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"use-viewer-tag.js","sourceRoot":"","sources":["../jsr/use-viewer-tag.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-viewer-tag.js","sourceRoot":"","sources":["../jsr/use-viewer-tag.tsx"],"names":[],"mappings":"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"}