@tutti-os/ui-rich-text 0.0.110 → 0.0.111
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/at-panel/index.css +7 -0
- package/dist/at-panel/index.css.map +1 -1
- package/dist/at-panel/index.d.ts +4 -3
- package/dist/at-panel/index.js +2 -2
- package/dist/at-panel/model.d.ts +3 -3
- package/dist/at-panel/model.js +1 -1
- package/dist/{chunk-VFZ4TL22.js → chunk-AB4LAEBH.js} +18 -8
- package/dist/chunk-AB4LAEBH.js.map +1 -0
- package/dist/{chunk-IJDSAZLI.js → chunk-IU7RTTKI.js} +25 -9
- package/dist/chunk-IU7RTTKI.js.map +1 -0
- package/dist/editor/index.css +7 -0
- package/dist/editor/index.css.map +1 -1
- package/dist/editor/index.d.ts +1 -1
- package/dist/editor/index.js +2 -2
- package/dist/{mentionPaletteModel-DgRcsoxg.d.ts → mentionPaletteModel-CT8fzBE2.d.ts} +5 -0
- package/package.json +3 -3
- package/dist/chunk-IJDSAZLI.js.map +0 -1
- package/dist/chunk-VFZ4TL22.js.map +0 -1
package/dist/at-panel/index.css
CHANGED
|
@@ -177,6 +177,13 @@
|
|
|
177
177
|
cursor: default;
|
|
178
178
|
opacity: 0.65;
|
|
179
179
|
}
|
|
180
|
+
.rich-text-at-mention-palette__row-button:disabled {
|
|
181
|
+
cursor: default;
|
|
182
|
+
color: var(--rich-text-at-mention-text-secondary);
|
|
183
|
+
}
|
|
184
|
+
.rich-text-at-mention-palette__row-button:disabled:active {
|
|
185
|
+
background: transparent;
|
|
186
|
+
}
|
|
180
187
|
.rich-text-at-mention-palette__row-button {
|
|
181
188
|
position: relative;
|
|
182
189
|
display: flex;
|
|
@@ -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 box-sizing: border-box;\n container-type: inline-size;\n width: 100%;\n max-width: 100%;\n min-width: 0;\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(--state-warning, rgb(234 121 8));\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: var(--status-running, rgb(65 130 245));\n --rich-text-at-mention-info-bg: color-mix(\n in srgb,\n var(--rich-text-at-mention-info-fg) 12%,\n transparent\n );\n}\n\n.rich-text-at-mention-palette__shell {\n box-sizing: border-box;\n display: grid;\n grid-template-rows: auto minmax(0, 1fr) auto;\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 320px;\n min-height: 0;\n min-width: 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 display: flex;\n align-items: center;\n gap: 8px;\n box-sizing: border-box;\n width: 100%;\n max-width: 100%;\n min-width: 0;\n flex-shrink: 0;\n}\n\n.rich-text-at-mention-palette__tabs-layout {\n min-width: 0;\n flex: 1 1 auto;\n}\n\n.rich-text-at-mention-palette__header-actions {\n position: relative;\n z-index: 1;\n display: flex;\n flex: 0 0 auto;\n align-items: center;\n padding-right: 12px;\n}\n\n.rich-text-at-mention-palette__footer {\n box-sizing: border-box;\n width: 100%;\n max-width: 100%;\n min-width: 0;\n flex-shrink: 0;\n}\n\n.rich-text-at-mention-palette__scroll-shell {\n position: relative;\n box-sizing: border-box;\n width: 100%;\n max-width: 100%;\n min-height: 0;\n min-width: 0;\n overflow: hidden;\n}\n\n.rich-text-at-mention-palette__scroll-body {\n box-sizing: border-box;\n width: 100%;\n max-width: 100%;\n height: 100%;\n min-height: 0;\n min-width: 0;\n padding: 8px 4px 4px;\n overflow-x: hidden;\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 box-sizing: border-box;\n display: grid;\n width: 100%;\n min-width: 0;\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__expand-button:disabled {\n cursor: default;\n opacity: 0.65;\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 4px 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: flex-start;\n width: 100%;\n padding: 8px 4px 8px 12px;\n border-radius: 6px;\n color: var(--rich-text-at-mention-text-secondary);\n font-size: 11px;\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 box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n max-width: 100%;\n min-width: 0;\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 box-sizing: border-box;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 12px;\n width: min(100%, 28ch);\n max-width: 100%;\n min-width: 0;\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 display: block;\n max-width: 100%;\n min-width: 0;\n color: var(--rich-text-at-mention-text-tertiary);\n line-height: 20px;\n overflow-wrap: anywhere;\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: 24px;\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--issue,\n.rich-text-at-mention-row--app,\n.rich-text-at-mention-row--file,\n.rich-text-at-mention-row--session {\n display: flex;\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.rich-text-at-mention-row__entity-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 width: 100%;\n}\n\n.rich-text-at-mention-row__inline {\n display: grid;\n grid-template-columns: minmax(0, 1fr);\n align-items: center;\n gap: 8px;\n width: 100%;\n}\n\n.rich-text-at-mention-row__file-text,\n.rich-text-at-mention-row__app-text,\n.rich-text-at-mention-row__entity-text {\n align-items: baseline;\n gap: 8px;\n}\n\n.rich-text-at-mention-row__file-text {\n flex: 1 1 0;\n}\n\n.rich-text-at-mention-row__app-text,\n.rich-text-at-mention-row__entity-text {\n flex: 1 1 0;\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 width: 100%;\n}\n\n.rich-text-at-mention-row__title,\n.rich-text-at-mention-row__entity-name,\n.rich-text-at-mention-row__entity-description,\n.rich-text-at-mention-row__app-name,\n.rich-text-at-mention-row__description,\n.rich-text-at-mention-row__app-description,\n.rich-text-at-mention-row__file-count {\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__entity-name,\n.rich-text-at-mention-row__app-name {\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__entity-name,\n.rich-text-at-mention-row__app-name {\n flex: 0 1 auto;\n}\n\n.rich-text-at-mention-row__app-name {\n flex-shrink: 1;\n}\n\n.rich-text-at-mention-row__description,\n.rich-text-at-mention-row__entity-description,\n.rich-text-at-mention-row__app-description,\n.rich-text-at-mention-row__file-count {\n color: var(--rich-text-at-mention-text-secondary);\n font-weight: 400;\n}\n\n.rich-text-at-mention-row__app-description,\n.rich-text-at-mention-row__entity-description {\n flex: 1 1 0;\n}\n\n.rich-text-at-mention-row__description,\n.rich-text-at-mention-row__session-summary {\n flex: 1 1 0;\n}\n\n.rich-text-at-mention-row__file-count {\n flex: 0 0 auto;\n font-size: 11px;\n}\n\n.rich-text-at-mention-row__session-summary {\n min-width: 0;\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.rich-text-at-mention-row__navigate-into {\n appearance: none;\n display: grid;\n place-items: center;\n height: 24px;\n margin-left: auto;\n justify-self: end;\n padding: 0;\n border: 0;\n border-radius: 5px;\n background: transparent;\n color: var(--rich-text-at-mention-text-tertiary);\n cursor: pointer;\n outline: none;\n transition:\n background-color 160ms ease,\n color 160ms ease;\n}\n\n.rich-text-at-mention-row__open-references {\n height: 20px;\n width: auto;\n min-width: max-content;\n flex: 0 0 auto;\n padding-inline: 8px;\n color: var(--text-secondary);\n font-size: 11px;\n font-weight: 500;\n line-height: 20px;\n white-space: nowrap;\n}\n\n.rich-text-at-mention-row__navigate-into {\n width: 24px;\n flex: 0 0 24px;\n}\n\n.rich-text-at-mention-row__file-count\n + .rich-text-at-mention-row__navigate-into {\n margin-left: -6px;\n}\n\n.rich-text-at-mention-row__open-references:hover,\n.rich-text-at-mention-row__navigate-into:hover,\n.rich-text-at-mention-row__open-references:focus-visible,\n.rich-text-at-mention-row__navigate-into:focus-visible {\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: 0 0 auto;\n gap: 4px;\n width: fit-content;\n border: 1px solid transparent;\n padding-inline: 4px;\n font-size: 11px;\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=\"purple\"] {\n background: color-mix(\n in srgb,\n var(--rich-text-at-mention-accent) 12%,\n transparent\n );\n color: var(--rich-text-at-mention-accent);\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 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":[]}
|
|
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 box-sizing: border-box;\n container-type: inline-size;\n width: 100%;\n max-width: 100%;\n min-width: 0;\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(--state-warning, rgb(234 121 8));\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: var(--status-running, rgb(65 130 245));\n --rich-text-at-mention-info-bg: color-mix(\n in srgb,\n var(--rich-text-at-mention-info-fg) 12%,\n transparent\n );\n}\n\n.rich-text-at-mention-palette__shell {\n box-sizing: border-box;\n display: grid;\n grid-template-rows: auto minmax(0, 1fr) auto;\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 320px;\n min-height: 0;\n min-width: 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 display: flex;\n align-items: center;\n gap: 8px;\n box-sizing: border-box;\n width: 100%;\n max-width: 100%;\n min-width: 0;\n flex-shrink: 0;\n}\n\n.rich-text-at-mention-palette__tabs-layout {\n min-width: 0;\n flex: 1 1 auto;\n}\n\n.rich-text-at-mention-palette__header-actions {\n position: relative;\n z-index: 1;\n display: flex;\n flex: 0 0 auto;\n align-items: center;\n padding-right: 12px;\n}\n\n.rich-text-at-mention-palette__footer {\n box-sizing: border-box;\n width: 100%;\n max-width: 100%;\n min-width: 0;\n flex-shrink: 0;\n}\n\n.rich-text-at-mention-palette__scroll-shell {\n position: relative;\n box-sizing: border-box;\n width: 100%;\n max-width: 100%;\n min-height: 0;\n min-width: 0;\n overflow: hidden;\n}\n\n.rich-text-at-mention-palette__scroll-body {\n box-sizing: border-box;\n width: 100%;\n max-width: 100%;\n height: 100%;\n min-height: 0;\n min-width: 0;\n padding: 8px 4px 4px;\n overflow-x: hidden;\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 box-sizing: border-box;\n display: grid;\n width: 100%;\n min-width: 0;\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__expand-button:disabled {\n cursor: default;\n opacity: 0.65;\n}\n\n.rich-text-at-mention-palette__row-button:disabled {\n cursor: default;\n color: var(--rich-text-at-mention-text-secondary);\n}\n\n.rich-text-at-mention-palette__row-button:disabled:active {\n background: transparent;\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 4px 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: flex-start;\n width: 100%;\n padding: 8px 4px 8px 12px;\n border-radius: 6px;\n color: var(--rich-text-at-mention-text-secondary);\n font-size: 11px;\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 box-sizing: border-box;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n max-width: 100%;\n min-width: 0;\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 box-sizing: border-box;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 12px;\n width: min(100%, 28ch);\n max-width: 100%;\n min-width: 0;\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 display: block;\n max-width: 100%;\n min-width: 0;\n color: var(--rich-text-at-mention-text-tertiary);\n line-height: 20px;\n overflow-wrap: anywhere;\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: 24px;\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--issue,\n.rich-text-at-mention-row--app,\n.rich-text-at-mention-row--file,\n.rich-text-at-mention-row--session {\n display: flex;\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.rich-text-at-mention-row__entity-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 width: 100%;\n}\n\n.rich-text-at-mention-row__inline {\n display: grid;\n grid-template-columns: minmax(0, 1fr);\n align-items: center;\n gap: 8px;\n width: 100%;\n}\n\n.rich-text-at-mention-row__file-text,\n.rich-text-at-mention-row__app-text,\n.rich-text-at-mention-row__entity-text {\n align-items: baseline;\n gap: 8px;\n}\n\n.rich-text-at-mention-row__file-text {\n flex: 1 1 0;\n}\n\n.rich-text-at-mention-row__app-text,\n.rich-text-at-mention-row__entity-text {\n flex: 1 1 0;\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 width: 100%;\n}\n\n.rich-text-at-mention-row__title,\n.rich-text-at-mention-row__entity-name,\n.rich-text-at-mention-row__entity-description,\n.rich-text-at-mention-row__app-name,\n.rich-text-at-mention-row__description,\n.rich-text-at-mention-row__app-description,\n.rich-text-at-mention-row__file-count {\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__entity-name,\n.rich-text-at-mention-row__app-name {\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__entity-name,\n.rich-text-at-mention-row__app-name {\n flex: 0 1 auto;\n}\n\n.rich-text-at-mention-row__app-name {\n flex-shrink: 1;\n}\n\n.rich-text-at-mention-row__description,\n.rich-text-at-mention-row__entity-description,\n.rich-text-at-mention-row__app-description,\n.rich-text-at-mention-row__file-count {\n color: var(--rich-text-at-mention-text-secondary);\n font-weight: 400;\n}\n\n.rich-text-at-mention-row__app-description,\n.rich-text-at-mention-row__entity-description {\n flex: 1 1 0;\n}\n\n.rich-text-at-mention-row__description,\n.rich-text-at-mention-row__session-summary {\n flex: 1 1 0;\n}\n\n.rich-text-at-mention-row__file-count {\n flex: 0 0 auto;\n font-size: 11px;\n}\n\n.rich-text-at-mention-row__session-summary {\n min-width: 0;\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.rich-text-at-mention-row__navigate-into {\n appearance: none;\n display: grid;\n place-items: center;\n height: 24px;\n margin-left: auto;\n justify-self: end;\n padding: 0;\n border: 0;\n border-radius: 5px;\n background: transparent;\n color: var(--rich-text-at-mention-text-tertiary);\n cursor: pointer;\n outline: none;\n transition:\n background-color 160ms ease,\n color 160ms ease;\n}\n\n.rich-text-at-mention-row__open-references {\n height: 20px;\n width: auto;\n min-width: max-content;\n flex: 0 0 auto;\n padding-inline: 8px;\n color: var(--text-secondary);\n font-size: 11px;\n font-weight: 500;\n line-height: 20px;\n white-space: nowrap;\n}\n\n.rich-text-at-mention-row__navigate-into {\n width: 24px;\n flex: 0 0 24px;\n}\n\n.rich-text-at-mention-row__file-count\n + .rich-text-at-mention-row__navigate-into {\n margin-left: -6px;\n}\n\n.rich-text-at-mention-row__open-references:hover,\n.rich-text-at-mention-row__navigate-into:hover,\n.rich-text-at-mention-row__open-references:focus-visible,\n.rich-text-at-mention-row__navigate-into:focus-visible {\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: 0 0 auto;\n gap: 4px;\n width: fit-content;\n border: 1px solid transparent;\n padding-inline: 4px;\n font-size: 11px;\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=\"purple\"] {\n background: color-mix(\n in srgb,\n var(--rich-text-at-mention-accent) 12%,\n transparent\n );\n color: var(--rich-text-at-mention-accent);\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 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":[]}
|
package/dist/at-panel/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React$1, { JSX, ReactNode } from 'react';
|
|
2
|
-
import { g as MentionPaletteProps, i as MentionPaletteState, d as MentionPaletteGroup, j as MentionPaletteTheme } from '../mentionPaletteModel-
|
|
3
|
-
export { M as MentionPaletteCategory, a as MentionPaletteCategoryConfig, b as MentionPaletteEntry, c as MentionPaletteFilterId, e as MentionPaletteGroupId, f as MentionPaletteModelInput, h as MentionPaletteSectionConfig, k as buildMentionPaletteModel, l as buildMentionPaletteModelFromTriggerMatches, m as findMentionPaletteEntry, n as mentionPaletteGroup, o as moveMentionPaletteHighlight, p as nextMentionPaletteCategory, r as repairMentionPaletteHighlight, s as selectedMentionPaletteItem } from '../mentionPaletteModel-
|
|
2
|
+
import { g as MentionPaletteProps, i as MentionPaletteState, d as MentionPaletteGroup, j as MentionPaletteTheme } from '../mentionPaletteModel-CT8fzBE2.js';
|
|
3
|
+
export { M as MentionPaletteCategory, a as MentionPaletteCategoryConfig, b as MentionPaletteEntry, c as MentionPaletteFilterId, e as MentionPaletteGroupId, f as MentionPaletteModelInput, h as MentionPaletteSectionConfig, k as buildMentionPaletteModel, l as buildMentionPaletteModelFromTriggerMatches, m as findMentionPaletteEntry, n as mentionPaletteGroup, o as moveMentionPaletteHighlight, p as nextMentionPaletteCategory, r as repairMentionPaletteHighlight, s as selectedMentionPaletteItem } from '../mentionPaletteModel-CT8fzBE2.js';
|
|
4
4
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
5
5
|
import { MentionRowItem, MentionFileVisualKind, MentionRowStatusVariant, MentionRowStatusTag, MentionRowStatusTone } from './model.js';
|
|
6
6
|
export { MentionFileVisualKindInput, MentionRowAppFactoryItem, MentionRowAppItem, MentionRowFileItem, MentionRowIssueItem, MentionRowPlainItem, MentionRowSessionItem, activityMentionStatusBadgeClassName, activityMentionStatusTone, flattenMentionPaletteEntries, issueMentionStatusBadgeClassName, issueMentionStatusTone, mentionStatusBadgeClassName, resolveMentionFileThumbnailUrl, resolveMentionFileVisualKind } from './model.js';
|
|
@@ -28,6 +28,7 @@ interface MentionPaletteStateAdapterInput<TItem> {
|
|
|
28
28
|
*/
|
|
29
29
|
categoryCycleOrder?: readonly MentionPaletteCycleCategory[];
|
|
30
30
|
getItemKey: (item: TItem, groupId: string) => string;
|
|
31
|
+
isItemDisabled?: (item: TItem, groupId: string) => boolean;
|
|
31
32
|
callbacks?: MentionPaletteStateCallbacks<TItem>;
|
|
32
33
|
}
|
|
33
34
|
type MentionPaletteStateCommitResult<TItem> = {
|
|
@@ -44,7 +45,7 @@ type MentionPaletteStateCommitResult<TItem> = {
|
|
|
44
45
|
};
|
|
45
46
|
interface MentionPaletteStateAdapter<TItem> {
|
|
46
47
|
selectedItem: TItem | null;
|
|
47
|
-
paletteProps: Pick<MentionPaletteProps<TItem>, "state" | "highlightedKey" | "getItemKey" | "onHighlightChange" | "onSelectItem" | "onSelectCategory" | "onSelectFilter" | "onExpandGroup" | "onCycleFilter" | "onMoveSelection">;
|
|
48
|
+
paletteProps: Pick<MentionPaletteProps<TItem>, "state" | "highlightedKey" | "getItemKey" | "isItemDisabled" | "onHighlightChange" | "onSelectItem" | "onSelectCategory" | "onSelectFilter" | "onExpandGroup" | "onCycleFilter" | "onMoveSelection">;
|
|
48
49
|
moveSelection: (delta: 1 | -1) => string | null;
|
|
49
50
|
selectCategory: (categoryId: string) => void;
|
|
50
51
|
expandGroup: (groupId: string) => void;
|
package/dist/at-panel/index.js
CHANGED
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
richTextTriggerQueryMatchToMentionRowItem,
|
|
14
14
|
useAtPanelKeyboard,
|
|
15
15
|
workspaceAppIconFallbackUrlFromTriggerMatch
|
|
16
|
-
} from "../chunk-
|
|
16
|
+
} from "../chunk-IU7RTTKI.js";
|
|
17
17
|
import {
|
|
18
18
|
activityMentionStatusBadgeClassName,
|
|
19
19
|
activityMentionStatusTone,
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
resolveMentionFileThumbnailUrl,
|
|
32
32
|
resolveMentionFileVisualKind,
|
|
33
33
|
selectedMentionPaletteItem
|
|
34
|
-
} from "../chunk-
|
|
34
|
+
} from "../chunk-AB4LAEBH.js";
|
|
35
35
|
export {
|
|
36
36
|
MentionPalette,
|
|
37
37
|
MentionPaletteFromState,
|
package/dist/at-panel/model.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { i as MentionPaletteState, b as MentionPaletteEntry } from '../mentionPaletteModel-
|
|
2
|
-
export { M as MentionPaletteCategory, a as MentionPaletteCategoryConfig, c as MentionPaletteFilterId, d as MentionPaletteGroup, e as MentionPaletteGroupId, f as MentionPaletteModelInput, g as MentionPaletteProps, h as MentionPaletteSectionConfig, j as MentionPaletteTheme, k as buildMentionPaletteModel, l as buildMentionPaletteModelFromTriggerMatches, m as findMentionPaletteEntry, n as mentionPaletteGroup, o as moveMentionPaletteHighlight, p as nextMentionPaletteCategory, r as repairMentionPaletteHighlight, s as selectedMentionPaletteItem } from '../mentionPaletteModel-
|
|
1
|
+
import { i as MentionPaletteState, b as MentionPaletteEntry } from '../mentionPaletteModel-CT8fzBE2.js';
|
|
2
|
+
export { M as MentionPaletteCategory, a as MentionPaletteCategoryConfig, c as MentionPaletteFilterId, d as MentionPaletteGroup, e as MentionPaletteGroupId, f as MentionPaletteModelInput, g as MentionPaletteProps, h as MentionPaletteSectionConfig, j as MentionPaletteTheme, k as buildMentionPaletteModel, l as buildMentionPaletteModelFromTriggerMatches, m as findMentionPaletteEntry, n as mentionPaletteGroup, o as moveMentionPaletteHighlight, p as nextMentionPaletteCategory, r as repairMentionPaletteHighlight, s as selectedMentionPaletteItem } from '../mentionPaletteModel-CT8fzBE2.js';
|
|
3
3
|
import { ReactNode } from 'react';
|
|
4
4
|
import '../types/index.js';
|
|
5
5
|
import '../mention-DJq2OJ4K.js';
|
|
@@ -159,6 +159,6 @@ type MentionRowItem = MentionRowFileItem | MentionRowAppItem | MentionRowAppFact
|
|
|
159
159
|
* item entry → `<groupId>:<getItemKey(item, groupId)>`
|
|
160
160
|
* expand entry → `expand:<groupId>`
|
|
161
161
|
*/
|
|
162
|
-
declare function flattenMentionPaletteEntries<TItem>(state: MentionPaletteState<TItem>, getItemKey: (item: TItem, groupId: string) => string): MentionPaletteEntry[];
|
|
162
|
+
declare function flattenMentionPaletteEntries<TItem>(state: MentionPaletteState<TItem>, getItemKey: (item: TItem, groupId: string) => string, isItemDisabled?: (item: TItem, groupId: string) => boolean): MentionPaletteEntry[];
|
|
163
163
|
|
|
164
164
|
export { type MentionFileVisualKind, type MentionFileVisualKindInput, MentionPaletteEntry, MentionPaletteState, type MentionRowAppFactoryItem, type MentionRowAppItem, type MentionRowFileItem, type MentionRowIssueItem, type MentionRowItem, type MentionRowPlainItem, type MentionRowSessionItem, type MentionRowStatusTag, type MentionRowStatusTone, type MentionRowStatusVariant, activityMentionStatusBadgeClassName, activityMentionStatusTone, flattenMentionPaletteEntries, issueMentionStatusBadgeClassName, issueMentionStatusTone, mentionStatusBadgeClassName, resolveMentionFileThumbnailUrl, resolveMentionFileVisualKind };
|
package/dist/at-panel/model.js
CHANGED
|
@@ -4,7 +4,7 @@ function hasResolvedGroupData(groups) {
|
|
|
4
4
|
(group) => group.items.length > 0 || group.hasMore || group.emptyLabel != null
|
|
5
5
|
);
|
|
6
6
|
}
|
|
7
|
-
function flattenMentionPaletteEntries(state, getItemKey) {
|
|
7
|
+
function flattenMentionPaletteEntries(state, getItemKey, isItemDisabled) {
|
|
8
8
|
if (state.mode === "browse" && !hasResolvedGroupData(state.groups)) {
|
|
9
9
|
return state.categories.map((category) => ({
|
|
10
10
|
key: `category:${category.id}`,
|
|
@@ -15,6 +15,9 @@ function flattenMentionPaletteEntries(state, getItemKey) {
|
|
|
15
15
|
const entries = [];
|
|
16
16
|
for (const group of state.groups) {
|
|
17
17
|
group.items.forEach((item, index) => {
|
|
18
|
+
if (isItemDisabled?.(item, group.id)) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
18
21
|
entries.push({
|
|
19
22
|
key: `${group.id}:${getItemKey(item, group.id)}`,
|
|
20
23
|
type: "item",
|
|
@@ -134,7 +137,8 @@ function mentionPaletteConfigMatches(config, match) {
|
|
|
134
137
|
function moveMentionPaletteHighlight(input) {
|
|
135
138
|
const entries = flattenMentionPaletteEntries(
|
|
136
139
|
input.state,
|
|
137
|
-
input.getItemKey
|
|
140
|
+
input.getItemKey,
|
|
141
|
+
input.isItemDisabled
|
|
138
142
|
).filter(
|
|
139
143
|
(entry) => entry.type === "category" || entry.type === "item" || entry.type === "expand"
|
|
140
144
|
);
|
|
@@ -148,7 +152,11 @@ function moveMentionPaletteHighlight(input) {
|
|
|
148
152
|
return entries[(currentIndex + input.delta + entries.length) % entries.length]?.key ?? null;
|
|
149
153
|
}
|
|
150
154
|
function repairMentionPaletteHighlight(input) {
|
|
151
|
-
const entries = flattenMentionPaletteEntries(
|
|
155
|
+
const entries = flattenMentionPaletteEntries(
|
|
156
|
+
input.state,
|
|
157
|
+
input.getItemKey,
|
|
158
|
+
input.isItemDisabled
|
|
159
|
+
);
|
|
152
160
|
if (entries.length === 0) {
|
|
153
161
|
return null;
|
|
154
162
|
}
|
|
@@ -164,14 +172,16 @@ function findMentionPaletteEntry(input) {
|
|
|
164
172
|
if (input.key === null) {
|
|
165
173
|
return null;
|
|
166
174
|
}
|
|
167
|
-
return flattenMentionPaletteEntries(
|
|
168
|
-
|
|
169
|
-
|
|
175
|
+
return flattenMentionPaletteEntries(
|
|
176
|
+
input.state,
|
|
177
|
+
input.getItemKey,
|
|
178
|
+
input.isItemDisabled
|
|
179
|
+
).find((entry) => entry.key === input.key) ?? null;
|
|
170
180
|
}
|
|
171
181
|
function selectedMentionPaletteItem(input) {
|
|
172
182
|
for (const group of input.state.groups) {
|
|
173
183
|
const index = group.items.findIndex(
|
|
174
|
-
(candidate) => `${group.id}:${input.getItemKey(candidate, group.id)}` === input.key
|
|
184
|
+
(candidate) => input.isItemDisabled?.(candidate, group.id) !== true && `${group.id}:${input.getItemKey(candidate, group.id)}` === input.key
|
|
175
185
|
);
|
|
176
186
|
if (index >= 0) {
|
|
177
187
|
return group.items[index] ?? null;
|
|
@@ -284,4 +294,4 @@ export {
|
|
|
284
294
|
resolveMentionFileVisualKind,
|
|
285
295
|
resolveMentionFileThumbnailUrl
|
|
286
296
|
};
|
|
287
|
-
//# sourceMappingURL=chunk-
|
|
297
|
+
//# sourceMappingURL=chunk-AB4LAEBH.js.map
|
|
@@ -0,0 +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 the group list reflects a *resolved* answer for the\n * active category — either because a group has interactive content, or\n * because a group is present with an explicit `emptyLabel` (i.e. \"we looked,\n * there is nothing here\", as opposed to \"we haven't looked yet\"). Groups\n * with no items, no `hasMore`, and no `emptyLabel` are placeholders for\n * content that hasn't loaded, not a genuinely empty category.\n */\nfunction hasResolvedGroupData<TItem>(\n groups: MentionPaletteState<TItem>[\"groups\"]\n): boolean {\n return groups.some(\n (group) =>\n group.items.length > 0 || group.hasMore || group.emptyLabel != null\n );\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 isItemDisabled?: (item: TItem, groupId: string) => boolean\n): MentionPaletteEntry[] {\n // Browse mode with no resolved group content → show category nav only.\n // This only applies while the active category truly has no answer yet\n // (e.g. still loading). A category that has resolved to \"structurally\n // empty\" (a group carrying an `emptyLabel`, like \"No tasks yet\") falls\n // through to the loop below, which naturally yields zero entries —\n // signalling callers (e.g. the composer's Enter handler) that there is\n // nothing to select, rather than re-surfacing the already-active category\n // as though it still needed picking.\n if (state.mode === \"browse\" && !hasResolvedGroupData(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 if (isItemDisabled?.(item, group.id)) {\n return;\n }\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 mentionPaletteExpandLabel<TItem>(\n group: Pick<\n MentionPaletteGroup<TItem>,\n | \"expandErrorLabel\"\n | \"expandLabel\"\n | \"expandLoadingLabel\"\n | \"expandStatus\"\n | \"totalCount\"\n | \"visibleCount\"\n >\n): string {\n const fallbackLabel =\n group.expandLabel ??\n `+${Math.max(0, group.totalCount - group.visibleCount)}`;\n if (group.expandStatus === \"loading\") {\n return group.expandLoadingLabel ?? fallbackLabel;\n }\n if (group.expandStatus === \"error\") {\n return group.expandErrorLabel ?? fallbackLabel;\n }\n return fallbackLabel;\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 isItemDisabled?: (item: TItem, groupId: string) => boolean;\n}): string | null {\n const entries = flattenMentionPaletteEntries(\n input.state,\n input.getItemKey,\n input.isItemDisabled\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 isItemDisabled?: (item: TItem, groupId: string) => boolean;\n preferredKey?: string | null;\n}): string | null {\n const entries = flattenMentionPaletteEntries(\n input.state,\n input.getItemKey,\n input.isItemDisabled\n );\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 isItemDisabled?: (item: TItem, groupId: string) => boolean;\n}): MentionPaletteEntry | null {\n if (input.key === null) {\n return null;\n }\n return (\n flattenMentionPaletteEntries(\n input.state,\n input.getItemKey,\n input.isItemDisabled\n ).find((entry) => entry.key === input.key) ?? 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 isItemDisabled?: (item: TItem, groupId: string) => boolean;\n}): TItem | null {\n for (const group of input.state.groups) {\n const index = group.items.findIndex(\n (candidate) =>\n input.isItemDisabled?.(candidate, group.id) !== true &&\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 | \"purple\"\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 \"blue\":\n return \"bg-[color:color-mix(in_srgb,var(--status-running)_12%,transparent)] text-[var(--status-running)]\";\n case \"amber\":\n return \"bg-[color:color-mix(in_srgb,var(--state-warning)_12%,transparent)] text-[var(--state-warning)]\";\n case \"green\":\n return \"bg-[color:color-mix(in_srgb,var(--state-success)_12%,transparent)] text-[var(--state-success)]\";\n case \"purple\":\n return \"bg-[color-mix(in_srgb,var(--rich-text-mention-issue)_12%,transparent)] text-[var(--rich-text-mention-issue)]\";\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":[]}
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
resolveMentionFileThumbnailUrl,
|
|
9
9
|
resolveMentionFileVisualKind,
|
|
10
10
|
selectedMentionPaletteItem
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-AB4LAEBH.js";
|
|
12
12
|
|
|
13
13
|
// src/at-panel/MentionPalette.tsx
|
|
14
14
|
import {
|
|
@@ -283,6 +283,7 @@ function MentionPalette(props) {
|
|
|
283
283
|
state,
|
|
284
284
|
highlightedKey,
|
|
285
285
|
getItemKey,
|
|
286
|
+
isItemDisabled,
|
|
286
287
|
renderItem,
|
|
287
288
|
labels,
|
|
288
289
|
hintLabels,
|
|
@@ -313,7 +314,8 @@ function MentionPalette(props) {
|
|
|
313
314
|
);
|
|
314
315
|
const interactiveEntries = flattenMentionPaletteEntries(
|
|
315
316
|
state,
|
|
316
|
-
(item, groupId) => getItemKey(item, findGroup(state.groups, groupId))
|
|
317
|
+
(item, groupId) => getItemKey(item, findGroup(state.groups, groupId)),
|
|
318
|
+
isItemDisabled ? (item, groupId) => isItemDisabled(item, findGroup(state.groups, groupId)) : void 0
|
|
317
319
|
);
|
|
318
320
|
const hasInteractiveEntries = interactiveEntries.some(
|
|
319
321
|
(entry) => entry.type === "item" || entry.type === "expand"
|
|
@@ -412,6 +414,7 @@ function MentionPalette(props) {
|
|
|
412
414
|
highlightedKey,
|
|
413
415
|
highlightedOptionRef,
|
|
414
416
|
getItemKey,
|
|
417
|
+
isItemDisabled,
|
|
415
418
|
renderItem,
|
|
416
419
|
onHighlightChange,
|
|
417
420
|
onSelectItem,
|
|
@@ -531,6 +534,7 @@ function MentionPaletteGroups({
|
|
|
531
534
|
highlightedKey,
|
|
532
535
|
highlightedOptionRef,
|
|
533
536
|
getItemKey,
|
|
537
|
+
isItemDisabled,
|
|
534
538
|
renderItem,
|
|
535
539
|
onHighlightChange,
|
|
536
540
|
onSelectItem,
|
|
@@ -560,6 +564,7 @@ function MentionPaletteGroups({
|
|
|
560
564
|
group.items.map((item) => {
|
|
561
565
|
const entryKey = `${group.id}:${getItemKey(item, group)}`;
|
|
562
566
|
const isHighlighted = entryKey === highlightedKey;
|
|
567
|
+
const disabled = isItemDisabled?.(item, group) ?? false;
|
|
563
568
|
return /* @__PURE__ */ jsx2(
|
|
564
569
|
"button",
|
|
565
570
|
{
|
|
@@ -567,15 +572,21 @@ function MentionPaletteGroups({
|
|
|
567
572
|
type: "button",
|
|
568
573
|
className: paletteStyles.rowButton,
|
|
569
574
|
role: "option",
|
|
575
|
+
disabled,
|
|
576
|
+
"aria-disabled": disabled || void 0,
|
|
570
577
|
"aria-selected": isHighlighted,
|
|
571
578
|
"data-highlighted": isHighlighted ? "" : void 0,
|
|
572
579
|
onPointerMove: () => {
|
|
573
|
-
if (!isHighlighted) {
|
|
580
|
+
if (!disabled && !isHighlighted) {
|
|
574
581
|
onHighlightChange(entryKey);
|
|
575
582
|
}
|
|
576
583
|
},
|
|
577
584
|
onMouseDown: (event) => event.preventDefault(),
|
|
578
|
-
onClick: () =>
|
|
585
|
+
onClick: () => {
|
|
586
|
+
if (!disabled) {
|
|
587
|
+
onSelectItem(item, group);
|
|
588
|
+
}
|
|
589
|
+
},
|
|
579
590
|
children: renderItem(item, { active: isHighlighted, group })
|
|
580
591
|
},
|
|
581
592
|
entryKey
|
|
@@ -827,7 +838,8 @@ function createMentionPaletteStateAdapter(input) {
|
|
|
827
838
|
state: input.state,
|
|
828
839
|
currentKey: input.highlightedKey,
|
|
829
840
|
delta,
|
|
830
|
-
getItemKey: input.getItemKey
|
|
841
|
+
getItemKey: input.getItemKey,
|
|
842
|
+
isItemDisabled: input.isItemDisabled
|
|
831
843
|
});
|
|
832
844
|
if (nextKey !== null) {
|
|
833
845
|
input.callbacks?.onHighlightChange?.(nextKey);
|
|
@@ -851,13 +863,15 @@ function createMentionPaletteStateAdapter(input) {
|
|
|
851
863
|
const selectedItem = selectedMentionPaletteItem({
|
|
852
864
|
state: input.state,
|
|
853
865
|
key: input.highlightedKey,
|
|
854
|
-
getItemKey: input.getItemKey
|
|
866
|
+
getItemKey: input.getItemKey,
|
|
867
|
+
isItemDisabled: input.isItemDisabled
|
|
855
868
|
});
|
|
856
869
|
const commitHighlighted = () => {
|
|
857
870
|
const activeEntry = findMentionPaletteEntry({
|
|
858
871
|
state: input.state,
|
|
859
872
|
key: input.highlightedKey,
|
|
860
|
-
getItemKey: input.getItemKey
|
|
873
|
+
getItemKey: input.getItemKey,
|
|
874
|
+
isItemDisabled: input.isItemDisabled
|
|
861
875
|
});
|
|
862
876
|
const fallbackCategoryId = categoryIdFromKey(input.highlightedKey);
|
|
863
877
|
if (!activeEntry) {
|
|
@@ -881,7 +895,8 @@ function createMentionPaletteStateAdapter(input) {
|
|
|
881
895
|
const item = selectedMentionPaletteItem({
|
|
882
896
|
state: input.state,
|
|
883
897
|
key: activeEntry.key,
|
|
884
|
-
getItemKey: input.getItemKey
|
|
898
|
+
getItemKey: input.getItemKey,
|
|
899
|
+
isItemDisabled: input.isItemDisabled
|
|
885
900
|
});
|
|
886
901
|
if (item !== null) {
|
|
887
902
|
input.callbacks?.onSelectItem?.(item);
|
|
@@ -896,6 +911,7 @@ function createMentionPaletteStateAdapter(input) {
|
|
|
896
911
|
state: input.state,
|
|
897
912
|
highlightedKey: input.highlightedKey,
|
|
898
913
|
getItemKey: getPaletteItemKey,
|
|
914
|
+
isItemDisabled: (item, group) => input.isItemDisabled?.(item, group.id) ?? false,
|
|
899
915
|
onHighlightChange: (key) => {
|
|
900
916
|
input.callbacks?.onHighlightChange?.(key);
|
|
901
917
|
},
|
|
@@ -2101,4 +2117,4 @@ export {
|
|
|
2101
2117
|
makeAtPanelKeyDown,
|
|
2102
2118
|
useAtPanelKeyboard
|
|
2103
2119
|
};
|
|
2104
|
-
//# sourceMappingURL=chunk-
|
|
2120
|
+
//# sourceMappingURL=chunk-IU7RTTKI.js.map
|