@tutti-os/ui-rich-text 0.0.33 → 0.0.34

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.
@@ -632,6 +632,13 @@
632
632
  background: var(--rich-text-at-mention-hover);
633
633
  color: var(--rich-text-at-mention-text-secondary);
634
634
  }
635
+ .rich-text-at-mention-status--activity {
636
+ padding-inline: 0;
637
+ background: transparent;
638
+ }
639
+ .rich-text-at-mention-status--activity[data-tone] {
640
+ background: transparent;
641
+ }
635
642
  .rich-text-at-mention-status [data-slot=status-dot] {
636
643
  display: inline-flex;
637
644
  width: 6px;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/at-panel/mentionPalette.css"],"sourcesContent":[".rich-text-at-mention-palette-scroll-region {\n scrollbar-width: none !important;\n -ms-overflow-style: none !important;\n scrollbar-gutter: auto;\n}\n\n.rich-text-at-mention-palette-scroll-region::-webkit-scrollbar {\n display: none !important;\n width: 0 !important;\n height: 0 !important;\n}\n\n.rich-text-at-mention-palette-scrollbar {\n position: absolute;\n top: 4px;\n right: 4px;\n bottom: 4px;\n width: 4px;\n cursor: pointer;\n opacity: 0;\n pointer-events: auto;\n transition: opacity 160ms ease-in-out;\n}\n\n.rich-text-at-mention-palette-scrollbar-thumb {\n width: 4px;\n min-height: 24px;\n border-radius: 999px;\n background: var(--transparency-block);\n cursor: grab;\n transition: background-color 160ms ease-in-out;\n will-change: transform;\n}\n\n.rich-text-at-mention-palette-scrollbar:hover\n .rich-text-at-mention-palette-scrollbar-thumb {\n background: var(--transparency-hover);\n}\n\n.rich-text-at-mention-palette-scrollbar[data-dragging=\"true\"] {\n opacity: 1;\n}\n\n.rich-text-at-mention-palette-scrollbar[data-dragging=\"true\"]\n .rich-text-at-mention-palette-scrollbar-thumb {\n background: var(--transparency-hover);\n cursor: grabbing;\n}\n\n.rich-text-at-mention-palette {\n container-type: inline-size;\n --rich-text-at-mention-bg: var(\n --background-fronted,\n var(--panel, var(--background-panel, #fff))\n );\n --rich-text-at-mention-text-primary: var(\n --text-primary,\n var(--text, #171717)\n );\n --rich-text-at-mention-text-secondary: var(\n --text-secondary,\n var(--muted, #737373)\n );\n --rich-text-at-mention-text-tertiary: var(\n --text-tertiary,\n var(--muted, #8a8a8a)\n );\n --rich-text-at-mention-line-1: var(--line-1, var(--border, #0000001a));\n --rich-text-at-mention-line-2: var(--line-2, var(--border, #00000014));\n --rich-text-at-mention-hover: var(\n --transparency-block,\n var(--accent-soft, var(--sidebar-hover, #0000000d))\n );\n --rich-text-at-mention-active: var(\n --transparency-active,\n var(--accent-hover, #00000014)\n );\n --rich-text-at-mention-accent: var(--tutti-purple, var(--accent, #5f5cf0));\n --rich-text-at-mention-danger-bg: var(--on-danger, #fee2e2);\n --rich-text-at-mention-danger-fg: var(--state-danger, #dc2626);\n --rich-text-at-mention-success-fg: var(--state-success, #16a34a);\n --rich-text-at-mention-success-bg: color-mix(\n in srgb,\n var(--rich-text-at-mention-success-fg) 12%,\n transparent\n );\n --rich-text-at-mention-warning-fg: var(--color-amber-500, #d97706);\n --rich-text-at-mention-warning-bg: color-mix(\n in srgb,\n var(--rich-text-at-mention-warning-fg) 12%,\n transparent\n );\n --rich-text-at-mention-info-fg: #0369a1;\n --rich-text-at-mention-info-bg: rgb(14 165 233 / 10%);\n}\n\n.rich-text-at-mention-palette__shell {\n display: grid;\n grid-template-rows: auto minmax(0, 1fr) auto;\n height: 100%;\n max-height: 320px;\n min-height: 0;\n overflow: hidden;\n color: var(--rich-text-at-mention-text-primary);\n font-size: 13px;\n -webkit-app-region: no-drag;\n}\n\n.rich-text-at-mention-palette__header {\n position: relative;\n z-index: 10;\n flex-shrink: 0;\n}\n\n.rich-text-at-mention-palette__footer {\n flex-shrink: 0;\n}\n\n.rich-text-at-mention-palette__scroll-shell {\n position: relative;\n min-height: 0;\n overflow: hidden;\n}\n\n.rich-text-at-mention-palette__scroll-body {\n height: 100%;\n min-height: 0;\n padding: 8px 4px 4px;\n overflow-y: auto;\n overscroll-behavior: contain;\n}\n\n.rich-text-at-mention-palette__groups,\n.rich-text-at-mention-palette__group,\n.rich-text-at-mention-palette__group-items {\n display: grid;\n}\n\n.rich-text-at-mention-palette__groups {\n gap: 12px;\n}\n\n.rich-text-at-mention-palette__group,\n.rich-text-at-mention-palette__group-items {\n gap: 4px;\n}\n\n.rich-text-at-mention-palette__group-divider {\n margin: 0 12px 8px;\n border-top: 1px solid var(--rich-text-at-mention-line-1);\n}\n\n.rich-text-at-mention-palette__group-label,\n.rich-text-at-mention-palette__group-empty {\n padding-inline: 12px;\n font-size: 13px;\n font-weight: 400;\n}\n\n.rich-text-at-mention-palette__group-label {\n color: var(--rich-text-at-mention-text-secondary);\n}\n\n.rich-text-at-mention-palette__group-empty {\n padding-block: 4px;\n color: var(--rich-text-at-mention-text-tertiary);\n}\n\n.rich-text-at-mention-palette__row-button,\n.rich-text-at-mention-palette__expand-button {\n appearance: none;\n -webkit-app-region: no-drag;\n border: 0;\n background: transparent;\n color: inherit;\n font: inherit;\n cursor: pointer;\n outline: none;\n}\n\n.rich-text-at-mention-palette__row-button {\n position: relative;\n display: flex;\n align-items: center;\n gap: 6px;\n width: 100%;\n min-width: 0;\n min-height: 36px;\n padding: 8px 10px;\n overflow: hidden;\n border-radius: 6px;\n color: var(--rich-text-at-mention-text-primary);\n text-align: left;\n user-select: none;\n transition:\n background-color 200ms ease,\n color 200ms ease;\n}\n\n.rich-text-at-mention-palette__row-button > svg,\n.rich-text-at-mention-palette__row-button svg {\n flex-shrink: 0;\n pointer-events: none;\n}\n\n.rich-text-at-mention-palette__row-button > svg:not([class*=\"size-\"]) {\n width: 16px;\n height: 16px;\n}\n\n.rich-text-at-mention-palette__row-button[data-highlighted],\n.rich-text-at-mention-palette__expand-button[data-highlighted] {\n background: var(--rich-text-at-mention-hover);\n color: var(--rich-text-at-mention-text-primary);\n}\n\n.rich-text-at-mention-palette__row-button:active,\n.rich-text-at-mention-palette__expand-button:active {\n background: var(--rich-text-at-mention-active);\n}\n\n.rich-text-at-mention-palette__expand-button {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n padding: 8px 12px;\n border-radius: 6px;\n color: var(--rich-text-at-mention-text-secondary);\n font-size: 13px;\n font-weight: 500;\n transition:\n background-color 160ms ease,\n color 160ms ease;\n}\n\n.rich-text-at-mention-palette__empty-state {\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 0;\n height: 100%;\n padding: 24px 16px;\n color: var(--rich-text-at-mention-text-tertiary);\n font-size: 13px;\n text-align: center;\n}\n\n.rich-text-at-mention-palette__empty-state-inner {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 12px;\n max-width: 28ch;\n}\n\n.rich-text-at-mention-palette__empty-state-icon {\n width: 24px;\n height: 24px;\n color: var(--rich-text-at-mention-text-tertiary);\n}\n\n.rich-text-at-mention-palette__empty-state-text {\n color: var(--rich-text-at-mention-text-tertiary);\n line-height: 20px;\n}\n\n.rich-text-at-mention-palette__loading {\n display: flex;\n align-items: center;\n gap: 8px;\n min-height: 52px;\n padding-inline: 12px;\n border-radius: 12px;\n color: var(--rich-text-at-mention-text-secondary);\n font-size: 13px;\n}\n\n.rich-text-at-mention-palette__loading-spinner {\n width: 16px;\n height: 16px;\n border: 2px solid color-mix(in srgb, currentColor 28%, transparent);\n border-top-color: currentColor;\n border-radius: 999px;\n animation: rich-text-at-mention-spin 820ms linear infinite;\n}\n\n@keyframes rich-text-at-mention-spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n.tsh-underline-tabs.rich-text-at-mention-palette-tabs {\n height: 41px;\n padding: 8px 16px 0;\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs\"] {\n position: relative;\n box-sizing: border-box;\n min-width: 0;\n height: 33px;\n padding-inline: 16px;\n border-bottom: 1px solid var(--rich-text-at-mention-line-1);\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-viewport\"] {\n height: 32px;\n overflow-x: auto;\n overflow-y: hidden;\n scrollbar-width: none;\n}\n\n.rich-text-at-mention-palette\n [data-slot=\"underline-tabs-viewport\"]::-webkit-scrollbar {\n display: none;\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-viewport\"] > div {\n position: relative;\n display: flex;\n align-items: center;\n gap: 14px;\n width: max-content;\n min-width: 100%;\n height: 32px;\n padding-bottom: 8px;\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-tab\"] {\n appearance: none;\n position: relative;\n display: inline-flex;\n align-items: center;\n flex-shrink: 0;\n gap: 6px;\n height: 24px;\n padding: 0;\n border: 0;\n background: transparent;\n color: var(--rich-text-at-mention-text-secondary);\n font: inherit;\n font-size: 13px;\n font-weight: 600;\n line-height: 24px;\n white-space: nowrap;\n cursor: pointer;\n transition: color 160ms ease;\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-tab\"]:hover,\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-tab\"]:focus-visible {\n color: var(--rich-text-at-mention-text-primary);\n outline: none;\n}\n\n.rich-text-at-mention-palette\n [data-slot=\"underline-tabs-tab\"][data-active=\"true\"] {\n color: var(--rich-text-at-mention-accent);\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-indicator\"] {\n position: absolute;\n bottom: 0;\n left: 0;\n z-index: 1;\n height: 2px;\n border-radius: 1px;\n background: var(--rich-text-at-mention-accent);\n transition:\n transform 220ms cubic-bezier(0.4, 0, 0.2, 1),\n width 220ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-scroll-left\"],\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-scroll-right\"] {\n appearance: none;\n pointer-events: none;\n position: absolute;\n top: 12px;\n z-index: 3;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n padding: 0;\n border: 0;\n border-radius: 999px;\n background: var(--rich-text-at-mention-bg);\n color: var(--rich-text-at-mention-text-secondary);\n opacity: 0;\n box-shadow: 0 4px 16px rgb(15 23 42 / 12%);\n transform: translateY(-50%) scale(0.94);\n transition:\n opacity 160ms ease,\n transform 160ms ease,\n background-color 160ms ease,\n color 160ms ease;\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-scroll-left\"] {\n left: 16px;\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-scroll-right\"] {\n right: 16px;\n}\n\n.rich-text-at-mention-palette:hover\n [data-slot=\"underline-tabs-scroll-left\"][data-visible=\"true\"],\n.rich-text-at-mention-palette:hover\n [data-slot=\"underline-tabs-scroll-right\"][data-visible=\"true\"],\n.rich-text-at-mention-palette:focus-within\n [data-slot=\"underline-tabs-scroll-left\"][data-visible=\"true\"],\n.rich-text-at-mention-palette:focus-within\n [data-slot=\"underline-tabs-scroll-right\"][data-visible=\"true\"] {\n pointer-events: auto;\n opacity: 1;\n transform: translateY(-50%) scale(1);\n}\n\n.rich-text-at-mention-palette-header {\n padding: 8px 0 0;\n}\n\n.rich-text-at-mention-palette-footer {\n min-height: 36px;\n border-top: 1px solid var(--line-2, var(--tutti-line-2));\n background: var(--background-fronted, var(--background-panel));\n}\n\n.rich-text-at-mention-palette-hint {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n width: 100%;\n height: 36px;\n padding: 0 16px 1px;\n color: var(--rich-text-at-mention-text-secondary);\n font-size: 13px;\n font-weight: 500;\n line-height: 20px;\n pointer-events: auto;\n}\n\n.rich-text-at-mention-palette-hint-item {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n white-space: nowrap;\n}\n\n.rich-text-at-mention-palette-hint-button,\n.rich-text-at-mention-palette-shortcut-button {\n appearance: none;\n border: 0;\n font: inherit;\n cursor: pointer;\n}\n\n.rich-text-at-mention-palette-hint-button {\n padding: 0;\n background: transparent;\n color: inherit;\n}\n\n.rich-text-at-mention-palette-hint-button > span:last-child,\n.rich-text-at-mention-palette-hint-item > span:last-child {\n color: var(--rich-text-at-mention-text-secondary);\n}\n\n.rich-text-at-mention-palette-shortcut {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: 20px;\n min-width: 20px;\n border: 1px solid var(--rich-text-at-mention-line-2);\n border-radius: 5px;\n background: var(--rich-text-at-mention-hover);\n color: var(--rich-text-at-mention-text-primary);\n box-shadow: inset 0 -1px 0 rgb(0 0 0 / 4%);\n font-size: 12px;\n font-weight: 650;\n line-height: 1;\n padding: 3px 6px;\n}\n\n.rich-text-at-mention-palette-hint-button:hover\n .rich-text-at-mention-palette-shortcut,\n.rich-text-at-mention-palette-hint-button:focus-visible\n .rich-text-at-mention-palette-shortcut,\n.rich-text-at-mention-palette-shortcut-button:hover,\n.rich-text-at-mention-palette-shortcut-button:focus-visible {\n border-color: var(--rich-text-at-mention-line-1);\n background: var(--rich-text-at-mention-active);\n}\n\n.rich-text-at-mention-palette-hint-button:focus-visible,\n.rich-text-at-mention-palette-shortcut-button:focus-visible {\n outline: 2px solid var(--rich-text-at-mention-line-1);\n outline-offset: 2px;\n}\n\n.rich-text-at-mention-palette-shortcut--arrow {\n width: 20px;\n min-width: 20px;\n font-size: 13px;\n line-height: 1;\n padding: 0;\n}\n\n.rich-text-at-mention-palette-shortcut-group {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n}\n\n.rich-text-at-mention-palette-hint-separator {\n color: var(--rich-text-at-mention-line-1);\n}\n\n.rich-text-at-mention-palette:hover\n .rich-text-at-mention-palette-scrollbar[data-scrollable=\"true\"] {\n opacity: 1;\n}\n\n.rich-text-at-mention-palette {\n --agent-mention-file-icon-size: 16px;\n}\n\n.rich-text-at-mention-row {\n display: flex;\n align-items: center;\n gap: 8px;\n min-width: 0;\n width: 100%;\n overflow: hidden;\n}\n\n.rich-text-at-mention-row--session {\n display: grid;\n grid-template-columns: minmax(0, 1fr) auto;\n gap: 12px;\n}\n\n.rich-text-at-mention-row--plain > :not(.rich-text-at-mention-row__text-stack) {\n flex: 0 0 auto;\n}\n\n.rich-text-at-mention-row__leading,\n.rich-text-at-mention-row__inline,\n.rich-text-at-mention-row__file-text,\n.rich-text-at-mention-row__app-text {\n display: flex;\n min-width: 0;\n overflow: hidden;\n}\n\n.rich-text-at-mention-row__leading {\n align-items: center;\n gap: 8px;\n}\n\n.rich-text-at-mention-row__inline {\n align-items: center;\n gap: 8px;\n}\n\n.rich-text-at-mention-row__file-text,\n.rich-text-at-mention-row__app-text {\n align-items: baseline;\n gap: 4px;\n}\n\n.rich-text-at-mention-row__app-text {\n flex: 1 1 auto;\n}\n\n.rich-text-at-mention-row__text-stack {\n display: grid;\n gap: 2px;\n min-width: 0;\n overflow: hidden;\n}\n\n.rich-text-at-mention-row__text-stack--fill {\n flex: 1 1 auto;\n}\n\n.rich-text-at-mention-row__title,\n.rich-text-at-mention-row__app-name,\n.rich-text-at-mention-row__session-title,\n.rich-text-at-mention-row__description,\n.rich-text-at-mention-row__app-description,\n.rich-text-at-mention-row__file-count,\n.rich-text-at-mention-row__session-participant,\n.rich-text-at-mention-row__session-summary {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 13px;\n}\n\n.rich-text-at-mention-row__title,\n.rich-text-at-mention-row__app-name,\n.rich-text-at-mention-row__session-title,\n.rich-text-at-mention-row__session-participant {\n color: var(--rich-text-at-mention-text-primary);\n font-weight: 600;\n}\n\n.rich-text-at-mention-row__title,\n.rich-text-at-mention-row__app-name {\n flex: 0 1 auto;\n}\n\n.rich-text-at-mention-row__app-name {\n max-width: 40%;\n flex-shrink: 0;\n}\n\n.rich-text-at-mention-row__description,\n.rich-text-at-mention-row__app-description,\n.rich-text-at-mention-row__file-count,\n.rich-text-at-mention-row__session-summary {\n color: var(--rich-text-at-mention-text-secondary);\n font-weight: 400;\n}\n\n.rich-text-at-mention-row__app-description {\n flex: 1 1 auto;\n}\n\n.rich-text-at-mention-row__file-count {\n flex-shrink: 0;\n}\n\n.rich-text-at-mention-row__session-title,\n.rich-text-at-mention-row__session-participant,\n.rich-text-at-mention-row__session-summary {\n line-height: 16px;\n}\n\n.rich-text-at-mention-row__media {\n display: block;\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n\n.rich-text-at-mention-row__open-references {\n display: grid;\n place-items: center;\n width: 24px;\n height: 24px;\n margin-left: auto;\n flex: 0 0 24px;\n border-radius: 5px;\n color: var(--rich-text-at-mention-text-tertiary);\n cursor: pointer;\n transition:\n background-color 160ms ease,\n color 160ms ease;\n}\n\n.rich-text-at-mention-row__open-references:hover {\n background: var(--rich-text-at-mention-active);\n color: var(--rich-text-at-mention-text-secondary);\n}\n\n.rich-text-at-mention-file-icon--glyph {\n display: grid;\n place-items: center;\n color: var(--rich-text-at-mention-text-secondary);\n}\n\n.rich-text-at-mention-app-icon {\n display: grid;\n place-items: center;\n width: 20px;\n height: 20px;\n flex: 0 0 20px;\n overflow: hidden;\n border-radius: 5px;\n background: var(--bg-block, var(--block, #0000000a));\n color: var(--rich-text-at-mention-text-secondary);\n}\n\n.rich-text-at-mention-kind-icon--app {\n width: 16px;\n height: 16px;\n}\n\n.rich-text-at-mention-avatar-stack {\n position: relative;\n isolation: isolate;\n display: block;\n width: 36px;\n height: 20px;\n flex: 0 0 36px;\n}\n\n.rich-text-at-mention-avatar-stack--agent-only {\n width: 20px;\n flex: 0 0 20px;\n}\n\n.rich-text-at-mention-avatar-stack--agent-only\n .rich-text-at-mention-avatar--agent {\n left: 0;\n}\n\n.rich-text-at-mention-avatar {\n position: absolute;\n top: 0;\n display: grid;\n width: 20px;\n height: 20px;\n overflow: hidden;\n border-radius: 999px;\n background: var(--bg-block, var(--block, #0000000a));\n}\n\n.rich-text-at-mention-avatar--user {\n left: 0;\n z-index: 0;\n}\n\n.rich-text-at-mention-avatar--agent {\n left: 16px;\n z-index: 10;\n}\n\n.rich-text-at-mention-status {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n gap: 4px;\n min-width: 0;\n width: fit-content;\n overflow: hidden;\n border: 1px solid transparent;\n white-space: nowrap;\n}\n\n.rich-text-at-mention-status[data-tone=\"blue\"] {\n background: var(--rich-text-at-mention-info-bg);\n color: var(--rich-text-at-mention-info-fg);\n}\n\n.rich-text-at-mention-status[data-tone=\"amber\"] {\n background: var(--rich-text-at-mention-warning-bg);\n color: var(--rich-text-at-mention-warning-fg);\n}\n\n.rich-text-at-mention-status[data-tone=\"green\"] {\n background: var(--rich-text-at-mention-success-bg);\n color: var(--rich-text-at-mention-success-fg);\n}\n\n.rich-text-at-mention-status[data-tone=\"red\"] {\n background: var(--rich-text-at-mention-danger-bg);\n color: var(--rich-text-at-mention-danger-fg);\n}\n\n.rich-text-at-mention-status[data-tone=\"neutral\"] {\n background: var(--rich-text-at-mention-hover);\n color: var(--rich-text-at-mention-text-secondary);\n}\n\n.rich-text-at-mention-status [data-slot=\"status-dot\"] {\n display: inline-flex;\n width: 6px;\n height: 6px;\n flex: 0 0 6px;\n border-radius: 999px;\n background: currentColor;\n}\n\n.rich-text-at-mention-status [data-slot=\"status-dot\"][data-pulse=\"true\"] {\n animation: rich-text-at-mention-pulse 1.4s ease-in-out infinite;\n}\n\n@keyframes rich-text-at-mention-pulse {\n 50% {\n opacity: 0.45;\n }\n}\n\n.rich-text-at-mention-select-indicator {\n display: grid;\n place-items: center;\n width: 18px;\n height: 18px;\n flex: 0 0 18px;\n border: 1px solid var(--border, var(--rich-text-at-mention-line-1));\n border-radius: 5px;\n background: #fff;\n color: transparent;\n}\n\n.rich-text-at-mention-select-indicator[data-selected=\"true\"] {\n border-color: #171717;\n background: #171717;\n color: #fff;\n}\n\n.rich-text-at-mention-multiselect-footer {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n padding: 8px 10px;\n border-top: 1px solid var(--border, var(--rich-text-at-mention-line-1));\n background: var(--panel, var(--rich-text-at-mention-bg));\n}\n\n.rich-text-at-mention-multiselect-footer__count {\n color: var(--rich-text-at-mention-text-secondary);\n font-size: 12px;\n font-weight: 600;\n}\n\n.rich-text-at-mention-multiselect-footer__actions {\n display: flex;\n gap: 8px;\n}\n\n.rich-text-at-mention-multiselect-footer__button {\n appearance: none;\n height: 30px;\n padding-inline: 12px;\n border-radius: 8px;\n font: inherit;\n font-size: 12px;\n font-weight: 700;\n cursor: pointer;\n}\n\n.rich-text-at-mention-multiselect-footer__button--secondary {\n border: 1px solid var(--border, var(--rich-text-at-mention-line-1));\n background: #fff;\n color: var(--text, var(--rich-text-at-mention-text-primary));\n}\n\n.rich-text-at-mention-multiselect-footer__button--primary {\n border: 0;\n background: #171717;\n color: #fff;\n}\n\n.rich-text-at-mention-multiselect-footer__button:disabled {\n opacity: 0.45;\n cursor: default;\n}\n\n/*\n * Structural styling for the shared MentionRow elements. These mirror the\n * agent composer's rules (in `agentactivity.css`) under package-owned\n * `rich-text-at-mention-*` class names so any consumer (e.g. issue-manager)\n * that does NOT load the agent stylesheet still renders styled rows. The agent\n * keeps passing its own class names via `renderMentionRow(item, classNames)`.\n */\n.rich-text-at-mention-file-thumb {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--agent-mention-file-icon-size, 16px);\n height: var(--agent-mention-file-icon-size, 16px);\n flex: 0 0 var(--agent-mention-file-icon-size, 16px);\n overflow: hidden;\n border-radius: 4px;\n background-color: var(--bg-block, var(--block));\n vertical-align: middle;\n}\n\n.rich-text-at-mention-file-thumb img {\n display: block;\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n\n/*\n * NOTE: the masked file kind-icon glyph and the fallback app glyph need raw SVG\n * mask assets. Those cannot live in this package (the `check-ui-boundaries`\n * gate restricts raw .svg assets to `packages/ui/system/src/icons/`), so only\n * the structural box (size/layout) is owned here. The agent composer supplies\n * its own masked glyph rules via `agentactivity.css` + its own class names. The\n * issue-manager file glyph + app fallback glyph are completed in Phases 3-4.\n */\n.rich-text-at-mention-file-icon {\n width: var(--agent-mention-file-icon-size, 16px);\n height: var(--agent-mention-file-icon-size, 16px);\n flex: 0 0 var(--agent-mention-file-icon-size, 16px);\n background-color: var(--folder);\n border-radius: 4px;\n}\n\n/* Fallback app glyph box (shown when a workspace-app mention has no icon URL). */\n.rich-text-at-mention-kind-icon {\n display: block;\n width: 16px;\n height: 16px;\n flex: 0 0 16px;\n background-color: currentColor;\n border-radius: 22.5%;\n}\n\n/* Session user-avatar placeholder background (no avatar URL). */\n.rich-text-at-mention-avatar-img--user-placeholder {\n background-color: var(--muted);\n}\n\n/*\n * Workspace-app icon container. Data-attribute based (matches the agent's\n * global rule) so the rounded app icon renders for any consumer of the shared\n * row, including surfaces that do not load `agentactivity.css`.\n */\n[data-workspace-app-icon=\"true\"] {\n display: inline-grid;\n min-width: 0;\n min-height: 0;\n place-items: center;\n overflow: hidden;\n border-radius: 22.5%;\n background: var(--workspace-app-icon-bg, transparent);\n}\n\n[data-workspace-app-icon=\"true\"] > img {\n display: block;\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: center;\n}\n\n[data-workspace-app-icon=\"true\"] > .rich-text-at-mention-kind-icon {\n display: block;\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../src/at-panel/mentionPalette.css"],"sourcesContent":[".rich-text-at-mention-palette-scroll-region {\n scrollbar-width: none !important;\n -ms-overflow-style: none !important;\n scrollbar-gutter: auto;\n}\n\n.rich-text-at-mention-palette-scroll-region::-webkit-scrollbar {\n display: none !important;\n width: 0 !important;\n height: 0 !important;\n}\n\n.rich-text-at-mention-palette-scrollbar {\n position: absolute;\n top: 4px;\n right: 4px;\n bottom: 4px;\n width: 4px;\n cursor: pointer;\n opacity: 0;\n pointer-events: auto;\n transition: opacity 160ms ease-in-out;\n}\n\n.rich-text-at-mention-palette-scrollbar-thumb {\n width: 4px;\n min-height: 24px;\n border-radius: 999px;\n background: var(--transparency-block);\n cursor: grab;\n transition: background-color 160ms ease-in-out;\n will-change: transform;\n}\n\n.rich-text-at-mention-palette-scrollbar:hover\n .rich-text-at-mention-palette-scrollbar-thumb {\n background: var(--transparency-hover);\n}\n\n.rich-text-at-mention-palette-scrollbar[data-dragging=\"true\"] {\n opacity: 1;\n}\n\n.rich-text-at-mention-palette-scrollbar[data-dragging=\"true\"]\n .rich-text-at-mention-palette-scrollbar-thumb {\n background: var(--transparency-hover);\n cursor: grabbing;\n}\n\n.rich-text-at-mention-palette {\n container-type: inline-size;\n --rich-text-at-mention-bg: var(\n --background-fronted,\n var(--panel, var(--background-panel, #fff))\n );\n --rich-text-at-mention-text-primary: var(\n --text-primary,\n var(--text, #171717)\n );\n --rich-text-at-mention-text-secondary: var(\n --text-secondary,\n var(--muted, #737373)\n );\n --rich-text-at-mention-text-tertiary: var(\n --text-tertiary,\n var(--muted, #8a8a8a)\n );\n --rich-text-at-mention-line-1: var(--line-1, var(--border, #0000001a));\n --rich-text-at-mention-line-2: var(--line-2, var(--border, #00000014));\n --rich-text-at-mention-hover: var(\n --transparency-block,\n var(--accent-soft, var(--sidebar-hover, #0000000d))\n );\n --rich-text-at-mention-active: var(\n --transparency-active,\n var(--accent-hover, #00000014)\n );\n --rich-text-at-mention-accent: var(--tutti-purple, var(--accent, #5f5cf0));\n --rich-text-at-mention-danger-bg: var(--on-danger, #fee2e2);\n --rich-text-at-mention-danger-fg: var(--state-danger, #dc2626);\n --rich-text-at-mention-success-fg: var(--state-success, #16a34a);\n --rich-text-at-mention-success-bg: color-mix(\n in srgb,\n var(--rich-text-at-mention-success-fg) 12%,\n transparent\n );\n --rich-text-at-mention-warning-fg: var(--color-amber-500, #d97706);\n --rich-text-at-mention-warning-bg: color-mix(\n in srgb,\n var(--rich-text-at-mention-warning-fg) 12%,\n transparent\n );\n --rich-text-at-mention-info-fg: #0369a1;\n --rich-text-at-mention-info-bg: rgb(14 165 233 / 10%);\n}\n\n.rich-text-at-mention-palette__shell {\n display: grid;\n grid-template-rows: auto minmax(0, 1fr) auto;\n height: 100%;\n max-height: 320px;\n min-height: 0;\n overflow: hidden;\n color: var(--rich-text-at-mention-text-primary);\n font-size: 13px;\n -webkit-app-region: no-drag;\n}\n\n.rich-text-at-mention-palette__header {\n position: relative;\n z-index: 10;\n flex-shrink: 0;\n}\n\n.rich-text-at-mention-palette__footer {\n flex-shrink: 0;\n}\n\n.rich-text-at-mention-palette__scroll-shell {\n position: relative;\n min-height: 0;\n overflow: hidden;\n}\n\n.rich-text-at-mention-palette__scroll-body {\n height: 100%;\n min-height: 0;\n padding: 8px 4px 4px;\n overflow-y: auto;\n overscroll-behavior: contain;\n}\n\n.rich-text-at-mention-palette__groups,\n.rich-text-at-mention-palette__group,\n.rich-text-at-mention-palette__group-items {\n display: grid;\n}\n\n.rich-text-at-mention-palette__groups {\n gap: 12px;\n}\n\n.rich-text-at-mention-palette__group,\n.rich-text-at-mention-palette__group-items {\n gap: 4px;\n}\n\n.rich-text-at-mention-palette__group-divider {\n margin: 0 12px 8px;\n border-top: 1px solid var(--rich-text-at-mention-line-1);\n}\n\n.rich-text-at-mention-palette__group-label,\n.rich-text-at-mention-palette__group-empty {\n padding-inline: 12px;\n font-size: 13px;\n font-weight: 400;\n}\n\n.rich-text-at-mention-palette__group-label {\n color: var(--rich-text-at-mention-text-secondary);\n}\n\n.rich-text-at-mention-palette__group-empty {\n padding-block: 4px;\n color: var(--rich-text-at-mention-text-tertiary);\n}\n\n.rich-text-at-mention-palette__row-button,\n.rich-text-at-mention-palette__expand-button {\n appearance: none;\n -webkit-app-region: no-drag;\n border: 0;\n background: transparent;\n color: inherit;\n font: inherit;\n cursor: pointer;\n outline: none;\n}\n\n.rich-text-at-mention-palette__row-button {\n position: relative;\n display: flex;\n align-items: center;\n gap: 6px;\n width: 100%;\n min-width: 0;\n min-height: 36px;\n padding: 8px 10px;\n overflow: hidden;\n border-radius: 6px;\n color: var(--rich-text-at-mention-text-primary);\n text-align: left;\n user-select: none;\n transition:\n background-color 200ms ease,\n color 200ms ease;\n}\n\n.rich-text-at-mention-palette__row-button > svg,\n.rich-text-at-mention-palette__row-button svg {\n flex-shrink: 0;\n pointer-events: none;\n}\n\n.rich-text-at-mention-palette__row-button > svg:not([class*=\"size-\"]) {\n width: 16px;\n height: 16px;\n}\n\n.rich-text-at-mention-palette__row-button[data-highlighted],\n.rich-text-at-mention-palette__expand-button[data-highlighted] {\n background: var(--rich-text-at-mention-hover);\n color: var(--rich-text-at-mention-text-primary);\n}\n\n.rich-text-at-mention-palette__row-button:active,\n.rich-text-at-mention-palette__expand-button:active {\n background: var(--rich-text-at-mention-active);\n}\n\n.rich-text-at-mention-palette__expand-button {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n padding: 8px 12px;\n border-radius: 6px;\n color: var(--rich-text-at-mention-text-secondary);\n font-size: 13px;\n font-weight: 500;\n transition:\n background-color 160ms ease,\n color 160ms ease;\n}\n\n.rich-text-at-mention-palette__empty-state {\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 0;\n height: 100%;\n padding: 24px 16px;\n color: var(--rich-text-at-mention-text-tertiary);\n font-size: 13px;\n text-align: center;\n}\n\n.rich-text-at-mention-palette__empty-state-inner {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 12px;\n max-width: 28ch;\n}\n\n.rich-text-at-mention-palette__empty-state-icon {\n width: 24px;\n height: 24px;\n color: var(--rich-text-at-mention-text-tertiary);\n}\n\n.rich-text-at-mention-palette__empty-state-text {\n color: var(--rich-text-at-mention-text-tertiary);\n line-height: 20px;\n}\n\n.rich-text-at-mention-palette__loading {\n display: flex;\n align-items: center;\n gap: 8px;\n min-height: 52px;\n padding-inline: 12px;\n border-radius: 12px;\n color: var(--rich-text-at-mention-text-secondary);\n font-size: 13px;\n}\n\n.rich-text-at-mention-palette__loading-spinner {\n width: 16px;\n height: 16px;\n border: 2px solid color-mix(in srgb, currentColor 28%, transparent);\n border-top-color: currentColor;\n border-radius: 999px;\n animation: rich-text-at-mention-spin 820ms linear infinite;\n}\n\n@keyframes rich-text-at-mention-spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n.tsh-underline-tabs.rich-text-at-mention-palette-tabs {\n height: 41px;\n padding: 8px 16px 0;\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs\"] {\n position: relative;\n box-sizing: border-box;\n min-width: 0;\n height: 33px;\n padding-inline: 16px;\n border-bottom: 1px solid var(--rich-text-at-mention-line-1);\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-viewport\"] {\n height: 32px;\n overflow-x: auto;\n overflow-y: hidden;\n scrollbar-width: none;\n}\n\n.rich-text-at-mention-palette\n [data-slot=\"underline-tabs-viewport\"]::-webkit-scrollbar {\n display: none;\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-viewport\"] > div {\n position: relative;\n display: flex;\n align-items: center;\n gap: 14px;\n width: max-content;\n min-width: 100%;\n height: 32px;\n padding-bottom: 8px;\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-tab\"] {\n appearance: none;\n position: relative;\n display: inline-flex;\n align-items: center;\n flex-shrink: 0;\n gap: 6px;\n height: 24px;\n padding: 0;\n border: 0;\n background: transparent;\n color: var(--rich-text-at-mention-text-secondary);\n font: inherit;\n font-size: 13px;\n font-weight: 600;\n line-height: 24px;\n white-space: nowrap;\n cursor: pointer;\n transition: color 160ms ease;\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-tab\"]:hover,\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-tab\"]:focus-visible {\n color: var(--rich-text-at-mention-text-primary);\n outline: none;\n}\n\n.rich-text-at-mention-palette\n [data-slot=\"underline-tabs-tab\"][data-active=\"true\"] {\n color: var(--rich-text-at-mention-accent);\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-indicator\"] {\n position: absolute;\n bottom: 0;\n left: 0;\n z-index: 1;\n height: 2px;\n border-radius: 1px;\n background: var(--rich-text-at-mention-accent);\n transition:\n transform 220ms cubic-bezier(0.4, 0, 0.2, 1),\n width 220ms cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-scroll-left\"],\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-scroll-right\"] {\n appearance: none;\n pointer-events: none;\n position: absolute;\n top: 12px;\n z-index: 3;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n padding: 0;\n border: 0;\n border-radius: 999px;\n background: var(--rich-text-at-mention-bg);\n color: var(--rich-text-at-mention-text-secondary);\n opacity: 0;\n box-shadow: 0 4px 16px rgb(15 23 42 / 12%);\n transform: translateY(-50%) scale(0.94);\n transition:\n opacity 160ms ease,\n transform 160ms ease,\n background-color 160ms ease,\n color 160ms ease;\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-scroll-left\"] {\n left: 16px;\n}\n\n.rich-text-at-mention-palette [data-slot=\"underline-tabs-scroll-right\"] {\n right: 16px;\n}\n\n.rich-text-at-mention-palette:hover\n [data-slot=\"underline-tabs-scroll-left\"][data-visible=\"true\"],\n.rich-text-at-mention-palette:hover\n [data-slot=\"underline-tabs-scroll-right\"][data-visible=\"true\"],\n.rich-text-at-mention-palette:focus-within\n [data-slot=\"underline-tabs-scroll-left\"][data-visible=\"true\"],\n.rich-text-at-mention-palette:focus-within\n [data-slot=\"underline-tabs-scroll-right\"][data-visible=\"true\"] {\n pointer-events: auto;\n opacity: 1;\n transform: translateY(-50%) scale(1);\n}\n\n.rich-text-at-mention-palette-header {\n padding: 8px 0 0;\n}\n\n.rich-text-at-mention-palette-footer {\n min-height: 36px;\n border-top: 1px solid var(--line-2, var(--tutti-line-2));\n background: var(--background-fronted, var(--background-panel));\n}\n\n.rich-text-at-mention-palette-hint {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: 8px;\n width: 100%;\n height: 36px;\n padding: 0 16px 1px;\n color: var(--rich-text-at-mention-text-secondary);\n font-size: 13px;\n font-weight: 500;\n line-height: 20px;\n pointer-events: auto;\n}\n\n.rich-text-at-mention-palette-hint-item {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n white-space: nowrap;\n}\n\n.rich-text-at-mention-palette-hint-button,\n.rich-text-at-mention-palette-shortcut-button {\n appearance: none;\n border: 0;\n font: inherit;\n cursor: pointer;\n}\n\n.rich-text-at-mention-palette-hint-button {\n padding: 0;\n background: transparent;\n color: inherit;\n}\n\n.rich-text-at-mention-palette-hint-button > span:last-child,\n.rich-text-at-mention-palette-hint-item > span:last-child {\n color: var(--rich-text-at-mention-text-secondary);\n}\n\n.rich-text-at-mention-palette-shortcut {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: 20px;\n min-width: 20px;\n border: 1px solid var(--rich-text-at-mention-line-2);\n border-radius: 5px;\n background: var(--rich-text-at-mention-hover);\n color: var(--rich-text-at-mention-text-primary);\n box-shadow: inset 0 -1px 0 rgb(0 0 0 / 4%);\n font-size: 12px;\n font-weight: 650;\n line-height: 1;\n padding: 3px 6px;\n}\n\n.rich-text-at-mention-palette-hint-button:hover\n .rich-text-at-mention-palette-shortcut,\n.rich-text-at-mention-palette-hint-button:focus-visible\n .rich-text-at-mention-palette-shortcut,\n.rich-text-at-mention-palette-shortcut-button:hover,\n.rich-text-at-mention-palette-shortcut-button:focus-visible {\n border-color: var(--rich-text-at-mention-line-1);\n background: var(--rich-text-at-mention-active);\n}\n\n.rich-text-at-mention-palette-hint-button:focus-visible,\n.rich-text-at-mention-palette-shortcut-button:focus-visible {\n outline: 2px solid var(--rich-text-at-mention-line-1);\n outline-offset: 2px;\n}\n\n.rich-text-at-mention-palette-shortcut--arrow {\n width: 20px;\n min-width: 20px;\n font-size: 13px;\n line-height: 1;\n padding: 0;\n}\n\n.rich-text-at-mention-palette-shortcut-group {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n}\n\n.rich-text-at-mention-palette-hint-separator {\n color: var(--rich-text-at-mention-line-1);\n}\n\n.rich-text-at-mention-palette:hover\n .rich-text-at-mention-palette-scrollbar[data-scrollable=\"true\"] {\n opacity: 1;\n}\n\n.rich-text-at-mention-palette {\n --agent-mention-file-icon-size: 16px;\n}\n\n.rich-text-at-mention-row {\n display: flex;\n align-items: center;\n gap: 8px;\n min-width: 0;\n width: 100%;\n overflow: hidden;\n}\n\n.rich-text-at-mention-row--session {\n display: grid;\n grid-template-columns: minmax(0, 1fr) auto;\n gap: 12px;\n}\n\n.rich-text-at-mention-row--plain > :not(.rich-text-at-mention-row__text-stack) {\n flex: 0 0 auto;\n}\n\n.rich-text-at-mention-row__leading,\n.rich-text-at-mention-row__inline,\n.rich-text-at-mention-row__file-text,\n.rich-text-at-mention-row__app-text {\n display: flex;\n min-width: 0;\n overflow: hidden;\n}\n\n.rich-text-at-mention-row__leading {\n align-items: center;\n gap: 8px;\n}\n\n.rich-text-at-mention-row__inline {\n align-items: center;\n gap: 8px;\n}\n\n.rich-text-at-mention-row__file-text,\n.rich-text-at-mention-row__app-text {\n align-items: baseline;\n gap: 4px;\n}\n\n.rich-text-at-mention-row__app-text {\n flex: 1 1 auto;\n}\n\n.rich-text-at-mention-row__text-stack {\n display: grid;\n gap: 2px;\n min-width: 0;\n overflow: hidden;\n}\n\n.rich-text-at-mention-row__text-stack--fill {\n flex: 1 1 auto;\n}\n\n.rich-text-at-mention-row__title,\n.rich-text-at-mention-row__app-name,\n.rich-text-at-mention-row__session-title,\n.rich-text-at-mention-row__description,\n.rich-text-at-mention-row__app-description,\n.rich-text-at-mention-row__file-count,\n.rich-text-at-mention-row__session-participant,\n.rich-text-at-mention-row__session-summary {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 13px;\n}\n\n.rich-text-at-mention-row__title,\n.rich-text-at-mention-row__app-name,\n.rich-text-at-mention-row__session-title,\n.rich-text-at-mention-row__session-participant {\n color: var(--rich-text-at-mention-text-primary);\n font-weight: 600;\n}\n\n.rich-text-at-mention-row__title,\n.rich-text-at-mention-row__app-name {\n flex: 0 1 auto;\n}\n\n.rich-text-at-mention-row__app-name {\n max-width: 40%;\n flex-shrink: 0;\n}\n\n.rich-text-at-mention-row__description,\n.rich-text-at-mention-row__app-description,\n.rich-text-at-mention-row__file-count,\n.rich-text-at-mention-row__session-summary {\n color: var(--rich-text-at-mention-text-secondary);\n font-weight: 400;\n}\n\n.rich-text-at-mention-row__app-description {\n flex: 1 1 auto;\n}\n\n.rich-text-at-mention-row__file-count {\n flex-shrink: 0;\n}\n\n.rich-text-at-mention-row__session-title,\n.rich-text-at-mention-row__session-participant,\n.rich-text-at-mention-row__session-summary {\n line-height: 16px;\n}\n\n.rich-text-at-mention-row__media {\n display: block;\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n\n.rich-text-at-mention-row__open-references {\n display: grid;\n place-items: center;\n width: 24px;\n height: 24px;\n margin-left: auto;\n flex: 0 0 24px;\n border-radius: 5px;\n color: var(--rich-text-at-mention-text-tertiary);\n cursor: pointer;\n transition:\n background-color 160ms ease,\n color 160ms ease;\n}\n\n.rich-text-at-mention-row__open-references:hover {\n background: var(--rich-text-at-mention-active);\n color: var(--rich-text-at-mention-text-secondary);\n}\n\n.rich-text-at-mention-file-icon--glyph {\n display: grid;\n place-items: center;\n color: var(--rich-text-at-mention-text-secondary);\n}\n\n.rich-text-at-mention-app-icon {\n display: grid;\n place-items: center;\n width: 20px;\n height: 20px;\n flex: 0 0 20px;\n overflow: hidden;\n border-radius: 5px;\n background: var(--bg-block, var(--block, #0000000a));\n color: var(--rich-text-at-mention-text-secondary);\n}\n\n.rich-text-at-mention-kind-icon--app {\n width: 16px;\n height: 16px;\n}\n\n.rich-text-at-mention-avatar-stack {\n position: relative;\n isolation: isolate;\n display: block;\n width: 36px;\n height: 20px;\n flex: 0 0 36px;\n}\n\n.rich-text-at-mention-avatar-stack--agent-only {\n width: 20px;\n flex: 0 0 20px;\n}\n\n.rich-text-at-mention-avatar-stack--agent-only\n .rich-text-at-mention-avatar--agent {\n left: 0;\n}\n\n.rich-text-at-mention-avatar {\n position: absolute;\n top: 0;\n display: grid;\n width: 20px;\n height: 20px;\n overflow: hidden;\n border-radius: 999px;\n background: var(--bg-block, var(--block, #0000000a));\n}\n\n.rich-text-at-mention-avatar--user {\n left: 0;\n z-index: 0;\n}\n\n.rich-text-at-mention-avatar--agent {\n left: 16px;\n z-index: 10;\n}\n\n.rich-text-at-mention-status {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n gap: 4px;\n min-width: 0;\n width: fit-content;\n overflow: hidden;\n border: 1px solid transparent;\n white-space: nowrap;\n}\n\n.rich-text-at-mention-status[data-tone=\"blue\"] {\n background: var(--rich-text-at-mention-info-bg);\n color: var(--rich-text-at-mention-info-fg);\n}\n\n.rich-text-at-mention-status[data-tone=\"amber\"] {\n background: var(--rich-text-at-mention-warning-bg);\n color: var(--rich-text-at-mention-warning-fg);\n}\n\n.rich-text-at-mention-status[data-tone=\"green\"] {\n background: var(--rich-text-at-mention-success-bg);\n color: var(--rich-text-at-mention-success-fg);\n}\n\n.rich-text-at-mention-status[data-tone=\"red\"] {\n background: var(--rich-text-at-mention-danger-bg);\n color: var(--rich-text-at-mention-danger-fg);\n}\n\n.rich-text-at-mention-status[data-tone=\"neutral\"] {\n background: var(--rich-text-at-mention-hover);\n color: var(--rich-text-at-mention-text-secondary);\n}\n\n.rich-text-at-mention-status--activity {\n padding-inline: 0;\n background: transparent;\n}\n\n.rich-text-at-mention-status--activity[data-tone] {\n background: transparent;\n}\n\n.rich-text-at-mention-status [data-slot=\"status-dot\"] {\n display: inline-flex;\n width: 6px;\n height: 6px;\n flex: 0 0 6px;\n border-radius: 999px;\n background: currentColor;\n}\n\n.rich-text-at-mention-status [data-slot=\"status-dot\"][data-pulse=\"true\"] {\n animation: rich-text-at-mention-pulse 1.4s ease-in-out infinite;\n}\n\n@keyframes rich-text-at-mention-pulse {\n 50% {\n opacity: 0.45;\n }\n}\n\n.rich-text-at-mention-select-indicator {\n display: grid;\n place-items: center;\n width: 18px;\n height: 18px;\n flex: 0 0 18px;\n border: 1px solid var(--border, var(--rich-text-at-mention-line-1));\n border-radius: 5px;\n background: #fff;\n color: transparent;\n}\n\n.rich-text-at-mention-select-indicator[data-selected=\"true\"] {\n border-color: #171717;\n background: #171717;\n color: #fff;\n}\n\n.rich-text-at-mention-multiselect-footer {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n padding: 8px 10px;\n border-top: 1px solid var(--border, var(--rich-text-at-mention-line-1));\n background: var(--panel, var(--rich-text-at-mention-bg));\n}\n\n.rich-text-at-mention-multiselect-footer__count {\n color: var(--rich-text-at-mention-text-secondary);\n font-size: 12px;\n font-weight: 600;\n}\n\n.rich-text-at-mention-multiselect-footer__actions {\n display: flex;\n gap: 8px;\n}\n\n.rich-text-at-mention-multiselect-footer__button {\n appearance: none;\n height: 30px;\n padding-inline: 12px;\n border-radius: 8px;\n font: inherit;\n font-size: 12px;\n font-weight: 700;\n cursor: pointer;\n}\n\n.rich-text-at-mention-multiselect-footer__button--secondary {\n border: 1px solid var(--border, var(--rich-text-at-mention-line-1));\n background: #fff;\n color: var(--text, var(--rich-text-at-mention-text-primary));\n}\n\n.rich-text-at-mention-multiselect-footer__button--primary {\n border: 0;\n background: #171717;\n color: #fff;\n}\n\n.rich-text-at-mention-multiselect-footer__button:disabled {\n opacity: 0.45;\n cursor: default;\n}\n\n/*\n * Structural styling for the shared MentionRow elements. These mirror the\n * agent composer's rules (in `agentactivity.css`) under package-owned\n * `rich-text-at-mention-*` class names so any consumer (e.g. issue-manager)\n * that does NOT load the agent stylesheet still renders styled rows. The agent\n * keeps passing its own class names via `renderMentionRow(item, classNames)`.\n */\n.rich-text-at-mention-file-thumb {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--agent-mention-file-icon-size, 16px);\n height: var(--agent-mention-file-icon-size, 16px);\n flex: 0 0 var(--agent-mention-file-icon-size, 16px);\n overflow: hidden;\n border-radius: 4px;\n background-color: var(--bg-block, var(--block));\n vertical-align: middle;\n}\n\n.rich-text-at-mention-file-thumb img {\n display: block;\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n\n/*\n * NOTE: the masked file kind-icon glyph and the fallback app glyph need raw SVG\n * mask assets. Those cannot live in this package (the `check-ui-boundaries`\n * gate restricts raw .svg assets to `packages/ui/system/src/icons/`), so only\n * the structural box (size/layout) is owned here. The agent composer supplies\n * its own masked glyph rules via `agentactivity.css` + its own class names. The\n * issue-manager file glyph + app fallback glyph are completed in Phases 3-4.\n */\n.rich-text-at-mention-file-icon {\n width: var(--agent-mention-file-icon-size, 16px);\n height: var(--agent-mention-file-icon-size, 16px);\n flex: 0 0 var(--agent-mention-file-icon-size, 16px);\n background-color: var(--folder);\n border-radius: 4px;\n}\n\n/* Fallback app glyph box (shown when a workspace-app mention has no icon URL). */\n.rich-text-at-mention-kind-icon {\n display: block;\n width: 16px;\n height: 16px;\n flex: 0 0 16px;\n background-color: currentColor;\n border-radius: 22.5%;\n}\n\n/* Session user-avatar placeholder background (no avatar URL). */\n.rich-text-at-mention-avatar-img--user-placeholder {\n background-color: var(--muted);\n}\n\n/*\n * Workspace-app icon container. Data-attribute based (matches the agent's\n * global rule) so the rounded app icon renders for any consumer of the shared\n * row, including surfaces that do not load `agentactivity.css`.\n */\n[data-workspace-app-icon=\"true\"] {\n display: inline-grid;\n min-width: 0;\n min-height: 0;\n place-items: center;\n overflow: hidden;\n border-radius: 22.5%;\n background: var(--workspace-app-icon-bg, transparent);\n}\n\n[data-workspace-app-icon=\"true\"] > img {\n display: block;\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: center;\n}\n\n[data-workspace-app-icon=\"true\"] > .rich-text-at-mention-kind-icon {\n display: block;\n}\n"],"mappings":"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","names":[]}
@@ -15,7 +15,7 @@ import {
15
15
  resolveMentionFileThumbnailUrl,
16
16
  resolveMentionFileVisualKind,
17
17
  selectedMentionPaletteItem
18
- } from "../chunk-3ZXEASYU.js";
18
+ } from "../chunk-DWBETNOQ.js";
19
19
 
20
20
  // src/at-panel/MentionPalette.tsx
21
21
  import {
@@ -194,9 +194,8 @@ declare function resolveMentionFileThumbnailUrl(input: {
194
194
  type MentionRowStatusTone = "amber" | "blue" | "green" | "neutral" | "red";
195
195
  type MentionRowStatusVariant = "activity" | "issue";
196
196
  /**
197
- * Background/text classes for the agent activity status badge. Ported verbatim
198
- * from the agent's `mentionStatusBadgeClassName` so the rendered DOM is
199
- * unchanged.
197
+ * Text classes for agent activity status signals. Activity rows already include
198
+ * a status dot, so they render as plain signal text instead of a filled badge.
200
199
  */
201
200
  declare function activityMentionStatusBadgeClassName(tone: MentionRowStatusTone): string;
202
201
  /**
@@ -15,7 +15,7 @@ import {
15
15
  resolveMentionFileThumbnailUrl,
16
16
  resolveMentionFileVisualKind,
17
17
  selectedMentionPaletteItem
18
- } from "../chunk-3ZXEASYU.js";
18
+ } from "../chunk-DWBETNOQ.js";
19
19
  export {
20
20
  activityMentionStatusBadgeClassName,
21
21
  activityMentionStatusTone,
@@ -177,15 +177,15 @@ function nextMentionPaletteCategory(categories, current, delta) {
177
177
  function activityMentionStatusBadgeClassName(tone) {
178
178
  switch (tone) {
179
179
  case "blue":
180
- return "bg-sky-500/10 text-sky-700";
180
+ return "bg-transparent px-0 text-[var(--status-running)]";
181
181
  case "amber":
182
- return "bg-[color:color-mix(in_srgb,var(--color-amber-500)_12%,transparent)] text-[var(--color-amber-500)]";
182
+ return "bg-transparent px-0 text-[var(--state-warning)]";
183
183
  case "green":
184
- return "bg-[var(--tsh-ui-pill-success-bg)] text-[var(--tsh-ui-pill-success-fg)]";
184
+ return "bg-transparent px-0 text-[var(--state-success)]";
185
185
  case "red":
186
- return "bg-[var(--on-danger)] text-[var(--state-danger)]";
186
+ return "bg-transparent px-0 text-[var(--state-danger)]";
187
187
  default:
188
- return "bg-[var(--transparency-block)] text-[var(--text-secondary)]";
188
+ return "bg-transparent px-0 text-[var(--text-secondary)]";
189
189
  }
190
190
  }
191
191
  function issueMentionStatusBadgeClassName(tone) {
@@ -265,4 +265,4 @@ export {
265
265
  resolveMentionFileVisualKind,
266
266
  resolveMentionFileThumbnailUrl
267
267
  };
268
- //# sourceMappingURL=chunk-3ZXEASYU.js.map
268
+ //# sourceMappingURL=chunk-DWBETNOQ.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/at-panel/mentionPaletteEntries.ts","../src/at-panel/mentionPaletteModel.ts","../src/at-panel/mentionStatusTone.ts","../src/at-panel/mentionFileVisualKind.ts"],"sourcesContent":["import type {\n MentionPaletteEntry,\n MentionPaletteState\n} from \"./mentionPaletteTypes.ts\";\n\n/**\n * Returns true when at least one group has items or a \"load more\" trigger,\n * i.e. there is something interactive to render beyond category headers.\n */\nfunction hasInteractiveGroupEntries<TItem>(\n groups: MentionPaletteState<TItem>[\"groups\"]\n): boolean {\n return groups.some((group) => group.items.length > 0 || group.hasMore);\n}\n\n/**\n * Flatten the palette state into a stable, ordered list of navigable entries.\n *\n * Mirrors the ordering and key format of `flattenAgentMentionPaletteEntries`\n * from AgentFileMentionPalette.tsx, but is generic over item type.\n *\n * Key formats:\n * category entry → `category:<categoryId>`\n * item entry → `<groupId>:<getItemKey(item, groupId)>`\n * expand entry → `expand:<groupId>`\n */\nexport function flattenMentionPaletteEntries<TItem>(\n state: MentionPaletteState<TItem>,\n getItemKey: (item: TItem, groupId: string) => string\n): MentionPaletteEntry[] {\n // Browse mode with no interactive group content → show category nav only\n if (state.mode === \"browse\" && !hasInteractiveGroupEntries(state.groups)) {\n return state.categories.map((category) => ({\n key: `category:${category.id}`,\n type: \"category\" as const,\n categoryId: category.id\n }));\n }\n\n const entries: MentionPaletteEntry[] = [];\n\n for (const group of state.groups) {\n group.items.forEach((item, index) => {\n entries.push({\n key: `${group.id}:${getItemKey(item, group.id)}`,\n type: \"item\",\n groupId: group.id,\n itemIndex: index\n });\n });\n\n if (group.hasMore) {\n entries.push({\n key: `expand:${group.id}`,\n type: \"expand\",\n groupId: group.id\n });\n }\n }\n\n return entries;\n}\n","import type {\n MentionPaletteCategory,\n MentionPaletteEntry,\n MentionPaletteGroup,\n MentionPaletteState\n} from \"./mentionPaletteTypes.ts\";\nimport { flattenMentionPaletteEntries } from \"./mentionPaletteEntries.ts\";\nimport type { RichTextTriggerQueryMatch } from \"../types/trigger.ts\";\n\nexport interface MentionPaletteModelInput<TItem> {\n activeCategoryId: string;\n categories: readonly MentionPaletteCategory[];\n groups: readonly MentionPaletteGroup<TItem>[];\n loading: boolean;\n query?: string;\n mode?: \"browse\" | \"results\";\n}\n\nexport interface MentionPaletteSectionConfig<\n TMatch extends RichTextTriggerQueryMatch = RichTextTriggerQueryMatch\n> {\n id: string;\n label?: string;\n providerIds?: readonly string[];\n matches?: (match: TMatch) => boolean;\n emptyLabel?: string;\n}\n\nexport interface MentionPaletteCategoryConfig<\n TMatch extends RichTextTriggerQueryMatch = RichTextTriggerQueryMatch\n> {\n id: string;\n label: string;\n providerIds?: readonly string[];\n matches?: (match: TMatch) => boolean;\n emptyLabel?: string;\n sections?: readonly MentionPaletteSectionConfig<TMatch>[];\n}\n\nexport function mentionPaletteGroup<TItem>(input: {\n id: string;\n label?: string;\n items: readonly TItem[];\n emptyLabel?: string;\n}): MentionPaletteGroup<TItem> {\n return {\n id: input.id,\n label: input.label,\n items: input.items,\n totalCount: input.items.length,\n visibleCount: input.items.length,\n hasMore: false,\n emptyLabel: input.emptyLabel\n };\n}\n\nexport function buildMentionPaletteModel<TItem>(\n input: MentionPaletteModelInput<TItem>\n): MentionPaletteState<TItem> {\n return {\n status: input.loading ? \"loading\" : \"ready\",\n query: input.query ?? \"\",\n mode: input.mode ?? \"results\",\n filter: input.activeCategoryId,\n categories: input.categories,\n groups: input.groups,\n error: null\n };\n}\n\nexport function buildMentionPaletteModelFromTriggerMatches<\n TMatch extends RichTextTriggerQueryMatch = RichTextTriggerQueryMatch\n>(input: {\n activeCategoryId: string;\n categories: readonly MentionPaletteCategoryConfig<TMatch>[];\n matches: readonly TMatch[];\n loading: boolean;\n query?: string;\n mode?: \"browse\" | \"results\";\n}): MentionPaletteState<TMatch> {\n const categories = input.categories.map((category) => ({\n id: category.id,\n label: category.label\n }));\n const activeCategory =\n input.categories.find(\n (category) => category.id === input.activeCategoryId\n ) ??\n input.categories[0] ??\n null;\n const groups =\n activeCategory === null\n ? []\n : buildMentionPaletteGroupsForCategory(activeCategory, input.matches);\n\n return buildMentionPaletteModel({\n activeCategoryId: activeCategory?.id ?? input.activeCategoryId,\n categories,\n groups,\n loading: input.loading,\n query: input.query,\n mode: input.mode\n });\n}\n\nfunction buildMentionPaletteGroupsForCategory<\n TMatch extends RichTextTriggerQueryMatch\n>(\n category: MentionPaletteCategoryConfig<TMatch>,\n matches: readonly TMatch[]\n): MentionPaletteGroup<TMatch>[] {\n const categoryMatches = matches.filter((match) =>\n mentionPaletteConfigMatches(category, match)\n );\n if (!category.sections?.length) {\n if (categoryMatches.length === 0 && category.emptyLabel == null) {\n return [];\n }\n return [\n mentionPaletteGroup({\n id: category.id,\n items: categoryMatches,\n emptyLabel: category.emptyLabel\n })\n ];\n }\n\n const sectionItems = new Map<string, TMatch[]>(\n category.sections.map((section) => [section.id, []])\n );\n for (const match of categoryMatches) {\n const section = category.sections.find((candidate) =>\n mentionPaletteConfigMatches(candidate, match)\n );\n if (!section) {\n continue;\n }\n sectionItems.get(section.id)?.push(match);\n }\n\n return category.sections\n .map((section) => {\n const items = sectionItems.get(section.id) ?? [];\n if (items.length === 0 && section.emptyLabel == null) {\n return null;\n }\n return mentionPaletteGroup({\n id: section.id,\n label: section.label,\n items,\n emptyLabel: section.emptyLabel\n });\n })\n .filter((group): group is MentionPaletteGroup<TMatch> => group !== null);\n}\n\nfunction mentionPaletteConfigMatches<TMatch extends RichTextTriggerQueryMatch>(\n config: {\n providerIds?: readonly string[];\n matches?: (match: TMatch) => boolean;\n },\n match: TMatch\n): boolean {\n if (\n config.providerIds != null &&\n !config.providerIds.includes(match.providerId)\n ) {\n return false;\n }\n return config.matches?.(match) ?? true;\n}\n\nexport function moveMentionPaletteHighlight<TItem>(input: {\n state: MentionPaletteState<TItem>;\n currentKey: string | null;\n delta: 1 | -1;\n getItemKey: (item: TItem, groupId: string) => string;\n}): string | null {\n const entries = flattenMentionPaletteEntries(\n input.state,\n input.getItemKey\n ).filter(\n (entry) =>\n entry.type === \"category\" ||\n entry.type === \"item\" ||\n entry.type === \"expand\"\n );\n if (!entries.length) {\n return null;\n }\n const foundIndex = entries.findIndex(\n (entry) => entry.key === input.currentKey\n );\n const currentIndex = foundIndex >= 0 ? foundIndex : input.delta > 0 ? -1 : 0;\n return (\n entries[(currentIndex + input.delta + entries.length) % entries.length]\n ?.key ?? null\n );\n}\n\nexport function repairMentionPaletteHighlight<TItem>(input: {\n state: MentionPaletteState<TItem>;\n currentKey: string | null;\n getItemKey: (item: TItem, groupId: string) => string;\n preferredKey?: string | null;\n}): string | null {\n const entries = flattenMentionPaletteEntries(input.state, input.getItemKey);\n if (entries.length === 0) {\n return null;\n }\n if (\n input.currentKey !== null &&\n entries.some((entry) => entry.key === input.currentKey)\n ) {\n return input.currentKey;\n }\n if (\n input.preferredKey != null &&\n entries.some((entry) => entry.key === input.preferredKey)\n ) {\n return input.preferredKey;\n }\n return entries[0]?.key ?? null;\n}\n\nexport function findMentionPaletteEntry<TItem>(input: {\n state: MentionPaletteState<TItem>;\n key: string | null;\n getItemKey: (item: TItem, groupId: string) => string;\n}): MentionPaletteEntry | null {\n if (input.key === null) {\n return null;\n }\n return (\n flattenMentionPaletteEntries(input.state, input.getItemKey).find(\n (entry) => entry.key === input.key\n ) ?? null\n );\n}\n\nexport function selectedMentionPaletteItem<TItem>(input: {\n state: MentionPaletteState<TItem>;\n key: string | null;\n getItemKey: (item: TItem, groupId: string) => string;\n}): TItem | null {\n for (const group of input.state.groups) {\n const index = group.items.findIndex(\n (candidate) =>\n `${group.id}:${input.getItemKey(candidate, group.id)}` === input.key\n );\n if (index >= 0) {\n return group.items[index] ?? null;\n }\n }\n return null;\n}\n\nexport function nextMentionPaletteCategory<TCategoryId extends string>(\n categories: readonly { id: TCategoryId }[],\n current: TCategoryId,\n delta: 1 | -1\n): TCategoryId {\n const index = categories.findIndex((category) => category.id === current);\n const safeIndex = index >= 0 ? index : 0;\n return categories[\n (safeIndex + delta + categories.length) % categories.length\n ]!.id;\n}\n","/**\n * Tone → className maps for the {@link MentionStatusBadge} rendered inside a\n * {@link MentionRow}. The surface resolves a status into a data-only\n * {@link MentionRowStatusTag} (label + tone + variant); this module owns the\n * presentational mapping so the styling stays in one place and identical across\n * surfaces.\n */\nexport type MentionRowStatusTone =\n | \"amber\"\n | \"blue\"\n | \"green\"\n | \"neutral\"\n | \"red\";\n\nexport type MentionRowStatusVariant = \"activity\" | \"issue\";\n\n/**\n * Background/text classes for the agent activity status badge. Ported verbatim\n * from the agent's `mentionStatusBadgeClassName` so the rendered DOM is\n * unchanged.\n */\nexport function activityMentionStatusBadgeClassName(\n tone: MentionRowStatusTone\n): string {\n switch (tone) {\n case \"blue\":\n return \"bg-sky-500/10 text-sky-700\";\n case \"amber\":\n return \"bg-[color:color-mix(in_srgb,var(--color-amber-500)_12%,transparent)] text-[var(--color-amber-500)]\";\n case \"green\":\n return \"bg-[var(--tsh-ui-pill-success-bg)] text-[var(--tsh-ui-pill-success-fg)]\";\n case \"red\":\n return \"bg-[var(--on-danger)] text-[var(--state-danger)]\";\n default:\n return \"bg-[var(--transparency-block)] text-[var(--text-secondary)]\";\n }\n}\n\n/**\n * Background/text classes for the issue status badge. Ported verbatim from the\n * agent's `issueMentionStatusBadgeClassName` (keyed by the issue tone the\n * surface resolves).\n */\nexport function issueMentionStatusBadgeClassName(\n tone: MentionRowStatusTone\n): string {\n switch (tone) {\n case \"green\":\n return \"bg-[color:color-mix(in_srgb,var(--state-success)_12%,transparent)] text-[var(--state-success)]\";\n case \"red\":\n return \"bg-[var(--on-danger)] text-[var(--state-danger)]\";\n default:\n return \"bg-[var(--transparency-block)] text-[var(--text-secondary)]\";\n }\n}\n\nexport function mentionStatusBadgeClassName(input: {\n tone: MentionRowStatusTone;\n variant: MentionRowStatusVariant;\n}): string {\n return input.variant === \"issue\"\n ? issueMentionStatusBadgeClassName(input.tone)\n : activityMentionStatusBadgeClassName(input.tone);\n}\n\n/**\n * Map a normalized agent-activity display status to its badge tone. Shared by\n * every `@`-mention surface that renders a session row (agent composer,\n * issue-manager) so the activity status badge color is identical across\n * surfaces. Mirrors the agent composer's local `mentionStatusTone` mapping\n * verbatim (the agent keeps its own copy producing identical values). The label\n * is resolved by each surface; only the tone lives here.\n */\nexport function activityMentionStatusTone(\n status: string\n): MentionRowStatusTone {\n switch (status.trim().toLowerCase()) {\n case \"working\":\n return \"blue\";\n case \"waiting\":\n case \"canceled\":\n return \"amber\";\n case \"completed\":\n case \"idle\":\n return \"green\";\n case \"failed\":\n return \"red\";\n default:\n return \"neutral\";\n }\n}\n\n/**\n * Map an issue status string to its badge tone. Shared by every `@`-mention\n * surface that renders an issue row (agent composer, issue-manager) so the\n * status badge color is identical across surfaces. The label is resolved by\n * each surface's own i18n; only the tone lives here.\n */\nexport function issueMentionStatusTone(status: string): MentionRowStatusTone {\n switch (status.trim().toLowerCase()) {\n case \"completed\":\n return \"green\";\n case \"failed\":\n case \"canceled\":\n return \"red\";\n default:\n return \"neutral\";\n }\n}\n","/**\n * Pure, dependency-free file visual-kind helpers shared by every `@`-mention\n * surface that renders a {@link MentionRow}. The *base* extension → kind\n * resolution lives in each surface (the agent maps file-manager kinds, etc.);\n * this module owns only the surface-agnostic vocabulary and the thumbnail rule\n * so the shared row renderer never imports a workspace feature.\n */\nexport type MentionFileVisualKind =\n | \"back\"\n | \"document\"\n | \"code\"\n | \"markdown\"\n | \"image\"\n | \"video\"\n | \"folder\";\n\nexport interface MentionFileVisualKindInput {\n entryKind?: string | null;\n mentionNavigation?: string | null;\n /**\n * The base visual kind already resolved from the file extension/name by the\n * surface (e.g. the agent's file-manager mapping). Used as the fallback when\n * the entry is neither a back-navigation marker nor a directory.\n */\n baseVisualKind: MentionFileVisualKind;\n}\n\n/**\n * Resolve the row's visual kind from a pre-resolved {@link MentionFileVisualKindInput.baseVisualKind}\n * plus the structural markers (back navigation, directory) that override it.\n */\nexport function resolveMentionFileVisualKind(\n input: MentionFileVisualKindInput\n): MentionFileVisualKind {\n if (input.mentionNavigation === \"agent-generated-folder-back\") {\n return \"back\";\n }\n if (input.entryKind === \"directory\") {\n return \"folder\";\n }\n return input.baseVisualKind;\n}\n\n/**\n * The thumbnail is only shown for image entries with a non-empty thumbnail URL.\n */\nexport function resolveMentionFileThumbnailUrl(input: {\n visualKind: MentionFileVisualKind;\n thumbnailUrl?: string | null;\n}): string | undefined {\n if (input.visualKind !== \"image\") {\n return undefined;\n }\n const thumbnailUrl = input.thumbnailUrl?.trim() ?? \"\";\n return thumbnailUrl || undefined;\n}\n"],"mappings":";AASA,SAAS,2BACP,QACS;AACT,SAAO,OAAO,KAAK,CAAC,UAAU,MAAM,MAAM,SAAS,KAAK,MAAM,OAAO;AACvE;AAaO,SAAS,6BACd,OACA,YACuB;AAEvB,MAAI,MAAM,SAAS,YAAY,CAAC,2BAA2B,MAAM,MAAM,GAAG;AACxE,WAAO,MAAM,WAAW,IAAI,CAAC,cAAc;AAAA,MACzC,KAAK,YAAY,SAAS,EAAE;AAAA,MAC5B,MAAM;AAAA,MACN,YAAY,SAAS;AAAA,IACvB,EAAE;AAAA,EACJ;AAEA,QAAM,UAAiC,CAAC;AAExC,aAAW,SAAS,MAAM,QAAQ;AAChC,UAAM,MAAM,QAAQ,CAAC,MAAM,UAAU;AACnC,cAAQ,KAAK;AAAA,QACX,KAAK,GAAG,MAAM,EAAE,IAAI,WAAW,MAAM,MAAM,EAAE,CAAC;AAAA,QAC9C,MAAM;AAAA,QACN,SAAS,MAAM;AAAA,QACf,WAAW;AAAA,MACb,CAAC;AAAA,IACH,CAAC;AAED,QAAI,MAAM,SAAS;AACjB,cAAQ,KAAK;AAAA,QACX,KAAK,UAAU,MAAM,EAAE;AAAA,QACvB,MAAM;AAAA,QACN,SAAS,MAAM;AAAA,MACjB,CAAC;AAAA,IACH;AAAA,EACF;AAEA,SAAO;AACT;;;ACtBO,SAAS,oBAA2B,OAKZ;AAC7B,SAAO;AAAA,IACL,IAAI,MAAM;AAAA,IACV,OAAO,MAAM;AAAA,IACb,OAAO,MAAM;AAAA,IACb,YAAY,MAAM,MAAM;AAAA,IACxB,cAAc,MAAM,MAAM;AAAA,IAC1B,SAAS;AAAA,IACT,YAAY,MAAM;AAAA,EACpB;AACF;AAEO,SAAS,yBACd,OAC4B;AAC5B,SAAO;AAAA,IACL,QAAQ,MAAM,UAAU,YAAY;AAAA,IACpC,OAAO,MAAM,SAAS;AAAA,IACtB,MAAM,MAAM,QAAQ;AAAA,IACpB,QAAQ,MAAM;AAAA,IACd,YAAY,MAAM;AAAA,IAClB,QAAQ,MAAM;AAAA,IACd,OAAO;AAAA,EACT;AACF;AAEO,SAAS,2CAEd,OAO8B;AAC9B,QAAM,aAAa,MAAM,WAAW,IAAI,CAAC,cAAc;AAAA,IACrD,IAAI,SAAS;AAAA,IACb,OAAO,SAAS;AAAA,EAClB,EAAE;AACF,QAAM,iBACJ,MAAM,WAAW;AAAA,IACf,CAAC,aAAa,SAAS,OAAO,MAAM;AAAA,EACtC,KACA,MAAM,WAAW,CAAC,KAClB;AACF,QAAM,SACJ,mBAAmB,OACf,CAAC,IACD,qCAAqC,gBAAgB,MAAM,OAAO;AAExE,SAAO,yBAAyB;AAAA,IAC9B,kBAAkB,gBAAgB,MAAM,MAAM;AAAA,IAC9C;AAAA,IACA;AAAA,IACA,SAAS,MAAM;AAAA,IACf,OAAO,MAAM;AAAA,IACb,MAAM,MAAM;AAAA,EACd,CAAC;AACH;AAEA,SAAS,qCAGP,UACA,SAC+B;AAC/B,QAAM,kBAAkB,QAAQ;AAAA,IAAO,CAAC,UACtC,4BAA4B,UAAU,KAAK;AAAA,EAC7C;AACA,MAAI,CAAC,SAAS,UAAU,QAAQ;AAC9B,QAAI,gBAAgB,WAAW,KAAK,SAAS,cAAc,MAAM;AAC/D,aAAO,CAAC;AAAA,IACV;AACA,WAAO;AAAA,MACL,oBAAoB;AAAA,QAClB,IAAI,SAAS;AAAA,QACb,OAAO;AAAA,QACP,YAAY,SAAS;AAAA,MACvB,CAAC;AAAA,IACH;AAAA,EACF;AAEA,QAAM,eAAe,IAAI;AAAA,IACvB,SAAS,SAAS,IAAI,CAAC,YAAY,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;AAAA,EACrD;AACA,aAAW,SAAS,iBAAiB;AACnC,UAAM,UAAU,SAAS,SAAS;AAAA,MAAK,CAAC,cACtC,4BAA4B,WAAW,KAAK;AAAA,IAC9C;AACA,QAAI,CAAC,SAAS;AACZ;AAAA,IACF;AACA,iBAAa,IAAI,QAAQ,EAAE,GAAG,KAAK,KAAK;AAAA,EAC1C;AAEA,SAAO,SAAS,SACb,IAAI,CAAC,YAAY;AAChB,UAAM,QAAQ,aAAa,IAAI,QAAQ,EAAE,KAAK,CAAC;AAC/C,QAAI,MAAM,WAAW,KAAK,QAAQ,cAAc,MAAM;AACpD,aAAO;AAAA,IACT;AACA,WAAO,oBAAoB;AAAA,MACzB,IAAI,QAAQ;AAAA,MACZ,OAAO,QAAQ;AAAA,MACf;AAAA,MACA,YAAY,QAAQ;AAAA,IACtB,CAAC;AAAA,EACH,CAAC,EACA,OAAO,CAAC,UAAgD,UAAU,IAAI;AAC3E;AAEA,SAAS,4BACP,QAIA,OACS;AACT,MACE,OAAO,eAAe,QACtB,CAAC,OAAO,YAAY,SAAS,MAAM,UAAU,GAC7C;AACA,WAAO;AAAA,EACT;AACA,SAAO,OAAO,UAAU,KAAK,KAAK;AACpC;AAEO,SAAS,4BAAmC,OAKjC;AAChB,QAAM,UAAU;AAAA,IACd,MAAM;AAAA,IACN,MAAM;AAAA,EACR,EAAE;AAAA,IACA,CAAC,UACC,MAAM,SAAS,cACf,MAAM,SAAS,UACf,MAAM,SAAS;AAAA,EACnB;AACA,MAAI,CAAC,QAAQ,QAAQ;AACnB,WAAO;AAAA,EACT;AACA,QAAM,aAAa,QAAQ;AAAA,IACzB,CAAC,UAAU,MAAM,QAAQ,MAAM;AAAA,EACjC;AACA,QAAM,eAAe,cAAc,IAAI,aAAa,MAAM,QAAQ,IAAI,KAAK;AAC3E,SACE,SAAS,eAAe,MAAM,QAAQ,QAAQ,UAAU,QAAQ,MAAM,GAClE,OAAO;AAEf;AAEO,SAAS,8BAAqC,OAKnC;AAChB,QAAM,UAAU,6BAA6B,MAAM,OAAO,MAAM,UAAU;AAC1E,MAAI,QAAQ,WAAW,GAAG;AACxB,WAAO;AAAA,EACT;AACA,MACE,MAAM,eAAe,QACrB,QAAQ,KAAK,CAAC,UAAU,MAAM,QAAQ,MAAM,UAAU,GACtD;AACA,WAAO,MAAM;AAAA,EACf;AACA,MACE,MAAM,gBAAgB,QACtB,QAAQ,KAAK,CAAC,UAAU,MAAM,QAAQ,MAAM,YAAY,GACxD;AACA,WAAO,MAAM;AAAA,EACf;AACA,SAAO,QAAQ,CAAC,GAAG,OAAO;AAC5B;AAEO,SAAS,wBAA+B,OAIhB;AAC7B,MAAI,MAAM,QAAQ,MAAM;AACtB,WAAO;AAAA,EACT;AACA,SACE,6BAA6B,MAAM,OAAO,MAAM,UAAU,EAAE;AAAA,IAC1D,CAAC,UAAU,MAAM,QAAQ,MAAM;AAAA,EACjC,KAAK;AAET;AAEO,SAAS,2BAAkC,OAIjC;AACf,aAAW,SAAS,MAAM,MAAM,QAAQ;AACtC,UAAM,QAAQ,MAAM,MAAM;AAAA,MACxB,CAAC,cACC,GAAG,MAAM,EAAE,IAAI,MAAM,WAAW,WAAW,MAAM,EAAE,CAAC,OAAO,MAAM;AAAA,IACrE;AACA,QAAI,SAAS,GAAG;AACd,aAAO,MAAM,MAAM,KAAK,KAAK;AAAA,IAC/B;AAAA,EACF;AACA,SAAO;AACT;AAEO,SAAS,2BACd,YACA,SACA,OACa;AACb,QAAM,QAAQ,WAAW,UAAU,CAAC,aAAa,SAAS,OAAO,OAAO;AACxE,QAAM,YAAY,SAAS,IAAI,QAAQ;AACvC,SAAO,YACJ,YAAY,QAAQ,WAAW,UAAU,WAAW,MACvD,EAAG;AACL;;;ACtPO,SAAS,oCACd,MACQ;AACR,UAAQ,MAAM;AAAA,IACZ,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF;AAOO,SAAS,iCACd,MACQ;AACR,UAAQ,MAAM;AAAA,IACZ,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF;AAEO,SAAS,4BAA4B,OAGjC;AACT,SAAO,MAAM,YAAY,UACrB,iCAAiC,MAAM,IAAI,IAC3C,oCAAoC,MAAM,IAAI;AACpD;AAUO,SAAS,0BACd,QACsB;AACtB,UAAQ,OAAO,KAAK,EAAE,YAAY,GAAG;AAAA,IACnC,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF;AAQO,SAAS,uBAAuB,QAAsC;AAC3E,UAAQ,OAAO,KAAK,EAAE,YAAY,GAAG;AAAA,IACnC,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF;;;AC7EO,SAAS,6BACd,OACuB;AACvB,MAAI,MAAM,sBAAsB,+BAA+B;AAC7D,WAAO;AAAA,EACT;AACA,MAAI,MAAM,cAAc,aAAa;AACnC,WAAO;AAAA,EACT;AACA,SAAO,MAAM;AACf;AAKO,SAAS,+BAA+B,OAGxB;AACrB,MAAI,MAAM,eAAe,SAAS;AAChC,WAAO;AAAA,EACT;AACA,QAAM,eAAe,MAAM,cAAc,KAAK,KAAK;AACnD,SAAO,gBAAgB;AACzB;","names":[]}
1
+ {"version":3,"sources":["../src/at-panel/mentionPaletteEntries.ts","../src/at-panel/mentionPaletteModel.ts","../src/at-panel/mentionStatusTone.ts","../src/at-panel/mentionFileVisualKind.ts"],"sourcesContent":["import type {\n MentionPaletteEntry,\n MentionPaletteState\n} from \"./mentionPaletteTypes.ts\";\n\n/**\n * Returns true when at least one group has items or a \"load more\" trigger,\n * i.e. there is something interactive to render beyond category headers.\n */\nfunction hasInteractiveGroupEntries<TItem>(\n groups: MentionPaletteState<TItem>[\"groups\"]\n): boolean {\n return groups.some((group) => group.items.length > 0 || group.hasMore);\n}\n\n/**\n * Flatten the palette state into a stable, ordered list of navigable entries.\n *\n * Mirrors the ordering and key format of `flattenAgentMentionPaletteEntries`\n * from AgentFileMentionPalette.tsx, but is generic over item type.\n *\n * Key formats:\n * category entry → `category:<categoryId>`\n * item entry → `<groupId>:<getItemKey(item, groupId)>`\n * expand entry → `expand:<groupId>`\n */\nexport function flattenMentionPaletteEntries<TItem>(\n state: MentionPaletteState<TItem>,\n getItemKey: (item: TItem, groupId: string) => string\n): MentionPaletteEntry[] {\n // Browse mode with no interactive group content → show category nav only\n if (state.mode === \"browse\" && !hasInteractiveGroupEntries(state.groups)) {\n return state.categories.map((category) => ({\n key: `category:${category.id}`,\n type: \"category\" as const,\n categoryId: category.id\n }));\n }\n\n const entries: MentionPaletteEntry[] = [];\n\n for (const group of state.groups) {\n group.items.forEach((item, index) => {\n entries.push({\n key: `${group.id}:${getItemKey(item, group.id)}`,\n type: \"item\",\n groupId: group.id,\n itemIndex: index\n });\n });\n\n if (group.hasMore) {\n entries.push({\n key: `expand:${group.id}`,\n type: \"expand\",\n groupId: group.id\n });\n }\n }\n\n return entries;\n}\n","import type {\n MentionPaletteCategory,\n MentionPaletteEntry,\n MentionPaletteGroup,\n MentionPaletteState\n} from \"./mentionPaletteTypes.ts\";\nimport { flattenMentionPaletteEntries } from \"./mentionPaletteEntries.ts\";\nimport type { RichTextTriggerQueryMatch } from \"../types/trigger.ts\";\n\nexport interface MentionPaletteModelInput<TItem> {\n activeCategoryId: string;\n categories: readonly MentionPaletteCategory[];\n groups: readonly MentionPaletteGroup<TItem>[];\n loading: boolean;\n query?: string;\n mode?: \"browse\" | \"results\";\n}\n\nexport interface MentionPaletteSectionConfig<\n TMatch extends RichTextTriggerQueryMatch = RichTextTriggerQueryMatch\n> {\n id: string;\n label?: string;\n providerIds?: readonly string[];\n matches?: (match: TMatch) => boolean;\n emptyLabel?: string;\n}\n\nexport interface MentionPaletteCategoryConfig<\n TMatch extends RichTextTriggerQueryMatch = RichTextTriggerQueryMatch\n> {\n id: string;\n label: string;\n providerIds?: readonly string[];\n matches?: (match: TMatch) => boolean;\n emptyLabel?: string;\n sections?: readonly MentionPaletteSectionConfig<TMatch>[];\n}\n\nexport function mentionPaletteGroup<TItem>(input: {\n id: string;\n label?: string;\n items: readonly TItem[];\n emptyLabel?: string;\n}): MentionPaletteGroup<TItem> {\n return {\n id: input.id,\n label: input.label,\n items: input.items,\n totalCount: input.items.length,\n visibleCount: input.items.length,\n hasMore: false,\n emptyLabel: input.emptyLabel\n };\n}\n\nexport function buildMentionPaletteModel<TItem>(\n input: MentionPaletteModelInput<TItem>\n): MentionPaletteState<TItem> {\n return {\n status: input.loading ? \"loading\" : \"ready\",\n query: input.query ?? \"\",\n mode: input.mode ?? \"results\",\n filter: input.activeCategoryId,\n categories: input.categories,\n groups: input.groups,\n error: null\n };\n}\n\nexport function buildMentionPaletteModelFromTriggerMatches<\n TMatch extends RichTextTriggerQueryMatch = RichTextTriggerQueryMatch\n>(input: {\n activeCategoryId: string;\n categories: readonly MentionPaletteCategoryConfig<TMatch>[];\n matches: readonly TMatch[];\n loading: boolean;\n query?: string;\n mode?: \"browse\" | \"results\";\n}): MentionPaletteState<TMatch> {\n const categories = input.categories.map((category) => ({\n id: category.id,\n label: category.label\n }));\n const activeCategory =\n input.categories.find(\n (category) => category.id === input.activeCategoryId\n ) ??\n input.categories[0] ??\n null;\n const groups =\n activeCategory === null\n ? []\n : buildMentionPaletteGroupsForCategory(activeCategory, input.matches);\n\n return buildMentionPaletteModel({\n activeCategoryId: activeCategory?.id ?? input.activeCategoryId,\n categories,\n groups,\n loading: input.loading,\n query: input.query,\n mode: input.mode\n });\n}\n\nfunction buildMentionPaletteGroupsForCategory<\n TMatch extends RichTextTriggerQueryMatch\n>(\n category: MentionPaletteCategoryConfig<TMatch>,\n matches: readonly TMatch[]\n): MentionPaletteGroup<TMatch>[] {\n const categoryMatches = matches.filter((match) =>\n mentionPaletteConfigMatches(category, match)\n );\n if (!category.sections?.length) {\n if (categoryMatches.length === 0 && category.emptyLabel == null) {\n return [];\n }\n return [\n mentionPaletteGroup({\n id: category.id,\n items: categoryMatches,\n emptyLabel: category.emptyLabel\n })\n ];\n }\n\n const sectionItems = new Map<string, TMatch[]>(\n category.sections.map((section) => [section.id, []])\n );\n for (const match of categoryMatches) {\n const section = category.sections.find((candidate) =>\n mentionPaletteConfigMatches(candidate, match)\n );\n if (!section) {\n continue;\n }\n sectionItems.get(section.id)?.push(match);\n }\n\n return category.sections\n .map((section) => {\n const items = sectionItems.get(section.id) ?? [];\n if (items.length === 0 && section.emptyLabel == null) {\n return null;\n }\n return mentionPaletteGroup({\n id: section.id,\n label: section.label,\n items,\n emptyLabel: section.emptyLabel\n });\n })\n .filter((group): group is MentionPaletteGroup<TMatch> => group !== null);\n}\n\nfunction mentionPaletteConfigMatches<TMatch extends RichTextTriggerQueryMatch>(\n config: {\n providerIds?: readonly string[];\n matches?: (match: TMatch) => boolean;\n },\n match: TMatch\n): boolean {\n if (\n config.providerIds != null &&\n !config.providerIds.includes(match.providerId)\n ) {\n return false;\n }\n return config.matches?.(match) ?? true;\n}\n\nexport function moveMentionPaletteHighlight<TItem>(input: {\n state: MentionPaletteState<TItem>;\n currentKey: string | null;\n delta: 1 | -1;\n getItemKey: (item: TItem, groupId: string) => string;\n}): string | null {\n const entries = flattenMentionPaletteEntries(\n input.state,\n input.getItemKey\n ).filter(\n (entry) =>\n entry.type === \"category\" ||\n entry.type === \"item\" ||\n entry.type === \"expand\"\n );\n if (!entries.length) {\n return null;\n }\n const foundIndex = entries.findIndex(\n (entry) => entry.key === input.currentKey\n );\n const currentIndex = foundIndex >= 0 ? foundIndex : input.delta > 0 ? -1 : 0;\n return (\n entries[(currentIndex + input.delta + entries.length) % entries.length]\n ?.key ?? null\n );\n}\n\nexport function repairMentionPaletteHighlight<TItem>(input: {\n state: MentionPaletteState<TItem>;\n currentKey: string | null;\n getItemKey: (item: TItem, groupId: string) => string;\n preferredKey?: string | null;\n}): string | null {\n const entries = flattenMentionPaletteEntries(input.state, input.getItemKey);\n if (entries.length === 0) {\n return null;\n }\n if (\n input.currentKey !== null &&\n entries.some((entry) => entry.key === input.currentKey)\n ) {\n return input.currentKey;\n }\n if (\n input.preferredKey != null &&\n entries.some((entry) => entry.key === input.preferredKey)\n ) {\n return input.preferredKey;\n }\n return entries[0]?.key ?? null;\n}\n\nexport function findMentionPaletteEntry<TItem>(input: {\n state: MentionPaletteState<TItem>;\n key: string | null;\n getItemKey: (item: TItem, groupId: string) => string;\n}): MentionPaletteEntry | null {\n if (input.key === null) {\n return null;\n }\n return (\n flattenMentionPaletteEntries(input.state, input.getItemKey).find(\n (entry) => entry.key === input.key\n ) ?? null\n );\n}\n\nexport function selectedMentionPaletteItem<TItem>(input: {\n state: MentionPaletteState<TItem>;\n key: string | null;\n getItemKey: (item: TItem, groupId: string) => string;\n}): TItem | null {\n for (const group of input.state.groups) {\n const index = group.items.findIndex(\n (candidate) =>\n `${group.id}:${input.getItemKey(candidate, group.id)}` === input.key\n );\n if (index >= 0) {\n return group.items[index] ?? null;\n }\n }\n return null;\n}\n\nexport function nextMentionPaletteCategory<TCategoryId extends string>(\n categories: readonly { id: TCategoryId }[],\n current: TCategoryId,\n delta: 1 | -1\n): TCategoryId {\n const index = categories.findIndex((category) => category.id === current);\n const safeIndex = index >= 0 ? index : 0;\n return categories[\n (safeIndex + delta + categories.length) % categories.length\n ]!.id;\n}\n","/**\n * Tone → className maps for the {@link MentionStatusBadge} rendered inside a\n * {@link MentionRow}. The surface resolves a status into a data-only\n * {@link MentionRowStatusTag} (label + tone + variant); this module owns the\n * presentational mapping so the styling stays in one place and identical across\n * surfaces.\n */\nexport type MentionRowStatusTone =\n | \"amber\"\n | \"blue\"\n | \"green\"\n | \"neutral\"\n | \"red\";\n\nexport type MentionRowStatusVariant = \"activity\" | \"issue\";\n\n/**\n * Text classes for agent activity status signals. Activity rows already include\n * a status dot, so they render as plain signal text instead of a filled badge.\n */\nexport function activityMentionStatusBadgeClassName(\n tone: MentionRowStatusTone\n): string {\n switch (tone) {\n case \"blue\":\n return \"bg-transparent px-0 text-[var(--status-running)]\";\n case \"amber\":\n return \"bg-transparent px-0 text-[var(--state-warning)]\";\n case \"green\":\n return \"bg-transparent px-0 text-[var(--state-success)]\";\n case \"red\":\n return \"bg-transparent px-0 text-[var(--state-danger)]\";\n default:\n return \"bg-transparent px-0 text-[var(--text-secondary)]\";\n }\n}\n\n/**\n * Background/text classes for the issue status badge. Ported verbatim from the\n * agent's `issueMentionStatusBadgeClassName` (keyed by the issue tone the\n * surface resolves).\n */\nexport function issueMentionStatusBadgeClassName(\n tone: MentionRowStatusTone\n): string {\n switch (tone) {\n case \"green\":\n return \"bg-[color:color-mix(in_srgb,var(--state-success)_12%,transparent)] text-[var(--state-success)]\";\n case \"red\":\n return \"bg-[var(--on-danger)] text-[var(--state-danger)]\";\n default:\n return \"bg-[var(--transparency-block)] text-[var(--text-secondary)]\";\n }\n}\n\nexport function mentionStatusBadgeClassName(input: {\n tone: MentionRowStatusTone;\n variant: MentionRowStatusVariant;\n}): string {\n return input.variant === \"issue\"\n ? issueMentionStatusBadgeClassName(input.tone)\n : activityMentionStatusBadgeClassName(input.tone);\n}\n\n/**\n * Map a normalized agent-activity display status to its badge tone. Shared by\n * every `@`-mention surface that renders a session row (agent composer,\n * issue-manager) so the activity status badge color is identical across\n * surfaces. Mirrors the agent composer's local `mentionStatusTone` mapping\n * verbatim (the agent keeps its own copy producing identical values). The label\n * is resolved by each surface; only the tone lives here.\n */\nexport function activityMentionStatusTone(\n status: string\n): MentionRowStatusTone {\n switch (status.trim().toLowerCase()) {\n case \"working\":\n return \"blue\";\n case \"waiting\":\n case \"canceled\":\n return \"amber\";\n case \"completed\":\n case \"idle\":\n return \"green\";\n case \"failed\":\n return \"red\";\n default:\n return \"neutral\";\n }\n}\n\n/**\n * Map an issue status string to its badge tone. Shared by every `@`-mention\n * surface that renders an issue row (agent composer, issue-manager) so the\n * status badge color is identical across surfaces. The label is resolved by\n * each surface's own i18n; only the tone lives here.\n */\nexport function issueMentionStatusTone(status: string): MentionRowStatusTone {\n switch (status.trim().toLowerCase()) {\n case \"completed\":\n return \"green\";\n case \"failed\":\n case \"canceled\":\n return \"red\";\n default:\n return \"neutral\";\n }\n}\n","/**\n * Pure, dependency-free file visual-kind helpers shared by every `@`-mention\n * surface that renders a {@link MentionRow}. The *base* extension → kind\n * resolution lives in each surface (the agent maps file-manager kinds, etc.);\n * this module owns only the surface-agnostic vocabulary and the thumbnail rule\n * so the shared row renderer never imports a workspace feature.\n */\nexport type MentionFileVisualKind =\n | \"back\"\n | \"document\"\n | \"code\"\n | \"markdown\"\n | \"image\"\n | \"video\"\n | \"folder\";\n\nexport interface MentionFileVisualKindInput {\n entryKind?: string | null;\n mentionNavigation?: string | null;\n /**\n * The base visual kind already resolved from the file extension/name by the\n * surface (e.g. the agent's file-manager mapping). Used as the fallback when\n * the entry is neither a back-navigation marker nor a directory.\n */\n baseVisualKind: MentionFileVisualKind;\n}\n\n/**\n * Resolve the row's visual kind from a pre-resolved {@link MentionFileVisualKindInput.baseVisualKind}\n * plus the structural markers (back navigation, directory) that override it.\n */\nexport function resolveMentionFileVisualKind(\n input: MentionFileVisualKindInput\n): MentionFileVisualKind {\n if (input.mentionNavigation === \"agent-generated-folder-back\") {\n return \"back\";\n }\n if (input.entryKind === \"directory\") {\n return \"folder\";\n }\n return input.baseVisualKind;\n}\n\n/**\n * The thumbnail is only shown for image entries with a non-empty thumbnail URL.\n */\nexport function resolveMentionFileThumbnailUrl(input: {\n visualKind: MentionFileVisualKind;\n thumbnailUrl?: string | null;\n}): string | undefined {\n if (input.visualKind !== \"image\") {\n return undefined;\n }\n const thumbnailUrl = input.thumbnailUrl?.trim() ?? \"\";\n return thumbnailUrl || undefined;\n}\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tutti-os/ui-rich-text",
3
- "version": "0.0.33",
3
+ "version": "0.0.34",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "types": "./dist/index.d.ts",
@@ -52,8 +52,8 @@
52
52
  "directory": "packages/ui/rich-text"
53
53
  },
54
54
  "dependencies": {
55
- "@tutti-os/ui-i18n-runtime": "0.0.33",
56
- "@tutti-os/ui-system": "0.0.33",
55
+ "@tutti-os/ui-i18n-runtime": "0.0.34",
56
+ "@tutti-os/ui-system": "0.0.34",
57
57
  "@tiptap/core": "^3.23.6",
58
58
  "@tiptap/extension-document": "^3.23.6",
59
59
  "@tiptap/extension-hard-break": "^3.23.6",