@atlaskit/button 16.9.3 → 16.9.4

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 (193) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cjs/entry-points/button-group.js +1 -1
  3. package/dist/cjs/entry-points/custom-theme-button.js +1 -1
  4. package/dist/cjs/entry-points/loading-button.js +1 -1
  5. package/dist/cjs/entry-points/new.js +34 -0
  6. package/dist/cjs/entry-points/standard-button.js +1 -1
  7. package/dist/cjs/entry-points/unsafe.js +13 -0
  8. package/dist/cjs/new-button/variants/default/button.js +100 -0
  9. package/dist/cjs/new-button/variants/default/link.js +106 -0
  10. package/dist/cjs/new-button/variants/default/use-default-button.js +90 -0
  11. package/dist/cjs/new-button/variants/icon/button.js +96 -0
  12. package/dist/cjs/new-button/variants/icon/link.js +102 -0
  13. package/dist/cjs/new-button/variants/icon/use-icon-button.js +82 -0
  14. package/dist/cjs/new-button/variants/shared/block-events.js +33 -0
  15. package/dist/cjs/new-button/variants/shared/colors.js +130 -0
  16. package/dist/cjs/new-button/variants/shared/use-button-base.js +140 -0
  17. package/dist/cjs/new-button/variants/shared/xcss.js +191 -0
  18. package/dist/cjs/new-button/variants/types.js +5 -0
  19. package/dist/cjs/old-button/custom-theme-button/custom-theme-button-types.js +5 -0
  20. package/dist/cjs/{custom-theme-button → old-button/custom-theme-button}/custom-theme-button.js +2 -2
  21. package/dist/cjs/{custom-theme-button → old-button/custom-theme-button}/theme.js +2 -2
  22. package/dist/cjs/{shared → old-button/shared}/button-base.js +2 -2
  23. package/dist/cjs/{shared → old-button/shared}/css.js +2 -2
  24. package/dist/cjs/old-button/types.js +5 -0
  25. package/dist/cjs/utils/appearances.js +9 -0
  26. package/dist/cjs/utils/spacing.js +9 -0
  27. package/dist/cjs/utils/variants.js +35 -0
  28. package/dist/es2019/entry-points/button-group.js +1 -1
  29. package/dist/es2019/entry-points/custom-theme-button.js +1 -1
  30. package/dist/es2019/entry-points/loading-button.js +1 -1
  31. package/dist/es2019/entry-points/new.js +4 -0
  32. package/dist/es2019/entry-points/standard-button.js +1 -1
  33. package/dist/es2019/entry-points/unsafe.js +1 -0
  34. package/dist/es2019/new-button/variants/default/button.js +91 -0
  35. package/dist/es2019/new-button/variants/default/link.js +98 -0
  36. package/dist/es2019/new-button/variants/default/use-default-button.js +80 -0
  37. package/dist/es2019/new-button/variants/icon/button.js +87 -0
  38. package/dist/es2019/new-button/variants/icon/link.js +94 -0
  39. package/dist/es2019/new-button/variants/icon/use-icon-button.js +77 -0
  40. package/dist/es2019/new-button/variants/shared/block-events.js +27 -0
  41. package/dist/es2019/new-button/variants/shared/colors.js +120 -0
  42. package/dist/es2019/new-button/variants/shared/use-button-base.js +120 -0
  43. package/dist/es2019/new-button/variants/shared/xcss.js +182 -0
  44. package/dist/es2019/{shared → old-button/shared}/button-base.js +2 -5
  45. package/dist/es2019/old-button/types.js +1 -0
  46. package/dist/es2019/utils/appearances.js +2 -0
  47. package/dist/es2019/utils/spacing.js +2 -0
  48. package/dist/es2019/utils/variants.js +20 -0
  49. package/dist/esm/entry-points/button-group.js +1 -1
  50. package/dist/esm/entry-points/custom-theme-button.js +1 -1
  51. package/dist/esm/entry-points/loading-button.js +1 -1
  52. package/dist/esm/entry-points/new.js +4 -0
  53. package/dist/esm/entry-points/standard-button.js +1 -1
  54. package/dist/esm/entry-points/unsafe.js +1 -0
  55. package/dist/esm/new-button/variants/default/button.js +92 -0
  56. package/dist/esm/new-button/variants/default/link.js +98 -0
  57. package/dist/esm/new-button/variants/default/types.js +1 -0
  58. package/dist/esm/new-button/variants/default/use-default-button.js +79 -0
  59. package/dist/esm/new-button/variants/icon/button.js +88 -0
  60. package/dist/esm/new-button/variants/icon/link.js +94 -0
  61. package/dist/esm/new-button/variants/icon/types.js +1 -0
  62. package/dist/esm/new-button/variants/icon/use-icon-button.js +74 -0
  63. package/dist/esm/new-button/variants/shared/block-events.js +27 -0
  64. package/dist/esm/new-button/variants/shared/colors.js +120 -0
  65. package/dist/esm/new-button/variants/shared/use-button-base.js +131 -0
  66. package/dist/esm/new-button/variants/shared/xcss.js +178 -0
  67. package/dist/esm/new-button/variants/types.js +1 -0
  68. package/dist/esm/old-button/custom-theme-button/custom-theme-button-types.js +1 -0
  69. package/dist/esm/{custom-theme-button → old-button/custom-theme-button}/custom-theme-button.js +2 -2
  70. package/dist/esm/{custom-theme-button → old-button/custom-theme-button}/theme.js +2 -2
  71. package/dist/esm/{shared → old-button/shared}/button-base.js +2 -2
  72. package/dist/esm/{shared → old-button/shared}/css.js +2 -2
  73. package/dist/esm/old-button/types.js +1 -0
  74. package/dist/esm/utils/appearances.js +2 -0
  75. package/dist/esm/utils/spacing.js +2 -0
  76. package/dist/esm/utils/variants.js +22 -0
  77. package/dist/types/{button-group.d.ts → containers/button-group.d.ts} +1 -1
  78. package/dist/types/entry-points/button-group.d.ts +1 -1
  79. package/dist/types/entry-points/custom-theme-button.d.ts +2 -2
  80. package/dist/types/entry-points/loading-button.d.ts +2 -2
  81. package/dist/types/entry-points/new.d.ts +5 -0
  82. package/dist/types/entry-points/standard-button.d.ts +2 -2
  83. package/dist/types/entry-points/types.d.ts +1 -1
  84. package/dist/types/entry-points/unsafe.d.ts +1 -0
  85. package/dist/types/new-button/variants/default/button.d.ts +19 -0
  86. package/dist/types/new-button/variants/default/link.d.ts +17 -0
  87. package/dist/types/new-button/variants/default/types.d.ts +15 -0
  88. package/dist/types/new-button/variants/default/use-default-button.d.ts +15 -0
  89. package/dist/types/new-button/variants/icon/button.d.ts +17 -0
  90. package/dist/types/new-button/variants/icon/link.d.ts +17 -0
  91. package/dist/types/new-button/variants/icon/types.d.ts +8 -0
  92. package/dist/types/new-button/variants/icon/use-icon-button.d.ts +15 -0
  93. package/dist/types/new-button/variants/shared/block-events.d.ts +2 -0
  94. package/dist/types/new-button/variants/shared/colors.d.ts +18 -0
  95. package/dist/types/new-button/variants/shared/use-button-base.d.ts +37 -0
  96. package/dist/types/new-button/variants/shared/xcss.d.ts +24 -0
  97. package/dist/types/new-button/variants/types.d.ts +69 -0
  98. package/dist/{types-ts4.5 → types/old-button}/custom-theme-button/custom-theme-button.d.ts +1 -1
  99. package/dist/types/utils/appearances.d.ts +3 -0
  100. package/dist/types/utils/spacing.d.ts +3 -0
  101. package/dist/types/utils/variants.d.ts +15 -0
  102. package/dist/types-ts4.5/{button-group.d.ts → containers/button-group.d.ts} +1 -1
  103. package/dist/types-ts4.5/entry-points/button-group.d.ts +1 -1
  104. package/dist/types-ts4.5/entry-points/custom-theme-button.d.ts +2 -2
  105. package/dist/types-ts4.5/entry-points/loading-button.d.ts +2 -2
  106. package/dist/types-ts4.5/entry-points/new.d.ts +5 -0
  107. package/dist/types-ts4.5/entry-points/standard-button.d.ts +2 -2
  108. package/dist/types-ts4.5/entry-points/types.d.ts +1 -1
  109. package/dist/types-ts4.5/entry-points/unsafe.d.ts +1 -0
  110. package/dist/types-ts4.5/new-button/variants/default/button.d.ts +19 -0
  111. package/dist/types-ts4.5/new-button/variants/default/link.d.ts +17 -0
  112. package/dist/types-ts4.5/new-button/variants/default/types.d.ts +15 -0
  113. package/dist/types-ts4.5/new-button/variants/default/use-default-button.d.ts +15 -0
  114. package/dist/types-ts4.5/new-button/variants/icon/button.d.ts +17 -0
  115. package/dist/types-ts4.5/new-button/variants/icon/link.d.ts +17 -0
  116. package/dist/types-ts4.5/new-button/variants/icon/types.d.ts +8 -0
  117. package/dist/types-ts4.5/new-button/variants/icon/use-icon-button.d.ts +15 -0
  118. package/dist/types-ts4.5/new-button/variants/shared/block-events.d.ts +2 -0
  119. package/dist/types-ts4.5/new-button/variants/shared/colors.d.ts +18 -0
  120. package/dist/types-ts4.5/new-button/variants/shared/use-button-base.d.ts +37 -0
  121. package/dist/types-ts4.5/new-button/variants/shared/xcss.d.ts +24 -0
  122. package/dist/types-ts4.5/new-button/variants/types.d.ts +69 -0
  123. package/dist/{types → types-ts4.5/old-button}/custom-theme-button/custom-theme-button.d.ts +1 -1
  124. package/dist/types-ts4.5/utils/appearances.d.ts +3 -0
  125. package/dist/types-ts4.5/utils/spacing.d.ts +3 -0
  126. package/dist/types-ts4.5/utils/variants.d.ts +15 -0
  127. package/extract-react-types/custom-theme-button-props.tsx +1 -1
  128. package/extract-react-types/loading-button-props.tsx +1 -1
  129. package/extract-react-types/shared-props.tsx +1 -1
  130. package/package.json +9 -6
  131. package/unsafe/package.json +15 -0
  132. /package/dist/cjs/{button-group.js → containers/button-group.js} +0 -0
  133. /package/dist/cjs/{types.js → new-button/variants/default/types.js} +0 -0
  134. /package/dist/cjs/{custom-theme-button/custom-theme-button-types.js → new-button/variants/icon/types.js} +0 -0
  135. /package/dist/cjs/{button.js → old-button/button.js} +0 -0
  136. /package/dist/cjs/{custom-theme-button → old-button/custom-theme-button}/index.js +0 -0
  137. /package/dist/cjs/{loading-button.js → old-button/loading-button.js} +0 -0
  138. /package/dist/cjs/{shared → old-button/shared}/block-events.js +0 -0
  139. /package/dist/cjs/{shared → old-button/shared}/colors.js +0 -0
  140. /package/dist/cjs/{shared → old-button/shared}/get-if-visually-hidden-children.js +0 -0
  141. /package/dist/cjs/{shared → old-button/shared}/get-is-only-single-icon.js +0 -0
  142. /package/dist/cjs/{shared → old-button/shared}/loading-spinner.js +0 -0
  143. /package/dist/es2019/{button-group.js → containers/button-group.js} +0 -0
  144. /package/dist/es2019/{types.js → new-button/variants/default/types.js} +0 -0
  145. /package/dist/{esm → es2019/new-button/variants/icon}/types.js +0 -0
  146. /package/dist/es2019/{custom-theme-button/custom-theme-button-types.js → new-button/variants/types.js} +0 -0
  147. /package/dist/es2019/{button.js → old-button/button.js} +0 -0
  148. /package/dist/{esm → es2019/old-button}/custom-theme-button/custom-theme-button-types.js +0 -0
  149. /package/dist/es2019/{custom-theme-button → old-button/custom-theme-button}/custom-theme-button.js +0 -0
  150. /package/dist/es2019/{custom-theme-button → old-button/custom-theme-button}/index.js +0 -0
  151. /package/dist/es2019/{custom-theme-button → old-button/custom-theme-button}/theme.js +0 -0
  152. /package/dist/es2019/{loading-button.js → old-button/loading-button.js} +0 -0
  153. /package/dist/es2019/{shared → old-button/shared}/block-events.js +0 -0
  154. /package/dist/es2019/{shared → old-button/shared}/colors.js +0 -0
  155. /package/dist/es2019/{shared → old-button/shared}/css.js +0 -0
  156. /package/dist/es2019/{shared → old-button/shared}/get-if-visually-hidden-children.js +0 -0
  157. /package/dist/es2019/{shared → old-button/shared}/get-is-only-single-icon.js +0 -0
  158. /package/dist/es2019/{shared → old-button/shared}/loading-spinner.js +0 -0
  159. /package/dist/esm/{button-group.js → containers/button-group.js} +0 -0
  160. /package/dist/esm/{button.js → old-button/button.js} +0 -0
  161. /package/dist/esm/{custom-theme-button → old-button/custom-theme-button}/index.js +0 -0
  162. /package/dist/esm/{loading-button.js → old-button/loading-button.js} +0 -0
  163. /package/dist/esm/{shared → old-button/shared}/block-events.js +0 -0
  164. /package/dist/esm/{shared → old-button/shared}/colors.js +0 -0
  165. /package/dist/esm/{shared → old-button/shared}/get-if-visually-hidden-children.js +0 -0
  166. /package/dist/esm/{shared → old-button/shared}/get-is-only-single-icon.js +0 -0
  167. /package/dist/esm/{shared → old-button/shared}/loading-spinner.js +0 -0
  168. /package/dist/types/{button.d.ts → old-button/button.d.ts} +0 -0
  169. /package/dist/types/{custom-theme-button → old-button/custom-theme-button}/custom-theme-button-types.d.ts +0 -0
  170. /package/dist/types/{custom-theme-button → old-button/custom-theme-button}/index.d.ts +0 -0
  171. /package/dist/types/{custom-theme-button → old-button/custom-theme-button}/theme.d.ts +0 -0
  172. /package/dist/types/{loading-button.d.ts → old-button/loading-button.d.ts} +0 -0
  173. /package/dist/types/{shared → old-button/shared}/block-events.d.ts +0 -0
  174. /package/dist/types/{shared → old-button/shared}/button-base.d.ts +0 -0
  175. /package/dist/types/{shared → old-button/shared}/colors.d.ts +0 -0
  176. /package/dist/types/{shared → old-button/shared}/css.d.ts +0 -0
  177. /package/dist/types/{shared → old-button/shared}/get-if-visually-hidden-children.d.ts +0 -0
  178. /package/dist/types/{shared → old-button/shared}/get-is-only-single-icon.d.ts +0 -0
  179. /package/dist/types/{shared → old-button/shared}/loading-spinner.d.ts +0 -0
  180. /package/dist/types/{types.d.ts → old-button/types.d.ts} +0 -0
  181. /package/dist/types-ts4.5/{button.d.ts → old-button/button.d.ts} +0 -0
  182. /package/dist/types-ts4.5/{custom-theme-button → old-button/custom-theme-button}/custom-theme-button-types.d.ts +0 -0
  183. /package/dist/types-ts4.5/{custom-theme-button → old-button/custom-theme-button}/index.d.ts +0 -0
  184. /package/dist/types-ts4.5/{custom-theme-button → old-button/custom-theme-button}/theme.d.ts +0 -0
  185. /package/dist/types-ts4.5/{loading-button.d.ts → old-button/loading-button.d.ts} +0 -0
  186. /package/dist/types-ts4.5/{shared → old-button/shared}/block-events.d.ts +0 -0
  187. /package/dist/types-ts4.5/{shared → old-button/shared}/button-base.d.ts +0 -0
  188. /package/dist/types-ts4.5/{shared → old-button/shared}/colors.d.ts +0 -0
  189. /package/dist/types-ts4.5/{shared → old-button/shared}/css.d.ts +0 -0
  190. /package/dist/types-ts4.5/{shared → old-button/shared}/get-if-visually-hidden-children.d.ts +0 -0
  191. /package/dist/types-ts4.5/{shared → old-button/shared}/get-is-only-single-icon.d.ts +0 -0
  192. /package/dist/types-ts4.5/{shared → old-button/shared}/loading-spinner.d.ts +0 -0
  193. /package/dist/types-ts4.5/{types.d.ts → old-button/types.d.ts} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @atlaskit/button
2
2
 
3
+ ## 16.9.4
4
+
5
+ ### Patch Changes
6
+
7
+ - [`f204e4e0e55`](https://bitbucket.org/atlassian/atlassian-frontend/commits/f204e4e0e55) - Expose temporary "unsafe" entry point for internal work. It will be removed soon. PLEASE DO NOT USE.
8
+
3
9
  ## 16.9.3
4
10
 
5
11
  ### Patch Changes
@@ -10,4 +10,4 @@ Object.defineProperty(exports, "default", {
10
10
  return _buttonGroup.default;
11
11
  }
12
12
  });
13
- var _buttonGroup = _interopRequireDefault(require("../button-group"));
13
+ var _buttonGroup = _interopRequireDefault(require("../containers/button-group"));
@@ -16,6 +16,6 @@ Object.defineProperty(exports, "default", {
16
16
  return _customThemeButton.default;
17
17
  }
18
18
  });
19
- var _customThemeButton = _interopRequireWildcard(require("../custom-theme-button"));
19
+ var _customThemeButton = _interopRequireWildcard(require("../old-button/custom-theme-button"));
20
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
21
  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; }
@@ -10,4 +10,4 @@ Object.defineProperty(exports, "default", {
10
10
  return _loadingButton.default;
11
11
  }
12
12
  });
13
- var _loadingButton = _interopRequireDefault(require("../loading-button"));
13
+ var _loadingButton = _interopRequireDefault(require("../old-button/loading-button"));
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "IconButton", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _button2.default;
11
+ }
12
+ });
13
+ Object.defineProperty(exports, "LinkButton", {
14
+ enumerable: true,
15
+ get: function get() {
16
+ return _link.default;
17
+ }
18
+ });
19
+ Object.defineProperty(exports, "LinkIconButton", {
20
+ enumerable: true,
21
+ get: function get() {
22
+ return _link2.default;
23
+ }
24
+ });
25
+ Object.defineProperty(exports, "default", {
26
+ enumerable: true,
27
+ get: function get() {
28
+ return _button.default;
29
+ }
30
+ });
31
+ var _button = _interopRequireDefault(require("../new-button/variants/default/button"));
32
+ var _link = _interopRequireDefault(require("../new-button/variants/default/link"));
33
+ var _button2 = _interopRequireDefault(require("../new-button/variants/icon/button"));
34
+ var _link2 = _interopRequireDefault(require("../new-button/variants/icon/link"));
@@ -11,4 +11,4 @@ Object.defineProperty(exports, "default", {
11
11
  }
12
12
  });
13
13
  require("@emotion/react");
14
- var _button = _interopRequireDefault(require("../button"));
14
+ var _button = _interopRequireDefault(require("../old-button/button"));
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "UNSAFE_BUTTON", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _button.default;
11
+ }
12
+ });
13
+ var _button = _interopRequireDefault(require("../new-button/variants/default/button"));
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _pressable = _interopRequireDefault(require("@atlaskit/primitives/pressable"));
12
+ var _useDefaultButton = _interopRequireDefault(require("./use-default-button"));
13
+ var _excluded = ["analyticsContext", "autoFocus", "appearance", "spacing", "isDisabled", "isSelected", "iconBefore", "iconAfter", "children", "shouldFitContainer", "interactionName", "overlay", "onClick", "onMouseDownCapture", "onMouseUpCapture", "onKeyDownCapture", "onKeyUpCapture", "onTouchStartCapture", "onTouchEndCapture", "onPointerDownCapture", "onPointerUpCapture", "onClickCapture", "type", "testId"];
14
+ /**
15
+ * __Button__
16
+ *
17
+ * @warning __UNSAFE__ Button is not yet safe for production use.
18
+ *
19
+ * A button triggers an event or action.
20
+ *
21
+ * - [Examples](https://atlassian.design/components/button/examples)
22
+ * - [Code](https://atlassian.design/components/button/code)
23
+ * - [Usage](https://atlassian.design/components/button/usage)
24
+ */
25
+ var Button = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.default.forwardRef(function Button(_ref, ref) {
26
+ var analyticsContext = _ref.analyticsContext,
27
+ autoFocus = _ref.autoFocus,
28
+ appearance = _ref.appearance,
29
+ spacing = _ref.spacing,
30
+ isDisabled = _ref.isDisabled,
31
+ isSelected = _ref.isSelected,
32
+ iconBefore = _ref.iconBefore,
33
+ iconAfter = _ref.iconAfter,
34
+ children = _ref.children,
35
+ shouldFitContainer = _ref.shouldFitContainer,
36
+ interactionName = _ref.interactionName,
37
+ overlay = _ref.overlay,
38
+ onClick = _ref.onClick,
39
+ onMouseDownCapture = _ref.onMouseDownCapture,
40
+ onMouseUpCapture = _ref.onMouseUpCapture,
41
+ onKeyDownCapture = _ref.onKeyDownCapture,
42
+ onKeyUpCapture = _ref.onKeyUpCapture,
43
+ onTouchStartCapture = _ref.onTouchStartCapture,
44
+ onTouchEndCapture = _ref.onTouchEndCapture,
45
+ onPointerDownCapture = _ref.onPointerDownCapture,
46
+ onPointerUpCapture = _ref.onPointerUpCapture,
47
+ onClickCapture = _ref.onClickCapture,
48
+ _ref$type = _ref.type,
49
+ type = _ref$type === void 0 ? 'button' : _ref$type,
50
+ testId = _ref.testId,
51
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
52
+ var baseProps = (0, _useDefaultButton.default)({
53
+ analyticsContext: analyticsContext,
54
+ appearance: appearance,
55
+ autoFocus: autoFocus,
56
+ buttonType: 'button',
57
+ children: children,
58
+ iconBefore: iconBefore,
59
+ iconAfter: iconAfter,
60
+ interactionName: interactionName,
61
+ isDisabled: isDisabled,
62
+ isSelected: isSelected,
63
+ onClick: onClick,
64
+ onMouseDownCapture: onMouseDownCapture,
65
+ onMouseUpCapture: onMouseUpCapture,
66
+ onKeyDownCapture: onKeyDownCapture,
67
+ onKeyUpCapture: onKeyUpCapture,
68
+ onTouchStartCapture: onTouchStartCapture,
69
+ onTouchEndCapture: onTouchEndCapture,
70
+ onPointerDownCapture: onPointerDownCapture,
71
+ onPointerUpCapture: onPointerUpCapture,
72
+ onClickCapture: onClickCapture,
73
+ overlay: overlay,
74
+ ref: ref,
75
+ shouldFitContainer: shouldFitContainer,
76
+ spacing: spacing
77
+ });
78
+ return /*#__PURE__*/_react.default.createElement(_pressable.default
79
+ // TODO: Remove spread props
80
+ , (0, _extends2.default)({}, rest, {
81
+ ref: baseProps.ref,
82
+ xcss: baseProps.xcss,
83
+ isDisabled: baseProps.isDisabled,
84
+ onClick: baseProps.onClick,
85
+ onMouseDownCapture: baseProps.onMouseDownCapture,
86
+ onMouseUpCapture: baseProps.onMouseUpCapture,
87
+ onKeyDownCapture: baseProps.onKeyDownCapture,
88
+ onKeyUpCapture: baseProps.onKeyUpCapture,
89
+ onTouchStartCapture: baseProps.onTouchStartCapture,
90
+ onTouchEndCapture: baseProps.onTouchEndCapture,
91
+ onPointerDownCapture: baseProps.onPointerDownCapture,
92
+ onPointerUpCapture: baseProps.onPointerUpCapture,
93
+ onClickCapture: baseProps.onClickCapture,
94
+ type: type,
95
+ testId: testId
96
+ }), baseProps.children);
97
+ }));
98
+ Button.displayName = 'Button';
99
+ var _default = Button;
100
+ exports.default = _default;
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _primitives = require("@atlaskit/primitives");
12
+ var _useDefaultButton = _interopRequireDefault(require("./use-default-button"));
13
+ var _excluded = ["analyticsContext", "autoFocus", "appearance", "spacing", "isDisabled", "isSelected", "iconBefore", "iconAfter", "children", "shouldFitContainer", "interactionName", "overlay", "onClick", "onMouseDownCapture", "onMouseUpCapture", "onKeyDownCapture", "onKeyUpCapture", "onTouchStartCapture", "onTouchEndCapture", "onPointerDownCapture", "onPointerUpCapture", "onClickCapture", "testId", "href"];
14
+ /**
15
+ * __Link Button__
16
+ *
17
+ * A link button renders a link in the style of a button.
18
+ *
19
+ * - [Examples](https://atlassian.design/components/button/examples)
20
+ * - [Code](https://atlassian.design/components/button/code)
21
+ * - [Usage](https://atlassian.design/components/button/usage)
22
+ */
23
+ var LinkButton = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.default.forwardRef(function LinkButton(_ref, ref) {
24
+ var analyticsContext = _ref.analyticsContext,
25
+ autoFocus = _ref.autoFocus,
26
+ appearance = _ref.appearance,
27
+ spacing = _ref.spacing,
28
+ isDisabled = _ref.isDisabled,
29
+ isSelected = _ref.isSelected,
30
+ iconBefore = _ref.iconBefore,
31
+ iconAfter = _ref.iconAfter,
32
+ children = _ref.children,
33
+ shouldFitContainer = _ref.shouldFitContainer,
34
+ interactionName = _ref.interactionName,
35
+ overlay = _ref.overlay,
36
+ onClick = _ref.onClick,
37
+ onMouseDownCapture = _ref.onMouseDownCapture,
38
+ onMouseUpCapture = _ref.onMouseUpCapture,
39
+ onKeyDownCapture = _ref.onKeyDownCapture,
40
+ onKeyUpCapture = _ref.onKeyUpCapture,
41
+ onTouchStartCapture = _ref.onTouchStartCapture,
42
+ onTouchEndCapture = _ref.onTouchEndCapture,
43
+ onPointerDownCapture = _ref.onPointerDownCapture,
44
+ onPointerUpCapture = _ref.onPointerUpCapture,
45
+ onClickCapture = _ref.onClickCapture,
46
+ testId = _ref.testId,
47
+ href = _ref.href,
48
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
49
+ var baseProps = (0, _useDefaultButton.default)({
50
+ analyticsContext: analyticsContext,
51
+ appearance: appearance,
52
+ autoFocus: autoFocus,
53
+ buttonType: 'link',
54
+ children: children,
55
+ iconBefore: iconBefore,
56
+ iconAfter: iconAfter,
57
+ interactionName: interactionName,
58
+ isDisabled: isDisabled,
59
+ isSelected: isSelected,
60
+ onClick: onClick,
61
+ onMouseDownCapture: onMouseDownCapture,
62
+ onMouseUpCapture: onMouseUpCapture,
63
+ onKeyDownCapture: onKeyDownCapture,
64
+ onKeyUpCapture: onKeyUpCapture,
65
+ onTouchStartCapture: onTouchStartCapture,
66
+ onTouchEndCapture: onTouchEndCapture,
67
+ onPointerDownCapture: onPointerDownCapture,
68
+ onPointerUpCapture: onPointerUpCapture,
69
+ onClickCapture: onClickCapture,
70
+ overlay: overlay,
71
+ ref: ref,
72
+ shouldFitContainer: shouldFitContainer,
73
+ spacing: spacing
74
+ });
75
+ return (
76
+ /*#__PURE__*/
77
+ // TODO: Use Link primitive to allow custom components for routing (with context)
78
+ // https://product-fabric.atlassian.net/browse/DSP-12505
79
+ _react.default.createElement(_primitives.Box, (0, _extends2.default)({}, rest, {
80
+ ref: baseProps.ref,
81
+ xcss: baseProps.xcss,
82
+ onClick: baseProps.onClick,
83
+ onMouseDownCapture: baseProps.onMouseDownCapture,
84
+ onMouseUpCapture: baseProps.onMouseUpCapture,
85
+ onKeyDownCapture: baseProps.onKeyDownCapture,
86
+ onKeyUpCapture: baseProps.onKeyUpCapture,
87
+ onTouchStartCapture: baseProps.onTouchStartCapture,
88
+ onTouchEndCapture: baseProps.onTouchEndCapture,
89
+ onPointerDownCapture: baseProps.onPointerDownCapture,
90
+ onPointerUpCapture: baseProps.onPointerUpCapture,
91
+ onClickCapture: baseProps.onClickCapture,
92
+ as: "a",
93
+ testId: testId
94
+ /**
95
+ * Disable link in an accessible way using `href`, `role`, and `aria-disabled`.
96
+ * @see https://a11y-guidelines.orange.com/en/articles/disable-elements/#disable-a-link
97
+ */,
98
+ href: baseProps.isDisabled ? undefined : href,
99
+ role: baseProps.isDisabled ? 'link' : undefined,
100
+ "aria-disabled": baseProps.isDisabled === true ? true : undefined
101
+ }), baseProps.children)
102
+ );
103
+ }));
104
+ LinkButton.displayName = 'LinkButton';
105
+ var _default = LinkButton;
106
+ exports.default = _default;
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ var _react = _interopRequireWildcard(require("react"));
10
+ var _primitives = require("@atlaskit/primitives");
11
+ var _useButtonBase = _interopRequireDefault(require("../shared/use-button-base"));
12
+ var _xcss = require("../shared/xcss");
13
+ 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); }
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
+ * __Use default button base__
17
+ *
18
+ * A React hook that accepts a set of default Button props,
19
+ * and processes them to return consistent base props for usage
20
+ * across Button and LinkButton variants.
21
+ *
22
+ * @private
23
+ */
24
+ var useDefaultButton = function useDefaultButton(_ref) {
25
+ var analyticsContext = _ref.analyticsContext,
26
+ appearance = _ref.appearance,
27
+ autoFocus = _ref.autoFocus,
28
+ buttonType = _ref.buttonType,
29
+ iconBefore = _ref.iconBefore,
30
+ iconAfter = _ref.iconAfter,
31
+ interactionName = _ref.interactionName,
32
+ isDisabled = _ref.isDisabled,
33
+ isSelected = _ref.isSelected,
34
+ children = _ref.children,
35
+ onClick = _ref.onClick,
36
+ onMouseDownCapture = _ref.onMouseDownCapture,
37
+ onMouseUpCapture = _ref.onMouseUpCapture,
38
+ onKeyDownCapture = _ref.onKeyDownCapture,
39
+ onKeyUpCapture = _ref.onKeyUpCapture,
40
+ onTouchStartCapture = _ref.onTouchStartCapture,
41
+ onTouchEndCapture = _ref.onTouchEndCapture,
42
+ onPointerDownCapture = _ref.onPointerDownCapture,
43
+ onPointerUpCapture = _ref.onPointerUpCapture,
44
+ onClickCapture = _ref.onClickCapture,
45
+ overlay = _ref.overlay,
46
+ ref = _ref.ref,
47
+ shouldFitContainer = _ref.shouldFitContainer,
48
+ spacing = _ref.spacing;
49
+ var fadeStyles = (0, _xcss.getFadingStyles)({
50
+ hasOverlay: Boolean(overlay)
51
+ });
52
+ var baseProps = (0, _useButtonBase.default)({
53
+ analyticsContext: analyticsContext,
54
+ appearance: appearance,
55
+ autoFocus: autoFocus,
56
+ buttonType: buttonType,
57
+ children: /*#__PURE__*/_react.default.createElement(_react.Fragment, null, iconBefore && /*#__PURE__*/_react.default.createElement(_primitives.Box, {
58
+ as: "span",
59
+ xcss: [fadeStyles, _xcss.iconStyles]
60
+ }, iconBefore), children && /*#__PURE__*/_react.default.createElement(_primitives.Box, {
61
+ as: "span",
62
+ xcss: [fadeStyles, _xcss.contentStyles]
63
+ }, children), iconAfter && /*#__PURE__*/_react.default.createElement(_primitives.Box, {
64
+ as: "span",
65
+ xcss: [fadeStyles, _xcss.iconStyles]
66
+ }, iconAfter)),
67
+ interactionName: interactionName,
68
+ isDisabled: isDisabled,
69
+ isSelected: isSelected,
70
+ onClick: onClick,
71
+ onMouseDownCapture: onMouseDownCapture,
72
+ onMouseUpCapture: onMouseUpCapture,
73
+ onKeyDownCapture: onKeyDownCapture,
74
+ onKeyUpCapture: onKeyUpCapture,
75
+ onTouchStartCapture: onTouchStartCapture,
76
+ onTouchEndCapture: onTouchEndCapture,
77
+ onPointerDownCapture: onPointerDownCapture,
78
+ onPointerUpCapture: onPointerUpCapture,
79
+ onClickCapture: onClickCapture,
80
+ overlay: overlay,
81
+ ref: ref,
82
+ shouldFitContainer: shouldFitContainer,
83
+ spacing: spacing,
84
+ hasIconBefore: Boolean(iconBefore),
85
+ hasIconAfter: Boolean(iconAfter)
86
+ });
87
+ return baseProps;
88
+ };
89
+ var _default = useDefaultButton;
90
+ exports.default = _default;
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _pressable = _interopRequireDefault(require("@atlaskit/primitives/pressable"));
12
+ var _useIconButton = _interopRequireDefault(require("./use-icon-button"));
13
+ var _excluded = ["analyticsContext", "autoFocus", "appearance", "spacing", "isDisabled", "isSelected", "icon", "children", "interactionName", "overlay", "onClick", "onMouseDownCapture", "onMouseUpCapture", "onKeyDownCapture", "onKeyUpCapture", "onTouchStartCapture", "onTouchEndCapture", "onPointerDownCapture", "onPointerUpCapture", "onClickCapture", "type", "testId"];
14
+ /**
15
+ * __Icon Button__
16
+ *
17
+ * TODO: Description
18
+ *
19
+ * - [Examples](https://atlassian.design/components/button/examples)
20
+ * - [Code](https://atlassian.design/components/button/code)
21
+ * - [Usage](https://atlassian.design/components/button/usage)
22
+ */
23
+ var IconButton = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.default.forwardRef(function Button(_ref, ref) {
24
+ var analyticsContext = _ref.analyticsContext,
25
+ autoFocus = _ref.autoFocus,
26
+ appearance = _ref.appearance,
27
+ spacing = _ref.spacing,
28
+ isDisabled = _ref.isDisabled,
29
+ isSelected = _ref.isSelected,
30
+ icon = _ref.icon,
31
+ children = _ref.children,
32
+ interactionName = _ref.interactionName,
33
+ overlay = _ref.overlay,
34
+ onClick = _ref.onClick,
35
+ onMouseDownCapture = _ref.onMouseDownCapture,
36
+ onMouseUpCapture = _ref.onMouseUpCapture,
37
+ onKeyDownCapture = _ref.onKeyDownCapture,
38
+ onKeyUpCapture = _ref.onKeyUpCapture,
39
+ onTouchStartCapture = _ref.onTouchStartCapture,
40
+ onTouchEndCapture = _ref.onTouchEndCapture,
41
+ onPointerDownCapture = _ref.onPointerDownCapture,
42
+ onPointerUpCapture = _ref.onPointerUpCapture,
43
+ onClickCapture = _ref.onClickCapture,
44
+ _ref$type = _ref.type,
45
+ type = _ref$type === void 0 ? 'button' : _ref$type,
46
+ testId = _ref.testId,
47
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
48
+ /**
49
+ * TODO: At some stage I'll look into re-using more logic across 'default' and 'icon'
50
+ * buttons. It's currently duplicated and mostly the same.
51
+ */
52
+ var baseProps = (0, _useIconButton.default)({
53
+ analyticsContext: analyticsContext,
54
+ appearance: appearance,
55
+ autoFocus: autoFocus,
56
+ buttonType: 'button',
57
+ children: children,
58
+ icon: icon,
59
+ interactionName: interactionName,
60
+ isDisabled: isDisabled,
61
+ isSelected: isSelected,
62
+ onClick: onClick,
63
+ onMouseDownCapture: onMouseDownCapture,
64
+ onMouseUpCapture: onMouseUpCapture,
65
+ onKeyDownCapture: onKeyDownCapture,
66
+ onKeyUpCapture: onKeyUpCapture,
67
+ onTouchStartCapture: onTouchStartCapture,
68
+ onTouchEndCapture: onTouchEndCapture,
69
+ onPointerDownCapture: onPointerDownCapture,
70
+ onPointerUpCapture: onPointerUpCapture,
71
+ onClickCapture: onClickCapture,
72
+ overlay: overlay,
73
+ ref: ref,
74
+ spacing: spacing
75
+ });
76
+ return /*#__PURE__*/_react.default.createElement(_pressable.default, (0, _extends2.default)({}, rest, {
77
+ ref: baseProps.ref,
78
+ xcss: baseProps.xcss,
79
+ isDisabled: baseProps.isDisabled,
80
+ onClick: baseProps.onClick,
81
+ onMouseDownCapture: baseProps.onMouseDownCapture,
82
+ onMouseUpCapture: baseProps.onMouseUpCapture,
83
+ onKeyDownCapture: baseProps.onKeyDownCapture,
84
+ onKeyUpCapture: baseProps.onKeyUpCapture,
85
+ onTouchStartCapture: baseProps.onTouchStartCapture,
86
+ onTouchEndCapture: baseProps.onTouchEndCapture,
87
+ onPointerDownCapture: baseProps.onPointerDownCapture,
88
+ onPointerUpCapture: baseProps.onPointerUpCapture,
89
+ onClickCapture: baseProps.onClickCapture,
90
+ type: type,
91
+ testId: testId
92
+ }), baseProps.children);
93
+ }));
94
+ IconButton.displayName = 'IconButton';
95
+ var _default = IconButton;
96
+ exports.default = _default;
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _primitives = require("@atlaskit/primitives");
12
+ var _useIconButton = _interopRequireDefault(require("./use-icon-button"));
13
+ var _excluded = ["analyticsContext", "autoFocus", "appearance", "spacing", "isDisabled", "isSelected", "icon", "children", "interactionName", "overlay", "onClick", "onMouseDownCapture", "onMouseUpCapture", "onKeyDownCapture", "onKeyUpCapture", "onTouchStartCapture", "onTouchEndCapture", "onPointerDownCapture", "onPointerUpCapture", "onClickCapture", "testId", "href"];
14
+ /**
15
+ * __Link Button__
16
+ *
17
+ * A link button renders a link in the style of a button.
18
+ *
19
+ * - [Examples](https://atlassian.design/components/button/examples)
20
+ * - [Code](https://atlassian.design/components/button/code)
21
+ * - [Usage](https://atlassian.design/components/button/usage)
22
+ */
23
+ var LinkIconButton = /*#__PURE__*/_react.default.memo( /*#__PURE__*/_react.default.forwardRef(function LinkIconButton(_ref, ref) {
24
+ var analyticsContext = _ref.analyticsContext,
25
+ autoFocus = _ref.autoFocus,
26
+ appearance = _ref.appearance,
27
+ spacing = _ref.spacing,
28
+ isDisabled = _ref.isDisabled,
29
+ isSelected = _ref.isSelected,
30
+ icon = _ref.icon,
31
+ children = _ref.children,
32
+ interactionName = _ref.interactionName,
33
+ overlay = _ref.overlay,
34
+ onClick = _ref.onClick,
35
+ onMouseDownCapture = _ref.onMouseDownCapture,
36
+ onMouseUpCapture = _ref.onMouseUpCapture,
37
+ onKeyDownCapture = _ref.onKeyDownCapture,
38
+ onKeyUpCapture = _ref.onKeyUpCapture,
39
+ onTouchStartCapture = _ref.onTouchStartCapture,
40
+ onTouchEndCapture = _ref.onTouchEndCapture,
41
+ onPointerDownCapture = _ref.onPointerDownCapture,
42
+ onPointerUpCapture = _ref.onPointerUpCapture,
43
+ onClickCapture = _ref.onClickCapture,
44
+ testId = _ref.testId,
45
+ href = _ref.href,
46
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
47
+ var baseProps = (0, _useIconButton.default)({
48
+ analyticsContext: analyticsContext,
49
+ appearance: appearance,
50
+ autoFocus: autoFocus,
51
+ buttonType: 'link',
52
+ children: children,
53
+ icon: icon,
54
+ interactionName: interactionName,
55
+ isDisabled: isDisabled,
56
+ isSelected: isSelected,
57
+ onClick: onClick,
58
+ onMouseDownCapture: onMouseDownCapture,
59
+ onMouseUpCapture: onMouseUpCapture,
60
+ onKeyDownCapture: onKeyDownCapture,
61
+ onKeyUpCapture: onKeyUpCapture,
62
+ onTouchStartCapture: onTouchStartCapture,
63
+ onTouchEndCapture: onTouchEndCapture,
64
+ onPointerDownCapture: onPointerDownCapture,
65
+ onPointerUpCapture: onPointerUpCapture,
66
+ onClickCapture: onClickCapture,
67
+ overlay: overlay,
68
+ ref: ref,
69
+ spacing: spacing
70
+ });
71
+ return (
72
+ /*#__PURE__*/
73
+ // TODO: Allow custom components for routing (with context)
74
+ // https://product-fabric.atlassian.net/browse/DSP-12505
75
+ _react.default.createElement(_primitives.Box, (0, _extends2.default)({}, rest, {
76
+ ref: baseProps.ref,
77
+ xcss: baseProps.xcss,
78
+ onClick: baseProps.onClick,
79
+ onMouseDownCapture: baseProps.onMouseDownCapture,
80
+ onMouseUpCapture: baseProps.onMouseUpCapture,
81
+ onKeyDownCapture: baseProps.onKeyDownCapture,
82
+ onKeyUpCapture: baseProps.onKeyUpCapture,
83
+ onTouchStartCapture: baseProps.onTouchStartCapture,
84
+ onTouchEndCapture: baseProps.onTouchEndCapture,
85
+ onPointerDownCapture: baseProps.onPointerDownCapture,
86
+ onPointerUpCapture: baseProps.onPointerUpCapture,
87
+ onClickCapture: baseProps.onClickCapture,
88
+ as: "a",
89
+ testId: testId
90
+ /**
91
+ * Disable link in an accessible way using `href`, `role`, and `aria-disabled`.
92
+ * @see https://a11y-guidelines.orange.com/en/articles/disable-elements/#disable-a-link
93
+ */,
94
+ href: baseProps.isDisabled ? undefined : href,
95
+ role: baseProps.isDisabled ? 'link' : undefined,
96
+ "aria-disabled": baseProps.isDisabled === true ? true : undefined
97
+ }), baseProps.children)
98
+ );
99
+ }));
100
+ LinkIconButton.displayName = 'LinkIconButton';
101
+ var _default = LinkIconButton;
102
+ exports.default = _default;
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _primitives = require("@atlaskit/primitives");
10
+ var _useButtonBase = _interopRequireDefault(require("../shared/use-button-base"));
11
+ var _xcss = require("../shared/xcss");
12
+ /**
13
+ * __Use icon button__
14
+ *
15
+ * A React hook that accepts a set of icon Button props,
16
+ * and processes them to return consistent base props for usage
17
+ * across IconButton and LinkIconButton variants.
18
+ *
19
+ * @private
20
+ */
21
+ var useIconButton = function useIconButton(_ref) {
22
+ var analyticsContext = _ref.analyticsContext,
23
+ appearance = _ref.appearance,
24
+ autoFocus = _ref.autoFocus,
25
+ buttonType = _ref.buttonType,
26
+ icon = _ref.icon,
27
+ interactionName = _ref.interactionName,
28
+ isDisabled = _ref.isDisabled,
29
+ isSelected = _ref.isSelected,
30
+ onClick = _ref.onClick,
31
+ onMouseDownCapture = _ref.onMouseDownCapture,
32
+ onMouseUpCapture = _ref.onMouseUpCapture,
33
+ onKeyDownCapture = _ref.onKeyDownCapture,
34
+ onKeyUpCapture = _ref.onKeyUpCapture,
35
+ onTouchStartCapture = _ref.onTouchStartCapture,
36
+ onTouchEndCapture = _ref.onTouchEndCapture,
37
+ onPointerDownCapture = _ref.onPointerDownCapture,
38
+ onPointerUpCapture = _ref.onPointerUpCapture,
39
+ onClickCapture = _ref.onClickCapture,
40
+ overlay = _ref.overlay,
41
+ ref = _ref.ref,
42
+ shouldFitContainer = _ref.shouldFitContainer,
43
+ spacing = _ref.spacing;
44
+ var fadeStyles = (0, _xcss.getFadingStyles)({
45
+ hasOverlay: Boolean(overlay)
46
+ });
47
+ var baseProps = (0, _useButtonBase.default)({
48
+ analyticsContext: analyticsContext,
49
+ appearance: appearance,
50
+ autoFocus: autoFocus,
51
+ buttonType: buttonType,
52
+ /**
53
+ * TODO: Have not finished IconButton yet. It also needs a required accessible
54
+ * label - likely implemented using VisuallyHidden
55
+ */
56
+ children: /*#__PURE__*/_react.default.createElement(_primitives.Box, {
57
+ as: "span",
58
+ xcss: [fadeStyles, _xcss.iconStyles]
59
+ }, icon),
60
+ interactionName: interactionName,
61
+ isDisabled: isDisabled,
62
+ isSelected: isSelected,
63
+ isIconButton: true,
64
+ onClick: onClick,
65
+ onMouseDownCapture: onMouseDownCapture,
66
+ onMouseUpCapture: onMouseUpCapture,
67
+ onKeyDownCapture: onKeyDownCapture,
68
+ onKeyUpCapture: onKeyUpCapture,
69
+ onTouchStartCapture: onTouchStartCapture,
70
+ onTouchEndCapture: onTouchEndCapture,
71
+ onPointerDownCapture: onPointerDownCapture,
72
+ onPointerUpCapture: onPointerUpCapture,
73
+ onClickCapture: onClickCapture,
74
+ overlay: overlay,
75
+ ref: ref,
76
+ shouldFitContainer: shouldFitContainer,
77
+ spacing: spacing
78
+ });
79
+ return baseProps;
80
+ };
81
+ var _default = useIconButton;
82
+ exports.default = _default;