@atlaskit/rovo-agent-components
Version:
This package host public components related to rovo agents, the components here are needed for other public atlaskit packages
199 lines (197 loc) • 8.29 kB
JavaScript
/* index.tsx generated by @compiled/babel-plugin v0.39.1 */
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getAgentCreator = exports.AgentProfileInfo = exports.AgentProfileCreator = void 0;
require("./index.compiled.css");
var _runtime = require("@compiled/react/runtime");
var _react = _interopRequireDefault(require("react"));
var _reactIntl = require("react-intl");
var _heading = _interopRequireDefault(require("@atlaskit/heading"));
var _link = _interopRequireDefault(require("@atlaskit/link"));
var _logo = require("@atlaskit/logo");
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
var _compiled = require("@atlaskit/primitives/compiled");
var _skeleton = _interopRequireDefault(require("@atlaskit/skeleton"));
var _tooltip = _interopRequireDefault(require("@atlaskit/tooltip"));
var _hiddenIcon = require("../../common/ui/hidden-icon");
var _starIconButton = require("../../common/ui/star-icon-button");
var _isForgeAgent = require("../../common/utils/is-forge-agent");
var _messages = require("./messages");
var styles = {
clickableItem: "_zulp1b66 _1e0c1txw _4cvr1h6o",
rovoIconWrapper: "_1e0c1txw",
name: "_1bah1yb4 _4cvr1y6m",
description: "_1mouze3t _1i4qfg65 _1nmz1hna",
headingWrapper: "_kqswh2mm",
hiddenIconWrapper: "_19pkv77o"
};
var getAgentCreator = exports.getAgentCreator = function getAgentCreator(_ref) {
var creatorType = _ref.creatorType,
authoringTeam = _ref.authoringTeam,
userCreator = _ref.userCreator,
forgeCreator = _ref.forgeCreator;
if (creatorType === 'SYSTEM') {
return {
type: 'SYSTEM'
};
}
if ((0, _platformFeatureFlags.fg)('rovo_agent_support_a2a_avatar') ? (0, _isForgeAgent.isForgeAgentByCreatorType)(creatorType) : creatorType === 'FORGE' || creatorType === 'THIRD_PARTY' // THIRD_PARTY is deprecated in convo-ai, use FORGE instead
) {
return {
// @todo: remove cast in rovo_agent_support_a2a_avatar cleanup
type: (0, _platformFeatureFlags.fg)('jira_improve_agent_profile_for_a2a') ? creatorType : 'FORGE',
name: forgeCreator !== null && forgeCreator !== void 0 ? forgeCreator : ''
};
}
if (creatorType === 'OOTB') {
return {
type: 'OOTB'
};
}
if (creatorType === 'CUSTOMER') {
if (authoringTeam) {
var _authoringTeam$profil;
return {
type: 'CUSTOMER',
name: authoringTeam.displayName,
profileLink: (_authoringTeam$profil = authoringTeam.profileLink) !== null && _authoringTeam$profil !== void 0 ? _authoringTeam$profil : ''
};
}
if (!(userCreator !== null && userCreator !== void 0 && userCreator.profileLink)) {
return undefined;
}
return {
type: 'CUSTOMER',
name: userCreator.name,
profileLink: userCreator.profileLink,
status: userCreator.status
};
}
return;
};
var AgentProfileCreator = exports.AgentProfileCreator = function AgentProfileCreator(_ref2) {
var creator = _ref2.creator,
onCreatorLinkClick = _ref2.onCreatorLinkClick,
isLoading = _ref2.isLoading;
var _useIntl = (0, _reactIntl.useIntl)(),
formatMessage = _useIntl.formatMessage;
var getCreatorRender = function getCreatorRender() {
if (isLoading) {
return formatMessage(_messages.messages.agentCreatedBy, {
creatorNameWithLink: /*#__PURE__*/_react.default.createElement(_skeleton.default, {
testId: "agent-profile-creator-skeleton",
isShimmering: true,
height: 18,
width: 100
})
});
}
if (!creator) {
return null;
}
if (creator.type === 'SYSTEM' || creator.type === 'OOTB') {
return formatMessage(_messages.messages.agentCreatedBy, {
creatorNameWithLink: /*#__PURE__*/_react.default.createElement(_compiled.Inline, {
alignBlock: "center",
testId: "atlassian-icon"
}, /*#__PURE__*/_react.default.createElement(_logo.AtlassianIcon, {
label: "",
size: "small",
appearance: "brand"
}), /*#__PURE__*/_react.default.createElement(_compiled.Box, null, "Atlassian"))
});
}
if (creator.type === 'CUSTOMER') {
return formatMessage(_messages.messages.agentCreatedBy, {
creatorNameWithLink: /*#__PURE__*/_react.default.createElement(_link.default, {
href: creator.profileLink,
onClick: function onClick() {
return onCreatorLinkClick();
},
target: "_blank"
}, creator.name, ' ', creator.status === 'inactive' && formatMessage(_messages.messages.agentDeactivated))
});
}
if (creator.type === 'REMOTE_A2A') {
return formatMessage(_messages.messages.remoteAgentCreatedBy, {
creatorNameWithLink: creator.name
});
}
// THIRD_PARTY is deprecated in convo-ai, use FORGE instead
if (creator.type === 'THIRD_PARTY' || creator.type === 'FORGE') {
return formatMessage(_messages.messages.agentCreatedBy, {
creatorNameWithLink: creator.name
});
}
return null;
};
var creatorRender = getCreatorRender();
if ((0, _platformFeatureFlags.fg)('jira_improve_agent_profile_for_a2a')) {
var showRovoIcon = (creator === null || creator === void 0 ? void 0 : creator.type) !== 'REMOTE_A2A';
return creatorRender ? /*#__PURE__*/_react.default.createElement(_compiled.Box, {
xcss: styles.clickableItem
}, showRovoIcon ? /*#__PURE__*/_react.default.createElement(_compiled.Box, {
xcss: styles.rovoIconWrapper,
testId: "rovo-icon-wrapper",
"aria-hidden": "true"
}, /*#__PURE__*/_react.default.createElement(_logo.RovoIcon, {
appearance: "brand",
size: "small"
})) : null, creatorRender) : null;
}
return creatorRender ? /*#__PURE__*/_react.default.createElement(_compiled.Box, {
xcss: styles.clickableItem
}, /*#__PURE__*/_react.default.createElement(_compiled.Box, {
xcss: styles.rovoIconWrapper,
testId: "rovo-icon-wrapper",
"aria-hidden": "true"
}, /*#__PURE__*/_react.default.createElement(_logo.RovoIcon, {
appearance: "brand",
size: "small"
})), creatorRender) : null;
};
var AgentProfileInfo = exports.AgentProfileInfo = function AgentProfileInfo(_ref3) {
var agentName = _ref3.agentName,
agentDescription = _ref3.agentDescription,
creatorRender = _ref3.creatorRender,
starCountRender = _ref3.starCountRender,
headingRender = _ref3.headingRender,
isStarred = _ref3.isStarred,
isHidden = _ref3.isHidden,
onStarToggle = _ref3.onStarToggle,
_ref3$showStarButton = _ref3.showStarButton,
showStarButton = _ref3$showStarButton === void 0 ? true : _ref3$showStarButton,
renderAdditionalContent = _ref3.renderAdditionalContent;
var _useIntl2 = (0, _reactIntl.useIntl)(),
formatMessage = _useIntl2.formatMessage;
return /*#__PURE__*/_react.default.createElement(_compiled.Stack, {
space: "space.100"
}, /*#__PURE__*/_react.default.createElement(_compiled.Inline, {
xcss: styles.name,
space: "space.100",
alignBlock: "center"
}, /*#__PURE__*/_react.default.createElement(_compiled.Inline, {
space: "space.075",
xcss: styles.headingWrapper
}, /*#__PURE__*/_react.default.createElement(_heading.default, {
as: "h2",
size: "medium"
}, agentName), headingRender, isHidden && /*#__PURE__*/_react.default.createElement(_compiled.Box, {
xcss: styles.hiddenIconWrapper
}, /*#__PURE__*/_react.default.createElement(_tooltip.default, {
content: formatMessage(_messages.messages.hiddenTooltip),
position: "top"
}, /*#__PURE__*/_react.default.createElement(_hiddenIcon.HiddenIcon, {
label: formatMessage(_messages.messages.hiddenIcon)
})))), showStarButton && /*#__PURE__*/_react.default.createElement(_starIconButton.StarIconButton, {
isStarred: isStarred,
handleToggle: onStarToggle,
agentName: agentName
})), creatorRender, !!agentDescription && /*#__PURE__*/_react.default.createElement(_compiled.Box, {
xcss: styles.description,
as: "p"
}, agentDescription), starCountRender, !!renderAdditionalContent && (0, _platformFeatureFlags.fg)('jira_browse_agents_modal') && renderAdditionalContent());
};