@agent-native/toolkit 0.16.16 → 0.17.0-nightly-20260826025507

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 (36) hide show
  1. package/dist/composer/MentionItemMedia.d.ts +9 -0
  2. package/dist/composer/MentionItemMedia.d.ts.map +1 -0
  3. package/dist/composer/MentionItemMedia.js +57 -0
  4. package/dist/composer/MentionItemMedia.js.map +1 -0
  5. package/dist/composer/MentionItemMedia.spec.d.ts +2 -0
  6. package/dist/composer/MentionItemMedia.spec.d.ts.map +1 -0
  7. package/dist/composer/MentionItemMedia.spec.js +72 -0
  8. package/dist/composer/MentionItemMedia.spec.js.map +1 -0
  9. package/dist/composer/MentionPopover.d.ts.map +1 -1
  10. package/dist/composer/MentionPopover.js +3 -24
  11. package/dist/composer/MentionPopover.js.map +1 -1
  12. package/dist/composer/TiptapComposer.d.ts.map +1 -1
  13. package/dist/composer/TiptapComposer.js +4 -1
  14. package/dist/composer/TiptapComposer.js.map +1 -1
  15. package/dist/composer/TiptapComposer.spec.js +54 -0
  16. package/dist/composer/TiptapComposer.spec.js.map +1 -1
  17. package/dist/composer/extensions/MentionReference.d.ts.map +1 -1
  18. package/dist/composer/extensions/MentionReference.js +43 -23
  19. package/dist/composer/extensions/MentionReference.js.map +1 -1
  20. package/dist/composer/index.d.ts +1 -1
  21. package/dist/composer/index.d.ts.map +1 -1
  22. package/dist/composer/runtime-adapters.d.ts +2 -0
  23. package/dist/composer/runtime-adapters.d.ts.map +1 -1
  24. package/dist/composer/runtime-adapters.js.map +1 -1
  25. package/dist/composer/types.d.ts +21 -0
  26. package/dist/composer/types.d.ts.map +1 -1
  27. package/package.json +1 -1
  28. package/src/composer/MentionItemMedia.spec.tsx +150 -0
  29. package/src/composer/MentionItemMedia.tsx +130 -0
  30. package/src/composer/MentionPopover.tsx +5 -32
  31. package/src/composer/TiptapComposer.spec.ts +63 -0
  32. package/src/composer/TiptapComposer.tsx +8 -1
  33. package/src/composer/extensions/MentionReference.tsx +54 -34
  34. package/src/composer/index.ts +2 -0
  35. package/src/composer/runtime-adapters.tsx +3 -0
  36. package/src/composer/types.ts +23 -0
@@ -1,32 +1,45 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { IconFile, IconFolder, IconFileText, IconCheckbox, IconMail, IconUser, IconPresentation, IconStack2, IconMessageChatbot, } from "@tabler/icons-react";
3
2
  import { mergeAttributes, Node } from "@tiptap/core";
4
3
  import { NodeViewWrapper, ReactNodeViewRenderer } from "@tiptap/react";
5
- const iconProps = { size: 14, className: "shrink-0 text-muted-foreground" };
6
- function MentionIcon({ icon }) {
7
- switch (icon) {
8
- case "folder":
9
- return _jsx(IconFolder, { ...iconProps });
10
- case "document":
11
- return _jsx(IconFileText, { ...iconProps });
12
- case "form":
13
- return _jsx(IconCheckbox, { ...iconProps });
14
- case "email":
15
- return _jsx(IconMail, { ...iconProps });
16
- case "user":
17
- return _jsx(IconUser, { ...iconProps });
18
- case "deck":
19
- return _jsx(IconPresentation, { ...iconProps });
20
- case "agent":
21
- return _jsx(IconMessageChatbot, { ...iconProps });
22
- case "file":
23
- return _jsx(IconFile, { ...iconProps });
24
- default:
25
- return _jsx(IconStack2, { ...iconProps });
4
+ import { MentionItemMedia } from "../MentionItemMedia.js";
5
+ function parseMentionItemMedia(value) {
6
+ if (!value)
7
+ return null;
8
+ try {
9
+ const parsed = JSON.parse(value);
10
+ if (typeof parsed !== "object" ||
11
+ parsed === null ||
12
+ Array.isArray(parsed)) {
13
+ return null;
14
+ }
15
+ const candidate = parsed;
16
+ const backgroundColor = typeof candidate.backgroundColor === "string"
17
+ ? candidate.backgroundColor
18
+ : undefined;
19
+ if (candidate.type === "none")
20
+ return { type: "none" };
21
+ if (candidate.type === "text" && typeof candidate.text === "string") {
22
+ return {
23
+ type: "text",
24
+ text: candidate.text,
25
+ ...(backgroundColor ? { backgroundColor } : {}),
26
+ };
27
+ }
28
+ if (candidate.type === "image" && typeof candidate.src === "string") {
29
+ return {
30
+ type: "image",
31
+ src: candidate.src,
32
+ ...(candidate.fit === "cover" ? { fit: "cover" } : {}),
33
+ ...(backgroundColor ? { backgroundColor } : {}),
34
+ };
35
+ }
36
+ // coercion-ok: Malformed optional media must preserve legacy draft rendering.
26
37
  }
38
+ catch { }
39
+ return null;
27
40
  }
28
41
  const MentionReferenceComponent = ({ node }) => {
29
- return (_jsx(NodeViewWrapper, { as: "span", className: "inline", children: _jsxs("span", { className: "inline-flex items-center gap-1 rounded-md border border-input bg-muted/50 px-1.5 py-0.5 text-xs font-medium text-foreground align-middle mx-0.5 max-w-[200px] select-none", title: node.attrs.refPath || node.attrs.refId || node.attrs.label, children: [_jsx(MentionIcon, { icon: node.attrs.icon }), _jsx("span", { className: "truncate", children: node.attrs.label })] }) }));
42
+ return (_jsx(NodeViewWrapper, { as: "span", className: "inline", children: _jsxs("span", { className: "inline-flex items-center gap-1 rounded-md border border-input bg-muted/50 px-1.5 py-0.5 text-xs font-medium text-foreground align-middle mx-0.5 max-w-[200px] select-none", title: node.attrs.refPath || node.attrs.refId || node.attrs.label, children: [_jsx(MentionItemMedia, { icon: node.attrs.icon, media: node.attrs.media, size: "sm", fallbackIcon: "stack" }), _jsx("span", { className: "truncate", children: node.attrs.label })] }) }));
30
43
  };
31
44
  export const MentionReference = Node.create({
32
45
  name: "mentionReference",
@@ -38,6 +51,13 @@ export const MentionReference = Node.create({
38
51
  return {
39
52
  label: { default: null },
40
53
  icon: { default: "file" },
54
+ media: {
55
+ default: null,
56
+ parseHTML: (element) => parseMentionItemMedia(element.getAttribute("data-media")),
57
+ renderHTML: (attributes) => attributes.media
58
+ ? { "data-media": JSON.stringify(attributes.media) }
59
+ : {},
60
+ },
41
61
  source: { default: "" },
42
62
  refType: { default: "file" },
43
63
  refId: { default: null },
@@ -1 +1 @@
1
- {"version":3,"file":"MentionReference.js","sourceRoot":"","sources":["../../../src/composer/extensions/MentionReference.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MentionReference.js","sourceRoot":"","sources":["../../../src/composer/extensions/MentionReference.tsx"],"names":[],"mappings":"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"}
@@ -12,5 +12,5 @@ export { AGENT_PROMPT_MAX_INLINE_IMAGE_BYTES, AGENT_PROMPT_MAX_INLINE_TEXT_CHARS
12
12
  export { MentionPopover } from "./MentionPopover.js";
13
13
  export { useMentionSearch } from "./use-mention-search.js";
14
14
  export { ComposerRuntimeAdaptersProvider, useComposerRuntimeAdapters, type ComposerRuntimeAdapters, type ComposerTranslate, } from "./runtime-adapters.js";
15
- export type { AgentComposerLayoutVariant, FileResult, SkillResult, MentionItem, Reference, SlashCommand, } from "./types.js";
15
+ export type { AgentComposerLayoutVariant, FileResult, SkillResult, MentionItem, MentionItemMedia, MentionReferenceInsert, Reference, SlashCommand, } from "./types.js";
16
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EACL,kBAAkB,EAClB,KAAK,uBAAuB,GAC7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,8BAA8B,EAC9B,kCAAkC,EAClC,sBAAsB,EACtB,wCAAwC,EACxC,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,GACjC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,0BAA0B,EAC1B,KAAK,sBAAsB,GAC5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,cAAc,EACd,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,GACjC,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,+BAA+B,EACpC,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACnC,KAAK,sBAAsB,GAC5B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,0BAA0B,EAC1B,wCAAwC,EACxC,wBAAwB,EACxB,iCAAiC,EACjC,wBAAwB,EACxB,4BAA4B,EAC5B,yBAAyB,EACzB,yBAAyB,EACzB,oBAAoB,EACpB,wBAAwB,EACxB,4BAA4B,EAC5B,KAAK,oBAAoB,EACzB,KAAK,8BAA8B,EACnC,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,GAC7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,mCAAmC,EACnC,kCAAkC,EAClC,+BAA+B,EAC/B,2BAA2B,EAC3B,2BAA2B,EAC3B,yBAAyB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,gCAAgC,GACtC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACL,+BAA+B,EAC/B,0BAA0B,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,GACvB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,0BAA0B,EAC1B,UAAU,EACV,WAAW,EACX,WAAW,EACX,SAAS,EACT,YAAY,GACb,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/composer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EACL,kBAAkB,EAClB,KAAK,uBAAuB,GAC7B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,8BAA8B,EAC9B,kCAAkC,EAClC,sBAAsB,EACtB,wCAAwC,EACxC,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,GACjC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,0BAA0B,EAC1B,KAAK,sBAAsB,GAC5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,cAAc,EACd,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,GACjC,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EAChC,KAAK,+BAA+B,EACpC,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACnC,KAAK,sBAAsB,GAC5B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,0BAA0B,EAC1B,wCAAwC,EACxC,wBAAwB,EACxB,iCAAiC,EACjC,wBAAwB,EACxB,4BAA4B,EAC5B,yBAAyB,EACzB,yBAAyB,EACzB,oBAAoB,EACpB,wBAAwB,EACxB,4BAA4B,EAC5B,KAAK,oBAAoB,EACzB,KAAK,8BAA8B,EACnC,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,GAC7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,mCAAmC,EACnC,kCAAkC,EAClC,+BAA+B,EAC/B,2BAA2B,EAC3B,2BAA2B,EAC3B,yBAAyB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,gCAAgC,GACtC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACL,+BAA+B,EAC/B,0BAA0B,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,GACvB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,0BAA0B,EAC1B,UAAU,EACV,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,sBAAsB,EACtB,SAAS,EACT,YAAY,GACb,MAAM,YAAY,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { type ComponentType, type ReactNode } from "react";
2
+ import type { MentionItemMedia } from "./types.js";
2
3
  export type ComposerTranslate = (key: string, options?: Record<string, unknown>) => string;
3
4
  export type ReasoningEffort = "auto" | "none" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max";
4
5
  export interface EngineModelGroup {
@@ -60,6 +61,7 @@ export interface ComposerBuilderConnectFlowOptions {
60
61
  export interface AgentComposerReference {
61
62
  label: string;
62
63
  icon?: string;
64
+ media?: MentionItemMedia;
63
65
  source?: string;
64
66
  refType: string;
65
67
  refId?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-adapters.d.ts","sourceRoot":"","sources":["../../src/composer/runtime-adapters.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-adapters.d.ts","sourceRoot":"","sources":["../../src/composer/runtime-adapters.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-adapters.js","sourceRoot":"","sources":["../../src/composer/runtime-adapters.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-adapters.js","sourceRoot":"","sources":["../../src/composer/runtime-adapters.tsx"],"names":[],"mappings":"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"}
@@ -10,11 +10,30 @@ export interface SkillResult {
10
10
  path: string;
11
11
  source: "codebase" | "resource";
12
12
  }
13
+ export type MentionItemMedia = {
14
+ type: "text";
15
+ /** Short text shown inside the media frame, such as an emoji or initials. */
16
+ text: string;
17
+ /** Optional CSS color used behind the text. */
18
+ backgroundColor?: string;
19
+ } | {
20
+ type: "image";
21
+ /** Image URL shown inside the media frame. Relative URLs are supported. */
22
+ src: string;
23
+ /** How the image fits the frame. Defaults to contain. */
24
+ fit?: "contain" | "cover";
25
+ /** Optional CSS color visible behind contained images. */
26
+ backgroundColor?: string;
27
+ } | {
28
+ type: "none";
29
+ };
13
30
  export interface MentionItem {
14
31
  id: string;
15
32
  label: string;
16
33
  description?: string;
17
34
  icon?: string;
35
+ /** Optional presentation that takes precedence over the legacy icon. */
36
+ media?: MentionItemMedia;
18
37
  source: string;
19
38
  refType: string;
20
39
  refPath?: string;
@@ -40,6 +59,8 @@ export interface Reference {
40
59
  export interface MentionReferenceInsert {
41
60
  label: string;
42
61
  icon?: string;
62
+ /** Optional presentation that takes precedence over the legacy icon. */
63
+ media?: MentionItemMedia;
43
64
  source?: string;
44
65
  refType: string;
45
66
  refId?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/composer/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC;IAChC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,GAAG,UAAU,CAAC;CACjC;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,iBAAiB,CAAC,EAAE,sBAAsB,EAAE,CAAC;CAC9C;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,cAAc,CAAC;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,iBAAiB,CAAC,EAAE,sBAAsB,EAAE,CAAC;CAC9C;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,KAAK,GAAG,YAAY,GAAG,WAAW,CAAC;AAExE,MAAM,MAAM,0BAA0B,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/composer/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-native/toolkit",
3
- "version": "0.16.16",
3
+ "version": "0.17.0-nightly-20260826025507",
4
4
  "description": "Reusable app-building UI and helpers for Agent-Native apps.",
5
5
  "homepage": "https://github.com/BuilderIO/agent-native#readme",
6
6
  "bugs": {
@@ -0,0 +1,150 @@
1
+ // @vitest-environment happy-dom
2
+
3
+ import React, { act } from "react";
4
+ import { createRoot, type Root } from "react-dom/client";
5
+ import { afterEach, beforeEach, describe, expect, it } from "vitest";
6
+
7
+ import { MentionItemMedia } from "./MentionItemMedia.js";
8
+ import { ComposerRuntimeAdaptersProvider } from "./runtime-adapters.js";
9
+ import type { MentionItemMedia as MentionItemMediaValue } from "./types.js";
10
+
11
+ let container: HTMLDivElement;
12
+ let root: Root;
13
+
14
+ beforeEach(() => {
15
+ container = document.createElement("div");
16
+ document.body.appendChild(container);
17
+ root = createRoot(container);
18
+ });
19
+
20
+ afterEach(() => {
21
+ act(() => root.unmount());
22
+ container.remove();
23
+ });
24
+
25
+ describe("MentionItemMedia", () => {
26
+ it("keeps the legacy icon when no media is configured", () => {
27
+ act(() => root.render(<MentionItemMedia icon="agent" />));
28
+
29
+ expect(container.querySelector("svg")).not.toBeNull();
30
+ });
31
+
32
+ it("renders provider-defined text and background", () => {
33
+ act(() =>
34
+ root.render(
35
+ <MentionItemMedia
36
+ icon="agent"
37
+ media={{
38
+ type: "text",
39
+ text: "🏠",
40
+ backgroundColor: "rgb(15, 118, 110)",
41
+ }}
42
+ />,
43
+ ),
44
+ );
45
+
46
+ expect(container.textContent).toBe("🏠");
47
+ expect(container.querySelector("svg")).toBeNull();
48
+ const frame = container.querySelector("span");
49
+ expect(frame?.className).toContain("size-5");
50
+ expect(frame?.firstElementChild?.className).toContain("size-3");
51
+ expect(frame?.firstElementChild?.className).toContain("text-[9px]");
52
+ expect(frame?.style.backgroundColor).toBe("rgb(15, 118, 110)");
53
+ });
54
+
55
+ it("allows providers to omit leading media explicitly", () => {
56
+ act(() =>
57
+ root.render(<MentionItemMedia icon="agent" media={{ type: "none" }} />),
58
+ );
59
+
60
+ expect(container.innerHTML).toBe("");
61
+ });
62
+
63
+ it("falls back to the legacy icon for empty text media", () => {
64
+ act(() =>
65
+ root.render(
66
+ <MentionItemMedia icon="agent" media={{ type: "text", text: " " }} />,
67
+ ),
68
+ );
69
+
70
+ expect(container.querySelector("svg")).not.toBeNull();
71
+ });
72
+
73
+ it("renders a contained image without leaking a referrer", () => {
74
+ act(() =>
75
+ root.render(
76
+ <MentionItemMedia
77
+ icon="agent"
78
+ media={{ type: "image", src: "/agent.png" }}
79
+ />,
80
+ ),
81
+ );
82
+
83
+ const image = container.querySelector("img");
84
+ expect(image?.getAttribute("src")).toBe("/agent.png");
85
+ expect(image?.getAttribute("referrerpolicy")).toBe("no-referrer");
86
+ expect(image?.className).toContain("size-3");
87
+ expect(image?.className).toContain("object-contain");
88
+ expect(container.querySelector("svg")).toBeNull();
89
+ });
90
+
91
+ it("resolves root-relative images against the app mount", () => {
92
+ act(() =>
93
+ root.render(
94
+ <ComposerRuntimeAdaptersProvider
95
+ adapters={{ resolvePath: (path) => `/assets${path}` }}
96
+ >
97
+ <MentionItemMedia media={{ type: "image", src: "/agent.png" }} />
98
+ </ComposerRuntimeAdaptersProvider>,
99
+ ),
100
+ );
101
+
102
+ expect(container.querySelector("img")?.getAttribute("src")).toBe(
103
+ "/assets/agent.png",
104
+ );
105
+ });
106
+
107
+ it("leaves absolute image URLs unchanged", () => {
108
+ act(() =>
109
+ root.render(
110
+ <ComposerRuntimeAdaptersProvider
111
+ adapters={{ resolvePath: (path) => `/assets${path}` }}
112
+ >
113
+ <MentionItemMedia
114
+ media={{ type: "image", src: "https://example.com/agent.png" }}
115
+ />
116
+ </ComposerRuntimeAdaptersProvider>,
117
+ ),
118
+ );
119
+
120
+ expect(container.querySelector("img")?.getAttribute("src")).toBe(
121
+ "https://example.com/agent.png",
122
+ );
123
+ });
124
+
125
+ it.each([{ type: "text" }, { type: "image", src: null }])(
126
+ "falls back safely for malformed media",
127
+ (media) => {
128
+ act(() =>
129
+ root.render(
130
+ <MentionItemMedia
131
+ icon="agent"
132
+ media={media as unknown as MentionItemMediaValue}
133
+ />,
134
+ ),
135
+ );
136
+
137
+ expect(container.querySelector("svg")).not.toBeNull();
138
+ },
139
+ );
140
+
141
+ it("preserves the compact clipboard fallback for slot references", () => {
142
+ act(() =>
143
+ root.render(<MentionItemMedia size="sm" fallbackIcon="clipboard" />),
144
+ );
145
+
146
+ expect(container.querySelector("svg")?.getAttribute("class")).toContain(
147
+ "size-3",
148
+ );
149
+ });
150
+ });
@@ -0,0 +1,130 @@
1
+ import {
2
+ IconCheckbox,
3
+ IconClipboardList,
4
+ IconFile,
5
+ IconFileText,
6
+ IconFolder,
7
+ IconMail,
8
+ IconMessageChatbot,
9
+ IconPresentation,
10
+ IconStack2,
11
+ IconUser,
12
+ } from "@tabler/icons-react";
13
+
14
+ import { useComposerRuntimeAdapters } from "./runtime-adapters.js";
15
+ import type { MentionItemMedia as MentionItemMediaValue } from "./types.js";
16
+
17
+ const iconProps = { size: 14, className: "shrink-0 text-muted-foreground" };
18
+
19
+ export interface MentionItemMediaProps {
20
+ icon?: string;
21
+ media?: MentionItemMediaValue | null;
22
+ size?: "sm" | "md";
23
+ fallbackIcon?: "clipboard" | "file" | "stack";
24
+ }
25
+
26
+ function LegacyMentionIcon({
27
+ icon,
28
+ fallbackIcon = "file",
29
+ }: Pick<MentionItemMediaProps, "icon" | "fallbackIcon">) {
30
+ if (!icon && fallbackIcon === "clipboard") {
31
+ return (
32
+ <IconClipboardList className="size-3 shrink-0 text-muted-foreground" />
33
+ );
34
+ }
35
+ switch (icon) {
36
+ case "folder":
37
+ return <IconFolder {...iconProps} />;
38
+ case "document":
39
+ return <IconFileText {...iconProps} />;
40
+ case "form":
41
+ return <IconCheckbox {...iconProps} />;
42
+ case "email":
43
+ return <IconMail {...iconProps} />;
44
+ case "user":
45
+ return <IconUser {...iconProps} />;
46
+ case "deck":
47
+ return <IconPresentation {...iconProps} />;
48
+ case "agent":
49
+ return <IconMessageChatbot {...iconProps} />;
50
+ case "file":
51
+ return <IconFile {...iconProps} />;
52
+ default:
53
+ return fallbackIcon === "stack" ? (
54
+ <IconStack2 {...iconProps} />
55
+ ) : (
56
+ <IconFile {...iconProps} />
57
+ );
58
+ }
59
+ }
60
+
61
+ export function MentionItemMedia({
62
+ icon,
63
+ media,
64
+ size = "md",
65
+ fallbackIcon = "file",
66
+ }: MentionItemMediaProps) {
67
+ const { resolvePath = (path) => path } = useComposerRuntimeAdapters();
68
+ if (media?.type === "none") return null;
69
+ const backgroundColor =
70
+ typeof media?.backgroundColor === "string"
71
+ ? media.backgroundColor
72
+ : undefined;
73
+ const text =
74
+ media?.type === "text" && typeof media.text === "string"
75
+ ? media.text.trim()
76
+ : "";
77
+ if (text) {
78
+ return (
79
+ <span
80
+ aria-hidden="true"
81
+ className={`inline-grid shrink-0 place-items-center overflow-hidden rounded-full ${
82
+ size === "sm" ? "size-4" : "size-5"
83
+ }`}
84
+ style={backgroundColor ? { backgroundColor } : undefined}
85
+ >
86
+ <span
87
+ className={`inline-grid place-items-center whitespace-nowrap leading-none ${
88
+ size === "sm" ? "size-2 text-[8px]" : "size-3 text-[9px]"
89
+ }`}
90
+ >
91
+ {text}
92
+ </span>
93
+ </span>
94
+ );
95
+ }
96
+ const src =
97
+ media?.type === "image" && typeof media.src === "string"
98
+ ? media.src.trim()
99
+ : "";
100
+ if (src) {
101
+ const coversFrame = media?.type === "image" && media.fit === "cover";
102
+ const resolvedSrc =
103
+ src.startsWith("/") && !src.startsWith("//") ? resolvePath(src) : src;
104
+ return (
105
+ <span
106
+ aria-hidden="true"
107
+ className={`inline-grid shrink-0 place-items-center overflow-hidden rounded-full ${
108
+ size === "sm" ? "size-4" : "size-5"
109
+ }`}
110
+ style={backgroundColor ? { backgroundColor } : undefined}
111
+ >
112
+ <img
113
+ alt=""
114
+ src={resolvedSrc}
115
+ decoding="async"
116
+ loading="lazy"
117
+ referrerPolicy="no-referrer"
118
+ className={
119
+ coversFrame
120
+ ? "size-full object-cover"
121
+ : size === "sm"
122
+ ? "size-2 object-contain"
123
+ : "size-3 object-contain"
124
+ }
125
+ />
126
+ </span>
127
+ );
128
+ }
129
+ return <LegacyMentionIcon icon={icon} fallbackIcon={fallbackIcon} />;
130
+ }
@@ -1,13 +1,5 @@
1
1
  import {
2
- IconFile,
3
- IconFolder,
4
2
  IconStack2,
5
- IconFileText,
6
- IconCheckbox,
7
- IconMail,
8
- IconUser,
9
- IconPresentation,
10
- IconMessageChatbot,
11
3
  IconTrash,
12
4
  IconPlus,
13
5
  IconHelp,
@@ -31,6 +23,7 @@ import {
31
23
  TooltipProvider,
32
24
  TooltipTrigger,
33
25
  } from "../ui/tooltip.js";
26
+ import { MentionItemMedia } from "./MentionItemMedia.js";
34
27
  import { useComposerRuntimeAdapters } from "./runtime-adapters.js";
35
28
  import type { MentionItem, SkillResult, SlashCommand } from "./types.js";
36
29
 
@@ -59,29 +52,6 @@ interface MentionPopoverProps {
59
52
 
60
53
  const iconProps = { size: 14, className: "shrink-0 text-muted-foreground" };
61
54
 
62
- function MentionItemIcon({ icon }: { icon?: string }) {
63
- switch (icon) {
64
- case "folder":
65
- return <IconFolder {...iconProps} />;
66
- case "document":
67
- return <IconFileText {...iconProps} />;
68
- case "form":
69
- return <IconCheckbox {...iconProps} />;
70
- case "email":
71
- return <IconMail {...iconProps} />;
72
- case "user":
73
- return <IconUser {...iconProps} />;
74
- case "deck":
75
- return <IconPresentation {...iconProps} />;
76
- case "agent":
77
- return <IconMessageChatbot {...iconProps} />;
78
- case "file":
79
- return <IconFile {...iconProps} />;
80
- default:
81
- return <IconFile {...iconProps} />;
82
- }
83
- }
84
-
85
55
  function CommandIcon({ icon }: { icon?: string }) {
86
56
  switch (icon) {
87
57
  case "clear":
@@ -369,7 +339,10 @@ export const MentionPopover = forwardRef<
369
339
  onMouseEnter={() => setSelectedIndex(idx)}
370
340
  onClick={() => onSelectMention(item)}
371
341
  >
372
- <MentionItemIcon icon={item.icon} />
342
+ <MentionItemMedia
343
+ icon={item.icon}
344
+ media={item.media}
345
+ />
373
346
  <span className="truncate text-sm">
374
347
  {item.label}
375
348
  </span>