@atlaskit/editor-common 88.9.0 → 88.11.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 +30 -0
- package/count-nodes/package.json +15 -0
- package/dist/cjs/monitoring/error.js +1 -1
- package/dist/cjs/styles/shared/blockquote.js +6 -0
- package/dist/cjs/styles/shared/media-single.js +1 -1
- package/dist/cjs/styles/shared/table.js +9 -2
- package/dist/cjs/ui/DropList/index.js +1 -1
- package/dist/cjs/ui/Emoji/index.js +1 -0
- package/dist/cjs/utils/document.js +0 -180
- package/dist/cjs/utils/index.js +32 -1
- package/dist/cjs/utils/processRawValue.js +185 -0
- package/dist/es2019/monitoring/error.js +1 -1
- package/dist/es2019/styles/shared/blockquote.js +6 -0
- package/dist/es2019/styles/shared/media-single.js +1 -1
- package/dist/es2019/styles/shared/table.js +27 -14
- package/dist/es2019/ui/DropList/index.js +1 -1
- package/dist/es2019/ui/Emoji/index.js +1 -0
- package/dist/es2019/utils/document.js +0 -183
- package/dist/es2019/utils/index.js +44 -2
- package/dist/es2019/utils/processRawValue.js +183 -0
- package/dist/esm/monitoring/error.js +1 -1
- package/dist/esm/styles/shared/blockquote.js +6 -0
- package/dist/esm/styles/shared/media-single.js +1 -1
- package/dist/esm/styles/shared/table.js +9 -2
- package/dist/esm/ui/DropList/index.js +1 -1
- package/dist/esm/ui/Emoji/index.js +1 -0
- package/dist/esm/utils/document.js +0 -179
- package/dist/esm/utils/index.js +44 -2
- package/dist/esm/utils/processRawValue.js +179 -0
- package/dist/types/collab/index.d.ts +1 -0
- package/dist/types/utils/document.d.ts +2 -6
- package/dist/types/utils/index.d.ts +42 -2
- package/dist/types/utils/processRawValue.d.ts +6 -0
- package/dist/types-ts4.5/collab/index.d.ts +1 -0
- package/dist/types-ts4.5/utils/document.d.ts +2 -6
- package/dist/types-ts4.5/utils/index.d.ts +42 -2
- package/dist/types-ts4.5/utils/processRawValue.d.ts +6 -0
- package/is-performance-api-available/package.json +15 -0
- package/package.json +8 -3
- package/performance/measure-render/package.json +15 -0
- package/performance/navigation/package.json +15 -0
- package/process-raw-value/package.json +15 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,35 @@
|
|
|
1
1
|
# @atlaskit/editor-common
|
|
2
2
|
|
|
3
|
+
## 88.11.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#136891](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/136891)
|
|
8
|
+
[`388780c6348e9`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/388780c6348e9) -
|
|
9
|
+
Pass emoji provider via preset
|
|
10
|
+
- [#137736](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/137736)
|
|
11
|
+
[`2a88fdd213838`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/2a88fdd213838) -
|
|
12
|
+
Introducing new smaller refined entry-points for editor-common to reduce bundle size.
|
|
13
|
+
- [#137755](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/137755)
|
|
14
|
+
[`f3d004d4e3a3e`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/f3d004d4e3a3e) -
|
|
15
|
+
ED-24650 fix nested node jittering issue
|
|
16
|
+
|
|
17
|
+
### Patch Changes
|
|
18
|
+
|
|
19
|
+
- [#137217](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/137217)
|
|
20
|
+
[`699039baa2c85`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/699039baa2c85) -
|
|
21
|
+
[ux] [ED-24782] Add styling for blockquotes so that when media is nested, wrapLeft and wrapRight
|
|
22
|
+
do not cause the media to sit outside the blockquotes.
|
|
23
|
+
- Updated dependencies
|
|
24
|
+
|
|
25
|
+
## 88.10.0
|
|
26
|
+
|
|
27
|
+
### Minor Changes
|
|
28
|
+
|
|
29
|
+
- [#137505](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/137505)
|
|
30
|
+
[`ed3b11d42c169`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/ed3b11d42c169) -
|
|
31
|
+
add ability to target a clientId for restore
|
|
32
|
+
|
|
3
33
|
## 88.9.0
|
|
4
34
|
|
|
5
35
|
### Minor Changes
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@atlaskit/editor-common/count-nodes",
|
|
3
|
+
"main": "../dist/cjs/utils/count-nodes.js",
|
|
4
|
+
"module": "../dist/esm/utils/count-nodes.js",
|
|
5
|
+
"module:es2019": "../dist/es2019/utils/count-nodes.js",
|
|
6
|
+
"sideEffects": false,
|
|
7
|
+
"types": "../dist/types/utils/count-nodes.d.ts",
|
|
8
|
+
"typesVersions": {
|
|
9
|
+
">=4.5 <5.4": {
|
|
10
|
+
"*": [
|
|
11
|
+
"../dist/types-ts4.5/utils/count-nodes.d.ts"
|
|
12
|
+
]
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -17,7 +17,7 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
|
|
|
17
17
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
18
18
|
var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
|
|
19
19
|
var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
|
|
20
|
-
var packageVersion = "88.
|
|
20
|
+
var packageVersion = "88.11.0";
|
|
21
21
|
var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
|
|
22
22
|
// Remove URL as it has UGC
|
|
23
23
|
// TODO: Sanitise the URL instead of just removing it
|
|
@@ -14,6 +14,9 @@ var blockquoteSharedStyles = exports.blockquoteSharedStyles = (0, _react.css)({
|
|
|
14
14
|
'& blockquote': {
|
|
15
15
|
boxSizing: 'border-box',
|
|
16
16
|
color: 'inherit',
|
|
17
|
+
width: '100%',
|
|
18
|
+
clear: 'both',
|
|
19
|
+
display: 'inline-block',
|
|
17
20
|
paddingLeft: "var(--ds-space-200, 16px)",
|
|
18
21
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
|
|
19
22
|
borderLeft: "2px solid ".concat("var(--ds-border, ".concat(_editorSharedStyles.akEditorBlockquoteBorderColor, ")")),
|
|
@@ -57,6 +60,9 @@ var blockquoteSharedStylesNew = exports.blockquoteSharedStylesNew = (0, _react.c
|
|
|
57
60
|
'& blockquote': {
|
|
58
61
|
boxSizing: 'border-box',
|
|
59
62
|
color: 'inherit',
|
|
63
|
+
width: '100%',
|
|
64
|
+
clear: 'both',
|
|
65
|
+
display: 'inline-block',
|
|
60
66
|
paddingLeft: "var(--ds-space-250, 20px)",
|
|
61
67
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
|
|
62
68
|
borderLeft: "2px solid ".concat("var(--ds-border, ".concat(_editorSharedStyles.akEditorBlockquoteBorderColor, ")")),
|
|
@@ -32,7 +32,7 @@ var mediaSingleSharedStyle = exports.mediaSingleSharedStyle = (0, _react.css)((_
|
|
|
32
32
|
marginBottom: "var(--ds-space-150, 12px)",
|
|
33
33
|
clear: 'both',
|
|
34
34
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
|
|
35
|
-
'&.image-wrap-left, &.image-wrap-right': {
|
|
35
|
+
'&.image-wrap-left[data-layout], &.image-wrap-right[data-layout]': {
|
|
36
36
|
clear: 'none',
|
|
37
37
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-selectors -- Ignored via go/DSP-18766
|
|
38
38
|
'&:first-child': {
|
|
@@ -13,7 +13,7 @@ var _experiments = require("@atlaskit/tmp-editor-statsig/experiments");
|
|
|
13
13
|
var _browser = require("../../utils/browser");
|
|
14
14
|
var _codeBlock = require("./code-block");
|
|
15
15
|
var _tableCell = require("./tableCell");
|
|
16
|
-
var _templateObject; // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
16
|
+
var _templateObject, _templateObject2, _templateObject3; // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
17
17
|
var tableMarginTop = exports.tableMarginTop = 24;
|
|
18
18
|
var tableMarginBottom = exports.tableMarginBottom = 16;
|
|
19
19
|
var tableMarginTopWithControl = exports.tableMarginTopWithControl = 14;
|
|
@@ -45,9 +45,16 @@ var TableSharedCssClassName = exports.TableSharedCssClassName = {
|
|
|
45
45
|
TABLE_RESIZER_CONTAINER: "".concat(_adfSchema.tablePrefixSelector, "-resizer-container")
|
|
46
46
|
};
|
|
47
47
|
|
|
48
|
+
/* first block node has 0 top margin */
|
|
49
|
+
var firstNodeWithNotMarginTop = function firstNodeWithNotMarginTop() {
|
|
50
|
+
return (0, _experiments.editorExperiment)('nested-dnd', true) ? // eslint-disable-next-line @atlaskit/design-system/no-css-tagged-template-expression
|
|
51
|
+
(0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n\t\t\t\t> :nth-child(1 of :not(style, .ProseMirror-gapcursor, .ProseMirror-widget, span)) {\n\t\t\t\t\tmargin-top: 0;\n\t\t\t\t}\n\t\t\t"]))) : // eslint-disable-next-line @atlaskit/design-system/no-css-tagged-template-expression
|
|
52
|
+
(0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n\t\t\t\t> :first-child:not(style),\n\t\t\t\t> style:first-child + * {\n\t\t\t\t\tmargin-top: 0;\n\t\t\t\t}\n\n\t\t\t\t> .ProseMirror-gapcursor:first-child + *,\n\t\t\t\t> style:first-child + .ProseMirror-gapcursor + * {\n\t\t\t\t\tmargin-top: 0;\n\t\t\t\t}\n\n\t\t\t\t> .ProseMirror-gapcursor:first-child + span + *,\n\t\t\t\t> style:first-child + .ProseMirror-gapcursor + span + * {\n\t\t\t\t\tmargin-top: 0;\n\t\t\t\t}\n\t\t\t"])));
|
|
53
|
+
};
|
|
54
|
+
|
|
48
55
|
// eslint-disable-next-line @atlaskit/design-system/no-css-tagged-template-expression -- Appears safe to auto-fix, but leaving it up to the team to remediate as the readability only gets worse with autofixing
|
|
49
56
|
var tableSharedStyle = exports.tableSharedStyle = function tableSharedStyle() {
|
|
50
|
-
return (0, _react.css)(
|
|
57
|
+
return (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n\t", "\n\t.", " {\n\t\tposition: relative;\n\t\tmargin: 0 auto ", ";\n\t\tbox-sizing: border-box;\n\n\t\t/**\n * Fix block top alignment inside table cells.\n */\n\t\t.decisionItemView-content-wrap:first-of-type > div {\n\t\t\tmargin-top: 0;\n\t\t}\n\t}\n\t.", "[data-number-column='true'] {\n\t\tpadding-left: ", "px;\n\t\tclear: both;\n\t}\n\n\t.", " {\n\t\twill-change: width, margin-left;\n\t}\n\n\t.", " table {\n\t\twill-change: width;\n\t}\n\n\t.", " > table {\n\t\tmargin: ", " 0 0 0;\n\t}\n\n\t.", " > table,\n\t.", " > table {\n\t\tmargin: ", " ", " 0 0;\n\t}\n\n\t/* avoid applying styles to nested tables (possible via extensions) */\n\t.", " > table,\n\t.", " > table,\n\t.", " > table {\n\t\tborder-collapse: collapse;\n\t\tborder: ", "px solid\n\t\t\t", ";\n\t\ttable-layout: fixed;\n\t\tfont-size: 1em;\n\t\twidth: 100%;\n\n\t\t&[data-autosize='true'] {\n\t\t\ttable-layout: auto;\n\t\t}\n\n\t\t& {\n\t\t\t* {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t}\n\t\t\thr {\n\t\t\t\tbox-sizing: content-box;\n\t\t\t}\n\n\t\t\ttbody {\n\t\t\t\tborder-bottom: none;\n\t\t\t}\n\t\t\tth td {\n\t\t\t\tbackground-color: ", ";\n\t\t\t}\n\t\t\tth,\n\t\t\ttd {\n\t\t\t\tmin-width: ", "px;\n\t\t\t\tfont-weight: normal;\n\t\t\t\tvertical-align: top;\n\t\t\t\tborder: 1px solid ", ";\n\t\t\t\tborder-right-width: 0;\n\t\t\t\tborder-bottom-width: 0;\n\n\t\t\t\tpadding: ", ";\n\t\t\t\t/* https://stackoverflow.com/questions/7517127/borders-not-shown-in-firefox-with-border-collapse-on-table-position-relative-o */\n\t\t\t\t", "\n\n\t\t\t\t", "\n\n\t\t\t\tth p:not(:first-of-type),\n\t\t\t\ttd p:not(:first-of-type) {\n\t\t\t\t\tmargin-top: ", ";\n\t\t\t\t}\n\t\t\t}\n\t\t\tth {\n\t\t\t\tbackground-color: ", ";\n\t\t\t\ttext-align: left;\n\n\t\t\t\t/* only apply this styling to codeblocks in default background headercells */\n\t\t\t\t/* TODO this needs to be overhauled as it relies on unsafe selectors */\n\t\t\t\t&:not([style]):not(.danger) {\n\t\t\t\t\t.", ":not(.danger) {\n\t\t\t\t\t\tbackground-color: ", ";\n\n\t\t\t\t\t\t:not(.", ") {\n\t\t\t\t\t\t\tbox-shadow: 0px 0px 0px 1px ", ";\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t.", " {\n\t\t\t\t\t\t\tbackground-image: ", ";\n\n\t\t\t\t\t\t\tbackground-color: ", ";\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t.", " {\n\t\t\t\t\t\t\tbackground-color: ", ";\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t/* this is only relevant to the element taken care of by renderer */\n\t\t\t\t\t\t> [data-ds--code--code-block] {\n\t\t\t\t\t\t\tbackground-image: ", "!important;\n\n\t\t\t\t\t\t\tbackground-color: ", "!important;\n\n\t\t\t\t\t\t\t// selector lives inside @atlaskit/code\n\t\t\t\t\t\t\t--ds--code--line-number-bg-color: ", ";\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n"])), (0, _tableCell.tableCellBackgroundStyleOverride)(), TableSharedCssClassName.TABLE_CONTAINER, "var(--ds-space-200, 16px)", TableSharedCssClassName.TABLE_CONTAINER, _editorSharedStyles.akEditorTableNumberColumnWidth - 1, TableSharedCssClassName.TABLE_RESIZER_CONTAINER, TableSharedCssClassName.TABLE_RESIZER_CONTAINER, TableSharedCssClassName.TABLE_NODE_WRAPPER, "var(--ds-space-300, 24px)", TableSharedCssClassName.TABLE_CONTAINER, TableSharedCssClassName.TABLE_STICKY_WRAPPER, "var(--ds-space-300, 24px)", "var(--ds-space-100, 8px)", TableSharedCssClassName.TABLE_CONTAINER, TableSharedCssClassName.TABLE_NODE_WRAPPER, TableSharedCssClassName.TABLE_STICKY_WRAPPER, tableCellBorderWidth, "var(--ds-background-accent-gray-subtler, ".concat(_editorSharedStyles.akEditorTableBorder, ")"), "var(--ds-background-neutral-subtle, white)", tableCellMinWidth, "var(--ds-background-accent-gray-subtler, ".concat(_editorSharedStyles.akEditorTableBorder, ")"), (0, _experiments.editorExperiment)('table-nested-dnd', true) ? "var(--ds-space-100, 8px)".concat(" ", "var(--ds-space-250, 20px)") : "var(--ds-space-100, 8px)", _browser.browser.gecko || _browser.browser.ie || _browser.browser.mac && _browser.browser.chrome ? 'background-clip: padding-box;' : '', firstNodeWithNotMarginTop(), "var(--ds-space-150, 12px)", "var(--ds-background-accent-gray-subtlest, ".concat(_editorSharedStyles.akEditorTableToolbar, ")"), _codeBlock.CodeBlockSharedCssClassName.CODEBLOCK_CONTAINER, "var(--ds-surface-raised, rgb(235, 237, 240))", _editorSharedStyles.akEditorSelectedNodeClassName, "var(--ds-border, transparent)", _codeBlock.CodeBlockSharedCssClassName.CODEBLOCK_CONTENT_WRAPPER, (0, _editorSharedStyles.overflowShadow)({
|
|
51
58
|
leftCoverWidth: "var(--ds-space-300, 24px)"
|
|
52
59
|
}), "var(--ds-background-neutral, rgb(235, 237, 240))", _codeBlock.CodeBlockSharedCssClassName.CODEBLOCK_LINE_NUMBER_GUTTER, "var(--ds-background-neutral, rgb(226, 229, 233))", (0, _editorSharedStyles.overflowShadow)({
|
|
53
60
|
leftCoverWidth: "var(--ds-space-300, 24px)"
|
|
@@ -25,7 +25,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
|
|
|
25
25
|
* @jsx jsx
|
|
26
26
|
*/ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
27
27
|
var packageName = "@atlaskit/editor-common";
|
|
28
|
-
var packageVersion = "88.
|
|
28
|
+
var packageVersion = "88.11.0";
|
|
29
29
|
var halfFocusRing = 1;
|
|
30
30
|
var dropOffset = '0, 8';
|
|
31
31
|
var DropList = /*#__PURE__*/function (_Component) {
|
|
@@ -20,6 +20,7 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
|
|
|
20
20
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
21
21
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
22
22
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
23
|
+
// @deprecated - use Emoji from editor-plugin-emoji
|
|
23
24
|
var EmojiNode = exports.default = /*#__PURE__*/function (_PureComponent) {
|
|
24
25
|
(0, _inherits2.default)(EmojiNode, _PureComponent);
|
|
25
26
|
var _super = _createSuper(EmojiNode);
|
|
@@ -11,14 +11,7 @@ exports.hasVisibleContent = hasVisibleContent;
|
|
|
11
11
|
exports.isEmptyDocument = isEmptyDocument;
|
|
12
12
|
exports.isSelectionEndOfParagraph = void 0;
|
|
13
13
|
exports.nodesBetweenChanged = nodesBetweenChanged;
|
|
14
|
-
exports.processRawValue = processRawValue;
|
|
15
|
-
var _transforms = require("@atlaskit/adf-utils/transforms");
|
|
16
|
-
var _model = require("@atlaskit/editor-prosemirror/model");
|
|
17
|
-
var _analytics = require("../analytics");
|
|
18
14
|
var _editorCoreUtils = require("./editor-core-utils");
|
|
19
|
-
var _privacyFilter = require("./filter/privacy-filter");
|
|
20
|
-
var _trackUnsupportedContent = require("./track-unsupported-content");
|
|
21
|
-
var _validateUsingSpec = require("./validate-using-spec");
|
|
22
15
|
var getStepRange = exports.getStepRange = function getStepRange(transaction) {
|
|
23
16
|
var from = -1;
|
|
24
17
|
var to = -1;
|
|
@@ -79,179 +72,6 @@ function nodesBetweenChanged(tr, f, startPos) {
|
|
|
79
72
|
}
|
|
80
73
|
tr.doc.nodesBetween(stepRange.from, stepRange.to, f, startPos);
|
|
81
74
|
}
|
|
82
|
-
function processRawValue(schema, value, providerFactory, sanitizePrivateContent, contentTransformer, dispatchAnalyticsEvent) {
|
|
83
|
-
if (!value) {
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
var node;
|
|
87
|
-
if (typeof value === 'string') {
|
|
88
|
-
try {
|
|
89
|
-
if (contentTransformer) {
|
|
90
|
-
var doc = contentTransformer.parse(value);
|
|
91
|
-
node = doc.toJSON();
|
|
92
|
-
} else {
|
|
93
|
-
node = JSON.parse(value);
|
|
94
|
-
}
|
|
95
|
-
} catch (e) {
|
|
96
|
-
// eslint-disable-next-line no-console
|
|
97
|
-
console.error("Error processing value: ".concat(value, " isn't a valid JSON"));
|
|
98
|
-
return;
|
|
99
|
-
}
|
|
100
|
-
} else {
|
|
101
|
-
node = value;
|
|
102
|
-
}
|
|
103
|
-
if (Array.isArray(node)) {
|
|
104
|
-
// eslint-disable-next-line no-console
|
|
105
|
-
console.error("Error processing value: ".concat(node, " is an array, but it must be an object."));
|
|
106
|
-
return;
|
|
107
|
-
}
|
|
108
|
-
try {
|
|
109
|
-
// ProseMirror always require a child under doc
|
|
110
|
-
if (node.type === 'doc') {
|
|
111
|
-
if (Array.isArray(node.content) && node.content.length === 0) {
|
|
112
|
-
node.content.push({
|
|
113
|
-
type: 'paragraph',
|
|
114
|
-
content: []
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
// Just making sure doc is always valid
|
|
118
|
-
if (!node.version) {
|
|
119
|
-
node.version = 1;
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
if (contentTransformer) {
|
|
123
|
-
return _model.Node.fromJSON(schema, node);
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
// link mark on mediaSingle is deprecated, need to move link mark to child media node
|
|
127
|
-
// https://product-fabric.atlassian.net/browse/ED-14043
|
|
128
|
-
var _transformMediaLinkMa = (0, _transforms.transformMediaLinkMarks)(node),
|
|
129
|
-
transformedAdf = _transformMediaLinkMa.transformedAdf,
|
|
130
|
-
isTransformed = _transformMediaLinkMa.isTransformed;
|
|
131
|
-
if (isTransformed && dispatchAnalyticsEvent) {
|
|
132
|
-
dispatchAnalyticsEvent({
|
|
133
|
-
action: _analytics.ACTION.MEDIA_LINK_TRANSFORMED,
|
|
134
|
-
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
135
|
-
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
136
|
-
});
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
// See: HOT-97965 https://product-fabric.atlassian.net/browse/ED-14400
|
|
140
|
-
// We declared in code mark spec that links and marks should not co-exist on
|
|
141
|
-
// text nodes. This util strips code marks from bad text nodes and preserves links.
|
|
142
|
-
// Otherwise, prosemirror will try to repair the invalid document by stripping links
|
|
143
|
-
// and preserving code marks during content changes.
|
|
144
|
-
var _transformTextLinkCod = (0, _transforms.transformTextLinkCodeMarks)(transformedAdf);
|
|
145
|
-
transformedAdf = _transformTextLinkCod.transformedAdf;
|
|
146
|
-
isTransformed = _transformTextLinkCod.isTransformed;
|
|
147
|
-
if (isTransformed && dispatchAnalyticsEvent) {
|
|
148
|
-
dispatchAnalyticsEvent({
|
|
149
|
-
action: _analytics.ACTION.TEXT_LINK_MARK_TRANSFORMED,
|
|
150
|
-
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
151
|
-
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
152
|
-
});
|
|
153
|
-
}
|
|
154
|
-
var discardedMarks = [];
|
|
155
|
-
var _transformDedupeMarks = (0, _transforms.transformDedupeMarks)(transformedAdf);
|
|
156
|
-
transformedAdf = _transformDedupeMarks.transformedAdf;
|
|
157
|
-
isTransformed = _transformDedupeMarks.isTransformed;
|
|
158
|
-
discardedMarks = _transformDedupeMarks.discardedMarks;
|
|
159
|
-
if (isTransformed && dispatchAnalyticsEvent) {
|
|
160
|
-
dispatchAnalyticsEvent({
|
|
161
|
-
action: _analytics.ACTION.DEDUPE_MARKS_TRANSFORMED_V2,
|
|
162
|
-
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
163
|
-
eventType: _analytics.EVENT_TYPE.OPERATIONAL,
|
|
164
|
-
attributes: {
|
|
165
|
-
/** UGC WARNING
|
|
166
|
-
*
|
|
167
|
-
* DO NOT include the `mark` attributes inside, we map here to only
|
|
168
|
-
* extract the mark type as that is the only non-UGC safe information
|
|
169
|
-
* that we can add to event-attributes
|
|
170
|
-
*
|
|
171
|
-
*/
|
|
172
|
-
discardedMarkTypes: discardedMarks.map(function (mark) {
|
|
173
|
-
return mark.type;
|
|
174
|
-
})
|
|
175
|
-
}
|
|
176
|
-
});
|
|
177
|
-
}
|
|
178
|
-
var _transformNodesMissin = (0, _transforms.transformNodesMissingContent)(transformedAdf);
|
|
179
|
-
transformedAdf = _transformNodesMissin.transformedAdf;
|
|
180
|
-
isTransformed = _transformNodesMissin.isTransformed;
|
|
181
|
-
if (isTransformed && dispatchAnalyticsEvent) {
|
|
182
|
-
dispatchAnalyticsEvent({
|
|
183
|
-
action: _analytics.ACTION.NODES_MISSING_CONTENT_TRANSFORMED,
|
|
184
|
-
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
185
|
-
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
186
|
-
});
|
|
187
|
-
}
|
|
188
|
-
var _transformIndentation = (0, _transforms.transformIndentationMarks)(transformedAdf);
|
|
189
|
-
transformedAdf = _transformIndentation.transformedAdf;
|
|
190
|
-
isTransformed = _transformIndentation.isTransformed;
|
|
191
|
-
if (isTransformed && dispatchAnalyticsEvent) {
|
|
192
|
-
dispatchAnalyticsEvent({
|
|
193
|
-
action: _analytics.ACTION.INDENTATION_MARKS_TRANSFORMED,
|
|
194
|
-
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
195
|
-
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
196
|
-
});
|
|
197
|
-
}
|
|
198
|
-
var _transformInvalidMedi = (0, _transforms.transformInvalidMediaContent)(transformedAdf);
|
|
199
|
-
transformedAdf = _transformInvalidMedi.transformedAdf;
|
|
200
|
-
isTransformed = _transformInvalidMedi.isTransformed;
|
|
201
|
-
if (isTransformed && dispatchAnalyticsEvent) {
|
|
202
|
-
dispatchAnalyticsEvent({
|
|
203
|
-
action: _analytics.ACTION.INVALID_MEDIA_CONTENT_TRANSFORMED,
|
|
204
|
-
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
205
|
-
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
206
|
-
});
|
|
207
|
-
}
|
|
208
|
-
var entity = (0, _validateUsingSpec.validateADFEntity)(schema, transformedAdf || node, dispatchAnalyticsEvent);
|
|
209
|
-
var newEntity = maySanitizePrivateContent(entity, providerFactory, sanitizePrivateContent);
|
|
210
|
-
var parsedDoc = _model.Node.fromJSON(schema, newEntity);
|
|
211
|
-
|
|
212
|
-
// throws an error if the document is invalid
|
|
213
|
-
try {
|
|
214
|
-
parsedDoc.check();
|
|
215
|
-
} catch (err) {
|
|
216
|
-
if (dispatchAnalyticsEvent) {
|
|
217
|
-
dispatchAnalyticsEvent({
|
|
218
|
-
action: _analytics.ACTION.INVALID_PROSEMIRROR_DOCUMENT,
|
|
219
|
-
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
220
|
-
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
221
|
-
});
|
|
222
|
-
}
|
|
223
|
-
throw err;
|
|
224
|
-
}
|
|
225
|
-
if (dispatchAnalyticsEvent) {
|
|
226
|
-
(0, _trackUnsupportedContent.findAndTrackUnsupportedContentNodes)(parsedDoc, schema, dispatchAnalyticsEvent);
|
|
227
|
-
}
|
|
228
|
-
return parsedDoc;
|
|
229
|
-
} catch (e) {
|
|
230
|
-
if (dispatchAnalyticsEvent) {
|
|
231
|
-
dispatchAnalyticsEvent({
|
|
232
|
-
action: _analytics.ACTION.DOCUMENT_PROCESSING_ERROR,
|
|
233
|
-
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
234
|
-
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
235
|
-
});
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
// eslint-disable-next-line no-console
|
|
239
|
-
console.error("Error processing document:\n".concat(e instanceof Error ? e.message : String(e), "\n\n"), JSON.stringify(node));
|
|
240
|
-
if (isProseMirrorSchemaCheckError(e)) {
|
|
241
|
-
throw e;
|
|
242
|
-
}
|
|
243
|
-
return;
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
function isProseMirrorSchemaCheckError(error) {
|
|
247
|
-
return error instanceof RangeError && (!!error.message.match(/^Invalid collection of marks for node/) || !!error.message.match(/^Invalid content for node/));
|
|
248
|
-
}
|
|
249
|
-
var maySanitizePrivateContent = function maySanitizePrivateContent(entity, providerFactory, sanitizePrivateContent) {
|
|
250
|
-
if (sanitizePrivateContent && providerFactory) {
|
|
251
|
-
return (0, _privacyFilter.sanitizeNodeForPrivacy)(entity, providerFactory);
|
|
252
|
-
}
|
|
253
|
-
return entity;
|
|
254
|
-
};
|
|
255
75
|
|
|
256
76
|
/**
|
|
257
77
|
* Returns false if node contains only empty inline nodes and hardBreaks.
|
package/dist/cjs/utils/index.js
CHANGED
|
@@ -922,7 +922,7 @@ exports.pmHistoryPluginKey = void 0;
|
|
|
922
922
|
Object.defineProperty(exports, "processRawValue", {
|
|
923
923
|
enumerable: true,
|
|
924
924
|
get: function get() {
|
|
925
|
-
return
|
|
925
|
+
return _processRawValue.processRawValue;
|
|
926
926
|
}
|
|
927
927
|
});
|
|
928
928
|
Object.defineProperty(exports, "removeBlockMarks", {
|
|
@@ -1186,6 +1186,7 @@ var _referentiality = require("./referentiality");
|
|
|
1186
1186
|
var _list = require("./list");
|
|
1187
1187
|
var _hyperlink = require("./hyperlink");
|
|
1188
1188
|
var _grid = require("./grid");
|
|
1189
|
+
var _processRawValue = require("./processRawValue");
|
|
1189
1190
|
var _richMediaUtils = require("./rich-media-utils");
|
|
1190
1191
|
var _privacyFilter = require("./filter/privacy-filter");
|
|
1191
1192
|
var _datasource = require("./datasource");
|
|
@@ -1208,6 +1209,21 @@ var _pageElementCounts = require("./page-element-counts");
|
|
|
1208
1209
|
* Use entry-point `@atlaskit/editor-common/utils/analytics` instead
|
|
1209
1210
|
*/
|
|
1210
1211
|
|
|
1212
|
+
/**
|
|
1213
|
+
* @private
|
|
1214
|
+
* @deprecated
|
|
1215
|
+
*
|
|
1216
|
+
* Private API - should not be used. Use `@atlaskit/editor-common/is-performance-api-available` if required.
|
|
1217
|
+
*
|
|
1218
|
+
*/
|
|
1219
|
+
|
|
1220
|
+
/**
|
|
1221
|
+
* @private
|
|
1222
|
+
* @deprecated
|
|
1223
|
+
*
|
|
1224
|
+
* Private API - should not be used. Use `@atlaskit/editor-common/performance/navigation` if required.
|
|
1225
|
+
*/
|
|
1226
|
+
|
|
1211
1227
|
/**
|
|
1212
1228
|
* @deprecated - [ED-23844] moving to own entry point @atlaskit/editor-common/whitespace
|
|
1213
1229
|
*/
|
|
@@ -1221,6 +1237,21 @@ var _pageElementCounts = require("./page-element-counts");
|
|
|
1221
1237
|
|
|
1222
1238
|
// prosemirror-history does not export its plugin key
|
|
1223
1239
|
var pmHistoryPluginKey = exports.pmHistoryPluginKey = 'history$';
|
|
1240
|
+
|
|
1241
|
+
/**
|
|
1242
|
+
* @private
|
|
1243
|
+
* @deprecated
|
|
1244
|
+
*
|
|
1245
|
+
* Use `@atlaskit/editor-common/process-raw-value` entry-point instead.
|
|
1246
|
+
*/
|
|
1247
|
+
|
|
1248
|
+
/**
|
|
1249
|
+
* @private
|
|
1250
|
+
* @deprecated
|
|
1251
|
+
*
|
|
1252
|
+
* Private API - do not use.
|
|
1253
|
+
*/
|
|
1254
|
+
|
|
1224
1255
|
function shallowEqual() {
|
|
1225
1256
|
var obj1 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
1226
1257
|
var obj2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.processRawValue = processRawValue;
|
|
7
|
+
var _transforms = require("@atlaskit/adf-utils/transforms");
|
|
8
|
+
var _model = require("@atlaskit/editor-prosemirror/model");
|
|
9
|
+
var _analytics = require("../analytics");
|
|
10
|
+
var _privacyFilter = require("./filter/privacy-filter");
|
|
11
|
+
var _trackUnsupportedContent = require("./track-unsupported-content");
|
|
12
|
+
var _validateUsingSpec = require("./validate-using-spec");
|
|
13
|
+
function processRawValue(schema, value, providerFactory, sanitizePrivateContent, contentTransformer, dispatchAnalyticsEvent) {
|
|
14
|
+
if (!value) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
var node;
|
|
18
|
+
if (typeof value === 'string') {
|
|
19
|
+
try {
|
|
20
|
+
if (contentTransformer) {
|
|
21
|
+
var doc = contentTransformer.parse(value);
|
|
22
|
+
node = doc.toJSON();
|
|
23
|
+
} else {
|
|
24
|
+
node = JSON.parse(value);
|
|
25
|
+
}
|
|
26
|
+
} catch (e) {
|
|
27
|
+
// eslint-disable-next-line no-console
|
|
28
|
+
console.error("Error processing value: ".concat(value, " isn't a valid JSON"));
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
} else {
|
|
32
|
+
node = value;
|
|
33
|
+
}
|
|
34
|
+
if (Array.isArray(node)) {
|
|
35
|
+
// eslint-disable-next-line no-console
|
|
36
|
+
console.error("Error processing value: ".concat(node, " is an array, but it must be an object."));
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
try {
|
|
40
|
+
// ProseMirror always require a child under doc
|
|
41
|
+
if (node.type === 'doc') {
|
|
42
|
+
if (Array.isArray(node.content) && node.content.length === 0) {
|
|
43
|
+
node.content.push({
|
|
44
|
+
type: 'paragraph',
|
|
45
|
+
content: []
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
// Just making sure doc is always valid
|
|
49
|
+
if (!node.version) {
|
|
50
|
+
node.version = 1;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
if (contentTransformer) {
|
|
54
|
+
return _model.Node.fromJSON(schema, node);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
// link mark on mediaSingle is deprecated, need to move link mark to child media node
|
|
58
|
+
// https://product-fabric.atlassian.net/browse/ED-14043
|
|
59
|
+
var _transformMediaLinkMa = (0, _transforms.transformMediaLinkMarks)(node),
|
|
60
|
+
transformedAdf = _transformMediaLinkMa.transformedAdf,
|
|
61
|
+
isTransformed = _transformMediaLinkMa.isTransformed;
|
|
62
|
+
if (isTransformed && dispatchAnalyticsEvent) {
|
|
63
|
+
dispatchAnalyticsEvent({
|
|
64
|
+
action: _analytics.ACTION.MEDIA_LINK_TRANSFORMED,
|
|
65
|
+
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
66
|
+
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
// See: HOT-97965 https://product-fabric.atlassian.net/browse/ED-14400
|
|
71
|
+
// We declared in code mark spec that links and marks should not co-exist on
|
|
72
|
+
// text nodes. This util strips code marks from bad text nodes and preserves links.
|
|
73
|
+
// Otherwise, prosemirror will try to repair the invalid document by stripping links
|
|
74
|
+
// and preserving code marks during content changes.
|
|
75
|
+
var _transformTextLinkCod = (0, _transforms.transformTextLinkCodeMarks)(transformedAdf);
|
|
76
|
+
transformedAdf = _transformTextLinkCod.transformedAdf;
|
|
77
|
+
isTransformed = _transformTextLinkCod.isTransformed;
|
|
78
|
+
if (isTransformed && dispatchAnalyticsEvent) {
|
|
79
|
+
dispatchAnalyticsEvent({
|
|
80
|
+
action: _analytics.ACTION.TEXT_LINK_MARK_TRANSFORMED,
|
|
81
|
+
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
82
|
+
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
var discardedMarks = [];
|
|
86
|
+
var _transformDedupeMarks = (0, _transforms.transformDedupeMarks)(transformedAdf);
|
|
87
|
+
transformedAdf = _transformDedupeMarks.transformedAdf;
|
|
88
|
+
isTransformed = _transformDedupeMarks.isTransformed;
|
|
89
|
+
discardedMarks = _transformDedupeMarks.discardedMarks;
|
|
90
|
+
if (isTransformed && dispatchAnalyticsEvent) {
|
|
91
|
+
dispatchAnalyticsEvent({
|
|
92
|
+
action: _analytics.ACTION.DEDUPE_MARKS_TRANSFORMED_V2,
|
|
93
|
+
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
94
|
+
eventType: _analytics.EVENT_TYPE.OPERATIONAL,
|
|
95
|
+
attributes: {
|
|
96
|
+
/** UGC WARNING
|
|
97
|
+
*
|
|
98
|
+
* DO NOT include the `mark` attributes inside, we map here to only
|
|
99
|
+
* extract the mark type as that is the only non-UGC safe information
|
|
100
|
+
* that we can add to event-attributes
|
|
101
|
+
*
|
|
102
|
+
*/
|
|
103
|
+
discardedMarkTypes: discardedMarks.map(function (mark) {
|
|
104
|
+
return mark.type;
|
|
105
|
+
})
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
var _transformNodesMissin = (0, _transforms.transformNodesMissingContent)(transformedAdf);
|
|
110
|
+
transformedAdf = _transformNodesMissin.transformedAdf;
|
|
111
|
+
isTransformed = _transformNodesMissin.isTransformed;
|
|
112
|
+
if (isTransformed && dispatchAnalyticsEvent) {
|
|
113
|
+
dispatchAnalyticsEvent({
|
|
114
|
+
action: _analytics.ACTION.NODES_MISSING_CONTENT_TRANSFORMED,
|
|
115
|
+
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
116
|
+
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
var _transformIndentation = (0, _transforms.transformIndentationMarks)(transformedAdf);
|
|
120
|
+
transformedAdf = _transformIndentation.transformedAdf;
|
|
121
|
+
isTransformed = _transformIndentation.isTransformed;
|
|
122
|
+
if (isTransformed && dispatchAnalyticsEvent) {
|
|
123
|
+
dispatchAnalyticsEvent({
|
|
124
|
+
action: _analytics.ACTION.INDENTATION_MARKS_TRANSFORMED,
|
|
125
|
+
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
126
|
+
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
var _transformInvalidMedi = (0, _transforms.transformInvalidMediaContent)(transformedAdf);
|
|
130
|
+
transformedAdf = _transformInvalidMedi.transformedAdf;
|
|
131
|
+
isTransformed = _transformInvalidMedi.isTransformed;
|
|
132
|
+
if (isTransformed && dispatchAnalyticsEvent) {
|
|
133
|
+
dispatchAnalyticsEvent({
|
|
134
|
+
action: _analytics.ACTION.INVALID_MEDIA_CONTENT_TRANSFORMED,
|
|
135
|
+
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
136
|
+
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
var entity = (0, _validateUsingSpec.validateADFEntity)(schema, transformedAdf || node, dispatchAnalyticsEvent);
|
|
140
|
+
var newEntity = maySanitizePrivateContent(entity, providerFactory, sanitizePrivateContent);
|
|
141
|
+
var parsedDoc = _model.Node.fromJSON(schema, newEntity);
|
|
142
|
+
|
|
143
|
+
// throws an error if the document is invalid
|
|
144
|
+
try {
|
|
145
|
+
parsedDoc.check();
|
|
146
|
+
} catch (err) {
|
|
147
|
+
if (dispatchAnalyticsEvent) {
|
|
148
|
+
dispatchAnalyticsEvent({
|
|
149
|
+
action: _analytics.ACTION.INVALID_PROSEMIRROR_DOCUMENT,
|
|
150
|
+
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
151
|
+
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
throw err;
|
|
155
|
+
}
|
|
156
|
+
if (dispatchAnalyticsEvent) {
|
|
157
|
+
(0, _trackUnsupportedContent.findAndTrackUnsupportedContentNodes)(parsedDoc, schema, dispatchAnalyticsEvent);
|
|
158
|
+
}
|
|
159
|
+
return parsedDoc;
|
|
160
|
+
} catch (e) {
|
|
161
|
+
if (dispatchAnalyticsEvent) {
|
|
162
|
+
dispatchAnalyticsEvent({
|
|
163
|
+
action: _analytics.ACTION.DOCUMENT_PROCESSING_ERROR,
|
|
164
|
+
actionSubject: _analytics.ACTION_SUBJECT.EDITOR,
|
|
165
|
+
eventType: _analytics.EVENT_TYPE.OPERATIONAL
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
// eslint-disable-next-line no-console
|
|
170
|
+
console.error("Error processing document:\n".concat(e instanceof Error ? e.message : String(e), "\n\n"), JSON.stringify(node));
|
|
171
|
+
if (isProseMirrorSchemaCheckError(e)) {
|
|
172
|
+
throw e;
|
|
173
|
+
}
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
function isProseMirrorSchemaCheckError(error) {
|
|
178
|
+
return error instanceof RangeError && (!!error.message.match(/^Invalid collection of marks for node/) || !!error.message.match(/^Invalid content for node/));
|
|
179
|
+
}
|
|
180
|
+
var maySanitizePrivateContent = function maySanitizePrivateContent(entity, providerFactory, sanitizePrivateContent) {
|
|
181
|
+
if (sanitizePrivateContent && providerFactory) {
|
|
182
|
+
return (0, _privacyFilter.sanitizeNodeForPrivacy)(entity, providerFactory);
|
|
183
|
+
}
|
|
184
|
+
return entity;
|
|
185
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isFedRamp } from './environment';
|
|
2
2
|
const SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
|
|
3
3
|
const packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
|
|
4
|
-
const packageVersion = "88.
|
|
4
|
+
const packageVersion = "88.11.0";
|
|
5
5
|
const sanitiseSentryEvents = (data, _hint) => {
|
|
6
6
|
// Remove URL as it has UGC
|
|
7
7
|
// TODO: Sanitise the URL instead of just removing it
|
|
@@ -7,6 +7,9 @@ export const blockquoteSharedStyles = css({
|
|
|
7
7
|
'& blockquote': {
|
|
8
8
|
boxSizing: 'border-box',
|
|
9
9
|
color: 'inherit',
|
|
10
|
+
width: '100%',
|
|
11
|
+
clear: 'both',
|
|
12
|
+
display: 'inline-block',
|
|
10
13
|
paddingLeft: "var(--ds-space-200, 16px)",
|
|
11
14
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
|
|
12
15
|
borderLeft: `2px solid ${`var(--ds-border, ${akEditorBlockquoteBorderColor})`}`,
|
|
@@ -50,6 +53,9 @@ export const blockquoteSharedStylesNew = css({
|
|
|
50
53
|
'& blockquote': {
|
|
51
54
|
boxSizing: 'border-box',
|
|
52
55
|
color: 'inherit',
|
|
56
|
+
width: '100%',
|
|
57
|
+
clear: 'both',
|
|
58
|
+
display: 'inline-block',
|
|
53
59
|
paddingLeft: "var(--ds-space-250, 20px)",
|
|
54
60
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-imported-style-values -- Ignored via go/DSP-18766
|
|
55
61
|
borderLeft: `2px solid ${`var(--ds-border, ${akEditorBlockquoteBorderColor})`}`,
|
|
@@ -35,7 +35,7 @@ const mediaSingleSharedStyle = css({
|
|
|
35
35
|
marginBottom: "var(--ds-space-150, 12px)",
|
|
36
36
|
clear: 'both',
|
|
37
37
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors -- Ignored via go/DSP-18766
|
|
38
|
-
'&.image-wrap-left, &.image-wrap-right': {
|
|
38
|
+
'&.image-wrap-left[data-layout], &.image-wrap-right[data-layout]': {
|
|
39
39
|
clear: 'none',
|
|
40
40
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-selectors -- Ignored via go/DSP-18766
|
|
41
41
|
'&:first-child': {
|