@atlaskit/menu 1.1.3 → 1.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.
- package/CHANGELOG.md +53 -0
- package/dist/cjs/internal/components/menu-item-primitive.js +200 -0
- package/dist/cjs/menu-item/button-item.js +31 -25
- package/dist/cjs/menu-item/custom-item.js +31 -32
- package/dist/cjs/menu-item/heading-item.js +25 -7
- package/dist/cjs/menu-item/link-item.js +50 -45
- package/dist/cjs/menu-item/skeleton-heading-item.js +42 -14
- package/dist/cjs/menu-item/skeleton-item.js +93 -13
- package/dist/cjs/menu-section/menu-group.js +11 -8
- package/dist/cjs/menu-section/section.js +83 -29
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/internal/components/menu-item-primitive.js +180 -0
- package/dist/es2019/menu-item/button-item.js +28 -21
- package/dist/es2019/menu-item/custom-item.js +32 -24
- package/dist/es2019/menu-item/heading-item.js +22 -6
- package/dist/es2019/menu-item/link-item.js +31 -26
- package/dist/es2019/menu-item/skeleton-heading-item.js +37 -11
- package/dist/es2019/menu-item/skeleton-item.js +89 -11
- package/dist/es2019/menu-section/menu-group.js +12 -8
- package/dist/es2019/menu-section/section.js +83 -31
- package/dist/es2019/version.json +1 -1
- package/dist/esm/internal/components/menu-item-primitive.js +184 -0
- package/dist/esm/menu-item/button-item.js +30 -24
- package/dist/esm/menu-item/custom-item.js +32 -26
- package/dist/esm/menu-item/heading-item.js +22 -8
- package/dist/esm/menu-item/link-item.js +49 -45
- package/dist/esm/menu-item/skeleton-heading-item.js +38 -14
- package/dist/esm/menu-item/skeleton-item.js +89 -13
- package/dist/esm/menu-section/menu-group.js +12 -8
- package/dist/esm/menu-section/section.js +82 -32
- package/dist/esm/version.json +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/internal/components/menu-item-primitive.d.ts +17 -0
- package/dist/types/menu-item/button-item.d.ts +1 -1
- package/dist/types/menu-item/custom-item.d.ts +2 -1
- package/dist/types/menu-item/skeleton-heading-item.d.ts +1 -2
- package/dist/types/menu-item/skeleton-item.d.ts +1 -2
- package/dist/types/types.d.ts +27 -7
- package/package.json +4 -2
- package/dist/cjs/internal/components/base-item.js +0 -65
- package/dist/cjs/internal/styles/menu-item/base-item.js +0 -152
- package/dist/cjs/internal/styles/menu-item/button-item.js +0 -28
- package/dist/cjs/internal/styles/menu-item/custom-item.js +0 -24
- package/dist/cjs/internal/styles/menu-item/heading-item.js +0 -28
- package/dist/cjs/internal/styles/menu-item/link-item.js +0 -22
- package/dist/cjs/internal/styles/menu-item/skeleton-heading-item.js +0 -50
- package/dist/cjs/internal/styles/menu-item/skeleton-item.js +0 -98
- package/dist/cjs/internal/styles/menu-section/menu-group.js +0 -24
- package/dist/cjs/internal/styles/menu-section/section.js +0 -83
- package/dist/es2019/internal/components/base-item.js +0 -51
- package/dist/es2019/internal/styles/menu-item/base-item.js +0 -122
- package/dist/es2019/internal/styles/menu-item/button-item.js +0 -9
- package/dist/es2019/internal/styles/menu-item/custom-item.js +0 -5
- package/dist/es2019/internal/styles/menu-item/heading-item.js +0 -16
- package/dist/es2019/internal/styles/menu-item/link-item.js +0 -3
- package/dist/es2019/internal/styles/menu-item/skeleton-heading-item.js +0 -25
- package/dist/es2019/internal/styles/menu-item/skeleton-item.js +0 -75
- package/dist/es2019/internal/styles/menu-section/menu-group.js +0 -14
- package/dist/es2019/internal/styles/menu-section/section.js +0 -62
- package/dist/esm/internal/components/base-item.js +0 -55
- package/dist/esm/internal/styles/menu-item/base-item.js +0 -124
- package/dist/esm/internal/styles/menu-item/button-item.js +0 -16
- package/dist/esm/internal/styles/menu-item/custom-item.js +0 -12
- package/dist/esm/internal/styles/menu-item/heading-item.js +0 -16
- package/dist/esm/internal/styles/menu-item/link-item.js +0 -10
- package/dist/esm/internal/styles/menu-item/skeleton-heading-item.js +0 -33
- package/dist/esm/internal/styles/menu-item/skeleton-item.js +0 -81
- package/dist/esm/internal/styles/menu-section/menu-group.js +0 -15
- package/dist/esm/internal/styles/menu-section/section.js +0 -67
- package/dist/types/internal/components/base-item.d.ts +0 -9
- package/dist/types/internal/styles/menu-item/base-item.d.ts +0 -23
- package/dist/types/internal/styles/menu-item/button-item.d.ts +0 -2
- package/dist/types/internal/styles/menu-item/custom-item.d.ts +0 -2
- package/dist/types/internal/styles/menu-item/heading-item.d.ts +0 -2
- package/dist/types/internal/styles/menu-item/link-item.d.ts +0 -2
- package/dist/types/internal/styles/menu-item/skeleton-heading-item.d.ts +0 -2
- package/dist/types/internal/styles/menu-item/skeleton-item.d.ts +0 -2
- package/dist/types/internal/styles/menu-section/menu-group.d.ts +0 -3
- package/dist/types/internal/styles/menu-section/section.d.ts +0 -2
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
|
|
3
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
4
|
-
|
|
5
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
6
|
-
|
|
7
|
-
import { keyframes } from '@emotion/core';
|
|
8
|
-
import { skeleton as skeletonColorFn } from '@atlaskit/theme/colors';
|
|
9
|
-
import { borderRadius as borderRadiusFn, gridSize as gridSizeFn, skeletonShimmer } from '@atlaskit/theme/constants';
|
|
10
|
-
import { token } from '@atlaskit/tokens';
|
|
11
|
-
import { baseItemCSS } from './base-item';
|
|
12
|
-
var gridSize = gridSizeFn();
|
|
13
|
-
var borderRadius = borderRadiusFn();
|
|
14
|
-
var itemElemSpacing = gridSize * 1.5;
|
|
15
|
-
var itemExpectedElemSize = gridSize * 3;
|
|
16
|
-
var itemMinHeight = gridSize * 5;
|
|
17
|
-
var skeletonItemElemSize = gridSize * 2.5;
|
|
18
|
-
var itemElemSkeletonOffset = (itemExpectedElemSize - skeletonItemElemSize) / 2;
|
|
19
|
-
var skeletonTextBorderRadius = 100;
|
|
20
|
-
var skeletonContentHeight = 9;
|
|
21
|
-
var skeletonColor = token('color.background.subtleNeutral.resting', skeletonColorFn());
|
|
22
|
-
var shimmer = skeletonShimmer();
|
|
23
|
-
var shimmerKeyframes = keyframes(shimmer.keyframes);
|
|
24
|
-
export var skeletonItemCSS = function skeletonItemCSS(hasAvatar, hasIcon, width, isShimmering) {
|
|
25
|
-
return _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, baseItemCSS(false, false)), {}, {
|
|
26
|
-
pointerEvents: 'none',
|
|
27
|
-
display: 'flex',
|
|
28
|
-
alignItems: 'center',
|
|
29
|
-
minHeight: itemMinHeight
|
|
30
|
-
}, !width && {
|
|
31
|
-
'&:nth-child(1n)::after': {
|
|
32
|
-
flexBasis: '70%'
|
|
33
|
-
},
|
|
34
|
-
'&:nth-child(2n)::after': {
|
|
35
|
-
flexBasis: '50%'
|
|
36
|
-
},
|
|
37
|
-
'&:nth-child(3n)::after': {
|
|
38
|
-
flexBasis: '60%'
|
|
39
|
-
},
|
|
40
|
-
'&:nth-child(4n)::after': {
|
|
41
|
-
flexBasis: '90%'
|
|
42
|
-
},
|
|
43
|
-
'&:nth-child(5n)::after': {
|
|
44
|
-
flexBasis: '35%'
|
|
45
|
-
},
|
|
46
|
-
'&:nth-child(6n)::after': {
|
|
47
|
-
flexBasis: '77%'
|
|
48
|
-
}
|
|
49
|
-
}), (hasAvatar || hasIcon) && {
|
|
50
|
-
'&::before': _objectSpread(_objectSpread({
|
|
51
|
-
// This will render a skeleton in the "elemBefore" position.
|
|
52
|
-
content: '""',
|
|
53
|
-
backgroundColor: skeletonColor
|
|
54
|
-
}, isShimmering && _objectSpread(_objectSpread({}, shimmer.css), {}, {
|
|
55
|
-
animationName: "".concat(shimmerKeyframes)
|
|
56
|
-
})), {}, {
|
|
57
|
-
marginRight: itemElemSpacing + itemElemSkeletonOffset,
|
|
58
|
-
width: skeletonItemElemSize,
|
|
59
|
-
height: skeletonItemElemSize,
|
|
60
|
-
marginLeft: itemElemSkeletonOffset,
|
|
61
|
-
borderRadius: hasAvatar ? '100%' : borderRadius,
|
|
62
|
-
flexShrink: 0
|
|
63
|
-
})
|
|
64
|
-
}), {}, {
|
|
65
|
-
'&::after': _objectSpread(_objectSpread({
|
|
66
|
-
// This will render the skeleton "text".
|
|
67
|
-
content: '""',
|
|
68
|
-
backgroundColor: skeletonColor
|
|
69
|
-
}, isShimmering && _objectSpread(_objectSpread({}, shimmer.css), {}, {
|
|
70
|
-
animationName: "".concat(shimmerKeyframes)
|
|
71
|
-
})), {}, {
|
|
72
|
-
// This is a little bespoke but we need to push everything down 1px
|
|
73
|
-
// because the skeleton content should align to the bottom of the text.
|
|
74
|
-
// Confirm VR test failures before accepting a change.
|
|
75
|
-
marginTop: 1,
|
|
76
|
-
height: skeletonContentHeight,
|
|
77
|
-
borderRadius: skeletonTextBorderRadius,
|
|
78
|
-
flexBasis: width || '100%'
|
|
79
|
-
})
|
|
80
|
-
});
|
|
81
|
-
};
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export var menuGroupCSS = function menuGroupCSS(_ref) {
|
|
2
|
-
var minWidth = _ref.minWidth,
|
|
3
|
-
maxWidth = _ref.maxWidth,
|
|
4
|
-
minHeight = _ref.minHeight,
|
|
5
|
-
maxHeight = _ref.maxHeight;
|
|
6
|
-
return {
|
|
7
|
-
display: 'flex',
|
|
8
|
-
flexDirection: 'column',
|
|
9
|
-
overflow: 'auto',
|
|
10
|
-
maxWidth: maxWidth,
|
|
11
|
-
minWidth: minWidth,
|
|
12
|
-
maxHeight: maxHeight,
|
|
13
|
-
minHeight: minHeight
|
|
14
|
-
};
|
|
15
|
-
};
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
|
|
3
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
4
|
-
|
|
5
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
6
|
-
|
|
7
|
-
import { N30A } from '@atlaskit/theme/colors';
|
|
8
|
-
import { gridSize as gridSizeFn } from '@atlaskit/theme/constants';
|
|
9
|
-
import { headingSizes } from '@atlaskit/theme/typography';
|
|
10
|
-
import { token } from '@atlaskit/tokens';
|
|
11
|
-
var gridSize = gridSizeFn();
|
|
12
|
-
var itemHeadingTopMargin = gridSize * 2.5;
|
|
13
|
-
var itemHeadingBottomMargin = gridSize * 0.75; // Skeleton content is slightly shorter than the real content.
|
|
14
|
-
// Because of that we slightly increase the top margin to offset this so the
|
|
15
|
-
// containing size both real and skeleton always equal approx 30px.
|
|
16
|
-
|
|
17
|
-
var itemHeadingContentHeight = headingSizes.h100.lineHeight;
|
|
18
|
-
var skeletonHeadingHeight = gridSize;
|
|
19
|
-
var skeletonHeadingMarginOffset = 3;
|
|
20
|
-
var skeletonHeadingTopMargin = itemHeadingTopMargin + (itemHeadingContentHeight - skeletonHeadingHeight) - skeletonHeadingMarginOffset; // We want to move the entire body up by 3px without affecting the height of the skeleton container.
|
|
21
|
-
|
|
22
|
-
var skeletonHeadingBottomMargin = itemHeadingBottomMargin + skeletonHeadingMarginOffset;
|
|
23
|
-
var sectionPaddingTopBottom = gridSize * 0.75;
|
|
24
|
-
var VAR_SEPARATOR_COLOR = '--ds-menu-seperator-color';
|
|
25
|
-
export var sectionCSS = function sectionCSS(isScrollable, hasSeparator) {
|
|
26
|
-
return _objectSpread(_objectSpread(_objectSpread({
|
|
27
|
-
'&:before, &:after': {
|
|
28
|
-
content: '" "',
|
|
29
|
-
display: 'block',
|
|
30
|
-
height: sectionPaddingTopBottom
|
|
31
|
-
},
|
|
32
|
-
'& [data-ds--menu--heading-item]': {
|
|
33
|
-
'&:first-of-type': {
|
|
34
|
-
marginTop: itemHeadingTopMargin - sectionPaddingTopBottom
|
|
35
|
-
},
|
|
36
|
-
marginTop: itemHeadingTopMargin,
|
|
37
|
-
marginBottom: itemHeadingBottomMargin
|
|
38
|
-
},
|
|
39
|
-
'& [data-ds--menu--skeleton-heading-item]': {
|
|
40
|
-
'&:first-of-type': {
|
|
41
|
-
marginTop: skeletonHeadingTopMargin - sectionPaddingTopBottom
|
|
42
|
-
},
|
|
43
|
-
marginTop: skeletonHeadingTopMargin,
|
|
44
|
-
marginBottom: skeletonHeadingBottomMargin
|
|
45
|
-
}
|
|
46
|
-
}, isScrollable ? {
|
|
47
|
-
flexShrink: 1,
|
|
48
|
-
overflow: 'auto'
|
|
49
|
-
} : {
|
|
50
|
-
flexShrink: 0
|
|
51
|
-
}), hasSeparator ? {
|
|
52
|
-
borderTop: "2px solid var(".concat(VAR_SEPARATOR_COLOR, ", ").concat(token('color.border.neutral', N30A), ")")
|
|
53
|
-
} : {
|
|
54
|
-
// this is to ensure that adjacent sections without separators don't get additional margins.
|
|
55
|
-
'[data-section] + &': {
|
|
56
|
-
marginTop: -6
|
|
57
|
-
}
|
|
58
|
-
}), {}, {
|
|
59
|
-
'&:focus': {
|
|
60
|
-
// NOTE: Firefox allows elements that have "overflow: auto" to gain focus (as if it had tab-index="0")
|
|
61
|
-
// We have made a deliberate choice to leave this behaviour as is.
|
|
62
|
-
// This makes the outline go inside by 1px so it can actually be displayed
|
|
63
|
-
// else it gets cut off from the overflow: scroll from the parent menu group.
|
|
64
|
-
outlineOffset: -1
|
|
65
|
-
}
|
|
66
|
-
});
|
|
67
|
-
};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import type { BaseItemProps } from '../../types';
|
|
3
|
-
/**
|
|
4
|
-
* __Base item__
|
|
5
|
-
*
|
|
6
|
-
* A base item should be composed for all item experiences.
|
|
7
|
-
*/
|
|
8
|
-
declare const BaseItem: import("react").MemoExoticComponent<({ children, description, iconAfter, iconBefore, overrides, shouldTitleWrap, shouldDescriptionWrap, }: BaseItemProps) => JSX.Element>;
|
|
9
|
-
export default BaseItem;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { CSSObject } from '@emotion/core';
|
|
2
|
-
export declare const baseItemCSS: (isDisabled?: boolean | undefined, isSelected?: boolean | undefined) => CSSObject;
|
|
3
|
-
export declare const contentCSS: CSSObject;
|
|
4
|
-
export declare const truncateCSS: CSSObject;
|
|
5
|
-
export declare const wrapTextCSS: CSSObject;
|
|
6
|
-
export declare const elemBeforeCSS: {
|
|
7
|
-
display: string;
|
|
8
|
-
flexShrink: number;
|
|
9
|
-
marginRight: number;
|
|
10
|
-
};
|
|
11
|
-
export declare const elemAfterCSS: {
|
|
12
|
-
display: string;
|
|
13
|
-
flexShrink: number;
|
|
14
|
-
marginLeft: number;
|
|
15
|
-
};
|
|
16
|
-
export declare const wrapDescriptionCSS: CSSObject;
|
|
17
|
-
export declare const descriptionCSS: CSSObject;
|
|
18
|
-
export declare const contentCSSWrapper: {
|
|
19
|
-
readonly display: "flex";
|
|
20
|
-
readonly minHeight: number;
|
|
21
|
-
readonly alignItems: "center";
|
|
22
|
-
readonly width: "100%";
|
|
23
|
-
};
|