@atlaskit/flag 14.4.1

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.
Files changed (60) hide show
  1. package/CHANGELOG.md +1244 -0
  2. package/LICENSE +13 -0
  3. package/README.md +13 -0
  4. package/__perf__/autodismiss.tsx +18 -0
  5. package/__perf__/default.tsx +18 -0
  6. package/__perf__/withFlagGroup.tsx +20 -0
  7. package/auto-dismiss-flag/package.json +7 -0
  8. package/constants/package.json +7 -0
  9. package/dist/cjs/auto-dismiss-flag.js +89 -0
  10. package/dist/cjs/constants.js +8 -0
  11. package/dist/cjs/expander.js +41 -0
  12. package/dist/cjs/flag-actions.js +64 -0
  13. package/dist/cjs/flag-group.js +107 -0
  14. package/dist/cjs/flag-provider.js +119 -0
  15. package/dist/cjs/flag.js +219 -0
  16. package/dist/cjs/index.js +51 -0
  17. package/dist/cjs/theme.js +160 -0
  18. package/dist/cjs/types.js +10 -0
  19. package/dist/cjs/version.json +5 -0
  20. package/dist/es2019/auto-dismiss-flag.js +67 -0
  21. package/dist/es2019/constants.js +1 -0
  22. package/dist/es2019/expander.js +33 -0
  23. package/dist/es2019/flag-actions.js +73 -0
  24. package/dist/es2019/flag-group.js +130 -0
  25. package/dist/es2019/flag-provider.js +68 -0
  26. package/dist/es2019/flag.js +245 -0
  27. package/dist/es2019/index.js +4 -0
  28. package/dist/es2019/theme.js +119 -0
  29. package/dist/es2019/types.js +2 -0
  30. package/dist/es2019/version.json +5 -0
  31. package/dist/esm/auto-dismiss-flag.js +67 -0
  32. package/dist/esm/constants.js +1 -0
  33. package/dist/esm/expander.js +29 -0
  34. package/dist/esm/flag-actions.js +50 -0
  35. package/dist/esm/flag-group.js +85 -0
  36. package/dist/esm/flag-provider.js +92 -0
  37. package/dist/esm/flag.js +195 -0
  38. package/dist/esm/index.js +4 -0
  39. package/dist/esm/theme.js +129 -0
  40. package/dist/esm/types.js +2 -0
  41. package/dist/esm/version.json +5 -0
  42. package/dist/types/auto-dismiss-flag.d.ts +4 -0
  43. package/dist/types/constants.d.ts +2 -0
  44. package/dist/types/expander.d.ts +9 -0
  45. package/dist/types/flag-actions.d.ts +14 -0
  46. package/dist/types/flag-group.d.ts +27 -0
  47. package/dist/types/flag-provider.d.ts +26 -0
  48. package/dist/types/flag.d.ts +3 -0
  49. package/dist/types/index.d.ts +6 -0
  50. package/dist/types/theme.d.ts +9 -0
  51. package/dist/types/types.d.ts +79 -0
  52. package/expander/package.json +7 -0
  53. package/extract-react-types/show-flag-args.tsx +5 -0
  54. package/flag/package.json +7 -0
  55. package/flag-actions/package.json +7 -0
  56. package/flag-group/package.json +7 -0
  57. package/flag-provider/package.json +7 -0
  58. package/package.json +80 -0
  59. package/theme/package.json +7 -0
  60. package/types/package.json +7 -0
@@ -0,0 +1,219 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
+
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+
18
+ var _react = require("react");
19
+
20
+ var _core = require("@emotion/core");
21
+
22
+ var _chevronDown = _interopRequireDefault(require("@atlaskit/icon/glyph/chevron-down"));
23
+
24
+ var _chevronUp = _interopRequireDefault(require("@atlaskit/icon/glyph/chevron-up"));
25
+
26
+ var _cross = _interopRequireDefault(require("@atlaskit/icon/glyph/cross"));
27
+
28
+ var _components = _interopRequireDefault(require("@atlaskit/theme/components"));
29
+
30
+ var _constants = require("@atlaskit/theme/constants");
31
+
32
+ var _usePlatformLeafEventHandler = require("@atlaskit/analytics-next/usePlatformLeafEventHandler");
33
+
34
+ var _constants2 = require("./constants");
35
+
36
+ var _theme = require("./theme");
37
+
38
+ var _expander = _interopRequireDefault(require("./expander"));
39
+
40
+ var _flagActions = _interopRequireDefault(require("./flag-actions"));
41
+
42
+ var _flagGroup = require("./flag-group");
43
+
44
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
45
+
46
+ 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; }
47
+
48
+ 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) { (0, _defineProperty2.default)(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; }
49
+
50
+ function noop() {}
51
+
52
+ var analyticsAttributes = {
53
+ componentName: 'flag',
54
+ packageName: "@atlaskit/flag",
55
+ packageVersion: "14.4.1"
56
+ };
57
+ var gridSize = (0, _constants.gridSize)();
58
+ var doubleGridSize = gridSize * 2;
59
+ var headerHeight = gridSize * 4;
60
+
61
+ var Flag = function Flag(props) {
62
+ var _props$actions = props.actions,
63
+ actions = _props$actions === void 0 ? [] : _props$actions,
64
+ _props$appearance = props.appearance,
65
+ appearance = _props$appearance === void 0 ? _constants2.DEFAULT_APPEARANCE : _props$appearance,
66
+ icon = props.icon,
67
+ title = props.title,
68
+ description = props.description,
69
+ linkComponent = props.linkComponent,
70
+ onMouseOver = props.onMouseOver,
71
+ _props$onFocus = props.onFocus,
72
+ onFocus = _props$onFocus === void 0 ? noop : _props$onFocus,
73
+ onMouseOut = props.onMouseOut,
74
+ _props$onBlur = props.onBlur,
75
+ onBlur = _props$onBlur === void 0 ? noop : _props$onBlur,
76
+ _props$onDismissed = props.onDismissed,
77
+ onDismissedProp = _props$onDismissed === void 0 ? noop : _props$onDismissed,
78
+ testId = props.testId,
79
+ id = props.id,
80
+ analyticsContext = props.analyticsContext;
81
+
82
+ var _useFlagGroup = (0, _flagGroup.useFlagGroup)(),
83
+ onDismissedFromFlagGroup = _useFlagGroup.onDismissed,
84
+ isDismissAllowed = _useFlagGroup.isDismissAllowed;
85
+
86
+ var onDismissed = (0, _react.useCallback)(function (id, analyticsEvent) {
87
+ onDismissedProp(id, analyticsEvent);
88
+ onDismissedFromFlagGroup(id, analyticsEvent);
89
+ }, [onDismissedProp, onDismissedFromFlagGroup]);
90
+
91
+ var _useState = (0, _react.useState)(false),
92
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
93
+ isExpanded = _useState2[0],
94
+ setIsExpanded = _useState2[1];
95
+
96
+ var onDismissedAnalytics = (0, _usePlatformLeafEventHandler.usePlatformLeafEventHandler)(_objectSpread({
97
+ fn: onDismissed,
98
+ action: 'dismissed',
99
+ analyticsData: analyticsContext
100
+ }, analyticsAttributes));
101
+ var isBold = appearance !== _constants2.DEFAULT_APPEARANCE;
102
+ var renderToggleOrDismissButton = (0, _react.useCallback)(function (_ref) {
103
+ var mode = _ref.mode;
104
+
105
+ // If it is normal appearance a toggle button cannot be rendered
106
+ // Ensure onDismissed is defined and isDismissAllowed is true to render
107
+ // the dismiss button
108
+ if (!isBold && !isDismissAllowed) {
109
+ return null;
110
+ } // If it is bold then ensure there is a description or actions to render
111
+ // the toggle button
112
+
113
+
114
+ if (isBold && !description && !actions.length) {
115
+ return null;
116
+ }
117
+
118
+ var ButtonIcon = _cross.default;
119
+ var buttonLabel = 'Dismiss';
120
+
121
+ var buttonAction = function buttonAction() {
122
+ if (isDismissAllowed) {
123
+ onDismissedAnalytics(id);
124
+ }
125
+ };
126
+
127
+ var size = 'small';
128
+ var buttonTestId = testId && "".concat(testId, "-dismiss");
129
+ var a11yProps = {};
130
+
131
+ if (isBold) {
132
+ ButtonIcon = isExpanded ? _chevronUp.default : _chevronDown.default;
133
+ buttonLabel = isExpanded ? 'Collapse' : 'Expand';
134
+
135
+ buttonAction = function buttonAction() {
136
+ return setIsExpanded(!isExpanded);
137
+ };
138
+
139
+ size = 'large';
140
+ buttonTestId = testId && "".concat(testId, "-toggle");
141
+ a11yProps = {
142
+ 'aria-expanded': isExpanded
143
+ };
144
+ }
145
+
146
+ return (0, _core.jsx)("button", (0, _extends2.default)({
147
+ css: (0, _core.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n appearance: none;\n background: none;\n border: none;\n border-radius: ", "px;\n color: ", ";\n cursor: pointer;\n flex: 0 0 auto;\n line-height: 1;\n margin-left: ", "px;\n padding: 0;\n white-space: nowrap;\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px ", ";\n }\n "])), (0, _constants.borderRadius)(), (0, _theme.getFlagTextColor)(appearance, mode), gridSize, (0, _theme.getFlagFocusRingColor)(appearance, mode)),
148
+ onClick: buttonAction,
149
+ "data-testid": buttonTestId,
150
+ type: "button"
151
+ }, a11yProps), (0, _core.jsx)(ButtonIcon, {
152
+ label: buttonLabel,
153
+ size: size
154
+ }));
155
+ }, [actions.length, appearance, description, id, isBold, isDismissAllowed, isExpanded, onDismissedAnalytics, testId]);
156
+ (0, _react.useEffect)(function () {
157
+ // If buttons are removed as a prop, update isExpanded to be false
158
+ if (isBold && isExpanded && !description && !actions.length) {
159
+ setIsExpanded(false);
160
+ }
161
+ }, [actions.length, description, isBold, isExpanded]);
162
+ var onFocusAnalytics = (0, _usePlatformLeafEventHandler.usePlatformLeafEventHandler)(_objectSpread({
163
+ fn: onFocus,
164
+ action: 'focused',
165
+ analyticsData: analyticsContext
166
+ }, analyticsAttributes));
167
+ var onBlurAnalytics = (0, _usePlatformLeafEventHandler.usePlatformLeafEventHandler)(_objectSpread({
168
+ fn: onBlur,
169
+ action: 'blurred',
170
+ analyticsData: analyticsContext
171
+ }, analyticsAttributes));
172
+ var autoDismissProps = {
173
+ onMouseOver: onMouseOver,
174
+ onFocus: onFocusAnalytics,
175
+ onMouseOut: onMouseOut,
176
+ onBlur: onBlurAnalytics
177
+ };
178
+ var OptionalDismissButton = renderToggleOrDismissButton;
179
+ var boxShadow = "0 20px 32px -8px ".concat(_theme.flagShadowColor);
180
+
181
+ if (!isBold) {
182
+ boxShadow = "0 0 1px ".concat(_theme.flagBorderColor, ", ").concat(boxShadow);
183
+ }
184
+
185
+ return (0, _core.jsx)(_components.default.Consumer, null, function (tokens) {
186
+ var mode = tokens.mode;
187
+ var textColour = (0, _theme.getFlagTextColor)(appearance, mode);
188
+ return (0, _core.jsx)("div", (0, _extends2.default)({
189
+ css: (0, _core.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n background-color: ", ";\n border-radius: ", "px;\n box-shadow: ", ";\n color: ", ";\n transition: background-color 200ms;\n width: 100%;\n z-index: ", ";\n "])), (0, _theme.getFlagBackgroundColor)(appearance, mode), (0, _constants.borderRadius)(), boxShadow, textColour, _constants.layers.flag()),
190
+ role: "alert",
191
+ "data-testid": testId
192
+ }, autoDismissProps), (0, _core.jsx)("div", {
193
+ css: (0, _core.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n padding: ", "px;\n box-sizing: border-box;\n border-radius: ", "px;\n\n &:focus-visible {\n outline: none;\n box-shadow: 0 0 0 2px\n ", ";\n }\n\n @supports not selector(*:focus-visible) {\n &:focus {\n outline: none;\n box-shadow: 0 0 0 2px\n ", ";\n }\n }\n\n @media screen and (forced-colors: active),\n screen and (-ms-high-contrast: active) {\n &:focus-visible {\n outline: 1px solid;\n }\n }\n "])), doubleGridSize, (0, _constants.borderRadius)(), (0, _theme.getFlagFocusRingColor)(appearance, mode), (0, _theme.getFlagFocusRingColor)(appearance, mode)) // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex
194
+ ,
195
+ tabIndex: 0
196
+ }, (0, _core.jsx)("div", {
197
+ css: (0, _core.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n align-items: center;\n height: ", "px;\n "])), headerHeight)
198
+ }, icon, (0, _core.jsx)("span", {
199
+ css: (0, _core.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n color: ", ";\n font-weight: 600;\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n padding: 0 0 0 ", "px;\n "])), textColour, doubleGridSize)
200
+ }, title), (0, _core.jsx)(OptionalDismissButton, {
201
+ mode: mode
202
+ })), (0, _core.jsx)(_expander.default, {
203
+ isExpanded: !isBold || isExpanded,
204
+ testId: testId
205
+ }, description && (0, _core.jsx)("div", {
206
+ css: (0, _core.css)(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n color: ", ";\n word-wrap: break-word;\n overflow: auto;\n max-height: 100px; /* height is defined as 5 lines maximum by design */\n "])), textColour),
207
+ "data-testid": testId && "".concat(testId, "-description")
208
+ }, description), (0, _core.jsx)(_flagActions.default, {
209
+ actions: actions,
210
+ appearance: appearance,
211
+ linkComponent: linkComponent,
212
+ testId: testId,
213
+ mode: mode
214
+ }))));
215
+ });
216
+ };
217
+
218
+ var _default = Flag;
219
+ exports.default = _default;
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ Object.defineProperty(exports, "default", {
9
+ enumerable: true,
10
+ get: function get() {
11
+ return _flag.default;
12
+ }
13
+ });
14
+ Object.defineProperty(exports, "AutoDismissFlag", {
15
+ enumerable: true,
16
+ get: function get() {
17
+ return _autoDismissFlag.default;
18
+ }
19
+ });
20
+ Object.defineProperty(exports, "FlagGroup", {
21
+ enumerable: true,
22
+ get: function get() {
23
+ return _flagGroup.default;
24
+ }
25
+ });
26
+ Object.defineProperty(exports, "useFlags", {
27
+ enumerable: true,
28
+ get: function get() {
29
+ return _flagProvider.useFlags;
30
+ }
31
+ });
32
+ Object.defineProperty(exports, "withFlagsProvider", {
33
+ enumerable: true,
34
+ get: function get() {
35
+ return _flagProvider.withFlagsProvider;
36
+ }
37
+ });
38
+ Object.defineProperty(exports, "FlagsProvider", {
39
+ enumerable: true,
40
+ get: function get() {
41
+ return _flagProvider.FlagsProvider;
42
+ }
43
+ });
44
+
45
+ var _flag = _interopRequireDefault(require("./flag"));
46
+
47
+ var _autoDismissFlag = _interopRequireDefault(require("./auto-dismiss-flag"));
48
+
49
+ var _flagGroup = _interopRequireDefault(require("./flag-group"));
50
+
51
+ var _flagProvider = require("./flag-provider");
@@ -0,0 +1,160 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.getActionColor = exports.getActionBackground = exports.getFlagFocusRingColor = exports.flagShadowColor = exports.getFlagTextColor = exports.flagBorderColor = exports.getFlagBackgroundColor = void 0;
9
+
10
+ var colors = _interopRequireWildcard(require("@atlaskit/theme/colors"));
11
+
12
+ 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); }
13
+
14
+ 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; }
15
+
16
+ var flagBackgroundColor = {
17
+ error: {
18
+ light: colors.R400,
19
+ dark: colors.R300
20
+ },
21
+ info: {
22
+ light: colors.N500,
23
+ dark: colors.N500
24
+ },
25
+ normal: {
26
+ light: colors.N0,
27
+ dark: colors.DN50
28
+ },
29
+ success: {
30
+ light: colors.G400,
31
+ dark: colors.G300
32
+ },
33
+ warning: {
34
+ light: colors.Y200,
35
+ dark: colors.Y300
36
+ }
37
+ };
38
+
39
+ var getFlagBackgroundColor = function getFlagBackgroundColor(appearance, mode) {
40
+ return flagBackgroundColor[appearance][mode];
41
+ };
42
+
43
+ exports.getFlagBackgroundColor = getFlagBackgroundColor;
44
+ var flagBorderColor = colors.N60A;
45
+ exports.flagBorderColor = flagBorderColor;
46
+ var flagTextColor = {
47
+ error: {
48
+ light: colors.N0,
49
+ dark: colors.DN40
50
+ },
51
+ info: {
52
+ light: colors.N0,
53
+ dark: colors.DN600
54
+ },
55
+ normal: {
56
+ light: colors.N500,
57
+ dark: colors.DN600
58
+ },
59
+ success: {
60
+ light: colors.N0,
61
+ dark: colors.DN40
62
+ },
63
+ warning: {
64
+ light: colors.N700,
65
+ dark: colors.DN40
66
+ }
67
+ };
68
+
69
+ var getFlagTextColor = function getFlagTextColor(appearance, mode) {
70
+ return flagTextColor[appearance][mode];
71
+ };
72
+
73
+ exports.getFlagTextColor = getFlagTextColor;
74
+ var flagShadowColor = colors.N50A;
75
+ exports.flagShadowColor = flagShadowColor;
76
+ var flagFocusRingColor = {
77
+ error: {
78
+ light: colors.N40,
79
+ dark: colors.N40
80
+ },
81
+ info: {
82
+ light: colors.N40,
83
+ dark: colors.N40
84
+ },
85
+ normal: {
86
+ light: colors.B100,
87
+ dark: colors.B100
88
+ },
89
+ success: {
90
+ light: colors.N40,
91
+ dark: colors.N40
92
+ },
93
+ warning: {
94
+ light: colors.N200,
95
+ dark: colors.N200
96
+ }
97
+ };
98
+
99
+ var getFlagFocusRingColor = function getFlagFocusRingColor(appearance, mode) {
100
+ return flagFocusRingColor[appearance][mode];
101
+ };
102
+
103
+ exports.getFlagFocusRingColor = getFlagFocusRingColor;
104
+ var lightButtonBackground = 'rgba(255, 255, 255, 0.08)';
105
+ var actionBackground = {
106
+ success: {
107
+ light: lightButtonBackground,
108
+ dark: colors.N30A
109
+ },
110
+ info: {
111
+ light: lightButtonBackground,
112
+ dark: lightButtonBackground
113
+ },
114
+ error: {
115
+ light: lightButtonBackground,
116
+ dark: colors.N30A
117
+ },
118
+ warning: {
119
+ light: colors.N30A,
120
+ dark: colors.N30A
121
+ },
122
+ normal: {
123
+ light: 'none',
124
+ dark: 'none'
125
+ }
126
+ };
127
+ var actionColor = {
128
+ success: {
129
+ light: colors.N0,
130
+ dark: colors.DN40
131
+ },
132
+ info: {
133
+ light: colors.N0,
134
+ dark: colors.DN600
135
+ },
136
+ error: {
137
+ light: colors.N0,
138
+ dark: colors.DN600
139
+ },
140
+ warning: {
141
+ light: colors.N700,
142
+ dark: colors.DN40
143
+ },
144
+ normal: {
145
+ light: colors.B400,
146
+ dark: colors.B100
147
+ }
148
+ };
149
+
150
+ var getActionBackground = function getActionBackground(appearance, mode) {
151
+ return actionBackground[appearance][mode];
152
+ };
153
+
154
+ exports.getActionBackground = getActionBackground;
155
+
156
+ var getActionColor = function getActionColor(appearance, mode) {
157
+ return actionColor[appearance][mode];
158
+ };
159
+
160
+ exports.getActionColor = getActionColor;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AppearanceArray = void 0;
7
+ // exported for testing - keep in sync from `type AppearanceTypes`
8
+ var AppearanceArray = ['error', 'info', 'normal', 'success', 'warning']; // CreateFlagsArg makes id optional so define this prop separately
9
+
10
+ exports.AppearanceArray = AppearanceArray;
@@ -0,0 +1,5 @@
1
+ {
2
+ "name": "@atlaskit/flag",
3
+ "version": "14.4.1",
4
+ "sideEffects": false
5
+ }