@atlaskit/smart-card 26.50.13 → 26.50.14
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/CHANGELOG.md +8 -0
- package/dist/cjs/extractors/flexible/index.js +2 -1
- package/dist/cjs/state/hooks/use-ai-summary/ai-summary-service/index.js +6 -3
- package/dist/cjs/state/hooks/use-ai-summary/index.js +4 -2
- package/dist/cjs/utils/analytics/analytics.js +1 -1
- package/dist/cjs/view/FlexibleCard/components/blocks/ai-summary-block/resolved/index.js +3 -1
- package/dist/cjs/view/HoverCard/components/ContentContainer.js +6 -3
- package/dist/cjs/view/HoverCard/components/views/resolved/index.js +7 -3
- package/dist/cjs/view/LinkUrl/index.js +1 -1
- package/dist/es2019/extractors/flexible/index.js +3 -2
- package/dist/es2019/state/hooks/use-ai-summary/ai-summary-service/index.js +6 -3
- package/dist/es2019/state/hooks/use-ai-summary/index.js +4 -2
- package/dist/es2019/utils/analytics/analytics.js +1 -1
- package/dist/es2019/view/FlexibleCard/components/blocks/ai-summary-block/resolved/index.js +3 -1
- package/dist/es2019/view/HoverCard/components/ContentContainer.js +7 -4
- package/dist/es2019/view/HoverCard/components/views/resolved/index.js +8 -4
- package/dist/es2019/view/LinkUrl/index.js +1 -1
- package/dist/esm/extractors/flexible/index.js +3 -2
- package/dist/esm/state/hooks/use-ai-summary/ai-summary-service/index.js +6 -3
- package/dist/esm/state/hooks/use-ai-summary/index.js +4 -2
- package/dist/esm/utils/analytics/analytics.js +1 -1
- package/dist/esm/view/FlexibleCard/components/blocks/ai-summary-block/resolved/index.js +3 -1
- package/dist/esm/view/HoverCard/components/ContentContainer.js +7 -4
- package/dist/esm/view/HoverCard/components/views/resolved/index.js +8 -4
- package/dist/esm/view/LinkUrl/index.js +1 -1
- package/dist/types/state/flexible-ui-context/types.d.ts +6 -0
- package/dist/types/state/hooks/use-ai-summary/ai-summary-service/index.d.ts +1 -0
- package/dist/types/state/hooks/use-ai-summary/ai-summary-service/types.d.ts +7 -3
- package/dist/types-ts4.5/state/flexible-ui-context/types.d.ts +6 -0
- package/dist/types-ts4.5/state/hooks/use-ai-summary/ai-summary-service/index.d.ts +1 -0
- package/dist/types-ts4.5/state/hooks/use-ai-summary/ai-summary-service/types.d.ts +7 -3
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @atlaskit/smart-card
|
|
2
2
|
|
|
3
|
+
## 26.50.14
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#86596](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/86596) [`37621cb1f1b9`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/37621cb1f1b9) - Update dependency json-ld-types
|
|
8
|
+
- [#86596](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/86596) [`3e267c62d680`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/3e267c62d680) - Change request shape to ai mate summary service and include ARI, add ari to flex context
|
|
9
|
+
- Updated dependencies
|
|
10
|
+
|
|
3
11
|
## 26.50.13
|
|
4
12
|
|
|
5
13
|
### Patch Changes
|
|
@@ -70,7 +70,8 @@ var extractFlexibleUiContext = function extractFlexibleUiContext() {
|
|
|
70
70
|
storyPoints: (0, _utils.extractStoryPoints)(data),
|
|
71
71
|
targetBranch: (0, _utils.extractTargetBranch)(data),
|
|
72
72
|
title: (0, _linkExtractors.extractTitle)(data) || url,
|
|
73
|
-
url: url
|
|
73
|
+
url: url,
|
|
74
|
+
ari: (0, _linkExtractors.extractAri)(data)
|
|
74
75
|
};
|
|
75
76
|
};
|
|
76
77
|
var _default = exports.default = extractFlexibleUiContext;
|
|
@@ -37,9 +37,11 @@ var AISummaryService = exports.AISummaryService = /*#__PURE__*/function () {
|
|
|
37
37
|
case 0:
|
|
38
38
|
payload = {
|
|
39
39
|
recipient_agent_named_id: 'summary_agent',
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
40
|
+
agent_input_context: {
|
|
41
|
+
content_url: _this.url,
|
|
42
|
+
content_ari: _this.ari,
|
|
43
|
+
summary_style: summaryStyle,
|
|
44
|
+
summary_output_mimetype: 'text/markdown'
|
|
43
45
|
}
|
|
44
46
|
};
|
|
45
47
|
options = {
|
|
@@ -84,6 +86,7 @@ var AISummaryService = exports.AISummaryService = /*#__PURE__*/function () {
|
|
|
84
86
|
headers: _objectSpread({}, props.headers || defaultConfig.headers)
|
|
85
87
|
};
|
|
86
88
|
this.url = props.url;
|
|
89
|
+
this.ari = props.ari;
|
|
87
90
|
this.onStart = props.onStart;
|
|
88
91
|
this.onSuccess = props.onSuccess;
|
|
89
92
|
this.onError = props.onError;
|
|
@@ -17,7 +17,8 @@ var useAISummary = exports.useAISummary = function useAISummary(props) {
|
|
|
17
17
|
var url = props.url,
|
|
18
18
|
baseUrl = props.baseUrl,
|
|
19
19
|
headers = props.headers,
|
|
20
|
-
product = props.product
|
|
20
|
+
product = props.product,
|
|
21
|
+
ari = props.ari;
|
|
21
22
|
var _useState = (0, _react.useState)(((_AISummariesStore$get = _store.AISummariesStore.get(url)) === null || _AISummariesStore$get === void 0 ? void 0 : _AISummariesStore$get.state) || {
|
|
22
23
|
status: 'ready',
|
|
23
24
|
content: ''
|
|
@@ -45,6 +46,7 @@ var useAISummary = exports.useAISummary = function useAISummary(props) {
|
|
|
45
46
|
if (!_store.AISummariesStore.get(url)) {
|
|
46
47
|
_store.AISummariesStore.set(url, new _aiSummaryService.AISummaryService({
|
|
47
48
|
url: url,
|
|
49
|
+
ari: ari,
|
|
48
50
|
baseUrl: baseUrl,
|
|
49
51
|
headers: headers,
|
|
50
52
|
onError: onError,
|
|
@@ -56,7 +58,7 @@ var useAISummary = exports.useAISummary = function useAISummary(props) {
|
|
|
56
58
|
|
|
57
59
|
//returns function that calls unsubscribe method
|
|
58
60
|
return (_AISummariesStore$get2 = _store.AISummariesStore.get(url)) === null || _AISummariesStore$get2 === void 0 ? void 0 : _AISummariesStore$get2.subscribe(setState);
|
|
59
|
-
}, [url, baseUrl, headers, onError, onStart, onSuccess, product]);
|
|
61
|
+
}, [url, baseUrl, headers, onError, onStart, onSuccess, product, ari]);
|
|
60
62
|
var summariseUrl = function summariseUrl() {
|
|
61
63
|
var _AISummariesStore$get3;
|
|
62
64
|
return (_AISummariesStore$get3 = _store.AISummariesStore.get(url)) === null || _AISummariesStore$get3 === void 0 ? void 0 : _AISummariesStore$get3.summariseUrl();
|
|
@@ -22,7 +22,7 @@ var ANALYTICS_CHANNEL = exports.ANALYTICS_CHANNEL = 'media';
|
|
|
22
22
|
var context = exports.context = {
|
|
23
23
|
componentName: 'smart-cards',
|
|
24
24
|
packageName: "@atlaskit/smart-card",
|
|
25
|
-
packageVersion: "26.50.
|
|
25
|
+
packageVersion: "26.50.14"
|
|
26
26
|
};
|
|
27
27
|
var TrackQuickActionType = exports.TrackQuickActionType = /*#__PURE__*/function (TrackQuickActionType) {
|
|
28
28
|
TrackQuickActionType["StatusUpdate"] = "StatusUpdate";
|
|
@@ -42,8 +42,10 @@ var AISummaryBlockResolvedView = function AISummaryBlockResolvedView(props) {
|
|
|
42
42
|
fireEvent = _useAnalyticsEvents.fireEvent;
|
|
43
43
|
var context = (0, _flexibleUiContext.useFlexibleUiContext)();
|
|
44
44
|
var url = (context === null || context === void 0 ? void 0 : context.url) || '';
|
|
45
|
+
var ari = (context === null || context === void 0 ? void 0 : context.ari) || '';
|
|
45
46
|
var _useAISummary = (0, _useAiSummary.useAISummary)({
|
|
46
|
-
url: url
|
|
47
|
+
url: url,
|
|
48
|
+
ari: ari
|
|
47
49
|
}),
|
|
48
50
|
summariseUrl = _useAISummary.summariseUrl,
|
|
49
51
|
_useAISummary$state = _useAISummary.state,
|
|
@@ -21,7 +21,7 @@ var _excluded = ["children", "isAIEnabled", "testId", "url"],
|
|
|
21
21
|
_excluded2 = ["children", "isAIEnabled", "testId", "url"];
|
|
22
22
|
/** @jsx jsx */
|
|
23
23
|
var ConnectedAIPrismContainer = function ConnectedAIPrismContainer(_ref) {
|
|
24
|
-
var _extractLink,
|
|
24
|
+
var _cardState$details, _extractLink, _extractAri;
|
|
25
25
|
var children = _ref.children,
|
|
26
26
|
_ref$isAIEnabled = _ref.isAIEnabled,
|
|
27
27
|
isAIEnabled = _ref$isAIEnabled === void 0 ? false : _ref$isAIEnabled,
|
|
@@ -29,9 +29,12 @@ var ConnectedAIPrismContainer = function ConnectedAIPrismContainer(_ref) {
|
|
|
29
29
|
url = _ref.url,
|
|
30
30
|
props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
31
31
|
var cardState = (0, _store.useSmartCardState)(url);
|
|
32
|
-
var
|
|
32
|
+
var data = cardState === null || cardState === void 0 || (_cardState$details = cardState.details) === null || _cardState$details === void 0 ? void 0 : _cardState$details.data;
|
|
33
|
+
var dataUrl = (_extractLink = (0, _linkExtractors.extractLink)(data)) !== null && _extractLink !== void 0 ? _extractLink : '';
|
|
34
|
+
var dataAri = (_extractAri = (0, _linkExtractors.extractAri)(data)) !== null && _extractAri !== void 0 ? _extractAri : '';
|
|
33
35
|
var _useAISummary = (0, _useAiSummary.useAISummary)({
|
|
34
|
-
url: dataUrl
|
|
36
|
+
url: dataUrl,
|
|
37
|
+
ari: dataAri
|
|
35
38
|
}),
|
|
36
39
|
status = _useAISummary.state.status;
|
|
37
40
|
var _useState = (0, _react2.useState)(status === 'loading'),
|
|
@@ -63,9 +63,11 @@ var toFooterActions = exports.toFooterActions = function toFooterActions(cardAct
|
|
|
63
63
|
var ConnectedAIBlock = function ConnectedAIBlock(_ref) {
|
|
64
64
|
var bottomPrimary = _ref.bottomPrimary,
|
|
65
65
|
imagePreview = _ref.imagePreview,
|
|
66
|
-
url = _ref.url
|
|
66
|
+
url = _ref.url,
|
|
67
|
+
ari = _ref.ari;
|
|
67
68
|
var _useAISummary = (0, _useAiSummary.useAISummary)({
|
|
68
|
-
url: url
|
|
69
|
+
url: url,
|
|
70
|
+
ari: ari
|
|
69
71
|
}),
|
|
70
72
|
_useAISummary$state = _useAISummary.state,
|
|
71
73
|
status = _useAISummary$state.status,
|
|
@@ -85,7 +87,7 @@ var ConnectedAIBlock = function ConnectedAIBlock(_ref) {
|
|
|
85
87
|
})) : null;
|
|
86
88
|
};
|
|
87
89
|
var HoverCardResolvedView = function HoverCardResolvedView(_ref2) {
|
|
88
|
-
var _cardState$details, _extractLink;
|
|
90
|
+
var _cardState$details, _extractLink, _extractAri;
|
|
89
91
|
var flexibleCardProps = _ref2.flexibleCardProps,
|
|
90
92
|
titleBlockProps = _ref2.titleBlockProps,
|
|
91
93
|
analytics = _ref2.analytics,
|
|
@@ -111,6 +113,7 @@ var HoverCardResolvedView = function HoverCardResolvedView(_ref2) {
|
|
|
111
113
|
}, [cardActions, onActionClick]);
|
|
112
114
|
var data = (_cardState$details = cardState.details) === null || _cardState$details === void 0 ? void 0 : _cardState$details.data;
|
|
113
115
|
var dataUrl = (_extractLink = (0, _linkExtractors.extractLink)(data)) !== null && _extractLink !== void 0 ? _extractLink : '';
|
|
116
|
+
var dataAri = (_extractAri = (0, _linkExtractors.extractAri)(data)) !== null && _extractAri !== void 0 ? _extractAri : '';
|
|
114
117
|
var _useMemo = (0, _react.useMemo)(function () {
|
|
115
118
|
var betterMetadata = (0, _utils.getSimulatedBetterMetadata)(extensionKey, data);
|
|
116
119
|
return {
|
|
@@ -160,6 +163,7 @@ var HoverCardResolvedView = function HoverCardResolvedView(_ref2) {
|
|
|
160
163
|
}, /*#__PURE__*/_react.default.createElement(ConnectedAIBlock, {
|
|
161
164
|
imagePreview: !!imagePreview,
|
|
162
165
|
url: dataUrl,
|
|
166
|
+
ari: dataAri,
|
|
163
167
|
bottomPrimary: bottomPrimary
|
|
164
168
|
})), !isAISummaryEnabled && !imagePreview && /*#__PURE__*/_react.default.createElement(_blocks.SnippetBlock, {
|
|
165
169
|
status: _constants.SmartLinkStatus.Resolved
|
|
@@ -17,7 +17,7 @@ var _excluded = ["href", "children", "checkSafety", "onClick", "testId"],
|
|
|
17
17
|
_excluded2 = ["isLinkSafe", "showSafetyWarningModal"];
|
|
18
18
|
var PACKAGE_DATA = {
|
|
19
19
|
packageName: "@atlaskit/smart-card",
|
|
20
|
-
packageVersion: "26.50.
|
|
20
|
+
packageVersion: "26.50.14",
|
|
21
21
|
componentName: 'linkUrl'
|
|
22
22
|
};
|
|
23
23
|
var Link = (0, _click.withLinkClickedEvent)('a');
|
|
@@ -3,7 +3,7 @@ import extractFollowAction from './actions/extract-follow-action';
|
|
|
3
3
|
import { extractLinkIcon } from './icon';
|
|
4
4
|
import { extractAttachmentCount, extractChecklistProgress, extractCommentCount, extractCreatedBy, extractModifiedBy, extractProgrammingLanguage, extractSubscriberCount, extractViewCount, extractReactCount, extractVoteCount, extractSourceBranch, extractTargetBranch, extractDueOn, extractLocation, extractOwnedBy, extractAssignedTo, extractSubTasksProgress, extractStoryPoints, extractReadTime, extractSentOn, extractPersonAssignedToAsArray } from './utils';
|
|
5
5
|
import { extractPersonsUpdatedBy } from './collaboratorGroup';
|
|
6
|
-
import { extractPersonCreatedBy, extractTitle, extractDateUpdated, extractDateCreated, extractLink, extractPersonOwnedBy } from '@atlaskit/link-extractors';
|
|
6
|
+
import { extractPersonCreatedBy, extractTitle, extractDateUpdated, extractDateCreated, extractLink, extractPersonOwnedBy, extractAri } from '@atlaskit/link-extractors';
|
|
7
7
|
import extractPriority from './extract-priority';
|
|
8
8
|
import extractProviderIcon from './icon/extract-provider-icon';
|
|
9
9
|
import extractPreview from './extract-preview';
|
|
@@ -63,7 +63,8 @@ const extractFlexibleUiContext = ({
|
|
|
63
63
|
storyPoints: extractStoryPoints(data),
|
|
64
64
|
targetBranch: extractTargetBranch(data),
|
|
65
65
|
title: extractTitle(data) || url,
|
|
66
|
-
url
|
|
66
|
+
url,
|
|
67
|
+
ari: extractAri(data)
|
|
67
68
|
};
|
|
68
69
|
};
|
|
69
70
|
export default extractFlexibleUiContext;
|
|
@@ -12,9 +12,11 @@ export class AISummaryService {
|
|
|
12
12
|
_defineProperty(this, "fetchStream", async summaryStyle => {
|
|
13
13
|
const payload = {
|
|
14
14
|
recipient_agent_named_id: 'summary_agent',
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
agent_input_context: {
|
|
16
|
+
content_url: this.url,
|
|
17
|
+
content_ari: this.ari,
|
|
18
|
+
summary_style: summaryStyle,
|
|
19
|
+
summary_output_mimetype: 'text/markdown'
|
|
18
20
|
}
|
|
19
21
|
};
|
|
20
22
|
const options = {
|
|
@@ -47,6 +49,7 @@ export class AISummaryService {
|
|
|
47
49
|
}
|
|
48
50
|
};
|
|
49
51
|
this.url = props.url;
|
|
52
|
+
this.ari = props.ari;
|
|
50
53
|
this.onStart = props.onStart;
|
|
51
54
|
this.onSuccess = props.onSuccess;
|
|
52
55
|
this.onError = props.onError;
|
|
@@ -10,7 +10,8 @@ export const useAISummary = props => {
|
|
|
10
10
|
url,
|
|
11
11
|
baseUrl,
|
|
12
12
|
headers,
|
|
13
|
-
product
|
|
13
|
+
product,
|
|
14
|
+
ari
|
|
14
15
|
} = props;
|
|
15
16
|
const [state, setState] = useState(((_AISummariesStore$get = AISummariesStore.get(url)) === null || _AISummariesStore$get === void 0 ? void 0 : _AISummariesStore$get.state) || {
|
|
16
17
|
status: 'ready',
|
|
@@ -37,6 +38,7 @@ export const useAISummary = props => {
|
|
|
37
38
|
if (!AISummariesStore.get(url)) {
|
|
38
39
|
AISummariesStore.set(url, new AISummaryService({
|
|
39
40
|
url,
|
|
41
|
+
ari,
|
|
40
42
|
baseUrl,
|
|
41
43
|
headers,
|
|
42
44
|
onError,
|
|
@@ -48,7 +50,7 @@ export const useAISummary = props => {
|
|
|
48
50
|
|
|
49
51
|
//returns function that calls unsubscribe method
|
|
50
52
|
return (_AISummariesStore$get2 = AISummariesStore.get(url)) === null || _AISummariesStore$get2 === void 0 ? void 0 : _AISummariesStore$get2.subscribe(setState);
|
|
51
|
-
}, [url, baseUrl, headers, onError, onStart, onSuccess, product]);
|
|
53
|
+
}, [url, baseUrl, headers, onError, onStart, onSuccess, product, ari]);
|
|
52
54
|
const summariseUrl = () => {
|
|
53
55
|
var _AISummariesStore$get3;
|
|
54
56
|
return (_AISummariesStore$get3 = AISummariesStore.get(url)) === null || _AISummariesStore$get3 === void 0 ? void 0 : _AISummariesStore$get3.summariseUrl();
|
|
@@ -4,7 +4,7 @@ export const ANALYTICS_CHANNEL = 'media';
|
|
|
4
4
|
export const context = {
|
|
5
5
|
componentName: 'smart-cards',
|
|
6
6
|
packageName: "@atlaskit/smart-card",
|
|
7
|
-
packageVersion: "26.50.
|
|
7
|
+
packageVersion: "26.50.14"
|
|
8
8
|
};
|
|
9
9
|
export let TrackQuickActionType = /*#__PURE__*/function (TrackQuickActionType) {
|
|
10
10
|
TrackQuickActionType["StatusUpdate"] = "StatusUpdate";
|
|
@@ -31,6 +31,7 @@ const AISummaryBlockResolvedView = props => {
|
|
|
31
31
|
} = useAnalyticsEvents();
|
|
32
32
|
const context = useFlexibleUiContext();
|
|
33
33
|
const url = (context === null || context === void 0 ? void 0 : context.url) || '';
|
|
34
|
+
const ari = (context === null || context === void 0 ? void 0 : context.ari) || '';
|
|
34
35
|
const {
|
|
35
36
|
summariseUrl,
|
|
36
37
|
state: {
|
|
@@ -39,7 +40,8 @@ const AISummaryBlockResolvedView = props => {
|
|
|
39
40
|
error
|
|
40
41
|
}
|
|
41
42
|
} = useAISummary({
|
|
42
|
-
url
|
|
43
|
+
url,
|
|
44
|
+
ari
|
|
43
45
|
});
|
|
44
46
|
const showAISummary = status === 'done' ||
|
|
45
47
|
// We want to display the AI Summary component only when there is content available during the loading process.
|
|
@@ -8,7 +8,7 @@ import AIPrism from '../../common/ai-prism';
|
|
|
8
8
|
import { hoverCardClassName } from './HoverCardContent';
|
|
9
9
|
import { useAISummary } from '../../../state/hooks/use-ai-summary';
|
|
10
10
|
import { useSmartCardState } from '../../../state/store';
|
|
11
|
-
import { extractLink } from '@atlaskit/link-extractors';
|
|
11
|
+
import { extractAri, extractLink } from '@atlaskit/link-extractors';
|
|
12
12
|
const ConnectedAIPrismContainer = ({
|
|
13
13
|
children,
|
|
14
14
|
isAIEnabled = false,
|
|
@@ -16,15 +16,18 @@ const ConnectedAIPrismContainer = ({
|
|
|
16
16
|
url,
|
|
17
17
|
...props
|
|
18
18
|
}) => {
|
|
19
|
-
var _extractLink,
|
|
19
|
+
var _cardState$details, _extractLink, _extractAri;
|
|
20
20
|
const cardState = useSmartCardState(url);
|
|
21
|
-
const
|
|
21
|
+
const data = cardState === null || cardState === void 0 ? void 0 : (_cardState$details = cardState.details) === null || _cardState$details === void 0 ? void 0 : _cardState$details.data;
|
|
22
|
+
const dataUrl = (_extractLink = extractLink(data)) !== null && _extractLink !== void 0 ? _extractLink : '';
|
|
23
|
+
const dataAri = (_extractAri = extractAri(data)) !== null && _extractAri !== void 0 ? _extractAri : '';
|
|
22
24
|
const {
|
|
23
25
|
state: {
|
|
24
26
|
status
|
|
25
27
|
}
|
|
26
28
|
} = useAISummary({
|
|
27
|
-
url: dataUrl
|
|
29
|
+
url: dataUrl,
|
|
30
|
+
ari: dataAri
|
|
28
31
|
});
|
|
29
32
|
const [showPrism, setShowPrism] = useState(status === 'loading');
|
|
30
33
|
useEffect(() => {
|
|
@@ -12,7 +12,7 @@ import { FormattedMessage } from 'react-intl-next';
|
|
|
12
12
|
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
13
13
|
import { getCanBeDatasource } from '../../../../../state/helpers';
|
|
14
14
|
import { useAISummary } from '../../../../../state/hooks/use-ai-summary';
|
|
15
|
-
import { extractLink } from '@atlaskit/link-extractors';
|
|
15
|
+
import { extractAri, extractLink } from '@atlaskit/link-extractors';
|
|
16
16
|
import { SmartLinkStatus } from '../../../../../constants';
|
|
17
17
|
export const toFooterActions = (cardActions, onActionClick) => {
|
|
18
18
|
const followAction = {
|
|
@@ -53,7 +53,8 @@ export const toFooterActions = (cardActions, onActionClick) => {
|
|
|
53
53
|
const ConnectedAIBlock = ({
|
|
54
54
|
bottomPrimary,
|
|
55
55
|
imagePreview,
|
|
56
|
-
url
|
|
56
|
+
url,
|
|
57
|
+
ari
|
|
57
58
|
}) => {
|
|
58
59
|
const {
|
|
59
60
|
state: {
|
|
@@ -61,7 +62,8 @@ const ConnectedAIBlock = ({
|
|
|
61
62
|
content
|
|
62
63
|
}
|
|
63
64
|
} = useAISummary({
|
|
64
|
-
url
|
|
65
|
+
url,
|
|
66
|
+
ari
|
|
65
67
|
});
|
|
66
68
|
const showData = status === 'ready' || status === 'error' ||
|
|
67
69
|
// Description & bottom metadata should only disappear when we start getting summary content
|
|
@@ -88,7 +90,7 @@ const HoverCardResolvedView = ({
|
|
|
88
90
|
extensionKey,
|
|
89
91
|
url
|
|
90
92
|
}) => {
|
|
91
|
-
var _cardState$details, _extractLink;
|
|
93
|
+
var _cardState$details, _extractLink, _extractAri;
|
|
92
94
|
const canBeDatasource = getCanBeDatasource(cardState.details);
|
|
93
95
|
useEffect(() => {
|
|
94
96
|
// Since this hover view is only rendered on resolved status,
|
|
@@ -102,6 +104,7 @@ const HoverCardResolvedView = ({
|
|
|
102
104
|
const footerActions = useMemo(() => toFooterActions(cardActions, onActionClick), [cardActions, onActionClick]);
|
|
103
105
|
const data = (_cardState$details = cardState.details) === null || _cardState$details === void 0 ? void 0 : _cardState$details.data;
|
|
104
106
|
const dataUrl = (_extractLink = extractLink(data)) !== null && _extractLink !== void 0 ? _extractLink : '';
|
|
107
|
+
const dataAri = (_extractAri = extractAri(data)) !== null && _extractAri !== void 0 ? _extractAri : '';
|
|
105
108
|
const {
|
|
106
109
|
topPrimary,
|
|
107
110
|
topSecondary,
|
|
@@ -152,6 +155,7 @@ const HoverCardResolvedView = ({
|
|
|
152
155
|
}, /*#__PURE__*/React.createElement(ConnectedAIBlock, {
|
|
153
156
|
imagePreview: !!imagePreview,
|
|
154
157
|
url: dataUrl,
|
|
158
|
+
ari: dataAri,
|
|
155
159
|
bottomPrimary: bottomPrimary
|
|
156
160
|
})), !isAISummaryEnabled && !imagePreview && /*#__PURE__*/React.createElement(SnippetBlock, {
|
|
157
161
|
status: SmartLinkStatus.Resolved
|
|
@@ -7,7 +7,7 @@ import { useLinkWarningModal } from './LinkWarningModal/hooks/use-link-warning-m
|
|
|
7
7
|
import LinkWarningModal from './LinkWarningModal';
|
|
8
8
|
const PACKAGE_DATA = {
|
|
9
9
|
packageName: "@atlaskit/smart-card",
|
|
10
|
-
packageVersion: "26.50.
|
|
10
|
+
packageVersion: "26.50.14",
|
|
11
11
|
componentName: 'linkUrl'
|
|
12
12
|
};
|
|
13
13
|
const Link = withLinkClickedEvent('a');
|
|
@@ -3,7 +3,7 @@ import extractFollowAction from './actions/extract-follow-action';
|
|
|
3
3
|
import { extractLinkIcon } from './icon';
|
|
4
4
|
import { extractAttachmentCount, extractChecklistProgress, extractCommentCount, extractCreatedBy, extractModifiedBy, extractProgrammingLanguage, extractSubscriberCount, extractViewCount, extractReactCount, extractVoteCount, extractSourceBranch, extractTargetBranch, extractDueOn, extractLocation, extractOwnedBy, extractAssignedTo, extractSubTasksProgress, extractStoryPoints, extractReadTime, extractSentOn, extractPersonAssignedToAsArray } from './utils';
|
|
5
5
|
import { extractPersonsUpdatedBy } from './collaboratorGroup';
|
|
6
|
-
import { extractPersonCreatedBy, extractTitle, extractDateUpdated, extractDateCreated, extractLink, extractPersonOwnedBy } from '@atlaskit/link-extractors';
|
|
6
|
+
import { extractPersonCreatedBy, extractTitle, extractDateUpdated, extractDateCreated, extractLink, extractPersonOwnedBy, extractAri } from '@atlaskit/link-extractors';
|
|
7
7
|
import extractPriority from './extract-priority';
|
|
8
8
|
import extractProviderIcon from './icon/extract-provider-icon';
|
|
9
9
|
import extractPreview from './extract-preview';
|
|
@@ -63,7 +63,8 @@ var extractFlexibleUiContext = function extractFlexibleUiContext() {
|
|
|
63
63
|
storyPoints: extractStoryPoints(data),
|
|
64
64
|
targetBranch: extractTargetBranch(data),
|
|
65
65
|
title: extractTitle(data) || url,
|
|
66
|
-
url: url
|
|
66
|
+
url: url,
|
|
67
|
+
ari: extractAri(data)
|
|
67
68
|
};
|
|
68
69
|
};
|
|
69
70
|
export default extractFlexibleUiContext;
|
|
@@ -30,9 +30,11 @@ export var AISummaryService = /*#__PURE__*/function () {
|
|
|
30
30
|
case 0:
|
|
31
31
|
payload = {
|
|
32
32
|
recipient_agent_named_id: 'summary_agent',
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
agent_input_context: {
|
|
34
|
+
content_url: _this.url,
|
|
35
|
+
content_ari: _this.ari,
|
|
36
|
+
summary_style: summaryStyle,
|
|
37
|
+
summary_output_mimetype: 'text/markdown'
|
|
36
38
|
}
|
|
37
39
|
};
|
|
38
40
|
options = {
|
|
@@ -77,6 +79,7 @@ export var AISummaryService = /*#__PURE__*/function () {
|
|
|
77
79
|
headers: _objectSpread({}, props.headers || defaultConfig.headers)
|
|
78
80
|
};
|
|
79
81
|
this.url = props.url;
|
|
82
|
+
this.ari = props.ari;
|
|
80
83
|
this.onStart = props.onStart;
|
|
81
84
|
this.onSuccess = props.onSuccess;
|
|
82
85
|
this.onError = props.onError;
|
|
@@ -10,7 +10,8 @@ export var useAISummary = function useAISummary(props) {
|
|
|
10
10
|
var url = props.url,
|
|
11
11
|
baseUrl = props.baseUrl,
|
|
12
12
|
headers = props.headers,
|
|
13
|
-
product = props.product
|
|
13
|
+
product = props.product,
|
|
14
|
+
ari = props.ari;
|
|
14
15
|
var _useState = useState(((_AISummariesStore$get = AISummariesStore.get(url)) === null || _AISummariesStore$get === void 0 ? void 0 : _AISummariesStore$get.state) || {
|
|
15
16
|
status: 'ready',
|
|
16
17
|
content: ''
|
|
@@ -38,6 +39,7 @@ export var useAISummary = function useAISummary(props) {
|
|
|
38
39
|
if (!AISummariesStore.get(url)) {
|
|
39
40
|
AISummariesStore.set(url, new AISummaryService({
|
|
40
41
|
url: url,
|
|
42
|
+
ari: ari,
|
|
41
43
|
baseUrl: baseUrl,
|
|
42
44
|
headers: headers,
|
|
43
45
|
onError: onError,
|
|
@@ -49,7 +51,7 @@ export var useAISummary = function useAISummary(props) {
|
|
|
49
51
|
|
|
50
52
|
//returns function that calls unsubscribe method
|
|
51
53
|
return (_AISummariesStore$get2 = AISummariesStore.get(url)) === null || _AISummariesStore$get2 === void 0 ? void 0 : _AISummariesStore$get2.subscribe(setState);
|
|
52
|
-
}, [url, baseUrl, headers, onError, onStart, onSuccess, product]);
|
|
54
|
+
}, [url, baseUrl, headers, onError, onStart, onSuccess, product, ari]);
|
|
53
55
|
var summariseUrl = function summariseUrl() {
|
|
54
56
|
var _AISummariesStore$get3;
|
|
55
57
|
return (_AISummariesStore$get3 = AISummariesStore.get(url)) === null || _AISummariesStore$get3 === void 0 ? void 0 : _AISummariesStore$get3.summariseUrl();
|
|
@@ -15,7 +15,7 @@ export var ANALYTICS_CHANNEL = 'media';
|
|
|
15
15
|
export var context = {
|
|
16
16
|
componentName: 'smart-cards',
|
|
17
17
|
packageName: "@atlaskit/smart-card",
|
|
18
|
-
packageVersion: "26.50.
|
|
18
|
+
packageVersion: "26.50.14"
|
|
19
19
|
};
|
|
20
20
|
export var TrackQuickActionType = /*#__PURE__*/function (TrackQuickActionType) {
|
|
21
21
|
TrackQuickActionType["StatusUpdate"] = "StatusUpdate";
|
|
@@ -32,8 +32,10 @@ var AISummaryBlockResolvedView = function AISummaryBlockResolvedView(props) {
|
|
|
32
32
|
fireEvent = _useAnalyticsEvents.fireEvent;
|
|
33
33
|
var context = useFlexibleUiContext();
|
|
34
34
|
var url = (context === null || context === void 0 ? void 0 : context.url) || '';
|
|
35
|
+
var ari = (context === null || context === void 0 ? void 0 : context.ari) || '';
|
|
35
36
|
var _useAISummary = useAISummary({
|
|
36
|
-
url: url
|
|
37
|
+
url: url,
|
|
38
|
+
ari: ari
|
|
37
39
|
}),
|
|
38
40
|
summariseUrl = _useAISummary.summariseUrl,
|
|
39
41
|
_useAISummary$state = _useAISummary.state,
|
|
@@ -12,9 +12,9 @@ import AIPrism from '../../common/ai-prism';
|
|
|
12
12
|
import { hoverCardClassName } from './HoverCardContent';
|
|
13
13
|
import { useAISummary } from '../../../state/hooks/use-ai-summary';
|
|
14
14
|
import { useSmartCardState } from '../../../state/store';
|
|
15
|
-
import { extractLink } from '@atlaskit/link-extractors';
|
|
15
|
+
import { extractAri, extractLink } from '@atlaskit/link-extractors';
|
|
16
16
|
var ConnectedAIPrismContainer = function ConnectedAIPrismContainer(_ref) {
|
|
17
|
-
var _extractLink,
|
|
17
|
+
var _cardState$details, _extractLink, _extractAri;
|
|
18
18
|
var children = _ref.children,
|
|
19
19
|
_ref$isAIEnabled = _ref.isAIEnabled,
|
|
20
20
|
isAIEnabled = _ref$isAIEnabled === void 0 ? false : _ref$isAIEnabled,
|
|
@@ -22,9 +22,12 @@ var ConnectedAIPrismContainer = function ConnectedAIPrismContainer(_ref) {
|
|
|
22
22
|
url = _ref.url,
|
|
23
23
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
24
24
|
var cardState = useSmartCardState(url);
|
|
25
|
-
var
|
|
25
|
+
var data = cardState === null || cardState === void 0 || (_cardState$details = cardState.details) === null || _cardState$details === void 0 ? void 0 : _cardState$details.data;
|
|
26
|
+
var dataUrl = (_extractLink = extractLink(data)) !== null && _extractLink !== void 0 ? _extractLink : '';
|
|
27
|
+
var dataAri = (_extractAri = extractAri(data)) !== null && _extractAri !== void 0 ? _extractAri : '';
|
|
26
28
|
var _useAISummary = useAISummary({
|
|
27
|
-
url: dataUrl
|
|
29
|
+
url: dataUrl,
|
|
30
|
+
ari: dataAri
|
|
28
31
|
}),
|
|
29
32
|
status = _useAISummary.state.status;
|
|
30
33
|
var _useState = useState(status === 'loading'),
|
|
@@ -13,7 +13,7 @@ import { FormattedMessage } from 'react-intl-next';
|
|
|
13
13
|
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
14
14
|
import { getCanBeDatasource } from '../../../../../state/helpers';
|
|
15
15
|
import { useAISummary } from '../../../../../state/hooks/use-ai-summary';
|
|
16
|
-
import { extractLink } from '@atlaskit/link-extractors';
|
|
16
|
+
import { extractAri, extractLink } from '@atlaskit/link-extractors';
|
|
17
17
|
import { SmartLinkStatus } from '../../../../../constants';
|
|
18
18
|
export var toFooterActions = function toFooterActions(cardActions, onActionClick) {
|
|
19
19
|
var followAction = {
|
|
@@ -54,9 +54,11 @@ export var toFooterActions = function toFooterActions(cardActions, onActionClick
|
|
|
54
54
|
var ConnectedAIBlock = function ConnectedAIBlock(_ref) {
|
|
55
55
|
var bottomPrimary = _ref.bottomPrimary,
|
|
56
56
|
imagePreview = _ref.imagePreview,
|
|
57
|
-
url = _ref.url
|
|
57
|
+
url = _ref.url,
|
|
58
|
+
ari = _ref.ari;
|
|
58
59
|
var _useAISummary = useAISummary({
|
|
59
|
-
url: url
|
|
60
|
+
url: url,
|
|
61
|
+
ari: ari
|
|
60
62
|
}),
|
|
61
63
|
_useAISummary$state = _useAISummary.state,
|
|
62
64
|
status = _useAISummary$state.status,
|
|
@@ -76,7 +78,7 @@ var ConnectedAIBlock = function ConnectedAIBlock(_ref) {
|
|
|
76
78
|
})) : null;
|
|
77
79
|
};
|
|
78
80
|
var HoverCardResolvedView = function HoverCardResolvedView(_ref2) {
|
|
79
|
-
var _cardState$details, _extractLink;
|
|
81
|
+
var _cardState$details, _extractLink, _extractAri;
|
|
80
82
|
var flexibleCardProps = _ref2.flexibleCardProps,
|
|
81
83
|
titleBlockProps = _ref2.titleBlockProps,
|
|
82
84
|
analytics = _ref2.analytics,
|
|
@@ -102,6 +104,7 @@ var HoverCardResolvedView = function HoverCardResolvedView(_ref2) {
|
|
|
102
104
|
}, [cardActions, onActionClick]);
|
|
103
105
|
var data = (_cardState$details = cardState.details) === null || _cardState$details === void 0 ? void 0 : _cardState$details.data;
|
|
104
106
|
var dataUrl = (_extractLink = extractLink(data)) !== null && _extractLink !== void 0 ? _extractLink : '';
|
|
107
|
+
var dataAri = (_extractAri = extractAri(data)) !== null && _extractAri !== void 0 ? _extractAri : '';
|
|
105
108
|
var _useMemo = useMemo(function () {
|
|
106
109
|
var betterMetadata = getSimulatedBetterMetadata(extensionKey, data);
|
|
107
110
|
return {
|
|
@@ -151,6 +154,7 @@ var HoverCardResolvedView = function HoverCardResolvedView(_ref2) {
|
|
|
151
154
|
}, /*#__PURE__*/React.createElement(ConnectedAIBlock, {
|
|
152
155
|
imagePreview: !!imagePreview,
|
|
153
156
|
url: dataUrl,
|
|
157
|
+
ari: dataAri,
|
|
154
158
|
bottomPrimary: bottomPrimary
|
|
155
159
|
})), !isAISummaryEnabled && !imagePreview && /*#__PURE__*/React.createElement(SnippetBlock, {
|
|
156
160
|
status: SmartLinkStatus.Resolved
|
|
@@ -10,7 +10,7 @@ import { useLinkWarningModal } from './LinkWarningModal/hooks/use-link-warning-m
|
|
|
10
10
|
import LinkWarningModal from './LinkWarningModal';
|
|
11
11
|
var PACKAGE_DATA = {
|
|
12
12
|
packageName: "@atlaskit/smart-card",
|
|
13
|
-
packageVersion: "26.50.
|
|
13
|
+
packageVersion: "26.50.14",
|
|
14
14
|
componentName: 'linkUrl'
|
|
15
15
|
};
|
|
16
16
|
var Link = withLinkClickedEvent('a');
|
|
@@ -228,6 +228,12 @@ export type FlexibleUiDataContext = {
|
|
|
228
228
|
* @see Title
|
|
229
229
|
*/
|
|
230
230
|
url?: string;
|
|
231
|
+
/**
|
|
232
|
+
* Contains the atlassian resource identifier (ARI) of the linked resource.
|
|
233
|
+
* @type string
|
|
234
|
+
* @see Title
|
|
235
|
+
*/
|
|
236
|
+
ari?: string;
|
|
231
237
|
/**
|
|
232
238
|
* Contains the name and url of the location that the resource is located in.
|
|
233
239
|
* @type LinkLocation
|
|
@@ -12,6 +12,7 @@ export type AISummaryServiceProps = {
|
|
|
12
12
|
onSuccess?: (id: string) => void;
|
|
13
13
|
product?: ProductType;
|
|
14
14
|
url: string;
|
|
15
|
+
ari: string;
|
|
15
16
|
};
|
|
16
17
|
export type AISummaryServiceConfig = {
|
|
17
18
|
baseUrl: string;
|
|
@@ -21,14 +22,17 @@ export type AISummaryStatus = 'ready' | 'loading' | 'error' | 'done';
|
|
|
21
22
|
export type ProductType = 'confluence' | 'atlas' | 'jpd' | 'jsm' | 'jsw' | 'jwm' | 'bitbucket' | 'trello';
|
|
22
23
|
export type PostAgentPayload = {
|
|
23
24
|
recipient_agent_named_id: string;
|
|
24
|
-
|
|
25
|
+
agent_input_context: AgentInputContext;
|
|
25
26
|
user_intent?: string;
|
|
26
27
|
};
|
|
27
|
-
export type
|
|
28
|
-
|
|
28
|
+
export type AgentInputContext = {
|
|
29
|
+
content_url: string;
|
|
30
|
+
content_ari?: string;
|
|
29
31
|
summary_style?: SummaryStyle;
|
|
32
|
+
summary_output_mimetype?: SummaryOutputMimeType;
|
|
30
33
|
};
|
|
31
34
|
export type SummaryStyle = 'short' | 'medium' | 'long';
|
|
35
|
+
export type SummaryOutputMimeType = 'text/adf' | 'text/markdown' | 'text/json';
|
|
32
36
|
export declare const errorMessages: readonly ["NETWORK_ERROR", "NO_ANSWER", "RATE_LIMIT", "NO_AGENT", "PLUGIN_ERRORED", "OPENAI_RATE_LIMIT_USER_ABUSE", "ACCEPTABLE_USE_VIOLATIONS", "AI_DISABLED", "UNEXPECTED"];
|
|
33
37
|
export type ErrorMessage = (typeof errorMessages)[number];
|
|
34
38
|
export type AISummaryState = {
|
|
@@ -228,6 +228,12 @@ export type FlexibleUiDataContext = {
|
|
|
228
228
|
* @see Title
|
|
229
229
|
*/
|
|
230
230
|
url?: string;
|
|
231
|
+
/**
|
|
232
|
+
* Contains the atlassian resource identifier (ARI) of the linked resource.
|
|
233
|
+
* @type string
|
|
234
|
+
* @see Title
|
|
235
|
+
*/
|
|
236
|
+
ari?: string;
|
|
231
237
|
/**
|
|
232
238
|
* Contains the name and url of the location that the resource is located in.
|
|
233
239
|
* @type LinkLocation
|
|
@@ -12,6 +12,7 @@ export type AISummaryServiceProps = {
|
|
|
12
12
|
onSuccess?: (id: string) => void;
|
|
13
13
|
product?: ProductType;
|
|
14
14
|
url: string;
|
|
15
|
+
ari: string;
|
|
15
16
|
};
|
|
16
17
|
export type AISummaryServiceConfig = {
|
|
17
18
|
baseUrl: string;
|
|
@@ -21,14 +22,17 @@ export type AISummaryStatus = 'ready' | 'loading' | 'error' | 'done';
|
|
|
21
22
|
export type ProductType = 'confluence' | 'atlas' | 'jpd' | 'jsm' | 'jsw' | 'jwm' | 'bitbucket' | 'trello';
|
|
22
23
|
export type PostAgentPayload = {
|
|
23
24
|
recipient_agent_named_id: string;
|
|
24
|
-
|
|
25
|
+
agent_input_context: AgentInputContext;
|
|
25
26
|
user_intent?: string;
|
|
26
27
|
};
|
|
27
|
-
export type
|
|
28
|
-
|
|
28
|
+
export type AgentInputContext = {
|
|
29
|
+
content_url: string;
|
|
30
|
+
content_ari?: string;
|
|
29
31
|
summary_style?: SummaryStyle;
|
|
32
|
+
summary_output_mimetype?: SummaryOutputMimeType;
|
|
30
33
|
};
|
|
31
34
|
export type SummaryStyle = 'short' | 'medium' | 'long';
|
|
35
|
+
export type SummaryOutputMimeType = 'text/adf' | 'text/markdown' | 'text/json';
|
|
32
36
|
export declare const errorMessages: readonly [
|
|
33
37
|
"NETWORK_ERROR",
|
|
34
38
|
"NO_ANSWER",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/smart-card",
|
|
3
|
-
"version": "26.50.
|
|
3
|
+
"version": "26.50.14",
|
|
4
4
|
"description": "Smart card component",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"@atlaskit/in-product-testing": "^0.2.0",
|
|
43
43
|
"@atlaskit/link-analytics": "^8.3.0",
|
|
44
44
|
"@atlaskit/link-client-extension": "^1.8.0",
|
|
45
|
-
"@atlaskit/link-extractors": "^1.
|
|
45
|
+
"@atlaskit/link-extractors": "^1.3.0",
|
|
46
46
|
"@atlaskit/linking-common": "^5.6.0",
|
|
47
47
|
"@atlaskit/linking-types": "^8.7.0",
|
|
48
48
|
"@atlaskit/logo": "^13.15.0",
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"@emotion/styled": "^11.0.0",
|
|
63
63
|
"@formatjs/intl-utils": "^3.8.4",
|
|
64
64
|
"facepaint": "^1.2.1",
|
|
65
|
-
"json-ld-types": "^
|
|
65
|
+
"json-ld-types": "^4.1.0",
|
|
66
66
|
"lru_map": "^0.4.1",
|
|
67
67
|
"markdown-to-jsx": "^7.1.7",
|
|
68
68
|
"react-error-boundary": "^3.1.3",
|