@atlaskit/renderer 133.4.1 → 133.4.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,22 @@
1
1
  # @atlaskit/renderer
2
2
 
3
+ ## 133.4.3
4
+
5
+ ### Patch Changes
6
+
7
+ - [`db98e2e76d7f9`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/db98e2e76d7f9) -
8
+ Improve code block download filename suggestion. Filenames are now derived from comment lines
9
+ (e.g. `# cats.py`), fence marker filenames (e.g. ` ```python cats.py `), or fall back to
10
+ `rovo-snippet.<ext>`.
11
+
12
+ ## 133.4.2
13
+
14
+ ### Patch Changes
15
+
16
+ - [`fae3b71e868dd`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/fae3b71e868dd) -
17
+ Add data-top-level attribute to top-level extension and multiBodiedExtension renderer nodes.
18
+ - Updated dependencies
19
+
3
20
  ## 133.4.1
4
21
 
5
22
  ### Patch Changes
@@ -67,13 +67,32 @@ var getFileExtension = function getFileExtension(language) {
67
67
  }
68
68
  return (_languageToExtension$ = languageToExtension[language.toLowerCase()]) !== null && _languageToExtension$ !== void 0 ? _languageToExtension$ : 'txt';
69
69
  };
70
+ var suggestBaseName = function suggestBaseName(content) {
71
+ var _content$split$find;
72
+ // eslint-disable-next-line require-unicode-regexp
73
+ var filenameCommentPattern = /^(?:#|\/\/|<!--)\s*([\w.\-]+)\s*(?:-->)?$/;
74
+ var firstMeaningfulLine = (_content$split$find = content.split('\n').find(function (l) {
75
+ return l.trim();
76
+ })) !== null && _content$split$find !== void 0 ? _content$split$find : '';
77
+ var filenameMatch = firstMeaningfulLine.trim().match(filenameCommentPattern);
78
+ if (filenameMatch) {
79
+ // eslint-disable-next-line require-unicode-regexp
80
+ return filenameMatch[1].replace(/\.[^.]+$/, '') || 'rovo-snippet';
81
+ }
82
+ var cleaned = firstMeaningfulLine
83
+ // eslint-disable-next-line require-unicode-regexp
84
+ .replace(/[^a-zA-Z0-9\s]/g, ' ').trim()
85
+ // eslint-disable-next-line require-unicode-regexp
86
+ .replace(/\s+/g, '-').toLowerCase().slice(0, 30);
87
+ return cleaned || 'rovo-snippet';
88
+ };
70
89
  var triggerDownload = function triggerDownload(content, language) {
71
90
  // eslint-disable-next-line @atlaskit/platform/no-direct-document-usage
72
91
  if (typeof document === 'undefined') {
73
92
  return;
74
93
  }
75
94
  var extension = getFileExtension(language);
76
- var filename = "rovo-snippet.".concat(extension);
95
+ var resolvedFilename = "".concat(suggestBaseName(content), ".").concat(extension);
77
96
  // eslint-disable-next-line @atlaskit/platform/no-direct-document-usage
78
97
  var doc = document;
79
98
  var blob = new Blob([content], {
@@ -82,7 +101,7 @@ var triggerDownload = function triggerDownload(content, language) {
82
101
  var url = URL.createObjectURL(blob);
83
102
  var anchor = doc.createElement('a');
84
103
  anchor.href = url;
85
- anchor.download = filename;
104
+ anchor.download = resolvedFilename;
86
105
  anchor.style.display = 'none';
87
106
  doc.body.appendChild(anchor);
88
107
  anchor.dispatchEvent(new MouseEvent('click', {
@@ -123,7 +123,8 @@ var renderExtension = exports.renderExtension = function renderExtension(content
123
123
  "data-layout": layout,
124
124
  "data-local-id": localId,
125
125
  "data-testid": "extension--wrapper",
126
- "data-node-type": "extension"
126
+ "data-node-type": "extension",
127
+ "data-top-level": isTopLevel || undefined
127
128
  }, (0, _react.jsx)("div", {
128
129
  tabIndex: options.tabIndex
129
130
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
@@ -152,7 +153,8 @@ var renderExtension = exports.renderExtension = function renderExtension(content
152
153
  minHeight: isInline ? undefined : "".concat(extensionHeight, "px")
153
154
  },
154
155
  "data-layout": layout,
155
- "data-local-id": localId
156
+ "data-local-id": localId,
157
+ "data-top-level": isTopLevel || undefined
156
158
  }, (0, _react.jsx)("div", {
157
159
  tabIndex: options.tabIndex
158
160
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
@@ -72,7 +72,8 @@ var MultiBodiedExtensionWrapperLegacy = function MultiBodiedExtensionWrapperLega
72
72
  (0, _utils.calcBreakoutWidth)(layout, width) : (0, _expValEquals.expValEquals)('platform_editor_remove_important_in_render_ext', 'isEnabled', true) ? undefined : '100%'
73
73
  },
74
74
  "data-layout": layout,
75
- "data-testid": "multiBodiedExtension--wrapper-renderer"
75
+ "data-testid": "multiBodiedExtension--wrapper-renderer",
76
+ "data-top-level": isTopLevel || undefined
76
77
  }, (0, _react.jsx)("div", {
77
78
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
78
79
  className: "".concat(_consts.RendererCssClassName.EXTENSION_OVERFLOW_CONTAINER)
@@ -99,7 +100,8 @@ var MultiBodiedExtensionWrapperNext = function MultiBodiedExtensionWrapperNext(_
99
100
  (0, _breakout.calcBreakoutWidthCss)(layout) : (0, _expValEquals.expValEquals)('platform_editor_remove_important_in_render_ext', 'isEnabled', true) ? undefined : '100%'
100
101
  },
101
102
  "data-layout": layout,
102
- "data-testid": "multiBodiedExtension--wrapper-renderer"
103
+ "data-testid": "multiBodiedExtension--wrapper-renderer",
104
+ "data-top-level": isTopLevel || undefined
103
105
  }, (0, _react.jsx)("div", {
104
106
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
105
107
  className: "".concat(_consts.RendererCssClassName.EXTENSION_OVERFLOW_CONTAINER)
@@ -72,7 +72,7 @@ var DEGRADED_SEVERITY_THRESHOLD = exports.DEGRADED_SEVERITY_THRESHOLD = 3000;
72
72
  var TABLE_INFO_TIMEOUT = 10000;
73
73
  var RENDER_EVENT_SAMPLE_RATE = 0.2;
74
74
  var packageName = "@atlaskit/renderer";
75
- var packageVersion = "133.4.0";
75
+ var packageVersion = "133.4.2";
76
76
  var setAsQueryContainerStyles = (0, _react2.css)({
77
77
  containerName: 'ak-renderer-wrapper',
78
78
  containerType: 'inline-size'
@@ -59,13 +59,30 @@ const getFileExtension = language => {
59
59
  }
60
60
  return (_languageToExtension$ = languageToExtension[language.toLowerCase()]) !== null && _languageToExtension$ !== void 0 ? _languageToExtension$ : 'txt';
61
61
  };
62
+ const suggestBaseName = content => {
63
+ var _content$split$find;
64
+ // eslint-disable-next-line require-unicode-regexp
65
+ const filenameCommentPattern = /^(?:#|\/\/|<!--)\s*([\w.\-]+)\s*(?:-->)?$/;
66
+ const firstMeaningfulLine = (_content$split$find = content.split('\n').find(l => l.trim())) !== null && _content$split$find !== void 0 ? _content$split$find : '';
67
+ const filenameMatch = firstMeaningfulLine.trim().match(filenameCommentPattern);
68
+ if (filenameMatch) {
69
+ // eslint-disable-next-line require-unicode-regexp
70
+ return filenameMatch[1].replace(/\.[^.]+$/, '') || 'rovo-snippet';
71
+ }
72
+ const cleaned = firstMeaningfulLine
73
+ // eslint-disable-next-line require-unicode-regexp
74
+ .replace(/[^a-zA-Z0-9\s]/g, ' ').trim()
75
+ // eslint-disable-next-line require-unicode-regexp
76
+ .replace(/\s+/g, '-').toLowerCase().slice(0, 30);
77
+ return cleaned || 'rovo-snippet';
78
+ };
62
79
  const triggerDownload = (content, language) => {
63
80
  // eslint-disable-next-line @atlaskit/platform/no-direct-document-usage
64
81
  if (typeof document === 'undefined') {
65
82
  return;
66
83
  }
67
84
  const extension = getFileExtension(language);
68
- const filename = `rovo-snippet.${extension}`;
85
+ const resolvedFilename = `${suggestBaseName(content)}.${extension}`;
69
86
  // eslint-disable-next-line @atlaskit/platform/no-direct-document-usage
70
87
  const doc = document;
71
88
  const blob = new Blob([content], {
@@ -74,7 +91,7 @@ const triggerDownload = (content, language) => {
74
91
  const url = URL.createObjectURL(blob);
75
92
  const anchor = doc.createElement('a');
76
93
  anchor.href = url;
77
- anchor.download = filename;
94
+ anchor.download = resolvedFilename;
78
95
  anchor.style.display = 'none';
79
96
  doc.body.appendChild(anchor);
80
97
  anchor.dispatchEvent(new MouseEvent('click', {
@@ -103,7 +103,8 @@ export const renderExtension = (content, layout, options = {}, removeOverflow, e
103
103
  "data-layout": layout,
104
104
  "data-local-id": localId,
105
105
  "data-testid": "extension--wrapper",
106
- "data-node-type": "extension"
106
+ "data-node-type": "extension",
107
+ "data-top-level": isTopLevel || undefined
107
108
  }, jsx("div", {
108
109
  tabIndex: options.tabIndex
109
110
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
@@ -133,7 +134,8 @@ export const renderExtension = (content, layout, options = {}, removeOverflow, e
133
134
  minHeight: isInline ? undefined : `${extensionHeight}px`
134
135
  },
135
136
  "data-layout": layout,
136
- "data-local-id": localId
137
+ "data-local-id": localId,
138
+ "data-top-level": isTopLevel || undefined
137
139
  }, jsx("div", {
138
140
  tabIndex: options.tabIndex
139
141
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
@@ -64,7 +64,8 @@ const MultiBodiedExtensionWrapperLegacy = ({
64
64
  calcBreakoutWidth(layout, width) : expValEquals('platform_editor_remove_important_in_render_ext', 'isEnabled', true) ? undefined : '100%'
65
65
  },
66
66
  "data-layout": layout,
67
- "data-testid": "multiBodiedExtension--wrapper-renderer"
67
+ "data-testid": "multiBodiedExtension--wrapper-renderer",
68
+ "data-top-level": isTopLevel || undefined
68
69
  }, jsx("div", {
69
70
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
70
71
  className: `${RendererCssClassName.EXTENSION_OVERFLOW_CONTAINER}`
@@ -92,7 +93,8 @@ const MultiBodiedExtensionWrapperNext = ({
92
93
  calcBreakoutWidthCss(layout) : expValEquals('platform_editor_remove_important_in_render_ext', 'isEnabled', true) ? undefined : '100%'
93
94
  },
94
95
  "data-layout": layout,
95
- "data-testid": "multiBodiedExtension--wrapper-renderer"
96
+ "data-testid": "multiBodiedExtension--wrapper-renderer",
97
+ "data-top-level": isTopLevel || undefined
96
98
  }, jsx("div", {
97
99
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
98
100
  className: `${RendererCssClassName.EXTENSION_OVERFLOW_CONTAINER}`
@@ -58,7 +58,7 @@ export const DEGRADED_SEVERITY_THRESHOLD = 3000;
58
58
  const TABLE_INFO_TIMEOUT = 10000;
59
59
  const RENDER_EVENT_SAMPLE_RATE = 0.2;
60
60
  const packageName = "@atlaskit/renderer";
61
- const packageVersion = "133.4.0";
61
+ const packageVersion = "133.4.2";
62
62
  const setAsQueryContainerStyles = css({
63
63
  containerName: 'ak-renderer-wrapper',
64
64
  containerType: 'inline-size'
@@ -59,13 +59,32 @@ var getFileExtension = function getFileExtension(language) {
59
59
  }
60
60
  return (_languageToExtension$ = languageToExtension[language.toLowerCase()]) !== null && _languageToExtension$ !== void 0 ? _languageToExtension$ : 'txt';
61
61
  };
62
+ var suggestBaseName = function suggestBaseName(content) {
63
+ var _content$split$find;
64
+ // eslint-disable-next-line require-unicode-regexp
65
+ var filenameCommentPattern = /^(?:#|\/\/|<!--)\s*([\w.\-]+)\s*(?:-->)?$/;
66
+ var firstMeaningfulLine = (_content$split$find = content.split('\n').find(function (l) {
67
+ return l.trim();
68
+ })) !== null && _content$split$find !== void 0 ? _content$split$find : '';
69
+ var filenameMatch = firstMeaningfulLine.trim().match(filenameCommentPattern);
70
+ if (filenameMatch) {
71
+ // eslint-disable-next-line require-unicode-regexp
72
+ return filenameMatch[1].replace(/\.[^.]+$/, '') || 'rovo-snippet';
73
+ }
74
+ var cleaned = firstMeaningfulLine
75
+ // eslint-disable-next-line require-unicode-regexp
76
+ .replace(/[^a-zA-Z0-9\s]/g, ' ').trim()
77
+ // eslint-disable-next-line require-unicode-regexp
78
+ .replace(/\s+/g, '-').toLowerCase().slice(0, 30);
79
+ return cleaned || 'rovo-snippet';
80
+ };
62
81
  var triggerDownload = function triggerDownload(content, language) {
63
82
  // eslint-disable-next-line @atlaskit/platform/no-direct-document-usage
64
83
  if (typeof document === 'undefined') {
65
84
  return;
66
85
  }
67
86
  var extension = getFileExtension(language);
68
- var filename = "rovo-snippet.".concat(extension);
87
+ var resolvedFilename = "".concat(suggestBaseName(content), ".").concat(extension);
69
88
  // eslint-disable-next-line @atlaskit/platform/no-direct-document-usage
70
89
  var doc = document;
71
90
  var blob = new Blob([content], {
@@ -74,7 +93,7 @@ var triggerDownload = function triggerDownload(content, language) {
74
93
  var url = URL.createObjectURL(blob);
75
94
  var anchor = doc.createElement('a');
76
95
  anchor.href = url;
77
- anchor.download = filename;
96
+ anchor.download = resolvedFilename;
78
97
  anchor.style.display = 'none';
79
98
  doc.body.appendChild(anchor);
80
99
  anchor.dispatchEvent(new MouseEvent('click', {
@@ -113,7 +113,8 @@ export var renderExtension = function renderExtension(content, layout) {
113
113
  "data-layout": layout,
114
114
  "data-local-id": localId,
115
115
  "data-testid": "extension--wrapper",
116
- "data-node-type": "extension"
116
+ "data-node-type": "extension",
117
+ "data-top-level": isTopLevel || undefined
117
118
  }, jsx("div", {
118
119
  tabIndex: options.tabIndex
119
120
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
@@ -142,7 +143,8 @@ export var renderExtension = function renderExtension(content, layout) {
142
143
  minHeight: isInline ? undefined : "".concat(extensionHeight, "px")
143
144
  },
144
145
  "data-layout": layout,
145
- "data-local-id": localId
146
+ "data-local-id": localId,
147
+ "data-top-level": isTopLevel || undefined
146
148
  }, jsx("div", {
147
149
  tabIndex: options.tabIndex
148
150
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
@@ -64,7 +64,8 @@ var MultiBodiedExtensionWrapperLegacy = function MultiBodiedExtensionWrapperLega
64
64
  calcBreakoutWidth(layout, width) : expValEquals('platform_editor_remove_important_in_render_ext', 'isEnabled', true) ? undefined : '100%'
65
65
  },
66
66
  "data-layout": layout,
67
- "data-testid": "multiBodiedExtension--wrapper-renderer"
67
+ "data-testid": "multiBodiedExtension--wrapper-renderer",
68
+ "data-top-level": isTopLevel || undefined
68
69
  }, jsx("div", {
69
70
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
70
71
  className: "".concat(RendererCssClassName.EXTENSION_OVERFLOW_CONTAINER)
@@ -91,7 +92,8 @@ var MultiBodiedExtensionWrapperNext = function MultiBodiedExtensionWrapperNext(_
91
92
  calcBreakoutWidthCss(layout) : expValEquals('platform_editor_remove_important_in_render_ext', 'isEnabled', true) ? undefined : '100%'
92
93
  },
93
94
  "data-layout": layout,
94
- "data-testid": "multiBodiedExtension--wrapper-renderer"
95
+ "data-testid": "multiBodiedExtension--wrapper-renderer",
96
+ "data-top-level": isTopLevel || undefined
95
97
  }, jsx("div", {
96
98
  // eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop
97
99
  className: "".concat(RendererCssClassName.EXTENSION_OVERFLOW_CONTAINER)
@@ -63,7 +63,7 @@ export var DEGRADED_SEVERITY_THRESHOLD = 3000;
63
63
  var TABLE_INFO_TIMEOUT = 10000;
64
64
  var RENDER_EVENT_SAMPLE_RATE = 0.2;
65
65
  var packageName = "@atlaskit/renderer";
66
- var packageVersion = "133.4.0";
66
+ var packageVersion = "133.4.2";
67
67
  var setAsQueryContainerStyles = css({
68
68
  containerName: 'ak-renderer-wrapper',
69
69
  containerType: 'inline-size'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/renderer",
3
- "version": "133.4.1",
3
+ "version": "133.4.3",
4
4
  "description": "Renderer component",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -44,7 +44,7 @@
44
44
  "@atlaskit/editor-prosemirror": "^8.0.0",
45
45
  "@atlaskit/editor-shared-styles": "^4.0.0",
46
46
  "@atlaskit/editor-smart-link-draggable": "^1.0.0",
47
- "@atlaskit/emoji": "^71.2.0",
47
+ "@atlaskit/emoji": "^71.3.0",
48
48
  "@atlaskit/feature-gate-js-client": "^6.0.0",
49
49
  "@atlaskit/icon": "^36.0.0",
50
50
  "@atlaskit/link": "^4.0.0",
@@ -66,7 +66,7 @@
66
66
  "@atlaskit/status": "^5.1.0",
67
67
  "@atlaskit/task-decision": "^21.1.0",
68
68
  "@atlaskit/theme": "^26.0.0",
69
- "@atlaskit/tmp-editor-statsig": "^108.4.0",
69
+ "@atlaskit/tmp-editor-statsig": "^109.0.0",
70
70
  "@atlaskit/tokens": "^14.0.0",
71
71
  "@atlaskit/tooltip": "^23.0.0",
72
72
  "@atlaskit/visually-hidden": "^4.0.0",
@@ -81,7 +81,7 @@
81
81
  "uuid": "^3.1.0"
82
82
  },
83
83
  "peerDependencies": {
84
- "@atlaskit/editor-common": "^116.4.0",
84
+ "@atlaskit/editor-common": "^116.6.0",
85
85
  "@atlaskit/link-provider": "^5.0.0",
86
86
  "@atlaskit/media-core": "^38.0.0",
87
87
  "react": "^18.2.0",