@atlaskit/smart-card 45.13.3 → 45.13.5

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 (82) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/analytics.spec.yaml +35 -0
  3. package/dist/cjs/__tests__/vr-tests/__snapshots__/flexible-card/flexible-ui-block-metadata--default.png +2 -2
  4. package/dist/cjs/__tests__/vr-tests/__snapshots__/flexible-card/flexible-ui-composition--default.png +2 -2
  5. package/dist/cjs/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-blocker--default.png +2 -2
  6. package/dist/cjs/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-critical--default.png +2 -2
  7. package/dist/cjs/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-high--default.png +2 -2
  8. package/dist/cjs/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-highest--default.png +2 -2
  9. package/dist/cjs/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-low--default.png +2 -2
  10. package/dist/cjs/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-lowest--default.png +2 -2
  11. package/dist/cjs/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-major--default.png +2 -2
  12. package/dist/cjs/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-medium--default.png +2 -2
  13. package/dist/cjs/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-minor--default.png +2 -2
  14. package/dist/cjs/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-trivial--default.png +2 -2
  15. package/dist/cjs/__tests__/vr-tests/__snapshots__/icon-element-variations/icon-element-all-variations-with-experiments--default--platform-sl-3p-preauth-better-hovercard-killswitch-false-platform-sl-3p-preauth-better-hovercard-false.png +2 -2
  16. package/dist/cjs/__tests__/vr-tests/__snapshots__/icon-element-variations/icon-element-all-variations-with-experiments--default--platform-sl-3p-preauth-better-hovercard-killswitch-false-platform-sl-3p-preauth-better-hovercard-true.png +2 -2
  17. package/dist/cjs/__tests__/vr-tests/__snapshots__/icon-element-variations/icon-element-all-variations-with-experiments--default--platform-sl-3p-preauth-better-hovercard-killswitch-true-platform-sl-3p-preauth-better-hovercard-false.png +2 -2
  18. package/dist/cjs/__tests__/vr-tests/__snapshots__/icon-element-variations/icon-element-all-variations-with-experiments--default--platform-sl-3p-preauth-better-hovercard-killswitch-true-platform-sl-3p-preauth-better-hovercard-true.png +2 -2
  19. package/dist/cjs/utils/analytics/analytics.js +1 -1
  20. package/dist/cjs/utils/index.js +111 -10
  21. package/dist/cjs/view/EmbedCard/components/carousel/index.js +7 -2
  22. package/dist/cjs/view/EmbedCard/views/unauthorized-view/UnauthorizedCarouselView.js +16 -1
  23. package/dist/cjs/view/FlexibleCard/components/common/atlaskit-icon/index.js +10 -1
  24. package/dist/cjs/view/LinkUrl/index.js +1 -1
  25. package/dist/es2019/__tests__/vr-tests/__snapshots__/flexible-card/flexible-ui-block-metadata--default.png +2 -2
  26. package/dist/es2019/__tests__/vr-tests/__snapshots__/flexible-card/flexible-ui-composition--default.png +2 -2
  27. package/dist/es2019/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-blocker--default.png +2 -2
  28. package/dist/es2019/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-critical--default.png +2 -2
  29. package/dist/es2019/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-high--default.png +2 -2
  30. package/dist/es2019/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-highest--default.png +2 -2
  31. package/dist/es2019/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-low--default.png +2 -2
  32. package/dist/es2019/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-lowest--default.png +2 -2
  33. package/dist/es2019/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-major--default.png +2 -2
  34. package/dist/es2019/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-medium--default.png +2 -2
  35. package/dist/es2019/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-minor--default.png +2 -2
  36. package/dist/es2019/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-trivial--default.png +2 -2
  37. package/dist/es2019/__tests__/vr-tests/__snapshots__/icon-element-variations/icon-element-all-variations-with-experiments--default--platform-sl-3p-preauth-better-hovercard-killswitch-false-platform-sl-3p-preauth-better-hovercard-false.png +2 -2
  38. package/dist/es2019/__tests__/vr-tests/__snapshots__/icon-element-variations/icon-element-all-variations-with-experiments--default--platform-sl-3p-preauth-better-hovercard-killswitch-false-platform-sl-3p-preauth-better-hovercard-true.png +2 -2
  39. package/dist/es2019/__tests__/vr-tests/__snapshots__/icon-element-variations/icon-element-all-variations-with-experiments--default--platform-sl-3p-preauth-better-hovercard-killswitch-true-platform-sl-3p-preauth-better-hovercard-false.png +2 -2
  40. package/dist/es2019/__tests__/vr-tests/__snapshots__/icon-element-variations/icon-element-all-variations-with-experiments--default--platform-sl-3p-preauth-better-hovercard-killswitch-true-platform-sl-3p-preauth-better-hovercard-true.png +2 -2
  41. package/dist/es2019/utils/analytics/analytics.js +1 -1
  42. package/dist/es2019/utils/index.js +51 -10
  43. package/dist/es2019/view/EmbedCard/components/carousel/index.js +7 -2
  44. package/dist/es2019/view/EmbedCard/views/unauthorized-view/UnauthorizedCarouselView.js +16 -1
  45. package/dist/es2019/view/FlexibleCard/components/common/atlaskit-icon/index.js +9 -1
  46. package/dist/es2019/view/LinkUrl/index.js +1 -1
  47. package/dist/esm/__tests__/vr-tests/__snapshots__/flexible-card/flexible-ui-block-metadata--default.png +2 -2
  48. package/dist/esm/__tests__/vr-tests/__snapshots__/flexible-card/flexible-ui-composition--default.png +2 -2
  49. package/dist/esm/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-blocker--default.png +2 -2
  50. package/dist/esm/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-critical--default.png +2 -2
  51. package/dist/esm/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-high--default.png +2 -2
  52. package/dist/esm/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-highest--default.png +2 -2
  53. package/dist/esm/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-low--default.png +2 -2
  54. package/dist/esm/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-lowest--default.png +2 -2
  55. package/dist/esm/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-major--default.png +2 -2
  56. package/dist/esm/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-medium--default.png +2 -2
  57. package/dist/esm/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-minor--default.png +2 -2
  58. package/dist/esm/__tests__/vr-tests/__snapshots__/flexible-card-icon/icon-type-priority-trivial--default.png +2 -2
  59. package/dist/esm/__tests__/vr-tests/__snapshots__/icon-element-variations/icon-element-all-variations-with-experiments--default--platform-sl-3p-preauth-better-hovercard-killswitch-false-platform-sl-3p-preauth-better-hovercard-false.png +2 -2
  60. package/dist/esm/__tests__/vr-tests/__snapshots__/icon-element-variations/icon-element-all-variations-with-experiments--default--platform-sl-3p-preauth-better-hovercard-killswitch-false-platform-sl-3p-preauth-better-hovercard-true.png +2 -2
  61. package/dist/esm/__tests__/vr-tests/__snapshots__/icon-element-variations/icon-element-all-variations-with-experiments--default--platform-sl-3p-preauth-better-hovercard-killswitch-true-platform-sl-3p-preauth-better-hovercard-false.png +2 -2
  62. package/dist/esm/__tests__/vr-tests/__snapshots__/icon-element-variations/icon-element-all-variations-with-experiments--default--platform-sl-3p-preauth-better-hovercard-killswitch-true-platform-sl-3p-preauth-better-hovercard-true.png +2 -2
  63. package/dist/esm/utils/analytics/analytics.js +1 -1
  64. package/dist/esm/utils/index.js +91 -10
  65. package/dist/esm/view/EmbedCard/components/carousel/index.js +7 -2
  66. package/dist/esm/view/EmbedCard/views/unauthorized-view/UnauthorizedCarouselView.js +16 -1
  67. package/dist/esm/view/FlexibleCard/components/common/atlaskit-icon/index.js +10 -1
  68. package/dist/esm/view/LinkUrl/index.js +1 -1
  69. package/dist/types/common/analytics/generated/analytics.types.d.ts +19 -3
  70. package/dist/types/common/ui/icons/priority-blocker-icon.d.ts +1 -0
  71. package/dist/types/common/ui/icons/priority-critical-icon.d.ts +1 -0
  72. package/dist/types/common/ui/icons/priority-high-icon.d.ts +1 -0
  73. package/dist/types/common/ui/icons/priority-highest-icon.d.ts +1 -0
  74. package/dist/types/common/ui/icons/priority-low-icon.d.ts +1 -0
  75. package/dist/types/common/ui/icons/priority-lowest-icon.d.ts +1 -0
  76. package/dist/types/common/ui/icons/priority-major-icon.d.ts +1 -0
  77. package/dist/types/common/ui/icons/priority-medium-icon.d.ts +1 -0
  78. package/dist/types/common/ui/icons/priority-minor-icon.d.ts +1 -0
  79. package/dist/types/common/ui/icons/priority-trivial-icon.d.ts +1 -0
  80. package/dist/types/view/EmbedCard/components/carousel/index.d.ts +4 -2
  81. package/dist/types/view/EmbedCard/components/carousel/types.d.ts +6 -0
  82. package/package.json +7 -4
@@ -75,6 +75,7 @@ var UnauthorizedCarouselView = function UnauthorizedCarouselView(_ref) {
75
75
  var items = useMemo(function () {
76
76
  if (!canAuthorize) {
77
77
  return [{
78
+ id: 'no-auth-available',
78
79
  title: intl.formatMessage(messages.unauthorised_account_name_no_provider),
79
80
  description: intl.formatMessage(messages.unauthorised_account_description_no_provider),
80
81
  image: /*#__PURE__*/React.createElement(NoAuthAvailableImage, null)
@@ -92,6 +93,7 @@ var UnauthorizedCarouselView = function UnauthorizedCarouselView(_ref) {
92
93
  // We only have special text for Google Drive and i18n select takes only one word (no space).
93
94
  var i18nSelectContext = (context === null || context === void 0 ? void 0 : context.text) === 'Google Drive' ? 'Google' : context === null || context === void 0 ? void 0 : context.text;
94
95
  var slides = [{
96
+ id: 'smart-link-benefit',
95
97
  title: intl.formatMessage(messages.connect_link_account_embed_carousel_sl_title),
96
98
  description: intl.formatMessage(messages.connect_link_account_embed_carousel_sl_description, {
97
99
  context: i18nSelectContext,
@@ -107,6 +109,7 @@ var UnauthorizedCarouselView = function UnauthorizedCarouselView(_ref) {
107
109
  // we show additional Rovo-specific teaser slides to encourage the user to connect their account.
108
110
  if (rovoOptions !== null && rovoOptions !== void 0 && rovoOptions.isRovoEnabled) {
109
111
  slides.push({
112
+ id: 'rovo-search-benefit',
110
113
  title: intl.formatMessage(messages.connect_link_account_embed_carousel_rovo_title),
111
114
  description: intl.formatMessage(messages.connect_link_account_embed_carousel_rovo_description, {
112
115
  context: providerName,
@@ -123,6 +126,7 @@ var UnauthorizedCarouselView = function UnauthorizedCarouselView(_ref) {
123
126
  }
124
127
  if (rovoOptions !== null && rovoOptions !== void 0 && rovoOptions.isRovoEnabled && rovoOptions !== null && rovoOptions !== void 0 && rovoOptions.isRovoLLMEnabled) {
125
128
  slides.push({
129
+ id: 'rovo-chat-benefit',
126
130
  title: intl.formatMessage(messages.connect_link_account_embed_carousel_rovochat_title),
127
131
  description: intl.formatMessage(messages.connect_link_account_embed_carousel_rovochat_description, {
128
132
  context: providerName
@@ -138,12 +142,22 @@ var UnauthorizedCarouselView = function UnauthorizedCarouselView(_ref) {
138
142
  }
139
143
  return slides;
140
144
  }, [canAuthorize, context, intl, product, providerName, providerIcon, rovoOptions]);
141
- var handleOnAuthorizeClick = useCallback(function () {
145
+ var handleOnAuthorizeClick = useCallback(function (slideId) {
142
146
  if (onAuthorize) {
143
147
  fireEvent('track.applicationAccount.authStarted', {});
148
+ fireEvent('ui.button.clicked.carouselConnect', {
149
+ display: 'embed',
150
+ slideId: slideId
151
+ });
144
152
  onAuthorize();
145
153
  }
146
154
  }, [onAuthorize, fireEvent]);
155
+ var handleOnNextClick = useCallback(function (slideId) {
156
+ fireEvent('ui.button.clicked.carouselNext', {
157
+ display: 'embed',
158
+ slideId: slideId
159
+ });
160
+ }, [fireEvent]);
147
161
  var buttonLabel = context !== null && context !== void 0 && context.text ? intl.formatMessage(messages.connect_3p_account, {
148
162
  context: context.text
149
163
  }) : intl.formatMessage(messages.connect_link_account_card);
@@ -174,6 +188,7 @@ var UnauthorizedCarouselView = function UnauthorizedCarouselView(_ref) {
174
188
  icon: context === null || context === void 0 ? void 0 : context.icon,
175
189
  iconLabel: context === null || context === void 0 ? void 0 : context.text,
176
190
  items: items,
191
+ onNextClick: handleOnNextClick,
177
192
  onPrimaryButtonClick: canAuthorize ? handleOnAuthorizeClick : undefined,
178
193
  primaryButtonLabel: buttonLabel,
179
194
  testId: "".concat(testId, "-carousel")
@@ -1,4 +1,5 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
+ import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2
3
  import React from 'react';
3
4
  import Loadable from 'react-loadable';
4
5
  import { IconTile } from '@atlaskit/icon';
@@ -35,8 +36,9 @@ var getDocumentIcon = function getDocumentIcon() {
35
36
  var getLiveDocumentIcon = function getLiveDocumentIcon() {
36
37
  return require('../../../../../common/ui/icons/live-document-icon').default;
37
38
  };
39
+ var PRIORITY_ICONS = [IconType.PriorityBlocker, IconType.PriorityCritical, IconType.PriorityHigh, IconType.PriorityHighest, IconType.PriorityLow, IconType.PriorityLowest, IconType.PriorityMajor, IconType.PriorityMedium, IconType.PriorityMinor, IconType.PriorityTrivial];
38
40
  var isCoreIcon = function isCoreIcon(icon) {
39
- return [IconType.Project, IconType.Template, IconType.Forbidden, IconType.Default, IconType.Error, IconType.Attachment, IconType.CheckItem, IconType.Component, IconType.Comment, IconType.View, IconType.React, IconType.Vote, IconType.PriorityUndefined, IconType.ProgrammingLanguage, IconType.Subscriber, IconType.SubTasksProgress].includes(icon);
41
+ return [IconType.Project, IconType.Template, IconType.Forbidden, IconType.Default, IconType.Error, IconType.Attachment, IconType.CheckItem, IconType.Component, IconType.Comment, IconType.View, IconType.React, IconType.Vote, IconType.PriorityUndefined, IconType.ProgrammingLanguage, IconType.Subscriber, IconType.SubTasksProgress].concat(_toConsumableArray(fg('platform_sl_priority_icon') ? PRIORITY_ICONS : [])).includes(icon);
40
42
  };
41
43
  var AtlaskitIcon = function AtlaskitIcon(_ref) {
42
44
  var icon = _ref.icon,
@@ -100,6 +102,13 @@ var AtlaskitIcon = function AtlaskitIcon(_ref) {
100
102
  });
101
103
  case SmartLinkSize.Large:
102
104
  case SmartLinkSize.XLarge:
105
+ if (PRIORITY_ICONS.includes(icon) && fg('platform_sl_priority_icon')) {
106
+ return /*#__PURE__*/React.createElement(ImportedIcon, {
107
+ label: label,
108
+ testId: testId,
109
+ color: color
110
+ });
111
+ }
103
112
  var appearance;
104
113
  if (icon === IconType.Error || icon === IconType.Forbidden) {
105
114
  appearance = 'redBold';
@@ -12,7 +12,7 @@ import LinkWarningModal from './LinkWarningModal';
12
12
  import { useLinkWarningModal } from './LinkWarningModal/hooks/use-link-warning-modal';
13
13
  var PACKAGE_DATA = {
14
14
  packageName: "@atlaskit/smart-card",
15
- packageVersion: "45.13.2",
15
+ packageVersion: "45.13.4",
16
16
  componentName: 'linkUrl'
17
17
  };
18
18
  var LinkUrl = function LinkUrl(_ref) {
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Generates Typescript types for analytics events from analytics.spec.yaml
5
5
  *
6
- * @codegen <<SignedSource::4e18b8952a94e4fc3afd62ef6213f7b1>>
6
+ * @codegen <<SignedSource::326efd393bebe329396aa4b676d0ff6d>>
7
7
  * @codegenCommand yarn workspace @atlassian/analytics-tooling run analytics:codegen smart-card
8
8
  */
9
9
  export type PackageMetaDataContextType = {
@@ -232,6 +232,14 @@ export type ButtonClickedConnectAccountAttributesType = {
232
232
  display: 'inline' | 'block' | 'embed' | 'embedPreview' | 'flexible' | 'hoverCardPreview' | 'url';
233
233
  definitionId?: string | null;
234
234
  };
235
+ export type ButtonClickedCarouselNextAttributesType = {
236
+ display: 'inline' | 'block' | 'embed' | 'embedPreview' | 'flexible' | 'hoverCardPreview' | 'url';
237
+ slideId: string;
238
+ };
239
+ export type ButtonClickedCarouselConnectAttributesType = {
240
+ display: 'inline' | 'block' | 'embed' | 'embedPreview' | 'flexible' | 'hoverCardPreview' | 'url';
241
+ slideId: string;
242
+ };
235
243
  export type SmartLinkClickedTryAnotherAccountAttributesType = {
236
244
  display: 'inline' | 'block' | 'embed' | 'embedPreview' | 'flexible' | 'hoverCardPreview' | 'url';
237
245
  definitionId?: string | null;
@@ -277,8 +285,8 @@ export type SmartLinkClickedSmartlinkClickAnalyticsWorkflowsAttributesType = {
277
285
  eventName: string;
278
286
  firstPartyIdentifier?: string | null;
279
287
  clickedAt: string;
280
- isAuxClick?: boolean;
281
- isContextMenu?: boolean;
288
+ isAuxClick?: boolean | null;
289
+ isContextMenu?: boolean | null;
282
290
  };
283
291
  export type AnalyticsEventAttributes = {
284
292
  /**
@@ -413,6 +421,14 @@ export type AnalyticsEventAttributes = {
413
421
  /**
414
422
  * fires an event that represents when a user clicks on the authentication call to action with no current authenticated account. (i.e. Connect to Preview). */
415
423
  'ui.button.clicked.connectAccount': ButtonClickedConnectAccountAttributesType;
424
+ /**
425
+ * Fires when a user clicks the "See next" button in a smart link carousel view. Used to measure engagement depth — how many users navigate past the first benefit slide.
426
+ * */
427
+ 'ui.button.clicked.carouselNext': ButtonClickedCarouselNextAttributesType;
428
+ /**
429
+ * Fires when a user clicks the connect account button from within a smart link carousel view. Captures which benefit slide the user was viewing when they decided to connect, enabling measurement of which slide is most persuasive.
430
+ * */
431
+ 'ui.button.clicked.carouselConnect': ButtonClickedCarouselConnectAttributesType;
416
432
  /**
417
433
  * fires an event that represents when a user clicks on the authentication call to action with a forbidden authenticated account. (i.e. Try another account). */
418
434
  'ui.smartLink.clicked.tryAnotherAccount': SmartLinkClickedTryAnotherAccountAttributesType;
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * @jsxRuntime classic
3
3
  * @jsx jsx
4
+ * Delete on cleanup of platform_sl_priority_icon
4
5
  */
5
6
  import type { FC } from 'react';
6
7
  export interface PriorityIconProps {
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * @jsxRuntime classic
3
3
  * @jsx jsx
4
+ * Delete on cleanup of platform_sl_priority_icon
4
5
  */
5
6
  import type { FC } from 'react';
6
7
  export interface PriorityIconProps {
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * @jsxRuntime classic
3
3
  * @jsx jsx
4
+ * Delete on cleanup of platform_sl_priority_icon
4
5
  */
5
6
  import type { FC } from 'react';
6
7
  export interface PriorityIconProps {
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * @jsxRuntime classic
3
3
  * @jsx jsx
4
+ * Delete on cleanup of platform_sl_priority_icon
4
5
  */
5
6
  import type { FC } from 'react';
6
7
  export interface PriorityIconProps {
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * @jsxRuntime classic
3
3
  * @jsx jsx
4
+ * Delete on cleanup of platform_sl_priority_icon
4
5
  */
5
6
  import type { FC } from 'react';
6
7
  export interface PriorityIconProps {
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * @jsxRuntime classic
3
3
  * @jsx jsx
4
+ * Delete on cleanup of platform_sl_priority_icon
4
5
  */
5
6
  import type { FC } from 'react';
6
7
  export interface PriorityIconProps {
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * @jsxRuntime classic
3
3
  * @jsx jsx
4
+ * Delete on cleanup of platform_sl_priority_icon
4
5
  */
5
6
  import type { FC } from 'react';
6
7
  export interface PriorityIconProps {
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * @jsxRuntime classic
3
3
  * @jsx jsx
4
+ * Delete on cleanup of platform_sl_priority_icon
4
5
  */
5
6
  import type { FC } from 'react';
6
7
  export interface PriorityIconProps {
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * @jsxRuntime classic
3
3
  * @jsx jsx
4
+ * Delete on cleanup of platform_sl_priority_icon
4
5
  */
5
6
  import type { FC } from 'react';
6
7
  export interface PriorityIconProps {
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * @jsxRuntime classic
3
3
  * @jsx jsx
4
+ * Delete on cleanup of platform_sl_priority_icon
4
5
  */
5
6
  import type { FC } from 'react';
6
7
  export interface PriorityIconProps {
@@ -13,12 +13,14 @@ type CarouselProps = {
13
13
  initialSlideIndex?: number;
14
14
  /** Ordered list of teaser slides */
15
15
  items: CarouselItem[];
16
+ /** Called when the user clicks the "See next" navigation button */
17
+ onNextClick?: (slideId: string) => void;
16
18
  /** Called when the user clicks the primary button */
17
- onPrimaryButtonClick?: () => void;
19
+ onPrimaryButtonClick?: (slideId: string) => void;
18
20
  /** Text for the auth button, e.g. "Connect to Figma" */
19
21
  primaryButtonLabel: string;
20
22
  /** testId prefix */
21
23
  testId?: string;
22
24
  };
23
- declare const Carousel: ({ icon, iconLabel, initialSlideIndex, items, onPrimaryButtonClick, primaryButtonLabel, testId, }: CarouselProps) => React.JSX.Element;
25
+ declare const Carousel: ({ icon, iconLabel, initialSlideIndex, items, onNextClick, onPrimaryButtonClick, primaryButtonLabel, testId, }: CarouselProps) => React.JSX.Element;
24
26
  export default Carousel;
@@ -15,6 +15,12 @@ export type CarouselItem = {
15
15
  * provider name (e.g. "Google Drive") and returns the final string.
16
16
  */
17
17
  description: string;
18
+ /**
19
+ * Stable semantic identifier for this slide — used in analytics to track
20
+ * which slide drove connect/navigation events, independent of slide order.
21
+ * e.g. 'smart-link-benefit', 'rovo-search-benefit', 'rovo-chat-benefit'
22
+ */
23
+ id: string;
18
24
  /** Large hero image — either a React element (e.g. SVG) or an image URL */
19
25
  image: ReactNode | string;
20
26
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/smart-card",
3
- "version": "45.13.3",
3
+ "version": "45.13.5",
4
4
  "description": "Smart card component",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -40,7 +40,7 @@
40
40
  "@atlaskit/analytics-cross-product": "^2.1.0",
41
41
  "@atlaskit/analytics-gas-types": "^6.0.0",
42
42
  "@atlaskit/analytics-next": "^12.3.0",
43
- "@atlaskit/avatar": "^26.3.0",
43
+ "@atlaskit/avatar": "^26.4.0",
44
44
  "@atlaskit/avatar-group": "^13.2.0",
45
45
  "@atlaskit/badge": "^19.1.0",
46
46
  "@atlaskit/browser-apis": "^1.2.0",
@@ -70,7 +70,7 @@
70
70
  "@atlaskit/lozenge": "^14.1.0",
71
71
  "@atlaskit/menu": "^9.2.0",
72
72
  "@atlaskit/modal-dialog": "^16.2.0",
73
- "@atlaskit/motion": "^7.5.0",
73
+ "@atlaskit/motion": "^8.0.0",
74
74
  "@atlaskit/object": "^2.2.0",
75
75
  "@atlaskit/outbound-auth-flow-client": "^4.1.0",
76
76
  "@atlaskit/platform-feature-flags": "^2.1.0",
@@ -88,7 +88,7 @@
88
88
  "@atlaskit/textfield": "^9.1.0",
89
89
  "@atlaskit/theme": "^26.1.0",
90
90
  "@atlaskit/tile": "^2.3.0",
91
- "@atlaskit/tmp-editor-statsig": "^135.0.0",
91
+ "@atlaskit/tmp-editor-statsig": "^135.2.0",
92
92
  "@atlaskit/tokens": "^16.3.0",
93
93
  "@atlaskit/tooltip": "^23.2.0",
94
94
  "@atlaskit/ufo": "^1.0.0",
@@ -211,6 +211,9 @@
211
211
  "jfp-magma-platform-lozenge-jump-fix": {
212
212
  "type": "boolean"
213
213
  },
214
+ "platform_sl_priority_icon": {
215
+ "type": "boolean"
216
+ },
214
217
  "platform_sl_action_refactoring": {
215
218
  "type": "boolean"
216
219
  },