Skip to content

Commit 49f585f

Browse files
authored
Deprecate MarkdownEditor, MarkdownViewer, InlineAutocomplete, and related code (#4027)
* Deprecate `MarkdownEditor` * Deprecate `MarkdownViewer` * Move `InlineAutocomplete` to `drafts` * Deprecate `InlineAutocomplete` * Deprecate related hooks * Add issue link * Create cold-pigs-shop.md * Update path in InlineAutocomplete docs * Update statuses in mdx files * Update e2e tests
1 parent cee8fe5 commit 49f585f

35 files changed

+79
-52
lines changed

.changeset/cold-pigs-shop.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@primer/react": minor
3+
---
4+
5+
Deprecate `MarkdownEditor`, `MarkdownViewer`, `InlineAutocomplete`, and related hooks

docs/content/drafts/InlineAutocomplete.mdx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
---
22
title: InlineAutocomplete
33
componentId: inline_autocomplete
4-
status: Draft
4+
status: Deprecated
55
description: Provides inline auto completion suggestions for an input or textarea.
6-
source: https://github.com/primer/react/tree/main/src/InlineAutocomplete
7-
storybook: '/react/storybook?path=/story/drafts-components-inlineautocomplete--default'
6+
source: https://github.com/primer/react/tree/main/src/drafts/InlineAutocomplete
7+
storybook: '/react/storybook?path=/story/deprecated-components-inlineautocomplete--default'
88
---
99

10-
import data from '../../../src/InlineAutocomplete/InlineAutocomplete.docs.json'
10+
import data from '../../../src/drafts/InlineAutocomplete/InlineAutocomplete.docs.json'
1111

1212
```js
1313
import {InlineAutocomplete} from '@primer/react/drafts'

docs/content/drafts/MarkdownEditor.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
componentId: markdown_editor
33
title: MarkdownEditor
4-
status: Draft
4+
status: Deprecated
55
description: Full-featured Markdown input.
66
storybook: '/react/storybook?path=/story/components-forms-markdowneditor--default'
77
---

docs/content/drafts/MarkdownViewer.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
componentId: markdown_viewer
33
title: MarkdownViewer
4-
status: Draft
4+
status: Deprecated
55
description: Displays rendered Markdown and facilitates interaction.
66
---
77

e2e/components/InlineAutocomplete.test.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ test.describe('InlineAutocomplete', () => {
88
test.describe(theme, () => {
99
test('default @vrt', async ({page}) => {
1010
await visit(page, {
11-
id: 'drafts-components-inlineautocomplete--default',
11+
id: 'deprecated-components-inlineautocomplete--default',
1212
globals: {
1313
colorScheme: theme,
1414
},
@@ -20,7 +20,7 @@ test.describe('InlineAutocomplete', () => {
2020

2121
test('axe @aat', async ({page}) => {
2222
await visit(page, {
23-
id: 'drafts-components-inlineautocomplete--default',
23+
id: 'deprecated-components-inlineautocomplete--default',
2424
globals: {
2525
colorScheme: theme,
2626
},
@@ -36,7 +36,7 @@ test.describe('InlineAutocomplete', () => {
3636
test.describe(theme, () => {
3737
test('default @vrt', async ({page}) => {
3838
await visit(page, {
39-
id: 'drafts-components-inlineautocomplete--playground',
39+
id: 'deprecated-components-inlineautocomplete--playground',
4040
globals: {
4141
colorScheme: theme,
4242
},
@@ -48,7 +48,7 @@ test.describe('InlineAutocomplete', () => {
4848

4949
test('axe @aat', async ({page}) => {
5050
await visit(page, {
51-
id: 'drafts-components-inlineautocomplete--playground',
51+
id: 'deprecated-components-inlineautocomplete--playground',
5252
globals: {
5353
colorScheme: theme,
5454
},
@@ -64,7 +64,7 @@ test.describe('InlineAutocomplete', () => {
6464
test.describe(theme, () => {
6565
test('default @vrt', async ({page}) => {
6666
await visit(page, {
67-
id: 'drafts-components-inlineautocomplete-features--custom-rendering',
67+
id: 'deprecated-components-inlineautocomplete-features--custom-rendering',
6868
globals: {
6969
colorScheme: theme,
7070
},
@@ -76,7 +76,7 @@ test.describe('InlineAutocomplete', () => {
7676

7777
test('axe @aat', async ({page}) => {
7878
await visit(page, {
79-
id: 'drafts-components-inlineautocomplete-features--custom-rendering',
79+
id: 'deprecated-components-inlineautocomplete-features--custom-rendering',
8080
globals: {
8181
colorScheme: theme,
8282
},
@@ -92,7 +92,7 @@ test.describe('InlineAutocomplete', () => {
9292
test.describe(theme, () => {
9393
test('default @vrt', async ({page}) => {
9494
await visit(page, {
95-
id: 'drafts-components-inlineautocomplete-features--single-line',
95+
id: 'deprecated-components-inlineautocomplete-features--single-line',
9696
globals: {
9797
colorScheme: theme,
9898
},
@@ -104,7 +104,7 @@ test.describe('InlineAutocomplete', () => {
104104

105105
test('axe @aat', async ({page}) => {
106106
await visit(page, {
107-
id: 'drafts-components-inlineautocomplete-features--single-line',
107+
id: 'deprecated-components-inlineautocomplete-features--single-line',
108108
globals: {
109109
colorScheme: theme,
110110
},

src/InlineAutocomplete/InlineAutocomplete.docs.json renamed to src/drafts/InlineAutocomplete/InlineAutocomplete.docs.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"id": "drafts_inline_autocomplete",
33
"name": "InlineAutocomplete",
4-
"status": "draft",
4+
"status": "deprecated",
55
"a11yReviewed": false,
66
"stories": [],
77
"props": [

src/InlineAutocomplete/InlineAutocomplete.features.stories.tsx renamed to src/drafts/InlineAutocomplete/InlineAutocomplete.features.stories.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import React, {useState} from 'react'
22
import {Meta} from '@storybook/react'
3-
import {ActionList, Avatar, ActionListItemProps, Textarea, TextInput, FormControl} from '..'
3+
import {ActionList, Avatar, ActionListItemProps, Textarea, TextInput, FormControl} from '../..'
44
import InlineAutocomplete, {ShowSuggestionsEvent, Suggestions} from '.'
55

66
export default {
7-
title: 'Drafts/Components/InlineAutocomplete/Features',
7+
title: 'Deprecated/Components/InlineAutocomplete/Features',
88
component: InlineAutocomplete,
99
} as Meta<typeof InlineAutocomplete>
1010

src/InlineAutocomplete/InlineAutocomplete.stories.tsx renamed to src/drafts/InlineAutocomplete/InlineAutocomplete.stories.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import React, {useState} from 'react'
22
import {Meta} from '@storybook/react'
33

4-
import {BaseStyles, Box, Textarea, ThemeProvider, FormControl} from '..'
4+
import {BaseStyles, Box, Textarea, ThemeProvider, FormControl} from '../..'
55
import InlineAutocomplete, {ShowSuggestionsEvent, Suggestions} from '.'
66

77
export default {
8-
title: 'Drafts/Components/InlineAutocomplete',
8+
title: 'Deprecated/Components/InlineAutocomplete',
99
component: InlineAutocomplete,
1010
decorators: [
1111
Story => {

src/InlineAutocomplete/InlineAutocomplete.test.tsx renamed to src/drafts/InlineAutocomplete/InlineAutocomplete.test.tsx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@ import React, {useState} from 'react'
22
import {fireEvent, render, within} from '@testing-library/react'
33
import userEvent from '@testing-library/user-event'
44
import InlineAutocomplete, {ShowSuggestionsEvent, Suggestions, Trigger} from '.'
5-
import FormControl from '../FormControl'
6-
import {ActionList} from '../ActionList'
7-
import Textarea from '../Textarea'
8-
import ThemeProvider from '../ThemeProvider'
9-
import useIsomorphicLayoutEffect from '../utils/useIsomorphicLayoutEffect'
5+
import FormControl from '../../FormControl'
6+
import {ActionList} from '../../ActionList'
7+
import Textarea from '../../Textarea'
8+
import ThemeProvider from '../../ThemeProvider'
9+
import useIsomorphicLayoutEffect from '../../utils/useIsomorphicLayoutEffect'
1010

1111
const label = 'Inline Autocomplete'
1212

src/InlineAutocomplete/InlineAutocomplete.tsx renamed to src/drafts/InlineAutocomplete/InlineAutocomplete.tsx

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import React, {cloneElement, useRef} from 'react'
2-
import Box from '../Box'
3-
import Portal from '../Portal'
4-
import {BetterSystemStyleObject} from '../sx'
5-
import {useSyntheticChange} from '../drafts/hooks/useSyntheticChange'
6-
import {getAbsoluteCharacterCoordinates} from '../drafts/utils/character-coordinates'
2+
import Box from '../../Box'
3+
import Portal from '../../Portal'
4+
import {BetterSystemStyleObject} from '../../sx'
5+
import {useSyntheticChange} from '../hooks/useSyntheticChange'
6+
import {getAbsoluteCharacterCoordinates} from '../utils/character-coordinates'
77

88
import {
99
SelectSuggestionsEvent,
@@ -16,9 +16,9 @@ import {
1616
} from './types'
1717
import {augmentHandler, calculateSuggestionsQuery, getSuggestionValue, requireChildrenToBeInput} from './utils'
1818

19-
import {useRefObjectAsForwardedRef} from '../hooks'
19+
import {useRefObjectAsForwardedRef} from '../../hooks'
2020
import AutocompleteSuggestions from './_AutocompleteSuggestions'
21-
import {useFormControlForwardedProps} from '../FormControl'
21+
import {useFormControlForwardedProps} from '../../FormControl'
2222

2323
export type InlineAutocompleteProps = {
2424
/** Register the triggers that can cause suggestions to appear. */
@@ -101,6 +101,7 @@ const noop = () => {
101101

102102
/**
103103
* Shows suggestions to complete the current word/phrase the user is actively typing.
104+
* @deprecated Will be removed in v37 (https://github.com/primer/react/issues/3604)
104105
*/
105106
const InlineAutocomplete = ({
106107
triggers,

0 commit comments

Comments
 (0)