@atlaskit/flag 15.0.4 → 15.0.6
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 +13 -0
- package/dist/cjs/auto-dismiss-flag.js +9 -24
- package/dist/cjs/flag-actions.js +9 -22
- package/dist/cjs/flag-group.js +22 -32
- package/dist/cjs/flag-provider.js +9 -35
- package/dist/cjs/flag.js +31 -55
- package/dist/cjs/index.js +0 -5
- package/dist/cjs/internal/dismiss-button.js +6 -19
- package/dist/cjs/internal/expander.js +6 -11
- package/dist/cjs/internal/index.js +0 -3
- package/dist/cjs/theme.js +2 -3
- package/dist/cjs/types.js +3 -2
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/auto-dismiss-flag.js +4 -5
- package/dist/es2019/flag-actions.js +4 -7
- package/dist/es2019/flag-group.js +13 -11
- package/dist/es2019/flag-provider.js +7 -9
- package/dist/es2019/flag.js +8 -11
- package/dist/es2019/internal/dismiss-button.js +1 -5
- package/dist/es2019/internal/expander.js +4 -4
- package/dist/es2019/theme.js +2 -1
- package/dist/es2019/types.js +4 -1
- package/dist/es2019/version.json +1 -1
- package/dist/esm/auto-dismiss-flag.js +9 -12
- package/dist/esm/flag-actions.js +9 -14
- package/dist/esm/flag-group.js +21 -20
- package/dist/esm/flag-provider.js +9 -20
- package/dist/esm/flag.js +31 -40
- package/dist/esm/internal/dismiss-button.js +5 -9
- package/dist/esm/internal/expander.js +6 -6
- package/dist/esm/theme.js +2 -1
- package/dist/esm/types.js +4 -1
- package/dist/esm/version.json +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @atlaskit/flag
|
|
2
2
|
|
|
3
|
+
## 15.0.6
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies
|
|
8
|
+
|
|
9
|
+
## 15.0.5
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- [`eadbf13d8c0`](https://bitbucket.org/atlassian/atlassian-frontend/commits/eadbf13d8c0) - Updated usages of `Text`, `Box`, `Stack`, and `Inline` primitives to reflect their updated APIs. There are no visual or behaviour changes.
|
|
14
|
+
- Updated dependencies
|
|
15
|
+
|
|
3
16
|
## 15.0.4
|
|
4
17
|
|
|
5
18
|
### Patch Changes
|
|
@@ -1,33 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports.default = exports.AUTO_DISMISS_SECONDS = void 0;
|
|
11
|
-
|
|
12
9
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
|
-
|
|
14
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
-
|
|
16
11
|
var _usePlatformLeafEventHandler = require("@atlaskit/analytics-next/usePlatformLeafEventHandler");
|
|
17
|
-
|
|
18
12
|
var _noop = _interopRequireDefault(require("@atlaskit/ds-lib/noop"));
|
|
19
|
-
|
|
20
13
|
var _flag = _interopRequireDefault(require("./flag"));
|
|
21
|
-
|
|
22
14
|
var _flagGroup = require("./flag-group");
|
|
23
|
-
|
|
24
15
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
25
|
-
|
|
26
16
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
27
|
-
|
|
28
17
|
var packageName = "@atlaskit/flag";
|
|
29
|
-
var packageVersion = "15.0.
|
|
18
|
+
var packageVersion = "15.0.6";
|
|
30
19
|
var AUTO_DISMISS_SECONDS = 8;
|
|
20
|
+
|
|
31
21
|
/**
|
|
32
22
|
* __Auto dismiss flag__
|
|
33
23
|
*
|
|
@@ -36,20 +26,16 @@ var AUTO_DISMISS_SECONDS = 8;
|
|
|
36
26
|
* - [Examples](https://atlassian.design/components/flag/auto-dismiss-flag/examples)
|
|
37
27
|
* - [Code](https://atlassian.design/components/flag/auto-dismiss-flag/code)
|
|
38
28
|
*/
|
|
39
|
-
|
|
40
29
|
exports.AUTO_DISMISS_SECONDS = AUTO_DISMISS_SECONDS;
|
|
41
|
-
|
|
42
30
|
var AutoDismissFlag = function AutoDismissFlag(props) {
|
|
43
31
|
var id = props.id,
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
32
|
+
analyticsContext = props.analyticsContext,
|
|
33
|
+
_props$onDismissed = props.onDismissed,
|
|
34
|
+
onDismissedProp = _props$onDismissed === void 0 ? _noop.default : _props$onDismissed;
|
|
47
35
|
var autoDismissTimer = (0, _react.useRef)(null);
|
|
48
|
-
|
|
49
36
|
var _useFlagGroup = (0, _flagGroup.useFlagGroup)(),
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
37
|
+
onDismissedFromFlagGroup = _useFlagGroup.onDismissed,
|
|
38
|
+
isDismissAllowed = _useFlagGroup.isDismissAllowed;
|
|
53
39
|
var onDismissed = (0, _react.useCallback)(function (id, analyticsEvent) {
|
|
54
40
|
onDismissedProp(id, analyticsEvent);
|
|
55
41
|
onDismissedFromFlagGroup(id, analyticsEvent);
|
|
@@ -78,7 +64,6 @@ var AutoDismissFlag = function AutoDismissFlag(props) {
|
|
|
78
64
|
if (!isAutoDismissAllowed) {
|
|
79
65
|
return;
|
|
80
66
|
}
|
|
81
|
-
|
|
82
67
|
stopAutoDismissTimer();
|
|
83
68
|
autoDismissTimer.current = window.setTimeout(dismissFlag, AUTO_DISMISS_SECONDS * 1000);
|
|
84
69
|
}, [dismissFlag, stopAutoDismissTimer, isAutoDismissAllowed]);
|
|
@@ -86,7 +71,8 @@ var AutoDismissFlag = function AutoDismissFlag(props) {
|
|
|
86
71
|
startAutoDismissTimer();
|
|
87
72
|
return stopAutoDismissTimer;
|
|
88
73
|
}, [startAutoDismissTimer, stopAutoDismissTimer]);
|
|
89
|
-
return /*#__PURE__*/_react.default.createElement(_flag.default
|
|
74
|
+
return /*#__PURE__*/_react.default.createElement(_flag.default
|
|
75
|
+
// eslint-disable-next-line @repo/internal/react/no-unsafe-spread-props
|
|
90
76
|
, (0, _extends2.default)({}, props, {
|
|
91
77
|
onMouseOver: stopAutoDismissTimer,
|
|
92
78
|
onFocus: stopAutoDismissTimer,
|
|
@@ -94,6 +80,5 @@ var AutoDismissFlag = function AutoDismissFlag(props) {
|
|
|
94
80
|
onBlur: startAutoDismissTimer
|
|
95
81
|
}));
|
|
96
82
|
};
|
|
97
|
-
|
|
98
83
|
var _default = AutoDismissFlag;
|
|
99
84
|
exports.default = _default;
|
package/dist/cjs/flag-actions.js
CHANGED
|
@@ -1,29 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
-
|
|
12
9
|
var _react = require("@emotion/react");
|
|
13
|
-
|
|
14
10
|
var _customThemeButton = _interopRequireDefault(require("@atlaskit/button/custom-theme-button"));
|
|
15
|
-
|
|
16
11
|
var _dsExplorations = require("@atlaskit/ds-explorations");
|
|
17
|
-
|
|
18
12
|
var _constants = require("@atlaskit/theme/constants");
|
|
19
|
-
|
|
20
13
|
var _constants2 = require("./constants");
|
|
21
|
-
|
|
22
14
|
var _theme = require("./theme");
|
|
23
|
-
|
|
24
15
|
/* eslint-disable @repo/internal/styles/no-nested-styles */
|
|
25
|
-
|
|
26
16
|
/** @jsx jsx */
|
|
17
|
+
|
|
27
18
|
var gridSize = (0, _constants.gridSize)();
|
|
28
19
|
var buttonStyles = (0, _react.css)({
|
|
29
20
|
'&&, a&&': {
|
|
@@ -50,22 +41,19 @@ var appearanceNormalButtonStyles = (0, _react.css)({
|
|
|
50
41
|
padding: '0 !important'
|
|
51
42
|
}
|
|
52
43
|
});
|
|
53
|
-
|
|
54
44
|
var FlagActions = function FlagActions(props) {
|
|
55
45
|
var _props$appearance = props.appearance,
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
46
|
+
appearance = _props$appearance === void 0 ? _constants2.DEFAULT_APPEARANCE : _props$appearance,
|
|
47
|
+
_props$actions = props.actions,
|
|
48
|
+
actions = _props$actions === void 0 ? [] : _props$actions,
|
|
49
|
+
linkComponent = props.linkComponent,
|
|
50
|
+
testId = props.testId;
|
|
62
51
|
if (!actions.length) {
|
|
63
52
|
return null;
|
|
64
53
|
}
|
|
65
|
-
|
|
66
54
|
var isBold = appearance !== _constants2.DEFAULT_APPEARANCE;
|
|
67
55
|
return (0, _react.jsx)(_dsExplorations.UNSAFE_Inline, {
|
|
68
|
-
gap: "
|
|
56
|
+
gap: "space.100",
|
|
69
57
|
flexWrap: "wrap",
|
|
70
58
|
alignItems: "center",
|
|
71
59
|
divider: isBold ? null : '·',
|
|
@@ -75,7 +63,6 @@ var FlagActions = function FlagActions(props) {
|
|
|
75
63
|
testId: testId && "".concat(testId, "-actions")
|
|
76
64
|
}, actions.map(function (action, index) {
|
|
77
65
|
var _ref;
|
|
78
|
-
|
|
79
66
|
return (0, _react.jsx)(_customThemeButton.default, {
|
|
80
67
|
onClick: action.onClick,
|
|
81
68
|
href: action.href,
|
|
@@ -89,8 +76,8 @@ var FlagActions = function FlagActions(props) {
|
|
|
89
76
|
css: [buttonStyles, appearance === 'normal' && appearanceNormalButtonStyles]
|
|
90
77
|
}, action.content);
|
|
91
78
|
}));
|
|
92
|
-
};
|
|
93
|
-
|
|
79
|
+
};
|
|
94
80
|
|
|
81
|
+
// eslint-disable-next-line @repo/internal/react/require-jsdoc
|
|
95
82
|
var _default = FlagActions;
|
|
96
83
|
exports.default = _default;
|
package/dist/cjs/flag-group.js
CHANGED
|
@@ -1,32 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.flagWidth = exports.flagAnimationTime = exports.default = exports.FlagGroupContext = void 0;
|
|
9
8
|
exports.useFlagGroup = useFlagGroup;
|
|
10
|
-
|
|
11
9
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
12
|
-
|
|
13
10
|
var _react = require("react");
|
|
14
|
-
|
|
15
11
|
var _react2 = require("@emotion/react");
|
|
16
|
-
|
|
17
12
|
var _dsExplorations = require("@atlaskit/ds-explorations");
|
|
18
|
-
|
|
19
13
|
var _motion = require("@atlaskit/motion");
|
|
20
|
-
|
|
21
14
|
var _visuallyHidden = _interopRequireDefault(require("@atlaskit/visually-hidden"));
|
|
22
|
-
|
|
23
15
|
var _noop = _interopRequireDefault(require("@atlaskit/ds-lib/noop"));
|
|
24
|
-
|
|
25
16
|
var _portal = _interopRequireDefault(require("@atlaskit/portal"));
|
|
26
|
-
|
|
27
17
|
var _constants = require("@atlaskit/theme/constants");
|
|
28
|
-
|
|
29
18
|
/** @jsx jsx */
|
|
19
|
+
|
|
30
20
|
var gridSize = (0, _constants.gridSize)();
|
|
31
21
|
var flagWidth = gridSize * 50;
|
|
32
22
|
exports.flagWidth = flagWidth;
|
|
@@ -37,18 +27,19 @@ var flagLeft = gridSize * 10;
|
|
|
37
27
|
var defaultFlagGroupContext = {
|
|
38
28
|
onDismissed: _noop.default,
|
|
39
29
|
isDismissAllowed: false
|
|
40
|
-
};
|
|
30
|
+
};
|
|
41
31
|
|
|
42
|
-
|
|
32
|
+
// eslint-disable-next-line @repo/internal/react/require-jsdoc
|
|
33
|
+
var FlagGroupContext = /*#__PURE__*/(0, _react.createContext)(defaultFlagGroupContext);
|
|
43
34
|
|
|
35
|
+
// eslint-disable-next-line @repo/internal/react/require-jsdoc
|
|
44
36
|
exports.FlagGroupContext = FlagGroupContext;
|
|
45
|
-
|
|
46
37
|
function useFlagGroup() {
|
|
47
38
|
return (0, _react.useContext)(FlagGroupContext);
|
|
48
|
-
}
|
|
49
|
-
// that causes a broken transition
|
|
50
|
-
|
|
39
|
+
}
|
|
51
40
|
|
|
41
|
+
// transition: none is set on first-of-type to prevent a bug in Firefox
|
|
42
|
+
// that causes a broken transition
|
|
52
43
|
var baseStyles = (0, _react2.css)({
|
|
53
44
|
width: flagWidth,
|
|
54
45
|
bottom: 0,
|
|
@@ -73,9 +64,10 @@ var baseStyles = (0, _react2.css)({
|
|
|
73
64
|
'&:nth-of-type(n + 4)': {
|
|
74
65
|
visibility: 'hidden'
|
|
75
66
|
}
|
|
76
|
-
});
|
|
77
|
-
// Exiting time should match the exiting time of motion so is halved
|
|
67
|
+
});
|
|
78
68
|
|
|
69
|
+
// Transform needed to push up while 1st flag is leaving
|
|
70
|
+
// Exiting time should match the exiting time of motion so is halved
|
|
79
71
|
var dismissAllowedStyles = (0, _react2.css)({
|
|
80
72
|
// eslint-disable-next-line @repo/internal/styles/no-nested-styles
|
|
81
73
|
'&& + *': {
|
|
@@ -92,6 +84,7 @@ var flagGroupContainerStyles = (0, _react2.css)({
|
|
|
92
84
|
left: 0
|
|
93
85
|
}
|
|
94
86
|
});
|
|
87
|
+
|
|
95
88
|
/**
|
|
96
89
|
* __Flag group__
|
|
97
90
|
*
|
|
@@ -100,16 +93,15 @@ var flagGroupContainerStyles = (0, _react2.css)({
|
|
|
100
93
|
* - [Examples](https://atlassian.design/components/flag/flag-group/examples)
|
|
101
94
|
* - [Code](https://atlassian.design/components/flag/flag-group/code)
|
|
102
95
|
*/
|
|
103
|
-
|
|
104
96
|
var FlagGroup = function FlagGroup(props) {
|
|
105
97
|
var id = props.id,
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
98
|
+
_props$label = props.label,
|
|
99
|
+
label = _props$label === void 0 ? 'Flag notifications' : _props$label,
|
|
100
|
+
_props$labelTag = props.labelTag,
|
|
101
|
+
LabelTag = _props$labelTag === void 0 ? 'h2' : _props$labelTag,
|
|
102
|
+
children = props.children,
|
|
103
|
+
_props$onDismissed = props.onDismissed,
|
|
104
|
+
onDismissed = _props$onDismissed === void 0 ? _noop.default : _props$onDismissed;
|
|
113
105
|
var hasFlags = Array.isArray(children) ? children.length > 0 : Boolean(children);
|
|
114
106
|
var dismissFlagContext = (0, _react.useMemo)(function () {
|
|
115
107
|
return {
|
|
@@ -117,7 +109,6 @@ var FlagGroup = function FlagGroup(props) {
|
|
|
117
109
|
isDismissAllowed: true
|
|
118
110
|
};
|
|
119
111
|
}, [onDismissed]);
|
|
120
|
-
|
|
121
112
|
var renderChildren = function renderChildren() {
|
|
122
113
|
return children && (0, _typeof2.default)(children) === 'object' ? _react.Children.map(children, function (flag, index) {
|
|
123
114
|
var isDismissAllowed = index === 0;
|
|
@@ -130,7 +121,7 @@ var FlagGroup = function FlagGroup(props) {
|
|
|
130
121
|
}
|
|
131
122
|
}, function (_ref) {
|
|
132
123
|
var className = _ref.className,
|
|
133
|
-
|
|
124
|
+
ref = _ref.ref;
|
|
134
125
|
return (0, _react2.jsx)(_dsExplorations.UNSAFE_Box, {
|
|
135
126
|
display: "block",
|
|
136
127
|
position: "absolute",
|
|
@@ -138,13 +129,13 @@ var FlagGroup = function FlagGroup(props) {
|
|
|
138
129
|
className: className,
|
|
139
130
|
ref: ref
|
|
140
131
|
}, (0, _react2.jsx)(FlagGroupContext.Provider, {
|
|
141
|
-
value:
|
|
132
|
+
value:
|
|
133
|
+
// Only the first flag should be able to be dismissed.
|
|
142
134
|
isDismissAllowed ? dismissFlagContext : defaultFlagGroupContext
|
|
143
135
|
}, flag));
|
|
144
136
|
});
|
|
145
137
|
}) : false;
|
|
146
138
|
};
|
|
147
|
-
|
|
148
139
|
return (0, _react2.jsx)(_portal.default, {
|
|
149
140
|
zIndex: _constants.layers.flag()
|
|
150
141
|
}, (0, _react2.jsx)(_dsExplorations.UNSAFE_Box, {
|
|
@@ -156,6 +147,5 @@ var FlagGroup = function FlagGroup(props) {
|
|
|
156
147
|
appear: false
|
|
157
148
|
}, renderChildren())));
|
|
158
149
|
};
|
|
159
|
-
|
|
160
150
|
var _default = FlagGroup;
|
|
161
151
|
exports.default = _default;
|
|
@@ -1,76 +1,52 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports.FlagsProvider = FlagsProvider;
|
|
11
9
|
exports.useFlags = useFlags;
|
|
12
10
|
exports.withFlagsProvider = void 0;
|
|
13
|
-
|
|
14
11
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
15
|
-
|
|
16
12
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
17
|
-
|
|
18
13
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
19
|
-
|
|
20
14
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
21
|
-
|
|
22
15
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
23
|
-
|
|
24
16
|
var _react = _interopRequireWildcard(require("react"));
|
|
25
|
-
|
|
26
17
|
var _autoDismissFlag = _interopRequireDefault(require("./auto-dismiss-flag"));
|
|
27
|
-
|
|
28
18
|
var _flag = _interopRequireDefault(require("./flag"));
|
|
29
|
-
|
|
30
19
|
var _flagGroup = _interopRequireDefault(require("./flag-group"));
|
|
31
|
-
|
|
32
20
|
var _excluded = ["isAutoDismiss"];
|
|
33
|
-
|
|
34
21
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
35
|
-
|
|
36
22
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
37
|
-
|
|
38
23
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
39
|
-
|
|
40
24
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
41
|
-
|
|
42
25
|
var FlagContext = /*#__PURE__*/_react.default.createContext(null);
|
|
26
|
+
|
|
43
27
|
/**
|
|
44
28
|
* useFlags is used to access the `showFlags` function which can be used to programatically display flags.
|
|
45
29
|
* - [Examples](https://atlassian.design/components/flag/flags-provider/examples#using-showflags)
|
|
46
30
|
*/
|
|
47
|
-
|
|
48
|
-
|
|
49
31
|
function useFlags() {
|
|
50
32
|
var api = (0, _react.useContext)(FlagContext);
|
|
51
|
-
|
|
52
33
|
if (api == null) {
|
|
53
34
|
throw new Error('Unable to find FlagProviderContext');
|
|
54
35
|
}
|
|
55
|
-
|
|
56
36
|
return api;
|
|
57
37
|
}
|
|
58
|
-
|
|
59
38
|
var getUniqueId = function () {
|
|
60
39
|
var count = 0;
|
|
61
40
|
return function () {
|
|
62
41
|
return "flag-provider-unique-id:".concat(count++);
|
|
63
42
|
};
|
|
64
43
|
}();
|
|
65
|
-
|
|
66
44
|
function FlagsProvider(_ref) {
|
|
67
45
|
var children = _ref.children;
|
|
68
|
-
|
|
69
46
|
var _useState = (0, _react.useState)([]),
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
47
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
48
|
+
flags = _useState2[0],
|
|
49
|
+
setFlags = _useState2[1];
|
|
74
50
|
var removeFlag = (0, _react.useCallback)(function (id) {
|
|
75
51
|
setFlags(function (current) {
|
|
76
52
|
return current.slice(0).filter(function (flag) {
|
|
@@ -84,17 +60,17 @@ function FlagsProvider(_ref) {
|
|
|
84
60
|
var flag = _objectSpread(_objectSpread({}, value), {}, {
|
|
85
61
|
id: value.id || getUniqueId()
|
|
86
62
|
});
|
|
87
|
-
|
|
88
63
|
setFlags(function (current) {
|
|
89
64
|
var index = current.findIndex(function (value) {
|
|
90
65
|
return value.id === flag.id;
|
|
91
|
-
});
|
|
66
|
+
});
|
|
92
67
|
|
|
68
|
+
// If flag is not found add it
|
|
93
69
|
if (index === -1) {
|
|
94
70
|
return [flag].concat((0, _toConsumableArray2.default)(current));
|
|
95
|
-
}
|
|
96
|
-
|
|
71
|
+
}
|
|
97
72
|
|
|
73
|
+
// If flag already exists with the same id, then replace it
|
|
98
74
|
var shallow = (0, _toConsumableArray2.default)(current);
|
|
99
75
|
shallow[index] = flag;
|
|
100
76
|
return shallow;
|
|
@@ -111,16 +87,14 @@ function FlagsProvider(_ref) {
|
|
|
111
87
|
onDismissed: removeFlag
|
|
112
88
|
}, flags.map(function (flag) {
|
|
113
89
|
var isAutoDismiss = flag.isAutoDismiss,
|
|
114
|
-
|
|
90
|
+
restProps = (0, _objectWithoutProperties2.default)(flag, _excluded);
|
|
115
91
|
var FlagType = isAutoDismiss ? _autoDismissFlag.default : _flag.default;
|
|
116
92
|
return /*#__PURE__*/_react.default.createElement(FlagType, (0, _extends2.default)({}, restProps, {
|
|
117
93
|
key: flag.id
|
|
118
94
|
}));
|
|
119
95
|
})));
|
|
120
96
|
}
|
|
121
|
-
|
|
122
97
|
var withFlagsProvider = function withFlagsProvider(fn) {
|
|
123
98
|
return /*#__PURE__*/_react.default.createElement(FlagsProvider, null, fn());
|
|
124
99
|
};
|
|
125
|
-
|
|
126
100
|
exports.withFlagsProvider = withFlagsProvider;
|
package/dist/cjs/flag.js
CHANGED
|
@@ -1,49 +1,32 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
-
|
|
12
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
-
|
|
14
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
15
|
-
|
|
16
11
|
var _react = require("react");
|
|
17
|
-
|
|
18
12
|
var _react2 = require("@emotion/react");
|
|
19
|
-
|
|
20
13
|
var _dsExplorations = require("@atlaskit/ds-explorations");
|
|
21
|
-
|
|
22
14
|
var _usePlatformLeafEventHandler = require("@atlaskit/analytics-next/usePlatformLeafEventHandler");
|
|
23
|
-
|
|
24
15
|
var _noop = _interopRequireDefault(require("@atlaskit/ds-lib/noop"));
|
|
25
|
-
|
|
26
16
|
var _focusRing = _interopRequireDefault(require("@atlaskit/focus-ring"));
|
|
27
|
-
|
|
28
17
|
var _constants = require("./constants");
|
|
29
|
-
|
|
30
18
|
var _theme = require("./theme");
|
|
31
|
-
|
|
32
19
|
var _flagActions = _interopRequireDefault(require("./flag-actions"));
|
|
33
|
-
|
|
34
20
|
var _flagGroup = require("./flag-group");
|
|
35
|
-
|
|
36
21
|
var _internal = require("./internal");
|
|
37
|
-
|
|
38
22
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
39
|
-
|
|
40
23
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
41
|
-
|
|
42
24
|
var analyticsAttributes = {
|
|
43
25
|
componentName: 'flag',
|
|
44
26
|
packageName: "@atlaskit/flag",
|
|
45
|
-
packageVersion: "15.0.
|
|
27
|
+
packageVersion: "15.0.6"
|
|
46
28
|
};
|
|
29
|
+
|
|
47
30
|
/**
|
|
48
31
|
* __Flag__
|
|
49
32
|
*
|
|
@@ -54,42 +37,37 @@ var analyticsAttributes = {
|
|
|
54
37
|
* - [Code](https://atlassian.design/components/flag/code)
|
|
55
38
|
* - [Usage](https://atlassian.design/components/flag/usage)
|
|
56
39
|
*/
|
|
57
|
-
|
|
58
40
|
var Flag = function Flag(props) {
|
|
59
41
|
var _props$actions = props.actions,
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
42
|
+
actions = _props$actions === void 0 ? [] : _props$actions,
|
|
43
|
+
_props$appearance = props.appearance,
|
|
44
|
+
appearance = _props$appearance === void 0 ? _constants.DEFAULT_APPEARANCE : _props$appearance,
|
|
45
|
+
icon = props.icon,
|
|
46
|
+
title = props.title,
|
|
47
|
+
description = props.description,
|
|
48
|
+
linkComponent = props.linkComponent,
|
|
49
|
+
onMouseOver = props.onMouseOver,
|
|
50
|
+
_props$onFocus = props.onFocus,
|
|
51
|
+
onFocus = _props$onFocus === void 0 ? _noop.default : _props$onFocus,
|
|
52
|
+
onMouseOut = props.onMouseOut,
|
|
53
|
+
_props$onBlur = props.onBlur,
|
|
54
|
+
onBlur = _props$onBlur === void 0 ? _noop.default : _props$onBlur,
|
|
55
|
+
_props$onDismissed = props.onDismissed,
|
|
56
|
+
onDismissedProp = _props$onDismissed === void 0 ? _noop.default : _props$onDismissed,
|
|
57
|
+
testId = props.testId,
|
|
58
|
+
id = props.id,
|
|
59
|
+
analyticsContext = props.analyticsContext;
|
|
79
60
|
var _useFlagGroup = (0, _flagGroup.useFlagGroup)(),
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
61
|
+
onDismissedFromFlagGroup = _useFlagGroup.onDismissed,
|
|
62
|
+
isDismissAllowed = _useFlagGroup.isDismissAllowed;
|
|
83
63
|
var onDismissed = (0, _react.useCallback)(function (id, analyticsEvent) {
|
|
84
64
|
onDismissedProp(id, analyticsEvent);
|
|
85
65
|
onDismissedFromFlagGroup(id, analyticsEvent);
|
|
86
66
|
}, [onDismissedProp, onDismissedFromFlagGroup]);
|
|
87
|
-
|
|
88
67
|
var _useState = (0, _react.useState)(false),
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
68
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
69
|
+
isExpanded = _useState2[0],
|
|
70
|
+
setIsExpanded = _useState2[1];
|
|
93
71
|
var onDismissedAnalytics = (0, _usePlatformLeafEventHandler.usePlatformLeafEventHandler)(_objectSpread({
|
|
94
72
|
fn: onDismissed,
|
|
95
73
|
action: 'dismissed',
|
|
@@ -136,7 +114,7 @@ var Flag = function Flag(props) {
|
|
|
136
114
|
display: "block",
|
|
137
115
|
backgroundColor: _theme.flagBackgroundColor[appearance],
|
|
138
116
|
shadow: "overlay",
|
|
139
|
-
padding: "
|
|
117
|
+
padding: "space.200",
|
|
140
118
|
borderRadius: "normal",
|
|
141
119
|
overflow: "hidden",
|
|
142
120
|
layer: "flag",
|
|
@@ -148,7 +126,7 @@ var Flag = function Flag(props) {
|
|
|
148
126
|
tabIndex: 0,
|
|
149
127
|
testId: testId
|
|
150
128
|
}, autoDismissProps), (0, _react2.jsx)(_dsExplorations.UNSAFE_Inline, {
|
|
151
|
-
gap: "
|
|
129
|
+
gap: "space.200"
|
|
152
130
|
}, (0, _react2.jsx)(_dsExplorations.UNSAFE_Box, {
|
|
153
131
|
alignItems: "start",
|
|
154
132
|
UNSAFE_style: {
|
|
@@ -156,14 +134,14 @@ var Flag = function Flag(props) {
|
|
|
156
134
|
flexShrink: 0
|
|
157
135
|
}
|
|
158
136
|
}, icon), (0, _react2.jsx)(_dsExplorations.UNSAFE_Stack, {
|
|
159
|
-
gap: shouldRenderGap ? '
|
|
137
|
+
gap: shouldRenderGap ? 'space.100' : 'space.0' // Gap exists even when not expanded due to Expander internals always being in the DOM
|
|
160
138
|
,
|
|
161
139
|
UNSAFE_style: {
|
|
162
140
|
flexGrow: 1,
|
|
163
141
|
transition: "gap 0.3s"
|
|
164
142
|
}
|
|
165
143
|
}, (0, _react2.jsx)(_dsExplorations.UNSAFE_Inline, {
|
|
166
|
-
gap: "
|
|
144
|
+
gap: "space.100",
|
|
167
145
|
justifyContent: "spaceBetween"
|
|
168
146
|
}, (0, _react2.jsx)(_dsExplorations.UNSAFE_Box, {
|
|
169
147
|
display: "block",
|
|
@@ -172,10 +150,9 @@ var Flag = function Flag(props) {
|
|
|
172
150
|
}
|
|
173
151
|
}, (0, _react2.jsx)(_dsExplorations.UNSAFE_Text, {
|
|
174
152
|
color: textColor,
|
|
175
|
-
fontWeight: "
|
|
153
|
+
fontWeight: "semibold",
|
|
176
154
|
UNSAFE_style: {
|
|
177
155
|
overflowWrap: 'anywhere' // For cases where a single word is longer than the container (e.g. filenames)
|
|
178
|
-
|
|
179
156
|
}
|
|
180
157
|
}, title)), isDismissable ? !(isBold && !description && !actions.length) && (0, _react2.jsx)(_internal.DismissButton, {
|
|
181
158
|
testId: testId,
|
|
@@ -194,8 +171,8 @@ var Flag = function Flag(props) {
|
|
|
194
171
|
// height is defined as 5 lines maximum by design
|
|
195
172
|
overflow: 'auto',
|
|
196
173
|
overflowWrap: 'anywhere' // For cases where a single word is longer than the container (e.g. filenames)
|
|
197
|
-
|
|
198
174
|
},
|
|
175
|
+
|
|
199
176
|
testId: testId && "".concat(testId, "-description")
|
|
200
177
|
}, description), (0, _react2.jsx)(_flagActions.default, {
|
|
201
178
|
actions: actions,
|
|
@@ -204,6 +181,5 @@ var Flag = function Flag(props) {
|
|
|
204
181
|
testId: testId
|
|
205
182
|
}))))));
|
|
206
183
|
};
|
|
207
|
-
|
|
208
184
|
var _default = Flag;
|
|
209
185
|
exports.default = _default;
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
@@ -41,11 +40,7 @@ Object.defineProperty(exports, "withFlagsProvider", {
|
|
|
41
40
|
return _flagProvider.withFlagsProvider;
|
|
42
41
|
}
|
|
43
42
|
});
|
|
44
|
-
|
|
45
43
|
var _flag = _interopRequireDefault(require("./flag"));
|
|
46
|
-
|
|
47
44
|
var _autoDismissFlag = _interopRequireDefault(require("./auto-dismiss-flag"));
|
|
48
|
-
|
|
49
45
|
var _flagGroup = _interopRequireDefault(require("./flag-group"));
|
|
50
|
-
|
|
51
46
|
var _flagProvider = require("./flag-provider");
|