@atlaskit/icon 28.2.1 → 28.3.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 +20 -0
- package/afm-cc/tsconfig.json +3 -0
- package/afm-dev-agents/tsconfig.json +3 -0
- package/afm-jira/tsconfig.json +3 -0
- package/afm-passionfruit/tsconfig.json +3 -0
- package/afm-post-office/tsconfig.json +3 -0
- package/afm-rovo-extension/tsconfig.json +3 -0
- package/afm-townsquare/tsconfig.json +3 -0
- package/build/index.tsx +1 -1
- package/dist/cjs/components/icon-new.js +1 -1
- package/dist/cjs/components/icon-tile/icon-tile-new.compiled.css +12 -0
- package/dist/cjs/components/icon-tile/icon-tile-new.js +103 -0
- package/dist/cjs/components/{icon-tile.compiled.css → icon-tile/icon-tile-old.compiled.css} +2 -0
- package/dist/cjs/components/{icon-tile.js → icon-tile/icon-tile-old.js} +27 -25
- package/dist/cjs/components/icon-tile/index.js +85 -0
- package/dist/cjs/components/icon.js +1 -1
- package/dist/cjs/components/skeleton.js +1 -1
- package/dist/cjs/components/svg.js +1 -1
- package/dist/cjs/metadata-core.js +14 -14
- package/dist/cjs/metadata.js +1 -1
- package/dist/es2019/components/icon-new.js +1 -1
- package/dist/es2019/components/icon-tile/icon-tile-new.compiled.css +12 -0
- package/dist/es2019/components/icon-tile/icon-tile-new.js +95 -0
- package/dist/{esm/components/icon-tile.compiled.css → es2019/components/icon-tile/icon-tile-old.compiled.css} +2 -0
- package/dist/es2019/components/{icon-tile.js → icon-tile/icon-tile-old.js} +27 -25
- package/dist/es2019/components/icon-tile/index.js +79 -0
- package/dist/es2019/components/icon.js +1 -1
- package/dist/es2019/components/skeleton.js +1 -1
- package/dist/es2019/components/svg.js +1 -1
- package/dist/es2019/metadata-core.js +14 -14
- package/dist/es2019/metadata.js +1 -1
- package/dist/esm/components/icon-new.js +1 -1
- package/dist/esm/components/icon-tile/icon-tile-new.compiled.css +12 -0
- package/dist/esm/components/icon-tile/icon-tile-new.js +94 -0
- package/dist/{es2019/components/icon-tile.compiled.css → esm/components/icon-tile/icon-tile-old.compiled.css} +2 -0
- package/dist/esm/components/{icon-tile.js → icon-tile/icon-tile-old.js} +27 -25
- package/dist/esm/components/icon-tile/index.js +78 -0
- package/dist/esm/components/icon.js +1 -1
- package/dist/esm/components/skeleton.js +1 -1
- package/dist/esm/components/svg.js +1 -1
- package/dist/esm/metadata-core.js +14 -14
- package/dist/esm/metadata.js +1 -1
- package/dist/types/components/icon-tile/icon-tile-new.d.ts +7 -0
- package/dist/types/components/icon-tile/icon-tile-old.d.ts +7 -0
- package/dist/types/components/icon-tile/index.d.ts +8 -0
- package/dist/types/entry-points/types.d.ts +1 -1
- package/dist/types/metadata-core.d.ts +1 -1
- package/dist/types/metadata.d.ts +2 -8
- package/dist/types/types.d.ts +26 -3
- package/dist/types-ts4.5/components/icon-tile/icon-tile-new.d.ts +7 -0
- package/dist/types-ts4.5/components/icon-tile/icon-tile-old.d.ts +7 -0
- package/dist/types-ts4.5/components/icon-tile/index.d.ts +8 -0
- package/dist/types-ts4.5/entry-points/types.d.ts +1 -1
- package/dist/types-ts4.5/metadata-core.d.ts +1 -1
- package/dist/types-ts4.5/metadata.d.ts +2 -8
- package/dist/types-ts4.5/types.d.ts +26 -3
- package/package.json +13 -5
- package/utils/logo-icons.tsx +48 -48
- package/dist/types/components/icon-tile.d.ts +0 -11
- package/dist/types-ts4.5/components/icon-tile.d.ts +0 -11
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
3
|
+
// Import both versions
|
|
4
|
+
import IconTileNew from './icon-tile-new';
|
|
5
|
+
import IconTileOld from './icon-tile-old';
|
|
6
|
+
|
|
7
|
+
// Color mapping for size 16 standalone icons that will no longer be tiles
|
|
8
|
+
var appearanceToIconColorMap = {
|
|
9
|
+
blue: "var(--ds-icon-accent-blue, #1D7AFC)",
|
|
10
|
+
blueBold: "var(--ds-icon-accent-blue, #1D7AFC)",
|
|
11
|
+
gray: "var(--ds-icon-accent-gray, #758195)",
|
|
12
|
+
grayBold: "var(--ds-icon-accent-gray, #758195)",
|
|
13
|
+
green: "var(--ds-icon-accent-green, #22A06B)",
|
|
14
|
+
greenBold: "var(--ds-icon-accent-green, #22A06B)",
|
|
15
|
+
lime: "var(--ds-icon-accent-lime, #6A9A23)",
|
|
16
|
+
limeBold: "var(--ds-icon-accent-lime, #6A9A23)",
|
|
17
|
+
magenta: "var(--ds-icon-accent-magenta, #CD519D)",
|
|
18
|
+
magentaBold: "var(--ds-icon-accent-magenta, #CD519D)",
|
|
19
|
+
orange: "var(--ds-icon-accent-orange, #E56910)",
|
|
20
|
+
orangeBold: "var(--ds-icon-accent-orange, #E56910)",
|
|
21
|
+
purple: "var(--ds-icon-accent-purple, #8270DB)",
|
|
22
|
+
purpleBold: "var(--ds-icon-accent-purple, #8270DB)",
|
|
23
|
+
red: "var(--ds-icon-accent-red, #C9372C)",
|
|
24
|
+
redBold: "var(--ds-icon-accent-red, #C9372C)",
|
|
25
|
+
teal: "var(--ds-icon-accent-teal, #2898BD)",
|
|
26
|
+
tealBold: "var(--ds-icon-accent-teal, #2898BD)",
|
|
27
|
+
yellow: "var(--ds-icon-accent-yellow, #B38600)",
|
|
28
|
+
yellowBold: "var(--ds-icon-accent-yellow, #B38600)"
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* __IconTile__
|
|
33
|
+
*
|
|
34
|
+
* An icon with background shape, color, and size properties determined by Tile.
|
|
35
|
+
*/
|
|
36
|
+
export default function IconTile(_ref) {
|
|
37
|
+
var appearance = _ref.appearance,
|
|
38
|
+
Icon = _ref.icon,
|
|
39
|
+
label = _ref.label,
|
|
40
|
+
size = _ref.size,
|
|
41
|
+
testId = _ref.testId,
|
|
42
|
+
shape = _ref.shape,
|
|
43
|
+
LEGACY_fallbackComponent = _ref.LEGACY_fallbackComponent,
|
|
44
|
+
UNSAFE_circleReplacementComponent = _ref.UNSAFE_circleReplacementComponent;
|
|
45
|
+
// eslint-disable-next-line @atlaskit/platform/ensure-feature-flag-prefix
|
|
46
|
+
if (LEGACY_fallbackComponent && !fg('platform-visual-refresh-icons')) {
|
|
47
|
+
return LEGACY_fallbackComponent;
|
|
48
|
+
}
|
|
49
|
+
if (UNSAFE_circleReplacementComponent && shape === 'circle' && fg('platform_dst_icon_tile_circle_replacement')) {
|
|
50
|
+
return UNSAFE_circleReplacementComponent;
|
|
51
|
+
}
|
|
52
|
+
if (shape !== 'circle' && fg('platform_dst_new_icon_tile')) {
|
|
53
|
+
// Handle size 16 - render icon directly without Tile
|
|
54
|
+
if (size === '16') {
|
|
55
|
+
return /*#__PURE__*/React.createElement(Icon, {
|
|
56
|
+
color: appearanceToIconColorMap[appearance],
|
|
57
|
+
label: label,
|
|
58
|
+
testId: testId
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
return /*#__PURE__*/React.createElement(IconTileNew, {
|
|
62
|
+
appearance: appearance,
|
|
63
|
+
icon: Icon,
|
|
64
|
+
label: label,
|
|
65
|
+
shape: shape,
|
|
66
|
+
size: size,
|
|
67
|
+
testId: testId
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
return /*#__PURE__*/React.createElement(IconTileOld, {
|
|
71
|
+
appearance: appearance,
|
|
72
|
+
icon: Icon,
|
|
73
|
+
label: label,
|
|
74
|
+
shape: shape,
|
|
75
|
+
size: size,
|
|
76
|
+
testId: testId
|
|
77
|
+
});
|
|
78
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* icon.tsx generated by @compiled/babel-plugin v0.
|
|
1
|
+
/* icon.tsx generated by @compiled/babel-plugin v0.38.1 */
|
|
2
2
|
import _extends from "@babel/runtime/helpers/extends";
|
|
3
3
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
4
4
|
import "./icon.compiled.css";
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* To change the format of this file, modify `createIconDocsNew` in icon-build-process/src/create-icon-docs.tsx.
|
|
5
5
|
*
|
|
6
|
-
* @codegen <<SignedSource::
|
|
6
|
+
* @codegen <<SignedSource::ee18f4e5865068325a476701d51323b5>>
|
|
7
7
|
* @codegenCommand yarn build:icon-glyphs
|
|
8
8
|
*/
|
|
9
9
|
|
|
@@ -511,7 +511,7 @@ var metadata = {
|
|
|
511
511
|
package: '@atlaskit/icon/core/cash',
|
|
512
512
|
type: 'core',
|
|
513
513
|
categorization: 'multi-purpose',
|
|
514
|
-
usage: "Known usages: 'Sales' work type.",
|
|
514
|
+
usage: "Known usages: \'Sales\' work type.",
|
|
515
515
|
team: 'Design System Team',
|
|
516
516
|
status: 'published'
|
|
517
517
|
},
|
|
@@ -1111,7 +1111,7 @@ var metadata = {
|
|
|
1111
1111
|
package: '@atlaskit/icon/core/devices',
|
|
1112
1112
|
type: 'core',
|
|
1113
1113
|
categorization: 'multi-purpose',
|
|
1114
|
-
usage: "Known usages: 'Asset' work type.",
|
|
1114
|
+
usage: "Known usages: \'Asset\' work type.",
|
|
1115
1115
|
team: 'Design System Team',
|
|
1116
1116
|
status: 'published'
|
|
1117
1117
|
},
|
|
@@ -1204,7 +1204,7 @@ var metadata = {
|
|
|
1204
1204
|
oldName: ['editor/emoji', 'emoji/emoji', 'emoji', 'emoji/people'],
|
|
1205
1205
|
type: 'core',
|
|
1206
1206
|
categorization: 'single-purpose',
|
|
1207
|
-
usage: "Single purpose - Reserved for Editor as a category for Emoji's.",
|
|
1207
|
+
usage: "Single purpose - Reserved for Editor as a category for Emoji\'s.",
|
|
1208
1208
|
team: 'Design System Team',
|
|
1209
1209
|
status: 'published'
|
|
1210
1210
|
},
|
|
@@ -1417,7 +1417,7 @@ var metadata = {
|
|
|
1417
1417
|
oldName: ['document-filled', 'document', 'editor/file', 'file'],
|
|
1418
1418
|
type: 'core',
|
|
1419
1419
|
categorization: 'multi-purpose',
|
|
1420
|
-
usage: "Multi purpose - Known uses: document, file. Do not use to represent a page — use the dedicated 'Page' icon instead.",
|
|
1420
|
+
usage: "Multi purpose - Known uses: document, file. Do not use to represent a page — use the dedicated \'Page\' icon instead.",
|
|
1421
1421
|
team: 'Design System Team',
|
|
1422
1422
|
status: 'published'
|
|
1423
1423
|
},
|
|
@@ -1428,7 +1428,7 @@ var metadata = {
|
|
|
1428
1428
|
oldName: ['documents'],
|
|
1429
1429
|
type: 'core',
|
|
1430
1430
|
categorization: 'multi-purpose',
|
|
1431
|
-
usage: "Multi purpose - Known uses: documents, files. Do not use to represent pages — use the dedicated 'Pages' icon instead.",
|
|
1431
|
+
usage: "Multi purpose - Known uses: documents, files. Do not use to represent pages — use the dedicated \'Pages\' icon instead.",
|
|
1432
1432
|
team: 'Design System Team',
|
|
1433
1433
|
status: 'published'
|
|
1434
1434
|
},
|
|
@@ -1713,7 +1713,7 @@ var metadata = {
|
|
|
1713
1713
|
oldName: ['tray'],
|
|
1714
1714
|
type: 'core',
|
|
1715
1715
|
categorization: 'multi-purpose',
|
|
1716
|
-
usage: "Multi purpose - Known uses: 'Your work' in Confluence, inbox, mail.",
|
|
1716
|
+
usage: "Multi purpose - Known uses: \'Your work\' in Confluence, inbox, mail.",
|
|
1717
1717
|
team: 'Design System Team',
|
|
1718
1718
|
status: 'published'
|
|
1719
1719
|
},
|
|
@@ -1739,7 +1739,7 @@ var metadata = {
|
|
|
1739
1739
|
location: '@atlaskit/icon'
|
|
1740
1740
|
},
|
|
1741
1741
|
categorization: 'single-purpose',
|
|
1742
|
-
usage: "Reserved for information statuses and messaging. Filled status icons provide higher visual contrast to draw attention to important information. For information tooltips, use the unfilled 'information circle' icon.",
|
|
1742
|
+
usage: "Reserved for information statuses and messaging. Filled status icons provide higher visual contrast to draw attention to important information. For information tooltips, use the unfilled \'information circle\' icon.",
|
|
1743
1743
|
team: 'Design System Team',
|
|
1744
1744
|
status: 'deprecated'
|
|
1745
1745
|
},
|
|
@@ -1901,7 +1901,7 @@ var metadata = {
|
|
|
1901
1901
|
package: '@atlaskit/icon/core/list-checklist',
|
|
1902
1902
|
type: 'core',
|
|
1903
1903
|
categorization: 'multi-purpose',
|
|
1904
|
-
usage: "Known usages: Checklist, 'Requirement' work type.",
|
|
1904
|
+
usage: "Known usages: Checklist, \'Requirement\' work type.",
|
|
1905
1905
|
team: 'Design System Team',
|
|
1906
1906
|
status: 'published'
|
|
1907
1907
|
},
|
|
@@ -2115,7 +2115,7 @@ var metadata = {
|
|
|
2115
2115
|
package: '@atlaskit/icon/core/minus-square',
|
|
2116
2116
|
type: 'core',
|
|
2117
2117
|
categorization: 'multi-purpose',
|
|
2118
|
-
usage: "Known usages: 'Remove feature' work type.",
|
|
2118
|
+
usage: "Known usages: \'Remove feature\' work type.",
|
|
2119
2119
|
team: 'Design System Team',
|
|
2120
2120
|
status: 'published'
|
|
2121
2121
|
},
|
|
@@ -2272,7 +2272,7 @@ var metadata = {
|
|
|
2272
2272
|
package: '@atlaskit/icon/core/pen',
|
|
2273
2273
|
type: 'core',
|
|
2274
2274
|
categorization: 'multi-purpose',
|
|
2275
|
-
usage: "Known usages: 'Design task' work type.",
|
|
2275
|
+
usage: "Known usages: \'Design task\' work type.",
|
|
2276
2276
|
team: 'Design System Team',
|
|
2277
2277
|
status: 'published'
|
|
2278
2278
|
},
|
|
@@ -2400,7 +2400,7 @@ var metadata = {
|
|
|
2400
2400
|
oldName: ['issue-raise'],
|
|
2401
2401
|
type: 'core',
|
|
2402
2402
|
categorization: 'multi-purpose',
|
|
2403
|
-
usage: "Known usages: 'New feature' work type.",
|
|
2403
|
+
usage: "Known usages: \'New feature\' work type.",
|
|
2404
2404
|
team: 'Design System Team',
|
|
2405
2405
|
status: 'published'
|
|
2406
2406
|
},
|
|
@@ -3073,7 +3073,7 @@ var metadata = {
|
|
|
3073
3073
|
oldName: ['editor/info', 'editor/panel', 'info'],
|
|
3074
3074
|
type: 'core',
|
|
3075
3075
|
categorization: 'single-purpose',
|
|
3076
|
-
usage: "Reserved for information statuses and messaging. Filled status icons provide higher visual contrast to draw attention to important information. For information tooltips, use the unfilled 'information circle' icon.",
|
|
3076
|
+
usage: "Reserved for information statuses and messaging. Filled status icons provide higher visual contrast to draw attention to important information. For information tooltips, use the unfilled \'information circle\' icon.",
|
|
3077
3077
|
team: 'Design System Team',
|
|
3078
3078
|
status: 'published'
|
|
3079
3079
|
},
|
|
@@ -3617,7 +3617,7 @@ var metadata = {
|
|
|
3617
3617
|
package: '@atlaskit/icon/core/tools',
|
|
3618
3618
|
type: 'core',
|
|
3619
3619
|
categorization: 'multi-purpose',
|
|
3620
|
-
usage: "Known usages: 'Service request' Jira work type.",
|
|
3620
|
+
usage: "Known usages: \'Service request\' Jira work type.",
|
|
3621
3621
|
team: 'Design System Team',
|
|
3622
3622
|
status: 'published'
|
|
3623
3623
|
},
|
package/dist/esm/metadata.js
CHANGED
|
@@ -6,7 +6,7 @@ var _excluded = ["packageLoader"];
|
|
|
6
6
|
*
|
|
7
7
|
* To change the format of this file, modify `createIconDocs` in icon-build-process/src/create-icon-docs.tsx.
|
|
8
8
|
*
|
|
9
|
-
* @codegen <<SignedSource::
|
|
9
|
+
* @codegen <<SignedSource::5b9b70e1898d13b76e8faef592720556>>
|
|
10
10
|
* @codegenCommand yarn build:icon-glyphs
|
|
11
11
|
*/
|
|
12
12
|
/* eslint-disable import/no-extraneous-dependencies -- This import is within the same package, hence self-referential. */
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type IconTileProps } from '../../types';
|
|
3
|
+
/**
|
|
4
|
+
* __IconTile__
|
|
5
|
+
*
|
|
6
|
+
* An icon with background shape, color, and size properties determined by Tile.
|
|
7
|
+
*/
|
|
8
|
+
export default function IconTile({ appearance, icon: Icon, label, size, testId, shape, LEGACY_fallbackComponent, UNSAFE_circleReplacementComponent, }: IconTileProps): React.JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export type { CustomGlyphProps, GlyphProps, IconProps, Size, SkeletonProps, SVGProps, NewIconProps, NewGlyphColorProps, NewUtilityIconProps, NewCoreIconProps, IconMigrationMap, IconSpacing, } from '../types';
|
|
1
|
+
export type { CustomGlyphProps, GlyphProps, IconProps, Size, SkeletonProps, SVGProps, NewIconProps, NewGlyphColorProps, NewUtilityIconProps, NewCoreIconProps, IconMigrationMap, IconSpacing, IconTileProps, } from '../types';
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* To change the format of this file, modify `createIconDocsNew` in icon-build-process/src/create-icon-docs.tsx.
|
|
5
5
|
*
|
|
6
|
-
* @codegen <<SignedSource::
|
|
6
|
+
* @codegen <<SignedSource::ee18f4e5865068325a476701d51323b5>>
|
|
7
7
|
* @codegenCommand yarn build:icon-glyphs
|
|
8
8
|
*/
|
|
9
9
|
interface metadata {
|
package/dist/types/metadata.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* To change the format of this file, modify `createIconDocs` in icon-build-process/src/create-icon-docs.tsx.
|
|
5
5
|
*
|
|
6
|
-
* @codegen <<SignedSource::
|
|
6
|
+
* @codegen <<SignedSource::5b9b70e1898d13b76e8faef592720556>>
|
|
7
7
|
* @codegenCommand yarn build:icon-glyphs
|
|
8
8
|
*/
|
|
9
9
|
interface Data {
|
|
@@ -15,11 +15,5 @@ interface Data {
|
|
|
15
15
|
}>;
|
|
16
16
|
}
|
|
17
17
|
export declare const metaDataWithPackageLoader: Record<string, Data>;
|
|
18
|
-
declare const metaData:
|
|
19
|
-
[k: string]: {
|
|
20
|
-
keywords: string[];
|
|
21
|
-
componentName: string;
|
|
22
|
-
package: string;
|
|
23
|
-
};
|
|
24
|
-
};
|
|
18
|
+
declare const metaData: Record<string, Omit<Data, 'packageLoader'>>;
|
|
25
19
|
export default metaData;
|
package/dist/types/types.d.ts
CHANGED
|
@@ -183,7 +183,9 @@ export type NewUtilityIconProps = Omit<UNSAFE_NewUtilityGlyphProps, 'dangerously
|
|
|
183
183
|
export type UNSAFE_NewGlyphProps = UNSAFE_NewUtilityGlyphProps | UNSAFE_NewCoreGlyphProps;
|
|
184
184
|
export type NewIconProps = Omit<UNSAFE_NewGlyphProps, 'dangerouslySetGlyph' | 'type' | 'name'>;
|
|
185
185
|
export type IconTileAppearance = 'gray' | 'blue' | 'teal' | 'green' | 'lime' | 'yellow' | 'orange' | 'red' | 'magenta' | 'purple' | 'grayBold' | 'blueBold' | 'tealBold' | 'greenBold' | 'limeBold' | 'yellowBold' | 'orangeBold' | 'redBold' | 'magentaBold' | 'purpleBold';
|
|
186
|
-
export type
|
|
186
|
+
export type NewIconTileSize = 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
|
|
187
|
+
export type LegacyIconTileSize = '16' | '24' | '32' | '40' | '48';
|
|
188
|
+
export type IconTileSize = NewIconTileSize | LegacyIconTileSize;
|
|
187
189
|
export interface IconTileProps {
|
|
188
190
|
/**
|
|
189
191
|
* The icon to display
|
|
@@ -198,18 +200,39 @@ export interface IconTileProps {
|
|
|
198
200
|
*/
|
|
199
201
|
appearance: IconTileAppearance;
|
|
200
202
|
/**
|
|
201
|
-
* Size of the tile, in pixels. Defaults to
|
|
202
|
-
*
|
|
203
|
+
* Size of the tile, in pixels. Defaults to `24`.
|
|
204
|
+
*
|
|
205
|
+
* Now supports both semantic t-shirt size names and pixel number values. Pixel number values are deprecated and will be removed in a future release, however they will both be available and backwards-compatible during a transition period.
|
|
206
|
+
*
|
|
207
|
+
* Size `16` will not have a replacement after deprecation, and should be replaced with direct icons without a tile or enlarging to the next available size `xsmall`.
|
|
208
|
+
*
|
|
209
|
+
* All available sizes:
|
|
210
|
+
* - `16` (deprecated)
|
|
211
|
+
* - `xsmall` (new)
|
|
212
|
+
* - `small` or `24`
|
|
213
|
+
* - `medium` or `32`
|
|
214
|
+
* - `large` or `40`
|
|
215
|
+
* - `xlarge` or `48`
|
|
203
216
|
*/
|
|
204
217
|
size?: IconTileSize;
|
|
205
218
|
/**
|
|
206
219
|
* Shape of the tile background. Defaults to "square"
|
|
220
|
+
* @deprecated Circle shape is deprecated and will be removed in a future version. Consider migrating to alternatives such as a square tile, or an `IconButton` for interactive elements.
|
|
221
|
+
* If necessary, the only way to retain a circle appearance is to rebuild the component custom using ADS primitives. The prop `UNSAFE_circleReplacementComponent` can be used to
|
|
222
|
+
* implement alternatives.
|
|
207
223
|
*/
|
|
208
224
|
shape?: 'square' | 'circle';
|
|
209
225
|
/**
|
|
210
226
|
* Legacy component to render when the icon refresh feature flag is turned off.
|
|
227
|
+
* @deprecated This prop is deprecated and will be removed in a future version.
|
|
211
228
|
*/
|
|
212
229
|
LEGACY_fallbackComponent?: ReactElement;
|
|
230
|
+
/**
|
|
231
|
+
* A component to render in place of circle shaped icon tiles, swapped out with a feature flag.
|
|
232
|
+
*
|
|
233
|
+
* This prop is temporary, and will be used by ADS to safely rollout alternatives as circle shaped icon tiles are deprecated.
|
|
234
|
+
*/
|
|
235
|
+
UNSAFE_circleReplacementComponent?: ReactElement;
|
|
213
236
|
/**
|
|
214
237
|
* A unique string that appears as a data attribute `data-testid` in the rendered code,
|
|
215
238
|
* serving as a hook for automated tests.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type IconTileProps } from '../../types';
|
|
3
|
+
/**
|
|
4
|
+
* __IconTile__
|
|
5
|
+
*
|
|
6
|
+
* An icon with background shape, color, and size properties determined by Tile.
|
|
7
|
+
*/
|
|
8
|
+
export default function IconTile({ appearance, icon: Icon, label, size, testId, shape, LEGACY_fallbackComponent, UNSAFE_circleReplacementComponent, }: IconTileProps): React.JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export type { CustomGlyphProps, GlyphProps, IconProps, Size, SkeletonProps, SVGProps, NewIconProps, NewGlyphColorProps, NewUtilityIconProps, NewCoreIconProps, IconMigrationMap, IconSpacing, } from '../types';
|
|
1
|
+
export type { CustomGlyphProps, GlyphProps, IconProps, Size, SkeletonProps, SVGProps, NewIconProps, NewGlyphColorProps, NewUtilityIconProps, NewCoreIconProps, IconMigrationMap, IconSpacing, IconTileProps, } from '../types';
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* To change the format of this file, modify `createIconDocsNew` in icon-build-process/src/create-icon-docs.tsx.
|
|
5
5
|
*
|
|
6
|
-
* @codegen <<SignedSource::
|
|
6
|
+
* @codegen <<SignedSource::ee18f4e5865068325a476701d51323b5>>
|
|
7
7
|
* @codegenCommand yarn build:icon-glyphs
|
|
8
8
|
*/
|
|
9
9
|
interface metadata {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* To change the format of this file, modify `createIconDocs` in icon-build-process/src/create-icon-docs.tsx.
|
|
5
5
|
*
|
|
6
|
-
* @codegen <<SignedSource::
|
|
6
|
+
* @codegen <<SignedSource::5b9b70e1898d13b76e8faef592720556>>
|
|
7
7
|
* @codegenCommand yarn build:icon-glyphs
|
|
8
8
|
*/
|
|
9
9
|
interface Data {
|
|
@@ -15,11 +15,5 @@ interface Data {
|
|
|
15
15
|
}>;
|
|
16
16
|
}
|
|
17
17
|
export declare const metaDataWithPackageLoader: Record<string, Data>;
|
|
18
|
-
declare const metaData:
|
|
19
|
-
[k: string]: {
|
|
20
|
-
keywords: string[];
|
|
21
|
-
componentName: string;
|
|
22
|
-
package: string;
|
|
23
|
-
};
|
|
24
|
-
};
|
|
18
|
+
declare const metaData: Record<string, Omit<Data, 'packageLoader'>>;
|
|
25
19
|
export default metaData;
|
|
@@ -183,7 +183,9 @@ export type NewUtilityIconProps = Omit<UNSAFE_NewUtilityGlyphProps, 'dangerously
|
|
|
183
183
|
export type UNSAFE_NewGlyphProps = UNSAFE_NewUtilityGlyphProps | UNSAFE_NewCoreGlyphProps;
|
|
184
184
|
export type NewIconProps = Omit<UNSAFE_NewGlyphProps, 'dangerouslySetGlyph' | 'type' | 'name'>;
|
|
185
185
|
export type IconTileAppearance = 'gray' | 'blue' | 'teal' | 'green' | 'lime' | 'yellow' | 'orange' | 'red' | 'magenta' | 'purple' | 'grayBold' | 'blueBold' | 'tealBold' | 'greenBold' | 'limeBold' | 'yellowBold' | 'orangeBold' | 'redBold' | 'magentaBold' | 'purpleBold';
|
|
186
|
-
export type
|
|
186
|
+
export type NewIconTileSize = 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
|
|
187
|
+
export type LegacyIconTileSize = '16' | '24' | '32' | '40' | '48';
|
|
188
|
+
export type IconTileSize = NewIconTileSize | LegacyIconTileSize;
|
|
187
189
|
export interface IconTileProps {
|
|
188
190
|
/**
|
|
189
191
|
* The icon to display
|
|
@@ -198,18 +200,39 @@ export interface IconTileProps {
|
|
|
198
200
|
*/
|
|
199
201
|
appearance: IconTileAppearance;
|
|
200
202
|
/**
|
|
201
|
-
* Size of the tile, in pixels. Defaults to
|
|
202
|
-
*
|
|
203
|
+
* Size of the tile, in pixels. Defaults to `24`.
|
|
204
|
+
*
|
|
205
|
+
* Now supports both semantic t-shirt size names and pixel number values. Pixel number values are deprecated and will be removed in a future release, however they will both be available and backwards-compatible during a transition period.
|
|
206
|
+
*
|
|
207
|
+
* Size `16` will not have a replacement after deprecation, and should be replaced with direct icons without a tile or enlarging to the next available size `xsmall`.
|
|
208
|
+
*
|
|
209
|
+
* All available sizes:
|
|
210
|
+
* - `16` (deprecated)
|
|
211
|
+
* - `xsmall` (new)
|
|
212
|
+
* - `small` or `24`
|
|
213
|
+
* - `medium` or `32`
|
|
214
|
+
* - `large` or `40`
|
|
215
|
+
* - `xlarge` or `48`
|
|
203
216
|
*/
|
|
204
217
|
size?: IconTileSize;
|
|
205
218
|
/**
|
|
206
219
|
* Shape of the tile background. Defaults to "square"
|
|
220
|
+
* @deprecated Circle shape is deprecated and will be removed in a future version. Consider migrating to alternatives such as a square tile, or an `IconButton` for interactive elements.
|
|
221
|
+
* If necessary, the only way to retain a circle appearance is to rebuild the component custom using ADS primitives. The prop `UNSAFE_circleReplacementComponent` can be used to
|
|
222
|
+
* implement alternatives.
|
|
207
223
|
*/
|
|
208
224
|
shape?: 'square' | 'circle';
|
|
209
225
|
/**
|
|
210
226
|
* Legacy component to render when the icon refresh feature flag is turned off.
|
|
227
|
+
* @deprecated This prop is deprecated and will be removed in a future version.
|
|
211
228
|
*/
|
|
212
229
|
LEGACY_fallbackComponent?: ReactElement;
|
|
230
|
+
/**
|
|
231
|
+
* A component to render in place of circle shaped icon tiles, swapped out with a feature flag.
|
|
232
|
+
*
|
|
233
|
+
* This prop is temporary, and will be used by ADS to safely rollout alternatives as circle shaped icon tiles are deprecated.
|
|
234
|
+
*/
|
|
235
|
+
UNSAFE_circleReplacementComponent?: ReactElement;
|
|
213
236
|
/**
|
|
214
237
|
* A unique string that appears as a data attribute `data-testid` in the rendered code,
|
|
215
238
|
* serving as a hook for automated tests.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/icon",
|
|
3
|
-
"version": "28.
|
|
3
|
+
"version": "28.3.0",
|
|
4
4
|
"description": "An icon is a symbol representing a command, device, directory, or common action.",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"id": "icon-tile",
|
|
47
47
|
"status": {
|
|
48
48
|
"type": "open-alpha",
|
|
49
|
-
"description": "This is an experiment. We
|
|
49
|
+
"description": "This is an experiment. We are in the process of making breaking changes."
|
|
50
50
|
},
|
|
51
51
|
"sortKey": 2
|
|
52
52
|
},
|
|
@@ -96,6 +96,7 @@
|
|
|
96
96
|
},
|
|
97
97
|
"dependencies": {
|
|
98
98
|
"@atlaskit/platform-feature-flags": "^1.1.0",
|
|
99
|
+
"@atlaskit/tile": "^0.1.0",
|
|
99
100
|
"@atlaskit/tokens": "^6.3.0",
|
|
100
101
|
"@babel/register": "^7.25.9",
|
|
101
102
|
"@babel/runtime": "^7.0.0",
|
|
@@ -113,8 +114,8 @@
|
|
|
113
114
|
"@atlaskit/code": "^17.2.0",
|
|
114
115
|
"@atlaskit/css": "^0.14.0",
|
|
115
116
|
"@atlaskit/docs": "^11.1.0",
|
|
116
|
-
"@atlaskit/ds-lib": "^5.
|
|
117
|
-
"@atlaskit/form": "^
|
|
117
|
+
"@atlaskit/ds-lib": "^5.1.0",
|
|
118
|
+
"@atlaskit/form": "^14.0.0",
|
|
118
119
|
"@atlaskit/heading": "^5.2.0",
|
|
119
120
|
"@atlaskit/icon-file-type": "^7.0.0",
|
|
120
121
|
"@atlaskit/icon-object": "^7.2.0",
|
|
@@ -122,12 +123,13 @@
|
|
|
122
123
|
"@atlaskit/logo": "^19.7.0",
|
|
123
124
|
"@atlaskit/menu": "^8.4.0",
|
|
124
125
|
"@atlaskit/modal-dialog": "^14.3.0",
|
|
125
|
-
"@atlaskit/primitives": "^14.
|
|
126
|
+
"@atlaskit/primitives": "^14.15.0",
|
|
126
127
|
"@atlaskit/section-message": "^8.7.0",
|
|
127
128
|
"@atlaskit/textfield": "^8.0.0",
|
|
128
129
|
"@atlaskit/theme": "^21.0.0",
|
|
129
130
|
"@atlaskit/toggle": "^15.1.0",
|
|
130
131
|
"@atlaskit/tooltip": "^20.4.0",
|
|
132
|
+
"@atlassian/feature-flags-test-utils": "^0.3.0",
|
|
131
133
|
"@atlassian/ssr-tests": "^0.3.0",
|
|
132
134
|
"@babel/core": "7.24.9",
|
|
133
135
|
"@codeshift/utils": "^0.2.4",
|
|
@@ -192,6 +194,12 @@
|
|
|
192
194
|
},
|
|
193
195
|
"platform-visual-refresh-icons-facade-button-fix": {
|
|
194
196
|
"type": "boolean"
|
|
197
|
+
},
|
|
198
|
+
"platform_dst_new_icon_tile": {
|
|
199
|
+
"type": "boolean"
|
|
200
|
+
},
|
|
201
|
+
"platform_dst_icon_tile_circle_replacement": {
|
|
202
|
+
"type": "boolean"
|
|
195
203
|
}
|
|
196
204
|
}
|
|
197
205
|
}
|
package/utils/logo-icons.tsx
CHANGED
|
@@ -3,55 +3,55 @@ Unlike its sister icon info files, this one is manually curated
|
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
AtlassianIcon,
|
|
7
|
+
BitbucketIcon,
|
|
8
|
+
ConfluenceIcon,
|
|
9
|
+
JiraSoftwareIcon,
|
|
10
|
+
JiraIcon,
|
|
11
|
+
StatuspageIcon,
|
|
12
12
|
} from '@atlaskit/logo';
|
|
13
13
|
|
|
14
14
|
export default {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
15
|
+
AtlassianIcon: {
|
|
16
|
+
componentName: 'AtlassianIcon',
|
|
17
|
+
isNamedImport: true,
|
|
18
|
+
component: AtlassianIcon,
|
|
19
|
+
keywords: ['product', 'app', 'logo', 'atlassian'],
|
|
20
|
+
package: '@atlaskit/logo',
|
|
21
|
+
},
|
|
22
|
+
BitbucketIcon: {
|
|
23
|
+
componentName: 'BitbucketIcon',
|
|
24
|
+
isNamedImport: true,
|
|
25
|
+
component: BitbucketIcon,
|
|
26
|
+
keywords: ['product', 'app', 'logo', 'bitbucket'],
|
|
27
|
+
package: '@atlaskit/logo',
|
|
28
|
+
},
|
|
29
|
+
ConfluenceIcon: {
|
|
30
|
+
componentName: 'ConfluenceIcon',
|
|
31
|
+
isNamedImport: true,
|
|
32
|
+
component: ConfluenceIcon,
|
|
33
|
+
keywords: ['product', 'app', 'logo', 'confluence'],
|
|
34
|
+
package: '@atlaskit/logo',
|
|
35
|
+
},
|
|
36
|
+
JiraSoftwareIcon: {
|
|
37
|
+
componentName: 'JiraSoftwareIcon',
|
|
38
|
+
isNamedImport: true,
|
|
39
|
+
component: JiraSoftwareIcon,
|
|
40
|
+
keywords: ['product', 'app', 'logo', 'jira', 'software'],
|
|
41
|
+
package: '@atlaskit/logo',
|
|
42
|
+
},
|
|
43
|
+
JiraIcon: {
|
|
44
|
+
componentName: 'JiraIcon',
|
|
45
|
+
isNamedImport: true,
|
|
46
|
+
component: JiraIcon,
|
|
47
|
+
keywords: ['product', 'app', 'logo', 'jira'],
|
|
48
|
+
package: '@atlaskit/logo',
|
|
49
|
+
},
|
|
50
|
+
StatuspageIcon: {
|
|
51
|
+
componentName: 'StatuspageIcon',
|
|
52
|
+
isNamedImport: true,
|
|
53
|
+
component: StatuspageIcon,
|
|
54
|
+
keywords: ['product', 'app', 'logo', 'statuspage'],
|
|
55
|
+
package: '@atlaskit/logo',
|
|
56
|
+
},
|
|
57
57
|
};
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { type IconTileProps } from '../types';
|
|
2
|
-
/**
|
|
3
|
-
* __IconTile__ -- ⚠️ Experimental ⚠️
|
|
4
|
-
*
|
|
5
|
-
* An icon tile is used to present an icon with a background color.
|
|
6
|
-
* Icon tiles, unlike standard icons, can scale up and down to provide greater emphasis.
|
|
7
|
-
*
|
|
8
|
-
* This component is currently in an experimental state and is subject to change in minor or patch releases.
|
|
9
|
-
*
|
|
10
|
-
*/
|
|
11
|
-
export default function IconTile(props: IconTileProps): JSX.Element;
|