@atlaskit/media-picker 70.0.9 → 70.1.1

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,23 @@
1
1
  # @atlaskit/media-picker
2
2
 
3
+ ## 70.1.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [`dee27fdf979fb`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/dee27fdf979fb) -
8
+ Added statusCode at the top level of analytics failure events, for SignalFX compatibility.
9
+
10
+ ## 70.1.0
11
+
12
+ ### Minor Changes
13
+
14
+ - [`96051ddbcd485`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/96051ddbcd485) -
15
+ Error detail added in failure event to better track errors.
16
+
17
+ ### Patch Changes
18
+
19
+ - Updated dependencies
20
+
3
21
  ## 70.0.9
4
22
 
5
23
  ### Patch Changes
@@ -18,6 +18,7 @@ var _react = require("react");
18
18
  var _perfMarks = require("perf-marks");
19
19
  var _mediaClient = require("@atlaskit/media-client");
20
20
  var _mediaCommon = require("@atlaskit/media-common");
21
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
21
22
  var _component = require("./component");
22
23
  var _uploadServiceImpl = require("../service/uploadServiceImpl");
23
24
  var _analytics = require("../util/analytics");
@@ -105,12 +106,17 @@ var LocalUploadComponentReact = exports.LocalUploadComponentReact = /*#__PURE__*
105
106
  });
106
107
  (0, _defineProperty2.default)(_this, "fireUploadFailed", /*#__PURE__*/function () {
107
108
  var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(payload) {
108
- var fileId, _payload$error, errorName, rawError, traceContext, _end2, _end2$duration, uploadDurationMsec;
109
+ var fileId, _payload$error, errorName, rawError, traceContext, _end2, _end2$duration, uploadDurationMsec, errorDetail, _rawError$innerError, _rawError$innerError2, requestMetadata;
109
110
  return _regenerator.default.wrap(function _callee$(_context) {
110
111
  while (1) switch (_context.prev = _context.next) {
111
112
  case 0:
112
113
  fileId = payload.fileId, _payload$error = payload.error, errorName = _payload$error.name, rawError = _payload$error.rawError, traceContext = payload.traceContext;
113
114
  _end2 = (0, _perfMarks.end)("MediaPicker.fireUpload.".concat(fileId)), _end2$duration = _end2.duration, uploadDurationMsec = _end2$duration === void 0 ? -1 : _end2$duration;
115
+ errorDetail = 'unknown';
116
+ if ((0, _platformFeatureFlags.fg)('add_media_picker_error_detail')) {
117
+ errorDetail = rawError && (0, _mediaClient.isCommonMediaClientError)(rawError) && (_rawError$innerError = rawError.innerError) !== null && _rawError$innerError !== void 0 && _rawError$innerError.message ? (_rawError$innerError2 = rawError.innerError) === null || _rawError$innerError2 === void 0 ? void 0 : _rawError$innerError2.message : rawError instanceof Error ? rawError.message : 'unknown';
118
+ }
119
+ requestMetadata = !!rawError ? (0, _analytics.getRequestMetadata)(rawError) : undefined;
114
120
  _this.createAndFireAnalyticsEvent({
115
121
  eventType: 'operational',
116
122
  action: 'failed',
@@ -122,24 +128,28 @@ var LocalUploadComponentReact = exports.LocalUploadComponentReact = /*#__PURE__*
122
128
  status: 'fail',
123
129
  failReason: errorName,
124
130
  error: !!rawError ? (0, _mediaClient.getMediaClientErrorReason)(rawError) : 'unknown',
125
- request: !!rawError ? (0, _analytics.getRequestMetadata)(rawError) : undefined,
131
+ statusCode: requestMetadata === null || requestMetadata === void 0 ? void 0 : requestMetadata.statusCode,
132
+ request: requestMetadata,
126
133
  fileAttributes: {
127
134
  fileId: fileId
128
135
  },
129
136
  uploadDurationMsec: uploadDurationMsec,
130
- traceContext: traceContext
137
+ traceContext: traceContext,
138
+ errorDetail: errorDetail
131
139
  }
132
140
  });
133
141
  (0, _ufoExperiences.failMediaUploadUfoExperience)(fileId, {
134
142
  failReason: errorName,
135
143
  error: !!rawError ? (0, _mediaClient.getMediaClientErrorReason)(rawError) : 'unknown',
136
- request: !!rawError ? (0, _analytics.getRequestMetadata)(rawError) : undefined,
144
+ errorDetail: errorDetail,
145
+ statusCode: requestMetadata === null || requestMetadata === void 0 ? void 0 : requestMetadata.statusCode,
146
+ request: requestMetadata,
137
147
  fileAttributes: {
138
148
  fileId: fileId
139
149
  },
140
150
  uploadDurationMsec: uploadDurationMsec
141
151
  });
142
- case 4:
152
+ case 7:
143
153
  case "end":
144
154
  return _context.stop();
145
155
  }
@@ -9,7 +9,7 @@ var _mediaClient = require("@atlaskit/media-client");
9
9
  // Component name will be prefixed with "media-picker-" in logs. Check ufoExperiences in utils files
10
10
 
11
11
  var packageName = "@atlaskit/media-picker";
12
- var packageVersion = "70.0.8";
12
+ var packageVersion = "70.1.0";
13
13
  function getPackageAttributes(componentName) {
14
14
  return {
15
15
  packageName: packageName,
@@ -12,7 +12,7 @@ var _mediaClient = require("@atlaskit/media-client");
12
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
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
14
  var packageName = "@atlaskit/media-picker";
15
- var packageVersion = "70.0.8";
15
+ var packageVersion = "70.1.0";
16
16
  var ufoExperience;
17
17
  var initExperience = function initExperience(id, componentName) {
18
18
  if (!ufoExperience) {
@@ -1,8 +1,9 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
  import { Component } from 'react';
3
3
  import { start, end } from 'perf-marks';
4
- import { getMediaClientErrorReason } from '@atlaskit/media-client';
4
+ import { getMediaClientErrorReason, isCommonMediaClientError } from '@atlaskit/media-client';
5
5
  import { ANALYTICS_MEDIA_CHANNEL } from '@atlaskit/media-common';
6
+ import { fg } from '@atlaskit/platform-feature-flags';
6
7
  import { UploadComponent } from './component';
7
8
  import { UploadServiceImpl } from '../service/uploadServiceImpl';
8
9
  import { getRequestMetadata } from '../util/analytics';
@@ -102,6 +103,12 @@ export class LocalUploadComponentReact extends Component {
102
103
  const {
103
104
  duration: uploadDurationMsec = -1
104
105
  } = end(`MediaPicker.fireUpload.${fileId}`);
106
+ let errorDetail = 'unknown';
107
+ if (fg('add_media_picker_error_detail')) {
108
+ var _rawError$innerError, _rawError$innerError2;
109
+ errorDetail = rawError && isCommonMediaClientError(rawError) && (_rawError$innerError = rawError.innerError) !== null && _rawError$innerError !== void 0 && _rawError$innerError.message ? (_rawError$innerError2 = rawError.innerError) === null || _rawError$innerError2 === void 0 ? void 0 : _rawError$innerError2.message : rawError instanceof Error ? rawError.message : 'unknown';
110
+ }
111
+ const requestMetadata = !!rawError ? getRequestMetadata(rawError) : undefined;
105
112
  this.createAndFireAnalyticsEvent({
106
113
  eventType: 'operational',
107
114
  action: 'failed',
@@ -113,18 +120,22 @@ export class LocalUploadComponentReact extends Component {
113
120
  status: 'fail',
114
121
  failReason: errorName,
115
122
  error: !!rawError ? getMediaClientErrorReason(rawError) : 'unknown',
116
- request: !!rawError ? getRequestMetadata(rawError) : undefined,
123
+ statusCode: requestMetadata === null || requestMetadata === void 0 ? void 0 : requestMetadata.statusCode,
124
+ request: requestMetadata,
117
125
  fileAttributes: {
118
126
  fileId
119
127
  },
120
128
  uploadDurationMsec,
121
- traceContext
129
+ traceContext,
130
+ errorDetail
122
131
  }
123
132
  });
124
133
  failMediaUploadUfoExperience(fileId, {
125
134
  failReason: errorName,
126
135
  error: !!rawError ? getMediaClientErrorReason(rawError) : 'unknown',
127
- request: !!rawError ? getRequestMetadata(rawError) : undefined,
136
+ errorDetail,
137
+ statusCode: requestMetadata === null || requestMetadata === void 0 ? void 0 : requestMetadata.statusCode,
138
+ request: requestMetadata,
128
139
  fileAttributes: {
129
140
  fileId
130
141
  },
@@ -3,7 +3,7 @@ import { isRequestError } from '@atlaskit/media-client';
3
3
  // Component name will be prefixed with "media-picker-" in logs. Check ufoExperiences in utils files
4
4
 
5
5
  const packageName = "@atlaskit/media-picker";
6
- const packageVersion = "70.0.8";
6
+ const packageVersion = "70.1.0";
7
7
  export function getPackageAttributes(componentName) {
8
8
  return {
9
9
  packageName,
@@ -2,7 +2,7 @@ import { ConcurrentExperience, ExperiencePerformanceTypes, ExperienceTypes } fro
2
2
  import { getFeatureFlagKeysAllProducts } from '@atlaskit/media-common';
3
3
  import { getMediaEnvironment, getMediaRegion } from '@atlaskit/media-client';
4
4
  const packageName = "@atlaskit/media-picker";
5
- const packageVersion = "70.0.8";
5
+ const packageVersion = "70.1.0";
6
6
  let ufoExperience;
7
7
  const initExperience = (id, componentName) => {
8
8
  if (!ufoExperience) {
@@ -11,8 +11,9 @@ function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstruct
11
11
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
12
12
  import { Component } from 'react';
13
13
  import { start, end } from 'perf-marks';
14
- import { getMediaClientErrorReason } from '@atlaskit/media-client';
14
+ import { getMediaClientErrorReason, isCommonMediaClientError } from '@atlaskit/media-client';
15
15
  import { ANALYTICS_MEDIA_CHANNEL } from '@atlaskit/media-common';
16
+ import { fg } from '@atlaskit/platform-feature-flags';
16
17
  import { UploadComponent } from './component';
17
18
  import { UploadServiceImpl } from '../service/uploadServiceImpl';
18
19
  import { getRequestMetadata } from '../util/analytics';
@@ -98,12 +99,17 @@ export var LocalUploadComponentReact = /*#__PURE__*/function (_Component) {
98
99
  });
99
100
  _defineProperty(_this, "fireUploadFailed", /*#__PURE__*/function () {
100
101
  var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(payload) {
101
- var fileId, _payload$error, errorName, rawError, traceContext, _end2, _end2$duration, uploadDurationMsec;
102
+ var fileId, _payload$error, errorName, rawError, traceContext, _end2, _end2$duration, uploadDurationMsec, errorDetail, _rawError$innerError, _rawError$innerError2, requestMetadata;
102
103
  return _regeneratorRuntime.wrap(function _callee$(_context) {
103
104
  while (1) switch (_context.prev = _context.next) {
104
105
  case 0:
105
106
  fileId = payload.fileId, _payload$error = payload.error, errorName = _payload$error.name, rawError = _payload$error.rawError, traceContext = payload.traceContext;
106
107
  _end2 = end("MediaPicker.fireUpload.".concat(fileId)), _end2$duration = _end2.duration, uploadDurationMsec = _end2$duration === void 0 ? -1 : _end2$duration;
108
+ errorDetail = 'unknown';
109
+ if (fg('add_media_picker_error_detail')) {
110
+ errorDetail = rawError && isCommonMediaClientError(rawError) && (_rawError$innerError = rawError.innerError) !== null && _rawError$innerError !== void 0 && _rawError$innerError.message ? (_rawError$innerError2 = rawError.innerError) === null || _rawError$innerError2 === void 0 ? void 0 : _rawError$innerError2.message : rawError instanceof Error ? rawError.message : 'unknown';
111
+ }
112
+ requestMetadata = !!rawError ? getRequestMetadata(rawError) : undefined;
107
113
  _this.createAndFireAnalyticsEvent({
108
114
  eventType: 'operational',
109
115
  action: 'failed',
@@ -115,24 +121,28 @@ export var LocalUploadComponentReact = /*#__PURE__*/function (_Component) {
115
121
  status: 'fail',
116
122
  failReason: errorName,
117
123
  error: !!rawError ? getMediaClientErrorReason(rawError) : 'unknown',
118
- request: !!rawError ? getRequestMetadata(rawError) : undefined,
124
+ statusCode: requestMetadata === null || requestMetadata === void 0 ? void 0 : requestMetadata.statusCode,
125
+ request: requestMetadata,
119
126
  fileAttributes: {
120
127
  fileId: fileId
121
128
  },
122
129
  uploadDurationMsec: uploadDurationMsec,
123
- traceContext: traceContext
130
+ traceContext: traceContext,
131
+ errorDetail: errorDetail
124
132
  }
125
133
  });
126
134
  failMediaUploadUfoExperience(fileId, {
127
135
  failReason: errorName,
128
136
  error: !!rawError ? getMediaClientErrorReason(rawError) : 'unknown',
129
- request: !!rawError ? getRequestMetadata(rawError) : undefined,
137
+ errorDetail: errorDetail,
138
+ statusCode: requestMetadata === null || requestMetadata === void 0 ? void 0 : requestMetadata.statusCode,
139
+ request: requestMetadata,
130
140
  fileAttributes: {
131
141
  fileId: fileId
132
142
  },
133
143
  uploadDurationMsec: uploadDurationMsec
134
144
  });
135
- case 4:
145
+ case 7:
136
146
  case "end":
137
147
  return _context.stop();
138
148
  }
@@ -3,7 +3,7 @@ import { isRequestError } from '@atlaskit/media-client';
3
3
  // Component name will be prefixed with "media-picker-" in logs. Check ufoExperiences in utils files
4
4
 
5
5
  var packageName = "@atlaskit/media-picker";
6
- var packageVersion = "70.0.8";
6
+ var packageVersion = "70.1.0";
7
7
  export function getPackageAttributes(componentName) {
8
8
  return {
9
9
  packageName: packageName,
@@ -5,7 +5,7 @@ import { ConcurrentExperience, ExperiencePerformanceTypes, ExperienceTypes } fro
5
5
  import { getFeatureFlagKeysAllProducts } from '@atlaskit/media-common';
6
6
  import { getMediaEnvironment, getMediaRegion } from '@atlaskit/media-client';
7
7
  var packageName = "@atlaskit/media-picker";
8
- var packageVersion = "70.0.8";
8
+ var packageVersion = "70.1.0";
9
9
  var ufoExperience;
10
10
  var initExperience = function initExperience(id, componentName) {
11
11
  if (!ufoExperience) {
@@ -125,6 +125,7 @@ export type MediaUploadFailurePayload = OperationalEventPayload<OperationalAttri
125
125
  sourceType: MediaUploadSource;
126
126
  serviceName: string;
127
127
  uploadDurationMsec: number;
128
+ statusCode?: number;
128
129
  request?: RequestMetadata;
129
130
  }, 'failed', 'mediaUpload', MediaUploadType>;
130
131
  export type UnhandledErrorPayload = OperationalEventPayload<OperationalAttributes & FailureAttributes & {
@@ -1,5 +1,5 @@
1
- import { type RequestMetadata } from '@atlaskit/media-client';
1
+ import { type RequestErrorMetadata } from '@atlaskit/media-client';
2
2
  import { type PackageAttributes } from '@atlaskit/media-common';
3
3
  export type ComponentName = 'browser' | 'clipboard' | 'dropzone';
4
4
  export declare function getPackageAttributes(componentName: ComponentName): PackageAttributes;
5
- export declare function getRequestMetadata(error?: Error): RequestMetadata | undefined;
5
+ export declare function getRequestMetadata(error?: Error): RequestErrorMetadata | undefined;
@@ -6,6 +6,7 @@ export type UFOFailedEventPayload = {
6
6
  error?: string;
7
7
  errorDetail?: string | undefined;
8
8
  uploadDurationMsec: number;
9
+ statusCode?: number;
9
10
  request?: RequestMetadata;
10
11
  } & WithFileAttributes;
11
12
  export declare const startMediaUploadUfoExperience: (id: string, componentName: ComponentName) => void;
@@ -125,6 +125,7 @@ export type MediaUploadFailurePayload = OperationalEventPayload<OperationalAttri
125
125
  sourceType: MediaUploadSource;
126
126
  serviceName: string;
127
127
  uploadDurationMsec: number;
128
+ statusCode?: number;
128
129
  request?: RequestMetadata;
129
130
  }, 'failed', 'mediaUpload', MediaUploadType>;
130
131
  export type UnhandledErrorPayload = OperationalEventPayload<OperationalAttributes & FailureAttributes & {
@@ -1,5 +1,5 @@
1
- import { type RequestMetadata } from '@atlaskit/media-client';
1
+ import { type RequestErrorMetadata } from '@atlaskit/media-client';
2
2
  import { type PackageAttributes } from '@atlaskit/media-common';
3
3
  export type ComponentName = 'browser' | 'clipboard' | 'dropzone';
4
4
  export declare function getPackageAttributes(componentName: ComponentName): PackageAttributes;
5
- export declare function getRequestMetadata(error?: Error): RequestMetadata | undefined;
5
+ export declare function getRequestMetadata(error?: Error): RequestErrorMetadata | undefined;
@@ -6,6 +6,7 @@ export type UFOFailedEventPayload = {
6
6
  error?: string;
7
7
  errorDetail?: string | undefined;
8
8
  uploadDurationMsec: number;
9
+ statusCode?: number;
9
10
  request?: RequestMetadata;
10
11
  } & WithFileAttributes;
11
12
  export declare const startMediaUploadUfoExperience: (id: string, componentName: ComponentName) => void;
@@ -34,7 +34,10 @@ const getArtifactUrl = (
34
34
  .then((blob) => blob.slice(0, blob.size, getMimeTypeFromArtifact(artifact)))
35
35
  .then((blob) => URL.createObjectURL(blob));
36
36
 
37
- export const NativeMediaViewer = ({ id, mediaClient }: NativeMediaViewerProps) => {
37
+ export const NativeMediaViewer = ({
38
+ id,
39
+ mediaClient,
40
+ }: NativeMediaViewerProps): React.JSX.Element => {
38
41
  const [url, setUrl] = useState('');
39
42
  const [mediaType, setMediaType] = useState<MediaType | null>(null);
40
43
 
@@ -4,7 +4,7 @@ import { FeatureFlagsWrapper } from '@atlaskit/media-test-helpers';
4
4
  import { UfoLoggerWrapper } from './UfoWrapper';
5
5
  import { IntlProvider } from 'react-intl-next';
6
6
 
7
- export const MainWrapper = ({ children }: { children: ReactNode }) => (
7
+ export const MainWrapper = ({ children }: { children: ReactNode }): React.JSX.Element => (
8
8
  <UfoLoggerWrapper>
9
9
  <FeatureFlagsWrapper>
10
10
  <IntlProvider locale={'en'}>{children}</IntlProvider>
@@ -19,7 +19,7 @@ export class UploadPreview extends React.Component<PreviewData> {
19
19
  }
20
20
  }
21
21
 
22
- render() {
22
+ render(): React.JSX.Element {
23
23
  const { fileId } = this.props;
24
24
 
25
25
  const identifier: FileIdentifier = {
@@ -57,7 +57,7 @@ export class UploadPreviews extends React.Component<PreviewsDataProps, PreviewsD
57
57
  console.log('upload error:', data);
58
58
  };
59
59
 
60
- render() {
60
+ render(): React.JSX.Element {
61
61
  const { previewsData } = this.state;
62
62
 
63
63
  return (
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/media-picker",
3
- "version": "70.0.9",
3
+ "version": "70.1.1",
4
4
  "description": "Library for handling file uploads",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -38,7 +38,7 @@
38
38
  "@atlaskit/media-ui": "^28.7.0",
39
39
  "@atlaskit/platform-feature-flags": "^1.1.0",
40
40
  "@atlaskit/theme": "^21.0.0",
41
- "@atlaskit/tokens": "^8.0.0",
41
+ "@atlaskit/tokens": "^8.4.0",
42
42
  "@atlaskit/ufo": "^0.4.0",
43
43
  "@babel/runtime": "^7.0.0",
44
44
  "eventemitter2": "^4.1.0",
@@ -55,7 +55,7 @@
55
55
  },
56
56
  "devDependencies": {
57
57
  "@atlaskit/analytics-listeners": "^9.1.0",
58
- "@atlaskit/analytics-namespaced-context": "^7.1.0",
58
+ "@atlaskit/analytics-namespaced-context": "^7.2.0",
59
59
  "@atlaskit/button": "^23.6.0",
60
60
  "@atlaskit/media-core": "^37.0.0",
61
61
  "@atlaskit/media-test-helpers": "^39.0.0",
@@ -89,6 +89,9 @@
89
89
  "platform-feature-flags": {
90
90
  "should-render-to-parent-should-be-true-media-exif": {
91
91
  "type": "boolean"
92
+ },
93
+ "add_media_picker_error_detail": {
94
+ "type": "boolean"
92
95
  }
93
96
  }
94
97
  }