@atlaskit/smart-card 44.5.3 → 44.6.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.
Files changed (76) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/cjs/__tests__/vr-tests/__snapshots__/hover-card/hover-card-with-generic-3p-rovo-chat-action--default.png +2 -2
  3. package/dist/cjs/__tests__/vr-tests/__snapshots__/inline-card/inline-card-unauthorised-social-proof-exploratory-low-share-previewing-headline-and-short-connect-label--default.png +3 -0
  4. package/dist/cjs/__tests__/vr-tests/__snapshots__/inline-card/inline-card-unauthorised-social-proof-no-context-percentage-headline-with-short-connect-label--default.png +3 -0
  5. package/dist/cjs/__tests__/vr-tests/__snapshots__/inline-card/inline-card-unauthorised-social-proof-persisted-percentage-previews-headline-30-and-short-connect-label--default.png +3 -0
  6. package/dist/cjs/messages.js +20 -0
  7. package/dist/cjs/state/hooks/use-incoming-outgoing-links/index.js +20 -5
  8. package/dist/cjs/state/hooks/use-inline-action-nudge-experiment/index.js +1 -1
  9. package/dist/cjs/state/services/current-site-cloud-id/index.js +2 -1
  10. package/dist/cjs/utils/analytics/analytics.js +1 -1
  11. package/dist/cjs/view/FlexibleCard/components/actions/action/action-stack-item/action-button.js +1 -1
  12. package/dist/cjs/view/FlexibleCard/components/actions/ai-summary-action/ai-summarise-action.js +2 -1
  13. package/dist/cjs/view/FlexibleCard/components/actions/ai-summary-action/ai-summary-action-component.js +2 -1
  14. package/dist/cjs/view/FlexibleCard/components/actions/automation-action/index.js +2 -1
  15. package/dist/cjs/view/FlexibleCard/components/actions/copy-link-action/index.js +2 -1
  16. package/dist/cjs/view/FlexibleCard/components/actions/follow-action/index.js +2 -1
  17. package/dist/cjs/view/FlexibleCard/components/actions/preview-action/index.js +3 -2
  18. package/dist/cjs/view/FlexibleCard/components/actions/view-related-links-action/index.js +3 -2
  19. package/dist/cjs/view/InlineCard/UnauthorisedView/index.compiled.css +21 -0
  20. package/dist/cjs/view/InlineCard/UnauthorisedView/index.js +108 -14
  21. package/dist/cjs/view/InlineCard/common/action-button/index.compiled.css +4 -7
  22. package/dist/cjs/view/InlineCard/common/action-button/index.js +21 -3
  23. package/dist/cjs/view/LinkUrl/index.js +1 -1
  24. package/dist/es2019/__tests__/vr-tests/__snapshots__/hover-card/hover-card-with-generic-3p-rovo-chat-action--default.png +2 -2
  25. package/dist/es2019/__tests__/vr-tests/__snapshots__/inline-card/inline-card-unauthorised-social-proof-exploratory-low-share-previewing-headline-and-short-connect-label--default.png +3 -0
  26. package/dist/es2019/__tests__/vr-tests/__snapshots__/inline-card/inline-card-unauthorised-social-proof-no-context-percentage-headline-with-short-connect-label--default.png +3 -0
  27. package/dist/es2019/__tests__/vr-tests/__snapshots__/inline-card/inline-card-unauthorised-social-proof-persisted-percentage-previews-headline-30-and-short-connect-label--default.png +3 -0
  28. package/dist/es2019/messages.js +20 -0
  29. package/dist/es2019/state/hooks/use-incoming-outgoing-links/index.js +4 -2
  30. package/dist/es2019/state/hooks/use-inline-action-nudge-experiment/index.js +1 -1
  31. package/dist/es2019/state/services/current-site-cloud-id/index.js +2 -2
  32. package/dist/es2019/utils/analytics/analytics.js +1 -1
  33. package/dist/es2019/view/FlexibleCard/components/actions/action/action-stack-item/action-button.js +1 -1
  34. package/dist/es2019/view/FlexibleCard/components/actions/ai-summary-action/ai-summarise-action.js +2 -1
  35. package/dist/es2019/view/FlexibleCard/components/actions/ai-summary-action/ai-summary-action-component.js +2 -1
  36. package/dist/es2019/view/FlexibleCard/components/actions/automation-action/index.js +2 -1
  37. package/dist/es2019/view/FlexibleCard/components/actions/copy-link-action/index.js +2 -1
  38. package/dist/es2019/view/FlexibleCard/components/actions/follow-action/index.js +2 -1
  39. package/dist/es2019/view/FlexibleCard/components/actions/preview-action/index.js +3 -2
  40. package/dist/es2019/view/FlexibleCard/components/actions/view-related-links-action/index.js +3 -2
  41. package/dist/es2019/view/InlineCard/UnauthorisedView/index.compiled.css +21 -0
  42. package/dist/es2019/view/InlineCard/UnauthorisedView/index.js +95 -2
  43. package/dist/es2019/view/InlineCard/common/action-button/index.compiled.css +4 -7
  44. package/dist/es2019/view/InlineCard/common/action-button/index.js +19 -2
  45. package/dist/es2019/view/LinkUrl/index.js +1 -1
  46. package/dist/esm/__tests__/vr-tests/__snapshots__/hover-card/hover-card-with-generic-3p-rovo-chat-action--default.png +2 -2
  47. package/dist/esm/__tests__/vr-tests/__snapshots__/inline-card/inline-card-unauthorised-social-proof-exploratory-low-share-previewing-headline-and-short-connect-label--default.png +3 -0
  48. package/dist/esm/__tests__/vr-tests/__snapshots__/inline-card/inline-card-unauthorised-social-proof-no-context-percentage-headline-with-short-connect-label--default.png +3 -0
  49. package/dist/esm/__tests__/vr-tests/__snapshots__/inline-card/inline-card-unauthorised-social-proof-persisted-percentage-previews-headline-30-and-short-connect-label--default.png +3 -0
  50. package/dist/esm/messages.js +20 -0
  51. package/dist/esm/state/hooks/use-incoming-outgoing-links/index.js +20 -5
  52. package/dist/esm/state/hooks/use-inline-action-nudge-experiment/index.js +1 -1
  53. package/dist/esm/state/services/current-site-cloud-id/index.js +2 -1
  54. package/dist/esm/utils/analytics/analytics.js +1 -1
  55. package/dist/esm/view/FlexibleCard/components/actions/action/action-stack-item/action-button.js +1 -1
  56. package/dist/esm/view/FlexibleCard/components/actions/ai-summary-action/ai-summarise-action.js +2 -1
  57. package/dist/esm/view/FlexibleCard/components/actions/ai-summary-action/ai-summary-action-component.js +2 -1
  58. package/dist/esm/view/FlexibleCard/components/actions/automation-action/index.js +2 -1
  59. package/dist/esm/view/FlexibleCard/components/actions/copy-link-action/index.js +2 -1
  60. package/dist/esm/view/FlexibleCard/components/actions/follow-action/index.js +2 -1
  61. package/dist/esm/view/FlexibleCard/components/actions/preview-action/index.js +3 -2
  62. package/dist/esm/view/FlexibleCard/components/actions/view-related-links-action/index.js +3 -2
  63. package/dist/esm/view/InlineCard/UnauthorisedView/index.compiled.css +21 -0
  64. package/dist/esm/view/InlineCard/UnauthorisedView/index.js +108 -14
  65. package/dist/esm/view/InlineCard/common/action-button/index.compiled.css +4 -7
  66. package/dist/esm/view/InlineCard/common/action-button/index.js +21 -3
  67. package/dist/esm/view/LinkUrl/index.js +1 -1
  68. package/dist/types/messages.d.ts +1 -1
  69. package/dist/types/state/services/current-site-cloud-id/index.d.ts +1 -1
  70. package/dist/types/view/InlineCard/UnauthorisedView/index.d.ts +1 -1
  71. package/dist/types/view/InlineCard/common/action-button/index.d.ts +7 -0
  72. package/dist/types-ts4.5/messages.d.ts +1 -1
  73. package/dist/types-ts4.5/state/services/current-site-cloud-id/index.d.ts +1 -1
  74. package/dist/types-ts4.5/view/InlineCard/UnauthorisedView/index.d.ts +1 -1
  75. package/dist/types-ts4.5/view/InlineCard/common/action-button/index.d.ts +7 -0
  76. package/package.json +6 -3
@@ -5,6 +5,7 @@ import React, { useCallback } from 'react';
5
5
  import { FormattedMessage } from 'react-intl';
6
6
  import AiIcon from '@atlaskit/icon/core/atlassian-intelligence';
7
7
  import { fg } from '@atlaskit/platform-feature-flags';
8
+ import { expValEqualsNoExposure } from '@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure';
8
9
  import { useAnalyticsEvents } from '../../../../../common/analytics/generated/use-analytics-events';
9
10
  import { messages } from '../../../../../messages';
10
11
  import Action from '../action';
@@ -40,7 +41,7 @@ export function AISummariseAction(_ref) {
40
41
  spacing: "spacious",
41
42
  color: "currentColor",
42
43
  label: "Summarise with AI"
43
- }, fg('platform_sl_3p_auth_rovo_action_kill_switch') || fg('platform_sl_3p_auth_rovo_block_card_kill_switch') ? {
44
+ }, fg('platform_sl_3p_auth_rovo_action_kill_switch') || fg('platform_sl_3p_auth_rovo_block_card_kill_switch') || expValEqualsNoExposure('rovogrowth-640-inline-action-nudge-exp', 'isEnabled', true) ? {
44
45
  size: props.iconSize
45
46
  } : {})),
46
47
  onClick: handleActionClick,
@@ -2,6 +2,7 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import React, { useEffect } from 'react';
3
3
  import { di } from 'react-magnetic-di';
4
4
  import { fg } from '@atlaskit/platform-feature-flags';
5
+ import { expValEqualsNoExposure } from '@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure';
5
6
  import useAISummaryAction from '../../../../../state/hooks/use-ai-summary-action';
6
7
  import { AISummariseAction } from './ai-summarise-action';
7
8
  import { CopySummaryAction, CopySummaryActionNew } from './copy-summary-action';
@@ -18,7 +19,7 @@ export var AISummaryActionComponent = function AISummaryActionComponent(props) {
18
19
  useEffect(function () {
19
20
  onLoadingChange === null || onLoadingChange === void 0 || onLoadingChange(status === 'loading');
20
21
  }, [onLoadingChange, status]);
21
- return status === 'done' ? fg('platform_sl_3p_auth_rovo_action_kill_switch') ? /*#__PURE__*/React.createElement(CopySummaryActionNew, _extends({}, props, {
22
+ return status === 'done' ? fg('platform_sl_3p_auth_rovo_action_kill_switch') || expValEqualsNoExposure('rovogrowth-640-inline-action-nudge-exp', 'isEnabled', true) ? /*#__PURE__*/React.createElement(CopySummaryActionNew, _extends({}, props, {
22
23
  summary: content,
23
24
  testId: testId
24
25
  })) : /*#__PURE__*/React.createElement(CopySummaryAction, _extends({}, props, {
@@ -4,6 +4,7 @@ import { FormattedMessage, useIntl } from 'react-intl';
4
4
  import AutomationIcon from '@atlaskit/icon/core/automation';
5
5
  import { fg } from '@atlaskit/platform-feature-flags';
6
6
  import { Text } from '@atlaskit/primitives/compiled';
7
+ import { expValEqualsNoExposure } from '@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure';
7
8
  import { useAnalyticsEvents } from '../../../../../common/analytics/generated/use-analytics-events';
8
9
  import { ActionName } from '../../../../../constants';
9
10
  import { messages } from '../../../../../messages';
@@ -75,7 +76,7 @@ var AutomationAction = function AutomationAction(props) {
75
76
  spacing: "spacious",
76
77
  color: "currentColor",
77
78
  label: automationActionIconLabel
78
- }, fg('platform_sl_3p_auth_rovo_action_kill_switch') || fg('platform_sl_3p_auth_rovo_block_card_kill_switch') ? {
79
+ }, fg('platform_sl_3p_auth_rovo_action_kill_switch') || fg('platform_sl_3p_auth_rovo_block_card_kill_switch') || expValEqualsNoExposure('rovogrowth-640-inline-action-nudge-exp', 'isEnabled', true) ? {
79
80
  size: props.iconSize
80
81
  } : {})),
81
82
  testId: "smart-action-automation-action",
@@ -11,6 +11,7 @@ import React, { useCallback, useState } from 'react';
11
11
  import { FormattedMessage } from 'react-intl';
12
12
  import LinkIcon from '@atlaskit/icon/core/link';
13
13
  import { fg } from '@atlaskit/platform-feature-flags';
14
+ import { expValEqualsNoExposure } from '@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure';
14
15
  import { ActionName } from '../../../../../constants';
15
16
  import { messages } from '../../../../../messages';
16
17
  import { useFlexibleUiContext } from '../../../../../state/flexible-ui-context';
@@ -61,7 +62,7 @@ var CopyLinkAction = function CopyLinkAction(_ref) {
61
62
  color: "currentColor",
62
63
  label: fg('navx-3698-flexible-card-a11y-fix') ? '' : 'copy url',
63
64
  spacing: "spacious"
64
- }, fg('platform_sl_3p_auth_rovo_action_kill_switch') || fg('platform_sl_3p_auth_rovo_block_card_kill_switch') ? {
65
+ }, fg('platform_sl_3p_auth_rovo_action_kill_switch') || fg('platform_sl_3p_auth_rovo_block_card_kill_switch') || expValEqualsNoExposure('rovogrowth-640-inline-action-nudge-exp', 'isEnabled', true) ? {
65
66
  size: props.iconSize
66
67
  } : {})),
67
68
  onClick: onClick,
@@ -5,6 +5,7 @@ import React from 'react';
5
5
  import { FormattedMessage, useIntl } from 'react-intl';
6
6
  import FeatureGates from '@atlaskit/feature-gate-js-client';
7
7
  import { fg } from '@atlaskit/platform-feature-flags';
8
+ import { expValEqualsNoExposure } from '@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure';
8
9
  import { ActionName } from '../../../../../constants';
9
10
  import { messages } from '../../../../../messages';
10
11
  import { useFlexibleUiContext } from '../../../../../state/flexible-ui-context';
@@ -73,7 +74,7 @@ var FollowAction = function FollowAction(props) {
73
74
  };
74
75
  return /*#__PURE__*/React.createElement(ServerAction, _extends({
75
76
  content: /*#__PURE__*/React.createElement(FormattedMessage, label)
76
- }, fg('platform_sl_3p_auth_rovo_action_kill_switch') ? {
77
+ }, fg('platform_sl_3p_auth_rovo_action_kill_switch') || expValEqualsNoExposure('rovogrowth-640-inline-action-nudge-exp', 'isEnabled', true) ? {
77
78
  ariaLabel: intl.formatMessage(label)
78
79
  } : {}, {
79
80
  icon: followIcon,
@@ -7,6 +7,7 @@ import MediaServicesActualSizeIcon from '@atlaskit/icon/core/grow-diagonal';
7
7
  import PanelRightIcon from '@atlaskit/icon/core/panel-right';
8
8
  import { fg } from '@atlaskit/platform-feature-flags';
9
9
  import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
10
+ import { expValEqualsNoExposure } from '@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure';
10
11
  import { ActionName } from '../../../../../constants';
11
12
  import { messages } from '../../../../../messages';
12
13
  import { useFlexibleUiContext } from '../../../../../state/flexible-ui-context';
@@ -35,7 +36,7 @@ var PreviewAction = function PreviewAction(_ref) {
35
36
  color: "currentColor",
36
37
  spacing: "spacious",
37
38
  label: fg('navx-3698-flexible-card-a11y-fix') ? '' : 'Open preview panel'
38
- }, fg('platform_sl_3p_auth_rovo_action_kill_switch') || fg('platform_sl_3p_auth_rovo_block_card_kill_switch') ? {
39
+ }, fg('platform_sl_3p_auth_rovo_action_kill_switch') || fg('platform_sl_3p_auth_rovo_block_card_kill_switch') || expValEqualsNoExposure('rovogrowth-640-inline-action-nudge-exp', 'isEnabled', true) ? {
39
40
  size: props.iconSize
40
41
  } : {}));
41
42
  }
@@ -43,7 +44,7 @@ var PreviewAction = function PreviewAction(_ref) {
43
44
  color: "currentColor",
44
45
  spacing: "spacious",
45
46
  label: fg('navx-3698-flexible-card-a11y-fix') ? '' : 'Open preview'
46
- }, fg('platform_sl_3p_auth_rovo_action_kill_switch') || fg('platform_sl_3p_auth_rovo_block_card_kill_switch') ? {
47
+ }, fg('platform_sl_3p_auth_rovo_action_kill_switch') || fg('platform_sl_3p_auth_rovo_block_card_kill_switch') || expValEqualsNoExposure('rovogrowth-640-inline-action-nudge-exp', 'isEnabled', true) ? {
47
48
  size: props.iconSize
48
49
  } : {}));
49
50
  }, [hasPreviewPanel, props.iconSize]);
@@ -4,6 +4,7 @@ var _excluded = ["onClick"];
4
4
  import React, { lazy, useCallback } from 'react';
5
5
  import { FormattedMessage } from 'react-intl';
6
6
  import { fg } from '@atlaskit/platform-feature-flags';
7
+ import { expValEqualsNoExposure } from '@atlaskit/tmp-editor-statsig/exp-val-equals-no-exposure';
7
8
  import { useAnalyticsEvents } from '../../../../../common/analytics/generated/use-analytics-events';
8
9
  import { messages } from '../../../../../messages';
9
10
  import { useFlexibleUiContext } from '../../../../../state/flexible-ui-context';
@@ -38,10 +39,10 @@ var ViewRelatedLinksAction = function ViewRelatedLinksAction(_ref) {
38
39
  }, [actionData === null || actionData === void 0 ? void 0 : actionData.ari, fireEvent, modal, onClickCallback]);
39
40
  return actionData ? /*#__PURE__*/React.createElement(Action, _extends({
40
41
  content: /*#__PURE__*/React.createElement(FormattedMessage, messages.related_links_view_related_links)
41
- }, fg('platform_sl_3p_auth_rovo_action_kill_switch') ? {
42
+ }, fg('platform_sl_3p_auth_rovo_action_kill_switch') || expValEqualsNoExposure('rovogrowth-640-inline-action-nudge-exp', 'isEnabled', true) ? {
42
43
  tooltipMessage: /*#__PURE__*/React.createElement(FormattedMessage, messages.related_links_view_related_links)
43
44
  } : {}, {
44
- icon: /*#__PURE__*/React.createElement(RelatedLinksActionIcon, fg('platform_sl_3p_auth_rovo_action_kill_switch') ? {
45
+ icon: /*#__PURE__*/React.createElement(RelatedLinksActionIcon, fg('platform_sl_3p_auth_rovo_action_kill_switch') || expValEqualsNoExposure('rovogrowth-640-inline-action-nudge-exp', 'isEnabled', true) ? {
45
46
  iconSize: props.iconSize
46
47
  } : {}),
47
48
  onClick: onClick,
@@ -0,0 +1,21 @@
1
+
2
+ ._2rko12b0{border-radius:var(--ds-radius-small,4px)}._18m915vq{overflow-y:hidden}
3
+ ._19bv12x7{padding-left:var(--ds-space-075,6px)}
4
+ ._1bto1l2s{text-overflow:ellipsis}
5
+ ._1e0c116y{display:inline-flex}
6
+ ._1e0c1nu9{display:inline}
7
+ ._1reo15vq{overflow-x:hidden}
8
+ ._1wybtjj4{font-size:.8em}
9
+ ._2hwx1b66{margin-right:var(--ds-space-050,4px)}
10
+ ._4cvr1h6o{align-items:center}
11
+ ._bfhk1dpa{background-color:var(--ds-background-neutral-subtle-hovered,#0515240f)}
12
+ ._ca0qv77o{padding-top:var(--ds-space-025,2px)}
13
+ ._k48pwu06{font-weight:var(--ds-font-weight-bold,653)}
14
+ ._n3tdv77o{padding-bottom:var(--ds-space-025,2px)}
15
+ ._o5721q9c{white-space:nowrap}
16
+ ._p12f1osq{max-width:100%}
17
+ ._s7n4t94y{vertical-align:1px}
18
+ ._syazazsu{color:var(--ds-text-subtle,#505258)}
19
+ ._u5f312x7{padding-right:var(--ds-space-075,6px)}
20
+ ._vchhusvi{box-sizing:border-box}
21
+ ._y3gn18uv{text-align:initial}
@@ -1,11 +1,17 @@
1
1
  /* index.tsx generated by @compiled/babel-plugin v0.39.1 */
2
2
  import _extends from "@babel/runtime/helpers/extends";
3
+ import "./index.compiled.css";
3
4
  import { ax, ix } from "@compiled/react/runtime";
4
5
  import React from 'react';
5
6
  import { FormattedMessage } from 'react-intl';
7
+ import { di } from 'react-magnetic-di';
6
8
  import LockLockedIcon from '@atlaskit/icon/core/lock-locked';
9
+ import { fg } from '@atlaskit/platform-feature-flags';
10
+ import { Box } from '@atlaskit/primitives/compiled';
11
+ import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals';
7
12
  import { useAnalyticsEvents } from '../../../common/analytics/generated/use-analytics-events';
8
13
  import { messages } from '../../../messages';
14
+ import { getCachedProviderPctMapAndRefresh } from '../../../state/services/personalization';
9
15
  import { HoverCard } from '../../HoverCard';
10
16
  import { ActionButton } from '../common/action-button';
11
17
  import { Frame } from '../Frame';
@@ -16,22 +22,105 @@ var fallbackUnauthorizedIcon = function fallbackUnauthorizedIcon() {
16
22
  label: "error"
17
23
  });
18
24
  };
19
- export var InlineCardUnauthorizedView = function InlineCardUnauthorizedView(_ref) {
20
- var url = _ref.url,
21
- id = _ref.id,
22
- icon = _ref.icon,
23
- onAuthorise = _ref.onAuthorise,
24
- onClick = _ref.onClick,
25
- isSelected = _ref.isSelected,
26
- _ref$testId = _ref.testId,
27
- testId = _ref$testId === void 0 ? 'inline-card-unauthorized-view' : _ref$testId,
28
- _ref$showHoverPreview = _ref.showHoverPreview,
29
- showHoverPreview = _ref$showHoverPreview === void 0 ? false : _ref$showHoverPreview,
30
- truncateInline = _ref.truncateInline,
31
- context = _ref.context;
25
+
26
+ /**
27
+ * When persisted personalization adoption from {@link getCachedProviderPctMapAndRefresh} is strictly below this value,
28
+ * the pill uses exploratory "previewing" copy instead of a percentage headline.
29
+ */
30
+ var SOCIAL_PROOF_TEAM_PREVIEW_THRESHOLD = 30;
31
+ var SOCIAL_PROOF_TRAIT_NAME = 'sl_3p_connected_providers_site_pct';
32
+ var socialProofPillStyles = {
33
+ strong: "_k48pwu06",
34
+ inlineContainer: "_1e0c116y _4cvr1h6o",
35
+ root: "_2rko12b0 _1e0c1nu9 _4cvr1h6o _vchhusvi _p12f1osq _bfhk1dpa _syazazsu _y3gn18uv _1wybtjj4 _s7n4t94y _ca0qv77o _n3tdv77o _u5f312x7 _19bv12x7 _2hwx1b66",
36
+ label: "_1reo15vq _18m915vq _1bto1l2s _o5721q9c"
37
+ };
38
+
39
+ /**
40
+ * Renders the social-proof pill and Connect button using persisted percentages only ({@link getCachedProviderPctMapAndRefresh}) — no
41
+ * loading skeleton; either the cached percentage is shown or the legacy long connect label is used.
42
+ *
43
+ * Only mounted when the parent has passed the killswitch and
44
+ * `platform_sl_3p_preauth_social_proof_inline_cta`. See platform docs: `rules-of-hooks.md` "Should §1".
45
+ */
46
+ var UnauthorisedConnectWithSocialProof = function UnauthorisedConnectWithSocialProof(_ref) {
47
+ var _context$trim;
48
+ var context = _ref.context,
49
+ extensionKey = _ref.extensionKey,
50
+ testId = _ref.testId,
51
+ onConnectClick = _ref.onConnectClick;
52
+ // TODO We need to decide what should we do with FedRAMP. It will not work there (_edge/tenant_info is not available) but so maybe
53
+ // we can just leave it like that and whole feature won't trigger befcause of that.
54
+ var providerPctMap = getCachedProviderPctMapAndRefresh(SOCIAL_PROOF_TRAIT_NAME);
55
+ var connectedPct = extensionKey && providerPctMap ? providerPctMap[extensionKey] : undefined;
56
+ var isEnabled = true;
57
+ var trimmedProviderDisplayName = (_context$trim = context === null || context === void 0 ? void 0 : context.trim()) !== null && _context$trim !== void 0 ? _context$trim : '';
58
+ var hasProviderDisplayName = trimmedProviderDisplayName.length > 0;
59
+ var isSocialProofUsageHighEnough = connectedPct !== undefined && connectedPct >= SOCIAL_PROOF_TEAM_PREVIEW_THRESHOLD;
60
+
61
+ /**
62
+ * Persisted personalization is required. Below {@link SOCIAL_PROOF_TEAM_PREVIEW_THRESHOLD} adoption we also require
63
+ * a provider display name; otherwise omit the pill and use the legacy long connect treatment.
64
+ */
65
+ var showSocialProofPill = isEnabled && connectedPct !== undefined && (isSocialProofUsageHighEnough || hasProviderDisplayName);
66
+ var bold = function bold(chunks) {
67
+ return /*#__PURE__*/React.createElement(Box, {
68
+ as: "strong",
69
+ xcss: socialProofPillStyles.strong
70
+ }, chunks);
71
+ };
72
+ var socialProofPillContent = isSocialProofUsageHighEnough ? hasProviderDisplayName ? /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, messages.social_proof_inline_cta_tag_high_with_context, {
73
+ values: {
74
+ connectedPct: connectedPct,
75
+ context: trimmedProviderDisplayName,
76
+ b: bold
77
+ }
78
+ })) : /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, messages.social_proof_inline_cta_tag_high_no_context, {
79
+ values: {
80
+ connectedPct: connectedPct,
81
+ b: bold
82
+ }
83
+ })) : /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, messages.social_proof_inline_cta_tag_low_with_context, {
84
+ values: {
85
+ context: trimmedProviderDisplayName
86
+ }
87
+ }));
88
+ return /*#__PURE__*/React.createElement(React.Fragment, null, showSocialProofPill ? /*#__PURE__*/React.createElement(Box, {
89
+ as: "span",
90
+ xcss: socialProofPillStyles.root,
91
+ testId: "".concat(testId, "-social-proof-tag")
92
+ }, /*#__PURE__*/React.createElement(Box, {
93
+ as: "span",
94
+ xcss: socialProofPillStyles.label
95
+ }, socialProofPillContent)) : null, /*#__PURE__*/React.createElement(ActionButton, {
96
+ onClick: onConnectClick,
97
+ viewType: "unauthorised",
98
+ testId: "button-connect-account",
99
+ isSocialProofInlineUnauthorisedConnect: showSocialProofPill
100
+ }, showSocialProofPill ? /*#__PURE__*/React.createElement(FormattedMessage, messages.connect_inline_social_proof) : /*#__PURE__*/React.createElement(FormattedMessage, _extends({}, messages.connect_link_account_card_name, {
101
+ values: {
102
+ context: context
103
+ }
104
+ }))));
105
+ };
106
+ export var InlineCardUnauthorizedView = function InlineCardUnauthorizedView(_ref2) {
107
+ var url = _ref2.url,
108
+ id = _ref2.id,
109
+ icon = _ref2.icon,
110
+ onAuthorise = _ref2.onAuthorise,
111
+ onClick = _ref2.onClick,
112
+ isSelected = _ref2.isSelected,
113
+ _ref2$testId = _ref2.testId,
114
+ testId = _ref2$testId === void 0 ? 'inline-card-unauthorized-view' : _ref2$testId,
115
+ _ref2$showHoverPrevie = _ref2.showHoverPreview,
116
+ showHoverPreview = _ref2$showHoverPrevie === void 0 ? false : _ref2$showHoverPrevie,
117
+ truncateInline = _ref2.truncateInline,
118
+ context = _ref2.context,
119
+ extensionKey = _ref2.extensionKey;
32
120
  var frameRef = React.useRef(null);
33
121
  var _useAnalyticsEvents = useAnalyticsEvents(),
34
122
  fireEvent = _useAnalyticsEvents.fireEvent;
123
+ var isSocialProofInlineCtaEnabled = onAuthorise && fg('platform_sl_3p_preauth_soc_proof_inline_killswitch') && expValEquals('platform_sl_3p_preauth_social_proof_inline_cta', 'isEnabled', true);
35
124
  var handleConnectAccount = React.useCallback(function (event) {
36
125
  event.preventDefault();
37
126
  event.stopPropagation();
@@ -63,7 +152,12 @@ export var InlineCardUnauthorizedView = function InlineCardUnauthorizedView(_ref
63
152
  link: url,
64
153
  onClick: onClick,
65
154
  titleColor: "var(--ds-text-subtle, #505258)"
66
- }), onAuthorise && renderActionButton());
155
+ }), onAuthorise && (isSocialProofInlineCtaEnabled ? /*#__PURE__*/React.createElement(UnauthorisedConnectWithSocialProof, {
156
+ context: context,
157
+ extensionKey: extensionKey,
158
+ testId: testId,
159
+ onConnectClick: handleConnectAccount
160
+ }) : renderActionButton()));
67
161
  if (onAuthorise && showHoverPreview) {
68
162
  return /*#__PURE__*/React.createElement(HoverCard, {
69
163
  url: url,
@@ -1,17 +1,16 @@
1
1
 
2
- ._1s7zia51{border-right:var(--ds-border-width,1px) solid var(--ds-border,#0b120e24)}
3
- ._n7zlia51{border-bottom:var(--ds-border-width,1px) solid var(--ds-border,#0b120e24)}
4
- ._x3doia51{border-top:var(--ds-border-width,1px) solid var(--ds-border,#0b120e24)}._13liidpf{border-top-left-radius:0}
5
- ._13lilb4i{border-top-left-radius:var(--ds-radius-xsmall,2px)}
2
+ ._2rko12b0{border-radius:var(--ds-radius-small,4px)}._13lilb4i{border-top-left-radius:var(--ds-radius-xsmall,2px)}
6
3
  ._16d9qvcn{-webkit-box-decoration-break:clone;box-decoration-break:clone}
7
4
  ._19bv12x7{padding-left:var(--ds-space-075,6px)}
8
5
  ._1e0c1bgi{display:contents}
9
6
  ._1e0c1nu9{display:inline}
10
7
  ._1nmz9jpi{word-break:break-all}
11
8
  ._1o0zlb4i{border-bottom-right-radius:var(--ds-radius-xsmall,2px)}
9
+ ._1wybtjj4{font-size:.8em}
12
10
  ._1y1m1u8q{background-clip:padding-box}
13
11
  ._2hwxt94y{margin-right:1px}
14
12
  ._2hwxv77o{margin-right:var(--ds-space-025,2px)}
13
+ ._4cvr1h6o{align-items:center}
15
14
  ._80om13gf{cursor:not-allowed}
16
15
  ._80omtlke{cursor:pointer}
17
16
  ._bfhkby5v{background-color:var(--ds-background-disabled,#17171708)}
@@ -21,19 +20,17 @@
21
20
  ._ca0qv77o{padding-top:var(--ds-space-025,2px)}
22
21
  ._k48p1wq8{font-weight:var(--ds-font-weight-medium,500)}
23
22
  ._k48pi7a9{font-weight:var(--ds-font-weight-regular,400)}
24
- ._mrkbidpf{border-bottom-left-radius:0}
25
23
  ._mrkblb4i{border-bottom-left-radius:var(--ds-radius-xsmall,2px)}
26
24
  ._n3tdt94y{padding-bottom:1px}
27
25
  ._n3tdv77o{padding-bottom:var(--ds-space-025,2px)}
28
26
  ._o5721btx{white-space:break-spaces}
29
- ._o5721q9c{white-space:nowrap}
30
27
  ._qrwqlb4i{border-top-right-radius:var(--ds-radius-xsmall,2px)}
28
+ ._s7n4t94y{vertical-align:1px}
31
29
  ._syaz15cr{color:var(--ds-text-inverse,#fff)}
32
30
  ._syaz1gmx{color:var(--ds-text-disabled,#080f214a)}
33
31
  ._syazi7uo{color:var(--ds-text,#292a2e)}
34
32
  ._u5f312x7{padding-right:var(--ds-space-075,6px)}
35
33
  ._y3gn18uv{text-align:initial}
36
- ._4cvxq98m:hover{border-color:var(--ds-border-selected,#1868db)}
37
34
  ._irr31q28:hover{background-color:var(--ds-background-selected-bold-hovered,#1558bc)}
38
35
  ._irr3plhp:hover{background-color:var(--ds-background-neutral-hovered,#0b120e24)}
39
36
  ._1di612kk:active{background-color:var(--ds-background-selected-bold-pressed,#123263)}
@@ -1,20 +1,24 @@
1
1
  /* index.tsx generated by @compiled/babel-plugin v0.39.1 */
2
2
  import _extends from "@babel/runtime/helpers/extends";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
- var _excluded = ["children", "isDisabled", "viewType"];
4
+ var _excluded = ["children", "isDisabled", "viewType", "isSocialProofInlineUnauthorisedConnect"];
5
5
  import "./index.compiled.css";
6
6
  import * as React from 'react';
7
7
  import { ax, ix } from "@compiled/react/runtime";
8
8
  import { forwardRef } from 'react';
9
+ import { fg } from '@atlaskit/platform-feature-flags';
9
10
  import { Pressable } from '@atlaskit/primitives/compiled';
10
11
  var styles = {
11
12
  button: "_1e0c1bgi",
12
13
  innerContainer: "_1e0c1nu9 _1y1m1u8q _16d9qvcn _k48p1wq8 _19bv12x7 _ca0qv77o _n3tdv77o _u5f312x7 _y3gn18uv _o5721btx _1nmz9jpi",
14
+ innerContainerSocialProofConnect: "_2rko12b0 _syaz15cr _80omtlke _bfhkjmqp _2hwxv77o _1e0c1nu9 _4cvr1h6o _1wybtjj4 _1y1m1u8q _16d9qvcn _19bv12x7 _ca0qv77o _n3tdv77o _u5f312x7 _y3gn18uv _s7n4t94y _o5721btx _1nmz9jpi _irr31q28 _1di612kk",
13
15
  enabled: "_syazi7uo _80omtlke _bfhki8nm _irr3plhp _1di61gdz",
14
16
  disabled: "_syaz1gmx _80om13gf _bfhkby5v",
15
- unauthorised: "_syaz15cr _80omtlke _bfhkjmqp _qrwqlb4i _1o0zlb4i _13lilb4i _mrkblb4i _ca0qt94y _n3tdt94y _2hwxt94y _k48pi7a9 _irr31q28 _1di612kk",
16
- action: "_x3doia51 _1s7zia51 _n7zlia51 _syaz15cr _80omtlke _bfhkjmqp _qrwqlb4i _1o0zlb4i _13liidpf _mrkbidpf _2hwxv77o _k48pi7a9 _o5721q9c _4cvxq98m _irr31q28 _1di612kk"
17
+ unauthorised: "_syaz15cr _80omtlke _bfhkjmqp _qrwqlb4i _1o0zlb4i _13lilb4i _mrkblb4i _ca0qt94y _n3tdt94y _2hwxt94y _k48pi7a9 _irr31q28 _1di612kk"
17
18
  };
19
+
20
+ /* eslint-enable @compiled/shorthand-property-sorting */
21
+
18
22
  /**
19
23
  * Action button has to be a span for the overflow to work correctly
20
24
  */
@@ -23,7 +27,21 @@ export var ActionButton = /*#__PURE__*/forwardRef(function (_ref, ref) {
23
27
  isDisabled = _ref.isDisabled,
24
28
  _ref$viewType = _ref.viewType,
25
29
  viewType = _ref$viewType === void 0 ? 'default' : _ref$viewType,
30
+ _ref$isSocialProofInl = _ref.isSocialProofInlineUnauthorisedConnect,
31
+ isSocialProofInlineUnauthorisedConnect = _ref$isSocialProofInl === void 0 ? false : _ref$isSocialProofInl,
26
32
  props = _objectWithoutProperties(_ref, _excluded);
33
+ var shouldUseSocialProofConnect = isSocialProofInlineUnauthorisedConnect && viewType === 'unauthorised' && fg('platform_sl_3p_preauth_soc_proof_inline_killswitch');
34
+ if (shouldUseSocialProofConnect && !isDisabled) {
35
+ return /*#__PURE__*/React.createElement(Pressable, _extends({}, props, {
36
+ ref: ref,
37
+ style: {
38
+ font: "inherit"
39
+ },
40
+ xcss: styles.button
41
+ }), /*#__PURE__*/React.createElement("span", {
42
+ className: ax([styles.innerContainerSocialProofConnect])
43
+ }, children));
44
+ }
27
45
  return /*#__PURE__*/React.createElement(Pressable, _extends({}, props, {
28
46
  isDisabled: isDisabled,
29
47
  ref: ref
@@ -15,7 +15,7 @@ import LinkWarningModal from './LinkWarningModal';
15
15
  import { useLinkWarningModal } from './LinkWarningModal/hooks/use-link-warning-modal';
16
16
  var PACKAGE_DATA = {
17
17
  packageName: "@atlaskit/smart-card",
18
- packageVersion: "44.5.2",
18
+ packageVersion: "44.5.4",
19
19
  componentName: 'linkUrl'
20
20
  };
21
21
  var Anchor = withLinkClickedEvent('a');
@@ -1,7 +1,7 @@
1
1
  import { type MessageDescriptor } from 'react-intl';
2
2
  export type RequestAccessMessageKey = 'click_to_join' | 'click_to_join_description' | 'forbidden_description' | 'request_access' | 'request_access_description' | 'request_access_pending' | 'request_access_pending_title' | 'request_access_pending_description' | 'request_denied_description' | 'default_no_access_title' | 'direct_access_title' | 'direct_access_description' | 'direct_access' | 'access_exists_description' | 'not_found_description' | 'not_found_title';
3
3
  export type RovoChatActionMessageKey = 'rovo_prompt_context_generic' | 'rovo_prompt_context_generic_plural' | 'rovo_prompt_context_confluence_page' | 'rovo_prompt_context_confluence_page_short' | 'rovo_prompt_context_jira_work_item' | 'rovo_prompt_context_jira_work_item_short' | 'rovo_prompt_button_recommend_other_sources' | 'rovo_prompt_message_recommend_other_sources' | 'rovo_prompt_button_show_other_mentions' | 'rovo_prompt_message_show_other_mentions' | 'rovo_prompt_button_suggest_improvement' | 'rovo_prompt_message_suggest_improvement' | 'rovo_prompt_message_summarize' | 'rovo_prompt_button_ask_rovo_anything' | 'rovo_prompt_message_ask_rovo_anything' | 'rovo_prompt_button_highlight_relevant_content' | 'rovo_prompt_message_highlight_relevant_content' | 'rovo_prompt_button_identify_key_trends' | 'rovo_prompt_message_identify_key_trends' | 'rovo_prompt_button_identify_key_points' | 'rovo_prompt_message_identify_key_points' | 'rovo_prompt_button_find_open_questions' | 'rovo_prompt_message_find_open_questions' | 'rovo_prompt_button_key_highlights' | 'rovo_prompt_message_key_highlights';
4
- export type MessageKey = 'assigned_to' | 'ai_summarize' | 'change_status' | 'ai_summarized' | 'ai_summarized_abbreviation' | 'ai_summarized_info' | 'ai_summarized_info_short' | 'ai_summarizing' | 'ai_summary_error_generic' | 'ai_summary_error_acceptable_use_violation' | 'ai_summary_error_hipaa_content_detected' | 'ai_summary_error_exceeding_context_length_error' | 'ai_summary_action' | 'ai_summary_action_description' | 'automation_action_title' | 'automation_action_tooltip' | 'automation_action_icon_label' | 'automation_action_confluence_page_modal_title' | 'automation_action_confluence_page_modal_description' | 'copy_summary_action' | 'copy_summary_action_description' | 'copied_summary_action_description' | 'beta' | 'cannot_find_link' | 'compass_applied_components_count' | 'connect_link_account_card' | 'connect_link_account_card_name' | 'connect_link_account_card_description' | 'connect_unauthorised_account_action' | 'connect_unauthorised_account_description' | 'connect_unauthorised_account_description_no_provider' | 'continue' | 'copy_url_to_clipboard' | 'copied_url_to_clipboard' | 'could_not_load_link' | 'download' | 'download_description' | 'download_file' | 'follow' | 'follow_project_description' | 'follow_project_descriptionGalaxia' | 'follow_project' | 'follow_goal' | 'follow_goal_description' | 'follow_project_error' | 'follow_project_errorGalaxia' | 'follow_goal_error' | 'go_back' | 'invalid_permissions' | 'invalid_permissions_description' | 'join_to_view' | 'connect_link_account' | 'created_by' | 'created_on_relative' | 'created_on_absolute' | 'check_this_link' | 'delete' | 'edit' | 'learn_more_about_smart_links' | 'learn_more_about_connecting_account' | 'loading' | 'link_safety_warning_message' | 'modified_by' | 'modified_on_relative' | 'modified_on_absolute' | 'more_actions' | 'not_found_title' | 'not_found_description' | 'open_issue_in_jira' | 'open_link_in_a_new_tab' | 'owned_by' | 'owned_by_override' | 'preview_description' | 'preview_improved' | 'preview_modal' | 'preview_panel' | 'preview_close' | 'preview_max_size' | 'preview_min_size' | 'priority_blocker' | 'priority_critical' | 'priority_high' | 'priority_highest' | 'priority_low' | 'priority_lowest' | 'priority_major' | 'priority_medium' | 'priority_minor' | 'priority_trivial' | 'priority_undefined' | 'forbidden_access' | 'pending_request' | 'read_time' | 'restricted_link' | 'request_access_to_view' | 'request_denied' | 'sent_on_relative' | 'sent_on_absolute' | 'status_change_load_error' | 'status_change_permission_error' | 'status_change_update_error' | 'try_again' | 'try_another_account' | 'unauthorised_account_description' | 'unauthorised_account_description_no_provider' | 'unauthorised_account_name' | 'unauthorised_account_name_no_provider' | 'rovo_actions_explore' | 'unassigned' | 'unfollow' | 'unfollow_project_description' | 'unfollow_project_descriptionGalaxia' | 'unfollow_project' | 'unfollow_project_error' | 'unfollow_project_errorGalaxia' | 'unfollow_goal' | 'unfollow_goal_description' | 'unfollow_goal_error' | 'user_attributes' | 'view' | 'viewIn' | 'viewOriginal' | 'actions' | 'add_account' | 'cancel' | 'close' | 'connect_to' | 'connect_account_description' | 'retry' | 'save' | 'unlink_account' | RequestAccessMessageKey | 'related' | 'generic_error_message' | 'related_links_modal_error_title' | 'related_links_modal_error_description' | 'related_links_modal_unavailable_title' | 'related_links_modal_unavailable_description' | 'related_links_modal_title' | 'related_links_view_related_urls' | 'related_links_view_related_links' | 'related_links_found_in' | 'related_links_includes_links_to' | 'related_links_not_found' | 'join_to_viewIssueTermRefresh' | 'open_issue_in_jiraIssueTermRefresh' | 'request_access_to_viewIssueTermRefresh' | 'team_members_count' | 'status_change_permission_errorIssueTermRefresh' | 'connect_unauthorised_account_description_appify' | 'connect_unauthorised_account_description_no_provider_appify' | 'learn_more_about_connecting_account_experiment_shorter' | 'learn_more_about_connecting_account_appify' | 'rovo_summary_loading' | 'ai_disclaimer' | 'rovo_unauthorised_title' | 'rovo_unauthorised_title_no_provider' | 'rovo_unauthorised_feature_clear_link_names' | 'rovo_unauthorised_feature_understand_linked_docs' | 'rovo_unauthorised_feature_go_deeper_smart_suggestions' | 'rovo_unauthorised_connect_account' | 'rovo_unauthorised_not_now' | 'rovo_chat_action_section_header' | 'rovo_prompt_button_summarize_this' | 'rovo_prompt_button_ask_a_specific_question' | 'rovo_prompt_button_show_me_whats_relevant' | RovoChatActionMessageKey;
4
+ export type MessageKey = 'assigned_to' | 'ai_summarize' | 'change_status' | 'ai_summarized' | 'ai_summarized_abbreviation' | 'ai_summarized_info' | 'ai_summarized_info_short' | 'ai_summarizing' | 'ai_summary_error_generic' | 'ai_summary_error_acceptable_use_violation' | 'ai_summary_error_hipaa_content_detected' | 'ai_summary_error_exceeding_context_length_error' | 'ai_summary_action' | 'ai_summary_action_description' | 'automation_action_title' | 'automation_action_tooltip' | 'automation_action_icon_label' | 'automation_action_confluence_page_modal_title' | 'automation_action_confluence_page_modal_description' | 'copy_summary_action' | 'copy_summary_action_description' | 'copied_summary_action_description' | 'beta' | 'cannot_find_link' | 'compass_applied_components_count' | 'connect_link_account_card' | 'connect_link_account_card_name' | 'connect_link_account_card_description' | 'connect_unauthorised_account_action' | 'connect_inline_social_proof' | 'social_proof_inline_cta_tag_high_with_context' | 'social_proof_inline_cta_tag_high_no_context' | 'social_proof_inline_cta_tag_low_with_context' | 'connect_unauthorised_account_description' | 'connect_unauthorised_account_description_no_provider' | 'continue' | 'copy_url_to_clipboard' | 'copied_url_to_clipboard' | 'could_not_load_link' | 'download' | 'download_description' | 'download_file' | 'follow' | 'follow_project_description' | 'follow_project_descriptionGalaxia' | 'follow_project' | 'follow_goal' | 'follow_goal_description' | 'follow_project_error' | 'follow_project_errorGalaxia' | 'follow_goal_error' | 'go_back' | 'invalid_permissions' | 'invalid_permissions_description' | 'join_to_view' | 'connect_link_account' | 'created_by' | 'created_on_relative' | 'created_on_absolute' | 'check_this_link' | 'delete' | 'edit' | 'learn_more_about_smart_links' | 'learn_more_about_connecting_account' | 'loading' | 'link_safety_warning_message' | 'modified_by' | 'modified_on_relative' | 'modified_on_absolute' | 'more_actions' | 'not_found_title' | 'not_found_description' | 'open_issue_in_jira' | 'open_link_in_a_new_tab' | 'owned_by' | 'owned_by_override' | 'preview_description' | 'preview_improved' | 'preview_modal' | 'preview_panel' | 'preview_close' | 'preview_max_size' | 'preview_min_size' | 'priority_blocker' | 'priority_critical' | 'priority_high' | 'priority_highest' | 'priority_low' | 'priority_lowest' | 'priority_major' | 'priority_medium' | 'priority_minor' | 'priority_trivial' | 'priority_undefined' | 'forbidden_access' | 'pending_request' | 'read_time' | 'restricted_link' | 'request_access_to_view' | 'request_denied' | 'sent_on_relative' | 'sent_on_absolute' | 'status_change_load_error' | 'status_change_permission_error' | 'status_change_update_error' | 'try_again' | 'try_another_account' | 'unauthorised_account_description' | 'unauthorised_account_description_no_provider' | 'unauthorised_account_name' | 'unauthorised_account_name_no_provider' | 'rovo_actions_explore' | 'unassigned' | 'unfollow' | 'unfollow_project_description' | 'unfollow_project_descriptionGalaxia' | 'unfollow_project' | 'unfollow_project_error' | 'unfollow_project_errorGalaxia' | 'unfollow_goal' | 'unfollow_goal_description' | 'unfollow_goal_error' | 'user_attributes' | 'view' | 'viewIn' | 'viewOriginal' | 'actions' | 'add_account' | 'cancel' | 'close' | 'connect_to' | 'connect_account_description' | 'retry' | 'save' | 'unlink_account' | RequestAccessMessageKey | 'related' | 'generic_error_message' | 'related_links_modal_error_title' | 'related_links_modal_error_description' | 'related_links_modal_unavailable_title' | 'related_links_modal_unavailable_description' | 'related_links_modal_title' | 'related_links_view_related_urls' | 'related_links_view_related_links' | 'related_links_found_in' | 'related_links_includes_links_to' | 'related_links_not_found' | 'join_to_viewIssueTermRefresh' | 'open_issue_in_jiraIssueTermRefresh' | 'request_access_to_viewIssueTermRefresh' | 'team_members_count' | 'status_change_permission_errorIssueTermRefresh' | 'connect_unauthorised_account_description_appify' | 'connect_unauthorised_account_description_no_provider_appify' | 'learn_more_about_connecting_account_experiment_shorter' | 'learn_more_about_connecting_account_appify' | 'rovo_summary_loading' | 'ai_disclaimer' | 'rovo_unauthorised_title' | 'rovo_unauthorised_title_no_provider' | 'rovo_unauthorised_feature_clear_link_names' | 'rovo_unauthorised_feature_understand_linked_docs' | 'rovo_unauthorised_feature_go_deeper_smart_suggestions' | 'rovo_unauthorised_connect_account' | 'rovo_unauthorised_not_now' | 'rovo_chat_action_section_header' | 'rovo_prompt_button_summarize_this' | 'rovo_prompt_button_ask_a_specific_question' | 'rovo_prompt_button_show_me_whats_relevant' | RovoChatActionMessageKey;
5
5
  type Messages = {
6
6
  [K in MessageKey]: MessageDescriptor;
7
7
  };
@@ -27,7 +27,7 @@ export declare class CurrentSiteCloudIdService {
27
27
  * On network success with no cloud id, or on failure: falls back via {@link readStoredCloudId}.
28
28
  */
29
29
  get(baseUriWithNoTrailingSlash?: string): Promise<string | undefined>;
30
- /** Clears the session pin so the next {@link get} may run `tenant_info` again (e.g. tests). */
30
+ /** Clears session pin and persisted storage so the next {@link get} is a fresh tenant_info fetch. */
31
31
  clearCache(): void;
32
32
  }
33
33
  export declare const currentSiteCloudIdService: CurrentSiteCloudIdService;
@@ -27,4 +27,4 @@ export interface InlineCardUnauthorizedViewProps {
27
27
  /** The url to display */
28
28
  url: string;
29
29
  }
30
- export declare const InlineCardUnauthorizedView: ({ url, id, icon, onAuthorise, onClick, isSelected, testId, showHoverPreview, truncateInline, context, }: InlineCardUnauthorizedViewProps) => JSX.Element;
30
+ export declare const InlineCardUnauthorizedView: ({ url, id, icon, onAuthorise, onClick, isSelected, testId, showHoverPreview, truncateInline, context, extensionKey, }: InlineCardUnauthorizedViewProps) => JSX.Element;
@@ -5,6 +5,13 @@
5
5
  import { type ComponentPropsWithRef, type ForwardRefExoticComponent, type RefAttributes } from 'react';
6
6
  import { Pressable } from '@atlaskit/primitives/compiled';
7
7
  type ActionButtonProps = ComponentPropsWithRef<typeof Pressable> & {
8
+ /**
9
+ * When `true` together with `viewType="unauthorised"`, applies the inline social proof CTA
10
+ * connect-button layout (compact type, radius, spacing, flex alignment). Only honored when
11
+ * `platform_sl_3p_preauth_soc_proof_inline_killswitch` is on; when that gate is off, the legacy
12
+ * implementation runs and this prop is ignored.
13
+ */
14
+ isSocialProofInlineUnauthorisedConnect?: boolean;
8
15
  viewType?: 'default' | 'unauthorised' | 'action';
9
16
  };
10
17
  /**
@@ -1,7 +1,7 @@
1
1
  import { type MessageDescriptor } from 'react-intl';
2
2
  export type RequestAccessMessageKey = 'click_to_join' | 'click_to_join_description' | 'forbidden_description' | 'request_access' | 'request_access_description' | 'request_access_pending' | 'request_access_pending_title' | 'request_access_pending_description' | 'request_denied_description' | 'default_no_access_title' | 'direct_access_title' | 'direct_access_description' | 'direct_access' | 'access_exists_description' | 'not_found_description' | 'not_found_title';
3
3
  export type RovoChatActionMessageKey = 'rovo_prompt_context_generic' | 'rovo_prompt_context_generic_plural' | 'rovo_prompt_context_confluence_page' | 'rovo_prompt_context_confluence_page_short' | 'rovo_prompt_context_jira_work_item' | 'rovo_prompt_context_jira_work_item_short' | 'rovo_prompt_button_recommend_other_sources' | 'rovo_prompt_message_recommend_other_sources' | 'rovo_prompt_button_show_other_mentions' | 'rovo_prompt_message_show_other_mentions' | 'rovo_prompt_button_suggest_improvement' | 'rovo_prompt_message_suggest_improvement' | 'rovo_prompt_message_summarize' | 'rovo_prompt_button_ask_rovo_anything' | 'rovo_prompt_message_ask_rovo_anything' | 'rovo_prompt_button_highlight_relevant_content' | 'rovo_prompt_message_highlight_relevant_content' | 'rovo_prompt_button_identify_key_trends' | 'rovo_prompt_message_identify_key_trends' | 'rovo_prompt_button_identify_key_points' | 'rovo_prompt_message_identify_key_points' | 'rovo_prompt_button_find_open_questions' | 'rovo_prompt_message_find_open_questions' | 'rovo_prompt_button_key_highlights' | 'rovo_prompt_message_key_highlights';
4
- export type MessageKey = 'assigned_to' | 'ai_summarize' | 'change_status' | 'ai_summarized' | 'ai_summarized_abbreviation' | 'ai_summarized_info' | 'ai_summarized_info_short' | 'ai_summarizing' | 'ai_summary_error_generic' | 'ai_summary_error_acceptable_use_violation' | 'ai_summary_error_hipaa_content_detected' | 'ai_summary_error_exceeding_context_length_error' | 'ai_summary_action' | 'ai_summary_action_description' | 'automation_action_title' | 'automation_action_tooltip' | 'automation_action_icon_label' | 'automation_action_confluence_page_modal_title' | 'automation_action_confluence_page_modal_description' | 'copy_summary_action' | 'copy_summary_action_description' | 'copied_summary_action_description' | 'beta' | 'cannot_find_link' | 'compass_applied_components_count' | 'connect_link_account_card' | 'connect_link_account_card_name' | 'connect_link_account_card_description' | 'connect_unauthorised_account_action' | 'connect_unauthorised_account_description' | 'connect_unauthorised_account_description_no_provider' | 'continue' | 'copy_url_to_clipboard' | 'copied_url_to_clipboard' | 'could_not_load_link' | 'download' | 'download_description' | 'download_file' | 'follow' | 'follow_project_description' | 'follow_project_descriptionGalaxia' | 'follow_project' | 'follow_goal' | 'follow_goal_description' | 'follow_project_error' | 'follow_project_errorGalaxia' | 'follow_goal_error' | 'go_back' | 'invalid_permissions' | 'invalid_permissions_description' | 'join_to_view' | 'connect_link_account' | 'created_by' | 'created_on_relative' | 'created_on_absolute' | 'check_this_link' | 'delete' | 'edit' | 'learn_more_about_smart_links' | 'learn_more_about_connecting_account' | 'loading' | 'link_safety_warning_message' | 'modified_by' | 'modified_on_relative' | 'modified_on_absolute' | 'more_actions' | 'not_found_title' | 'not_found_description' | 'open_issue_in_jira' | 'open_link_in_a_new_tab' | 'owned_by' | 'owned_by_override' | 'preview_description' | 'preview_improved' | 'preview_modal' | 'preview_panel' | 'preview_close' | 'preview_max_size' | 'preview_min_size' | 'priority_blocker' | 'priority_critical' | 'priority_high' | 'priority_highest' | 'priority_low' | 'priority_lowest' | 'priority_major' | 'priority_medium' | 'priority_minor' | 'priority_trivial' | 'priority_undefined' | 'forbidden_access' | 'pending_request' | 'read_time' | 'restricted_link' | 'request_access_to_view' | 'request_denied' | 'sent_on_relative' | 'sent_on_absolute' | 'status_change_load_error' | 'status_change_permission_error' | 'status_change_update_error' | 'try_again' | 'try_another_account' | 'unauthorised_account_description' | 'unauthorised_account_description_no_provider' | 'unauthorised_account_name' | 'unauthorised_account_name_no_provider' | 'rovo_actions_explore' | 'unassigned' | 'unfollow' | 'unfollow_project_description' | 'unfollow_project_descriptionGalaxia' | 'unfollow_project' | 'unfollow_project_error' | 'unfollow_project_errorGalaxia' | 'unfollow_goal' | 'unfollow_goal_description' | 'unfollow_goal_error' | 'user_attributes' | 'view' | 'viewIn' | 'viewOriginal' | 'actions' | 'add_account' | 'cancel' | 'close' | 'connect_to' | 'connect_account_description' | 'retry' | 'save' | 'unlink_account' | RequestAccessMessageKey | 'related' | 'generic_error_message' | 'related_links_modal_error_title' | 'related_links_modal_error_description' | 'related_links_modal_unavailable_title' | 'related_links_modal_unavailable_description' | 'related_links_modal_title' | 'related_links_view_related_urls' | 'related_links_view_related_links' | 'related_links_found_in' | 'related_links_includes_links_to' | 'related_links_not_found' | 'join_to_viewIssueTermRefresh' | 'open_issue_in_jiraIssueTermRefresh' | 'request_access_to_viewIssueTermRefresh' | 'team_members_count' | 'status_change_permission_errorIssueTermRefresh' | 'connect_unauthorised_account_description_appify' | 'connect_unauthorised_account_description_no_provider_appify' | 'learn_more_about_connecting_account_experiment_shorter' | 'learn_more_about_connecting_account_appify' | 'rovo_summary_loading' | 'ai_disclaimer' | 'rovo_unauthorised_title' | 'rovo_unauthorised_title_no_provider' | 'rovo_unauthorised_feature_clear_link_names' | 'rovo_unauthorised_feature_understand_linked_docs' | 'rovo_unauthorised_feature_go_deeper_smart_suggestions' | 'rovo_unauthorised_connect_account' | 'rovo_unauthorised_not_now' | 'rovo_chat_action_section_header' | 'rovo_prompt_button_summarize_this' | 'rovo_prompt_button_ask_a_specific_question' | 'rovo_prompt_button_show_me_whats_relevant' | RovoChatActionMessageKey;
4
+ export type MessageKey = 'assigned_to' | 'ai_summarize' | 'change_status' | 'ai_summarized' | 'ai_summarized_abbreviation' | 'ai_summarized_info' | 'ai_summarized_info_short' | 'ai_summarizing' | 'ai_summary_error_generic' | 'ai_summary_error_acceptable_use_violation' | 'ai_summary_error_hipaa_content_detected' | 'ai_summary_error_exceeding_context_length_error' | 'ai_summary_action' | 'ai_summary_action_description' | 'automation_action_title' | 'automation_action_tooltip' | 'automation_action_icon_label' | 'automation_action_confluence_page_modal_title' | 'automation_action_confluence_page_modal_description' | 'copy_summary_action' | 'copy_summary_action_description' | 'copied_summary_action_description' | 'beta' | 'cannot_find_link' | 'compass_applied_components_count' | 'connect_link_account_card' | 'connect_link_account_card_name' | 'connect_link_account_card_description' | 'connect_unauthorised_account_action' | 'connect_inline_social_proof' | 'social_proof_inline_cta_tag_high_with_context' | 'social_proof_inline_cta_tag_high_no_context' | 'social_proof_inline_cta_tag_low_with_context' | 'connect_unauthorised_account_description' | 'connect_unauthorised_account_description_no_provider' | 'continue' | 'copy_url_to_clipboard' | 'copied_url_to_clipboard' | 'could_not_load_link' | 'download' | 'download_description' | 'download_file' | 'follow' | 'follow_project_description' | 'follow_project_descriptionGalaxia' | 'follow_project' | 'follow_goal' | 'follow_goal_description' | 'follow_project_error' | 'follow_project_errorGalaxia' | 'follow_goal_error' | 'go_back' | 'invalid_permissions' | 'invalid_permissions_description' | 'join_to_view' | 'connect_link_account' | 'created_by' | 'created_on_relative' | 'created_on_absolute' | 'check_this_link' | 'delete' | 'edit' | 'learn_more_about_smart_links' | 'learn_more_about_connecting_account' | 'loading' | 'link_safety_warning_message' | 'modified_by' | 'modified_on_relative' | 'modified_on_absolute' | 'more_actions' | 'not_found_title' | 'not_found_description' | 'open_issue_in_jira' | 'open_link_in_a_new_tab' | 'owned_by' | 'owned_by_override' | 'preview_description' | 'preview_improved' | 'preview_modal' | 'preview_panel' | 'preview_close' | 'preview_max_size' | 'preview_min_size' | 'priority_blocker' | 'priority_critical' | 'priority_high' | 'priority_highest' | 'priority_low' | 'priority_lowest' | 'priority_major' | 'priority_medium' | 'priority_minor' | 'priority_trivial' | 'priority_undefined' | 'forbidden_access' | 'pending_request' | 'read_time' | 'restricted_link' | 'request_access_to_view' | 'request_denied' | 'sent_on_relative' | 'sent_on_absolute' | 'status_change_load_error' | 'status_change_permission_error' | 'status_change_update_error' | 'try_again' | 'try_another_account' | 'unauthorised_account_description' | 'unauthorised_account_description_no_provider' | 'unauthorised_account_name' | 'unauthorised_account_name_no_provider' | 'rovo_actions_explore' | 'unassigned' | 'unfollow' | 'unfollow_project_description' | 'unfollow_project_descriptionGalaxia' | 'unfollow_project' | 'unfollow_project_error' | 'unfollow_project_errorGalaxia' | 'unfollow_goal' | 'unfollow_goal_description' | 'unfollow_goal_error' | 'user_attributes' | 'view' | 'viewIn' | 'viewOriginal' | 'actions' | 'add_account' | 'cancel' | 'close' | 'connect_to' | 'connect_account_description' | 'retry' | 'save' | 'unlink_account' | RequestAccessMessageKey | 'related' | 'generic_error_message' | 'related_links_modal_error_title' | 'related_links_modal_error_description' | 'related_links_modal_unavailable_title' | 'related_links_modal_unavailable_description' | 'related_links_modal_title' | 'related_links_view_related_urls' | 'related_links_view_related_links' | 'related_links_found_in' | 'related_links_includes_links_to' | 'related_links_not_found' | 'join_to_viewIssueTermRefresh' | 'open_issue_in_jiraIssueTermRefresh' | 'request_access_to_viewIssueTermRefresh' | 'team_members_count' | 'status_change_permission_errorIssueTermRefresh' | 'connect_unauthorised_account_description_appify' | 'connect_unauthorised_account_description_no_provider_appify' | 'learn_more_about_connecting_account_experiment_shorter' | 'learn_more_about_connecting_account_appify' | 'rovo_summary_loading' | 'ai_disclaimer' | 'rovo_unauthorised_title' | 'rovo_unauthorised_title_no_provider' | 'rovo_unauthorised_feature_clear_link_names' | 'rovo_unauthorised_feature_understand_linked_docs' | 'rovo_unauthorised_feature_go_deeper_smart_suggestions' | 'rovo_unauthorised_connect_account' | 'rovo_unauthorised_not_now' | 'rovo_chat_action_section_header' | 'rovo_prompt_button_summarize_this' | 'rovo_prompt_button_ask_a_specific_question' | 'rovo_prompt_button_show_me_whats_relevant' | RovoChatActionMessageKey;
5
5
  type Messages = {
6
6
  [K in MessageKey]: MessageDescriptor;
7
7
  };
@@ -27,7 +27,7 @@ export declare class CurrentSiteCloudIdService {
27
27
  * On network success with no cloud id, or on failure: falls back via {@link readStoredCloudId}.
28
28
  */
29
29
  get(baseUriWithNoTrailingSlash?: string): Promise<string | undefined>;
30
- /** Clears the session pin so the next {@link get} may run `tenant_info` again (e.g. tests). */
30
+ /** Clears session pin and persisted storage so the next {@link get} is a fresh tenant_info fetch. */
31
31
  clearCache(): void;
32
32
  }
33
33
  export declare const currentSiteCloudIdService: CurrentSiteCloudIdService;
@@ -27,4 +27,4 @@ export interface InlineCardUnauthorizedViewProps {
27
27
  /** The url to display */
28
28
  url: string;
29
29
  }
30
- export declare const InlineCardUnauthorizedView: ({ url, id, icon, onAuthorise, onClick, isSelected, testId, showHoverPreview, truncateInline, context, }: InlineCardUnauthorizedViewProps) => JSX.Element;
30
+ export declare const InlineCardUnauthorizedView: ({ url, id, icon, onAuthorise, onClick, isSelected, testId, showHoverPreview, truncateInline, context, extensionKey, }: InlineCardUnauthorizedViewProps) => JSX.Element;
@@ -5,6 +5,13 @@
5
5
  import { type ComponentPropsWithRef, type ForwardRefExoticComponent, type RefAttributes } from 'react';
6
6
  import { Pressable } from '@atlaskit/primitives/compiled';
7
7
  type ActionButtonProps = ComponentPropsWithRef<typeof Pressable> & {
8
+ /**
9
+ * When `true` together with `viewType="unauthorised"`, applies the inline social proof CTA
10
+ * connect-button layout (compact type, radius, spacing, flex alignment). Only honored when
11
+ * `platform_sl_3p_preauth_soc_proof_inline_killswitch` is on; when that gate is off, the legacy
12
+ * implementation runs and this prop is ignored.
13
+ */
14
+ isSocialProofInlineUnauthorisedConnect?: boolean;
8
15
  viewType?: 'default' | 'unauthorised' | 'action';
9
16
  };
10
17
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/smart-card",
3
- "version": "44.5.3",
3
+ "version": "44.6.0",
4
4
  "description": "Smart card component",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -75,7 +75,7 @@
75
75
  "@atlaskit/platform-feature-flags-react": "^0.4.0",
76
76
  "@atlaskit/popup": "^4.17.0",
77
77
  "@atlaskit/primitives": "^19.0.0",
78
- "@atlaskit/react-ufo": "^5.18.0",
78
+ "@atlaskit/react-ufo": "^5.19.0",
79
79
  "@atlaskit/rovo-triggers": "^6.0.0",
80
80
  "@atlaskit/section-message": "^8.12.0",
81
81
  "@atlaskit/select": "^21.10.0",
@@ -85,7 +85,7 @@
85
85
  "@atlaskit/textfield": "^8.3.0",
86
86
  "@atlaskit/theme": "^23.2.0",
87
87
  "@atlaskit/tile": "^1.1.0",
88
- "@atlaskit/tmp-editor-statsig": "^74.7.0",
88
+ "@atlaskit/tmp-editor-statsig": "^74.12.0",
89
89
  "@atlaskit/tokens": "^13.0.0",
90
90
  "@atlaskit/tooltip": "^22.0.0",
91
91
  "@atlaskit/ufo": "^0.4.0",
@@ -230,6 +230,9 @@
230
230
  "platform_sl_3p_preauth_better_hovercard_killswitch": {
231
231
  "type": "boolean"
232
232
  },
233
+ "platform_sl_3p_preauth_soc_proof_inline_killswitch": {
234
+ "type": "boolean"
235
+ },
233
236
  "platform_navx_smart_link_icon_label_a11y": {
234
237
  "type": "boolean"
235
238
  },