@atlaskit/smart-card 26.46.2 → 26.46.4

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.
Files changed (80) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/cjs/constants.js +2 -2
  3. package/dist/cjs/extractors/common/context/extractAccessContext.js +34 -31
  4. package/dist/cjs/messages.js +44 -76
  5. package/dist/cjs/utils/analytics/analytics.js +1 -1
  6. package/dist/cjs/view/BlockCard/index.js +1 -1
  7. package/dist/cjs/view/BlockCard/views/ForbiddenView.js +6 -2
  8. package/dist/cjs/view/BlockCard/views/flexible/FlexibleNotFoundView.js +2 -2
  9. package/dist/cjs/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-indicator-container.js +28 -0
  10. package/dist/cjs/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-indicator-tooltip.js +35 -0
  11. package/dist/cjs/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-learn-more-anchor.js +22 -0
  12. package/dist/cjs/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-state-done.js +116 -0
  13. package/dist/cjs/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-state-loading.js +35 -0
  14. package/dist/cjs/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/index.js +35 -0
  15. package/dist/cjs/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/types.js +5 -0
  16. package/dist/cjs/view/FlexibleCard/components/blocks/ai-summary-block/resolved/index.js +37 -28
  17. package/dist/cjs/view/FlexibleCard/utils.js +1 -1
  18. package/dist/cjs/view/LinkUrl/index.js +1 -1
  19. package/dist/cjs/view/common/ai-icon-loading/index.js +60 -0
  20. package/dist/es2019/constants.js +1 -1
  21. package/dist/es2019/extractors/common/context/extractAccessContext.js +35 -31
  22. package/dist/es2019/messages.js +44 -76
  23. package/dist/es2019/utils/analytics/analytics.js +1 -1
  24. package/dist/es2019/view/BlockCard/index.js +1 -1
  25. package/dist/es2019/view/BlockCard/views/ForbiddenView.js +5 -2
  26. package/dist/es2019/view/BlockCard/views/flexible/FlexibleNotFoundView.js +2 -2
  27. package/dist/es2019/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-indicator-container.js +22 -0
  28. package/dist/es2019/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-indicator-tooltip.js +29 -0
  29. package/dist/es2019/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-learn-more-anchor.js +12 -0
  30. package/dist/es2019/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-state-done.js +105 -0
  31. package/dist/es2019/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-state-loading.js +29 -0
  32. package/dist/es2019/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/index.js +26 -0
  33. package/dist/es2019/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/types.js +1 -0
  34. package/dist/es2019/view/FlexibleCard/components/blocks/ai-summary-block/resolved/index.js +36 -31
  35. package/dist/es2019/view/FlexibleCard/utils.js +1 -1
  36. package/dist/es2019/view/LinkUrl/index.js +1 -1
  37. package/dist/es2019/view/common/ai-icon-loading/index.js +64 -0
  38. package/dist/esm/constants.js +1 -1
  39. package/dist/esm/extractors/common/context/extractAccessContext.js +34 -31
  40. package/dist/esm/messages.js +44 -76
  41. package/dist/esm/utils/analytics/analytics.js +1 -1
  42. package/dist/esm/view/BlockCard/index.js +1 -1
  43. package/dist/esm/view/BlockCard/views/ForbiddenView.js +6 -2
  44. package/dist/esm/view/BlockCard/views/flexible/FlexibleNotFoundView.js +2 -2
  45. package/dist/esm/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-indicator-container.js +21 -0
  46. package/dist/esm/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-indicator-tooltip.js +25 -0
  47. package/dist/esm/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-learn-more-anchor.js +15 -0
  48. package/dist/esm/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-state-done.js +108 -0
  49. package/dist/esm/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-state-loading.js +28 -0
  50. package/dist/esm/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/index.js +27 -0
  51. package/dist/esm/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/types.js +1 -0
  52. package/dist/esm/view/FlexibleCard/components/blocks/ai-summary-block/resolved/index.js +40 -31
  53. package/dist/esm/view/FlexibleCard/utils.js +1 -1
  54. package/dist/esm/view/LinkUrl/index.js +1 -1
  55. package/dist/esm/view/common/ai-icon-loading/index.js +54 -0
  56. package/dist/types/constants.d.ts +1 -0
  57. package/dist/types/extractors/common/context/extractAccessContext.d.ts +2 -2
  58. package/dist/types/messages.d.ts +2 -2
  59. package/dist/types/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-indicator-container.d.ts +4 -0
  60. package/dist/types/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-indicator-tooltip.d.ts +4 -0
  61. package/dist/types/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-learn-more-anchor.d.ts +3 -0
  62. package/dist/types/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-state-done.d.ts +5 -0
  63. package/dist/types/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-state-loading.d.ts +4 -0
  64. package/dist/types/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/index.d.ts +4 -0
  65. package/dist/types/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/types.d.ts +18 -0
  66. package/dist/types/view/FlexibleCard/components/blocks/ai-summary-block/types.d.ts +2 -1
  67. package/dist/types/view/common/ai-icon-loading/index.d.ts +7 -0
  68. package/dist/types-ts4.5/constants.d.ts +1 -0
  69. package/dist/types-ts4.5/extractors/common/context/extractAccessContext.d.ts +2 -2
  70. package/dist/types-ts4.5/messages.d.ts +2 -2
  71. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-indicator-container.d.ts +4 -0
  72. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-indicator-tooltip.d.ts +4 -0
  73. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-learn-more-anchor.d.ts +3 -0
  74. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-state-done.d.ts +5 -0
  75. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/ai-state-loading.d.ts +4 -0
  76. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/index.d.ts +4 -0
  77. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/ai-summary-block/ai-state-indicator/types.d.ts +18 -0
  78. package/dist/types-ts4.5/view/FlexibleCard/components/blocks/ai-summary-block/types.d.ts +2 -1
  79. package/dist/types-ts4.5/view/common/ai-icon-loading/index.d.ts +7 -0
  80. package/package.json +1 -1
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _reactIntlNext = require("react-intl-next");
11
+ var _react2 = require("@emotion/react");
12
+ var _panel = _interopRequireDefault(require("@atlaskit/icon/glyph/editor/panel"));
13
+ var _primitives = require("@atlaskit/primitives");
14
+ var _messages = require("../../../../../../messages");
15
+ var _aiIcon = _interopRequireDefault(require("../../../../../common/ai-icon"));
16
+ var _aiIndicatorTooltip = _interopRequireDefault(require("./ai-indicator-tooltip"));
17
+ var _aiIndicatorContainer = _interopRequireDefault(require("./ai-indicator-container"));
18
+ var _aiLearnMoreAnchor = _interopRequireDefault(require("./ai-learn-more-anchor"));
19
+ /** @jsx jsx */
20
+
21
+ var tooltipMsgStyles = (0, _primitives.xcss)({
22
+ color: 'color.text',
23
+ fontSize: '14px',
24
+ fontWeight: '400',
25
+ lineHeight: '20px'
26
+ });
27
+ var iconTooltipLinkStyles = (0, _react2.css)({
28
+ color: "var(--ds-text-subtlest, #626F86)",
29
+ '&:link, :visited': {
30
+ color: "var(--ds-text-subtlest, #626F86)"
31
+ },
32
+ '&:hover': {
33
+ color: "var(--ds-text-subtle, #44546F)"
34
+ },
35
+ '&:active': {
36
+ color: "var(--ds-text, #172B4D)"
37
+ },
38
+ textDecoration: 'underline'
39
+ });
40
+ var iconTooltipTitleStyles = (0, _primitives.xcss)({
41
+ color: 'color.text',
42
+ fontSize: '12px',
43
+ fontWeight: '400',
44
+ lineHeight: '16px'
45
+ });
46
+ var iconTooltipDescStyles = (0, _primitives.xcss)({
47
+ color: 'color.text.subtlest',
48
+ fontSize: '11px',
49
+ fontWeight: '400',
50
+ lineHeight: '14px'
51
+ });
52
+ var AIStateDone = function AIStateDone(_ref) {
53
+ var appearance = _ref.appearance,
54
+ testId = _ref.testId;
55
+ var icon = (0, _react2.jsx)(_aiIcon.default, {
56
+ label: "AI",
57
+ size: "small",
58
+ testId: "".concat(testId, "-done-icon")
59
+ });
60
+ switch (appearance) {
61
+ case 'icon-only':
62
+ return (0, _react2.jsx)(_aiIndicatorTooltip.default, {
63
+ content: (0, _react2.jsx)(_primitives.Inline, {
64
+ alignBlock: "center",
65
+ space: "space.100"
66
+ }, (0, _react2.jsx)(_aiIcon.default, {
67
+ label: "AI",
68
+ size: "medium",
69
+ testId: "".concat(testId, "-done-tooltip-icon")
70
+ }), (0, _react2.jsx)(_primitives.Stack, null, (0, _react2.jsx)(_primitives.Box, {
71
+ xcss: iconTooltipTitleStyles,
72
+ testId: "".concat(testId, "-done-tooltip-title")
73
+ }, (0, _react2.jsx)(_reactIntlNext.FormattedMessage, _messages.messages.ai_summarized)), (0, _react2.jsx)(_primitives.Box, {
74
+ xcss: iconTooltipDescStyles
75
+ }, (0, _react2.jsx)(_reactIntlNext.FormattedMessage, (0, _extends2.default)({}, _messages.messages.ai_summarized_info, {
76
+ values: {
77
+ a: function a(chunks) {
78
+ return (0, _react2.jsx)(_aiLearnMoreAnchor.default, {
79
+ css: iconTooltipLinkStyles
80
+ }, chunks);
81
+ }
82
+ }
83
+ }))))),
84
+ trigger: icon
85
+ });
86
+ default:
87
+ return (0, _react2.jsx)(_aiIndicatorContainer.default, {
88
+ icon: icon,
89
+ content: (0, _react2.jsx)(_primitives.Inline, {
90
+ alignBlock: "center",
91
+ alignInline: "start",
92
+ space: "space.050"
93
+ }, (0, _react2.jsx)(_primitives.Box, {
94
+ testId: "".concat(testId, "-done-message")
95
+ }, (0, _react2.jsx)(_reactIntlNext.FormattedMessage, _messages.messages.ai_summarized)), (0, _react2.jsx)(_aiIndicatorTooltip.default, {
96
+ content: (0, _react2.jsx)(_primitives.Box, {
97
+ xcss: tooltipMsgStyles,
98
+ testId: "".concat(testId, "-done-tooltip")
99
+ }, (0, _react2.jsx)(_reactIntlNext.FormattedMessage, (0, _extends2.default)({}, _messages.messages.ai_summarized_info, {
100
+ values: {
101
+ a: function a(chunks) {
102
+ return (0, _react2.jsx)(_aiLearnMoreAnchor.default, null, chunks);
103
+ }
104
+ }
105
+ }))),
106
+ trigger: (0, _react2.jsx)(_panel.default, {
107
+ label: "Info",
108
+ size: "small",
109
+ testId: "".concat(testId, "-done-info")
110
+ })
111
+ })),
112
+ testId: "".concat(testId, "-done")
113
+ });
114
+ }
115
+ };
116
+ var _default = exports.default = AIStateDone;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _reactIntlNext = require("react-intl-next");
10
+ var _primitives = require("@atlaskit/primitives");
11
+ var _messages = require("../../../../../../messages");
12
+ var _aiIconLoading = _interopRequireDefault(require("../../../../../common/ai-icon-loading"));
13
+ var _aiIndicatorContainer = _interopRequireDefault(require("./ai-indicator-container"));
14
+ var AIStateLoading = function AIStateLoading(_ref) {
15
+ var appearance = _ref.appearance,
16
+ testId = _ref.testId;
17
+ var icon = /*#__PURE__*/_react.default.createElement(_aiIconLoading.default, {
18
+ label: "AI",
19
+ size: "small",
20
+ testId: "".concat(testId, "-loading-icon")
21
+ });
22
+ switch (appearance) {
23
+ case 'icon-only':
24
+ return icon;
25
+ default:
26
+ return /*#__PURE__*/_react.default.createElement(_aiIndicatorContainer.default, {
27
+ icon: icon,
28
+ content: /*#__PURE__*/_react.default.createElement(_primitives.Box, {
29
+ testId: "".concat(testId, "-loading-message")
30
+ }, /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.messages.ai_summarizing)),
31
+ testId: "".concat(testId, "-loading")
32
+ });
33
+ }
34
+ };
35
+ var _default = exports.default = AIStateLoading;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _react = require("@emotion/react");
9
+ var _react2 = _interopRequireDefault(require("react"));
10
+ var _aiStateLoading = _interopRequireDefault(require("./ai-state-loading"));
11
+ var _aiStateDone = _interopRequireDefault(require("./ai-state-done"));
12
+ /** @jsx jsx */
13
+
14
+ var AIStateIndicator = function AIStateIndicator(_ref) {
15
+ var state = _ref.state,
16
+ _ref$appearance = _ref.appearance,
17
+ appearance = _ref$appearance === void 0 ? 'default' : _ref$appearance,
18
+ _ref$testId = _ref.testId,
19
+ testId = _ref$testId === void 0 ? 'ai-state-indicator' : _ref$testId;
20
+ switch (state) {
21
+ case 'loading':
22
+ return (0, _react.jsx)(_aiStateLoading.default, {
23
+ appearance: appearance,
24
+ testId: testId
25
+ });
26
+ case 'done':
27
+ return (0, _react.jsx)(_aiStateDone.default, {
28
+ appearance: appearance,
29
+ testId: testId
30
+ });
31
+ default:
32
+ return null;
33
+ }
34
+ };
35
+ var _default = exports.default = AIStateIndicator;
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -8,13 +8,15 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.default = void 0;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
10
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
12
  var _react = _interopRequireWildcard(require("react"));
12
13
  var _reactIntlNext = require("react-intl-next");
14
+ var _primitives = require("@atlaskit/primitives");
13
15
  var _constants = require("../../../../../../constants");
14
- var _flexibleUiContext = require("../../../../../../state/flexible-ui-context");
15
16
  var _actionGroup = _interopRequireDefault(require("../../action-group"));
16
17
  var _block = _interopRequireDefault(require("../../block"));
17
18
  var _elementGroup = _interopRequireDefault(require("../../element-group"));
19
+ var _aiStateIndicator = _interopRequireDefault(require("../ai-state-indicator"));
18
20
  var _utils = require("../../utils");
19
21
  var _messages = require("../../../../../../messages");
20
22
  var _aiIcon = _interopRequireDefault(require("../../../../../common/ai-icon"));
@@ -29,29 +31,32 @@ var AISummaryBlockResolvedView = function AISummaryBlockResolvedView(props) {
29
31
  onAIActionChange = props.onAIActionChange,
30
32
  _props$size = props.size,
31
33
  size = _props$size === void 0 ? _constants.SmartLinkSize.Medium : _props$size;
32
- var context = (0, _flexibleUiContext.useFlexibleUiContext)();
34
+ var _useState = (0, _react.useState)('ready'),
35
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
36
+ aiState = _useState2[0],
37
+ setAIState = _useState2[1];
33
38
  var metadataElements = (0, _utils.renderElementItems)(metadata);
34
39
  var onAIActionClick = (0, _react.useCallback)(function () {
40
+ setAIState('loading');
35
41
  if (onAIActionChange) {
36
- onAIActionChange();
42
+ onAIActionChange('loading');
37
43
  }
38
44
  }, [onAIActionChange]);
39
45
  var combinedActions = (0, _react.useMemo)(function () {
40
- var aiAction = {
41
- content: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.messages.ai_summarize),
42
- name: _constants.ActionName.CustomAction,
43
- onClick: onAIActionClick,
44
- testId: "".concat(testId, "-ai-summary-action"),
45
- icon: /*#__PURE__*/_react.default.createElement(_aiIcon.default, {
46
- label: "AiIcon"
47
- })
48
- };
49
- return [aiAction].concat((0, _toConsumableArray2.default)(actions));
50
- }, [actions, onAIActionClick, testId]);
51
- var hasActions = (0, _react.useMemo)(function () {
52
- var _filterActionItems;
53
- return ((_filterActionItems = (0, _utils.filterActionItems)(combinedActions, context)) === null || _filterActionItems === void 0 ? void 0 : _filterActionItems.length) > 0;
54
- }, [combinedActions, context]);
46
+ if (aiState === 'ready') {
47
+ var aiAction = {
48
+ content: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.messages.ai_summarize),
49
+ name: _constants.ActionName.CustomAction,
50
+ onClick: onAIActionClick,
51
+ testId: "".concat(testId, "-ai-summary-action"),
52
+ icon: /*#__PURE__*/_react.default.createElement(_aiIcon.default, {
53
+ label: "AiIcon"
54
+ })
55
+ };
56
+ return [aiAction].concat((0, _toConsumableArray2.default)(actions));
57
+ }
58
+ return actions;
59
+ }, [actions, aiState, onAIActionClick, testId]);
55
60
  var onDropdownOpenChange = (0, _react.useCallback)(function (isOpen) {
56
61
  if (onActionMenuOpenChange) {
57
62
  onActionMenuOpenChange({
@@ -61,17 +66,21 @@ var AISummaryBlockResolvedView = function AISummaryBlockResolvedView(props) {
61
66
  }, [onActionMenuOpenChange]);
62
67
  return /*#__PURE__*/_react.default.createElement(_block.default, (0, _extends2.default)({}, props, {
63
68
  testId: "".concat(testId, "-resolved-view")
64
- }), /*#__PURE__*/_react.default.createElement(_elementGroup.default, {
65
- width: _constants.SmartLinkWidth.Flexible
66
- }, metadataElements), hasActions && /*#__PURE__*/_react.default.createElement(_elementGroup.default, {
67
- testId: "smart-element-group-actions",
68
- align: _constants.SmartLinkAlignment.Right,
69
- overrideCss: (0, _utils.getActionGroupStyles)(size),
70
- width: _constants.SmartLinkWidth.Flexible
71
- }, /*#__PURE__*/_react.default.createElement(_actionGroup.default, {
69
+ }), /*#__PURE__*/_react.default.createElement(_primitives.Inline, {
70
+ alignBlock: "center",
71
+ alignInline: "end",
72
+ grow: "fill",
73
+ spread: "space-between"
74
+ }, /*#__PURE__*/_react.default.createElement(_primitives.Box, null, aiState === 'loading' || aiState === 'done' ? /*#__PURE__*/_react.default.createElement(_aiStateIndicator.default, {
75
+ state: aiState,
76
+ testId: testId
77
+ }) : /*#__PURE__*/_react.default.createElement(_elementGroup.default, {
78
+ width: _constants.SmartLinkWidth.FitToContent
79
+ }, metadataElements)), /*#__PURE__*/_react.default.createElement(_primitives.Box, null, /*#__PURE__*/_react.default.createElement(_actionGroup.default, {
72
80
  onDropdownOpenChange: onDropdownOpenChange,
73
81
  items: combinedActions,
74
- appearance: "default"
75
- })));
82
+ appearance: "default",
83
+ size: size
84
+ }))));
76
85
  };
77
86
  var _default = exports.default = AISummaryBlockResolvedView;
@@ -79,7 +79,7 @@ var getRetryOptions = exports.getRetryOptions = function getRetryOptions(url, st
79
79
  var access = (0, _context.extractRequestAccessContext)({
80
80
  jsonLd: meta,
81
81
  url: url,
82
- context: context
82
+ product: context
83
83
  });
84
84
  var messageKey = getForbiddenMessageKey(meta);
85
85
  var descriptor = _messages.messages[messageKey];
@@ -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.46.2",
20
+ packageVersion: "26.46.4",
21
21
  componentName: 'linkUrl'
22
22
  };
23
23
  var Link = (0, _click.withLinkClickedEvent)('a');
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
+ var _react = require("@emotion/react");
10
+ var _svg = _interopRequireDefault(require("@atlaskit/icon/svg"));
11
+ var _constants = require("../ai-prism/constants");
12
+ var _templateObject;
13
+ /** @jsx jsx */
14
+ /**
15
+ * The bulk of this file is originally from
16
+ * https://bitbucket.org/atlassian/barrel/src/master/ui/platform/ui-kit/ai
17
+ * with modifications
18
+ */
19
+
20
+ var bounce = (0, _react.keyframes)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n from {\n transform: translateY(0);\n }\n\n // 200ms of 1200ms = 16.67%\n 16.67% {\n transform: translateY(-2px);\n }\n\n // 400ms of 1200ms = 33.33%\n 33.33% {\n transform: translateY(0px);\n }\n"])));
21
+ var BASE_DELAY = 400;
22
+ var QUEUE_DELAY = 200;
23
+ var animationStyles = (0, _react.css)({
24
+ animation: "".concat(bounce, " 1.2s linear infinite normal")
25
+ });
26
+ var firstDelayStyles = (0, _react.css)({
27
+ animationDelay: "".concat(BASE_DELAY + QUEUE_DELAY, "ms")
28
+ });
29
+ var secondDelayStyles = (0, _react.css)({
30
+ animationDelay: "".concat(BASE_DELAY + QUEUE_DELAY * 2, "ms")
31
+ });
32
+ var thirdDelayStyles = (0, _react.css)({
33
+ animationDelay: "".concat(BASE_DELAY + QUEUE_DELAY * 3, "ms")
34
+ });
35
+
36
+ /**
37
+ * this icon is theme agnostic, no need for tokens
38
+ */
39
+ var AIIconLoading = function AIIconLoading(props) {
40
+ return (0, _react.jsx)(_svg.default, props, (0, _react.jsx)("circle", {
41
+ css: [animationStyles, firstDelayStyles],
42
+ cx: "6",
43
+ cy: "12",
44
+ r: "1.5",
45
+ fill: _constants.aiThemeTokens.blue700
46
+ }), (0, _react.jsx)("circle", {
47
+ css: [animationStyles, secondDelayStyles],
48
+ cx: "12",
49
+ cy: "12",
50
+ r: "1.5",
51
+ fill: _constants.aiThemeTokens.blue600
52
+ }), (0, _react.jsx)("circle", {
53
+ css: [animationStyles, thirdDelayStyles],
54
+ cx: "17.5",
55
+ cy: "12",
56
+ r: "1.5",
57
+ fill: _constants.aiThemeTokens.blue500
58
+ }));
59
+ };
60
+ var _default = exports.default = AIIconLoading;
@@ -1,6 +1,6 @@
1
1
  export const CONTENT_URL_SECURITY_AND_PERMISSIONS = 'https://support.atlassian.com/confluence-cloud/docs/insert-links-and-anchors/#Smart-links';
2
2
  export const CONTENT_URL_3P_ACCOUNT_AUTH = 'https://support.atlassian.com/confluence-cloud/docs/what-data-is-sent-and-received-when-pasting-a-smart-link/';
3
-
3
+ export const CONTENT_URL_AI = 'https://www.atlassian.com/trust/atlassian-intelligence';
4
4
  /**
5
5
  * The alignment of Flexible UI component.
6
6
  */
@@ -5,45 +5,49 @@ import { ANALYTICS_CHANNEL } from '../../../utils/analytics';
5
5
  export const extractRequestAccessContext = ({
6
6
  jsonLd,
7
7
  url,
8
- context
8
+ product
9
9
  }) => {
10
10
  var _jsonLd$requestAccess;
11
+ const requestAccess = jsonLd !== null && jsonLd !== void 0 && jsonLd.requestAccess ? {
12
+ ...(jsonLd === null || jsonLd === void 0 ? void 0 : jsonLd.requestAccess),
13
+ hostname: extractHostname(url)
14
+ } : undefined;
11
15
  switch (jsonLd === null || jsonLd === void 0 ? void 0 : (_jsonLd$requestAccess = jsonLd.requestAccess) === null || _jsonLd$requestAccess === void 0 ? void 0 : _jsonLd$requestAccess.accessType) {
12
16
  case 'DIRECT_ACCESS':
13
17
  return {
14
- ...(jsonLd === null || jsonLd === void 0 ? void 0 : jsonLd.requestAccess),
18
+ ...requestAccess,
15
19
  callToActionMessageKey: 'click_to_join',
16
20
  descriptiveMessageKey: 'click_to_join_description',
17
21
  action: ForbiddenAction(() => window.open(url), 'click_to_join', messages.click_to_join, {
18
- context
22
+ context: product
19
23
  })
20
24
  };
21
25
  case 'REQUEST_ACCESS':
22
26
  return {
23
- ...(jsonLd === null || jsonLd === void 0 ? void 0 : jsonLd.requestAccess),
27
+ ...requestAccess,
24
28
  callToActionMessageKey: 'request_access',
25
29
  descriptiveMessageKey: 'request_access_description',
26
30
  action: ForbiddenAction(() => window.open(url), 'request_access', messages.request_access, {
27
- context
31
+ product
28
32
  })
29
33
  };
30
34
  case 'PENDING_REQUEST_EXISTS':
31
35
  return {
32
- ...(jsonLd === null || jsonLd === void 0 ? void 0 : jsonLd.requestAccess),
36
+ ...requestAccess,
33
37
  descriptiveMessageKey: 'request_access_pending_description'
34
38
  };
35
39
  case 'FORBIDDEN':
36
40
  return {
37
- ...(jsonLd === null || jsonLd === void 0 ? void 0 : jsonLd.requestAccess),
41
+ ...requestAccess,
38
42
  descriptiveMessageKey: 'forbidden_description'
39
43
  };
40
44
  case 'DENIED_REQUEST_EXISTS':
41
45
  return {
42
- ...(jsonLd === null || jsonLd === void 0 ? void 0 : jsonLd.requestAccess),
46
+ ...requestAccess,
43
47
  descriptiveMessageKey: 'request_denied_description'
44
48
  };
45
49
  default:
46
- return jsonLd === null || jsonLd === void 0 ? void 0 : jsonLd.requestAccess;
50
+ return requestAccess;
47
51
  }
48
52
  };
49
53
  export const extractRequestAccessContextImproved = ({
@@ -61,9 +65,9 @@ export const extractRequestAccessContextImproved = ({
61
65
  case 'DIRECT_ACCESS':
62
66
  return {
63
67
  ...requestAccess,
64
- titleMessageKey: 'direct_access_title_crossjoin',
65
- descriptiveMessageKey: 'direct_access_description_crossjoin',
66
- callToActionMessageKey: 'direct_access_crossjoin',
68
+ titleMessageKey: 'direct_access_title',
69
+ descriptiveMessageKey: 'direct_access_description',
70
+ callToActionMessageKey: 'direct_access',
67
71
  action: ForbiddenAction(() => {
68
72
  createAnalyticsEvent({
69
73
  action: 'clicked',
@@ -72,16 +76,16 @@ export const extractRequestAccessContextImproved = ({
72
76
  eventType: 'ui'
73
77
  }).fire(ANALYTICS_CHANNEL);
74
78
  window.open(url);
75
- }, 'direct_access', messages.direct_access_crossjoin, {
79
+ }, 'direct_access', messages.direct_access, {
76
80
  product
77
81
  })
78
82
  };
79
83
  case 'REQUEST_ACCESS':
80
84
  return {
81
85
  ...requestAccess,
82
- titleMessageKey: 'default_no_access_title_crossjoin',
83
- descriptiveMessageKey: 'request_access_description_crossjoin',
84
- callToActionMessageKey: 'request_access_crossjoin',
86
+ titleMessageKey: 'default_no_access_title',
87
+ descriptiveMessageKey: 'request_access_description',
88
+ callToActionMessageKey: 'request_access',
85
89
  action: ForbiddenAction(() => {
86
90
  createAnalyticsEvent({
87
91
  action: 'clicked',
@@ -90,36 +94,36 @@ export const extractRequestAccessContextImproved = ({
90
94
  eventType: 'ui'
91
95
  }).fire(ANALYTICS_CHANNEL);
92
96
  window.open(url);
93
- }, 'request_access', messages.request_access_crossjoin)
97
+ }, 'request_access', messages.request_access)
94
98
  };
95
99
  case 'PENDING_REQUEST_EXISTS':
96
100
  return {
97
101
  ...requestAccess,
98
- titleMessageKey: 'request_access_pending_title_crossjoin',
99
- descriptiveMessageKey: 'request_access_pending_description_crossjoin',
100
- callToActionMessageKey: 'request_access_pending_crossjoin',
101
- action: ForbiddenAction(() => window.open(url), 'request_access_pending', messages.request_access_pending_crossjoin),
102
+ titleMessageKey: 'request_access_pending_title',
103
+ descriptiveMessageKey: 'request_access_pending_description',
104
+ callToActionMessageKey: 'request_access_pending',
105
+ action: ForbiddenAction(() => window.open(url), 'request_access_pending', messages.request_access_pending),
102
106
  buttonDisabled: true
103
107
  };
104
108
  case 'DENIED_REQUEST_EXISTS':
105
109
  return {
106
110
  ...requestAccess,
107
- titleMessageKey: 'forbidden_title_crossjoin',
108
- descriptiveMessageKey: 'request_denied_description_crossjoin'
111
+ titleMessageKey: 'forbidden_title',
112
+ descriptiveMessageKey: 'request_denied_description'
109
113
  };
110
114
  case 'ACCESS_EXISTS':
111
115
  if ((jsonLd === null || jsonLd === void 0 ? void 0 : jsonLd.visibility) === 'not_found') {
112
116
  return {
113
117
  ...requestAccess,
114
- titleMessageKey: 'not_found_title_crossjoin',
115
- descriptiveMessageKey: 'not_found_description_crossjoin'
118
+ titleMessageKey: 'not_found_title',
119
+ descriptiveMessageKey: 'not_found_description'
116
120
  };
117
121
  }
118
122
  return {
119
123
  ...requestAccess,
120
- titleMessageKey: 'forbidden_title_crossjoin',
121
- descriptiveMessageKey: 'access_exists_description_crossjoin',
122
- callToActionMessageKey: 'request_access_crossjoin',
124
+ titleMessageKey: 'forbidden_title',
125
+ descriptiveMessageKey: 'access_exists_description',
126
+ callToActionMessageKey: 'request_access',
123
127
  action: ForbiddenAction(() => {
124
128
  createAnalyticsEvent({
125
129
  action: 'clicked',
@@ -128,13 +132,13 @@ export const extractRequestAccessContextImproved = ({
128
132
  eventType: 'ui'
129
133
  }).fire(ANALYTICS_CHANNEL);
130
134
  window.open(url);
131
- }, 'access_exists', messages.request_access_crossjoin)
135
+ }, 'access_exists', messages.request_access)
132
136
  };
133
137
  case 'FORBIDDEN':
134
138
  return {
135
139
  ...requestAccess,
136
- titleMessageKey: 'forbidden_title_crossjoin',
137
- descriptiveMessageKey: 'forbidden_description_crossjoin'
140
+ titleMessageKey: 'forbidden_title',
141
+ descriptiveMessageKey: 'forbidden_description'
138
142
  };
139
143
  default:
140
144
  return requestAccess;