@atlaskit/smart-card 44.9.9 → 44.9.10

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 CHANGED
@@ -1,5 +1,11 @@
1
1
  # @atlaskit/smart-card
2
2
 
3
+ ## 44.9.10
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies
8
+
3
9
  ## 44.9.9
4
10
 
5
11
  ### Patch Changes
@@ -847,14 +847,6 @@ events:
847
847
  required: false
848
848
  type: boolean
849
849
  description: Whether the Rovo Actions CTA (inline nudge) was shown for this Smart Link
850
- experimentMeta:
851
- required: false
852
- type: object
853
- description: |
854
- Optional experiment metadata attached to the Smart Link render success event. Root keys
855
- should be Statsig experiment keys. Each experiment entry can contain metadata specific
856
- to that experiment, derived from no-exposure eligibility data only unless explicitly
857
- documented otherwise.
858
850
  - smartLink renderFailed:
859
851
  type: ui
860
852
  description: fires an event that represents when a Smart Link renders unsuccessfully.
@@ -4,48 +4,11 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.getSocialProofTier = exports.getSocialProofExperimentMeta = exports.getInlineSocialProofExperimentMeta = exports.default = exports.SOCIAL_PROOF_TIER_THRESHOLD = exports.SOCIAL_PROOF_3P_UNAUTH_BLOCK_EXPERIMENT_KEY = exports.INLINE_SOCIAL_PROOF_EXPERIMENT_KEY = void 0;
8
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
+ exports.default = void 0;
9
8
  var _react = require("react");
10
9
  var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
11
- var _currentSiteCloudId = require("../../services/current-site-cloud-id");
12
- var _personalization = require("../../services/personalization");
13
10
  var _useSocialProof2 = _interopRequireDefault(require("../use-social-proof"));
14
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16
- var SOCIAL_PROOF_3P_UNAUTH_BLOCK_EXPERIMENT_KEY = exports.SOCIAL_PROOF_3P_UNAUTH_BLOCK_EXPERIMENT_KEY = 'social_proof_3p_unauth_block_exp';
17
- var INLINE_SOCIAL_PROOF_EXPERIMENT_KEY = exports.INLINE_SOCIAL_PROOF_EXPERIMENT_KEY = 'platform_sl_3p_preauth_social_proof_inline_cta';
18
- var SOCIAL_PROOF_TIER_THRESHOLD = exports.SOCIAL_PROOF_TIER_THRESHOLD = 30;
19
- var getSocialProofTier = exports.getSocialProofTier = function getSocialProofTier(connectedPct) {
20
- if (connectedPct === undefined) {
21
- return undefined;
22
- }
23
- return connectedPct >= SOCIAL_PROOF_TIER_THRESHOLD ? 'not-low' : 'low';
24
- };
25
- var getSocialProofExperimentMetadata = function getSocialProofExperimentMetadata(_ref) {
26
- var extensionKey = _ref.extensionKey,
27
- _ref$baseUriWithNoTra = _ref.baseUriWithNoTrailingSlash,
28
- baseUriWithNoTrailingSlash = _ref$baseUriWithNoTra === void 0 ? '' : _ref$baseUriWithNoTra;
29
- if (!extensionKey) {
30
- return {
31
- isEligible: false
32
- };
33
- }
34
- var cloudId = (0, _currentSiteCloudId.getCurrentSiteCloudIdSync)(baseUriWithNoTrailingSlash);
35
- var providerPctMap = (0, _personalization.getProviderPctMapSync)(cloudId, _personalization.SOCIAL_PROOF_TRAIT_NAME);
36
- var tier = getSocialProofTier(providerPctMap === null || providerPctMap === void 0 ? void 0 : providerPctMap[extensionKey]);
37
- return _objectSpread({
38
- isEligible: tier !== undefined
39
- }, tier ? {
40
- tier: tier
41
- } : {});
42
- };
43
- var getSocialProofExperimentMeta = exports.getSocialProofExperimentMeta = function getSocialProofExperimentMeta(params) {
44
- return (0, _defineProperty2.default)({}, SOCIAL_PROOF_3P_UNAUTH_BLOCK_EXPERIMENT_KEY, getSocialProofExperimentMetadata(params));
45
- };
46
- var getInlineSocialProofExperimentMeta = exports.getInlineSocialProofExperimentMeta = function getInlineSocialProofExperimentMeta(params) {
47
- return (0, _defineProperty2.default)({}, INLINE_SOCIAL_PROOF_EXPERIMENT_KEY, getSocialProofExperimentMetadata(params));
48
- };
11
+ var TIER_THRESHOLD = 30;
49
12
 
50
13
  /**
51
14
  * Returns enrollment and treatment state for the social proof unauth block card experiment.
@@ -69,12 +32,11 @@ var useSocialProofExperiment = function useSocialProofExperiment(extensionKey) {
69
32
  isEnabled = _useSocialProof.isEnabled,
70
33
  isLoading = _useSocialProof.isLoading;
71
34
  return (0, _react.useMemo)(function () {
72
- var _getSocialProofTier;
73
35
  var hasSocialProofData = connectedPct !== undefined;
74
36
 
75
37
  // Only fire exposure when data has loaded (prevents exposure inflation)
76
38
  var isTreatment = isEnabled && !isLoading && hasSocialProofData ? (0, _experiments.editorExperiment)('social_proof_3p_unauth_block_exp', true) : false;
77
- var tier = (_getSocialProofTier = getSocialProofTier(connectedPct)) !== null && _getSocialProofTier !== void 0 ? _getSocialProofTier : 'low';
39
+ var tier = connectedPct !== undefined && connectedPct >= TIER_THRESHOLD ? 'not-low' : 'low';
78
40
  return {
79
41
  isTreatment: isTreatment,
80
42
  tier: tier,
@@ -25,7 +25,7 @@ var _constants = require("../../../constants");
25
25
  var _messages = require("../../../messages");
26
26
  var _flexibleUiContext = require("../../../state/flexible-ui-context");
27
27
  var _helpers = require("../../../state/helpers");
28
- var _useSocialProofExperiment = _interopRequireWildcard(require("../../../state/hooks/use-social-proof-experiment"));
28
+ var _useSocialProofExperiment = _interopRequireDefault(require("../../../state/hooks/use-social-proof-experiment"));
29
29
  var _UnauthorisedViewContent = _interopRequireDefault(require("../../common/UnauthorisedViewContent"));
30
30
  var _FlexibleCard = _interopRequireDefault(require("../../FlexibleCard"));
31
31
  var _actionGroup = _interopRequireDefault(require("../../FlexibleCard/components/blocks/action-group"));
@@ -256,28 +256,19 @@ var UnauthorisedViewWithExperiment = function UnauthorisedViewWithExperiment(_re
256
256
  isTreatment = _useSocialProofExperi.isTreatment,
257
257
  tier = _useSocialProofExperi.tier,
258
258
  connectedPct = _useSocialProofExperi.connectedPct;
259
- var socialProofExperimentMeta = (0, _useSocialProofExperiment.getSocialProofExperimentMeta)({
260
- extensionKey: extensionKey,
261
- baseUriWithNoTrailingSlash: connections.client.baseUrlOverride
262
- });
263
- var analyticsContextData = {
264
- attributes: {
265
- experiment: 'social_proof_3p_unauth_block_exp',
266
- cohort: isTreatment ? 'treatment' : 'control',
267
- tier: tier,
268
- experimentMeta: socialProofExperimentMeta
269
- }
270
- };
271
259
  if (!isTreatment || !providerName) {
272
- var fallbackView = /*#__PURE__*/React.createElement(UnauthorisedViewBase, (0, _extends2.default)({}, props, {
260
+ return /*#__PURE__*/React.createElement(UnauthorisedViewBase, (0, _extends2.default)({}, props, {
273
261
  testId: testId
274
262
  }));
275
- return connectedPct !== undefined ? /*#__PURE__*/React.createElement(_analyticsNext.AnalyticsContext, {
276
- data: analyticsContextData
277
- }, fallbackView) : fallbackView;
278
263
  }
279
264
  return /*#__PURE__*/React.createElement(_analyticsNext.AnalyticsContext, {
280
- data: analyticsContextData
265
+ data: {
266
+ attributes: {
267
+ experiment: 'social_proof_3p_unauth_block_exp',
268
+ cohort: 'treatment',
269
+ tier: tier
270
+ }
271
+ }
281
272
  }, /*#__PURE__*/React.createElement(UnauthorisedViewFrame, (0, _extends2.default)({}, props, {
282
273
  content: /*#__PURE__*/React.createElement(_SocialProofMessage.default, {
283
274
  tier: tier,
@@ -33,7 +33,6 @@ var _FlexibleCard = _interopRequireDefault(require("../FlexibleCard"));
33
33
  var _InlineCard = require("../InlineCard");
34
34
  var _useSmartLinkEvents = require("../SmartLinkEvents/useSmartLinkEvents");
35
35
  var _cardIntersectionObserver = _interopRequireDefault(require("./card-intersection-observer"));
36
- var _experimentMetaEventAttributes = _interopRequireDefault(require("./experiment-meta-event-attributes"));
37
36
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
38
37
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
39
38
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -180,10 +179,6 @@ function Component(_ref) {
180
179
  var handleInvoke = (0, _react.useCallback)(function (opts) {
181
180
  return actions.invoke(opts, appearance);
182
181
  }, [actions, appearance]);
183
- var experimentMetaEventAttributes = (0, _experimentMetaEventAttributes.default)({
184
- appearance: appearance,
185
- state: state
186
- });
187
182
 
188
183
  // NB: for each status change in a Smart Link, a performance mark is created.
189
184
  // Measures are sent relative to the first mark, matching what a user sees.
@@ -227,15 +222,13 @@ function Component(_ref) {
227
222
  (0, _analytics.succeedUfoExperience)('smart-link-authenticated', id || 'NULL', {
228
223
  display: isFlexibleUi ? 'flexible' : appearance
229
224
  });
230
- fireEvent('ui.smartLink.renderSuccess', _objectSpread(_objectSpread({
225
+ fireEvent('ui.smartLink.renderSuccess', _objectSpread({
231
226
  display: isFlexibleUi ? 'flexible' : appearance
232
227
  }, appearance === 'inline' && {
233
228
  rovoActionsCtaShown: rovoActionsCtaShown
234
- }), experimentMetaEventAttributes && {
235
- experimentMeta: experimentMetaEventAttributes
236
229
  }));
237
230
  }
238
- }, [appearance, extensionKey, fireEvent, id, isFlexibleUi, rovoActionsCtaShown, state.status, experimentMetaEventAttributes]);
231
+ }, [appearance, extensionKey, fireEvent, id, isFlexibleUi, rovoActionsCtaShown, state.status]);
239
232
 
240
233
  // Fire smartLink seen event once on a successful render card is in the viewport
241
234
  (0, _react.useEffect)(function () {
@@ -507,10 +500,6 @@ function ComponentUpdated(_ref2) {
507
500
  var handleInvoke = (0, _react.useCallback)(function (opts) {
508
501
  return actions.invoke(opts, appearance);
509
502
  }, [actions, appearance]);
510
- var experimentMetaEventAttributes = (0, _experimentMetaEventAttributes.default)({
511
- appearance: appearance,
512
- state: state
513
- });
514
503
 
515
504
  // NB: for each status change in a Smart Link, a performance mark is created.
516
505
  // Measures are sent relative to the first mark, matching what a user sees.
@@ -554,15 +543,13 @@ function ComponentUpdated(_ref2) {
554
543
  (0, _analytics.succeedUfoExperience)('smart-link-authenticated', id || 'NULL', {
555
544
  display: isFlexibleUi ? 'flexible' : appearance
556
545
  });
557
- fireEvent('ui.smartLink.renderSuccess', _objectSpread(_objectSpread({
546
+ fireEvent('ui.smartLink.renderSuccess', _objectSpread({
558
547
  display: isFlexibleUi ? 'flexible' : appearance
559
548
  }, appearance === 'inline' && {
560
549
  rovoActionsCtaShown: rovoActionsCtaShown
561
- }), experimentMetaEventAttributes && {
562
- experimentMeta: experimentMetaEventAttributes
563
550
  }));
564
551
  }
565
- }, [appearance, extensionKey, fireEvent, id, isFlexibleUi, rovoActionsCtaShown, state.status, experimentMetaEventAttributes]);
552
+ }, [appearance, extensionKey, fireEvent, id, isFlexibleUi, rovoActionsCtaShown, state.status]);
566
553
 
567
554
  // Fire smartLink seen event once on a successful render card is in the viewport
568
555
  (0, _react.useEffect)(function () {
@@ -1,42 +1,7 @@
1
1
  import { useMemo } from 'react';
2
2
  import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
3
- import { getCurrentSiteCloudIdSync } from '../../services/current-site-cloud-id';
4
- import { getProviderPctMapSync, SOCIAL_PROOF_TRAIT_NAME } from '../../services/personalization';
5
3
  import useSocialProof from '../use-social-proof';
6
- export const SOCIAL_PROOF_3P_UNAUTH_BLOCK_EXPERIMENT_KEY = 'social_proof_3p_unauth_block_exp';
7
- export const INLINE_SOCIAL_PROOF_EXPERIMENT_KEY = 'platform_sl_3p_preauth_social_proof_inline_cta';
8
- export const SOCIAL_PROOF_TIER_THRESHOLD = 30;
9
- export const getSocialProofTier = connectedPct => {
10
- if (connectedPct === undefined) {
11
- return undefined;
12
- }
13
- return connectedPct >= SOCIAL_PROOF_TIER_THRESHOLD ? 'not-low' : 'low';
14
- };
15
- const getSocialProofExperimentMetadata = ({
16
- extensionKey,
17
- baseUriWithNoTrailingSlash = ''
18
- }) => {
19
- if (!extensionKey) {
20
- return {
21
- isEligible: false
22
- };
23
- }
24
- const cloudId = getCurrentSiteCloudIdSync(baseUriWithNoTrailingSlash);
25
- const providerPctMap = getProviderPctMapSync(cloudId, SOCIAL_PROOF_TRAIT_NAME);
26
- const tier = getSocialProofTier(providerPctMap === null || providerPctMap === void 0 ? void 0 : providerPctMap[extensionKey]);
27
- return {
28
- isEligible: tier !== undefined,
29
- ...(tier ? {
30
- tier
31
- } : {})
32
- };
33
- };
34
- export const getSocialProofExperimentMeta = params => ({
35
- [SOCIAL_PROOF_3P_UNAUTH_BLOCK_EXPERIMENT_KEY]: getSocialProofExperimentMetadata(params)
36
- });
37
- export const getInlineSocialProofExperimentMeta = params => ({
38
- [INLINE_SOCIAL_PROOF_EXPERIMENT_KEY]: getSocialProofExperimentMetadata(params)
39
- });
4
+ const TIER_THRESHOLD = 30;
40
5
 
41
6
  /**
42
7
  * Returns enrollment and treatment state for the social proof unauth block card experiment.
@@ -60,12 +25,11 @@ const useSocialProofExperiment = (extensionKey, baseUriWithNoTrailingSlash = '')
60
25
  isLoading
61
26
  } = useSocialProof(extensionKey, true, baseUriWithNoTrailingSlash);
62
27
  return useMemo(() => {
63
- var _getSocialProofTier;
64
28
  const hasSocialProofData = connectedPct !== undefined;
65
29
 
66
30
  // Only fire exposure when data has loaded (prevents exposure inflation)
67
31
  const isTreatment = isEnabled && !isLoading && hasSocialProofData ? editorExperiment('social_proof_3p_unauth_block_exp', true) : false;
68
- const tier = (_getSocialProofTier = getSocialProofTier(connectedPct)) !== null && _getSocialProofTier !== void 0 ? _getSocialProofTier : 'low';
32
+ const tier = connectedPct !== undefined && connectedPct >= TIER_THRESHOLD ? 'not-low' : 'low';
69
33
  return {
70
34
  isTreatment,
71
35
  tier,
@@ -16,7 +16,7 @@ import { ElementName, SmartLinkDirection, SmartLinkSize, SmartLinkWidth } from '
16
16
  import { messages } from '../../../messages';
17
17
  import { useFlexibleCardContext } from '../../../state/flexible-ui-context';
18
18
  import { hasAuthScopeOverrides } from '../../../state/helpers';
19
- import useSocialProofExperiment, { getSocialProofExperimentMeta } from '../../../state/hooks/use-social-proof-experiment';
19
+ import useSocialProofExperiment from '../../../state/hooks/use-social-proof-experiment';
20
20
  import UnauthorisedViewContent from '../../common/UnauthorisedViewContent';
21
21
  import FlexibleCard from '../../FlexibleCard';
22
22
  import ActionGroup from '../../FlexibleCard/components/blocks/action-group';
@@ -251,28 +251,19 @@ const UnauthorisedViewWithExperiment = ({
251
251
  tier,
252
252
  connectedPct
253
253
  } = useSocialProofExperiment(providerName ? extensionKey : undefined, connections.client.baseUrlOverride);
254
- const socialProofExperimentMeta = getSocialProofExperimentMeta({
255
- extensionKey,
256
- baseUriWithNoTrailingSlash: connections.client.baseUrlOverride
257
- });
258
- const analyticsContextData = {
259
- attributes: {
260
- experiment: 'social_proof_3p_unauth_block_exp',
261
- cohort: isTreatment ? 'treatment' : 'control',
262
- tier,
263
- experimentMeta: socialProofExperimentMeta
264
- }
265
- };
266
254
  if (!isTreatment || !providerName) {
267
- const fallbackView = /*#__PURE__*/React.createElement(UnauthorisedViewBase, _extends({}, props, {
255
+ return /*#__PURE__*/React.createElement(UnauthorisedViewBase, _extends({}, props, {
268
256
  testId: testId
269
257
  }));
270
- return connectedPct !== undefined ? /*#__PURE__*/React.createElement(AnalyticsContext, {
271
- data: analyticsContextData
272
- }, fallbackView) : fallbackView;
273
258
  }
274
259
  return /*#__PURE__*/React.createElement(AnalyticsContext, {
275
- data: analyticsContextData
260
+ data: {
261
+ attributes: {
262
+ experiment: 'social_proof_3p_unauth_block_exp',
263
+ cohort: 'treatment',
264
+ tier
265
+ }
266
+ }
276
267
  }, /*#__PURE__*/React.createElement(UnauthorisedViewFrame, _extends({}, props, {
277
268
  content: /*#__PURE__*/React.createElement(SocialProofMessage, {
278
269
  tier: tier,
@@ -24,7 +24,6 @@ import FlexibleCard from '../FlexibleCard';
24
24
  import { InlineCard } from '../InlineCard';
25
25
  import { useFire3PWorkflowsClickEvent } from '../SmartLinkEvents/useSmartLinkEvents';
26
26
  import withCardIntersectionObserver from './card-intersection-observer';
27
- import useExperimentMetaEventAttributes from './experiment-meta-event-attributes';
28
27
  const thirdPartyARIPrefix = 'ari:third-party';
29
28
  const EmbedCardComponent = componentWithFG('rovo_chat_embed_card_dwell_and_hover_metrics', EmbedCardUpdated, EmbedCard);
30
29
  function Component({
@@ -167,10 +166,6 @@ function Component({
167
166
  actions.reload();
168
167
  }, [actions]);
169
168
  const handleInvoke = useCallback(opts => actions.invoke(opts, appearance), [actions, appearance]);
170
- const experimentMetaEventAttributes = useExperimentMetaEventAttributes({
171
- appearance,
172
- state
173
- });
174
169
 
175
170
  // NB: for each status change in a Smart Link, a performance mark is created.
176
171
  // Measures are sent relative to the first mark, matching what a user sees.
@@ -218,13 +213,10 @@ function Component({
218
213
  display: isFlexibleUi ? 'flexible' : appearance,
219
214
  ...(appearance === 'inline' && {
220
215
  rovoActionsCtaShown
221
- }),
222
- ...(experimentMetaEventAttributes && {
223
- experimentMeta: experimentMetaEventAttributes
224
216
  })
225
217
  });
226
218
  }
227
- }, [appearance, extensionKey, fireEvent, id, isFlexibleUi, rovoActionsCtaShown, state.status, experimentMetaEventAttributes]);
219
+ }, [appearance, extensionKey, fireEvent, id, isFlexibleUi, rovoActionsCtaShown, state.status]);
228
220
 
229
221
  // Fire smartLink seen event once on a successful render card is in the viewport
230
222
  useEffect(() => {
@@ -495,10 +487,6 @@ function ComponentUpdated({
495
487
  actions.reload();
496
488
  }, [actions]);
497
489
  const handleInvoke = useCallback(opts => actions.invoke(opts, appearance), [actions, appearance]);
498
- const experimentMetaEventAttributes = useExperimentMetaEventAttributes({
499
- appearance,
500
- state
501
- });
502
490
 
503
491
  // NB: for each status change in a Smart Link, a performance mark is created.
504
492
  // Measures are sent relative to the first mark, matching what a user sees.
@@ -546,13 +534,10 @@ function ComponentUpdated({
546
534
  display: isFlexibleUi ? 'flexible' : appearance,
547
535
  ...(appearance === 'inline' && {
548
536
  rovoActionsCtaShown
549
- }),
550
- ...(experimentMetaEventAttributes && {
551
- experimentMeta: experimentMetaEventAttributes
552
537
  })
553
538
  });
554
539
  }
555
- }, [appearance, extensionKey, fireEvent, id, isFlexibleUi, rovoActionsCtaShown, state.status, experimentMetaEventAttributes]);
540
+ }, [appearance, extensionKey, fireEvent, id, isFlexibleUi, rovoActionsCtaShown, state.status]);
556
541
 
557
542
  // Fire smartLink seen event once on a successful render card is in the viewport
558
543
  useEffect(() => {
@@ -1,44 +1,7 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
1
  import { useMemo } from 'react';
5
2
  import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
6
- import { getCurrentSiteCloudIdSync } from '../../services/current-site-cloud-id';
7
- import { getProviderPctMapSync, SOCIAL_PROOF_TRAIT_NAME } from '../../services/personalization';
8
3
  import useSocialProof from '../use-social-proof';
9
- export var SOCIAL_PROOF_3P_UNAUTH_BLOCK_EXPERIMENT_KEY = 'social_proof_3p_unauth_block_exp';
10
- export var INLINE_SOCIAL_PROOF_EXPERIMENT_KEY = 'platform_sl_3p_preauth_social_proof_inline_cta';
11
- export var SOCIAL_PROOF_TIER_THRESHOLD = 30;
12
- export var getSocialProofTier = function getSocialProofTier(connectedPct) {
13
- if (connectedPct === undefined) {
14
- return undefined;
15
- }
16
- return connectedPct >= SOCIAL_PROOF_TIER_THRESHOLD ? 'not-low' : 'low';
17
- };
18
- var getSocialProofExperimentMetadata = function getSocialProofExperimentMetadata(_ref) {
19
- var extensionKey = _ref.extensionKey,
20
- _ref$baseUriWithNoTra = _ref.baseUriWithNoTrailingSlash,
21
- baseUriWithNoTrailingSlash = _ref$baseUriWithNoTra === void 0 ? '' : _ref$baseUriWithNoTra;
22
- if (!extensionKey) {
23
- return {
24
- isEligible: false
25
- };
26
- }
27
- var cloudId = getCurrentSiteCloudIdSync(baseUriWithNoTrailingSlash);
28
- var providerPctMap = getProviderPctMapSync(cloudId, SOCIAL_PROOF_TRAIT_NAME);
29
- var tier = getSocialProofTier(providerPctMap === null || providerPctMap === void 0 ? void 0 : providerPctMap[extensionKey]);
30
- return _objectSpread({
31
- isEligible: tier !== undefined
32
- }, tier ? {
33
- tier: tier
34
- } : {});
35
- };
36
- export var getSocialProofExperimentMeta = function getSocialProofExperimentMeta(params) {
37
- return _defineProperty({}, SOCIAL_PROOF_3P_UNAUTH_BLOCK_EXPERIMENT_KEY, getSocialProofExperimentMetadata(params));
38
- };
39
- export var getInlineSocialProofExperimentMeta = function getInlineSocialProofExperimentMeta(params) {
40
- return _defineProperty({}, INLINE_SOCIAL_PROOF_EXPERIMENT_KEY, getSocialProofExperimentMetadata(params));
41
- };
4
+ var TIER_THRESHOLD = 30;
42
5
 
43
6
  /**
44
7
  * Returns enrollment and treatment state for the social proof unauth block card experiment.
@@ -62,12 +25,11 @@ var useSocialProofExperiment = function useSocialProofExperiment(extensionKey) {
62
25
  isEnabled = _useSocialProof.isEnabled,
63
26
  isLoading = _useSocialProof.isLoading;
64
27
  return useMemo(function () {
65
- var _getSocialProofTier;
66
28
  var hasSocialProofData = connectedPct !== undefined;
67
29
 
68
30
  // Only fire exposure when data has loaded (prevents exposure inflation)
69
31
  var isTreatment = isEnabled && !isLoading && hasSocialProofData ? editorExperiment('social_proof_3p_unauth_block_exp', true) : false;
70
- var tier = (_getSocialProofTier = getSocialProofTier(connectedPct)) !== null && _getSocialProofTier !== void 0 ? _getSocialProofTier : 'low';
32
+ var tier = connectedPct !== undefined && connectedPct >= TIER_THRESHOLD ? 'not-low' : 'low';
71
33
  return {
72
34
  isTreatment: isTreatment,
73
35
  tier: tier,
@@ -20,7 +20,7 @@ import { ElementName, SmartLinkDirection, SmartLinkSize, SmartLinkWidth } from '
20
20
  import { messages } from '../../../messages';
21
21
  import { useFlexibleCardContext } from '../../../state/flexible-ui-context';
22
22
  import { hasAuthScopeOverrides } from '../../../state/helpers';
23
- import useSocialProofExperiment, { getSocialProofExperimentMeta } from '../../../state/hooks/use-social-proof-experiment';
23
+ import useSocialProofExperiment from '../../../state/hooks/use-social-proof-experiment';
24
24
  import UnauthorisedViewContent from '../../common/UnauthorisedViewContent';
25
25
  import FlexibleCard from '../../FlexibleCard';
26
26
  import ActionGroup from '../../FlexibleCard/components/blocks/action-group';
@@ -247,28 +247,19 @@ var UnauthorisedViewWithExperiment = function UnauthorisedViewWithExperiment(_re
247
247
  isTreatment = _useSocialProofExperi.isTreatment,
248
248
  tier = _useSocialProofExperi.tier,
249
249
  connectedPct = _useSocialProofExperi.connectedPct;
250
- var socialProofExperimentMeta = getSocialProofExperimentMeta({
251
- extensionKey: extensionKey,
252
- baseUriWithNoTrailingSlash: connections.client.baseUrlOverride
253
- });
254
- var analyticsContextData = {
255
- attributes: {
256
- experiment: 'social_proof_3p_unauth_block_exp',
257
- cohort: isTreatment ? 'treatment' : 'control',
258
- tier: tier,
259
- experimentMeta: socialProofExperimentMeta
260
- }
261
- };
262
250
  if (!isTreatment || !providerName) {
263
- var fallbackView = /*#__PURE__*/React.createElement(UnauthorisedViewBase, _extends({}, props, {
251
+ return /*#__PURE__*/React.createElement(UnauthorisedViewBase, _extends({}, props, {
264
252
  testId: testId
265
253
  }));
266
- return connectedPct !== undefined ? /*#__PURE__*/React.createElement(AnalyticsContext, {
267
- data: analyticsContextData
268
- }, fallbackView) : fallbackView;
269
254
  }
270
255
  return /*#__PURE__*/React.createElement(AnalyticsContext, {
271
- data: analyticsContextData
256
+ data: {
257
+ attributes: {
258
+ experiment: 'social_proof_3p_unauth_block_exp',
259
+ cohort: 'treatment',
260
+ tier: tier
261
+ }
262
+ }
272
263
  }, /*#__PURE__*/React.createElement(UnauthorisedViewFrame, _extends({}, props, {
273
264
  content: /*#__PURE__*/React.createElement(SocialProofMessage, {
274
265
  tier: tier,
@@ -27,7 +27,6 @@ import FlexibleCard from '../FlexibleCard';
27
27
  import { InlineCard } from '../InlineCard';
28
28
  import { useFire3PWorkflowsClickEvent } from '../SmartLinkEvents/useSmartLinkEvents';
29
29
  import withCardIntersectionObserver from './card-intersection-observer';
30
- import useExperimentMetaEventAttributes from './experiment-meta-event-attributes';
31
30
  var thirdPartyARIPrefix = 'ari:third-party';
32
31
  var EmbedCardComponent = componentWithFG('rovo_chat_embed_card_dwell_and_hover_metrics', EmbedCardUpdated, EmbedCard);
33
32
  function Component(_ref) {
@@ -171,10 +170,6 @@ function Component(_ref) {
171
170
  var handleInvoke = useCallback(function (opts) {
172
171
  return actions.invoke(opts, appearance);
173
172
  }, [actions, appearance]);
174
- var experimentMetaEventAttributes = useExperimentMetaEventAttributes({
175
- appearance: appearance,
176
- state: state
177
- });
178
173
 
179
174
  // NB: for each status change in a Smart Link, a performance mark is created.
180
175
  // Measures are sent relative to the first mark, matching what a user sees.
@@ -218,15 +213,13 @@ function Component(_ref) {
218
213
  succeedUfoExperience('smart-link-authenticated', id || 'NULL', {
219
214
  display: isFlexibleUi ? 'flexible' : appearance
220
215
  });
221
- fireEvent('ui.smartLink.renderSuccess', _objectSpread(_objectSpread({
216
+ fireEvent('ui.smartLink.renderSuccess', _objectSpread({
222
217
  display: isFlexibleUi ? 'flexible' : appearance
223
218
  }, appearance === 'inline' && {
224
219
  rovoActionsCtaShown: rovoActionsCtaShown
225
- }), experimentMetaEventAttributes && {
226
- experimentMeta: experimentMetaEventAttributes
227
220
  }));
228
221
  }
229
- }, [appearance, extensionKey, fireEvent, id, isFlexibleUi, rovoActionsCtaShown, state.status, experimentMetaEventAttributes]);
222
+ }, [appearance, extensionKey, fireEvent, id, isFlexibleUi, rovoActionsCtaShown, state.status]);
230
223
 
231
224
  // Fire smartLink seen event once on a successful render card is in the viewport
232
225
  useEffect(function () {
@@ -498,10 +491,6 @@ function ComponentUpdated(_ref2) {
498
491
  var handleInvoke = useCallback(function (opts) {
499
492
  return actions.invoke(opts, appearance);
500
493
  }, [actions, appearance]);
501
- var experimentMetaEventAttributes = useExperimentMetaEventAttributes({
502
- appearance: appearance,
503
- state: state
504
- });
505
494
 
506
495
  // NB: for each status change in a Smart Link, a performance mark is created.
507
496
  // Measures are sent relative to the first mark, matching what a user sees.
@@ -545,15 +534,13 @@ function ComponentUpdated(_ref2) {
545
534
  succeedUfoExperience('smart-link-authenticated', id || 'NULL', {
546
535
  display: isFlexibleUi ? 'flexible' : appearance
547
536
  });
548
- fireEvent('ui.smartLink.renderSuccess', _objectSpread(_objectSpread({
537
+ fireEvent('ui.smartLink.renderSuccess', _objectSpread({
549
538
  display: isFlexibleUi ? 'flexible' : appearance
550
539
  }, appearance === 'inline' && {
551
540
  rovoActionsCtaShown: rovoActionsCtaShown
552
- }), experimentMetaEventAttributes && {
553
- experimentMeta: experimentMetaEventAttributes
554
541
  }));
555
542
  }
556
- }, [appearance, extensionKey, fireEvent, id, isFlexibleUi, rovoActionsCtaShown, state.status, experimentMetaEventAttributes]);
543
+ }, [appearance, extensionKey, fireEvent, id, isFlexibleUi, rovoActionsCtaShown, state.status]);
557
544
 
558
545
  // Fire smartLink seen event once on a successful render card is in the viewport
559
546
  useEffect(function () {
@@ -261,7 +261,6 @@ export type ButtonClickedEmbedPreviewResizeAttributesType = {
261
261
  export type SmartLinkRenderSuccessAttributesType = {
262
262
  display: 'inline' | 'block' | 'embed' | 'embedPreview' | 'flexible' | 'hoverCardPreview';
263
263
  rovoActionsCtaShown?: boolean | null;
264
- experimentMeta?: Record<string, unknown> | null;
265
264
  };
266
265
  export type SmartLinkRenderFailedAttributesType = {
267
266
  display: 'inline' | 'block' | 'embed' | 'embedPreview' | 'flexible' | 'hoverCardPreview';
@@ -1,16 +1,4 @@
1
1
  export type SocialProofTier = 'low' | 'not-low';
2
- export declare const SOCIAL_PROOF_3P_UNAUTH_BLOCK_EXPERIMENT_KEY = "social_proof_3p_unauth_block_exp";
3
- export declare const INLINE_SOCIAL_PROOF_EXPERIMENT_KEY = "platform_sl_3p_preauth_social_proof_inline_cta";
4
- type SocialProofExperimentMetadata = {
5
- isEligible: boolean;
6
- tier?: SocialProofTier;
7
- };
8
- export type BlockCardSocialProofExperimentMeta = {
9
- [SOCIAL_PROOF_3P_UNAUTH_BLOCK_EXPERIMENT_KEY]: SocialProofExperimentMetadata;
10
- };
11
- export type InlineSocialProofExperimentMeta = {
12
- [INLINE_SOCIAL_PROOF_EXPERIMENT_KEY]: SocialProofExperimentMetadata;
13
- };
14
2
  export interface SocialProofExperiment {
15
3
  /**
16
4
  * The raw connected users percentage for the current provider, or undefined if not loaded/available.
@@ -32,16 +20,6 @@ export interface SocialProofExperiment {
32
20
  */
33
21
  tier: SocialProofTier;
34
22
  }
35
- export declare const SOCIAL_PROOF_TIER_THRESHOLD = 30;
36
- export declare const getSocialProofTier: (connectedPct?: number) => SocialProofTier | undefined;
37
- export declare const getSocialProofExperimentMeta: (params: {
38
- baseUriWithNoTrailingSlash?: string;
39
- extensionKey?: string;
40
- }) => BlockCardSocialProofExperimentMeta;
41
- export declare const getInlineSocialProofExperimentMeta: (params: {
42
- baseUriWithNoTrailingSlash?: string;
43
- extensionKey?: string;
44
- }) => InlineSocialProofExperimentMeta;
45
23
  /**
46
24
  * Returns enrollment and treatment state for the social proof unauth block card experiment.
47
25
  *
@@ -261,7 +261,6 @@ export type ButtonClickedEmbedPreviewResizeAttributesType = {
261
261
  export type SmartLinkRenderSuccessAttributesType = {
262
262
  display: 'inline' | 'block' | 'embed' | 'embedPreview' | 'flexible' | 'hoverCardPreview';
263
263
  rovoActionsCtaShown?: boolean | null;
264
- experimentMeta?: Record<string, unknown> | null;
265
264
  };
266
265
  export type SmartLinkRenderFailedAttributesType = {
267
266
  display: 'inline' | 'block' | 'embed' | 'embedPreview' | 'flexible' | 'hoverCardPreview';
@@ -1,16 +1,4 @@
1
1
  export type SocialProofTier = 'low' | 'not-low';
2
- export declare const SOCIAL_PROOF_3P_UNAUTH_BLOCK_EXPERIMENT_KEY = "social_proof_3p_unauth_block_exp";
3
- export declare const INLINE_SOCIAL_PROOF_EXPERIMENT_KEY = "platform_sl_3p_preauth_social_proof_inline_cta";
4
- type SocialProofExperimentMetadata = {
5
- isEligible: boolean;
6
- tier?: SocialProofTier;
7
- };
8
- export type BlockCardSocialProofExperimentMeta = {
9
- [SOCIAL_PROOF_3P_UNAUTH_BLOCK_EXPERIMENT_KEY]: SocialProofExperimentMetadata;
10
- };
11
- export type InlineSocialProofExperimentMeta = {
12
- [INLINE_SOCIAL_PROOF_EXPERIMENT_KEY]: SocialProofExperimentMetadata;
13
- };
14
2
  export interface SocialProofExperiment {
15
3
  /**
16
4
  * The raw connected users percentage for the current provider, or undefined if not loaded/available.
@@ -32,16 +20,6 @@ export interface SocialProofExperiment {
32
20
  */
33
21
  tier: SocialProofTier;
34
22
  }
35
- export declare const SOCIAL_PROOF_TIER_THRESHOLD = 30;
36
- export declare const getSocialProofTier: (connectedPct?: number) => SocialProofTier | undefined;
37
- export declare const getSocialProofExperimentMeta: (params: {
38
- baseUriWithNoTrailingSlash?: string;
39
- extensionKey?: string;
40
- }) => BlockCardSocialProofExperimentMeta;
41
- export declare const getInlineSocialProofExperimentMeta: (params: {
42
- baseUriWithNoTrailingSlash?: string;
43
- extensionKey?: string;
44
- }) => InlineSocialProofExperimentMeta;
45
23
  /**
46
24
  * Returns enrollment and treatment state for the social proof unauth block card experiment.
47
25
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/smart-card",
3
- "version": "44.9.9",
3
+ "version": "44.9.10",
4
4
  "description": "Smart card component",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -51,7 +51,7 @@
51
51
  "@atlaskit/feature-gate-js-client": "^5.5.0",
52
52
  "@atlaskit/flag": "^17.11.0",
53
53
  "@atlaskit/form": "^15.5.0",
54
- "@atlaskit/frontend-utilities": "^3.2.0",
54
+ "@atlaskit/frontend-utilities": "^3.3.0",
55
55
  "@atlaskit/heading": "^5.4.0",
56
56
  "@atlaskit/icon": "^34.5.0",
57
57
  "@atlaskit/icon-file-type": "^7.0.0",
@@ -73,7 +73,7 @@
73
73
  "@atlaskit/object": "^1.0.0",
74
74
  "@atlaskit/outbound-auth-flow-client": "^3.4.0",
75
75
  "@atlaskit/platform-feature-flags": "^1.1.0",
76
- "@atlaskit/platform-feature-flags-react": "^0.4.0",
76
+ "@atlaskit/platform-feature-flags-react": "^0.5.0",
77
77
  "@atlaskit/popup": "^4.19.0",
78
78
  "@atlaskit/primitives": "^19.0.0",
79
79
  "@atlaskit/react-ufo": "^5.20.0",
@@ -89,7 +89,7 @@
89
89
  "@atlaskit/tmp-editor-statsig": "^80.0.0",
90
90
  "@atlaskit/tokens": "^13.0.0",
91
91
  "@atlaskit/tooltip": "^22.2.0",
92
- "@atlaskit/ufo": "^0.4.0",
92
+ "@atlaskit/ufo": "^0.5.0",
93
93
  "@atlaskit/width-detector": "^5.1.0",
94
94
  "@babel/runtime": "^7.0.0",
95
95
  "@compiled/react": "^0.20.0",
@@ -114,7 +114,7 @@
114
114
  "devDependencies": {
115
115
  "@af/integration-testing": "workspace:^",
116
116
  "@af/visual-regression": "workspace:^",
117
- "@atlaskit/analytics-listeners": "^10.0.0",
117
+ "@atlaskit/analytics-listeners": "^10.1.0",
118
118
  "@atlaskit/css-reset": "^7.4.0",
119
119
  "@atlaskit/media-test-helpers": "^41.0.0",
120
120
  "@atlaskit/ssr": "workspace:^",
@@ -1,39 +0,0 @@
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 _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
- var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
10
- var _state = require("../../../state");
11
- var _helpers = require("../../../state/helpers");
12
- var _useSocialProofExperiment = require("../../../state/hooks/use-social-proof-experiment");
13
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
14
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
15
- var useExperimentMetaEventAttributes = function useExperimentMetaEventAttributes(_ref) {
16
- var appearance = _ref.appearance,
17
- state = _ref.state;
18
- var _useSmartLinkContext = (0, _state.useSmartLinkContext)(),
19
- baseUriWithNoTrailingSlash = _useSmartLinkContext.connections.client.baseUrlOverride;
20
- var details = state.details,
21
- status = state.status;
22
- var extensionKey = (0, _helpers.getExtensionKey)(details);
23
- if (!(0, _platformFeatureFlags.fg)('social-proof-3p-unauth-block-fg') && !(0, _platformFeatureFlags.fg)('platform_sl_3p_preauth_soc_proof_inline_killswitch')) {
24
- return undefined;
25
- }
26
- var blockSocialProofExperimentMeta = appearance === 'block' && status === 'unauthorized' && (0, _platformFeatureFlags.fg)('social-proof-3p-unauth-block-fg') ? (0, _useSocialProofExperiment.getSocialProofExperimentMeta)({
27
- extensionKey: extensionKey,
28
- baseUriWithNoTrailingSlash: baseUriWithNoTrailingSlash
29
- }) : undefined;
30
- var inlineSocialProofExperimentMeta = appearance === 'inline' && status === 'unauthorized' && (0, _platformFeatureFlags.fg)('platform_sl_3p_preauth_soc_proof_inline_killswitch') ? (0, _useSocialProofExperiment.getInlineSocialProofExperimentMeta)({
31
- extensionKey: extensionKey,
32
- baseUriWithNoTrailingSlash: baseUriWithNoTrailingSlash
33
- }) : undefined;
34
- var experimentMeta = _objectSpread(_objectSpread({}, blockSocialProofExperimentMeta), inlineSocialProofExperimentMeta);
35
- if (Object.keys(experimentMeta).length > 0) {
36
- return experimentMeta;
37
- }
38
- };
39
- var _default = exports.default = useExperimentMetaEventAttributes;
@@ -1,40 +0,0 @@
1
- import { fg } from "@atlaskit/platform-feature-flags";
2
- import { useSmartLinkContext } from "../../../state";
3
- import { getExtensionKey } from "../../../state/helpers";
4
- import { getSocialProofExperimentMeta, getInlineSocialProofExperimentMeta } from "../../../state/hooks/use-social-proof-experiment";
5
- const useExperimentMetaEventAttributes = ({
6
- appearance,
7
- state
8
- }) => {
9
- const {
10
- connections: {
11
- client: {
12
- baseUrlOverride: baseUriWithNoTrailingSlash
13
- }
14
- }
15
- } = useSmartLinkContext();
16
- const {
17
- details,
18
- status
19
- } = state;
20
- const extensionKey = getExtensionKey(details);
21
- if (!fg('social-proof-3p-unauth-block-fg') && !fg('platform_sl_3p_preauth_soc_proof_inline_killswitch')) {
22
- return undefined;
23
- }
24
- const blockSocialProofExperimentMeta = appearance === 'block' && status === 'unauthorized' && fg('social-proof-3p-unauth-block-fg') ? getSocialProofExperimentMeta({
25
- extensionKey,
26
- baseUriWithNoTrailingSlash
27
- }) : undefined;
28
- const inlineSocialProofExperimentMeta = appearance === 'inline' && status === 'unauthorized' && fg('platform_sl_3p_preauth_soc_proof_inline_killswitch') ? getInlineSocialProofExperimentMeta({
29
- extensionKey,
30
- baseUriWithNoTrailingSlash
31
- }) : undefined;
32
- const experimentMeta = {
33
- ...blockSocialProofExperimentMeta,
34
- ...inlineSocialProofExperimentMeta
35
- };
36
- if (Object.keys(experimentMeta).length > 0) {
37
- return experimentMeta;
38
- }
39
- };
40
- export default useExperimentMetaEventAttributes;
@@ -1,32 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
- import { fg } from "@atlaskit/platform-feature-flags";
5
- import { useSmartLinkContext } from "../../../state";
6
- import { getExtensionKey } from "../../../state/helpers";
7
- import { getSocialProofExperimentMeta, getInlineSocialProofExperimentMeta } from "../../../state/hooks/use-social-proof-experiment";
8
- var useExperimentMetaEventAttributes = function useExperimentMetaEventAttributes(_ref) {
9
- var appearance = _ref.appearance,
10
- state = _ref.state;
11
- var _useSmartLinkContext = useSmartLinkContext(),
12
- baseUriWithNoTrailingSlash = _useSmartLinkContext.connections.client.baseUrlOverride;
13
- var details = state.details,
14
- status = state.status;
15
- var extensionKey = getExtensionKey(details);
16
- if (!fg('social-proof-3p-unauth-block-fg') && !fg('platform_sl_3p_preauth_soc_proof_inline_killswitch')) {
17
- return undefined;
18
- }
19
- var blockSocialProofExperimentMeta = appearance === 'block' && status === 'unauthorized' && fg('social-proof-3p-unauth-block-fg') ? getSocialProofExperimentMeta({
20
- extensionKey: extensionKey,
21
- baseUriWithNoTrailingSlash: baseUriWithNoTrailingSlash
22
- }) : undefined;
23
- var inlineSocialProofExperimentMeta = appearance === 'inline' && status === 'unauthorized' && fg('platform_sl_3p_preauth_soc_proof_inline_killswitch') ? getInlineSocialProofExperimentMeta({
24
- extensionKey: extensionKey,
25
- baseUriWithNoTrailingSlash: baseUriWithNoTrailingSlash
26
- }) : undefined;
27
- var experimentMeta = _objectSpread(_objectSpread({}, blockSocialProofExperimentMeta), inlineSocialProofExperimentMeta);
28
- if (Object.keys(experimentMeta).length > 0) {
29
- return experimentMeta;
30
- }
31
- };
32
- export default useExperimentMetaEventAttributes;
@@ -1,9 +0,0 @@
1
- import type { CardAppearance, CardState } from "@atlaskit/linking-common";
2
- import { type BlockCardSocialProofExperimentMeta, type InlineSocialProofExperimentMeta } from "../../../state/hooks/use-social-proof-experiment";
3
- type ExperimentMetaEventAttributes = Partial<BlockCardSocialProofExperimentMeta & InlineSocialProofExperimentMeta>;
4
- type ExperimentMetaEventAttributesParams = {
5
- appearance: CardAppearance;
6
- state: CardState;
7
- };
8
- declare const useExperimentMetaEventAttributes: ({ appearance, state, }: ExperimentMetaEventAttributesParams) => ExperimentMetaEventAttributes | undefined;
9
- export default useExperimentMetaEventAttributes;
@@ -1,9 +0,0 @@
1
- import type { CardAppearance, CardState } from "@atlaskit/linking-common";
2
- import { type BlockCardSocialProofExperimentMeta, type InlineSocialProofExperimentMeta } from "../../../state/hooks/use-social-proof-experiment";
3
- type ExperimentMetaEventAttributes = Partial<BlockCardSocialProofExperimentMeta & InlineSocialProofExperimentMeta>;
4
- type ExperimentMetaEventAttributesParams = {
5
- appearance: CardAppearance;
6
- state: CardState;
7
- };
8
- declare const useExperimentMetaEventAttributes: ({ appearance, state, }: ExperimentMetaEventAttributesParams) => ExperimentMetaEventAttributes | undefined;
9
- export default useExperimentMetaEventAttributes;