@atlaskit/smart-card 19.1.29 → 19.2.0
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 +24 -0
- package/dist/cjs/constants.js +4 -1
- package/dist/cjs/extractors/block/index.js +9 -19
- package/dist/cjs/extractors/common/actions/extractPreviewAction.js +3 -5
- package/dist/cjs/extractors/common/byline/extractByline.js +5 -11
- package/dist/cjs/extractors/common/context/index.js +0 -16
- package/dist/cjs/extractors/common/icon/extractIcon.js +11 -8
- package/dist/cjs/extractors/common/icon/priority.js +1 -0
- package/dist/cjs/extractors/common/lozenge/extractLozenge.js +9 -3
- package/dist/cjs/extractors/common/lozenge/extractState.js +2 -2
- package/dist/cjs/extractors/common/lozenge/extractTaskType.js +2 -2
- package/dist/cjs/extractors/common/primitives/index.js +0 -16
- package/dist/cjs/extractors/embed/index.js +5 -9
- package/dist/cjs/extractors/flexible/collaboratorGroup/index.js +2 -2
- package/dist/cjs/extractors/flexible/extract-preview.js +2 -2
- package/dist/cjs/extractors/flexible/extract-priority.js +2 -2
- package/dist/cjs/extractors/flexible/icon/extract-jsonld-data-icon.js +8 -2
- package/dist/cjs/extractors/flexible/icon/extract-provider-icon.js +2 -2
- package/dist/cjs/extractors/flexible/icon/extract-url-icon.js +2 -2
- package/dist/cjs/extractors/flexible/index.js +11 -12
- package/dist/cjs/extractors/flexible/utils.js +33 -5
- package/dist/cjs/extractors/hover/extractMetadata.js +3 -2
- package/dist/cjs/extractors/inline/index.js +4 -4
- package/dist/cjs/version.json +1 -1
- package/dist/cjs/view/FlexibleCard/components/blocks/block/index.js +1 -1
- package/dist/cjs/view/FlexibleCard/components/blocks/utils.js +1 -1
- package/dist/cjs/view/FlexibleCard/components/elements/avatar-group/index.js +2 -0
- package/dist/cjs/view/FlexibleCard/components/elements/badge/index.js +2 -0
- package/dist/cjs/view/FlexibleCard/components/elements/date-time/index.js +2 -0
- package/dist/cjs/view/FlexibleCard/components/elements/icon/index.js +2 -0
- package/dist/cjs/view/FlexibleCard/components/elements/index.js +25 -4
- package/dist/cjs/view/FlexibleCard/components/elements/link/index.js +2 -0
- package/dist/cjs/view/FlexibleCard/components/elements/lozenge/index.js +2 -0
- package/dist/cjs/view/FlexibleCard/components/elements/media/index.js +3 -1
- package/dist/cjs/view/FlexibleCard/components/elements/text/index.js +2 -0
- package/dist/cjs/view/FlexibleCard/components/elements/utils.js +42 -12
- package/dist/cjs/view/FlexibleCard/utils.js +3 -1
- package/dist/cjs/view/HoverCard/components/hover-card-content.js +12 -5
- package/dist/cjs/view/HoverCard/styled.js +8 -5
- package/dist/cjs/view/HoverCard/utils.js +46 -3
- package/dist/cjs/view/InlineCard/index.js +5 -3
- package/dist/es2019/constants.js +4 -1
- package/dist/es2019/extractors/block/index.js +2 -7
- package/dist/es2019/extractors/common/actions/extractPreviewAction.js +1 -2
- package/dist/es2019/extractors/common/byline/extractByline.js +1 -4
- package/dist/es2019/extractors/common/context/index.js +0 -2
- package/dist/es2019/extractors/common/icon/extractIcon.js +7 -3
- package/dist/es2019/extractors/common/icon/priority.js +1 -0
- package/dist/es2019/extractors/common/lozenge/extractLozenge.js +5 -1
- package/dist/es2019/extractors/common/lozenge/extractState.js +2 -2
- package/dist/es2019/extractors/common/lozenge/extractTaskType.js +1 -1
- package/dist/es2019/extractors/common/primitives/index.js +0 -2
- package/dist/es2019/extractors/embed/index.js +1 -3
- package/dist/es2019/extractors/flexible/collaboratorGroup/index.js +1 -1
- package/dist/es2019/extractors/flexible/extract-preview.js +1 -1
- package/dist/es2019/extractors/flexible/extract-priority.js +1 -1
- package/dist/es2019/extractors/flexible/icon/extract-jsonld-data-icon.js +7 -1
- package/dist/es2019/extractors/flexible/icon/extract-provider-icon.js +1 -1
- package/dist/es2019/extractors/flexible/icon/extract-url-icon.js +1 -1
- package/dist/es2019/extractors/flexible/index.js +8 -7
- package/dist/es2019/extractors/flexible/utils.js +11 -2
- package/dist/es2019/extractors/hover/extractMetadata.js +3 -2
- package/dist/es2019/extractors/inline/index.js +2 -2
- package/dist/es2019/version.json +1 -1
- package/dist/es2019/view/FlexibleCard/components/blocks/block/index.js +11 -1
- package/dist/es2019/view/FlexibleCard/components/blocks/utils.js +6 -3
- package/dist/es2019/view/FlexibleCard/components/elements/avatar-group/index.js +2 -0
- package/dist/es2019/view/FlexibleCard/components/elements/badge/index.js +2 -0
- package/dist/es2019/view/FlexibleCard/components/elements/date-time/index.js +2 -0
- package/dist/es2019/view/FlexibleCard/components/elements/icon/index.js +2 -0
- package/dist/es2019/view/FlexibleCard/components/elements/index.js +18 -0
- package/dist/es2019/view/FlexibleCard/components/elements/link/index.js +2 -0
- package/dist/es2019/view/FlexibleCard/components/elements/lozenge/index.js +2 -0
- package/dist/es2019/view/FlexibleCard/components/elements/media/index.js +2 -0
- package/dist/es2019/view/FlexibleCard/components/elements/text/index.js +2 -0
- package/dist/es2019/view/FlexibleCard/components/elements/utils.js +48 -16
- package/dist/es2019/view/FlexibleCard/utils.js +2 -1
- package/dist/es2019/view/HoverCard/components/hover-card-content.js +11 -5
- package/dist/es2019/view/HoverCard/styled.js +31 -5
- package/dist/es2019/view/HoverCard/utils.js +46 -4
- package/dist/es2019/view/InlineCard/index.js +2 -1
- package/dist/esm/constants.js +4 -1
- package/dist/esm/extractors/block/index.js +2 -7
- package/dist/esm/extractors/common/actions/extractPreviewAction.js +1 -2
- package/dist/esm/extractors/common/byline/extractByline.js +1 -4
- package/dist/esm/extractors/common/context/index.js +0 -2
- package/dist/esm/extractors/common/icon/extractIcon.js +7 -3
- package/dist/esm/extractors/common/icon/priority.js +1 -0
- package/dist/esm/extractors/common/lozenge/extractLozenge.js +8 -2
- package/dist/esm/extractors/common/lozenge/extractState.js +2 -2
- package/dist/esm/extractors/common/lozenge/extractTaskType.js +1 -1
- package/dist/esm/extractors/common/primitives/index.js +0 -2
- package/dist/esm/extractors/embed/index.js +1 -3
- package/dist/esm/extractors/flexible/collaboratorGroup/index.js +1 -1
- package/dist/esm/extractors/flexible/extract-preview.js +1 -1
- package/dist/esm/extractors/flexible/extract-priority.js +1 -1
- package/dist/esm/extractors/flexible/icon/extract-jsonld-data-icon.js +7 -1
- package/dist/esm/extractors/flexible/icon/extract-provider-icon.js +1 -1
- package/dist/esm/extractors/flexible/icon/extract-url-icon.js +1 -1
- package/dist/esm/extractors/flexible/index.js +8 -7
- package/dist/esm/extractors/flexible/utils.js +17 -1
- package/dist/esm/extractors/hover/extractMetadata.js +3 -2
- package/dist/esm/extractors/inline/index.js +2 -2
- package/dist/esm/version.json +1 -1
- package/dist/esm/view/FlexibleCard/components/blocks/block/index.js +2 -2
- package/dist/esm/view/FlexibleCard/components/blocks/utils.js +1 -1
- package/dist/esm/view/FlexibleCard/components/elements/avatar-group/index.js +2 -0
- package/dist/esm/view/FlexibleCard/components/elements/badge/index.js +2 -0
- package/dist/esm/view/FlexibleCard/components/elements/date-time/index.js +2 -0
- package/dist/esm/view/FlexibleCard/components/elements/icon/index.js +2 -0
- package/dist/esm/view/FlexibleCard/components/elements/index.js +18 -0
- package/dist/esm/view/FlexibleCard/components/elements/link/index.js +2 -0
- package/dist/esm/view/FlexibleCard/components/elements/lozenge/index.js +2 -0
- package/dist/esm/view/FlexibleCard/components/elements/media/index.js +3 -1
- package/dist/esm/view/FlexibleCard/components/elements/text/index.js +2 -0
- package/dist/esm/view/FlexibleCard/components/elements/utils.js +41 -12
- package/dist/esm/view/FlexibleCard/utils.js +2 -1
- package/dist/esm/view/HoverCard/components/hover-card-content.js +11 -5
- package/dist/esm/view/HoverCard/styled.js +8 -5
- package/dist/esm/view/HoverCard/utils.js +46 -3
- package/dist/esm/view/InlineCard/index.js +2 -1
- package/dist/types/constants.d.ts +4 -1
- package/dist/types/extractors/block/index.d.ts +1 -1
- package/dist/types/extractors/common/__mocks__/jsonld.d.ts +1 -0
- package/dist/types/extractors/common/context/index.d.ts +0 -2
- package/dist/types/extractors/common/icon/extractIcon.d.ts +1 -1
- package/dist/types/extractors/common/lozenge/extractState.d.ts +1 -1
- package/dist/types/extractors/common/primitives/index.d.ts +0 -2
- package/dist/types/extractors/flexible/collaboratorGroup/index.d.ts +1 -1
- package/dist/types/extractors/flexible/utils.d.ts +3 -0
- package/dist/types/state/flexible-ui-context/types.d.ts +30 -11
- package/dist/types/view/FlexibleCard/components/blocks/types.d.ts +22 -1
- package/dist/types/view/FlexibleCard/components/elements/index.d.ts +15 -0
- package/dist/types/view/FlexibleCard/components/elements/lozenge/types.d.ts +2 -1
- package/dist/types/view/FlexibleCard/components/elements/types.d.ts +7 -1
- package/dist/types/view/HoverCard/types.d.ts +1 -0
- package/dist/types/view/HoverCard/utils.d.ts +1 -1
- package/package.json +3 -3
- package/report.api.md +6 -0
- package/dist/cjs/extractors/common/context/extractContext.js +0 -38
- package/dist/cjs/extractors/common/context/extractProvider.js +0 -83
- package/dist/cjs/extractors/common/date/extractDateCreated.js +0 -14
- package/dist/cjs/extractors/common/date/extractDateUpdated.js +0 -14
- package/dist/cjs/extractors/common/person/extractMembers.js +0 -37
- package/dist/cjs/extractors/common/person/extractPersonAssignedTo.js +0 -18
- package/dist/cjs/extractors/common/person/extractPersonCreatedBy.js +0 -28
- package/dist/cjs/extractors/common/person/extractPersonUpdatedBy.js +0 -18
- package/dist/cjs/extractors/common/person/index.js +0 -37
- package/dist/cjs/extractors/common/person/types.js +0 -5
- package/dist/cjs/extractors/common/preview/extractImage.js +0 -26
- package/dist/cjs/extractors/common/preview/index.js +0 -21
- package/dist/cjs/extractors/common/primitives/extractLink.js +0 -22
- package/dist/cjs/extractors/common/primitives/extractTitle.js +0 -55
- package/dist/cjs/extractors/common/primitives/extractType.js +0 -20
- package/dist/cjs/extractors/common/utils.js +0 -43
- package/dist/es2019/extractors/common/context/extractContext.js +0 -27
- package/dist/es2019/extractors/common/context/extractProvider.js +0 -65
- package/dist/es2019/extractors/common/date/extractDateCreated.js +0 -5
- package/dist/es2019/extractors/common/date/extractDateUpdated.js +0 -5
- package/dist/es2019/extractors/common/person/extractMembers.js +0 -23
- package/dist/es2019/extractors/common/person/extractPersonAssignedTo.js +0 -8
- package/dist/es2019/extractors/common/person/extractPersonCreatedBy.js +0 -16
- package/dist/es2019/extractors/common/person/extractPersonUpdatedBy.js +0 -8
- package/dist/es2019/extractors/common/person/index.js +0 -4
- package/dist/es2019/extractors/common/person/types.js +0 -1
- package/dist/es2019/extractors/common/preview/extractImage.js +0 -16
- package/dist/es2019/extractors/common/preview/index.js +0 -2
- package/dist/es2019/extractors/common/primitives/extractLink.js +0 -12
- package/dist/es2019/extractors/common/primitives/extractTitle.js +0 -37
- package/dist/es2019/extractors/common/primitives/extractType.js +0 -11
- package/dist/es2019/extractors/common/utils.js +0 -30
- package/dist/esm/extractors/common/context/extractContext.js +0 -27
- package/dist/esm/extractors/common/context/extractProvider.js +0 -65
- package/dist/esm/extractors/common/date/extractDateCreated.js +0 -5
- package/dist/esm/extractors/common/date/extractDateUpdated.js +0 -5
- package/dist/esm/extractors/common/person/extractMembers.js +0 -27
- package/dist/esm/extractors/common/person/extractPersonAssignedTo.js +0 -8
- package/dist/esm/extractors/common/person/extractPersonCreatedBy.js +0 -18
- package/dist/esm/extractors/common/person/extractPersonUpdatedBy.js +0 -8
- package/dist/esm/extractors/common/person/index.js +0 -4
- package/dist/esm/extractors/common/person/types.js +0 -1
- package/dist/esm/extractors/common/preview/extractImage.js +0 -16
- package/dist/esm/extractors/common/preview/index.js +0 -2
- package/dist/esm/extractors/common/primitives/extractLink.js +0 -12
- package/dist/esm/extractors/common/primitives/extractTitle.js +0 -41
- package/dist/esm/extractors/common/primitives/extractType.js +0 -11
- package/dist/esm/extractors/common/utils.js +0 -30
- package/dist/types/extractors/common/context/extractContext.d.ts +0 -7
- package/dist/types/extractors/common/context/extractProvider.d.ts +0 -8
- package/dist/types/extractors/common/date/extractDateCreated.d.ts +0 -3
- package/dist/types/extractors/common/date/extractDateUpdated.d.ts +0 -2
- package/dist/types/extractors/common/person/extractMembers.d.ts +0 -3
- package/dist/types/extractors/common/person/extractPersonAssignedTo.d.ts +0 -4
- package/dist/types/extractors/common/person/extractPersonCreatedBy.d.ts +0 -3
- package/dist/types/extractors/common/person/extractPersonUpdatedBy.d.ts +0 -5
- package/dist/types/extractors/common/person/index.d.ts +0 -5
- package/dist/types/extractors/common/person/types.d.ts +0 -4
- package/dist/types/extractors/common/preview/extractImage.d.ts +0 -2
- package/dist/types/extractors/common/preview/index.d.ts +0 -3
- package/dist/types/extractors/common/primitives/extractLink.d.ts +0 -2
- package/dist/types/extractors/common/primitives/extractTitle.d.ts +0 -2
- package/dist/types/extractors/common/primitives/extractType.d.ts +0 -2
- package/dist/types/extractors/common/utils.d.ts +0 -4
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.extractTitle = void 0;
|
|
9
|
-
|
|
10
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
-
|
|
12
|
-
var _context = require("../context");
|
|
13
|
-
|
|
14
|
-
var _extractType = require("./extractType");
|
|
15
|
-
|
|
16
|
-
var extractTitle = function extractTitle(jsonLd) {
|
|
17
|
-
var name = jsonLd.name;
|
|
18
|
-
var id = jsonLd['@id'] || ''; // Check if this is a reference to something _inside_ a Repository.
|
|
19
|
-
// We format these titles to represent more metadata.
|
|
20
|
-
|
|
21
|
-
var context = (0, _context.extractContext)(jsonLd);
|
|
22
|
-
var type = (0, _extractType.extractType)(jsonLd);
|
|
23
|
-
var hasContextType = context && context.type;
|
|
24
|
-
var hasContextRepo = hasContextType && context.type.includes('atlassian:SourceCodeRepository');
|
|
25
|
-
|
|
26
|
-
if (hasContextRepo && type) {
|
|
27
|
-
var contextName = context.name && "".concat(context.name, ": ") || ''; // COMMIT: `repo-name: abf137c title of commit message`
|
|
28
|
-
|
|
29
|
-
if (type.includes('atlassian:SourceCodeCommit')) {
|
|
30
|
-
var _id$split = id.split(':'),
|
|
31
|
-
_id$split2 = (0, _slicedToArray2.default)(_id$split, 2),
|
|
32
|
-
hashContent = _id$split2[1];
|
|
33
|
-
|
|
34
|
-
var hash = hashContent && "".concat(hashContent.substring(0, 8), " ");
|
|
35
|
-
return contextName + (hash || '') + name;
|
|
36
|
-
} // PR: `repo-name: #42 title of pull request`
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
if (type.includes('atlassian:SourceCodePullRequest')) {
|
|
40
|
-
var pullRequest = jsonLd;
|
|
41
|
-
var internalId = pullRequest['atlassian:internalId'];
|
|
42
|
-
var internalIdRef = internalId && "#".concat(internalId, " ");
|
|
43
|
-
return contextName + (internalIdRef || '') + name;
|
|
44
|
-
} // BRANCH: `repo-name/branch-name`
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
if (type.includes('atlassian:SourceCodeReference')) {
|
|
48
|
-
return contextName + name;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
return name;
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
exports.extractTitle = extractTitle;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.extractType = void 0;
|
|
7
|
-
|
|
8
|
-
var extractType = function extractType(jsonLd) {
|
|
9
|
-
var type = jsonLd['@type'];
|
|
10
|
-
|
|
11
|
-
if (type) {
|
|
12
|
-
if (Array.isArray(jsonLd['@type'])) {
|
|
13
|
-
return type;
|
|
14
|
-
} else {
|
|
15
|
-
return [type];
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
exports.extractType = extractType;
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.extractUrlFromIconJsonLd = exports.extractPersonFromJsonLd = void 0;
|
|
7
|
-
|
|
8
|
-
var _linkingCommon = require("@atlaskit/linking-common");
|
|
9
|
-
|
|
10
|
-
var extractUrlFromIconJsonLd = function extractUrlFromIconJsonLd(icon) {
|
|
11
|
-
if (typeof icon === 'string') {
|
|
12
|
-
return icon;
|
|
13
|
-
} else if (icon['@type'] === 'Link') {
|
|
14
|
-
return (0, _linkingCommon.extractUrlFromLinkJsonLd)(icon);
|
|
15
|
-
} else {
|
|
16
|
-
if (icon.url) {
|
|
17
|
-
return (0, _linkingCommon.extractUrlFromLinkJsonLd)(icon.url);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
exports.extractUrlFromIconJsonLd = extractUrlFromIconJsonLd;
|
|
23
|
-
|
|
24
|
-
var extractPersonFromJsonLd = function extractPersonFromJsonLd(person) {
|
|
25
|
-
if (typeof person === 'string') {
|
|
26
|
-
throw Error('Link.person needs to be an object.');
|
|
27
|
-
} else if (person['@type'] === 'Link') {
|
|
28
|
-
if (person.name) {
|
|
29
|
-
return {
|
|
30
|
-
name: person.name
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
} else {
|
|
34
|
-
if (person.name) {
|
|
35
|
-
return {
|
|
36
|
-
name: person.name,
|
|
37
|
-
src: person.icon && extractUrlFromIconJsonLd(person.icon)
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
exports.extractPersonFromJsonLd = extractPersonFromJsonLd;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { extractUrlFromIconJsonLd } from '../utils';
|
|
2
|
-
import { extractType } from '../primitives/extractType';
|
|
3
|
-
export const extractContext = jsonLd => {
|
|
4
|
-
const context = jsonLd.context;
|
|
5
|
-
|
|
6
|
-
if (context) {
|
|
7
|
-
if (typeof context === 'string') {
|
|
8
|
-
return {
|
|
9
|
-
name: context
|
|
10
|
-
};
|
|
11
|
-
} else if (context['@type'] === 'Link') {
|
|
12
|
-
if (context.name) {
|
|
13
|
-
return {
|
|
14
|
-
name: context.name
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
} else {
|
|
18
|
-
if (context.name) {
|
|
19
|
-
return {
|
|
20
|
-
name: context.name,
|
|
21
|
-
icon: context.icon && extractUrlFromIconJsonLd(context.icon),
|
|
22
|
-
type: extractType(context)
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
};
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { N700, B200, B400 } from '@atlaskit/theme/colors';
|
|
3
|
-
import { token } from '@atlaskit/tokens';
|
|
4
|
-
import { ConfluenceIcon } from '@atlaskit/logo/confluence-icon';
|
|
5
|
-
import { JiraIcon } from '@atlaskit/logo/jira-icon';
|
|
6
|
-
import { extractUrlFromIconJsonLd } from '../utils';
|
|
7
|
-
import { CONFLUENCE_GENERATOR_ID, JIRA_GENERATOR_ID } from '../../constants';
|
|
8
|
-
export const extractProvider = jsonLd => {
|
|
9
|
-
const generator = jsonLd.generator;
|
|
10
|
-
|
|
11
|
-
if (generator) {
|
|
12
|
-
if (typeof generator === 'string') {
|
|
13
|
-
throw Error('Link.generator requires a name and icon.');
|
|
14
|
-
} else if (generator['@type'] === 'Link') {
|
|
15
|
-
if (generator.name) {
|
|
16
|
-
return {
|
|
17
|
-
text: generator.name
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
} else {
|
|
21
|
-
if (generator.name) {
|
|
22
|
-
const id = generator['@id'];
|
|
23
|
-
return {
|
|
24
|
-
text: generator.name,
|
|
25
|
-
icon: extractProviderIcon(generator.icon, id),
|
|
26
|
-
id
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
const extractProviderIcon = (icon, id) => {
|
|
34
|
-
if (id) {
|
|
35
|
-
if (id === CONFLUENCE_GENERATOR_ID) {
|
|
36
|
-
return /*#__PURE__*/React.createElement(ConfluenceIcon, {
|
|
37
|
-
textColor: token('color.text.subtle', N700)
|
|
38
|
-
/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
|
|
39
|
-
,
|
|
40
|
-
iconColor: B200,
|
|
41
|
-
iconGradientStart: B400,
|
|
42
|
-
iconGradientStop: B200
|
|
43
|
-
/* eslint-enable @atlaskit/design-system/ensure-design-token-usage */
|
|
44
|
-
,
|
|
45
|
-
size: "xsmall"
|
|
46
|
-
});
|
|
47
|
-
} else if (id === JIRA_GENERATOR_ID) {
|
|
48
|
-
return /*#__PURE__*/React.createElement(JiraIcon, {
|
|
49
|
-
textColor: token('color.text.subtle', N700)
|
|
50
|
-
/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
|
|
51
|
-
,
|
|
52
|
-
iconColor: B200,
|
|
53
|
-
iconGradientStart: B400,
|
|
54
|
-
iconGradientStop: B200
|
|
55
|
-
/* eslint-enable @atlaskit/design-system/ensure-design-token-usage */
|
|
56
|
-
,
|
|
57
|
-
size: "xsmall"
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
if (icon) {
|
|
63
|
-
return extractUrlFromIconJsonLd(icon);
|
|
64
|
-
}
|
|
65
|
-
};
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { extractPersonFromJsonLd } from '../utils';
|
|
2
|
-
export const extractMembers = jsonLd => {
|
|
3
|
-
const members = jsonLd['atlassian:member'];
|
|
4
|
-
|
|
5
|
-
if (members) {
|
|
6
|
-
if (typeof members === 'string') {
|
|
7
|
-
throw Error('Link[atlassian:members] must be an array or object.');
|
|
8
|
-
} else if (members.hasOwnProperty('totalItems')) {
|
|
9
|
-
const collection = members;
|
|
10
|
-
|
|
11
|
-
if (collection.items) {
|
|
12
|
-
return collection.items.map(member => extractPersonFromJsonLd(member)).filter(member => !!member);
|
|
13
|
-
}
|
|
14
|
-
} else {
|
|
15
|
-
const memberItem = members;
|
|
16
|
-
const memberItemForLink = extractPersonFromJsonLd(memberItem);
|
|
17
|
-
|
|
18
|
-
if (memberItemForLink) {
|
|
19
|
-
return [memberItemForLink];
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { extractPersonFromJsonLd } from '../utils';
|
|
2
|
-
export const extractPersonCreatedBy = jsonLd => {
|
|
3
|
-
const attributedTo = jsonLd.attributedTo;
|
|
4
|
-
|
|
5
|
-
if (attributedTo) {
|
|
6
|
-
if (Array.isArray(attributedTo)) {
|
|
7
|
-
return attributedTo.map(extractPersonFromJsonLd).filter(item => !!item);
|
|
8
|
-
} else {
|
|
9
|
-
const item = extractPersonFromJsonLd(attributedTo);
|
|
10
|
-
|
|
11
|
-
if (item) {
|
|
12
|
-
return [item];
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { extractUrlFromLinkJsonLd } from '@atlaskit/linking-common';
|
|
2
|
-
export const extractImage = jsonLd => {
|
|
3
|
-
const image = jsonLd.image;
|
|
4
|
-
|
|
5
|
-
if (image) {
|
|
6
|
-
if (typeof image === 'string') {
|
|
7
|
-
return image;
|
|
8
|
-
} else if (image['@type'] === 'Link') {
|
|
9
|
-
return extractUrlFromLinkJsonLd(image);
|
|
10
|
-
} else if (image['@type'] === 'Image') {
|
|
11
|
-
if (image.url) {
|
|
12
|
-
return extractUrlFromLinkJsonLd(image.url);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
};
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { extractUrlFromLinkJsonLd } from '@atlaskit/linking-common';
|
|
2
|
-
export const extractLink = jsonLd => {
|
|
3
|
-
const url = jsonLd.url;
|
|
4
|
-
|
|
5
|
-
if (url) {
|
|
6
|
-
if (typeof url === 'string') {
|
|
7
|
-
return url;
|
|
8
|
-
} else {
|
|
9
|
-
return extractUrlFromLinkJsonLd(url);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
};
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { extractContext } from '../context';
|
|
2
|
-
import { extractType } from './extractType';
|
|
3
|
-
export const extractTitle = jsonLd => {
|
|
4
|
-
const name = jsonLd.name;
|
|
5
|
-
const id = jsonLd['@id'] || ''; // Check if this is a reference to something _inside_ a Repository.
|
|
6
|
-
// We format these titles to represent more metadata.
|
|
7
|
-
|
|
8
|
-
const context = extractContext(jsonLd);
|
|
9
|
-
const type = extractType(jsonLd);
|
|
10
|
-
const hasContextType = context && context.type;
|
|
11
|
-
const hasContextRepo = hasContextType && context.type.includes('atlassian:SourceCodeRepository');
|
|
12
|
-
|
|
13
|
-
if (hasContextRepo && type) {
|
|
14
|
-
const contextName = context.name && `${context.name}: ` || ''; // COMMIT: `repo-name: abf137c title of commit message`
|
|
15
|
-
|
|
16
|
-
if (type.includes('atlassian:SourceCodeCommit')) {
|
|
17
|
-
const [, hashContent] = id.split(':');
|
|
18
|
-
const hash = hashContent && `${hashContent.substring(0, 8)} `;
|
|
19
|
-
return contextName + (hash || '') + name;
|
|
20
|
-
} // PR: `repo-name: #42 title of pull request`
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
if (type.includes('atlassian:SourceCodePullRequest')) {
|
|
24
|
-
const pullRequest = jsonLd;
|
|
25
|
-
const internalId = pullRequest['atlassian:internalId'];
|
|
26
|
-
const internalIdRef = internalId && `#${internalId} `;
|
|
27
|
-
return contextName + (internalIdRef || '') + name;
|
|
28
|
-
} // BRANCH: `repo-name/branch-name`
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
if (type.includes('atlassian:SourceCodeReference')) {
|
|
32
|
-
return contextName + name;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
return name;
|
|
37
|
-
};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { extractUrlFromLinkJsonLd } from '@atlaskit/linking-common';
|
|
2
|
-
export const extractUrlFromIconJsonLd = icon => {
|
|
3
|
-
if (typeof icon === 'string') {
|
|
4
|
-
return icon;
|
|
5
|
-
} else if (icon['@type'] === 'Link') {
|
|
6
|
-
return extractUrlFromLinkJsonLd(icon);
|
|
7
|
-
} else {
|
|
8
|
-
if (icon.url) {
|
|
9
|
-
return extractUrlFromLinkJsonLd(icon.url);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
};
|
|
13
|
-
export const extractPersonFromJsonLd = person => {
|
|
14
|
-
if (typeof person === 'string') {
|
|
15
|
-
throw Error('Link.person needs to be an object.');
|
|
16
|
-
} else if (person['@type'] === 'Link') {
|
|
17
|
-
if (person.name) {
|
|
18
|
-
return {
|
|
19
|
-
name: person.name
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
} else {
|
|
23
|
-
if (person.name) {
|
|
24
|
-
return {
|
|
25
|
-
name: person.name,
|
|
26
|
-
src: person.icon && extractUrlFromIconJsonLd(person.icon)
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
};
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { extractUrlFromIconJsonLd } from '../utils';
|
|
2
|
-
import { extractType } from '../primitives/extractType';
|
|
3
|
-
export var extractContext = function extractContext(jsonLd) {
|
|
4
|
-
var context = jsonLd.context;
|
|
5
|
-
|
|
6
|
-
if (context) {
|
|
7
|
-
if (typeof context === 'string') {
|
|
8
|
-
return {
|
|
9
|
-
name: context
|
|
10
|
-
};
|
|
11
|
-
} else if (context['@type'] === 'Link') {
|
|
12
|
-
if (context.name) {
|
|
13
|
-
return {
|
|
14
|
-
name: context.name
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
} else {
|
|
18
|
-
if (context.name) {
|
|
19
|
-
return {
|
|
20
|
-
name: context.name,
|
|
21
|
-
icon: context.icon && extractUrlFromIconJsonLd(context.icon),
|
|
22
|
-
type: extractType(context)
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
};
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { N700, B200, B400 } from '@atlaskit/theme/colors';
|
|
3
|
-
import { token } from '@atlaskit/tokens';
|
|
4
|
-
import { ConfluenceIcon } from '@atlaskit/logo/confluence-icon';
|
|
5
|
-
import { JiraIcon } from '@atlaskit/logo/jira-icon';
|
|
6
|
-
import { extractUrlFromIconJsonLd } from '../utils';
|
|
7
|
-
import { CONFLUENCE_GENERATOR_ID, JIRA_GENERATOR_ID } from '../../constants';
|
|
8
|
-
export var extractProvider = function extractProvider(jsonLd) {
|
|
9
|
-
var generator = jsonLd.generator;
|
|
10
|
-
|
|
11
|
-
if (generator) {
|
|
12
|
-
if (typeof generator === 'string') {
|
|
13
|
-
throw Error('Link.generator requires a name and icon.');
|
|
14
|
-
} else if (generator['@type'] === 'Link') {
|
|
15
|
-
if (generator.name) {
|
|
16
|
-
return {
|
|
17
|
-
text: generator.name
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
} else {
|
|
21
|
-
if (generator.name) {
|
|
22
|
-
var id = generator['@id'];
|
|
23
|
-
return {
|
|
24
|
-
text: generator.name,
|
|
25
|
-
icon: extractProviderIcon(generator.icon, id),
|
|
26
|
-
id: id
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
var extractProviderIcon = function extractProviderIcon(icon, id) {
|
|
34
|
-
if (id) {
|
|
35
|
-
if (id === CONFLUENCE_GENERATOR_ID) {
|
|
36
|
-
return /*#__PURE__*/React.createElement(ConfluenceIcon, {
|
|
37
|
-
textColor: token('color.text.subtle', N700)
|
|
38
|
-
/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
|
|
39
|
-
,
|
|
40
|
-
iconColor: B200,
|
|
41
|
-
iconGradientStart: B400,
|
|
42
|
-
iconGradientStop: B200
|
|
43
|
-
/* eslint-enable @atlaskit/design-system/ensure-design-token-usage */
|
|
44
|
-
,
|
|
45
|
-
size: "xsmall"
|
|
46
|
-
});
|
|
47
|
-
} else if (id === JIRA_GENERATOR_ID) {
|
|
48
|
-
return /*#__PURE__*/React.createElement(JiraIcon, {
|
|
49
|
-
textColor: token('color.text.subtle', N700)
|
|
50
|
-
/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */
|
|
51
|
-
,
|
|
52
|
-
iconColor: B200,
|
|
53
|
-
iconGradientStart: B400,
|
|
54
|
-
iconGradientStop: B200
|
|
55
|
-
/* eslint-enable @atlaskit/design-system/ensure-design-token-usage */
|
|
56
|
-
,
|
|
57
|
-
size: "xsmall"
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
if (icon) {
|
|
63
|
-
return extractUrlFromIconJsonLd(icon);
|
|
64
|
-
}
|
|
65
|
-
};
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { extractPersonFromJsonLd } from '../utils';
|
|
2
|
-
export var extractMembers = function extractMembers(jsonLd) {
|
|
3
|
-
var members = jsonLd['atlassian:member'];
|
|
4
|
-
|
|
5
|
-
if (members) {
|
|
6
|
-
if (typeof members === 'string') {
|
|
7
|
-
throw Error('Link[atlassian:members] must be an array or object.');
|
|
8
|
-
} else if (members.hasOwnProperty('totalItems')) {
|
|
9
|
-
var collection = members;
|
|
10
|
-
|
|
11
|
-
if (collection.items) {
|
|
12
|
-
return collection.items.map(function (member) {
|
|
13
|
-
return extractPersonFromJsonLd(member);
|
|
14
|
-
}).filter(function (member) {
|
|
15
|
-
return !!member;
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
} else {
|
|
19
|
-
var memberItem = members;
|
|
20
|
-
var memberItemForLink = extractPersonFromJsonLd(memberItem);
|
|
21
|
-
|
|
22
|
-
if (memberItemForLink) {
|
|
23
|
-
return [memberItemForLink];
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { extractPersonFromJsonLd } from '../utils';
|
|
2
|
-
export var extractPersonCreatedBy = function extractPersonCreatedBy(jsonLd) {
|
|
3
|
-
var attributedTo = jsonLd.attributedTo;
|
|
4
|
-
|
|
5
|
-
if (attributedTo) {
|
|
6
|
-
if (Array.isArray(attributedTo)) {
|
|
7
|
-
return attributedTo.map(extractPersonFromJsonLd).filter(function (item) {
|
|
8
|
-
return !!item;
|
|
9
|
-
});
|
|
10
|
-
} else {
|
|
11
|
-
var item = extractPersonFromJsonLd(attributedTo);
|
|
12
|
-
|
|
13
|
-
if (item) {
|
|
14
|
-
return [item];
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { extractUrlFromLinkJsonLd } from '@atlaskit/linking-common';
|
|
2
|
-
export var extractImage = function extractImage(jsonLd) {
|
|
3
|
-
var image = jsonLd.image;
|
|
4
|
-
|
|
5
|
-
if (image) {
|
|
6
|
-
if (typeof image === 'string') {
|
|
7
|
-
return image;
|
|
8
|
-
} else if (image['@type'] === 'Link') {
|
|
9
|
-
return extractUrlFromLinkJsonLd(image);
|
|
10
|
-
} else if (image['@type'] === 'Image') {
|
|
11
|
-
if (image.url) {
|
|
12
|
-
return extractUrlFromLinkJsonLd(image.url);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
};
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { extractUrlFromLinkJsonLd } from '@atlaskit/linking-common';
|
|
2
|
-
export var extractLink = function extractLink(jsonLd) {
|
|
3
|
-
var url = jsonLd.url;
|
|
4
|
-
|
|
5
|
-
if (url) {
|
|
6
|
-
if (typeof url === 'string') {
|
|
7
|
-
return url;
|
|
8
|
-
} else {
|
|
9
|
-
return extractUrlFromLinkJsonLd(url);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
};
|