@atlaskit/media-client 27.3.4 → 27.4.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # @atlaskit/media-client
2
2
 
3
+ ## 27.4.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#130787](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/130787)
8
+ [`64a680780dc57`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/64a680780dc57) -
9
+ Add performance observer metrics for Media Card to assist investigation into hot-110955
10
+
3
11
  ## 27.3.4
4
12
 
5
13
  ### Patch Changes
@@ -154,7 +154,7 @@ var FileFetcherImpl = exports.FileFetcherImpl = /*#__PURE__*/function () {
154
154
  if (content instanceof Blob) {
155
155
  size = content.size;
156
156
  mimeType = content.type;
157
- if ((0, _mediaTypeUtils.isMimeTypeSupportedByBrowser)(content.type) || (0, _platformFeatureFlags.getBooleanFF)('platform.media-svg-rendering')) {
157
+ if ((0, _mediaTypeUtils.isMimeTypeSupportedByBrowser)(content.type) || (0, _platformFeatureFlags.fg)('platform.media-svg-rendering')) {
158
158
  preview = {
159
159
  value: content,
160
160
  origin: 'local'
@@ -10,13 +10,13 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/
10
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
12
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+ var _mediaCore = require("@atlaskit/media-core");
13
14
  var _mediaCommon = require("@atlaskit/media-common");
14
15
  var _constants = require("../../constants");
15
16
  var _artifacts = require("../../models/artifacts");
16
17
  var _request3 = require("../../utils/request");
17
18
  var _helpers = require("../../utils/request/helpers");
18
19
  var _resolveAuth = require("./resolveAuth");
19
- var _mediaCore = require("@atlaskit/media-core");
20
20
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
21
21
  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; }
22
22
  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; }
@@ -441,7 +441,8 @@ var MediaStore = exports.MediaStore = /*#__PURE__*/function () {
441
441
  },
442
442
  params: extendImageParams(params, fetchMaxRes),
443
443
  headers: headers,
444
- traceContext: traceContext
444
+ traceContext: traceContext,
445
+ addMediaClientParam: (0, _platformFeatureFlags.fg)('platform.media-card-performance-observer_lgc7b') && true
445
446
  });
446
447
  return _context8.abrupt("return", this.request("/file/".concat(id, "/").concat(imageEndpoint), options, controller).then((0, _helpers.createMapResponseToBlob)(metadata)));
447
448
  case 7:
@@ -595,7 +596,9 @@ var MediaStore = exports.MediaStore = /*#__PURE__*/function () {
595
596
  body,
596
597
  clientOptions,
597
598
  traceContext,
599
+ addMediaClientParam,
598
600
  auth,
601
+ clientId,
599
602
  extendedTraceContext,
600
603
  response,
601
604
  _args12 = arguments;
@@ -608,31 +611,34 @@ var MediaStore = exports.MediaStore = /*#__PURE__*/function () {
608
611
  authContext: {}
609
612
  };
610
613
  controller = _args12.length > 2 ? _args12[2] : undefined;
611
- method = options.method, endpoint = options.endpoint, authContext = options.authContext, params = options.params, headers = options.headers, body = options.body, clientOptions = options.clientOptions, traceContext = options.traceContext;
614
+ method = options.method, endpoint = options.endpoint, authContext = options.authContext, params = options.params, headers = options.headers, body = options.body, clientOptions = options.clientOptions, traceContext = options.traceContext, addMediaClientParam = options.addMediaClientParam;
612
615
  _context12.next = 5;
613
616
  return this.resolveAuth(authContext);
614
617
  case 5:
615
618
  auth = _context12.sent;
619
+ clientId = (0, _mediaCore.isClientBasedAuth)(auth) ? auth.clientId : undefined;
616
620
  extendedTraceContext = traceContext ? _objectSpread(_objectSpread({}, traceContext), {}, {
617
621
  spanId: (traceContext === null || traceContext === void 0 ? void 0 : traceContext.spanId) || (0, _mediaCommon.getRandomHex)(8)
618
622
  }) : undefined;
619
- _context12.next = 9;
623
+ _context12.next = 10;
620
624
  return (0, _request3.request)("".concat(auth.baseUrl).concat(path), {
621
625
  method: method,
622
626
  endpoint: endpoint,
623
627
  auth: auth,
624
- params: params,
628
+ params: addMediaClientParam ? _objectSpread(_objectSpread({}, params), {}, {
629
+ clientId: clientId
630
+ }) : params,
625
631
  headers: headers,
626
632
  body: body,
627
633
  clientOptions: clientOptions,
628
634
  traceContext: extendedTraceContext
629
635
  }, controller);
630
- case 9:
636
+ case 10:
631
637
  response = _context12.sent;
632
638
  setKeyValueInSessionStorage(MEDIA_API_REGION, response.headers.get('x-media-region'));
633
639
  setKeyValueInSessionStorage(MEDIA_API_ENVIRONMENT, response.headers.get('x-media-env'));
634
640
  return _context12.abrupt("return", response);
635
- case 13:
641
+ case 14:
636
642
  case "end":
637
643
  return _context12.stop();
638
644
  }
@@ -27,7 +27,7 @@ import { shouldFetchRemoteFileStates } from '../../utils/shouldFetchRemoteFileSt
27
27
  import { PollingFunction } from '../../utils/polling';
28
28
  import { isEmptyFile } from '../../utils/detectEmptyFile';
29
29
  import { mediaStore } from '@atlaskit/media-state';
30
- import { getBooleanFF } from '@atlaskit/platform-feature-flags';
30
+ import { fg } from '@atlaskit/platform-feature-flags';
31
31
  export { isFileFetcherError, FileFetcherError } from './error';
32
32
  export class FileFetcherImpl {
33
33
  constructor(mediaApi, store = mediaStore) {
@@ -108,7 +108,7 @@ export class FileFetcherImpl {
108
108
  if (content instanceof Blob) {
109
109
  size = content.size;
110
110
  mimeType = content.type;
111
- if (isMimeTypeSupportedByBrowser(content.type) || getBooleanFF('platform.media-svg-rendering')) {
111
+ if (isMimeTypeSupportedByBrowser(content.type) || fg('platform.media-svg-rendering')) {
112
112
  preview = {
113
113
  value: content,
114
114
  origin: 'local'
@@ -1,4 +1,5 @@
1
1
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import { isClientBasedAuth } from '@atlaskit/media-core';
2
3
  import { getRandomHex } from '@atlaskit/media-common';
3
4
  import { FILE_CACHE_MAX_AGE, MAX_RESOLUTION } from '../../constants';
4
5
  import { getArtifactUrl } from '../../models/artifacts';
@@ -259,7 +260,8 @@ export class MediaStore {
259
260
  },
260
261
  params: extendImageParams(params, fetchMaxRes),
261
262
  headers,
262
- traceContext
263
+ traceContext,
264
+ addMediaClientParam: fg('platform.media-card-performance-observer_lgc7b') && true
263
265
  };
264
266
  return this.request(`/file/${id}/${imageEndpoint}`, options, controller).then(createMapResponseToBlob(metadata));
265
267
  }
@@ -350,9 +352,11 @@ export class MediaStore {
350
352
  headers,
351
353
  body,
352
354
  clientOptions,
353
- traceContext
355
+ traceContext,
356
+ addMediaClientParam
354
357
  } = options;
355
358
  const auth = await this.resolveAuth(authContext);
359
+ const clientId = isClientBasedAuth(auth) ? auth.clientId : undefined;
356
360
  const extendedTraceContext = traceContext ? {
357
361
  ...traceContext,
358
362
  spanId: (traceContext === null || traceContext === void 0 ? void 0 : traceContext.spanId) || getRandomHex(8)
@@ -361,7 +365,10 @@ export class MediaStore {
361
365
  method,
362
366
  endpoint,
363
367
  auth,
364
- params,
368
+ params: addMediaClientParam ? {
369
+ ...params,
370
+ clientId
371
+ } : params,
365
372
  headers,
366
373
  body,
367
374
  clientOptions,
@@ -33,7 +33,7 @@ import { shouldFetchRemoteFileStates } from '../../utils/shouldFetchRemoteFileSt
33
33
  import { PollingFunction } from '../../utils/polling';
34
34
  import { isEmptyFile } from '../../utils/detectEmptyFile';
35
35
  import { mediaStore } from '@atlaskit/media-state';
36
- import { getBooleanFF } from '@atlaskit/platform-feature-flags';
36
+ import { fg } from '@atlaskit/platform-feature-flags';
37
37
  export { isFileFetcherError, FileFetcherError } from './error';
38
38
  export var FileFetcherImpl = /*#__PURE__*/function () {
39
39
  function FileFetcherImpl(mediaApi) {
@@ -137,7 +137,7 @@ export var FileFetcherImpl = /*#__PURE__*/function () {
137
137
  if (content instanceof Blob) {
138
138
  size = content.size;
139
139
  mimeType = content.type;
140
- if (isMimeTypeSupportedByBrowser(content.type) || getBooleanFF('platform.media-svg-rendering')) {
140
+ if (isMimeTypeSupportedByBrowser(content.type) || fg('platform.media-svg-rendering')) {
141
141
  preview = {
142
142
  value: content,
143
143
  origin: 'local'
@@ -5,6 +5,7 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
5
5
  import _regeneratorRuntime from "@babel/runtime/regenerator";
6
6
  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; }
7
7
  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; }
8
+ import { isClientBasedAuth } from '@atlaskit/media-core';
8
9
  import { getRandomHex } from '@atlaskit/media-common';
9
10
  import { FILE_CACHE_MAX_AGE, MAX_RESOLUTION } from '../../constants';
10
11
  import { getArtifactUrl } from '../../models/artifacts';
@@ -434,7 +435,8 @@ export var MediaStore = /*#__PURE__*/function () {
434
435
  },
435
436
  params: extendImageParams(params, fetchMaxRes),
436
437
  headers: headers,
437
- traceContext: traceContext
438
+ traceContext: traceContext,
439
+ addMediaClientParam: fg('platform.media-card-performance-observer_lgc7b') && true
438
440
  });
439
441
  return _context8.abrupt("return", this.request("/file/".concat(id, "/").concat(imageEndpoint), options, controller).then(createMapResponseToBlob(metadata)));
440
442
  case 7:
@@ -588,7 +590,9 @@ export var MediaStore = /*#__PURE__*/function () {
588
590
  body,
589
591
  clientOptions,
590
592
  traceContext,
593
+ addMediaClientParam,
591
594
  auth,
595
+ clientId,
592
596
  extendedTraceContext,
593
597
  response,
594
598
  _args12 = arguments;
@@ -601,31 +605,34 @@ export var MediaStore = /*#__PURE__*/function () {
601
605
  authContext: {}
602
606
  };
603
607
  controller = _args12.length > 2 ? _args12[2] : undefined;
604
- method = options.method, endpoint = options.endpoint, authContext = options.authContext, params = options.params, headers = options.headers, body = options.body, clientOptions = options.clientOptions, traceContext = options.traceContext;
608
+ method = options.method, endpoint = options.endpoint, authContext = options.authContext, params = options.params, headers = options.headers, body = options.body, clientOptions = options.clientOptions, traceContext = options.traceContext, addMediaClientParam = options.addMediaClientParam;
605
609
  _context12.next = 5;
606
610
  return this.resolveAuth(authContext);
607
611
  case 5:
608
612
  auth = _context12.sent;
613
+ clientId = isClientBasedAuth(auth) ? auth.clientId : undefined;
609
614
  extendedTraceContext = traceContext ? _objectSpread(_objectSpread({}, traceContext), {}, {
610
615
  spanId: (traceContext === null || traceContext === void 0 ? void 0 : traceContext.spanId) || getRandomHex(8)
611
616
  }) : undefined;
612
- _context12.next = 9;
617
+ _context12.next = 10;
613
618
  return _request("".concat(auth.baseUrl).concat(path), {
614
619
  method: method,
615
620
  endpoint: endpoint,
616
621
  auth: auth,
617
- params: params,
622
+ params: addMediaClientParam ? _objectSpread(_objectSpread({}, params), {}, {
623
+ clientId: clientId
624
+ }) : params,
618
625
  headers: headers,
619
626
  body: body,
620
627
  clientOptions: clientOptions,
621
628
  traceContext: extendedTraceContext
622
629
  }, controller);
623
- case 9:
630
+ case 10:
624
631
  response = _context12.sent;
625
632
  setKeyValueInSessionStorage(MEDIA_API_REGION, response.headers.get('x-media-region'));
626
633
  setKeyValueInSessionStorage(MEDIA_API_ENVIRONMENT, response.headers.get('x-media-env'));
627
634
  return _context12.abrupt("return", response);
628
- case 13:
635
+ case 14:
629
636
  case "end":
630
637
  return _context12.stop();
631
638
  }
@@ -1,5 +1,5 @@
1
1
  import { type Auth, type AsapBasedAuth, type AuthContext, type ClientAltBasedAuth } from '@atlaskit/media-core';
2
- import { type MediaTraceContext } from '@atlaskit/media-common';
2
+ import { type SSR, type MediaTraceContext } from '@atlaskit/media-common';
3
3
  import { type MediaFileArtifacts } from '@atlaskit/media-state';
4
4
  import { type MediaItemDetails, type MediaFile, type MediaUpload } from '../../models/media';
5
5
  import { type ClientOptions, type RequestHeaders, type RequestMethod, type RequestParams, type RequestMetadata } from '../../utils/request/types';
@@ -37,6 +37,7 @@ export type MediaStoreRequestOptions = RequestMetadata & {
37
37
  readonly clientOptions?: ClientOptions;
38
38
  readonly traceContext?: MediaTraceContext;
39
39
  readonly ChunkhashAlgorithm?: ChunkHashAlgorithm;
40
+ readonly addMediaClientParam?: boolean;
40
41
  };
41
42
  export type MediaStoreCreateFileFromUploadParams = {
42
43
  readonly collection?: string;
@@ -94,6 +95,8 @@ export type MediaStoreGetFileImageParams = {
94
95
  readonly mode?: 'fit' | 'full-fit' | 'crop';
95
96
  readonly upscale?: boolean;
96
97
  readonly 'max-age'?: number;
98
+ readonly source?: string;
99
+ readonly ssr?: SSR;
97
100
  };
98
101
  export interface SourceFile {
99
102
  id: string;
@@ -1,5 +1,5 @@
1
1
  import { type Auth, type AsapBasedAuth, type AuthContext, type ClientAltBasedAuth } from '@atlaskit/media-core';
2
- import { type MediaTraceContext } from '@atlaskit/media-common';
2
+ import { type SSR, type MediaTraceContext } from '@atlaskit/media-common';
3
3
  import { type MediaFileArtifacts } from '@atlaskit/media-state';
4
4
  import { type MediaItemDetails, type MediaFile, type MediaUpload } from '../../models/media';
5
5
  import { type ClientOptions, type RequestHeaders, type RequestMethod, type RequestParams, type RequestMetadata } from '../../utils/request/types';
@@ -37,6 +37,7 @@ export type MediaStoreRequestOptions = RequestMetadata & {
37
37
  readonly clientOptions?: ClientOptions;
38
38
  readonly traceContext?: MediaTraceContext;
39
39
  readonly ChunkhashAlgorithm?: ChunkHashAlgorithm;
40
+ readonly addMediaClientParam?: boolean;
40
41
  };
41
42
  export type MediaStoreCreateFileFromUploadParams = {
42
43
  readonly collection?: string;
@@ -94,6 +95,8 @@ export type MediaStoreGetFileImageParams = {
94
95
  readonly mode?: 'fit' | 'full-fit' | 'crop';
95
96
  readonly upscale?: boolean;
96
97
  readonly 'max-age'?: number;
98
+ readonly source?: string;
99
+ readonly ssr?: SSR;
97
100
  };
98
101
  export interface SourceFile {
99
102
  id: string;
@@ -1,4 +1,7 @@
1
- /** @jsx jsx */
1
+ /**
2
+ * @jsxRuntime classic
3
+ * @jsx jsx
4
+ */
2
5
  // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
3
6
  import { jsx } from '@emotion/react';
4
7
  import { type ChangeEvent, type ReactNode } from 'react';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/media-client",
3
- "version": "27.3.4",
3
+ "version": "27.4.0",
4
4
  "description": "Media API Web Client Library",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -37,7 +37,7 @@
37
37
  },
38
38
  "dependencies": {
39
39
  "@atlaskit/chunkinator": "^6.0.0",
40
- "@atlaskit/media-common": "^11.3.0",
40
+ "@atlaskit/media-common": "^11.4.0",
41
41
  "@atlaskit/platform-feature-flags": "0.3.0",
42
42
  "@babel/runtime": "^7.0.0",
43
43
  "dataloader": "^2.0.0",
@@ -53,14 +53,14 @@
53
53
  "xstate": "4.20.0"
54
54
  },
55
55
  "peerDependencies": {
56
- "@atlaskit/media-core": "^34.1.2",
56
+ "@atlaskit/media-core": "^34.3.0",
57
57
  "@atlaskit/media-state": "^1.0.0"
58
58
  },
59
59
  "devDependencies": {
60
- "@atlaskit/media-core": "^34.2.0",
60
+ "@atlaskit/media-core": "^34.3.0",
61
61
  "@atlaskit/media-state": "^1.1.0",
62
62
  "@atlaskit/ssr": "*",
63
- "@atlaskit/tokens": "^1.56.0",
63
+ "@atlaskit/tokens": "^1.59.0",
64
64
  "@atlassian/feature-flags-test-utils": "0.2.3",
65
65
  "@emotion/react": "^11.7.1",
66
66
  "@types/deep-equal": "^1.0.1",
@@ -89,6 +89,9 @@
89
89
  },
90
90
  "platform.media-cdn-delivery": {
91
91
  "type": "boolean"
92
+ },
93
+ "platform.media-card-performance-observer_lgc7b": {
94
+ "type": "boolean"
92
95
  }
93
96
  }
94
97
  }