@vibes.diy/base 2.6.2 → 2.6.4

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.
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ interface OptionButtonsProps {
3
+ readonly options: readonly string[];
4
+ readonly disabled?: boolean;
5
+ readonly isFirst?: boolean;
6
+ readonly onSelect?: (option: string) => boolean | undefined | Promise<boolean | undefined>;
7
+ }
8
+ export declare function OptionButtons({ options, disabled, isFirst, onSelect }: OptionButtonsProps): React.JSX.Element | null;
9
+ export default OptionButtons;
@@ -0,0 +1,55 @@
1
+ import React from "react";
2
+ export function OptionButtons({ options, disabled, isFirst, onSelect }) {
3
+ const [selected, setSelected] = React.useState(null);
4
+ const clearIfStillSelected = React.useCallback((option) => {
5
+ setSelected((current) => (current === option ? null : current));
6
+ }, []);
7
+ React.useEffect(() => {
8
+ if (disabled)
9
+ setSelected(null);
10
+ }, [disabled]);
11
+ if (options.length === 0)
12
+ return null;
13
+ const locked = disabled || selected !== null;
14
+ const handleClick = (option) => {
15
+ if (locked)
16
+ return;
17
+ setSelected(option);
18
+ try {
19
+ const selectResult = onSelect?.(option);
20
+ if (selectResult === false) {
21
+ clearIfStillSelected(option);
22
+ return;
23
+ }
24
+ if (selectResult && typeof selectResult === "object" && "then" in selectResult) {
25
+ void Promise.resolve(selectResult)
26
+ .then((ok) => {
27
+ if (ok === false)
28
+ clearIfStillSelected(option);
29
+ })
30
+ .catch(() => {
31
+ clearIfStillSelected(option);
32
+ });
33
+ }
34
+ }
35
+ catch {
36
+ clearIfStillSelected(option);
37
+ }
38
+ };
39
+ return (React.createElement("div", { className: "mt-3 flex flex-col gap-2", "data-message-role": "brainstorm-options" },
40
+ isFirst && (React.createElement("p", { className: "text-xs text-light-secondary dark:text-dark-secondary", "data-testid": "option-buttons-explainer" }, "These are optional. Pick one to suggest the next improvement, or type your own change.")),
41
+ options.map((option) => {
42
+ const isPressed = selected === option;
43
+ return (React.createElement("button", { key: option, type: "button", disabled: locked, "aria-pressed": isPressed, onClick: () => handleClick(option), className: "flex w-full items-center justify-between gap-2 rounded-md px-3 py-2 text-left text-sm font-medium transition-colors " +
44
+ "border border-light-decorative-01 dark:border-dark-decorative-01 " +
45
+ "bg-light-background-01 dark:bg-dark-background-01 " +
46
+ "text-light-primary dark:text-dark-primary " +
47
+ (locked
48
+ ? "cursor-default opacity-70"
49
+ : "hover:bg-light-decorative-01 dark:hover:bg-dark-decorative-01 cursor-pointer") },
50
+ React.createElement("span", null, option),
51
+ isPressed && (React.createElement("span", { "data-testid": "option-spinner", "aria-hidden": "true", className: "h-3 w-3 shrink-0 animate-spin rounded-full border-2 border-current border-t-transparent" }))));
52
+ })));
53
+ }
54
+ export default OptionButtons;
55
+ //# sourceMappingURL=OptionButtons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OptionButtons.js","sourceRoot":"","sources":["../../jsr/components/OptionButtons.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAuB1B,MAAM,UAAU,aAAa,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAsB;IACxF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAEpE,MAAM,oBAAoB,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,MAAc,EAAE,EAAE;QAChE,WAAW,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAClE,CAAC,EAAE,EAAE,CAAC,CAAC;IAIP,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,QAAQ;YAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAGtC,MAAM,MAAM,GAAG,QAAQ,IAAI,QAAQ,KAAK,IAAI,CAAC;IAE7C,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,EAAE;QACrC,IAAI,MAAM;YAAE,OAAO;QACnB,WAAW,CAAC,MAAM,CAAC,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC;YACxC,IAAI,YAAY,KAAK,KAAK,EAAE,CAAC;gBAC3B,oBAAoB,CAAC,MAAM,CAAC,CAAC;gBAC7B,OAAO;YACT,CAAC;YACD,IAAI,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,MAAM,IAAI,YAAY,EAAE,CAAC;gBAC/E,KAAK,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;qBAC/B,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;oBACX,IAAI,EAAE,KAAK,KAAK;wBAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC;gBACjD,CAAC,CAAC;qBACD,KAAK,CAAC,GAAG,EAAE;oBACV,oBAAoB,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC,CAAC,CAAC;YACP,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,6BAAK,SAAS,EAAC,0BAA0B,uBAAmB,oBAAoB;QAC7E,OAAO,IAAI,CACV,2BAAG,SAAS,EAAC,uDAAuD,iBAAa,0BAA0B,6FAEvG,CACL;QACA,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACtB,MAAM,SAAS,GAAG,QAAQ,KAAK,MAAM,CAAC;YACtC,OAAO,CACL,gCACE,GAAG,EAAE,MAAM,EACX,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,MAAM,kBACF,SAAS,EACvB,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,EAClC,SAAS,EACP,sHAAsH;oBACtH,mEAAmE;oBACnE,oDAAoD;oBACpD,4CAA4C;oBAC5C,CAAC,MAAM;wBACL,CAAC,CAAC,2BAA2B;wBAC7B,CAAC,CAAC,8EAA8E,CAAC;gBAGrF,kCAAO,MAAM,CAAQ;gBACpB,SAAS,IAAI,CACZ,6CACc,gBAAgB,iBAChB,MAAM,EAClB,SAAS,EAAC,yFAAyF,GACnG,CACH,CACM,CACV,CAAC;QACJ,CAAC,CAAC,CACE,CACP,CAAC;AACJ,CAAC;AAED,eAAe,aAAa,CAAC"}
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ export interface ViewerTagViewProps {
3
+ readonly slug: string;
4
+ readonly displayName?: string;
5
+ readonly avatarUrl?: string;
6
+ readonly editable?: boolean;
7
+ readonly anonymous?: boolean;
8
+ readonly onSignIn?: () => void;
9
+ readonly onPickFile?: (file: File) => void | Promise<void>;
10
+ readonly trailing?: React.ReactNode;
11
+ readonly style?: React.CSSProperties;
12
+ }
13
+ export declare function ViewerTagView({ slug, displayName, avatarUrl, editable, anonymous, onSignIn, onPickFile, trailing, style, }: ViewerTagViewProps): React.ReactElement;
14
+ export default ViewerTagView;
@@ -0,0 +1,109 @@
1
+ import React, { useEffect, useRef, useState } from "react";
2
+ function CameraGlyph({ size }) {
3
+ return (React.createElement("svg", { "aria-hidden": "true", viewBox: "0 0 24 24", width: size, height: size, style: { display: "block" }, fill: "none", stroke: "currentColor", strokeWidth: 2, strokeLinecap: "round", strokeLinejoin: "round" },
4
+ React.createElement("path", { d: "M4 7h4l2-2h4l2 2h4a1 1 0 0 1 1 1v9a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1Z" }),
5
+ React.createElement("circle", { cx: "12", cy: "12.5", r: "3.5" })));
6
+ }
7
+ export function ViewerTagView({ slug, displayName, avatarUrl, editable, anonymous, onSignIn, onPickFile, trailing, style, }) {
8
+ const [uploading, setUploading] = useState(false);
9
+ const [avatarError, setAvatarError] = useState(false);
10
+ const fileRef = useRef(null);
11
+ useEffect(() => {
12
+ setAvatarError(false);
13
+ }, [avatarUrl]);
14
+ if (anonymous) {
15
+ return (React.createElement("button", { onClick: onSignIn, style: {
16
+ display: "inline-flex",
17
+ alignItems: "center",
18
+ gap: 6,
19
+ background: "transparent",
20
+ border: "1px solid var(--accent, #6366f1)",
21
+ borderRadius: 999,
22
+ padding: "5px 14px",
23
+ fontSize: 14,
24
+ color: "var(--accent, #6366f1)",
25
+ cursor: "pointer",
26
+ fontWeight: 500,
27
+ ...style,
28
+ } }, "Sign in"));
29
+ }
30
+ async function handleFileChange(e) {
31
+ const file = e.target.files?.[0];
32
+ if (!file || !onPickFile)
33
+ return;
34
+ setUploading(true);
35
+ try {
36
+ await onPickFile(file);
37
+ }
38
+ finally {
39
+ setUploading(false);
40
+ if (fileRef.current)
41
+ fileRef.current.value = "";
42
+ }
43
+ }
44
+ const initial = slug.charAt(0).toUpperCase();
45
+ const hasAvatarImage = Boolean(avatarUrl && !avatarError);
46
+ return (React.createElement("span", { style: {
47
+ display: "inline-flex",
48
+ alignItems: "center",
49
+ gap: 8,
50
+ background: "var(--card-bg, rgba(255,255,255,0.07))",
51
+ border: "1px solid var(--border, rgba(255,255,255,0.15))",
52
+ borderRadius: 999,
53
+ padding: "5px 14px 5px 5px",
54
+ fontSize: 14,
55
+ color: "var(--text, #e0e0e0)",
56
+ ...style,
57
+ } },
58
+ React.createElement("span", { style: { position: "relative", flexShrink: 0 } },
59
+ React.createElement("span", { onClick: editable ? () => fileRef.current?.click() : undefined, style: {
60
+ width: 30,
61
+ height: 30,
62
+ borderRadius: "50%",
63
+ background: "var(--accent, #6366f1)",
64
+ display: "flex",
65
+ alignItems: "center",
66
+ justifyContent: "center",
67
+ fontSize: 12,
68
+ fontWeight: 700,
69
+ color: "white",
70
+ overflow: "hidden",
71
+ cursor: editable ? "pointer" : "default",
72
+ opacity: uploading ? 0.5 : 1,
73
+ ...(editable ? { outline: "2px dashed var(--accent, #818cf8)", outlineOffset: 2 } : {}),
74
+ } },
75
+ hasAvatarImage ? (React.createElement("img", { src: avatarUrl, alt: slug, onError: () => setAvatarError(true), style: { width: "100%", height: "100%", objectFit: "cover", borderRadius: "50%" } })) : (initial),
76
+ editable && !hasAvatarImage && (React.createElement("span", { style: {
77
+ position: "absolute",
78
+ inset: 0,
79
+ background: "rgba(15,12,40,0.72)",
80
+ display: "flex",
81
+ alignItems: "center",
82
+ justifyContent: "center",
83
+ color: "var(--accent-text, var(--accent, #a5b4fc))",
84
+ borderRadius: "50%",
85
+ } },
86
+ React.createElement(CameraGlyph, { size: 13 })))),
87
+ editable && hasAvatarImage && (React.createElement("span", { style: {
88
+ position: "absolute",
89
+ right: -1,
90
+ bottom: -1,
91
+ width: 13,
92
+ height: 13,
93
+ borderRadius: "50%",
94
+ background: "rgba(15,12,40,0.9)",
95
+ border: "1px solid var(--border, rgba(255,255,255,0.25))",
96
+ display: "flex",
97
+ alignItems: "center",
98
+ justifyContent: "center",
99
+ lineHeight: 1,
100
+ color: "var(--accent-text, var(--accent, #a5b4fc))",
101
+ pointerEvents: "none",
102
+ } },
103
+ React.createElement(CameraGlyph, { size: 9 })))),
104
+ React.createElement("span", { style: { fontWeight: 500 } }, displayName ?? slug),
105
+ trailing,
106
+ editable && React.createElement("input", { ref: fileRef, type: "file", accept: "image/*", style: { display: "none" }, onChange: handleFileChange })));
107
+ }
108
+ export default ViewerTagView;
109
+ //# sourceMappingURL=ViewerTagView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViewerTagView.js","sourceRoot":"","sources":["../../jsr/components/ViewerTagView.tsx"],"names":[],"mappings":"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"}
@@ -11,3 +11,5 @@ export * from "./VibesPanel.js";
11
11
  export * from "./VibesSwitch.styles.js";
12
12
  export * from "./VibesSwitch.js";
13
13
  export * from "./ExpandedVibesPill.js";
14
+ export * from "./OptionButtons.js";
15
+ export * from "./ViewerTagView.js";
@@ -11,4 +11,6 @@ export * from "./VibesPanel.js";
11
11
  export * from "./VibesSwitch.styles.js";
12
12
  export * from "./VibesSwitch.js";
13
13
  export * from "./ExpandedVibesPill.js";
14
+ export * from "./OptionButtons.js";
15
+ export * from "./ViewerTagView.js";
14
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../jsr/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../jsr/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibes.diy/base",
3
- "version": "2.6.2",
3
+ "version": "2.6.4",
4
4
  "type": "module",
5
5
  "main": "./index.js",
6
6
  "scripts": {
@@ -11,9 +11,9 @@
11
11
  "@emotion/css": "~11.13.5",
12
12
  "@fireproof/core-runtime": "~0.24.19",
13
13
  "@fireproof/use-fireproof": "~0.24.19",
14
- "@vibes.diy/use-vibes-types": "2.6.2",
15
- "@vibes.diy/vibe-runtime": "2.6.2",
16
- "@vibes.diy/vibe-types": "2.6.2",
14
+ "@vibes.diy/use-vibes-types": "2.6.4",
15
+ "@vibes.diy/vibe-runtime": "2.6.4",
16
+ "@vibes.diy/vibe-types": "2.6.4",
17
17
  "qrcode": "~1.5.4",
18
18
  "react": "~19.2.7",
19
19
  "react-dom": "~19.2.7"