@atlaskit/renderer 112.2.1 → 112.2.3

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,25 @@
1
1
  # @atlaskit/renderer
2
2
 
3
+ ## 112.2.3
4
+
5
+ ### Patch Changes
6
+
7
+ - [#157334](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/157334)
8
+ [`c3e486551954c`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/c3e486551954c) -
9
+ Adds a onLoadComplete callback for useLoadAnnotations annotations hook
10
+
11
+ ## 112.2.2
12
+
13
+ ### Patch Changes
14
+
15
+ - [#158723](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/158723)
16
+ [`8ff5b01b0d37f`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/8ff5b01b0d37f) -
17
+ [ED-24682] Cleanup feature flag for commenting on media in the renderer
18
+
19
+ **@atlaskit/editor-plugin-media**: Add optional checks for the api in Comment Badges on media
20
+
21
+ - Updated dependencies
22
+
3
23
  ## 112.2.1
4
24
 
5
25
  ### Patch Changes
@@ -317,7 +317,7 @@ var Media = /*#__PURE__*/function (_PureComponent) {
317
317
  var shouldOpenMediaViewer = !linkHref && allowMediaViewer;
318
318
  var isInPageInclude = mediaSingleElement === null || mediaSingleElement === void 0 ? void 0 : mediaSingleElement.closest('[data-node-type="include"]');
319
319
  var isIncludeExcerpt = !!(mediaSingleElement !== null && mediaSingleElement !== void 0 && mediaSingleElement.closest('.ak-excerpt-include'));
320
- var showCommentBadge = !!annotationMarks && (featureFlags === null || featureFlags === void 0 ? void 0 : featureFlags.commentsOnMedia) && !isInPageInclude && !isIncludeExcerpt;
320
+ var showCommentBadge = !!annotationMarks && !isInPageInclude && !isIncludeExcerpt;
321
321
  var shouldShowExternalMediaBadge = _this.props.type === 'external';
322
322
  return (0, _react2.jsx)(MediaLink, {
323
323
  mark: linkMark,
@@ -65,7 +65,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
65
65
  var NORMAL_SEVERITY_THRESHOLD = exports.NORMAL_SEVERITY_THRESHOLD = 2000;
66
66
  var DEGRADED_SEVERITY_THRESHOLD = exports.DEGRADED_SEVERITY_THRESHOLD = 3000;
67
67
  var packageName = "@atlaskit/renderer";
68
- var packageVersion = "112.2.1";
68
+ var packageVersion = "112.2.3";
69
69
  var setAsQueryContainerStyles = (0, _react2.css)({
70
70
  containerName: 'ak-renderer-wrapper',
71
71
  containerType: 'inline-size',
@@ -14,7 +14,8 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
14
14
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
15
15
  var useLoadAnnotations = exports.useLoadAnnotations = function useLoadAnnotations(_ref) {
16
16
  var adfDocument = _ref.adfDocument,
17
- isNestedRender = _ref.isNestedRender;
17
+ isNestedRender = _ref.isNestedRender,
18
+ onLoadComplete = _ref.onLoadComplete;
18
19
  var actions = (0, _react.useContext)(_RendererActionsContext.RendererContext);
19
20
  var providers = (0, _react.useContext)(_context.ProvidersContext);
20
21
  (0, _react.useEffect)(function () {
@@ -27,6 +28,9 @@ var useLoadAnnotations = exports.useLoadAnnotations = function useLoadAnnotation
27
28
  var annotations = actions.getAnnotationMarks();
28
29
  // we don't want to request integrators for state with an empty list of ids.
29
30
  if (!annotations.length) {
31
+ onLoadComplete && onLoadComplete({
32
+ numberOfUnresolvedInlineComments: 0
33
+ });
30
34
  return;
31
35
  }
32
36
  var ids = annotations.map(function (mark) {
@@ -40,7 +44,12 @@ var useLoadAnnotations = exports.useLoadAnnotations = function useLoadAnnotation
40
44
  return _objectSpread(_objectSpread({}, acc), {}, (0, _defineProperty2.default)({}, value.id, value));
41
45
  }, {});
42
46
  updateSubscriberInlineComment.emit(_types.AnnotationUpdateEvent.SET_ANNOTATION_STATE, payload);
47
+ onLoadComplete && onLoadComplete({
48
+ numberOfUnresolvedInlineComments: data.filter(function (data) {
49
+ return data.state === 'active';
50
+ }).length
51
+ });
43
52
  };
44
53
  inlineCommentGetState(ids, isNestedRender).then(cb);
45
- }, [actions, providers, adfDocument, isNestedRender]);
54
+ }, [actions, providers, adfDocument, isNestedRender, onLoadComplete]);
46
55
  };
@@ -31,10 +31,12 @@ var _draft = require("./draft");
31
31
  var _element = require("./element");
32
32
  var LoadAnnotations = /*#__PURE__*/_react.default.memo(function (_ref) {
33
33
  var adfDocument = _ref.adfDocument,
34
- isNestedRender = _ref.isNestedRender;
34
+ isNestedRender = _ref.isNestedRender,
35
+ onLoadComplete = _ref.onLoadComplete;
35
36
  (0, _useLoadAnnotations.useLoadAnnotations)({
36
37
  adfDocument: adfDocument,
37
- isNestedRender: isNestedRender
38
+ isNestedRender: isNestedRender,
39
+ onLoadComplete: onLoadComplete
38
40
  });
39
41
  return null;
40
42
  });
@@ -52,7 +54,8 @@ var AnnotationsWrapper = exports.AnnotationsWrapper = function AnnotationsWrappe
52
54
  annotationProvider = props.annotationProvider,
53
55
  rendererRef = props.rendererRef,
54
56
  adfDocument = props.adfDocument,
55
- isNestedRender = props.isNestedRender;
57
+ isNestedRender = props.isNestedRender,
58
+ onLoadComplete = props.onLoadComplete;
56
59
  var updateSubscriber = annotationProvider && annotationProvider.inlineComment && annotationProvider.inlineComment.updateSubscriber;
57
60
  var inlineCommentAnnotationsState = (0, _useEvents.useAnnotationStateByTypeEvent)({
58
61
  type: _adfSchema.AnnotationTypes.INLINE_COMMENT,
@@ -71,7 +74,8 @@ var AnnotationsWrapper = exports.AnnotationsWrapper = function AnnotationsWrappe
71
74
  rendererRef: rendererRef
72
75
  }, /*#__PURE__*/_react.default.createElement(LoadAnnotations, {
73
76
  adfDocument: adfDocument,
74
- isNestedRender: isNestedRender
77
+ isNestedRender: isNestedRender,
78
+ onLoadComplete: onLoadComplete
75
79
  }), /*#__PURE__*/_react.default.createElement(_view.AnnotationView, {
76
80
  isNestedRender: isNestedRender,
77
81
  createAnalyticsEvent: createAnalyticsEvent
@@ -282,7 +282,7 @@ class Media extends PureComponent {
282
282
  const shouldOpenMediaViewer = !linkHref && allowMediaViewer;
283
283
  const isInPageInclude = mediaSingleElement === null || mediaSingleElement === void 0 ? void 0 : mediaSingleElement.closest('[data-node-type="include"]');
284
284
  const isIncludeExcerpt = !!(mediaSingleElement !== null && mediaSingleElement !== void 0 && mediaSingleElement.closest('.ak-excerpt-include'));
285
- const showCommentBadge = !!annotationMarks && (featureFlags === null || featureFlags === void 0 ? void 0 : featureFlags.commentsOnMedia) && !isInPageInclude && !isIncludeExcerpt;
285
+ const showCommentBadge = !!annotationMarks && !isInPageInclude && !isIncludeExcerpt;
286
286
  const shouldShowExternalMediaBadge = this.props.type === 'external';
287
287
  return jsx(MediaLink, {
288
288
  mark: linkMark,
@@ -45,7 +45,7 @@ import { countNodes } from './count-nodes';
45
45
  export const NORMAL_SEVERITY_THRESHOLD = 2000;
46
46
  export const DEGRADED_SEVERITY_THRESHOLD = 3000;
47
47
  const packageName = "@atlaskit/renderer";
48
- const packageVersion = "112.2.1";
48
+ const packageVersion = "112.2.3";
49
49
  const setAsQueryContainerStyles = css({
50
50
  containerName: 'ak-renderer-wrapper',
51
51
  containerType: 'inline-size',
@@ -4,7 +4,8 @@ import { ProvidersContext } from '../context';
4
4
  import { RendererContext as ActionsContext } from '../../RendererActionsContext';
5
5
  export const useLoadAnnotations = ({
6
6
  adfDocument,
7
- isNestedRender
7
+ isNestedRender,
8
+ onLoadComplete
8
9
  }) => {
9
10
  const actions = useContext(ActionsContext);
10
11
  const providers = useContext(ProvidersContext);
@@ -21,6 +22,9 @@ export const useLoadAnnotations = ({
21
22
  const annotations = actions.getAnnotationMarks();
22
23
  // we don't want to request integrators for state with an empty list of ids.
23
24
  if (!annotations.length) {
25
+ onLoadComplete && onLoadComplete({
26
+ numberOfUnresolvedInlineComments: 0
27
+ });
24
28
  return;
25
29
  }
26
30
  const ids = annotations.map(mark => mark.attrs.id);
@@ -33,7 +37,10 @@ export const useLoadAnnotations = ({
33
37
  [value.id]: value
34
38
  }), {});
35
39
  updateSubscriberInlineComment.emit(AnnotationUpdateEvent.SET_ANNOTATION_STATE, payload);
40
+ onLoadComplete && onLoadComplete({
41
+ numberOfUnresolvedInlineComments: data.filter(data => data.state === 'active').length
42
+ });
36
43
  };
37
44
  inlineCommentGetState(ids, isNestedRender).then(cb);
38
- }, [actions, providers, adfDocument, isNestedRender]);
45
+ }, [actions, providers, adfDocument, isNestedRender, onLoadComplete]);
39
46
  };
@@ -10,11 +10,13 @@ import { AnnotationRangeProvider } from './contexts/AnnotationRangeContext';
10
10
  import { AnnotationHoverContext } from './contexts/AnnotationHoverContext';
11
11
  const LoadAnnotations = /*#__PURE__*/React.memo(({
12
12
  adfDocument,
13
- isNestedRender
13
+ isNestedRender,
14
+ onLoadComplete
14
15
  }) => {
15
16
  useLoadAnnotations({
16
17
  adfDocument,
17
- isNestedRender
18
+ isNestedRender,
19
+ onLoadComplete
18
20
  });
19
21
  return null;
20
22
  });
@@ -33,7 +35,8 @@ export const AnnotationsWrapper = props => {
33
35
  annotationProvider,
34
36
  rendererRef,
35
37
  adfDocument,
36
- isNestedRender
38
+ isNestedRender,
39
+ onLoadComplete
37
40
  } = props;
38
41
  const updateSubscriber = annotationProvider && annotationProvider.inlineComment && annotationProvider.inlineComment.updateSubscriber;
39
42
  const inlineCommentAnnotationsState = useAnnotationStateByTypeEvent({
@@ -54,7 +57,8 @@ export const AnnotationsWrapper = props => {
54
57
  rendererRef: rendererRef
55
58
  }, /*#__PURE__*/React.createElement(LoadAnnotations, {
56
59
  adfDocument: adfDocument,
57
- isNestedRender: isNestedRender
60
+ isNestedRender: isNestedRender,
61
+ onLoadComplete: onLoadComplete
58
62
  }), /*#__PURE__*/React.createElement(AnnotationView, {
59
63
  isNestedRender: isNestedRender,
60
64
  createAnalyticsEvent: createAnalyticsEvent
@@ -308,7 +308,7 @@ var Media = /*#__PURE__*/function (_PureComponent) {
308
308
  var shouldOpenMediaViewer = !linkHref && allowMediaViewer;
309
309
  var isInPageInclude = mediaSingleElement === null || mediaSingleElement === void 0 ? void 0 : mediaSingleElement.closest('[data-node-type="include"]');
310
310
  var isIncludeExcerpt = !!(mediaSingleElement !== null && mediaSingleElement !== void 0 && mediaSingleElement.closest('.ak-excerpt-include'));
311
- var showCommentBadge = !!annotationMarks && (featureFlags === null || featureFlags === void 0 ? void 0 : featureFlags.commentsOnMedia) && !isInPageInclude && !isIncludeExcerpt;
311
+ var showCommentBadge = !!annotationMarks && !isInPageInclude && !isIncludeExcerpt;
312
312
  var shouldShowExternalMediaBadge = _this.props.type === 'external';
313
313
  return jsx(MediaLink, {
314
314
  mark: linkMark,
@@ -55,7 +55,7 @@ import { countNodes } from './count-nodes';
55
55
  export var NORMAL_SEVERITY_THRESHOLD = 2000;
56
56
  export var DEGRADED_SEVERITY_THRESHOLD = 3000;
57
57
  var packageName = "@atlaskit/renderer";
58
- var packageVersion = "112.2.1";
58
+ var packageVersion = "112.2.3";
59
59
  var setAsQueryContainerStyles = css({
60
60
  containerName: 'ak-renderer-wrapper',
61
61
  containerType: 'inline-size',
@@ -7,7 +7,8 @@ import { ProvidersContext } from '../context';
7
7
  import { RendererContext as ActionsContext } from '../../RendererActionsContext';
8
8
  export var useLoadAnnotations = function useLoadAnnotations(_ref) {
9
9
  var adfDocument = _ref.adfDocument,
10
- isNestedRender = _ref.isNestedRender;
10
+ isNestedRender = _ref.isNestedRender,
11
+ onLoadComplete = _ref.onLoadComplete;
11
12
  var actions = useContext(ActionsContext);
12
13
  var providers = useContext(ProvidersContext);
13
14
  useEffect(function () {
@@ -20,6 +21,9 @@ export var useLoadAnnotations = function useLoadAnnotations(_ref) {
20
21
  var annotations = actions.getAnnotationMarks();
21
22
  // we don't want to request integrators for state with an empty list of ids.
22
23
  if (!annotations.length) {
24
+ onLoadComplete && onLoadComplete({
25
+ numberOfUnresolvedInlineComments: 0
26
+ });
23
27
  return;
24
28
  }
25
29
  var ids = annotations.map(function (mark) {
@@ -33,7 +37,12 @@ export var useLoadAnnotations = function useLoadAnnotations(_ref) {
33
37
  return _objectSpread(_objectSpread({}, acc), {}, _defineProperty({}, value.id, value));
34
38
  }, {});
35
39
  updateSubscriberInlineComment.emit(AnnotationUpdateEvent.SET_ANNOTATION_STATE, payload);
40
+ onLoadComplete && onLoadComplete({
41
+ numberOfUnresolvedInlineComments: data.filter(function (data) {
42
+ return data.state === 'active';
43
+ }).length
44
+ });
36
45
  };
37
46
  inlineCommentGetState(ids, isNestedRender).then(cb);
38
- }, [actions, providers, adfDocument, isNestedRender]);
47
+ }, [actions, providers, adfDocument, isNestedRender, onLoadComplete]);
39
48
  };
@@ -10,10 +10,12 @@ import { AnnotationRangeProvider } from './contexts/AnnotationRangeContext';
10
10
  import { AnnotationHoverContext } from './contexts/AnnotationHoverContext';
11
11
  var LoadAnnotations = /*#__PURE__*/React.memo(function (_ref) {
12
12
  var adfDocument = _ref.adfDocument,
13
- isNestedRender = _ref.isNestedRender;
13
+ isNestedRender = _ref.isNestedRender,
14
+ onLoadComplete = _ref.onLoadComplete;
14
15
  useLoadAnnotations({
15
16
  adfDocument: adfDocument,
16
- isNestedRender: isNestedRender
17
+ isNestedRender: isNestedRender,
18
+ onLoadComplete: onLoadComplete
17
19
  });
18
20
  return null;
19
21
  });
@@ -31,7 +33,8 @@ export var AnnotationsWrapper = function AnnotationsWrapper(props) {
31
33
  annotationProvider = props.annotationProvider,
32
34
  rendererRef = props.rendererRef,
33
35
  adfDocument = props.adfDocument,
34
- isNestedRender = props.isNestedRender;
36
+ isNestedRender = props.isNestedRender,
37
+ onLoadComplete = props.onLoadComplete;
35
38
  var updateSubscriber = annotationProvider && annotationProvider.inlineComment && annotationProvider.inlineComment.updateSubscriber;
36
39
  var inlineCommentAnnotationsState = useAnnotationStateByTypeEvent({
37
40
  type: AnnotationTypes.INLINE_COMMENT,
@@ -50,7 +53,8 @@ export var AnnotationsWrapper = function AnnotationsWrapper(props) {
50
53
  rendererRef: rendererRef
51
54
  }, /*#__PURE__*/React.createElement(LoadAnnotations, {
52
55
  adfDocument: adfDocument,
53
- isNestedRender: isNestedRender
56
+ isNestedRender: isNestedRender,
57
+ onLoadComplete: onLoadComplete
54
58
  }), /*#__PURE__*/React.createElement(AnnotationView, {
55
59
  isNestedRender: isNestedRender,
56
60
  createAnalyticsEvent: createAnalyticsEvent
@@ -1,7 +1,11 @@
1
1
  import type { JSONDocNode } from '@atlaskit/editor-json-transformer';
2
+ export type LoadCompleteHandler = (params: {
3
+ numberOfUnresolvedInlineComments: number;
4
+ }) => void;
2
5
  type Props = {
3
6
  adfDocument: JSONDocNode;
4
7
  isNestedRender: boolean;
8
+ onLoadComplete?: LoadCompleteHandler;
5
9
  };
6
- export declare const useLoadAnnotations: ({ adfDocument, isNestedRender }: Props) => void;
10
+ export declare const useLoadAnnotations: ({ adfDocument, isNestedRender, onLoadComplete }: Props) => void;
7
11
  export {};
@@ -1,7 +1,11 @@
1
1
  import type { JSONDocNode } from '@atlaskit/editor-json-transformer';
2
+ export type LoadCompleteHandler = (params: {
3
+ numberOfUnresolvedInlineComments: number;
4
+ }) => void;
2
5
  type Props = {
3
6
  adfDocument: JSONDocNode;
4
7
  isNestedRender: boolean;
8
+ onLoadComplete?: LoadCompleteHandler;
5
9
  };
6
- export declare const useLoadAnnotations: ({ adfDocument, isNestedRender }: Props) => void;
10
+ export declare const useLoadAnnotations: ({ adfDocument, isNestedRender, onLoadComplete }: Props) => void;
7
11
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/renderer",
3
- "version": "112.2.1",
3
+ "version": "112.2.3",
4
4
  "description": "Renderer component",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -29,7 +29,7 @@
29
29
  "@atlaskit/analytics-next": "^10.1.0",
30
30
  "@atlaskit/button": "^20.3.0",
31
31
  "@atlaskit/code": "^15.6.0",
32
- "@atlaskit/editor-common": "^94.9.0",
32
+ "@atlaskit/editor-common": "^94.10.0",
33
33
  "@atlaskit/editor-json-transformer": "^8.20.0",
34
34
  "@atlaskit/editor-palette": "1.6.3",
35
35
  "@atlaskit/editor-prosemirror": "6.0.0",
@@ -37,10 +37,10 @@
37
37
  "@atlaskit/emoji": "^67.9.0",
38
38
  "@atlaskit/feature-gate-js-client": "^4.22.0",
39
39
  "@atlaskit/icon": "^22.24.0",
40
- "@atlaskit/link-datasource": "^3.6.0",
40
+ "@atlaskit/link-datasource": "^3.7.0",
41
41
  "@atlaskit/media-card": "^78.10.0",
42
42
  "@atlaskit/media-client": "^28.0.0",
43
- "@atlaskit/media-client-react": "^2.2.0",
43
+ "@atlaskit/media-client-react": "^2.3.0",
44
44
  "@atlaskit/media-common": "^11.7.0",
45
45
  "@atlaskit/media-filmstrip": "^47.4.0",
46
46
  "@atlaskit/media-ui": "^26.0.0",
@@ -50,7 +50,7 @@
50
50
  "@atlaskit/status": "^1.5.0",
51
51
  "@atlaskit/task-decision": "^17.11.0",
52
52
  "@atlaskit/theme": "^14.0.0",
53
- "@atlaskit/tmp-editor-statsig": "^2.10.0",
53
+ "@atlaskit/tmp-editor-statsig": "^2.11.0",
54
54
  "@atlaskit/tokens": "^2.0.0",
55
55
  "@atlaskit/tooltip": "^18.8.0",
56
56
  "@babel/runtime": "^7.0.0",