@atlaskit/editor-common 116.7.0 → 116.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # @atlaskit/editor-common
2
2
 
3
+ ## 116.9.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`1a60a3ac641f9`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/1a60a3ac641f9) -
8
+ Add a track analytics event that fires when a synced block reference is pasted into a surface that
9
+ does not support synced blocks, allowing these insertion attempts to be measured directly. The
10
+ event is gated behind the `platform_editor_blocks_patch_2` feature gate.
11
+
12
+ ## 116.8.0
13
+
14
+ ### Minor Changes
15
+
16
+ - [`757e26860e9c7`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/757e26860e9c7) -
17
+ [ux] Added "Wrap code" footer toggle that soft-wraps long lines in the source view
18
+
19
+ ### Patch Changes
20
+
21
+ - Updated dependencies
22
+
3
23
  ## 116.7.0
4
24
 
5
25
  ### Minor Changes
@@ -88,6 +88,7 @@ var ACTION = exports.ACTION = /*#__PURE__*/function (ACTION) {
88
88
  ACTION["INPUT_PERF_SAMPLING"] = "inputPerfSampling";
89
89
  ACTION["INPUT_PERF_SAMPLING_AVG"] = "inputPerfSamplingAvg";
90
90
  ACTION["INSERTED"] = "inserted";
91
+ ACTION["INSERT_ATTEMPTED"] = "insertAttempted";
91
92
  ACTION["INVALID_DOCUMENT_ENCOUNTERED"] = "invalidDocumentEncountered";
92
93
  ACTION["INVOKED"] = "invoked";
93
94
  /** used in @atlassian/editor-referentiality */
@@ -607,6 +608,7 @@ var ACTION_SUBJECT_ID = exports.ACTION_SUBJECT_ID = /*#__PURE__*/function (ACTIO
607
608
  ACTION_SUBJECT_ID["SYNCED_BLOCK_SSR_ERROR"] = "syncedBlockSSRError";
608
609
  ACTION_SUBJECT_ID["SYNCED_BLOCK_SOURCE_INFO_ORPHANED"] = "syncedBlockSourceInfoOrphaned";
609
610
  ACTION_SUBJECT_ID["SYNCED_BLOCK_CACHE_DELETION_FORCED"] = "syncedBlockCacheDeletionForced";
611
+ ACTION_SUBJECT_ID["UNSUPPORTED_SURFACE"] = "unsupportedSurface";
610
612
  ACTION_SUBJECT_ID["TABLE_STICKY_HEADER"] = "tableStickyHeader";
611
613
  ACTION_SUBJECT_ID["SNIPPET"] = "snippet";
612
614
  return ACTION_SUBJECT_ID;
@@ -28,7 +28,7 @@ var NETWORK_FAILURE_REGEX = /^network failure/i;
28
28
  var RESIZE_OBSERVER_LOOP_REGEX = /ResizeObserver loop completed with undelivered notifications/;
29
29
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
30
30
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
31
- var packageVersion = "116.6.1";
31
+ var packageVersion = "116.8.0";
32
32
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
33
33
  // Remove URL as it has UGC
34
34
  // Ignored via go/ees007
@@ -24,7 +24,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
24
24
  * @jsx jsx
25
25
  */ // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
26
26
  var packageName = "@atlaskit/editor-common";
27
- var packageVersion = "116.6.1";
27
+ var packageVersion = "116.8.0";
28
28
  var halfFocusRing = 1;
29
29
  var dropOffset = '0, 8';
30
30
  var fadeIn = (0, _react2.keyframes)({
@@ -84,6 +84,7 @@ export let ACTION = /*#__PURE__*/function (ACTION) {
84
84
  ACTION["INPUT_PERF_SAMPLING"] = "inputPerfSampling";
85
85
  ACTION["INPUT_PERF_SAMPLING_AVG"] = "inputPerfSamplingAvg";
86
86
  ACTION["INSERTED"] = "inserted";
87
+ ACTION["INSERT_ATTEMPTED"] = "insertAttempted";
87
88
  ACTION["INVALID_DOCUMENT_ENCOUNTERED"] = "invalidDocumentEncountered";
88
89
  ACTION["INVOKED"] = "invoked";
89
90
  /** used in @atlassian/editor-referentiality */
@@ -615,6 +616,7 @@ export let ACTION_SUBJECT_ID = /*#__PURE__*/function (ACTION_SUBJECT_ID) {
615
616
  ACTION_SUBJECT_ID["SYNCED_BLOCK_SSR_ERROR"] = "syncedBlockSSRError";
616
617
  ACTION_SUBJECT_ID["SYNCED_BLOCK_SOURCE_INFO_ORPHANED"] = "syncedBlockSourceInfoOrphaned";
617
618
  ACTION_SUBJECT_ID["SYNCED_BLOCK_CACHE_DELETION_FORCED"] = "syncedBlockCacheDeletionForced";
619
+ ACTION_SUBJECT_ID["UNSUPPORTED_SURFACE"] = "unsupportedSurface";
618
620
  ACTION_SUBJECT_ID["TABLE_STICKY_HEADER"] = "tableStickyHeader";
619
621
  ACTION_SUBJECT_ID["SNIPPET"] = "snippet";
620
622
  return ACTION_SUBJECT_ID;
@@ -14,7 +14,7 @@ const NETWORK_FAILURE_REGEX = /^network failure/i;
14
14
  const RESIZE_OBSERVER_LOOP_REGEX = /ResizeObserver loop completed with undelivered notifications/;
15
15
  const SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
16
16
  const packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
17
- const packageVersion = "116.6.1";
17
+ const packageVersion = "116.8.0";
18
18
  const sanitiseSentryEvents = (data, _hint) => {
19
19
  // Remove URL as it has UGC
20
20
  // Ignored via go/ees007
@@ -14,7 +14,7 @@ import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
14
14
  import { fg } from '@atlaskit/platform-feature-flags';
15
15
  import Layer from '../Layer';
16
16
  const packageName = "@atlaskit/editor-common";
17
- const packageVersion = "116.6.1";
17
+ const packageVersion = "116.8.0";
18
18
  const halfFocusRing = 1;
19
19
  const dropOffset = '0, 8';
20
20
  const fadeIn = keyframes({
@@ -84,6 +84,7 @@ export var ACTION = /*#__PURE__*/function (ACTION) {
84
84
  ACTION["INPUT_PERF_SAMPLING"] = "inputPerfSampling";
85
85
  ACTION["INPUT_PERF_SAMPLING_AVG"] = "inputPerfSamplingAvg";
86
86
  ACTION["INSERTED"] = "inserted";
87
+ ACTION["INSERT_ATTEMPTED"] = "insertAttempted";
87
88
  ACTION["INVALID_DOCUMENT_ENCOUNTERED"] = "invalidDocumentEncountered";
88
89
  ACTION["INVOKED"] = "invoked";
89
90
  /** used in @atlassian/editor-referentiality */
@@ -615,6 +616,7 @@ export var ACTION_SUBJECT_ID = /*#__PURE__*/function (ACTION_SUBJECT_ID) {
615
616
  ACTION_SUBJECT_ID["SYNCED_BLOCK_SSR_ERROR"] = "syncedBlockSSRError";
616
617
  ACTION_SUBJECT_ID["SYNCED_BLOCK_SOURCE_INFO_ORPHANED"] = "syncedBlockSourceInfoOrphaned";
617
618
  ACTION_SUBJECT_ID["SYNCED_BLOCK_CACHE_DELETION_FORCED"] = "syncedBlockCacheDeletionForced";
619
+ ACTION_SUBJECT_ID["UNSUPPORTED_SURFACE"] = "unsupportedSurface";
618
620
  ACTION_SUBJECT_ID["TABLE_STICKY_HEADER"] = "tableStickyHeader";
619
621
  ACTION_SUBJECT_ID["SNIPPET"] = "snippet";
620
622
  return ACTION_SUBJECT_ID;
@@ -20,7 +20,7 @@ var NETWORK_FAILURE_REGEX = /^network failure/i;
20
20
  var RESIZE_OBSERVER_LOOP_REGEX = /ResizeObserver loop completed with undelivered notifications/;
21
21
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
22
22
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
23
- var packageVersion = "116.6.1";
23
+ var packageVersion = "116.8.0";
24
24
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
25
25
  // Remove URL as it has UGC
26
26
  // Ignored via go/ees007
@@ -21,7 +21,7 @@ import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
21
21
  import { fg } from '@atlaskit/platform-feature-flags';
22
22
  import Layer from '../Layer';
23
23
  var packageName = "@atlaskit/editor-common";
24
- var packageVersion = "116.6.1";
24
+ var packageVersion = "116.8.0";
25
25
  var halfFocusRing = 1;
26
26
  var dropOffset = '0, 8';
27
27
  var fadeIn = keyframes({
@@ -81,6 +81,7 @@ export declare enum ACTION {
81
81
  INPUT_PERF_SAMPLING = "inputPerfSampling",
82
82
  INPUT_PERF_SAMPLING_AVG = "inputPerfSamplingAvg",
83
83
  INSERTED = "inserted",
84
+ INSERT_ATTEMPTED = "insertAttempted",
84
85
  INVALID_DOCUMENT_ENCOUNTERED = "invalidDocumentEncountered",
85
86
  INVOKED = "invoked",
86
87
  /** used in @atlassian/editor-referentiality */
@@ -589,6 +590,7 @@ export declare enum ACTION_SUBJECT_ID {
589
590
  SYNCED_BLOCK_SSR_ERROR = "syncedBlockSSRError",
590
591
  SYNCED_BLOCK_SOURCE_INFO_ORPHANED = "syncedBlockSourceInfoOrphaned",
591
592
  SYNCED_BLOCK_CACHE_DELETION_FORCED = "syncedBlockCacheDeletionForced",
593
+ UNSUPPORTED_SURFACE = "unsupportedSurface",
592
594
  TABLE_STICKY_HEADER = "tableStickyHeader",
593
595
  SNIPPET = "snippet"
594
596
  }
@@ -1,7 +1,8 @@
1
1
  import type { ACTION, ACTION_SUBJECT, ACTION_SUBJECT_ID, INPUT_METHOD } from './enums';
2
2
  import type { ExperienceEventPayload } from './experience-events';
3
3
  import type { InsertSourceSyncedBlockPayload } from './insert-events';
4
- import type { OperationalAEP } from './utils';
4
+ import type { PasteSource } from './paste-events';
5
+ import type { OperationalAEP, TrackAEP } from './utils';
5
6
  type SyncedBlockErrorAttributes = {
6
7
  error: string;
7
8
  resourceId?: string;
@@ -86,6 +87,27 @@ type SyncedBlockCacheDeletionForcedAttributes = {
86
87
  * in-flight flag that needs investigation.
87
88
  */
88
89
  export type SyncedBlockCacheDeletionForcedAEP = OperationalAEP<ACTION.ERROR, ACTION_SUBJECT.SYNCED_BLOCK, ACTION_SUBJECT_ID.SYNCED_BLOCK_CACHE_DELETION_FORCED, SyncedBlockCacheDeletionForcedAttributes>;
89
- export type SyncBlockEventPayload = SyncedBlockSourceURLErrorAEP | SyncedBlockUpdateCacheErrorAEP | SyncedBlockUpdateErrorAEP | SyncedBlockUpdateSuccessAEP | SyncedBlockCreateErrorAEP | SyncedBlockCreateSuccessAEP | SyncedBlockDeleteErrorAEP | SyncedBlockDeleteSuccessAEP | SyncedBlockGetSourceInfoErrorAEP | SyncedBlockFetchErrorAEP | SyncedBlockFetchSuccessAEP | ReferenceSyncedBlockUpdateErrorAEP | SyncedBlockFetchReferencesErrorAEP | ExperienceEventPayload | ReferenceSyncedBlockCreateSuccessAEP | ReferenceSyncedBlockDeleteSuccessAEP | SyncedBlockEditSourceAEP | SyncedBlockCopyAEP | SyncedBlockCopyErrorAEP | SyncedLocationClickAEP | SyncedBlockSSRErrorAEP | SyncedBlockSourceInfoOrphanedAEP | SyncedBlockCacheDeletionForcedAEP | InsertSourceSyncedBlockPayload;
90
+ type SyncedBlockInsertAttemptedUnsupportedSurfaceAttributes = {
91
+ /**
92
+ * The paste mechanism the content arrived through (e.g. `fabric-editor`).
93
+ * Controlled, enumerated value — never user-generated content.
94
+ */
95
+ pasteSource?: PasteSource;
96
+ /**
97
+ * The product the copied synced block reference originated from, derived from
98
+ * the clipboard `data-resource-id` prefix. Controlled, enumerated value
99
+ * (`confluence-page` | `jira-work-item`) — never user-generated content.
100
+ */
101
+ sourceProduct?: 'confluence-page' | 'jira-work-item';
102
+ };
103
+ /**
104
+ * Track event fired when a synced block reference is pasted into a surface that
105
+ * does not support synced blocks (the destination schema dropped the node). This
106
+ * lets us measure insertion attempts into unsupported surfaces (e.g. Bitbucket)
107
+ * directly, rather than inferring them from "copied but never landed". See
108
+ * EDITOR-7749.
109
+ */
110
+ export type SyncedBlockInsertAttemptedUnsupportedSurfaceAEP = TrackAEP<ACTION.INSERT_ATTEMPTED, ACTION_SUBJECT.SYNCED_BLOCK, ACTION_SUBJECT_ID.UNSUPPORTED_SURFACE, SyncedBlockInsertAttemptedUnsupportedSurfaceAttributes, undefined>;
111
+ export type SyncBlockEventPayload = SyncedBlockSourceURLErrorAEP | SyncedBlockUpdateCacheErrorAEP | SyncedBlockUpdateErrorAEP | SyncedBlockUpdateSuccessAEP | SyncedBlockCreateErrorAEP | SyncedBlockCreateSuccessAEP | SyncedBlockDeleteErrorAEP | SyncedBlockDeleteSuccessAEP | SyncedBlockGetSourceInfoErrorAEP | SyncedBlockFetchErrorAEP | SyncedBlockFetchSuccessAEP | ReferenceSyncedBlockUpdateErrorAEP | SyncedBlockFetchReferencesErrorAEP | ExperienceEventPayload | ReferenceSyncedBlockCreateSuccessAEP | ReferenceSyncedBlockDeleteSuccessAEP | SyncedBlockEditSourceAEP | SyncedBlockCopyAEP | SyncedBlockCopyErrorAEP | SyncedLocationClickAEP | SyncedBlockSSRErrorAEP | SyncedBlockSourceInfoOrphanedAEP | SyncedBlockCacheDeletionForcedAEP | SyncedBlockInsertAttemptedUnsupportedSurfaceAEP | InsertSourceSyncedBlockPayload;
90
112
  export type RendererSyncBlockEventPayload = SyncedBlockGetSourceInfoErrorAEP | SyncedBlockFetchErrorAEP | SyncedBlockFetchSuccessAEP | ReferenceSyncedBlockUpdateErrorAEP | SyncedBlockSourceInfoOrphanedAEP | SyncedBlockCacheDeletionForcedAEP | ExperienceEventPayload;
91
113
  export {};
@@ -25,6 +25,7 @@ export type _MarkdownModePluginStateStub = {
25
25
  lineNumber: number;
26
26
  } | null;
27
27
  view: 'syntax' | 'split-view' | 'preview';
28
+ wrapSourceCode: boolean;
28
29
  };
29
30
  /**
30
31
  * Duck-typed mirror of `@atlassian/editor-plugin-markdown-mode`'s
@@ -60,6 +61,7 @@ export type _MarkdownModePluginStub = NextEditorPlugin<'markdownMode', {
60
61
  lineNumber: number;
61
62
  } | null) => void;
62
63
  setView: (view: 'syntax' | 'split-view' | 'preview') => void;
64
+ setWrapSourceCode: (wrapSourceCode: boolean) => void;
63
65
  toggleSourceBlockquote: () => boolean;
64
66
  toggleSourceBold: () => boolean;
65
67
  toggleSourceBulletList: () => boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-common",
3
- "version": "116.7.0",
3
+ "version": "116.9.0",
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/"
@@ -79,7 +79,7 @@
79
79
  "@atlaskit/task-decision": "^21.2.0",
80
80
  "@atlaskit/teams-app-config": "^2.0.0",
81
81
  "@atlaskit/textfield": "^9.0.0",
82
- "@atlaskit/tmp-editor-statsig": "^109.0.0",
82
+ "@atlaskit/tmp-editor-statsig": "^109.1.0",
83
83
  "@atlaskit/tokens": "^14.0.0",
84
84
  "@atlaskit/tooltip": "^23.0.0",
85
85
  "@atlaskit/width-detector": "^6.0.0",