@atlaskit/smart-card 31.0.2 → 32.0.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 (84) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/cjs/extractors/action/extractDownloadActionProps.js +28 -0
  3. package/dist/cjs/extractors/action/extractPreviewActionProps.js +43 -0
  4. package/dist/cjs/extractors/action/extractViewActionProps.js +27 -0
  5. package/dist/cjs/extractors/common/actions/extractActions.js +5 -0
  6. package/dist/cjs/extractors/common/actions/extractPreviewAction.js +5 -0
  7. package/dist/cjs/extractors/common/actions/types.js +5 -0
  8. package/dist/cjs/extractors/flexible/actions/extract-preview-action.js +3 -1
  9. package/dist/cjs/state/actions/index.js +4 -12
  10. package/dist/cjs/state/analytics/useSmartLinkAnalytics.js +0 -23
  11. package/dist/cjs/state/hooks-external/useSmartLinkActions.js +38 -0
  12. package/dist/cjs/utils/actions/to-action.js +18 -0
  13. package/dist/cjs/utils/analytics/analytics.js +54 -76
  14. package/dist/cjs/utils/analytics/index.js +0 -6
  15. package/dist/cjs/view/LinkUrl/index.js +1 -1
  16. package/dist/es2019/extractors/action/extractDownloadActionProps.js +19 -0
  17. package/dist/es2019/extractors/action/extractPreviewActionProps.js +31 -0
  18. package/dist/es2019/extractors/action/extractViewActionProps.js +18 -0
  19. package/dist/es2019/extractors/common/actions/extractActions.js +5 -0
  20. package/dist/es2019/extractors/common/actions/extractPreviewAction.js +5 -0
  21. package/dist/es2019/extractors/common/actions/types.js +1 -0
  22. package/dist/es2019/extractors/flexible/actions/extract-preview-action.js +3 -1
  23. package/dist/es2019/state/actions/index.js +4 -12
  24. package/dist/es2019/state/analytics/useSmartLinkAnalytics.js +1 -24
  25. package/dist/es2019/state/hooks-external/useSmartLinkActions.js +38 -0
  26. package/dist/es2019/utils/actions/to-action.js +9 -0
  27. package/dist/es2019/utils/analytics/analytics.js +1 -23
  28. package/dist/es2019/utils/analytics/index.js +1 -1
  29. package/dist/es2019/view/LinkUrl/index.js +1 -1
  30. package/dist/esm/extractors/action/extractDownloadActionProps.js +22 -0
  31. package/dist/esm/extractors/action/extractPreviewActionProps.js +36 -0
  32. package/dist/esm/extractors/action/extractViewActionProps.js +21 -0
  33. package/dist/esm/extractors/common/actions/extractActions.js +5 -0
  34. package/dist/esm/extractors/common/actions/extractPreviewAction.js +5 -0
  35. package/dist/esm/extractors/common/actions/types.js +1 -0
  36. package/dist/esm/extractors/flexible/actions/extract-preview-action.js +3 -1
  37. package/dist/esm/state/actions/index.js +4 -12
  38. package/dist/esm/state/analytics/useSmartLinkAnalytics.js +1 -24
  39. package/dist/esm/state/hooks-external/useSmartLinkActions.js +38 -0
  40. package/dist/esm/utils/actions/to-action.js +11 -0
  41. package/dist/esm/utils/analytics/analytics.js +53 -75
  42. package/dist/esm/utils/analytics/index.js +1 -1
  43. package/dist/esm/view/LinkUrl/index.js +1 -1
  44. package/dist/types/extractors/action/extractDownloadActionProps.d.ts +3 -0
  45. package/dist/types/extractors/action/extractPreviewActionProps.d.ts +3 -0
  46. package/dist/types/extractors/action/extractViewActionProps.d.ts +3 -0
  47. package/dist/types/extractors/common/__mocks__/jsonld.d.ts +5 -0
  48. package/dist/types/extractors/common/actions/extractActions.d.ts +4 -0
  49. package/dist/types/extractors/common/actions/extractPreviewAction.d.ts +4 -0
  50. package/dist/types/extractors/common/actions/types.d.ts +21 -0
  51. package/dist/types/state/analytics/useSmartLinkAnalytics.d.ts +1 -9
  52. package/dist/types/state/flexible-ui-context/types.d.ts +1 -0
  53. package/dist/types/state/hooks/use-invoke-client-action/index.d.ts +2 -2
  54. package/dist/types/state/hooks/use-invoke-client-action/types.d.ts +1 -0
  55. package/dist/types/state/hooks/useSmartLink.d.ts +0 -1
  56. package/dist/types/utils/actions/to-action.d.ts +8 -0
  57. package/dist/types/utils/analytics/analytics.d.ts +1 -5
  58. package/dist/types/utils/analytics/index.d.ts +1 -1
  59. package/dist/types/utils/analytics/types.d.ts +0 -4
  60. package/dist/types/utils/mocks.d.ts +0 -1
  61. package/dist/types-ts4.5/extractors/action/extractDownloadActionProps.d.ts +3 -0
  62. package/dist/types-ts4.5/extractors/action/extractPreviewActionProps.d.ts +3 -0
  63. package/dist/types-ts4.5/extractors/action/extractViewActionProps.d.ts +3 -0
  64. package/dist/types-ts4.5/extractors/common/__mocks__/jsonld.d.ts +5 -0
  65. package/dist/types-ts4.5/extractors/common/actions/extractActions.d.ts +4 -0
  66. package/dist/types-ts4.5/extractors/common/actions/extractPreviewAction.d.ts +4 -0
  67. package/dist/types-ts4.5/extractors/common/actions/types.d.ts +21 -0
  68. package/dist/types-ts4.5/state/analytics/useSmartLinkAnalytics.d.ts +1 -9
  69. package/dist/types-ts4.5/state/flexible-ui-context/types.d.ts +1 -0
  70. package/dist/types-ts4.5/state/hooks/use-invoke-client-action/index.d.ts +2 -2
  71. package/dist/types-ts4.5/state/hooks/use-invoke-client-action/types.d.ts +1 -0
  72. package/dist/types-ts4.5/state/hooks/useSmartLink.d.ts +0 -1
  73. package/dist/types-ts4.5/utils/actions/to-action.d.ts +8 -0
  74. package/dist/types-ts4.5/utils/analytics/analytics.d.ts +1 -5
  75. package/dist/types-ts4.5/utils/analytics/index.d.ts +1 -1
  76. package/dist/types-ts4.5/utils/analytics/types.d.ts +0 -4
  77. package/dist/types-ts4.5/utils/mocks.d.ts +0 -1
  78. package/package.json +3 -4
  79. package/client/package.json +0 -15
  80. package/dist/cjs/client/index.js +0 -12
  81. package/dist/es2019/client/index.js +0 -5
  82. package/dist/esm/client/index.js +0 -5
  83. package/dist/types/client/index.d.ts +0 -5
  84. package/dist/types-ts4.5/client/index.d.ts +0 -5
package/CHANGELOG.md CHANGED
@@ -1,5 +1,28 @@
1
1
  # @atlaskit/smart-card
2
2
 
3
+ ## 32.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - [#169454](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/169454)
8
+ [`c4bdbc7fc7e2e`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/c4bdbc7fc7e2e) -
9
+ EDM-10924 Remove deprecated client entrypoint from smart-card
10
+
11
+ ### Minor Changes
12
+
13
+ - [#169491](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/169491)
14
+ [`b0b713c370025`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/b0b713c370025) -
15
+ Refactor useSmartLinkActions hook to remove dependency on extractBlockProps
16
+
17
+ ## 31.0.3
18
+
19
+ ### Patch Changes
20
+
21
+ - [#169708](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/169708)
22
+ [`17cabe50b6e6b`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/17cabe50b6e6b) -
23
+ Remove FF platform_smart-card-migrate-screen-analytics
24
+ - Updated dependencies
25
+
3
26
  ## 31.0.2
4
27
 
5
28
  ### Patch Changes
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.extractDownloadActionProps = void 0;
7
+ var _constants = require("../../constants");
8
+ var _utils = require("../../utils");
9
+ var _extractDownloadAction = require("../flexible/actions/extract-download-action");
10
+ var extractDownloadActionProps = exports.extractDownloadActionProps = function extractDownloadActionProps(_ref) {
11
+ var response = _ref.response,
12
+ actionOptions = _ref.actionOptions,
13
+ _ref$extensionKey = _ref.extensionKey,
14
+ extensionKey = _ref$extensionKey === void 0 ? 'empty-object-provider' : _ref$extensionKey,
15
+ _ref$source = _ref.source,
16
+ source = _ref$source === void 0 ? 'block' : _ref$source;
17
+ var data = (0, _extractDownloadAction.extractDownloadAction)(response.data, actionOptions);
18
+ if (data) {
19
+ return {
20
+ actionType: _constants.ActionName.DownloadAction,
21
+ actionFn: function actionFn() {
22
+ return (0, _utils.downloadUrl)(data.downloadUrl);
23
+ },
24
+ display: source,
25
+ extensionKey: extensionKey
26
+ };
27
+ }
28
+ };
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.extractPreviewActionProps = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _constants = require("../../constants");
10
+ var _utils = require("../../view/EmbedModal/utils");
11
+ var _extractPreviewAction = require("../flexible/actions/extract-preview-action");
12
+ 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; }
13
+ 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; }
14
+ var extractPreviewActionProps = exports.extractPreviewActionProps = function extractPreviewActionProps(_ref) {
15
+ var response = _ref.response,
16
+ analytics = _ref.analytics,
17
+ _ref$extensionKey = _ref.extensionKey,
18
+ extensionKey = _ref$extensionKey === void 0 ? 'empty-object-provider' : _ref$extensionKey,
19
+ _ref$source = _ref.source,
20
+ source = _ref$source === void 0 ? 'block' : _ref$source,
21
+ actionOptions = _ref.actionOptions,
22
+ origin = _ref.origin;
23
+ var data = (0, _extractPreviewAction.extractPreviewAction)(response, actionOptions);
24
+ if (data !== null && data !== void 0 && data.src) {
25
+ return {
26
+ actionType: _constants.ActionName.PreviewAction,
27
+ actionFn: function actionFn() {
28
+ return (0, _utils.openEmbedModal)(_objectSpread({
29
+ download: data === null || data === void 0 ? void 0 : data.downloadUrl,
30
+ showModal: true,
31
+ onClose: function onClose() {},
32
+ analytics: analytics,
33
+ extensionKey: extensionKey,
34
+ origin: origin
35
+ }, data));
36
+ },
37
+ // These values have already been set in analytics context.
38
+ // We only pass these here for ufo experience.
39
+ display: source,
40
+ extensionKey: extensionKey
41
+ };
42
+ }
43
+ };
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.extractViewActionProps = void 0;
7
+ var _utils = require("../../utils");
8
+ var _extractViewAction = require("../flexible/actions/extract-view-action");
9
+ var extractViewActionProps = exports.extractViewActionProps = function extractViewActionProps(_ref) {
10
+ var response = _ref.response,
11
+ actionOptions = _ref.actionOptions,
12
+ _ref$extensionKey = _ref.extensionKey,
13
+ extensionKey = _ref$extensionKey === void 0 ? 'empty-object-provider' : _ref$extensionKey,
14
+ _ref$source = _ref.source,
15
+ source = _ref$source === void 0 ? 'block' : _ref$source;
16
+ var data = (0, _extractViewAction.extractViewAction)(response.data, actionOptions);
17
+ if (data) {
18
+ return {
19
+ actionType: 'ViewAction',
20
+ actionFn: function actionFn() {
21
+ return (0, _utils.openUrl)(data.viewUrl);
22
+ },
23
+ display: source,
24
+ extensionKey: extensionKey
25
+ };
26
+ }
27
+ };
@@ -65,6 +65,11 @@ var getActionsFromJsonLd = exports.getActionsFromJsonLd = function getActionsFro
65
65
  }
66
66
  return actions;
67
67
  };
68
+
69
+ /**
70
+ * @private
71
+ * @deprecated - use flexible extractors instead
72
+ */
68
73
  function extractClientActions(jsonLd, handler, actionOptions) {
69
74
  var actions = getActionsFromJsonLd(jsonLd);
70
75
  var clientActions = actions.filter(function (action) {
@@ -54,6 +54,11 @@ var getInvokeOpts = function getInvokeOpts(key, action, source) {
54
54
  }
55
55
  };
56
56
  };
57
+
58
+ /**
59
+ * @private
60
+ * @deprecated - use extractPreviewActionProps instead
61
+ */
57
62
  var extractPreviewAction = exports.extractPreviewAction = function extractPreviewAction(_ref) {
58
63
  var _ref$extensionKey = _ref.extensionKey,
59
64
  extensionKey = _ref$extensionKey === void 0 ? 'empty-object-provider' : _ref$extensionKey,
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -9,6 +9,7 @@ var _canShowAction = require("../../../utils/actions/can-show-action");
9
9
  var _types = require("../../../view/Card/types");
10
10
  var _detail = require("../../common/detail");
11
11
  var _extractIsSupportTheming = require("../../common/meta/extractIsSupportTheming");
12
+ var _extractIsTrusted = require("../../common/meta/extractIsTrusted");
12
13
  var _icon = require("../icon");
13
14
  var extractPreviewAction = exports.extractPreviewAction = function extractPreviewAction(response, actionOptions) {
14
15
  var _extractPreviewData;
@@ -27,7 +28,8 @@ var extractPreviewAction = exports.extractPreviewAction = function extractPrevie
27
28
  title: (0, _linkExtractors.extractTitle)(data),
28
29
  linkIcon: (0, _icon.extractLinkIcon)(response),
29
30
  url: (0, _linkExtractors.extractLink)(data),
30
- isSupportTheming: (0, _extractIsSupportTheming.extractIsSupportTheming)(meta)
31
+ isSupportTheming: (0, _extractIsSupportTheming.extractIsSupportTheming)(meta),
32
+ isTrusted: (0, _extractIsTrusted.extractIsTrusted)(meta)
31
33
  };
32
34
  }
33
35
  };
@@ -11,7 +11,6 @@ var _react = require("react");
11
11
  var _linkProvider = require("@atlaskit/link-provider");
12
12
  var _linkingCommon = require("@atlaskit/linking-common");
13
13
  var _outboundAuthFlowClient = require("@atlaskit/outbound-auth-flow-client");
14
- var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
15
14
  var _useAnalyticsEvents2 = require("../../common/analytics/generated/use-analytics-events");
16
15
  var _constants = require("../../constants");
17
16
  var _helpers = require("../helpers");
@@ -120,16 +119,9 @@ var useSmartCardActions = exports.useSmartCardActions = function useSmartCardAct
120
119
  });
121
120
  }
122
121
  if (services.length > 0) {
123
- if ((0, _platformFeatureFlags.fg)('platform_smart-card-migrate-screen-analytics')) {
124
- fireEvent('screen.consentModal.viewed', {
125
- definitionId: definitionId !== null && definitionId !== void 0 ? definitionId : null
126
- });
127
- } else {
128
- analytics.screen.authPopupEvent({
129
- definitionId: definitionId,
130
- extensionKey: extensionKey
131
- });
132
- }
122
+ fireEvent('screen.consentModal.viewed', {
123
+ definitionId: definitionId !== null && definitionId !== void 0 ? definitionId : null
124
+ });
133
125
  (0, _outboundAuthFlowClient.auth)(services[0].url).then(function () {
134
126
  fireEvent('track.applicationAccount.connected', {
135
127
  definitionId: definitionId !== null && definitionId !== void 0 ? definitionId : null
@@ -157,7 +149,7 @@ var useSmartCardActions = exports.useSmartCardActions = function useSmartCardAct
157
149
  reload();
158
150
  });
159
151
  }
160
- }, [getSmartLinkState, analytics.ui, analytics.screen, analytics.operational, id, reload, fireEvent]);
152
+ }, [getSmartLinkState, analytics.ui, analytics.operational, id, reload, fireEvent]);
161
153
  var invoke = (0, _react.useCallback)( /*#__PURE__*/function () {
162
154
  var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(opts, appearance) {
163
155
  var key, action, source;
@@ -643,29 +643,6 @@ var useSmartLinkAnalytics = exports.useSmartLinkAnalytics = function useSmartLin
643
643
  /** Contains all screen analytics events */
644
644
  var screen = (0, _react.useMemo)(function () {
645
645
  return {
646
- /**
647
- * This fires an event which represents the connect account page being opened.
648
- * @param definitionId The definitionId of the Smart Link resolver invoked.
649
- * @param extensionKey The extensionKey of the Smart Link resovler invoked.
650
- * @returns
651
- * @deprecated remove when platform_smart-card-migrate-screen-analytics is cleaned up
652
- */
653
- authPopupEvent: function authPopupEvent(_ref17) {
654
- var extensionKey = _ref17.extensionKey,
655
- definitionId = _ref17.definitionId,
656
- resourceType = _ref17.resourceType,
657
- destinationProduct = _ref17.destinationProduct,
658
- destinationSubproduct = _ref17.destinationSubproduct,
659
- location = _ref17.location;
660
- return dispatchAnalytics(applyCommonAttributes((0, _analytics.screenAuthPopupEvent)(_objectSpread(_objectSpread({}, commonAttributes), {}, {
661
- extensionKey: extensionKey,
662
- definitionId: definitionId,
663
- resourceType: resourceType,
664
- destinationProduct: destinationProduct,
665
- destinationSubproduct: destinationSubproduct,
666
- location: location
667
- })), commonAttributes));
668
- },
669
646
  /**
670
647
  * This fires an event that represents when a user view a modal.
671
648
  * @param data A partial analytics event payload
@@ -7,10 +7,17 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.useSmartLinkActions = useSmartLinkActions;
8
8
  var _react = require("react");
9
9
  var _uuid = _interopRequireDefault(require("uuid"));
10
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
11
+ var _extractDownloadActionProps = require("../../extractors/action/extractDownloadActionProps");
12
+ var _extractPreviewActionProps = require("../../extractors/action/extractPreviewActionProps");
13
+ var _extractViewActionProps = require("../../extractors/action/extractViewActionProps");
10
14
  var _block = require("../../extractors/block");
15
+ var _messages = require("../../messages");
16
+ var _toAction = require("../../utils/actions/to-action");
11
17
  var _actions = require("../actions");
12
18
  var _analytics = require("../analytics");
13
19
  var _helpers = require("../helpers");
20
+ var _useInvokeClientAction = _interopRequireDefault(require("../hooks/use-invoke-client-action"));
14
21
  var _store = require("../store");
15
22
  function useSmartLinkActions(_ref) {
16
23
  var url = _ref.url,
@@ -25,6 +32,37 @@ function useSmartLinkActions(_ref) {
25
32
  var linkState = (0, _store.useSmartCardState)(url);
26
33
  var linkAnalytics = (0, _analytics.useSmartLinkAnalytics)(url, id);
27
34
  var linkActions = (0, _actions.useSmartCardActions)(id, url, linkAnalytics);
35
+ var invokeClientAction = (0, _useInvokeClientAction.default)({
36
+ analytics: linkAnalytics
37
+ });
38
+ if ((0, _platformFeatureFlags.fg)('smart-card-use-refactored-usesmartlinkactions')) {
39
+ if (linkState.details && !(actionOptions !== null && actionOptions !== void 0 && actionOptions.hide)) {
40
+ var opts = {
41
+ response: linkState.details,
42
+ handleInvoke: invokeClientAction,
43
+ analytics: linkAnalytics,
44
+ origin: origin,
45
+ extensionKey: (0, _helpers.getExtensionKey)(linkState.details),
46
+ source: appearance,
47
+ actionOptions: actionOptions
48
+ };
49
+ var actions = [];
50
+ var downloadActionProps = (0, _extractDownloadActionProps.extractDownloadActionProps)(opts);
51
+ if (downloadActionProps) {
52
+ actions.push((0, _toAction.toAction)(downloadActionProps, invokeClientAction, _messages.messages.download, 'download-content'));
53
+ }
54
+ var viewActionProps = (0, _extractViewActionProps.extractViewActionProps)(opts);
55
+ if (viewActionProps) {
56
+ actions.push((0, _toAction.toAction)(viewActionProps, invokeClientAction, _messages.messages.view, 'view-content'));
57
+ }
58
+ var previewActionProps = (0, _extractPreviewActionProps.extractPreviewActionProps)(opts);
59
+ if (previewActionProps) {
60
+ actions.push((0, _toAction.toAction)(previewActionProps, invokeClientAction, _messages.messages.preview_improved, 'preview-content'));
61
+ }
62
+ return actions;
63
+ }
64
+ return [];
65
+ }
28
66
  if (linkState.details && !(actionOptions !== null && actionOptions !== void 0 && actionOptions.hide)) {
29
67
  var cardProperties = (0, _block.extractBlockProps)(linkState.details.data, linkState.details.meta, {
30
68
  handleInvoke: function handleInvoke(opts) {
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.toAction = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _reactIntlNext = require("react-intl-next");
10
+ var toAction = exports.toAction = function toAction(action, invokeClientAction, message, id) {
11
+ return {
12
+ id: id,
13
+ text: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, message),
14
+ invoke: function invoke() {
15
+ return invokeClientAction(action);
16
+ }
17
+ };
18
+ };
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.unresolvedEvent = exports.uiSmartLinkStatusOpenPreviewButtonClicked = exports.uiSmartLinkStatusLozengeButtonClicked = exports.uiSmartLinkStatusListItemButtonClicked = exports.uiServerActionClicked = exports.uiRenderSuccessEvent = exports.uiRenderFailedEvent = exports.uiLearnMoreLinkClickedEvent = exports.uiHoverCardViewedEvent = exports.uiHoverCardOpenLinkClickedEvent = exports.uiHoverCardDismissedEvent = exports.uiClosedAuthEvent = exports.uiCardClickedEvent = exports.uiAuthEvent = exports.uiAuthAlternateAccountEvent = exports.uiActionClickedEvent = exports.screenAuthPopupEvent = exports.resolvedEvent = exports.invokeSucceededEvent = exports.invokeFailedEvent = exports.fireSmartLinkEvent = exports.context = exports.connectSucceededEvent = exports.connectFailedEvent = exports.chunkloadFailedEvent = exports.TrackQuickActionType = exports.TrackQuickActionFailureReason = exports.SmartLinkEvents = exports.SmartLinkActionTypeUiEventMapper = exports.SmartLinkActionTypeTrackingEventMapper = exports.ANALYTICS_CHANNEL = void 0;
7
+ exports.unresolvedEvent = exports.uiSmartLinkStatusOpenPreviewButtonClicked = exports.uiSmartLinkStatusLozengeButtonClicked = exports.uiSmartLinkStatusListItemButtonClicked = exports.uiServerActionClicked = exports.uiRenderSuccessEvent = exports.uiRenderFailedEvent = exports.uiLearnMoreLinkClickedEvent = exports.uiHoverCardViewedEvent = exports.uiHoverCardOpenLinkClickedEvent = exports.uiHoverCardDismissedEvent = exports.uiClosedAuthEvent = exports.uiCardClickedEvent = exports.uiAuthEvent = exports.uiAuthAlternateAccountEvent = exports.uiActionClickedEvent = exports.resolvedEvent = exports.invokeSucceededEvent = exports.invokeFailedEvent = exports.fireSmartLinkEvent = exports.context = exports.connectSucceededEvent = exports.connectFailedEvent = exports.chunkloadFailedEvent = exports.TrackQuickActionType = exports.TrackQuickActionFailureReason = exports.SmartLinkEvents = exports.SmartLinkActionTypeUiEventMapper = exports.SmartLinkActionTypeTrackingEventMapper = exports.ANALYTICS_CHANNEL = void 0;
8
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
@@ -17,7 +17,7 @@ var ANALYTICS_CHANNEL = exports.ANALYTICS_CHANNEL = 'media';
17
17
  var context = exports.context = {
18
18
  componentName: 'smart-cards',
19
19
  packageName: "@atlaskit/smart-card",
20
- packageVersion: "31.0.2"
20
+ packageVersion: "32.0.0"
21
21
  };
22
22
  var TrackQuickActionType = exports.TrackQuickActionType = /*#__PURE__*/function (TrackQuickActionType) {
23
23
  TrackQuickActionType["StatusUpdate"] = "StatusUpdate";
@@ -327,81 +327,87 @@ var uiClosedAuthEvent = exports.uiClosedAuthEvent = function uiClosedAuthEvent(_
327
327
  })
328
328
  };
329
329
  };
330
-
331
- /**
332
- * @deprecated remove when platform_smart-card-migrate-screen-analytics is cleaned up
333
- */
334
- var screenAuthPopupEvent = exports.screenAuthPopupEvent = function screenAuthPopupEvent(_ref11) {
335
- var extensionKey = _ref11.extensionKey,
330
+ var uiRenderSuccessEvent = exports.uiRenderSuccessEvent = function uiRenderSuccessEvent(_ref11) {
331
+ var display = _ref11.display,
332
+ status = _ref11.status,
333
+ extensionKey = _ref11.extensionKey,
336
334
  definitionId = _ref11.definitionId,
337
335
  destinationProduct = _ref11.destinationProduct,
338
336
  destinationSubproduct = _ref11.destinationSubproduct,
339
- location = _ref11.location;
337
+ location = _ref11.location,
338
+ canBeDatasource = _ref11.canBeDatasource;
340
339
  return {
341
- actionSubject: 'consentModal',
342
- eventType: 'screen',
340
+ action: 'renderSuccess',
341
+ actionSubject: 'smartLink',
342
+ eventType: 'ui',
343
343
  attributes: _objectSpread(_objectSpread({}, context), {}, {
344
+ status: status,
344
345
  extensionKey: extensionKey,
345
346
  definitionId: definitionId,
346
347
  destinationProduct: destinationProduct,
347
348
  destinationSubproduct: destinationSubproduct,
348
- location: location
349
+ location: location,
350
+ display: display,
351
+ canBeDatasource: canBeDatasource
349
352
  })
350
353
  };
351
354
  };
352
- var uiRenderSuccessEvent = exports.uiRenderSuccessEvent = function uiRenderSuccessEvent(_ref12) {
355
+ var uiRenderFailedEvent = exports.uiRenderFailedEvent = function uiRenderFailedEvent(_ref12) {
353
356
  var display = _ref12.display,
354
- status = _ref12.status,
357
+ error = _ref12.error,
358
+ errorInfo = _ref12.errorInfo,
355
359
  extensionKey = _ref12.extensionKey,
356
360
  definitionId = _ref12.definitionId,
357
361
  destinationProduct = _ref12.destinationProduct,
358
362
  destinationSubproduct = _ref12.destinationSubproduct,
359
- location = _ref12.location,
360
- canBeDatasource = _ref12.canBeDatasource;
363
+ location = _ref12.location;
361
364
  return {
362
- action: 'renderSuccess',
363
365
  actionSubject: 'smartLink',
366
+ action: 'renderFailed',
364
367
  eventType: 'ui',
365
368
  attributes: _objectSpread(_objectSpread({}, context), {}, {
366
- status: status,
369
+ error: error,
370
+ errorInfo: errorInfo,
371
+ display: display,
367
372
  extensionKey: extensionKey,
368
373
  definitionId: definitionId,
369
374
  destinationProduct: destinationProduct,
370
375
  destinationSubproduct: destinationSubproduct,
371
- location: location,
372
- display: display,
373
- canBeDatasource: canBeDatasource
376
+ location: location
374
377
  })
375
378
  };
376
379
  };
377
- var uiRenderFailedEvent = exports.uiRenderFailedEvent = function uiRenderFailedEvent(_ref13) {
378
- var display = _ref13.display,
379
- error = _ref13.error,
380
- errorInfo = _ref13.errorInfo,
380
+ var uiHoverCardViewedEvent = exports.uiHoverCardViewedEvent = function uiHoverCardViewedEvent(_ref13) {
381
+ var id = _ref13.id,
382
+ previewDisplay = _ref13.previewDisplay,
381
383
  extensionKey = _ref13.extensionKey,
382
384
  definitionId = _ref13.definitionId,
383
385
  destinationProduct = _ref13.destinationProduct,
384
386
  destinationSubproduct = _ref13.destinationSubproduct,
385
- location = _ref13.location;
387
+ location = _ref13.location,
388
+ previewInvokeMethod = _ref13.previewInvokeMethod,
389
+ status = _ref13.status;
386
390
  return {
387
- actionSubject: 'smartLink',
388
- action: 'renderFailed',
391
+ action: 'viewed',
392
+ actionSubject: 'hoverCard',
389
393
  eventType: 'ui',
390
394
  attributes: _objectSpread(_objectSpread({}, context), {}, {
391
- error: error,
392
- errorInfo: errorInfo,
393
- display: display,
395
+ id: id,
396
+ previewDisplay: previewDisplay,
394
397
  extensionKey: extensionKey,
395
398
  definitionId: definitionId,
396
399
  destinationProduct: destinationProduct,
397
400
  destinationSubproduct: destinationSubproduct,
398
- location: location
401
+ location: location,
402
+ previewInvokeMethod: previewInvokeMethod,
403
+ status: status
399
404
  })
400
405
  };
401
406
  };
402
- var uiHoverCardViewedEvent = exports.uiHoverCardViewedEvent = function uiHoverCardViewedEvent(_ref14) {
407
+ var uiHoverCardDismissedEvent = exports.uiHoverCardDismissedEvent = function uiHoverCardDismissedEvent(_ref14) {
403
408
  var id = _ref14.id,
404
409
  previewDisplay = _ref14.previewDisplay,
410
+ hoverTime = _ref14.hoverTime,
405
411
  extensionKey = _ref14.extensionKey,
406
412
  definitionId = _ref14.definitionId,
407
413
  destinationProduct = _ref14.destinationProduct,
@@ -410,12 +416,13 @@ var uiHoverCardViewedEvent = exports.uiHoverCardViewedEvent = function uiHoverCa
410
416
  previewInvokeMethod = _ref14.previewInvokeMethod,
411
417
  status = _ref14.status;
412
418
  return {
413
- action: 'viewed',
419
+ action: 'dismissed',
414
420
  actionSubject: 'hoverCard',
415
421
  eventType: 'ui',
416
422
  attributes: _objectSpread(_objectSpread({}, context), {}, {
417
423
  id: id,
418
424
  previewDisplay: previewDisplay,
425
+ hoverTime: hoverTime,
419
426
  extensionKey: extensionKey,
420
427
  definitionId: definitionId,
421
428
  destinationProduct: destinationProduct,
@@ -426,44 +433,15 @@ var uiHoverCardViewedEvent = exports.uiHoverCardViewedEvent = function uiHoverCa
426
433
  })
427
434
  };
428
435
  };
429
- var uiHoverCardDismissedEvent = exports.uiHoverCardDismissedEvent = function uiHoverCardDismissedEvent(_ref15) {
436
+ var uiHoverCardOpenLinkClickedEvent = exports.uiHoverCardOpenLinkClickedEvent = function uiHoverCardOpenLinkClickedEvent(_ref15) {
430
437
  var id = _ref15.id,
431
438
  previewDisplay = _ref15.previewDisplay,
432
- hoverTime = _ref15.hoverTime,
433
439
  extensionKey = _ref15.extensionKey,
434
440
  definitionId = _ref15.definitionId,
435
441
  destinationProduct = _ref15.destinationProduct,
436
442
  destinationSubproduct = _ref15.destinationSubproduct,
437
443
  location = _ref15.location,
438
- previewInvokeMethod = _ref15.previewInvokeMethod,
439
- status = _ref15.status;
440
- return {
441
- action: 'dismissed',
442
- actionSubject: 'hoverCard',
443
- eventType: 'ui',
444
- attributes: _objectSpread(_objectSpread({}, context), {}, {
445
- id: id,
446
- previewDisplay: previewDisplay,
447
- hoverTime: hoverTime,
448
- extensionKey: extensionKey,
449
- definitionId: definitionId,
450
- destinationProduct: destinationProduct,
451
- destinationSubproduct: destinationSubproduct,
452
- location: location,
453
- previewInvokeMethod: previewInvokeMethod,
454
- status: status
455
- })
456
- };
457
- };
458
- var uiHoverCardOpenLinkClickedEvent = exports.uiHoverCardOpenLinkClickedEvent = function uiHoverCardOpenLinkClickedEvent(_ref16) {
459
- var id = _ref16.id,
460
- previewDisplay = _ref16.previewDisplay,
461
- extensionKey = _ref16.extensionKey,
462
- definitionId = _ref16.definitionId,
463
- destinationProduct = _ref16.destinationProduct,
464
- destinationSubproduct = _ref16.destinationSubproduct,
465
- location = _ref16.location,
466
- previewInvokeMethod = _ref16.previewInvokeMethod;
444
+ previewInvokeMethod = _ref15.previewInvokeMethod;
467
445
  return {
468
446
  action: 'clicked',
469
447
  actionSubject: 'button',
@@ -490,15 +468,15 @@ var uiLearnMoreLinkClickedEvent = exports.uiLearnMoreLinkClickedEvent = function
490
468
  attributes: _objectSpread({}, context)
491
469
  };
492
470
  };
493
- var chunkloadFailedEvent = exports.chunkloadFailedEvent = function chunkloadFailedEvent(_ref17) {
494
- var display = _ref17.display,
495
- error = _ref17.error,
496
- errorInfo = _ref17.errorInfo,
497
- extensionKey = _ref17.extensionKey,
498
- definitionId = _ref17.definitionId,
499
- destinationProduct = _ref17.destinationProduct,
500
- destinationSubproduct = _ref17.destinationSubproduct,
501
- location = _ref17.location;
471
+ var chunkloadFailedEvent = exports.chunkloadFailedEvent = function chunkloadFailedEvent(_ref16) {
472
+ var display = _ref16.display,
473
+ error = _ref16.error,
474
+ errorInfo = _ref16.errorInfo,
475
+ extensionKey = _ref16.extensionKey,
476
+ definitionId = _ref16.definitionId,
477
+ destinationProduct = _ref16.destinationProduct,
478
+ destinationSubproduct = _ref16.destinationSubproduct,
479
+ location = _ref16.location;
502
480
  return {
503
481
  action: 'chunkLoadFailed',
504
482
  actionSubject: 'smartLink',
@@ -542,9 +520,9 @@ var uiSmartLinkStatusOpenPreviewButtonClicked = exports.uiSmartLinkStatusOpenPre
542
520
  attributes: _objectSpread({}, context)
543
521
  };
544
522
  };
545
- var uiServerActionClicked = exports.uiServerActionClicked = function uiServerActionClicked(_ref18) {
523
+ var uiServerActionClicked = exports.uiServerActionClicked = function uiServerActionClicked(_ref17) {
546
524
  var _SmartLinkActionTypeU2;
547
- var smartLinkActionType = _ref18.smartLinkActionType;
525
+ var smartLinkActionType = _ref17.smartLinkActionType;
548
526
  return {
549
527
  action: 'clicked',
550
528
  actionSubject: 'button',
@@ -59,12 +59,6 @@ Object.defineProperty(exports, "resolvedEvent", {
59
59
  return _analytics.resolvedEvent;
60
60
  }
61
61
  });
62
- Object.defineProperty(exports, "screenAuthPopupEvent", {
63
- enumerable: true,
64
- get: function get() {
65
- return _analytics.screenAuthPopupEvent;
66
- }
67
- });
68
62
  Object.defineProperty(exports, "uiActionClickedEvent", {
69
63
  enumerable: true,
70
64
  get: function get() {
@@ -17,7 +17,7 @@ var _excluded = ["href", "children", "checkSafety", "onClick", "testId"],
17
17
  _excluded2 = ["isLinkSafe", "showSafetyWarningModal"];
18
18
  var PACKAGE_DATA = {
19
19
  packageName: "@atlaskit/smart-card",
20
- packageVersion: "31.0.2",
20
+ packageVersion: "32.0.0",
21
21
  componentName: 'linkUrl'
22
22
  };
23
23
  var Link = (0, _click.withLinkClickedEvent)('a');
@@ -0,0 +1,19 @@
1
+ import { ActionName } from '../../constants';
2
+ import { downloadUrl } from '../../utils';
3
+ import { extractDownloadAction as extractDownloadActionData } from '../flexible/actions/extract-download-action';
4
+ export const extractDownloadActionProps = ({
5
+ response,
6
+ actionOptions,
7
+ extensionKey = 'empty-object-provider',
8
+ source = 'block'
9
+ }) => {
10
+ const data = extractDownloadActionData(response.data, actionOptions);
11
+ if (data) {
12
+ return {
13
+ actionType: ActionName.DownloadAction,
14
+ actionFn: () => downloadUrl(data.downloadUrl),
15
+ display: source,
16
+ extensionKey
17
+ };
18
+ }
19
+ };
@@ -0,0 +1,31 @@
1
+ import { ActionName } from '../../constants';
2
+ import { openEmbedModal } from '../../view/EmbedModal/utils';
3
+ import { extractPreviewAction as extractPreviewActionData } from '../flexible/actions/extract-preview-action';
4
+ export const extractPreviewActionProps = ({
5
+ response,
6
+ analytics,
7
+ extensionKey = 'empty-object-provider',
8
+ source = 'block',
9
+ actionOptions,
10
+ origin
11
+ }) => {
12
+ const data = extractPreviewActionData(response, actionOptions);
13
+ if (data !== null && data !== void 0 && data.src) {
14
+ return {
15
+ actionType: ActionName.PreviewAction,
16
+ actionFn: () => openEmbedModal({
17
+ download: data === null || data === void 0 ? void 0 : data.downloadUrl,
18
+ showModal: true,
19
+ onClose: () => {},
20
+ analytics,
21
+ extensionKey,
22
+ origin,
23
+ ...data
24
+ }),
25
+ // These values have already been set in analytics context.
26
+ // We only pass these here for ufo experience.
27
+ display: source,
28
+ extensionKey
29
+ };
30
+ }
31
+ };
@@ -0,0 +1,18 @@
1
+ import { openUrl } from '../../utils';
2
+ import { extractViewAction as extractViewActionData } from '../flexible/actions/extract-view-action';
3
+ export const extractViewActionProps = ({
4
+ response,
5
+ actionOptions,
6
+ extensionKey = 'empty-object-provider',
7
+ source = 'block'
8
+ }) => {
9
+ const data = extractViewActionData(response.data, actionOptions);
10
+ if (data) {
11
+ return {
12
+ actionType: 'ViewAction',
13
+ actionFn: () => openUrl(data.viewUrl),
14
+ display: source,
15
+ extensionKey
16
+ };
17
+ }
18
+ };