@atlaskit/editor-common 74.53.0 → 74.53.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @atlaskit/editor-common
2
2
 
3
+ ## 74.53.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [`eab48233583`](https://bitbucket.org/atlassian/atlassian-frontend/commits/eab48233583) - Calculate parent content width properly when inserting a nested media single node
8
+
3
9
  ## 74.53.0
4
10
 
5
11
  ### Minor Changes
@@ -7,7 +7,7 @@ exports.calcMinWidth = exports.calcMediaSinglePixelWidth = exports.calcMediaSing
7
7
  exports.calculateOffsetLeft = calculateOffsetLeft;
8
8
  exports.getMediaSingleInitialWidth = exports.getMaxWidthForNestedNodeNext = exports.getMaxWidthForNestedNode = void 0;
9
9
  exports.getMediaSinglePixelWidth = getMediaSinglePixelWidth;
10
- exports.roundToNearest = exports.getParentWidthForNestedMediaSingleNode = void 0;
10
+ exports.roundToNearest = exports.getParentWidthForNestedMediaSingleNodeForInsertion = exports.getParentWidthForNestedMediaSingleNode = void 0;
11
11
  var _editorSharedStyles = require("@atlaskit/editor-shared-styles");
12
12
  var _richMediaUtils = require("../utils/rich-media-utils");
13
13
  var _constants = require("./constants");
@@ -174,20 +174,28 @@ var getMaxWidthForNestedNode = function getMaxWidthForNestedNode(view, pos) {
174
174
  }
175
175
  return null;
176
176
  };
177
+ exports.getMaxWidthForNestedNode = getMaxWidthForNestedNode;
178
+ var calcParentPadding = function calcParentPadding(view, resolvedPos) {
179
+ // since table has constant padding, use hardcoded constant instead of query the dom
180
+ var tablePadding = 8;
181
+ var _view$state$schema$no = view.state.schema.nodes,
182
+ tableCell = _view$state$schema$no.tableCell,
183
+ tableHeader = _view$state$schema$no.tableHeader;
184
+ return [tableCell, tableHeader].includes(resolvedPos.parent.type) ? tablePadding * 2 : 0;
185
+ };
177
186
 
178
187
  /**
179
188
  * Get parent width for a nested media single node for new experience
180
189
  * @param view Editor view
181
190
  * @param pos node position
182
191
  */
183
- exports.getMaxWidthForNestedNode = getMaxWidthForNestedNode;
184
- var getMaxWidthForNestedNodeNext = function getMaxWidthForNestedNodeNext(view, pos) {
192
+ var getMaxWidthForNestedNodeNext = function getMaxWidthForNestedNodeNext(view, pos, forInsertion) {
185
193
  if (typeof pos !== 'number') {
186
194
  return null;
187
195
  }
188
196
  var $pos = view.state.doc.resolve(pos);
189
197
  if ($pos && $pos.parent.type.name !== 'doc') {
190
- return getParentWidthForNestedMediaSingleNode($pos, view);
198
+ return forInsertion ? getParentWidthForNestedMediaSingleNodeForInsertion($pos, view) : getParentWidthForNestedMediaSingleNode($pos, view);
191
199
  }
192
200
  return null;
193
201
  };
@@ -195,19 +203,22 @@ exports.getMaxWidthForNestedNodeNext = getMaxWidthForNestedNodeNext;
195
203
  var getParentWidthForNestedMediaSingleNode = function getParentWidthForNestedMediaSingleNode(resolvedPos, view) {
196
204
  var domNode = view.nodeDOM(resolvedPos.pos);
197
205
  if (resolvedPos.nodeAfter && _richMediaUtils.floatingLayouts.includes(resolvedPos.nodeAfter.attrs.layout) && domNode && domNode.parentElement) {
198
- var _view$state$schema$no = view.state.schema.nodes,
199
- tableCell = _view$state$schema$no.tableCell,
200
- tableHeader = _view$state$schema$no.tableHeader;
201
- if ([tableCell, tableHeader].includes(resolvedPos.parent.type)) {
202
- // since table has constant padding, use hardcoded constant instead of query the dom
203
- var tablePadding = 8;
204
- return domNode.parentElement.offsetWidth - tablePadding * 2;
205
- }
206
- return domNode.parentElement.offsetWidth;
206
+ var parentPadding = calcParentPadding(view, resolvedPos);
207
+ return domNode.parentElement.offsetWidth - parentPadding;
207
208
  }
208
209
  if (domNode instanceof HTMLElement) {
209
210
  return domNode.offsetWidth;
210
211
  }
211
212
  return null;
212
213
  };
213
- exports.getParentWidthForNestedMediaSingleNode = getParentWidthForNestedMediaSingleNode;
214
+ exports.getParentWidthForNestedMediaSingleNode = getParentWidthForNestedMediaSingleNode;
215
+ var getParentWidthForNestedMediaSingleNodeForInsertion = function getParentWidthForNestedMediaSingleNodeForInsertion(resolvedPos, view) {
216
+ var parentPos = resolvedPos.before(resolvedPos.depth);
217
+ var parentDomNode = view.nodeDOM(parentPos);
218
+ var parentPadding = calcParentPadding(view, resolvedPos);
219
+ if (parentDomNode instanceof HTMLElement) {
220
+ return parentDomNode.offsetWidth - parentPadding;
221
+ }
222
+ return null;
223
+ };
224
+ exports.getParentWidthForNestedMediaSingleNodeForInsertion = getParentWidthForNestedMediaSingleNodeForInsertion;
@@ -16,7 +16,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
16
16
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
17
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
18
18
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
19
- var packageVersion = "74.53.0";
19
+ var packageVersion = "74.53.1";
20
20
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
21
21
  // Remove URL as it has UGC
22
22
  // TODO: Sanitise the URL instead of just removing it
@@ -24,7 +24,7 @@ var _templateObject, _templateObject2, _templateObject3;
24
24
  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); }; }
25
25
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } /** @jsx jsx */
26
26
  var packageName = "@atlaskit/editor-common";
27
- var packageVersion = "74.53.0";
27
+ var packageVersion = "74.53.1";
28
28
  var halfFocusRing = 1;
29
29
  var dropOffset = '0, 8';
30
30
  var DropList = /*#__PURE__*/function (_Component) {
@@ -151,38 +151,48 @@ export const getMaxWidthForNestedNode = (view, pos) => {
151
151
  }
152
152
  return null;
153
153
  };
154
+ const calcParentPadding = (view, resolvedPos) => {
155
+ // since table has constant padding, use hardcoded constant instead of query the dom
156
+ const tablePadding = 8;
157
+ const {
158
+ tableCell,
159
+ tableHeader
160
+ } = view.state.schema.nodes;
161
+ return [tableCell, tableHeader].includes(resolvedPos.parent.type) ? tablePadding * 2 : 0;
162
+ };
154
163
 
155
164
  /**
156
165
  * Get parent width for a nested media single node for new experience
157
166
  * @param view Editor view
158
167
  * @param pos node position
159
168
  */
160
- export const getMaxWidthForNestedNodeNext = (view, pos) => {
169
+ export const getMaxWidthForNestedNodeNext = (view, pos, forInsertion) => {
161
170
  if (typeof pos !== 'number') {
162
171
  return null;
163
172
  }
164
173
  const $pos = view.state.doc.resolve(pos);
165
174
  if ($pos && $pos.parent.type.name !== 'doc') {
166
- return getParentWidthForNestedMediaSingleNode($pos, view);
175
+ return forInsertion ? getParentWidthForNestedMediaSingleNodeForInsertion($pos, view) : getParentWidthForNestedMediaSingleNode($pos, view);
167
176
  }
168
177
  return null;
169
178
  };
170
179
  export const getParentWidthForNestedMediaSingleNode = (resolvedPos, view) => {
171
180
  const domNode = view.nodeDOM(resolvedPos.pos);
172
181
  if (resolvedPos.nodeAfter && floatingLayouts.includes(resolvedPos.nodeAfter.attrs.layout) && domNode && domNode.parentElement) {
173
- const {
174
- tableCell,
175
- tableHeader
176
- } = view.state.schema.nodes;
177
- if ([tableCell, tableHeader].includes(resolvedPos.parent.type)) {
178
- // since table has constant padding, use hardcoded constant instead of query the dom
179
- const tablePadding = 8;
180
- return domNode.parentElement.offsetWidth - tablePadding * 2;
181
- }
182
- return domNode.parentElement.offsetWidth;
182
+ const parentPadding = calcParentPadding(view, resolvedPos);
183
+ return domNode.parentElement.offsetWidth - parentPadding;
183
184
  }
184
185
  if (domNode instanceof HTMLElement) {
185
186
  return domNode.offsetWidth;
186
187
  }
187
188
  return null;
189
+ };
190
+ export const getParentWidthForNestedMediaSingleNodeForInsertion = (resolvedPos, view) => {
191
+ const parentPos = resolvedPos.before(resolvedPos.depth);
192
+ const parentDomNode = view.nodeDOM(parentPos);
193
+ const parentPadding = calcParentPadding(view, resolvedPos);
194
+ if (parentDomNode instanceof HTMLElement) {
195
+ return parentDomNode.offsetWidth - parentPadding;
196
+ }
197
+ return null;
188
198
  };
@@ -1,6 +1,6 @@
1
1
  const SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
2
2
  const packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
3
- const packageVersion = "74.53.0";
3
+ const packageVersion = "74.53.1";
4
4
  const sanitiseSentryEvents = (data, _hint) => {
5
5
  // Remove URL as it has UGC
6
6
  // TODO: Sanitise the URL instead of just removing it
@@ -8,7 +8,7 @@ import { themed } from '@atlaskit/theme/components';
8
8
  import { borderRadius } from '@atlaskit/theme/constants';
9
9
  import Layer from '../Layer';
10
10
  const packageName = "@atlaskit/editor-common";
11
- const packageVersion = "74.53.0";
11
+ const packageVersion = "74.53.1";
12
12
  const halfFocusRing = 1;
13
13
  const dropOffset = '0, 8';
14
14
  class DropList extends Component {
@@ -160,37 +160,47 @@ export var getMaxWidthForNestedNode = function getMaxWidthForNestedNode(view, po
160
160
  }
161
161
  return null;
162
162
  };
163
+ var calcParentPadding = function calcParentPadding(view, resolvedPos) {
164
+ // since table has constant padding, use hardcoded constant instead of query the dom
165
+ var tablePadding = 8;
166
+ var _view$state$schema$no = view.state.schema.nodes,
167
+ tableCell = _view$state$schema$no.tableCell,
168
+ tableHeader = _view$state$schema$no.tableHeader;
169
+ return [tableCell, tableHeader].includes(resolvedPos.parent.type) ? tablePadding * 2 : 0;
170
+ };
163
171
 
164
172
  /**
165
173
  * Get parent width for a nested media single node for new experience
166
174
  * @param view Editor view
167
175
  * @param pos node position
168
176
  */
169
- export var getMaxWidthForNestedNodeNext = function getMaxWidthForNestedNodeNext(view, pos) {
177
+ export var getMaxWidthForNestedNodeNext = function getMaxWidthForNestedNodeNext(view, pos, forInsertion) {
170
178
  if (typeof pos !== 'number') {
171
179
  return null;
172
180
  }
173
181
  var $pos = view.state.doc.resolve(pos);
174
182
  if ($pos && $pos.parent.type.name !== 'doc') {
175
- return getParentWidthForNestedMediaSingleNode($pos, view);
183
+ return forInsertion ? getParentWidthForNestedMediaSingleNodeForInsertion($pos, view) : getParentWidthForNestedMediaSingleNode($pos, view);
176
184
  }
177
185
  return null;
178
186
  };
179
187
  export var getParentWidthForNestedMediaSingleNode = function getParentWidthForNestedMediaSingleNode(resolvedPos, view) {
180
188
  var domNode = view.nodeDOM(resolvedPos.pos);
181
189
  if (resolvedPos.nodeAfter && floatingLayouts.includes(resolvedPos.nodeAfter.attrs.layout) && domNode && domNode.parentElement) {
182
- var _view$state$schema$no = view.state.schema.nodes,
183
- tableCell = _view$state$schema$no.tableCell,
184
- tableHeader = _view$state$schema$no.tableHeader;
185
- if ([tableCell, tableHeader].includes(resolvedPos.parent.type)) {
186
- // since table has constant padding, use hardcoded constant instead of query the dom
187
- var tablePadding = 8;
188
- return domNode.parentElement.offsetWidth - tablePadding * 2;
189
- }
190
- return domNode.parentElement.offsetWidth;
190
+ var parentPadding = calcParentPadding(view, resolvedPos);
191
+ return domNode.parentElement.offsetWidth - parentPadding;
191
192
  }
192
193
  if (domNode instanceof HTMLElement) {
193
194
  return domNode.offsetWidth;
194
195
  }
195
196
  return null;
197
+ };
198
+ export var getParentWidthForNestedMediaSingleNodeForInsertion = function getParentWidthForNestedMediaSingleNodeForInsertion(resolvedPos, view) {
199
+ var parentPos = resolvedPos.before(resolvedPos.depth);
200
+ var parentDomNode = view.nodeDOM(parentPos);
201
+ var parentPadding = calcParentPadding(view, resolvedPos);
202
+ if (parentDomNode instanceof HTMLElement) {
203
+ return parentDomNode.offsetWidth - parentPadding;
204
+ }
205
+ return null;
196
206
  };
@@ -6,7 +6,7 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
6
6
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
7
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
8
8
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
9
- var packageVersion = "74.53.0";
9
+ var packageVersion = "74.53.1";
10
10
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
11
11
  // Remove URL as it has UGC
12
12
  // TODO: Sanitise the URL instead of just removing it
@@ -18,7 +18,7 @@ import { themed } from '@atlaskit/theme/components';
18
18
  import { borderRadius } from '@atlaskit/theme/constants';
19
19
  import Layer from '../Layer';
20
20
  var packageName = "@atlaskit/editor-common";
21
- var packageVersion = "74.53.0";
21
+ var packageVersion = "74.53.1";
22
22
  var halfFocusRing = 1;
23
23
  var dropOffset = '0, 8';
24
24
  var DropList = /*#__PURE__*/function (_Component) {
@@ -73,5 +73,6 @@ export declare const getMaxWidthForNestedNode: (view: EditorView, pos: number |
73
73
  * @param view Editor view
74
74
  * @param pos node position
75
75
  */
76
- export declare const getMaxWidthForNestedNodeNext: (view: EditorView, pos: number | undefined) => number | null;
76
+ export declare const getMaxWidthForNestedNodeNext: (view: EditorView, pos: number | undefined, forInsertion?: boolean) => number | null;
77
77
  export declare const getParentWidthForNestedMediaSingleNode: (resolvedPos: ResolvedPos, view: EditorView) => number | null;
78
+ export declare const getParentWidthForNestedMediaSingleNodeForInsertion: (resolvedPos: ResolvedPos, view: EditorView) => number | null;
@@ -73,5 +73,6 @@ export declare const getMaxWidthForNestedNode: (view: EditorView, pos: number |
73
73
  * @param view Editor view
74
74
  * @param pos node position
75
75
  */
76
- export declare const getMaxWidthForNestedNodeNext: (view: EditorView, pos: number | undefined) => number | null;
76
+ export declare const getMaxWidthForNestedNodeNext: (view: EditorView, pos: number | undefined, forInsertion?: boolean) => number | null;
77
77
  export declare const getParentWidthForNestedMediaSingleNode: (resolvedPos: ResolvedPos, view: EditorView) => number | null;
78
+ export declare const getParentWidthForNestedMediaSingleNodeForInsertion: (resolvedPos: ResolvedPos, view: EditorView) => number | null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-common",
3
- "version": "74.53.0",
3
+ "version": "74.53.1",
4
4
  "description": "A package that contains common classes and components for editor and renderer",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"