@atlaskit/dropdown-menu 12.26.1 → 12.26.3
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 +14 -0
- package/dist/types/checkbox/dropdown-item-checkbox-group.d.ts +2 -2
- package/dist/types/checkbox/dropdown-item-checkbox.d.ts +2 -2
- package/dist/types/dropdown-menu.d.ts +2 -2
- package/dist/types/internal/components/checkbox-icon.d.ts +2 -2
- package/dist/types/internal/components/group-title.d.ts +2 -2
- package/dist/types/internal/components/radio-icon.d.ts +2 -2
- package/dist/types/internal/context/selection-store.d.ts +1 -1
- package/dist/types/radio/dropdown-item-radio-group.d.ts +1 -1
- package/dist/types/radio/dropdown-item-radio.d.ts +2 -2
- package/dist/types-ts4.5/checkbox/dropdown-item-checkbox-group.d.ts +2 -2
- package/dist/types-ts4.5/checkbox/dropdown-item-checkbox.d.ts +2 -2
- package/dist/types-ts4.5/dropdown-menu.d.ts +2 -2
- package/dist/types-ts4.5/internal/components/checkbox-icon.d.ts +2 -2
- package/dist/types-ts4.5/internal/components/group-title.d.ts +2 -2
- package/dist/types-ts4.5/internal/components/radio-icon.d.ts +2 -2
- package/dist/types-ts4.5/internal/context/selection-store.d.ts +1 -1
- package/dist/types-ts4.5/radio/dropdown-item-radio-group.d.ts +1 -1
- package/dist/types-ts4.5/radio/dropdown-item-radio.d.ts +2 -2
- package/package.json +5 -6
- package/codemods/11.0.0-lite-mode.tsx +0 -51
- package/codemods/__tests__/11.0.0-lite-mode.test.tsx +0 -68
- package/codemods/__tests__/convert-position.test.tsx +0 -88
- package/codemods/__tests__/convert-triggerType.test.tsx +0 -183
- package/codemods/__tests__/deprecate-items.test.tsx +0 -108
- package/codemods/__tests__/deprecate-onItemActivated.test.tsx +0 -108
- package/codemods/__tests__/deprecate-onPositioned.test.tsx +0 -108
- package/codemods/__tests__/deprecate-shouldFitContainer.tsx +0 -108
- package/codemods/__tests__/rename-imports.tsx +0 -130
- package/codemods/__tests__/replace-position-to-placement.test.tsx +0 -84
- package/codemods/__tests__/replace-shouldAllowMultipleLine.test.tsx +0 -122
- package/codemods/__tests__/update-component-callsites.tsx +0 -64
- package/codemods/migrates/convert-trigger-type.tsx +0 -52
- package/codemods/migrates/deprecate-autoFocus.tsx +0 -10
- package/codemods/migrates/deprecate-boundariesElement.tsx +0 -9
- package/codemods/migrates/deprecate-isCompact.tsx +0 -10
- package/codemods/migrates/deprecate-isHidden.tsx +0 -10
- package/codemods/migrates/deprecate-isMenuFixed.tsx +0 -6
- package/codemods/migrates/deprecate-items.tsx +0 -6
- package/codemods/migrates/deprecate-onItemActivated.tsx +0 -9
- package/codemods/migrates/deprecate-onPositioned.tsx +0 -9
- package/codemods/migrates/deprecate-shouldFitContainer.tsx +0 -9
- package/codemods/migrates/rename-imports.tsx +0 -22
- package/codemods/migrates/replace-position-to-placement.tsx +0 -27
- package/codemods/migrates/replace-shouldAllowMultiline.tsx +0 -33
- package/codemods/migrates/update-component-callsites.tsx +0 -13
- package/codemods/utils/convert-position.tsx +0 -24
- package/codemods/utils/create-rename-import.tsx +0 -39
- package/codemods/utils/create-update-callsite.tsx +0 -31
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
2
|
-
jest.autoMockOff();
|
|
3
|
-
|
|
4
|
-
import { createTransformer } from '@atlaskit/codemod-utils';
|
|
5
|
-
|
|
6
|
-
import {
|
|
7
|
-
renameDropdownItemGroupCheckbox,
|
|
8
|
-
renameDropdownItemGroupRadio,
|
|
9
|
-
renameDropdownMenuStateless,
|
|
10
|
-
} from '../migrates/rename-imports';
|
|
11
|
-
|
|
12
|
-
const transformDropdownItemGroupRadio = createTransformer([renameDropdownItemGroupRadio]);
|
|
13
|
-
const transformDropdownItemGroupCheckbox = createTransformer([renameDropdownItemGroupCheckbox]);
|
|
14
|
-
const transformDropdownMenuStateless = createTransformer([renameDropdownMenuStateless]);
|
|
15
|
-
|
|
16
|
-
const defineInlineTest = require('jscodeshift/dist/testUtils').defineInlineTest;
|
|
17
|
-
|
|
18
|
-
describe('DropdownItemGroupRadio', () => {
|
|
19
|
-
defineInlineTest(
|
|
20
|
-
{ default: transformDropdownItemGroupRadio, parser: 'tsx' },
|
|
21
|
-
{},
|
|
22
|
-
`
|
|
23
|
-
import React from "react";
|
|
24
|
-
import DropdownMenu, {
|
|
25
|
-
DropdownItemGroupRadio,
|
|
26
|
-
DropdownItemRadio,
|
|
27
|
-
} from "@atlaskit/dropdown-menu";
|
|
28
|
-
`,
|
|
29
|
-
`
|
|
30
|
-
import React from "react";
|
|
31
|
-
import DropdownMenu, {
|
|
32
|
-
DropdownItemRadioGroup,
|
|
33
|
-
DropdownItemRadio,
|
|
34
|
-
} from "@atlaskit/dropdown-menu";
|
|
35
|
-
`,
|
|
36
|
-
'should convert DropdownItemGroupRadio to DropdownItemRadioGroup',
|
|
37
|
-
);
|
|
38
|
-
|
|
39
|
-
defineInlineTest(
|
|
40
|
-
{ default: transformDropdownItemGroupRadio, parser: 'tsx' },
|
|
41
|
-
{},
|
|
42
|
-
`
|
|
43
|
-
import React from "react";
|
|
44
|
-
import DropdownMenu, {
|
|
45
|
-
DropdownItemGroupRadio as MyComponent,
|
|
46
|
-
DropdownItemRadio,
|
|
47
|
-
} from "@atlaskit/dropdown-menu";
|
|
48
|
-
`,
|
|
49
|
-
`
|
|
50
|
-
import React from "react";
|
|
51
|
-
import DropdownMenu, {
|
|
52
|
-
DropdownItemRadioGroup as MyComponent,
|
|
53
|
-
DropdownItemRadio,
|
|
54
|
-
} from "@atlaskit/dropdown-menu";
|
|
55
|
-
`,
|
|
56
|
-
'should convert DropdownItemGroupRadio to DropdownItemRadioGroup and handle aliases',
|
|
57
|
-
);
|
|
58
|
-
});
|
|
59
|
-
|
|
60
|
-
describe('DropdownItemGroupCheckbox', () => {
|
|
61
|
-
defineInlineTest(
|
|
62
|
-
{ default: transformDropdownItemGroupCheckbox, parser: 'tsx' },
|
|
63
|
-
{},
|
|
64
|
-
`
|
|
65
|
-
import React from "react";
|
|
66
|
-
import DropdownMenu, {
|
|
67
|
-
DropdownItemGroupCheckbox, DropdownItemCheckbox,
|
|
68
|
-
} from "@atlaskit/dropdown-menu";
|
|
69
|
-
`,
|
|
70
|
-
`
|
|
71
|
-
import React from "react";
|
|
72
|
-
import DropdownMenu, {
|
|
73
|
-
DropdownItemCheckboxGroup, DropdownItemCheckbox,
|
|
74
|
-
} from "@atlaskit/dropdown-menu";
|
|
75
|
-
`,
|
|
76
|
-
'should convert DropdownItemGroupCheckbox to DropdownItemCheckboxGroup',
|
|
77
|
-
);
|
|
78
|
-
|
|
79
|
-
defineInlineTest(
|
|
80
|
-
{ default: transformDropdownItemGroupCheckbox, parser: 'tsx' },
|
|
81
|
-
{},
|
|
82
|
-
`
|
|
83
|
-
import React from "react";
|
|
84
|
-
import DropdownMenu, {
|
|
85
|
-
DropdownItemGroupCheckbox as MyComponent, DropdownItemCheckbox,
|
|
86
|
-
} from "@atlaskit/dropdown-menu";
|
|
87
|
-
`,
|
|
88
|
-
`
|
|
89
|
-
import React from "react";
|
|
90
|
-
import DropdownMenu, {
|
|
91
|
-
DropdownItemCheckboxGroup as MyComponent, DropdownItemCheckbox,
|
|
92
|
-
} from "@atlaskit/dropdown-menu";
|
|
93
|
-
`,
|
|
94
|
-
'should convert DropdownItemGroupCheckbox to DropdownItemCheckboxGroup and should handle aliases',
|
|
95
|
-
);
|
|
96
|
-
});
|
|
97
|
-
|
|
98
|
-
describe('DropdownMenuStateless', () => {
|
|
99
|
-
defineInlineTest(
|
|
100
|
-
{ default: transformDropdownMenuStateless, parser: 'tsx' },
|
|
101
|
-
{},
|
|
102
|
-
`
|
|
103
|
-
import {
|
|
104
|
-
DropdownItemGroupRadio,
|
|
105
|
-
DropdownItemRadio,
|
|
106
|
-
DropdownMenuStateless,
|
|
107
|
-
} from "@atlaskit/dropdown-menu"
|
|
108
|
-
`,
|
|
109
|
-
`
|
|
110
|
-
import DropdownMenuStateless, { DropdownItemGroupRadio, DropdownItemRadio } from "@atlaskit/dropdown-menu";
|
|
111
|
-
`,
|
|
112
|
-
'should promote DropdownMenuStateless to be a default DropdownMenuStateless import',
|
|
113
|
-
);
|
|
114
|
-
|
|
115
|
-
defineInlineTest(
|
|
116
|
-
{ default: transformDropdownMenuStateless, parser: 'tsx' },
|
|
117
|
-
{},
|
|
118
|
-
`
|
|
119
|
-
import {
|
|
120
|
-
DropdownItemGroupRadio,
|
|
121
|
-
DropdownItemRadio,
|
|
122
|
-
DropdownMenuStateless as MyComponent,
|
|
123
|
-
} from "@atlaskit/dropdown-menu"
|
|
124
|
-
`,
|
|
125
|
-
`
|
|
126
|
-
import MyComponent, { DropdownItemGroupRadio, DropdownItemRadio } from "@atlaskit/dropdown-menu";
|
|
127
|
-
`,
|
|
128
|
-
'should promote DropdownMenuStateless with an alias to be a default import ',
|
|
129
|
-
);
|
|
130
|
-
});
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
2
|
-
jest.autoMockOff();
|
|
3
|
-
|
|
4
|
-
import { createTransformer } from '@atlaskit/codemod-utils';
|
|
5
|
-
|
|
6
|
-
import replacePositionToPlacement from '../migrates/replace-position-to-placement';
|
|
7
|
-
|
|
8
|
-
const transformer = createTransformer([replacePositionToPlacement]);
|
|
9
|
-
|
|
10
|
-
const defineInlineTest = require('jscodeshift/dist/testUtils').defineInlineTest;
|
|
11
|
-
|
|
12
|
-
describe('replace position to placement', () => {
|
|
13
|
-
defineInlineTest(
|
|
14
|
-
{ default: transformer, parser: 'tsx' },
|
|
15
|
-
{},
|
|
16
|
-
`
|
|
17
|
-
import React from "react";
|
|
18
|
-
import DropdownMenu from "@atlaskit/dropdown-menu";
|
|
19
|
-
|
|
20
|
-
export default () => (
|
|
21
|
-
<DropdownMenu trigger="Click to open" triggerType="button">
|
|
22
|
-
</DropdownMenu>
|
|
23
|
-
);
|
|
24
|
-
`,
|
|
25
|
-
`
|
|
26
|
-
import React from "react";
|
|
27
|
-
import DropdownMenu from "@atlaskit/dropdown-menu";
|
|
28
|
-
|
|
29
|
-
export default () => (
|
|
30
|
-
<DropdownMenu trigger="Click to open" triggerType="button">
|
|
31
|
-
</DropdownMenu>
|
|
32
|
-
);
|
|
33
|
-
`,
|
|
34
|
-
'should not change anything when position is not used',
|
|
35
|
-
);
|
|
36
|
-
|
|
37
|
-
defineInlineTest(
|
|
38
|
-
{ default: transformer, parser: 'tsx' },
|
|
39
|
-
{},
|
|
40
|
-
`
|
|
41
|
-
import React from "react";
|
|
42
|
-
import DropdownMenu from "@material/dropdown-menu";
|
|
43
|
-
|
|
44
|
-
export default () => (
|
|
45
|
-
<DropdownMenu trigger="Click to open" triggerType="button" position="top left">
|
|
46
|
-
</DropdownMenu>
|
|
47
|
-
);
|
|
48
|
-
`,
|
|
49
|
-
`
|
|
50
|
-
import React from "react";
|
|
51
|
-
import DropdownMenu from "@material/dropdown-menu";
|
|
52
|
-
|
|
53
|
-
export default () => (
|
|
54
|
-
<DropdownMenu trigger="Click to open" triggerType="button" position="top left">
|
|
55
|
-
</DropdownMenu>
|
|
56
|
-
);
|
|
57
|
-
`,
|
|
58
|
-
'should not change position if the package is not from atlassian design system',
|
|
59
|
-
);
|
|
60
|
-
|
|
61
|
-
defineInlineTest(
|
|
62
|
-
{ default: transformer, parser: 'tsx' },
|
|
63
|
-
{},
|
|
64
|
-
`
|
|
65
|
-
import React from "react";
|
|
66
|
-
import DropdownMenu from "@atlaskit/dropdown-menu";
|
|
67
|
-
|
|
68
|
-
export default () => (
|
|
69
|
-
<DropdownMenu trigger="Click to open" triggerType="button" position="top left">
|
|
70
|
-
</DropdownMenu>
|
|
71
|
-
);
|
|
72
|
-
`,
|
|
73
|
-
`
|
|
74
|
-
import React from "react";
|
|
75
|
-
import DropdownMenu from "@atlaskit/dropdown-menu";
|
|
76
|
-
|
|
77
|
-
export default () => (
|
|
78
|
-
<DropdownMenu trigger="Click to open" triggerType="button" placement="top-start">
|
|
79
|
-
</DropdownMenu>
|
|
80
|
-
);
|
|
81
|
-
`,
|
|
82
|
-
'should change position to placement and its value to align with enums defined in popper',
|
|
83
|
-
);
|
|
84
|
-
});
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
2
|
-
jest.autoMockOff();
|
|
3
|
-
|
|
4
|
-
import { createTransformer } from '@atlaskit/codemod-utils';
|
|
5
|
-
|
|
6
|
-
import replaceShouldAllowMultiline from '../migrates/replace-shouldAllowMultiline';
|
|
7
|
-
|
|
8
|
-
const transformer = createTransformer([replaceShouldAllowMultiline]);
|
|
9
|
-
|
|
10
|
-
const defineInlineTest = require('jscodeshift/dist/testUtils').defineInlineTest;
|
|
11
|
-
|
|
12
|
-
describe('delete items prop', () => {
|
|
13
|
-
defineInlineTest(
|
|
14
|
-
{ default: transformer, parser: 'tsx' },
|
|
15
|
-
{},
|
|
16
|
-
`
|
|
17
|
-
import React from "react";
|
|
18
|
-
import DropdownMenu from "@atlaskit/dropdown-menu";
|
|
19
|
-
|
|
20
|
-
export default () => (
|
|
21
|
-
<DropdownMenu trigger="Click to open" triggerType="button">
|
|
22
|
-
</DropdownMenu>
|
|
23
|
-
);
|
|
24
|
-
`,
|
|
25
|
-
`
|
|
26
|
-
import React from "react";
|
|
27
|
-
import DropdownMenu from "@atlaskit/dropdown-menu";
|
|
28
|
-
|
|
29
|
-
export default () => (
|
|
30
|
-
<DropdownMenu trigger="Click to open" triggerType="button">
|
|
31
|
-
</DropdownMenu>
|
|
32
|
-
);
|
|
33
|
-
`,
|
|
34
|
-
'should not change anything when items is not used ',
|
|
35
|
-
);
|
|
36
|
-
|
|
37
|
-
defineInlineTest(
|
|
38
|
-
{ default: transformer, parser: 'tsx' },
|
|
39
|
-
{},
|
|
40
|
-
`
|
|
41
|
-
import React from "react";
|
|
42
|
-
import DropdownMenu from "@atlaskit/dropdown-menu";
|
|
43
|
-
|
|
44
|
-
export default () => (
|
|
45
|
-
<DropdownMenu trigger="Click to open" triggerType="button" shouldAllowMultiline>
|
|
46
|
-
</DropdownMenu>
|
|
47
|
-
);
|
|
48
|
-
`,
|
|
49
|
-
`
|
|
50
|
-
import React from "react";
|
|
51
|
-
import DropdownMenu from "@atlaskit/dropdown-menu";
|
|
52
|
-
|
|
53
|
-
export default () => (
|
|
54
|
-
<DropdownMenu
|
|
55
|
-
trigger="Click to open"
|
|
56
|
-
triggerType="button"
|
|
57
|
-
shouldTitleWrap
|
|
58
|
-
shouldDescriptionWrap>
|
|
59
|
-
</DropdownMenu>
|
|
60
|
-
);
|
|
61
|
-
`,
|
|
62
|
-
'should replace shouldAllowMultiline with shouldTitleWrap and shouldDescriptionWrap - default value',
|
|
63
|
-
);
|
|
64
|
-
|
|
65
|
-
defineInlineTest(
|
|
66
|
-
{ default: transformer, parser: 'tsx' },
|
|
67
|
-
{},
|
|
68
|
-
`
|
|
69
|
-
import React from "react";
|
|
70
|
-
import DropdownMenu from "@atlaskit/dropdown-menu";
|
|
71
|
-
|
|
72
|
-
export default () => (
|
|
73
|
-
<DropdownMenu trigger="Click to open" triggerType="button" shouldAllowMultiline={false}>
|
|
74
|
-
</DropdownMenu>
|
|
75
|
-
);
|
|
76
|
-
`,
|
|
77
|
-
`
|
|
78
|
-
import React from "react";
|
|
79
|
-
import DropdownMenu from "@atlaskit/dropdown-menu";
|
|
80
|
-
|
|
81
|
-
export default () => (
|
|
82
|
-
<DropdownMenu
|
|
83
|
-
trigger="Click to open"
|
|
84
|
-
triggerType="button"
|
|
85
|
-
shouldTitleWrap={false}
|
|
86
|
-
shouldDescriptionWrap={false}>
|
|
87
|
-
</DropdownMenu>
|
|
88
|
-
);
|
|
89
|
-
`,
|
|
90
|
-
'should replace shouldAllowMultiline with shouldTitleWrap and shouldDescriptionWrap - with value',
|
|
91
|
-
);
|
|
92
|
-
|
|
93
|
-
defineInlineTest(
|
|
94
|
-
{ default: transformer, parser: 'tsx' },
|
|
95
|
-
{},
|
|
96
|
-
`
|
|
97
|
-
import React from "react";
|
|
98
|
-
import DropdownMenu from "@atlaskit/dropdown-menu";
|
|
99
|
-
|
|
100
|
-
const flag = false;
|
|
101
|
-
export default () => (
|
|
102
|
-
<DropdownMenu trigger="Click to open" triggerType="button" shouldAllowMultiline={flag}>
|
|
103
|
-
</DropdownMenu>
|
|
104
|
-
);
|
|
105
|
-
`,
|
|
106
|
-
`
|
|
107
|
-
import React from "react";
|
|
108
|
-
import DropdownMenu from "@atlaskit/dropdown-menu";
|
|
109
|
-
|
|
110
|
-
const flag = false;
|
|
111
|
-
export default () => (
|
|
112
|
-
<DropdownMenu
|
|
113
|
-
trigger="Click to open"
|
|
114
|
-
triggerType="button"
|
|
115
|
-
shouldTitleWrap={flag}
|
|
116
|
-
shouldDescriptionWrap={flag}>
|
|
117
|
-
</DropdownMenu>
|
|
118
|
-
);
|
|
119
|
-
`,
|
|
120
|
-
'should replace shouldAllowMultiline with shouldTitleWrap and shouldDescriptionWrap - variable',
|
|
121
|
-
);
|
|
122
|
-
});
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
2
|
-
jest.autoMockOff();
|
|
3
|
-
|
|
4
|
-
import { createTransformer } from '@atlaskit/codemod-utils';
|
|
5
|
-
|
|
6
|
-
import {
|
|
7
|
-
updateDropdownItemGroupCheckboxCallsite,
|
|
8
|
-
updateDropdownItemGroupRadioCallsite,
|
|
9
|
-
} from '../migrates/update-component-callsites';
|
|
10
|
-
|
|
11
|
-
const transformDropdownItemGroupRadio = createTransformer([updateDropdownItemGroupRadioCallsite]);
|
|
12
|
-
const transformDropdownItemGroupCheckbox = createTransformer([
|
|
13
|
-
updateDropdownItemGroupCheckboxCallsite,
|
|
14
|
-
]);
|
|
15
|
-
|
|
16
|
-
const defineInlineTest = require('jscodeshift/dist/testUtils').defineInlineTest;
|
|
17
|
-
|
|
18
|
-
describe('DropdownItemGroupRadio', () => {
|
|
19
|
-
defineInlineTest(
|
|
20
|
-
{ default: transformDropdownItemGroupRadio, parser: 'tsx' },
|
|
21
|
-
{},
|
|
22
|
-
`
|
|
23
|
-
<DropdownItemGroupRadio id="actions">
|
|
24
|
-
<DropdownItemRadio id="edit" defaultSelected>
|
|
25
|
-
Edit
|
|
26
|
-
</DropdownItemRadio>
|
|
27
|
-
<DropdownItemRadio id="move">Move</DropdownItemRadio>
|
|
28
|
-
</DropdownItemGroupRadio>
|
|
29
|
-
`,
|
|
30
|
-
`
|
|
31
|
-
<DropdownItemRadioGroup id="actions">
|
|
32
|
-
<DropdownItemRadio id="edit" defaultSelected>
|
|
33
|
-
Edit
|
|
34
|
-
</DropdownItemRadio>
|
|
35
|
-
<DropdownItemRadio id="move">Move</DropdownItemRadio>
|
|
36
|
-
</DropdownItemRadioGroup>
|
|
37
|
-
`,
|
|
38
|
-
'should transform DropdownItemGroupRadio to DropdownItemRadioGroup',
|
|
39
|
-
);
|
|
40
|
-
});
|
|
41
|
-
|
|
42
|
-
describe('DropdownItemGroupCheckbox', () => {
|
|
43
|
-
defineInlineTest(
|
|
44
|
-
{ default: transformDropdownItemGroupCheckbox, parser: 'tsx' },
|
|
45
|
-
{},
|
|
46
|
-
`
|
|
47
|
-
<DropdownItemGroupCheckbox id="actions">
|
|
48
|
-
<DropdownItemCheckbox id="edit" defaultSelected>
|
|
49
|
-
Edit
|
|
50
|
-
</DropdownItemCheckbox>
|
|
51
|
-
<DropdownItemCheckbox id="move">Move</DropdownItemCheckbox>
|
|
52
|
-
</DropdownItemGroupCheckbox>
|
|
53
|
-
`,
|
|
54
|
-
`
|
|
55
|
-
<DropdownItemCheckboxGroup id="actions">
|
|
56
|
-
<DropdownItemCheckbox id="edit" defaultSelected>
|
|
57
|
-
Edit
|
|
58
|
-
</DropdownItemCheckbox>
|
|
59
|
-
<DropdownItemCheckbox id="move">Move</DropdownItemCheckbox>
|
|
60
|
-
</DropdownItemCheckboxGroup>
|
|
61
|
-
`,
|
|
62
|
-
'should transform DropdownItemGroupCheckbox to DropdownItemCheckboxGroup',
|
|
63
|
-
);
|
|
64
|
-
});
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import type { ASTPath, default as core, JSXElement } from 'jscodeshift';
|
|
2
|
-
import { type Collection } from 'jscodeshift/src/Collection';
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
addCommentBefore,
|
|
6
|
-
getDefaultSpecifier,
|
|
7
|
-
getJSXAttributesByName,
|
|
8
|
-
} from '@atlaskit/codemod-utils';
|
|
9
|
-
|
|
10
|
-
const comment = `
|
|
11
|
-
The usage of the 'trigger', 'triggerType' and 'triggerButtonProps' prop in this component could not be transformed and requires manual intervention.
|
|
12
|
-
Since version 11.0.0, we have simplified the API and now only use the 'trigger' prop.
|
|
13
|
-
Please refer to https://hello.atlassian.net/wiki/spaces/DST/pages/1330997516/Dropdown+menu+upgrade+guide for more details.
|
|
14
|
-
And feel free to reach out to us on our support channel if you have more queries – #help-design-system.
|
|
15
|
-
`;
|
|
16
|
-
|
|
17
|
-
const convertTriggerType = (j: core.JSCodeshift, source: Collection<Node>) => {
|
|
18
|
-
const defaultSpecifier = getDefaultSpecifier(j, source, '@atlaskit/dropdown-menu');
|
|
19
|
-
|
|
20
|
-
if (!defaultSpecifier) {
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
const elements = source.findJSXElements(defaultSpecifier);
|
|
25
|
-
|
|
26
|
-
elements.forEach((element: ASTPath<JSXElement>) => {
|
|
27
|
-
const triggerTypeProp = getJSXAttributesByName(j, element, 'triggerType');
|
|
28
|
-
const triggerProp = getJSXAttributesByName(j, element, 'trigger');
|
|
29
|
-
|
|
30
|
-
// just skip when trigger is not defined
|
|
31
|
-
if (triggerProp.length === 0) {
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
const triggerButtonPropsProp = getJSXAttributesByName(j, element, 'triggerButtonProps');
|
|
36
|
-
const type = triggerProp.get().value.value.type;
|
|
37
|
-
|
|
38
|
-
// we're safe to do the conversion for string only trigger
|
|
39
|
-
if (type === 'StringLiteral' && triggerButtonPropsProp.length === 0) {
|
|
40
|
-
triggerTypeProp.forEach((attribute: any) => {
|
|
41
|
-
j(attribute).remove();
|
|
42
|
-
});
|
|
43
|
-
} else {
|
|
44
|
-
// for anything else we left a inline message
|
|
45
|
-
// Overriding the comment prefix to be 'TODO: (from codemod)'
|
|
46
|
-
// to avoid trailing spaces.
|
|
47
|
-
addCommentBefore(j, triggerProp, comment, 'block', 'TODO: (from codemod)');
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
export default convertTriggerType;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
2
|
-
import { createRemoveFuncFor } from '@atlaskit/codemod-utils';
|
|
3
|
-
|
|
4
|
-
const deprecateAutoFocus = () => [
|
|
5
|
-
createRemoveFuncFor('@atlaskit/dropdown-menu', 'DropdownItem', 'autoFocus'),
|
|
6
|
-
createRemoveFuncFor('@atlaskit/dropdown-menu', 'DropdownItemCheckbox', 'autoFocus'),
|
|
7
|
-
createRemoveFuncFor('@atlaskit/dropdown-menu', 'DropdownItemRadio', 'autoFocus'),
|
|
8
|
-
];
|
|
9
|
-
|
|
10
|
-
export default deprecateAutoFocus;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
2
|
-
import { createRemoveFuncAddCommentFor } from '@atlaskit/codemod-utils';
|
|
3
|
-
|
|
4
|
-
const deprecateItems = createRemoveFuncAddCommentFor(
|
|
5
|
-
'@atlaskit/dropdown-menu',
|
|
6
|
-
'boundariesElement',
|
|
7
|
-
);
|
|
8
|
-
|
|
9
|
-
export default deprecateItems;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
2
|
-
import { createRemoveFuncFor } from '@atlaskit/codemod-utils';
|
|
3
|
-
|
|
4
|
-
const deprecateIsCompact = () => [
|
|
5
|
-
createRemoveFuncFor('@atlaskit/dropdown-menu', 'DropdownItem', 'isCompact'),
|
|
6
|
-
createRemoveFuncFor('@atlaskit/dropdown-menu', 'DropdownItemCheckbox', 'isCompact'),
|
|
7
|
-
createRemoveFuncFor('@atlaskit/dropdown-menu', 'DropdownItemRadio', 'isCompact'),
|
|
8
|
-
];
|
|
9
|
-
|
|
10
|
-
export default deprecateIsCompact;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
2
|
-
import { createRemoveFuncFor } from '@atlaskit/codemod-utils';
|
|
3
|
-
|
|
4
|
-
const deprecateIsHidden = () => [
|
|
5
|
-
createRemoveFuncFor('@atlaskit/dropdown-menu', 'DropdownItem', 'isHidden'),
|
|
6
|
-
createRemoveFuncFor('@atlaskit/dropdown-menu', 'DropdownItemCheckbox', 'isHidden'),
|
|
7
|
-
createRemoveFuncFor('@atlaskit/dropdown-menu', 'DropdownItemRadio', 'isHidden'),
|
|
8
|
-
];
|
|
9
|
-
|
|
10
|
-
export default deprecateIsHidden;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
2
|
-
import { createRemoveFuncAddCommentFor } from '@atlaskit/codemod-utils';
|
|
3
|
-
|
|
4
|
-
const deprecateItems = createRemoveFuncAddCommentFor('@atlaskit/dropdown-menu', 'isMenuFixed');
|
|
5
|
-
|
|
6
|
-
export default deprecateItems;
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
2
|
-
import { createRemoveFuncAddCommentFor } from '@atlaskit/codemod-utils';
|
|
3
|
-
|
|
4
|
-
const deprecateItems = createRemoveFuncAddCommentFor('@atlaskit/dropdown-menu', 'items');
|
|
5
|
-
|
|
6
|
-
export default deprecateItems;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
2
|
-
import { createRemoveFuncAddCommentFor } from '@atlaskit/codemod-utils';
|
|
3
|
-
|
|
4
|
-
const deprecateOnItemActivated = createRemoveFuncAddCommentFor(
|
|
5
|
-
'@atlaskit/dropdown-menu',
|
|
6
|
-
'onItemActivated',
|
|
7
|
-
);
|
|
8
|
-
|
|
9
|
-
export default deprecateOnItemActivated;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
2
|
-
import { createRemoveFuncAddCommentFor } from '@atlaskit/codemod-utils';
|
|
3
|
-
|
|
4
|
-
const deprecateOnPositioned = createRemoveFuncAddCommentFor(
|
|
5
|
-
'@atlaskit/dropdown-menu',
|
|
6
|
-
'onPositioned',
|
|
7
|
-
);
|
|
8
|
-
|
|
9
|
-
export default deprecateOnPositioned;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
2
|
-
import { createRemoveFuncAddCommentFor } from '@atlaskit/codemod-utils';
|
|
3
|
-
|
|
4
|
-
const deprecateShouldFitContainer = createRemoveFuncAddCommentFor(
|
|
5
|
-
'@atlaskit/dropdown-menu',
|
|
6
|
-
'shouldFitContainer',
|
|
7
|
-
);
|
|
8
|
-
|
|
9
|
-
export default deprecateShouldFitContainer;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { createRenameImportFor } from '../utils/create-rename-import';
|
|
2
|
-
|
|
3
|
-
export const renameDropdownItemGroupRadio = createRenameImportFor({
|
|
4
|
-
componentName: 'DropdownItemGroupRadio',
|
|
5
|
-
newComponentName: 'DropdownItemRadioGroup',
|
|
6
|
-
packagePath: '@atlaskit/dropdown-menu',
|
|
7
|
-
isDefaultImport: false,
|
|
8
|
-
});
|
|
9
|
-
|
|
10
|
-
export const renameDropdownItemGroupCheckbox = createRenameImportFor({
|
|
11
|
-
componentName: 'DropdownItemGroupCheckbox',
|
|
12
|
-
newComponentName: 'DropdownItemCheckboxGroup',
|
|
13
|
-
packagePath: '@atlaskit/dropdown-menu',
|
|
14
|
-
isDefaultImport: false,
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
export const renameDropdownMenuStateless = createRenameImportFor({
|
|
18
|
-
componentName: 'DropdownMenuStateless',
|
|
19
|
-
newComponentName: 'DropdownMenuStateless',
|
|
20
|
-
packagePath: '@atlaskit/dropdown-menu',
|
|
21
|
-
isDefaultImport: true,
|
|
22
|
-
});
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import type { ASTPath, default as core, JSXElement } from 'jscodeshift';
|
|
2
|
-
import { type Collection } from 'jscodeshift/src/Collection';
|
|
3
|
-
|
|
4
|
-
import { getDefaultSpecifier, getJSXAttributesByName } from '@atlaskit/codemod-utils';
|
|
5
|
-
|
|
6
|
-
import convertPosition from '../utils/convert-position';
|
|
7
|
-
|
|
8
|
-
const updatePositionValue = (j: core.JSCodeshift, source: Collection<Node>) => {
|
|
9
|
-
const defaultSpecifier = getDefaultSpecifier(j, source, '@atlaskit/dropdown-menu');
|
|
10
|
-
|
|
11
|
-
if (!defaultSpecifier) {
|
|
12
|
-
return;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
source.findJSXElements(defaultSpecifier).forEach((element: ASTPath<JSXElement>) => {
|
|
16
|
-
getJSXAttributesByName(j, element, 'position').forEach((attribute: any) => {
|
|
17
|
-
j(attribute).replaceWith(
|
|
18
|
-
j.jsxAttribute(
|
|
19
|
-
j.jsxIdentifier('placement'),
|
|
20
|
-
j.literal(convertPosition(attribute.node.value.value)),
|
|
21
|
-
),
|
|
22
|
-
);
|
|
23
|
-
});
|
|
24
|
-
});
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
export default updatePositionValue;
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @repo/internal/fs/filename-pattern-match */
|
|
2
|
-
import type { ASTPath, default as core, JSXElement } from 'jscodeshift';
|
|
3
|
-
import { type Collection } from 'jscodeshift/src/Collection';
|
|
4
|
-
|
|
5
|
-
import { getDefaultSpecifier, getJSXAttributesByName } from '@atlaskit/codemod-utils';
|
|
6
|
-
|
|
7
|
-
const replaceShouldAllowMultiline = (j: core.JSCodeshift, source: Collection<Node>) => {
|
|
8
|
-
const defaultSpecifier = getDefaultSpecifier(j, source, '@atlaskit/dropdown-menu');
|
|
9
|
-
|
|
10
|
-
if (!defaultSpecifier) {
|
|
11
|
-
return;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
source.findJSXElements(defaultSpecifier).forEach((element: ASTPath<JSXElement>) => {
|
|
15
|
-
getJSXAttributesByName(j, element, 'shouldAllowMultiline').forEach((attribute: any) => {
|
|
16
|
-
const shouldTitleWrap = j.jsxAttribute(
|
|
17
|
-
j.jsxIdentifier('shouldTitleWrap'),
|
|
18
|
-
attribute.node.value,
|
|
19
|
-
);
|
|
20
|
-
const shouldDescriptionWrap = j.jsxAttribute(
|
|
21
|
-
j.jsxIdentifier('shouldDescriptionWrap'),
|
|
22
|
-
attribute.node.value,
|
|
23
|
-
);
|
|
24
|
-
|
|
25
|
-
j(attribute).insertBefore(shouldTitleWrap);
|
|
26
|
-
j(attribute).insertBefore(shouldDescriptionWrap);
|
|
27
|
-
|
|
28
|
-
j(attribute).remove();
|
|
29
|
-
});
|
|
30
|
-
});
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
export default replaceShouldAllowMultiline;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { createUpdateCallsite } from '../utils/create-update-callsite';
|
|
2
|
-
|
|
3
|
-
export const updateDropdownItemGroupCheckboxCallsite = createUpdateCallsite({
|
|
4
|
-
componentName: 'DropdownItemGroupCheckbox',
|
|
5
|
-
newComponentName: 'DropdownItemCheckboxGroup',
|
|
6
|
-
packagePath: '@atlaskit/dropdown-menu',
|
|
7
|
-
});
|
|
8
|
-
|
|
9
|
-
export const updateDropdownItemGroupRadioCallsite = createUpdateCallsite({
|
|
10
|
-
componentName: 'DropdownItemGroupRadio',
|
|
11
|
-
newComponentName: 'DropdownItemRadioGroup',
|
|
12
|
-
packagePath: '@atlaskit/dropdown-menu',
|
|
13
|
-
});
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
type Entity = {
|
|
2
|
-
[key: string]: string;
|
|
3
|
-
};
|
|
4
|
-
|
|
5
|
-
const positionMap: Entity = {
|
|
6
|
-
'top left': 'top-start',
|
|
7
|
-
'top center': 'top',
|
|
8
|
-
'top right': 'top-end',
|
|
9
|
-
'right top': 'right-start',
|
|
10
|
-
'right middle': 'right',
|
|
11
|
-
'right bottom': 'right-end',
|
|
12
|
-
'bottom left': 'bottom-start',
|
|
13
|
-
'bottom center': 'bottom',
|
|
14
|
-
'bottom right': 'bottom-end',
|
|
15
|
-
'left top': 'left-start',
|
|
16
|
-
'left middle': 'left',
|
|
17
|
-
'left bottom': 'left-end',
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
const convertPosition = (position: string | undefined = ''): string => {
|
|
21
|
-
return positionMap[position.trim()] || 'bottom-start';
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
export default convertPosition;
|