UNPKG

@assistant-ui/react

Version:

React components for AI chat.

63 lines (62 loc) 3.18 kB
"use strict"; "use client"; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/ui/user-action-bar.tsx var user_action_bar_exports = {}; __export(user_action_bar_exports, { default: () => user_action_bar_default }); module.exports = __toCommonJS(user_action_bar_exports); var import_react = require("react"); var import_lucide_react = require("lucide-react"); var import_tooltip_icon_button = require("./base/tooltip-icon-button.cjs"); var import_withDefaults = require("./utils/withDefaults.cjs"); var import_thread_config = require("./thread-config.cjs"); var import_context = require("../context/index.cjs"); var import_primitives = require("../primitives/index.cjs"); var import_jsx_runtime = require("react/jsx-runtime"); var useAllowEdit = (ensureCapability = false) => { const { userMessage: { allowEdit = true } = {} } = (0, import_thread_config.useThreadConfig)(); const editSupported = (0, import_context.useThread)((t) => t.capabilities.edit); return allowEdit && (!ensureCapability || editSupported); }; var UserActionBar = () => { const allowEdit = useAllowEdit(true); if (!allowEdit) return null; return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(UserActionBarRoot, { hideWhenRunning: true, autohide: "not-last", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(UserActionBarEdit, {}) }); }; UserActionBar.displayName = "UserActionBar"; var UserActionBarRoot = (0, import_withDefaults.withDefaults)(import_primitives.ActionBarPrimitive.Root, { className: "aui-user-action-bar-root" }); UserActionBarRoot.displayName = "UserActionBarRoot"; var UserActionBarEdit = (0, import_react.forwardRef)((props, ref) => { const { strings: { userMessage: { edit: { tooltip = "Edit" } = {} } = {} } = {} } = (0, import_thread_config.useThreadConfig)(); const allowEdit = useAllowEdit(); return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_primitives.ActionBarPrimitive.Edit, { disabled: !allowEdit, asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tooltip_icon_button.TooltipIconButton, { tooltip, ...props, ref, children: props.children ?? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.PencilIcon, {}) }) }); }); UserActionBarEdit.displayName = "UserActionBarEdit"; var exports2 = { Root: UserActionBarRoot, Edit: UserActionBarEdit }; var user_action_bar_default = Object.assign(UserActionBar, exports2); //# sourceMappingURL=user-action-bar.js.map