@atlaskit/dropdown-menu 10.1.8 → 11.0.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.
Files changed (211) hide show
  1. package/CHANGELOG.md +148 -0
  2. package/__perf__/default.tsx +1 -1
  3. package/__perf__/dropdown-menu.tsx +216 -0
  4. package/codemods/11.0.0-lite-mode.tsx +39 -0
  5. package/codemods/__tests__/11.0.0-lite-mode.test.tsx +48 -0
  6. package/codemods/__tests__/convert-position.test.tsx +88 -0
  7. package/codemods/__tests__/convert-triggerType.test.tsx +100 -0
  8. package/codemods/__tests__/deprecate-items.test.tsx +108 -0
  9. package/codemods/__tests__/deprecate-onItemActivated.test.tsx +108 -0
  10. package/codemods/__tests__/deprecate-onPositioned.test.tsx +108 -0
  11. package/codemods/__tests__/deprecate-shouldFitContainer.tsx +108 -0
  12. package/codemods/__tests__/rename-imports.tsx +136 -0
  13. package/codemods/__tests__/replace-position-to-placement.test.tsx +84 -0
  14. package/codemods/__tests__/replace-shouldAllowMultipleLine.test.tsx +122 -0
  15. package/codemods/__tests__/update-component-callsites.tsx +66 -0
  16. package/codemods/migrates/convert-trigger-type.tsx +57 -0
  17. package/codemods/migrates/deprecate-items.tsx +9 -0
  18. package/codemods/migrates/deprecate-onItemActivated.tsx +9 -0
  19. package/codemods/migrates/deprecate-onPositioned.tsx +9 -0
  20. package/codemods/migrates/deprecate-shouldFitContainer.tsx +9 -0
  21. package/codemods/migrates/rename-imports.tsx +22 -0
  22. package/codemods/migrates/replace-position-to-placement.tsx +38 -0
  23. package/codemods/migrates/replace-shouldAllowMultiline.tsx +47 -0
  24. package/codemods/migrates/update-component-callsites.tsx +13 -0
  25. package/codemods/utils/convert-position.tsx +24 -0
  26. package/codemods/utils/create-rename-import.tsx +41 -0
  27. package/codemods/utils/create-update-callsite.tsx +32 -0
  28. package/dist/cjs/checkbox/dropdown-item-checkbox-group.js +31 -0
  29. package/dist/cjs/checkbox/dropdown-item-checkbox.js +108 -0
  30. package/dist/cjs/dropdown-menu-item-group.js +22 -0
  31. package/dist/cjs/dropdown-menu-item.js +67 -0
  32. package/dist/cjs/dropdown-menu.js +194 -0
  33. package/dist/cjs/index.js +21 -29
  34. package/dist/cjs/{components/item/DropdownItemRadio.js → internal/components/focus-manager.js} +40 -9
  35. package/dist/cjs/internal/components/menu-wrapper.js +68 -0
  36. package/dist/cjs/internal/context/checkbox-group-context.js +14 -0
  37. package/dist/cjs/internal/context/selection-store.js +76 -0
  38. package/dist/cjs/internal/hooks/use-checkbox-state.js +68 -0
  39. package/dist/cjs/internal/hooks/use-radio-state.js +84 -0
  40. package/dist/cjs/internal/hooks/use-register-item-with-focus-manager.js +29 -0
  41. package/dist/cjs/internal/utils/get-icon-colors.js +25 -0
  42. package/dist/cjs/internal/utils/handle-focus.js +58 -0
  43. package/dist/cjs/internal/utils/is-checkbox-item.js +11 -0
  44. package/dist/cjs/internal/utils/is-radio-item.js +11 -0
  45. package/dist/cjs/internal/utils/is-voice-over-supported.js +23 -0
  46. package/dist/cjs/internal/utils/reset-options-in-group.js +23 -0
  47. package/dist/cjs/radio/dropdown-item-radio-group.js +89 -0
  48. package/dist/cjs/radio/dropdown-item-radio.js +108 -0
  49. package/dist/cjs/version.json +1 -1
  50. package/dist/es2019/checkbox/dropdown-item-checkbox-group.js +21 -0
  51. package/dist/es2019/checkbox/dropdown-item-checkbox.js +67 -0
  52. package/dist/es2019/dropdown-menu-item-group.js +11 -0
  53. package/dist/es2019/dropdown-menu-item.js +49 -0
  54. package/dist/es2019/dropdown-menu.js +151 -0
  55. package/dist/es2019/index.js +7 -11
  56. package/dist/es2019/internal/components/focus-manager.js +40 -0
  57. package/dist/es2019/internal/components/menu-wrapper.js +44 -0
  58. package/dist/es2019/internal/context/checkbox-group-context.js +6 -0
  59. package/dist/es2019/internal/context/selection-store.js +54 -0
  60. package/dist/es2019/internal/hooks/use-checkbox-state.js +45 -0
  61. package/dist/es2019/internal/hooks/use-radio-state.js +56 -0
  62. package/dist/es2019/internal/hooks/use-register-item-with-focus-manager.js +19 -0
  63. package/dist/es2019/internal/utils/get-icon-colors.js +17 -0
  64. package/dist/es2019/internal/utils/handle-focus.js +48 -0
  65. package/dist/es2019/internal/utils/is-checkbox-item.js +4 -0
  66. package/dist/es2019/internal/utils/is-radio-item.js +4 -0
  67. package/dist/es2019/internal/utils/is-voice-over-supported.js +11 -0
  68. package/dist/es2019/internal/utils/reset-options-in-group.js +7 -0
  69. package/dist/es2019/radio/dropdown-item-radio-group.js +56 -0
  70. package/dist/es2019/radio/dropdown-item-radio.js +67 -0
  71. package/dist/es2019/version.json +1 -1
  72. package/dist/esm/checkbox/dropdown-item-checkbox-group.js +19 -0
  73. package/dist/esm/checkbox/dropdown-item-checkbox.js +81 -0
  74. package/dist/esm/dropdown-menu-item-group.js +11 -0
  75. package/dist/esm/dropdown-menu-item.js +52 -0
  76. package/dist/esm/dropdown-menu.js +168 -0
  77. package/dist/esm/index.js +7 -11
  78. package/dist/esm/internal/components/focus-manager.js +39 -0
  79. package/dist/esm/internal/components/menu-wrapper.js +45 -0
  80. package/dist/esm/internal/context/checkbox-group-context.js +6 -0
  81. package/dist/esm/internal/context/selection-store.js +58 -0
  82. package/dist/esm/internal/hooks/use-checkbox-state.js +55 -0
  83. package/dist/esm/internal/hooks/use-radio-state.js +70 -0
  84. package/dist/esm/internal/hooks/use-register-item-with-focus-manager.js +19 -0
  85. package/dist/esm/internal/utils/get-icon-colors.js +17 -0
  86. package/dist/esm/internal/utils/handle-focus.js +47 -0
  87. package/dist/esm/internal/utils/is-checkbox-item.js +4 -0
  88. package/dist/esm/internal/utils/is-radio-item.js +4 -0
  89. package/dist/esm/internal/utils/is-voice-over-supported.js +15 -0
  90. package/dist/esm/internal/utils/reset-options-in-group.js +13 -0
  91. package/dist/esm/radio/dropdown-item-radio-group.js +66 -0
  92. package/dist/esm/radio/dropdown-item-radio.js +81 -0
  93. package/dist/esm/version.json +1 -1
  94. package/dist/types/checkbox/dropdown-item-checkbox-group.d.ts +16 -0
  95. package/dist/types/checkbox/dropdown-item-checkbox.d.ts +13 -0
  96. package/dist/types/dropdown-menu-item-group.d.ts +11 -0
  97. package/dist/types/dropdown-menu-item.d.ts +13 -0
  98. package/dist/types/dropdown-menu.d.ts +13 -0
  99. package/dist/types/index.d.ts +8 -10
  100. package/dist/types/internal/components/focus-manager.d.ts +19 -0
  101. package/dist/types/internal/components/menu-wrapper.d.ts +11 -0
  102. package/dist/types/internal/context/checkbox-group-context.d.ts +5 -0
  103. package/dist/types/internal/context/selection-store.d.ts +27 -0
  104. package/dist/types/internal/hooks/use-checkbox-state.d.ts +14 -0
  105. package/dist/types/internal/hooks/use-radio-state.d.ts +9 -0
  106. package/dist/types/internal/hooks/use-register-item-with-focus-manager.d.ts +4 -0
  107. package/dist/types/internal/utils/get-icon-colors.d.ts +8 -0
  108. package/dist/types/internal/utils/handle-focus.d.ts +2 -0
  109. package/dist/types/internal/utils/is-checkbox-item.d.ts +1 -0
  110. package/dist/types/internal/utils/is-radio-item.d.ts +1 -0
  111. package/dist/types/internal/utils/is-voice-over-supported.d.ts +2 -0
  112. package/dist/types/internal/utils/reset-options-in-group.d.ts +4 -0
  113. package/dist/types/radio/dropdown-item-radio-group.d.ts +25 -0
  114. package/dist/types/radio/dropdown-item-radio.d.ts +13 -0
  115. package/dist/types/types.d.ts +254 -79
  116. package/package.json +39 -23
  117. package/dist/cjs/components/DropdownMenu.js +0 -230
  118. package/dist/cjs/components/DropdownMenuStateless.js +0 -523
  119. package/dist/cjs/components/context/DropdownItemClickManager.js +0 -72
  120. package/dist/cjs/components/context/DropdownItemFocusManager.js +0 -178
  121. package/dist/cjs/components/context/DropdownItemSelectionCache.js +0 -131
  122. package/dist/cjs/components/context/DropdownItemSelectionManager.js +0 -185
  123. package/dist/cjs/components/group/DropdownItemGroup.js +0 -61
  124. package/dist/cjs/components/group/DropdownItemGroupCheckbox.js +0 -16
  125. package/dist/cjs/components/group/DropdownItemGroupRadio.js +0 -16
  126. package/dist/cjs/components/group/ert-group-selection.js +0 -8
  127. package/dist/cjs/components/hoc/withItemSelectionManager.js +0 -66
  128. package/dist/cjs/components/hoc/withToggleInteraction.js +0 -175
  129. package/dist/cjs/components/item/DropdownItem.js +0 -19
  130. package/dist/cjs/components/item/DropdownItemCheckbox.js +0 -28
  131. package/dist/cjs/components/item/ert-item-checkbox.js +0 -8
  132. package/dist/cjs/components/item/ert-item-radio.js +0 -8
  133. package/dist/cjs/components/item/ert-item.js +0 -8
  134. package/dist/cjs/styled/WidthConstrainer.js +0 -21
  135. package/dist/cjs/util/contextNamespace.js +0 -19
  136. package/dist/cjs/util/getDisplayName.js +0 -14
  137. package/dist/cjs/util/keys.js +0 -18
  138. package/dist/cjs/util/safeContextCall.js +0 -27
  139. package/dist/cjs/util/supportsVoiceover.js +0 -17
  140. package/dist/es2019/components/DropdownMenu.js +0 -156
  141. package/dist/es2019/components/DropdownMenuStateless.js +0 -459
  142. package/dist/es2019/components/context/DropdownItemClickManager.js +0 -31
  143. package/dist/es2019/components/context/DropdownItemFocusManager.js +0 -134
  144. package/dist/es2019/components/context/DropdownItemSelectionCache.js +0 -68
  145. package/dist/es2019/components/context/DropdownItemSelectionManager.js +0 -140
  146. package/dist/es2019/components/group/DropdownItemGroup.js +0 -17
  147. package/dist/es2019/components/group/DropdownItemGroupCheckbox.js +0 -3
  148. package/dist/es2019/components/group/DropdownItemGroupRadio.js +0 -3
  149. package/dist/es2019/components/group/ert-group-selection.js +0 -1
  150. package/dist/es2019/components/hoc/withItemSelectionManager.js +0 -20
  151. package/dist/es2019/components/hoc/withToggleInteraction.js +0 -119
  152. package/dist/es2019/components/item/DropdownItem.js +0 -3
  153. package/dist/es2019/components/item/DropdownItemCheckbox.js +0 -5
  154. package/dist/es2019/components/item/DropdownItemRadio.js +0 -5
  155. package/dist/es2019/components/item/ert-item-checkbox.js +0 -1
  156. package/dist/es2019/components/item/ert-item-radio.js +0 -1
  157. package/dist/es2019/components/item/ert-item.js +0 -1
  158. package/dist/es2019/styled/WidthConstrainer.js +0 -6
  159. package/dist/es2019/util/contextNamespace.js +0 -6
  160. package/dist/es2019/util/getDisplayName.js +0 -4
  161. package/dist/es2019/util/keys.js +0 -6
  162. package/dist/es2019/util/safeContextCall.js +0 -10
  163. package/dist/es2019/util/supportsVoiceover.js +0 -5
  164. package/dist/esm/components/DropdownMenu.js +0 -215
  165. package/dist/esm/components/DropdownMenuStateless.js +0 -516
  166. package/dist/esm/components/context/DropdownItemClickManager.js +0 -59
  167. package/dist/esm/components/context/DropdownItemFocusManager.js +0 -164
  168. package/dist/esm/components/context/DropdownItemSelectionCache.js +0 -113
  169. package/dist/esm/components/context/DropdownItemSelectionManager.js +0 -174
  170. package/dist/esm/components/group/DropdownItemGroup.js +0 -43
  171. package/dist/esm/components/group/DropdownItemGroupCheckbox.js +0 -3
  172. package/dist/esm/components/group/DropdownItemGroupRadio.js +0 -3
  173. package/dist/esm/components/group/ert-group-selection.js +0 -1
  174. package/dist/esm/components/hoc/withItemSelectionManager.js +0 -47
  175. package/dist/esm/components/hoc/withToggleInteraction.js +0 -155
  176. package/dist/esm/components/item/DropdownItem.js +0 -3
  177. package/dist/esm/components/item/DropdownItemCheckbox.js +0 -7
  178. package/dist/esm/components/item/DropdownItemRadio.js +0 -7
  179. package/dist/esm/components/item/ert-item-checkbox.js +0 -1
  180. package/dist/esm/components/item/ert-item-radio.js +0 -1
  181. package/dist/esm/components/item/ert-item.js +0 -1
  182. package/dist/esm/styled/WidthConstrainer.js +0 -9
  183. package/dist/esm/util/contextNamespace.js +0 -8
  184. package/dist/esm/util/getDisplayName.js +0 -6
  185. package/dist/esm/util/keys.js +0 -6
  186. package/dist/esm/util/safeContextCall.js +0 -18
  187. package/dist/esm/util/supportsVoiceover.js +0 -9
  188. package/dist/types/components/DropdownMenu.d.ts +0 -36
  189. package/dist/types/components/DropdownMenuStateless.d.ts +0 -82
  190. package/dist/types/components/context/DropdownItemClickManager.d.ts +0 -19
  191. package/dist/types/components/context/DropdownItemFocusManager.d.ts +0 -35
  192. package/dist/types/components/context/DropdownItemSelectionCache.d.ts +0 -31
  193. package/dist/types/components/context/DropdownItemSelectionManager.d.ts +0 -34
  194. package/dist/types/components/group/DropdownItemGroup.d.ts +0 -12
  195. package/dist/types/components/group/DropdownItemGroupCheckbox.d.ts +0 -55
  196. package/dist/types/components/group/DropdownItemGroupRadio.d.ts +0 -55
  197. package/dist/types/components/group/ert-group-selection.d.ts +0 -6
  198. package/dist/types/components/hoc/withItemSelectionManager.d.ts +0 -63
  199. package/dist/types/components/hoc/withToggleInteraction.d.ts +0 -98
  200. package/dist/types/components/item/DropdownItem.d.ts +0 -65
  201. package/dist/types/components/item/DropdownItemCheckbox.d.ts +0 -80
  202. package/dist/types/components/item/DropdownItemRadio.d.ts +0 -80
  203. package/dist/types/components/item/ert-item-checkbox.d.ts +0 -2
  204. package/dist/types/components/item/ert-item-radio.d.ts +0 -2
  205. package/dist/types/components/item/ert-item.d.ts +0 -2
  206. package/dist/types/styled/WidthConstrainer.d.ts +0 -7
  207. package/dist/types/util/contextNamespace.d.ts +0 -4
  208. package/dist/types/util/getDisplayName.d.ts +0 -3
  209. package/dist/types/util/keys.d.ts +0 -6
  210. package/dist/types/util/safeContextCall.d.ts +0 -6
  211. package/dist/types/util/supportsVoiceover.d.ts +0 -2
@@ -1,66 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.default = void 0;
11
-
12
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
-
14
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
-
16
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
-
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
-
22
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
-
24
- var _react = _interopRequireWildcard(require("react"));
25
-
26
- var _DropdownItemSelectionManager = _interopRequireDefault(require("../context/DropdownItemSelectionManager"));
27
-
28
- 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); }
29
-
30
- 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; }
31
-
32
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
33
-
34
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
35
-
36
- // HOC that typically wraps @atlaskit/item/ItemGroup
37
- var withDropdownItemSelectionManager = function withDropdownItemSelectionManager(WrappedComponent, selectionBehavior) {
38
- return /*#__PURE__*/function (_Component) {
39
- (0, _inherits2.default)(WithDropdownItemSelectionManager, _Component);
40
-
41
- var _super = _createSuper(WithDropdownItemSelectionManager);
42
-
43
- function WithDropdownItemSelectionManager() {
44
- (0, _classCallCheck2.default)(this, WithDropdownItemSelectionManager);
45
- return _super.apply(this, arguments);
46
- }
47
-
48
- (0, _createClass2.default)(WithDropdownItemSelectionManager, [{
49
- key: "render",
50
- value: function render() {
51
- var _this$props = this.props,
52
- children = _this$props.children,
53
- id = _this$props.id,
54
- otherProps = (0, _objectWithoutProperties2.default)(_this$props, ["children", "id"]);
55
- return /*#__PURE__*/_react.default.createElement(WrappedComponent, otherProps, /*#__PURE__*/_react.default.createElement(_DropdownItemSelectionManager.default, {
56
- groupId: id,
57
- behavior: selectionBehavior
58
- }, children));
59
- }
60
- }]);
61
- return WithDropdownItemSelectionManager;
62
- }(_react.Component);
63
- };
64
-
65
- var _default = withDropdownItemSelectionManager;
66
- exports.default = _default;
@@ -1,175 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.default = void 0;
11
-
12
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
-
14
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
-
16
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
-
18
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
19
-
20
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
-
22
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
-
24
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
-
26
- var _defineProperty3 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
27
-
28
- var _react = _interopRequireWildcard(require("react"));
29
-
30
- var _propTypes = _interopRequireDefault(require("prop-types"));
31
-
32
- var _colors = require("@atlaskit/theme/colors");
33
-
34
- var _contextNamespace = require("../../util/contextNamespace");
35
-
36
- var _getDisplayName = _interopRequireDefault(require("../../util/getDisplayName"));
37
-
38
- var _keys = require("../../util/keys");
39
-
40
- var _safeContextCall = _interopRequireDefault(require("../../util/safeContextCall"));
41
-
42
- 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); }
43
-
44
- 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; }
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, _defineProperty3.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 _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
51
-
52
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
53
-
54
- // HOC that typically wraps @atlaskit/item
55
- var withToggleInteraction = function withToggleInteraction(WrappedComponent, SelectionIcon, getAriaRole) {
56
- var _class, _temp;
57
-
58
- return _temp = _class = /*#__PURE__*/function (_Component) {
59
- (0, _inherits2.default)(WithToggleInteraction, _Component);
60
-
61
- var _super = _createSuper(WithToggleInteraction);
62
-
63
- function WithToggleInteraction() {
64
- var _this;
65
-
66
- (0, _classCallCheck2.default)(this, WithToggleInteraction);
67
-
68
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
69
- args[_key] = arguments[_key];
70
- }
71
-
72
- _this = _super.call.apply(_super, [this].concat(args));
73
- (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "getIconColors", function () {
74
- var isSelected = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
75
-
76
- if (isSelected) {
77
- return {
78
- primary: _colors.B400,
79
- secondary: _colors.N40
80
- };
81
- }
82
-
83
- return {
84
- primary: _colors.N40,
85
- secondary: _colors.N40
86
- };
87
- });
88
- (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "warnIfUseControlledAndUncontrolledState", function () {
89
- if (process.env.NODE_ENV !== 'production' && !process.env.CI) {
90
- if (_this.props.defaultSelected && _this.props.isSelected) {
91
- // eslint-disable-next-line no-console
92
- console.warn('DropdownItem defaultSelected and isSelected props should not be used at the same time.');
93
- }
94
- }
95
- });
96
- (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "callContextFn", (0, _safeContextCall.default)((0, _assertThisInitialized2.default)(_this), _contextNamespace.selectionManagerContext));
97
- (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "handleKeyboard", function (event) {
98
- var key = event.key;
99
-
100
- if (key === _keys.KEY_ENTER || key === _keys.KEY_SPACE) {
101
- // We prevent default here to avoid page scroll
102
- event.preventDefault();
103
-
104
- _this.handleItemActivated(event);
105
- }
106
- });
107
- (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "handleItemActivated", function (event) {
108
- if (_this.props.onClick) {
109
- _this.props.onClick(event);
110
- }
111
-
112
- _this.callContextFn('itemClicked', _this.props.id);
113
- });
114
- (0, _defineProperty3.default)((0, _assertThisInitialized2.default)(_this), "isSelectedInDropdown", function () {
115
- return _this.callContextFn('isItemSelected', _this.props.id);
116
- });
117
- return _this;
118
- }
119
-
120
- (0, _createClass2.default)(WithToggleInteraction, [{
121
- key: "componentDidMount",
122
- value: function componentDidMount() {
123
- var _this$props = this.props,
124
- defaultSelected = _this$props.defaultSelected,
125
- isSelected = _this$props.isSelected,
126
- id = _this$props.id;
127
- this.warnIfUseControlledAndUncontrolledState();
128
- this.callContextFn('setItemSelected', id, isSelected, defaultSelected);
129
- }
130
- }, {
131
- key: "UNSAFE_componentWillReceiveProps",
132
- value: function UNSAFE_componentWillReceiveProps(nextProps) {
133
- var id = nextProps.id,
134
- defaultSelected = nextProps.defaultSelected,
135
- isSelected = nextProps.isSelected;
136
-
137
- if (this.props.isSelected !== isSelected) {
138
- this.callContextFn('setItemSelected', id, isSelected, defaultSelected);
139
- }
140
- }
141
- }, {
142
- key: "render",
143
- value: function render() {
144
- var _this$props2 = this.props,
145
- children = _this$props2.children,
146
- otherProps = (0, _objectWithoutProperties2.default)(_this$props2, ["children"]);
147
- var isSelected = this.isSelectedInDropdown();
148
- var iconColors = this.getIconColors(!!isSelected);
149
- var ariaRole = getAriaRole();
150
-
151
- var wrappedCompProps = _objectSpread(_objectSpread({}, otherProps), {}, {
152
- role: ariaRole,
153
- 'aria-checked': isSelected,
154
- isSelected: isSelected,
155
- onClick: this.handleItemActivated,
156
- onKeyDown: this.handleKeyboard,
157
- elemBefore: /*#__PURE__*/_react.default.createElement(SelectionIcon, {
158
- primaryColor: iconColors.primary,
159
- secondaryColor: iconColors.secondary,
160
- size: "medium",
161
- label: ""
162
- })
163
- });
164
-
165
- return /*#__PURE__*/_react.default.createElement(WrappedComponent, wrappedCompProps, children);
166
- }
167
- }]);
168
- return WithToggleInteraction;
169
- }(_react.Component), (0, _defineProperty3.default)(_class, "displayName", "WithToggleInteraction(".concat((0, _getDisplayName.default)(WrappedComponent), ")")), (0, _defineProperty3.default)(_class, "defaultProps", {
170
- onClick: function onClick() {}
171
- }), (0, _defineProperty3.default)(_class, "contextTypes", (0, _defineProperty3.default)({}, _contextNamespace.selectionManagerContext, _propTypes.default.object.isRequired)), _temp;
172
- };
173
-
174
- var _default = withToggleInteraction;
175
- exports.default = _default;
@@ -1,19 +0,0 @@
1
- "use strict";
2
-
3
- var _typeof = require("@babel/runtime/helpers/typeof");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _item = _interopRequireWildcard(require("@atlaskit/item"));
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
- // We need to type this with the above type - currently this component is has "any" for its props.
17
- var _default = (0, _item.withItemClick)((0, _item.withItemFocus)(_item.default));
18
-
19
- exports.default = _default;
@@ -1,28 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.default = void 0;
11
-
12
- var _checkbox = _interopRequireDefault(require("@atlaskit/icon/glyph/checkbox"));
13
-
14
- var _item = _interopRequireWildcard(require("@atlaskit/item"));
15
-
16
- var _supportsVoiceover = _interopRequireDefault(require("../../util/supportsVoiceover"));
17
-
18
- var _withToggleInteraction = _interopRequireDefault(require("../hoc/withToggleInteraction"));
19
-
20
- 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); }
21
-
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; }
23
-
24
- var _default = (0, _withToggleInteraction.default)((0, _item.withItemFocus)(_item.default), _checkbox.default, function () {
25
- return (0, _supportsVoiceover.default)() ? 'checkbox' : 'menuitemcheckbox';
26
- });
27
-
28
- exports.default = _default;
@@ -1,8 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = _default;
7
-
8
- function _default(_) {}
@@ -1,8 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = _default;
7
-
8
- function _default(_) {}
@@ -1,8 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = _default;
7
-
8
- function _default(_) {}
@@ -1,21 +0,0 @@
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 _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
-
12
- var _styledComponents = _interopRequireDefault(require("styled-components"));
13
-
14
- var _templateObject;
15
-
16
- var _default = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n"])), function (_ref) {
17
- var shouldFitContainer = _ref.shouldFitContainer;
18
- return shouldFitContainer ? '' : 'max-width: 300px;';
19
- });
20
-
21
- exports.default = _default;
@@ -1,19 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.clickManagerContext = exports.selectionManagerContext = exports.selectionCacheContext = exports.focusManagerContext = void 0;
7
-
8
- var prefix = function prefix(key) {
9
- return "@atlaskit-private-do-not-use/dropdown-menu:".concat(key);
10
- };
11
-
12
- var focusManagerContext = prefix('focus-manager');
13
- exports.focusManagerContext = focusManagerContext;
14
- var selectionCacheContext = prefix('selection-cache');
15
- exports.selectionCacheContext = selectionCacheContext;
16
- var selectionManagerContext = prefix('selection-manager');
17
- exports.selectionManagerContext = selectionManagerContext;
18
- var clickManagerContext = prefix('click-manager');
19
- exports.clickManagerContext = clickManagerContext;
@@ -1,14 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- // from https://facebook.github.io/react/docs/higher-order-components.html
9
- var getDisplayName = function getDisplayName(WrappedComponent) {
10
- return WrappedComponent.displayName || WrappedComponent.name || 'Component';
11
- };
12
-
13
- var _default = getDisplayName;
14
- exports.default = _default;
@@ -1,18 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.KEY_ESC = exports.KEY_TAB = exports.KEY_ENTER = exports.KEY_SPACE = exports.KEY_DOWN = exports.KEY_UP = void 0;
7
- var KEY_UP = 'ArrowUp';
8
- exports.KEY_UP = KEY_UP;
9
- var KEY_DOWN = 'ArrowDown';
10
- exports.KEY_DOWN = KEY_DOWN;
11
- var KEY_SPACE = ' ';
12
- exports.KEY_SPACE = KEY_SPACE;
13
- var KEY_ENTER = 'Enter';
14
- exports.KEY_ENTER = KEY_ENTER;
15
- var KEY_TAB = 'Tab';
16
- exports.KEY_TAB = KEY_TAB;
17
- var KEY_ESC = 'Escape';
18
- exports.KEY_ESC = KEY_ESC;
@@ -1,27 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- // There are cases where the context is not available, such as when a dropdown item is used
9
- // inside @atlaskit/navigation. For this reason we have this helper function which safely calls
10
- // the context functions if they are available.
11
- var _default = function _default(instance, contextKey) {
12
- return function (fnToCall) {
13
- var _instance$context$con;
14
-
15
- if (!instance.context[contextKey]) {
16
- return null;
17
- }
18
-
19
- for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
20
- args[_key - 1] = arguments[_key];
21
- }
22
-
23
- return (_instance$context$con = instance.context[contextKey])[fnToCall].apply(_instance$context$con, args);
24
- };
25
- };
26
-
27
- exports.default = _default;
@@ -1,17 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var canUseDOM = function canUseDOM() {
9
- return Boolean(typeof window !== 'undefined' && window.document && window.document.createElement);
10
- };
11
-
12
- var supportsVoiceOver = function supportsVoiceOver() {
13
- return /Mac OS X/.test(canUseDOM() ? navigator.userAgent : '');
14
- };
15
-
16
- var _default = supportsVoiceOver;
17
- exports.default = _default;
@@ -1,156 +0,0 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
- import React, { Component } from 'react';
3
- import StatelessMenu from './DropdownMenuStateless';
4
- export default class DropdownMenu extends Component {
5
- constructor(..._args) {
6
- super(..._args);
7
-
8
- _defineProperty(this, "state", {
9
- isOpen: this.props.defaultOpen,
10
- items: [...this.props.items]
11
- });
12
-
13
- _defineProperty(this, "findActivatedGroup", item => this.state.items.filter(group => group.items.indexOf(item) > -1)[0]);
14
-
15
- _defineProperty(this, "handleItemActivation", attrs => {
16
- const activatedItem = attrs.item;
17
- const activatedGroup = this.findActivatedGroup(activatedItem);
18
- const items = [...this.state.items];
19
-
20
- switch (activatedItem.type) {
21
- case 'checkbox':
22
- activatedItem.isChecked = !activatedItem.isChecked;
23
- this.props.onItemActivated({
24
- item: activatedItem
25
- });
26
- this.setState({
27
- items
28
- });
29
- break;
30
-
31
- case 'radio':
32
- activatedGroup.items.forEach(i => {
33
- if (i === activatedItem) {
34
- i.isChecked = true; // eslint-disable-line no-param-reassign
35
- } else {
36
- i.isChecked = false; // eslint-disable-line no-param-reassign
37
- }
38
- });
39
- this.props.onItemActivated({
40
- item: activatedItem
41
- });
42
- this.setState({
43
- items
44
- });
45
- break;
46
-
47
- case 'link':
48
- default:
49
- this.props.onItemActivated({
50
- item: activatedItem
51
- });
52
- this.close();
53
- break;
54
- }
55
- });
56
-
57
- _defineProperty(this, "handleOpenChange", (attrs, ...args) => {
58
- if (this.state.isOpen === attrs.isOpen) {
59
- return;
60
- }
61
-
62
- this.setState({
63
- isOpen: attrs.isOpen
64
- });
65
- this.props.onOpenChange(attrs, ...args);
66
- });
67
-
68
- _defineProperty(this, "close", (...args) => {
69
- if (this.state.isOpen === false) {
70
- return;
71
- }
72
-
73
- this.setState({
74
- isOpen: false
75
- });
76
- this.props.onOpenChange({
77
- isOpen: false
78
- }, ...args);
79
- });
80
- }
81
-
82
- UNSAFE_componentWillReceiveProps(nextProps) {
83
- if (nextProps.items !== this.state.items) {
84
- this.setState({
85
- items: [...nextProps.items]
86
- });
87
- }
88
-
89
- if (nextProps.isOpen !== this.props.isOpen) {
90
- this.setState({
91
- isOpen: nextProps.isOpen
92
- });
93
- }
94
- }
95
-
96
- render() {
97
- const {
98
- isOpen
99
- } = this.state;
100
- const {
101
- appearance,
102
- boundariesElement,
103
- children,
104
- isLoading,
105
- items,
106
- position,
107
- isMenuFixed,
108
- shouldAllowMultilineItems,
109
- shouldFitContainer,
110
- shouldFlip,
111
- testId,
112
- trigger,
113
- triggerButtonProps,
114
- triggerType,
115
- onPositioned
116
- } = this.props;
117
- return /*#__PURE__*/React.createElement(StatelessMenu, {
118
- appearance: appearance,
119
- boundariesElement: boundariesElement,
120
- isOpen: isOpen,
121
- isLoading: isLoading,
122
- items: items,
123
- onItemActivated: this.handleItemActivation,
124
- onOpenChange: this.handleOpenChange,
125
- position: position,
126
- isMenuFixed: isMenuFixed,
127
- shouldAllowMultilineItems: shouldAllowMultilineItems,
128
- shouldFitContainer: shouldFitContainer,
129
- shouldFlip: shouldFlip,
130
- trigger: trigger,
131
- triggerButtonProps: triggerButtonProps,
132
- triggerType: triggerType,
133
- onPositioned: onPositioned,
134
- testId: testId
135
- }, children);
136
- }
137
-
138
- }
139
-
140
- _defineProperty(DropdownMenu, "defaultProps", {
141
- appearance: 'default',
142
- boundariesElement: 'viewport',
143
- defaultOpen: false,
144
- isLoading: false,
145
- isOpen: false,
146
- items: [],
147
- onItemActivated: () => {},
148
- onOpenChange: () => {},
149
- position: 'bottom left',
150
- isMenuFixed: false,
151
- shouldAllowMultilineItems: false,
152
- shouldFitContainer: false,
153
- shouldFlip: true,
154
- triggerType: 'default',
155
- onPositioned: () => {}
156
- });