@atlaskit/editor-common 69.1.2 → 69.2.2

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.
Files changed (113) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/dist/cjs/__tests_external__/cases/fundamentals/collection.js +21 -0
  3. package/dist/cjs/__tests_external__/cases/fundamentals/test-cases/editor-is-present.js +25 -0
  4. package/dist/cjs/__tests_external__/cases/fundamentals/test-cases/editor-typing.js +37 -0
  5. package/dist/cjs/__tests_external__/cases/media/test-cases/alt-text.js +45 -0
  6. package/dist/cjs/__tests_external__/cases/media/test-cases/caption.js +44 -0
  7. package/dist/cjs/__tests_external__/cases/media/test-cases/index.js +23 -0
  8. package/dist/cjs/__tests_external__/cases/media/test-cases/types.js +5 -0
  9. package/dist/cjs/__tests_external__/cases/media/test-cases/upload.js +38 -0
  10. package/dist/cjs/__tests_external__/cases/smart-links/index.js +37 -0
  11. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/block/delete.js +43 -0
  12. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/block/edit.js +77 -0
  13. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/block/index.js +23 -0
  14. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/block/insert.js +42 -0
  15. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/embed/delete.js +43 -0
  16. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/embed/edit.js +77 -0
  17. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/embed/index.js +23 -0
  18. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/embed/insert.js +42 -0
  19. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/delete.js +42 -0
  20. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/edit.js +75 -0
  21. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/index.js +25 -0
  22. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/insert.js +41 -0
  23. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/inline/unlink.js +44 -0
  24. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/types.js +5 -0
  25. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/url/index.js +19 -0
  26. package/dist/cjs/__tests_external__/cases/smart-links/test-cases/url/insert.js +39 -0
  27. package/dist/cjs/__tests_external__/cases/types.js +5 -0
  28. package/dist/cjs/__tests_external__/index.js +55 -0
  29. package/dist/cjs/__tests_external__/page-objects/Editor.js +71 -0
  30. package/dist/cjs/__tests_external__/page-objects/EditorMedia.js +98 -0
  31. package/dist/cjs/__tests_external__/page-objects/EditorSmartLink.js +232 -0
  32. package/dist/cjs/__tests_external__/page-objects/Renderer.js +59 -0
  33. package/dist/cjs/messages/codeBlockCopyButton.js +22 -0
  34. package/dist/cjs/messages/index.js +9 -1
  35. package/dist/cjs/styles/shared/block-marks.js +1 -1
  36. package/dist/cjs/styles/shared/code-block.js +4 -2
  37. package/dist/cjs/version.json +1 -1
  38. package/dist/es2019/__tests_external__/cases/fundamentals/collection.js +7 -0
  39. package/dist/es2019/__tests_external__/cases/fundamentals/test-cases/editor-is-present.js +12 -0
  40. package/dist/es2019/__tests_external__/cases/fundamentals/test-cases/editor-typing.js +25 -0
  41. package/dist/es2019/__tests_external__/cases/media/test-cases/alt-text.js +29 -0
  42. package/dist/es2019/__tests_external__/cases/media/test-cases/caption.js +28 -0
  43. package/dist/es2019/__tests_external__/cases/media/test-cases/index.js +8 -0
  44. package/dist/es2019/__tests_external__/cases/media/test-cases/types.js +1 -0
  45. package/dist/es2019/__tests_external__/cases/media/test-cases/upload.js +23 -0
  46. package/dist/es2019/__tests_external__/cases/smart-links/index.js +4 -0
  47. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/block/delete.js +29 -0
  48. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/block/edit.js +59 -0
  49. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/block/index.js +8 -0
  50. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/block/insert.js +28 -0
  51. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/embed/delete.js +29 -0
  52. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/embed/edit.js +59 -0
  53. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/embed/index.js +8 -0
  54. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/embed/insert.js +28 -0
  55. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/delete.js +28 -0
  56. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/edit.js +57 -0
  57. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/index.js +9 -0
  58. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/insert.js +27 -0
  59. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/inline/unlink.js +30 -0
  60. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/types.js +1 -0
  61. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/url/index.js +6 -0
  62. package/dist/es2019/__tests_external__/cases/smart-links/test-cases/url/insert.js +25 -0
  63. package/dist/es2019/__tests_external__/cases/types.js +1 -0
  64. package/dist/es2019/__tests_external__/index.js +4 -0
  65. package/dist/es2019/__tests_external__/page-objects/Editor.js +29 -0
  66. package/dist/es2019/__tests_external__/page-objects/EditorMedia.js +51 -0
  67. package/dist/es2019/__tests_external__/page-objects/EditorSmartLink.js +168 -0
  68. package/dist/es2019/__tests_external__/page-objects/Renderer.js +17 -0
  69. package/dist/es2019/messages/codeBlockCopyButton.js +13 -0
  70. package/dist/es2019/messages/index.js +2 -1
  71. package/dist/es2019/styles/shared/block-marks.js +4 -2
  72. package/dist/es2019/styles/shared/code-block.js +18 -0
  73. package/dist/es2019/version.json +1 -1
  74. package/dist/esm/__tests_external__/cases/fundamentals/collection.js +9 -0
  75. package/dist/esm/__tests_external__/cases/fundamentals/test-cases/editor-is-present.js +14 -0
  76. package/dist/esm/__tests_external__/cases/fundamentals/test-cases/editor-typing.js +25 -0
  77. package/dist/esm/__tests_external__/cases/media/test-cases/alt-text.js +32 -0
  78. package/dist/esm/__tests_external__/cases/media/test-cases/caption.js +31 -0
  79. package/dist/esm/__tests_external__/cases/media/test-cases/index.js +10 -0
  80. package/dist/esm/__tests_external__/cases/media/test-cases/types.js +1 -0
  81. package/dist/esm/__tests_external__/cases/media/test-cases/upload.js +26 -0
  82. package/dist/esm/__tests_external__/cases/smart-links/index.js +4 -0
  83. package/dist/esm/__tests_external__/cases/smart-links/test-cases/block/delete.js +30 -0
  84. package/dist/esm/__tests_external__/cases/smart-links/test-cases/block/edit.js +61 -0
  85. package/dist/esm/__tests_external__/cases/smart-links/test-cases/block/index.js +10 -0
  86. package/dist/esm/__tests_external__/cases/smart-links/test-cases/block/insert.js +29 -0
  87. package/dist/esm/__tests_external__/cases/smart-links/test-cases/embed/delete.js +30 -0
  88. package/dist/esm/__tests_external__/cases/smart-links/test-cases/embed/edit.js +61 -0
  89. package/dist/esm/__tests_external__/cases/smart-links/test-cases/embed/index.js +10 -0
  90. package/dist/esm/__tests_external__/cases/smart-links/test-cases/embed/insert.js +29 -0
  91. package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/delete.js +29 -0
  92. package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/edit.js +59 -0
  93. package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/index.js +11 -0
  94. package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/insert.js +28 -0
  95. package/dist/esm/__tests_external__/cases/smart-links/test-cases/inline/unlink.js +31 -0
  96. package/dist/esm/__tests_external__/cases/smart-links/test-cases/types.js +1 -0
  97. package/dist/esm/__tests_external__/cases/smart-links/test-cases/url/index.js +8 -0
  98. package/dist/esm/__tests_external__/cases/smart-links/test-cases/url/insert.js +26 -0
  99. package/dist/esm/__tests_external__/cases/types.js +1 -0
  100. package/dist/esm/__tests_external__/index.js +4 -0
  101. package/dist/esm/__tests_external__/page-objects/Editor.js +56 -0
  102. package/dist/esm/__tests_external__/page-objects/EditorMedia.js +83 -0
  103. package/dist/esm/__tests_external__/page-objects/EditorSmartLink.js +218 -0
  104. package/dist/esm/__tests_external__/page-objects/Renderer.js +45 -0
  105. package/dist/esm/messages/codeBlockCopyButton.js +13 -0
  106. package/dist/esm/messages/index.js +2 -1
  107. package/dist/esm/styles/shared/block-marks.js +1 -1
  108. package/dist/esm/styles/shared/code-block.js +4 -2
  109. package/dist/esm/version.json +1 -1
  110. package/dist/types/messages/codeBlockCopyButton.d.ts +12 -0
  111. package/dist/types/messages/index.d.ts +1 -0
  112. package/dist/types/styles/shared/code-block.d.ts +2 -0
  113. package/package.json +10 -11
@@ -6,6 +6,8 @@ import { borderRadius, fontSize, gridSize } from '@atlaskit/theme/constants';
6
6
  import { token } from '@atlaskit/tokens';
7
7
  export const CodeBlockSharedCssClassName = {
8
8
  CODEBLOCK_CONTAINER: 'code-block',
9
+ CODEBLOCK_START: 'code-block--start',
10
+ CODEBLOCK_END: 'code-block--end',
9
11
  CODEBLOCK_LINE_NUMBER_GUTTER: 'line-number-gutter',
10
12
  CODEBLOCK_CONTENT: 'code-content',
11
13
  DS_CODEBLOCK: '[data-ds--code--code-block]'
@@ -43,6 +45,22 @@ export const codeBlockSharedStyles = props => css`
43
45
  min-width: ${akEditorTableCellMinWidth}px;
44
46
  cursor: pointer;
45
47
 
48
+ .${CodeBlockSharedCssClassName.CODEBLOCK_START} {
49
+ position: absolute;
50
+ visibility: hidden;
51
+ height: 1.5rem;
52
+ top: 0px;
53
+ left: 0px;
54
+ }
55
+
56
+ .${CodeBlockSharedCssClassName.CODEBLOCK_END} {
57
+ position: absolute;
58
+ visibility: hidden;
59
+ height: 1.5rem;
60
+ bottom: 0px;
61
+ right: 0px;
62
+ }
63
+
46
64
  .${CodeBlockSharedCssClassName.CODEBLOCK_LINE_NUMBER_GUTTER} {
47
65
  flex-shrink: 0;
48
66
  text-align: right;
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@atlaskit/editor-common",
3
- "version": "69.1.2",
3
+ "version": "69.2.2",
4
4
  "sideEffects": false
5
5
  }
@@ -0,0 +1,9 @@
1
+ import { InProductTestCollection } from '@atlaskit/in-product-testing';
2
+ import { editorIsPresentTestCase } from './test-cases/editor-is-present';
3
+ import { editorTypingTestCase } from './test-cases/editor-typing';
4
+ export var fundamentalsTestCollection = function fundamentalsTestCollection(opts) {
5
+ return new InProductTestCollection({
6
+ title: '@atlaskit/editor-core -> Editor fundamentals happy path tests',
7
+ testCases: [editorIsPresentTestCase(opts), editorTypingTestCase(opts)]
8
+ });
9
+ };
@@ -0,0 +1,14 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { EditorPageObject } from '../../../page-objects/Editor';
3
+ export var editorIsPresentTestCase = function editorIsPresentTestCase(testOptions) {
4
+ return new InProductTestCase({
5
+ testOptions: testOptions,
6
+ title: 'content-area, title of Editor are visible',
7
+ id: 'editor-is-present',
8
+ assertions: function assertions(cy) {
9
+ var editor = new EditorPageObject(cy);
10
+ editor.getTitleArea().should('be.visible');
11
+ editor.getEditorArea().should('be.visible');
12
+ }
13
+ });
14
+ };
@@ -0,0 +1,25 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { EditorPageObject } from '../../../page-objects/Editor';
3
+ import { RendererPageObject } from '../../../page-objects/Renderer';
4
+ export var editorTypingTestCase = function editorTypingTestCase(opts) {
5
+ return new InProductTestCase({
6
+ title: 'typing in Editor works',
7
+ id: 'editor-typing',
8
+ assertions: function assertions(cy) {
9
+ var _opts$ui;
10
+
11
+ var editor = new EditorPageObject(cy);
12
+ editor.getEditorArea().type('abcdef');
13
+ editor.getEditorArea().contains('abcdef');
14
+
15
+ if (!opts || !((_opts$ui = opts.ui) !== null && _opts$ui !== void 0 && _opts$ui.publishButton)) {
16
+ return;
17
+ }
18
+
19
+ var publishButton = opts.ui.publishButton;
20
+ var renderer = new RendererPageObject(cy);
21
+ cy.get(publishButton).click();
22
+ renderer.getContent().contains('abcdef');
23
+ }
24
+ });
25
+ };
@@ -0,0 +1,32 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { MediaCardPageObject } from '@atlaskit/media-card/in-product';
3
+ import { EditorPageObject } from '../../../page-objects/Editor';
4
+ import { EditorMediaPageObject } from '../../../page-objects/EditorMedia';
5
+ export var addAltTextMediaTestCase = function addAltTextMediaTestCase(_ref) {
6
+ var ui = _ref.ui,
7
+ fixtures = _ref.fixtures;
8
+ return new InProductTestCase({
9
+ title: 'adding alt text to Media works',
10
+ id: 'media-alt-text',
11
+ precondition: function precondition() {
12
+ return fixtures.length > 0;
13
+ },
14
+ assertions: function assertions(cy) {
15
+ var editor = new EditorPageObject(cy);
16
+ var editorMedia = new EditorMediaPageObject(cy);
17
+ var mediaCard = new MediaCardPageObject(cy);
18
+ editor.upload(fixtures);
19
+ mediaCard.expectCardReady(fixtures.length);
20
+ var altText = 'Corne **loves** avocados';
21
+ editorMedia.addAltTextToImage(altText);
22
+ editorMedia.assertAltText(altText);
23
+
24
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
25
+ var renderer = editor.publish(ui);
26
+ renderer.expectContentReady();
27
+ renderer.expectMediaSingleRenders(fixtures.length);
28
+ mediaCard.assertAltText(altText);
29
+ }
30
+ }
31
+ });
32
+ };
@@ -0,0 +1,31 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { MediaCardPageObject } from '@atlaskit/media-card/in-product';
3
+ import { EditorPageObject } from '../../../page-objects/Editor';
4
+ import { EditorMediaPageObject } from '../../../page-objects/EditorMedia';
5
+ export var addCaptionMediaTestCase = function addCaptionMediaTestCase(_ref) {
6
+ var ui = _ref.ui,
7
+ fixtures = _ref.fixtures;
8
+ return new InProductTestCase({
9
+ title: 'adding caption to Media works',
10
+ id: 'media-caption',
11
+ precondition: function precondition() {
12
+ return fixtures.length > 0;
13
+ },
14
+ assertions: function assertions(cy) {
15
+ var editor = new EditorPageObject(cy);
16
+ var editorMedia = new EditorMediaPageObject(cy);
17
+ var mediaCard = new MediaCardPageObject(cy);
18
+ editor.upload(fixtures);
19
+ mediaCard.expectCardReady(fixtures.length);
20
+ var captionText = 'Corne loves avocados';
21
+ editorMedia.addCaptionToImage(captionText);
22
+
23
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
24
+ var renderer = editor.publish(ui);
25
+ renderer.expectContentReady();
26
+ renderer.expectMediaSingleRenders(fixtures.length);
27
+ editorMedia.assertCaptionText(captionText);
28
+ }
29
+ }
30
+ });
31
+ };
@@ -0,0 +1,10 @@
1
+ import { InProductTestCollection } from '@atlaskit/in-product-testing';
2
+ import { addAltTextMediaTestCase } from './alt-text';
3
+ import { addCaptionMediaTestCase } from './caption';
4
+ import { uploadMediaTestCase } from './upload';
5
+ export var mediaTestCollection = function mediaTestCollection(opts) {
6
+ return new InProductTestCollection({
7
+ title: '@atlaskit/editor-core -> Media, happy paths',
8
+ testCases: [uploadMediaTestCase(opts), addAltTextMediaTestCase(opts), addCaptionMediaTestCase(opts)]
9
+ });
10
+ };
@@ -0,0 +1,26 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { MediaCardPageObject } from '@atlaskit/media-card/in-product';
3
+ import { EditorPageObject } from '../../../page-objects/Editor';
4
+ export var uploadMediaTestCase = function uploadMediaTestCase(_ref) {
5
+ var ui = _ref.ui,
6
+ fixtures = _ref.fixtures;
7
+ return new InProductTestCase({
8
+ title: 'media upload and publish works',
9
+ id: 'media-file-upload',
10
+ precondition: function precondition() {
11
+ return fixtures.length > 0;
12
+ },
13
+ assertions: function assertions(cy) {
14
+ var editor = new EditorPageObject(cy);
15
+ var mediaCard = new MediaCardPageObject(cy);
16
+ editor.upload(fixtures);
17
+ mediaCard.expectCardReady(fixtures.length);
18
+
19
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
20
+ var renderer = editor.publish(ui);
21
+ renderer.expectContentReady();
22
+ renderer.expectMediaSingleRenders(fixtures.length);
23
+ }
24
+ }
25
+ });
26
+ };
@@ -0,0 +1,4 @@
1
+ export { inlineSmartLinksTestCollection } from './test-cases/inline';
2
+ export { blockSmartLinksTestCollection } from './test-cases/block';
3
+ export { embedSmartLinksTestCollection } from './test-cases/embed';
4
+ export { blueLinksTestCollection } from './test-cases/url';
@@ -0,0 +1,30 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { BlockCardPageObject, blockSmartLinkRendersTestCase } from '@atlaskit/smart-card/in-product';
3
+ import { EditorPageObject } from '../../../../page-objects/Editor';
4
+ import { EditorSmartLinkPageObject } from '../../../../page-objects/EditorSmartLink';
5
+ export var deleteBlockSmartLinkTestCase = function deleteBlockSmartLinkTestCase(_ref) {
6
+ var ui = _ref.ui,
7
+ url = _ref.url;
8
+ return new InProductTestCase({
9
+ title: 'able to delete a Block Smart Link using floating toolbar',
10
+ id: 'delete-block-smart-link',
11
+ assertions: function assertions(cy) {
12
+ var editor = new EditorPageObject(cy);
13
+ var editorWithSmartLinks = new EditorSmartLinkPageObject(cy, editor);
14
+ var blockCard = new BlockCardPageObject(cy);
15
+ editorWithSmartLinks.insertSmartLinkByTyping(url);
16
+ editorWithSmartLinks.switchAfterInsert('block');
17
+ blockSmartLinkRendersTestCase({
18
+ url: url
19
+ }).assertions(cy);
20
+ editorWithSmartLinks.deleteSmartLink('block');
21
+ blockCard.expectCardNotExists();
22
+
23
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
24
+ var renderer = editor.publish(ui);
25
+ renderer.expectContentReady();
26
+ blockCard.expectCardNotExists();
27
+ }
28
+ }
29
+ });
30
+ };
@@ -0,0 +1,61 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { BlockCardPageObject, blockSmartLinkRendersTestCase } from '@atlaskit/smart-card/in-product';
3
+ import { EditorPageObject } from '../../../../page-objects/Editor';
4
+ import { EditorSmartLinkPageObject } from '../../../../page-objects/EditorSmartLink';
5
+ export var editBlockSmartLinkTitleTestCase = function editBlockSmartLinkTitleTestCase(_ref) {
6
+ var ui = _ref.ui,
7
+ url = _ref.url;
8
+ return new InProductTestCase({
9
+ title: 'editing a Block Smart Link renders as Blue Link (title)',
10
+ id: 'block-smart-link-edit-title',
11
+ assertions: function assertions(cy) {
12
+ var editor = new EditorPageObject(cy);
13
+ var editorWithSmartLinks = new EditorSmartLinkPageObject(cy, editor);
14
+ var blockCard = new BlockCardPageObject(cy);
15
+ editorWithSmartLinks.insertSmartLinkByTyping(url);
16
+ editorWithSmartLinks.switchAfterInsert('block');
17
+ blockSmartLinkRendersTestCase({
18
+ url: url
19
+ }).assertions(cy);
20
+ editorWithSmartLinks.changeLinkLabel('Avocorne is watching you 🥑', 'block');
21
+ blockCard.assertHrefRendered(url);
22
+ blockCard.expectCardNotExists();
23
+
24
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
25
+ var renderer = editor.publish(ui);
26
+ renderer.expectContentReady();
27
+ blockCard.assertHrefRendered(url);
28
+ blockCard.expectCardNotExists();
29
+ }
30
+ }
31
+ });
32
+ };
33
+ export var editBlockSmartLinkUrlTestCase = function editBlockSmartLinkUrlTestCase(_ref2) {
34
+ var ui = _ref2.ui,
35
+ url = _ref2.url;
36
+ return new InProductTestCase({
37
+ title: 'editing a Block Smart Link renders as Blue Link (URL)',
38
+ id: 'block-smart-link-edit',
39
+ assertions: function assertions(cy) {
40
+ var editor = new EditorPageObject(cy);
41
+ var editorWithSmartLinks = new EditorSmartLinkPageObject(cy, editor);
42
+ var blockCard = new BlockCardPageObject(cy);
43
+ editorWithSmartLinks.insertSmartLinkByTyping(url);
44
+ editorWithSmartLinks.switchAfterInsert('block');
45
+ blockSmartLinkRendersTestCase({
46
+ url: url
47
+ }).assertions(cy);
48
+ var newUrl = 'https://avo.corne.com';
49
+ editorWithSmartLinks.changeLinkUrl(newUrl, 'block');
50
+ blockCard.expectCardNotExists();
51
+ blockCard.assertHrefRendered(newUrl);
52
+
53
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
54
+ var renderer = editor.publish(ui);
55
+ renderer.expectContentReady();
56
+ blockCard.assertHrefRendered(newUrl);
57
+ blockCard.expectCardNotExists();
58
+ }
59
+ }
60
+ });
61
+ };
@@ -0,0 +1,10 @@
1
+ import { InProductTestCollection } from '@atlaskit/in-product-testing';
2
+ import { deleteBlockSmartLinkTestCase } from './delete';
3
+ import { editBlockSmartLinkTitleTestCase, editBlockSmartLinkUrlTestCase } from './edit';
4
+ import { switchToBlockSmartLinkTestCase } from './insert';
5
+ export var blockSmartLinksTestCollection = function blockSmartLinksTestCollection(opts) {
6
+ return new InProductTestCollection({
7
+ title: '@atlaskit/editor-core -> Block Smart Links, happy paths',
8
+ testCases: [switchToBlockSmartLinkTestCase(opts), editBlockSmartLinkTitleTestCase(opts), editBlockSmartLinkUrlTestCase(opts), deleteBlockSmartLinkTestCase(opts)]
9
+ });
10
+ };
@@ -0,0 +1,29 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { blockSmartLinkRendersTestCase } from '@atlaskit/smart-card/in-product';
3
+ import { EditorPageObject } from '../../../../page-objects/Editor';
4
+ import { EditorSmartLinkPageObject } from '../../../../page-objects/EditorSmartLink';
5
+ export var switchToBlockSmartLinkTestCase = function switchToBlockSmartLinkTestCase(_ref) {
6
+ var ui = _ref.ui,
7
+ url = _ref.url;
8
+ return new InProductTestCase({
9
+ title: 'switching to a Block Smart Link works',
10
+ id: 'switch-to-block',
11
+ assertions: function assertions(cy) {
12
+ var editor = new EditorPageObject(cy);
13
+ var editorWithSmartLinks = new EditorSmartLinkPageObject(cy, editor);
14
+ editorWithSmartLinks.insertSmartLinkByTyping(url);
15
+ editorWithSmartLinks.switchAfterInsert('block');
16
+ blockSmartLinkRendersTestCase({
17
+ url: url
18
+ }).assertions(cy);
19
+
20
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
21
+ var renderer = editor.publish(ui);
22
+ renderer.expectContentReady();
23
+ blockSmartLinkRendersTestCase({
24
+ url: url
25
+ }).assertions(cy);
26
+ }
27
+ }
28
+ });
29
+ };
@@ -0,0 +1,30 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { EmbedCardPageObject, embedSmartLinkRendersTestCase } from '@atlaskit/smart-card/in-product';
3
+ import { EditorPageObject } from '../../../../page-objects/Editor';
4
+ import { EditorSmartLinkPageObject } from '../../../../page-objects/EditorSmartLink';
5
+ export var deleteEmbedSmartLinkTestCase = function deleteEmbedSmartLinkTestCase(_ref) {
6
+ var ui = _ref.ui,
7
+ url = _ref.url;
8
+ return new InProductTestCase({
9
+ title: 'able to delete an Embed Smart Link using floating toolbar',
10
+ id: 'delete-embed-smart-link',
11
+ assertions: function assertions(cy) {
12
+ var editor = new EditorPageObject(cy);
13
+ var editorWithSmartLinks = new EditorSmartLinkPageObject(cy, editor);
14
+ var embedCard = new EmbedCardPageObject(cy);
15
+ editorWithSmartLinks.insertSmartLinkByTyping(url);
16
+ editorWithSmartLinks.switchAfterInsert('embed');
17
+ embedSmartLinkRendersTestCase({
18
+ url: url
19
+ }).assertions(cy);
20
+ editorWithSmartLinks.deleteSmartLink('embed');
21
+ embedCard.expectCardNotExists();
22
+
23
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
24
+ var renderer = editor.publish(ui);
25
+ renderer.expectContentReady();
26
+ embedCard.expectCardNotExists();
27
+ }
28
+ }
29
+ });
30
+ };
@@ -0,0 +1,61 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { EmbedCardPageObject, embedSmartLinkRendersTestCase } from '@atlaskit/smart-card/in-product';
3
+ import { EditorPageObject } from '../../../../page-objects/Editor';
4
+ import { EditorSmartLinkPageObject } from '../../../../page-objects/EditorSmartLink';
5
+ export var editEmbedSmartLinkTitleTestCase = function editEmbedSmartLinkTitleTestCase(_ref) {
6
+ var ui = _ref.ui,
7
+ url = _ref.url;
8
+ return new InProductTestCase({
9
+ title: 'editing an Embed Smart Link renders as Blue Link (title)',
10
+ id: 'embed-smart-link-edit-title',
11
+ assertions: function assertions(cy) {
12
+ var editor = new EditorPageObject(cy);
13
+ var editorWithSmartLinks = new EditorSmartLinkPageObject(cy, editor);
14
+ var embedCard = new EmbedCardPageObject(cy);
15
+ editorWithSmartLinks.insertSmartLinkByTyping(url);
16
+ editorWithSmartLinks.switchAfterInsert('embed');
17
+ embedSmartLinkRendersTestCase({
18
+ url: url
19
+ }).assertions(cy);
20
+ editorWithSmartLinks.changeLinkLabel('Avocorne is watching you 🥑', 'embed');
21
+ embedCard.assertHrefRendered(url);
22
+ embedCard.expectCardNotExists();
23
+
24
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
25
+ var renderer = editor.publish(ui);
26
+ renderer.expectContentReady();
27
+ embedCard.assertHrefRendered(url);
28
+ embedCard.expectCardNotExists();
29
+ }
30
+ }
31
+ });
32
+ };
33
+ export var editEmbedSmartLinkUrlTestCase = function editEmbedSmartLinkUrlTestCase(_ref2) {
34
+ var ui = _ref2.ui,
35
+ url = _ref2.url;
36
+ return new InProductTestCase({
37
+ title: 'editing an Embed Smart Link renders as Blue Link (URL)',
38
+ id: 'embed-smart-link-edit',
39
+ assertions: function assertions(cy) {
40
+ var editor = new EditorPageObject(cy);
41
+ var editorWithSmartLinks = new EditorSmartLinkPageObject(cy, editor);
42
+ var embedCard = new EmbedCardPageObject(cy);
43
+ editorWithSmartLinks.insertSmartLinkByTyping(url);
44
+ editorWithSmartLinks.switchAfterInsert('embed');
45
+ embedSmartLinkRendersTestCase({
46
+ url: url
47
+ }).assertions(cy);
48
+ var newUrl = 'https://avo.corne.com';
49
+ editorWithSmartLinks.changeLinkUrl(newUrl, 'embed');
50
+ embedCard.expectCardNotExists();
51
+ embedCard.assertHrefRendered(newUrl);
52
+
53
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
54
+ var renderer = editor.publish(ui);
55
+ renderer.expectContentReady();
56
+ embedCard.assertHrefRendered(newUrl);
57
+ embedCard.expectCardNotExists();
58
+ }
59
+ }
60
+ });
61
+ };
@@ -0,0 +1,10 @@
1
+ import { InProductTestCollection } from '@atlaskit/in-product-testing';
2
+ import { deleteEmbedSmartLinkTestCase } from './delete';
3
+ import { editEmbedSmartLinkTitleTestCase, editEmbedSmartLinkUrlTestCase } from './edit';
4
+ import { switchToEmbedSmartLinkTestCase } from './insert';
5
+ export var embedSmartLinksTestCollection = function embedSmartLinksTestCollection(opts) {
6
+ return new InProductTestCollection({
7
+ title: '@atlaskit/editor-core -> Embed Smart Links, happy paths',
8
+ testCases: [switchToEmbedSmartLinkTestCase(opts), editEmbedSmartLinkTitleTestCase(opts), editEmbedSmartLinkUrlTestCase(opts), deleteEmbedSmartLinkTestCase(opts)]
9
+ });
10
+ };
@@ -0,0 +1,29 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { embedSmartLinkRendersTestCase } from '@atlaskit/smart-card/in-product';
3
+ import { EditorPageObject } from '../../../../page-objects/Editor';
4
+ import { EditorSmartLinkPageObject } from '../../../../page-objects/EditorSmartLink';
5
+ export var switchToEmbedSmartLinkTestCase = function switchToEmbedSmartLinkTestCase(_ref) {
6
+ var ui = _ref.ui,
7
+ url = _ref.url;
8
+ return new InProductTestCase({
9
+ title: 'switching to an Embed Smart Link works',
10
+ id: 'switch-to-embed',
11
+ assertions: function assertions(cy) {
12
+ var editor = new EditorPageObject(cy);
13
+ var editorWithSmartLinks = new EditorSmartLinkPageObject(cy, editor);
14
+ editorWithSmartLinks.insertSmartLinkByTyping(url);
15
+ editorWithSmartLinks.switchAfterInsert('embed');
16
+ embedSmartLinkRendersTestCase({
17
+ url: url
18
+ }).assertions(cy);
19
+
20
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
21
+ var renderer = editor.publish(ui);
22
+ renderer.expectContentReady();
23
+ embedSmartLinkRendersTestCase({
24
+ url: url
25
+ }).assertions(cy);
26
+ }
27
+ }
28
+ });
29
+ };
@@ -0,0 +1,29 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { InlineCardPageObject, inlineSmartLinkRendersTestCase } from '@atlaskit/smart-card/in-product';
3
+ import { EditorPageObject } from '../../../../page-objects/Editor';
4
+ import { EditorSmartLinkPageObject } from '../../../../page-objects/EditorSmartLink';
5
+ export var deleteInlineSmartLinkTestCase = function deleteInlineSmartLinkTestCase(_ref) {
6
+ var ui = _ref.ui,
7
+ url = _ref.url;
8
+ return new InProductTestCase({
9
+ title: 'able to delete an Inline Smart Link using floating toolbar',
10
+ id: 'delete-inline-smart-link',
11
+ assertions: function assertions(cy) {
12
+ var editor = new EditorPageObject(cy);
13
+ var editorWithSmartLinks = new EditorSmartLinkPageObject(cy, editor);
14
+ var inlineCard = new InlineCardPageObject(cy);
15
+ editorWithSmartLinks.insertSmartLinkByTyping(url);
16
+ inlineSmartLinkRendersTestCase({
17
+ url: url
18
+ }).assertions(cy);
19
+ editorWithSmartLinks.deleteSmartLink();
20
+ inlineCard.expectCardNotExists();
21
+
22
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
23
+ var renderer = editor.publish(ui);
24
+ renderer.expectContentReady();
25
+ inlineCard.expectCardNotExists();
26
+ }
27
+ }
28
+ });
29
+ };
@@ -0,0 +1,59 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { InlineCardPageObject, inlineSmartLinkRendersTestCase } from '@atlaskit/smart-card/in-product';
3
+ import { EditorPageObject } from '../../../../page-objects/Editor';
4
+ import { EditorSmartLinkPageObject } from '../../../../page-objects/EditorSmartLink';
5
+ export var editInlineSmartLinkTitleTestCase = function editInlineSmartLinkTitleTestCase(_ref) {
6
+ var ui = _ref.ui,
7
+ url = _ref.url;
8
+ return new InProductTestCase({
9
+ title: 'editing an Inline Smart Link renders as Blue Link (title)',
10
+ id: 'inline-smart-link-edit-title',
11
+ assertions: function assertions(cy) {
12
+ var editor = new EditorPageObject(cy);
13
+ var editorWithSmartLinks = new EditorSmartLinkPageObject(cy, editor);
14
+ var inlineCard = new InlineCardPageObject(cy);
15
+ editorWithSmartLinks.insertSmartLinkByTyping(url);
16
+ inlineSmartLinkRendersTestCase({
17
+ url: url
18
+ }).assertions(cy);
19
+ editorWithSmartLinks.changeLinkLabel('Avocorne is watching you 🥑');
20
+ inlineCard.assertHrefRendered(url);
21
+ inlineCard.expectCardNotExists();
22
+
23
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
24
+ var renderer = editor.publish(ui);
25
+ renderer.expectContentReady();
26
+ inlineCard.assertHrefRendered(url);
27
+ inlineCard.expectCardNotExists();
28
+ }
29
+ }
30
+ });
31
+ };
32
+ export var editInlineSmartLinkUrlTestCase = function editInlineSmartLinkUrlTestCase(_ref2) {
33
+ var ui = _ref2.ui,
34
+ url = _ref2.url;
35
+ return new InProductTestCase({
36
+ title: 'editing an Inline Smart Link renders as Blue Link (URL)',
37
+ id: 'inline-smart-link-edit',
38
+ assertions: function assertions(cy) {
39
+ var editor = new EditorPageObject(cy);
40
+ var editorWithSmartLinks = new EditorSmartLinkPageObject(cy, editor);
41
+ var inlineCard = new InlineCardPageObject(cy);
42
+ editorWithSmartLinks.insertSmartLinkByTyping(url);
43
+ inlineSmartLinkRendersTestCase({
44
+ url: url
45
+ }).assertions(cy);
46
+ var newUrl = 'https://avo.corne.com';
47
+ editorWithSmartLinks.changeLinkUrl(newUrl);
48
+ inlineCard.expectCardNotExists();
49
+ inlineCard.assertHrefRendered(newUrl);
50
+
51
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
52
+ var renderer = editor.publish(ui);
53
+ renderer.expectContentReady();
54
+ inlineCard.assertHrefRendered(newUrl);
55
+ inlineCard.expectCardNotExists();
56
+ }
57
+ }
58
+ });
59
+ };
@@ -0,0 +1,11 @@
1
+ import { InProductTestCollection } from '@atlaskit/in-product-testing';
2
+ import { deleteInlineSmartLinkTestCase } from './delete';
3
+ import { editInlineSmartLinkTitleTestCase, editInlineSmartLinkUrlTestCase } from './edit';
4
+ import { insertInlineSmartLinkTestCase } from './insert';
5
+ import { unlinkInlineSmartLinkTestCase } from './unlink';
6
+ export var inlineSmartLinksTestCollection = function inlineSmartLinksTestCollection(opts) {
7
+ return new InProductTestCollection({
8
+ title: '@atlaskit/editor-core -> Inline Smart Links, happy paths',
9
+ testCases: [insertInlineSmartLinkTestCase(opts), editInlineSmartLinkTitleTestCase(opts), editInlineSmartLinkUrlTestCase(opts), unlinkInlineSmartLinkTestCase(opts), deleteInlineSmartLinkTestCase(opts)]
10
+ });
11
+ };
@@ -0,0 +1,28 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { inlineSmartLinkRendersTestCase } from '@atlaskit/smart-card/in-product';
3
+ import { EditorPageObject } from '../../../../page-objects/Editor';
4
+ import { EditorSmartLinkPageObject } from '../../../../page-objects/EditorSmartLink';
5
+ export var insertInlineSmartLinkTestCase = function insertInlineSmartLinkTestCase(_ref) {
6
+ var ui = _ref.ui,
7
+ url = _ref.url;
8
+ return new InProductTestCase({
9
+ title: 'inserting an Inline Smart Link works',
10
+ id: 'inline-smart-link-insert',
11
+ assertions: function assertions(cy) {
12
+ var editor = new EditorPageObject(cy);
13
+ var editorWithSmartLinks = new EditorSmartLinkPageObject(cy, editor);
14
+ editorWithSmartLinks.insertSmartLinkByTyping(url);
15
+ inlineSmartLinkRendersTestCase({
16
+ url: url
17
+ }).assertions(cy);
18
+
19
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
20
+ var renderer = editor.publish(ui);
21
+ renderer.expectContentReady();
22
+ inlineSmartLinkRendersTestCase({
23
+ url: url
24
+ }).assertions(cy);
25
+ }
26
+ }
27
+ });
28
+ };
@@ -0,0 +1,31 @@
1
+ import { InProductTestCase } from '@atlaskit/in-product-testing';
2
+ import { InlineCardPageObject, inlineSmartLinkRendersTestCase } from '@atlaskit/smart-card/in-product';
3
+ import { EditorPageObject } from '../../../../page-objects/Editor';
4
+ import { EditorSmartLinkPageObject } from '../../../../page-objects/EditorSmartLink';
5
+ export var unlinkInlineSmartLinkTestCase = function unlinkInlineSmartLinkTestCase(_ref) {
6
+ var ui = _ref.ui,
7
+ url = _ref.url;
8
+ return new InProductTestCase({
9
+ title: 'unlinking an Inline Smart Link works',
10
+ id: 'inline-smart-link-unlink',
11
+ assertions: function assertions(cy) {
12
+ var editor = new EditorPageObject(cy);
13
+ var editorWithSmartLinks = new EditorSmartLinkPageObject(cy, editor);
14
+ var inlineCard = new InlineCardPageObject(cy);
15
+ editorWithSmartLinks.insertSmartLinkByTyping(url);
16
+ inlineSmartLinkRendersTestCase({
17
+ url: url
18
+ }).assertions(cy);
19
+ editorWithSmartLinks.unlink();
20
+ inlineCard.expectCardNotExists();
21
+ inlineCard.assertHrefNotRendered(url);
22
+
23
+ if (ui !== null && ui !== void 0 && ui.publishButton) {
24
+ var renderer = editor.publish(ui);
25
+ renderer.expectContentReady();
26
+ inlineCard.expectCardNotExists();
27
+ inlineCard.assertHrefNotRendered(url);
28
+ }
29
+ }
30
+ });
31
+ };
@@ -0,0 +1,8 @@
1
+ import { InProductTestCollection } from '@atlaskit/in-product-testing';
2
+ import { switchToUrlTestCase } from './insert';
3
+ export var blueLinksTestCollection = function blueLinksTestCollection(opts) {
4
+ return new InProductTestCollection({
5
+ title: '@atlaskit/editor-core -> Blue Links, happy paths',
6
+ testCases: [switchToUrlTestCase(opts)]
7
+ });
8
+ };