@atlaskit/link-picker 0.9.0 → 0.10.0

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 (45) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cjs/ui/link-picker.js +23 -21
  3. package/dist/cjs/ui/{LinkSearchList.js → link-search-list/index.js} +15 -25
  4. package/dist/cjs/ui/link-search-list/styled.js +21 -0
  5. package/dist/cjs/ui/{LinkSearchListItem.js → list-item/index.js} +26 -24
  6. package/dist/cjs/ui/list-item/styled.js +59 -0
  7. package/dist/cjs/ui/styled.js +32 -0
  8. package/dist/cjs/ui/{PanelTextInput.js → text-input/index.js} +14 -17
  9. package/dist/cjs/ui/text-input/styled.js +25 -0
  10. package/dist/cjs/utils.js +1 -14
  11. package/dist/cjs/version.json +1 -1
  12. package/dist/es2019/ui/link-picker.js +10 -8
  13. package/dist/es2019/ui/{LinkSearchList.js → link-search-list/index.js} +14 -19
  14. package/dist/es2019/ui/link-search-list/styled.js +13 -0
  15. package/dist/es2019/ui/list-item/index.js +88 -0
  16. package/dist/es2019/ui/list-item/styled.js +65 -0
  17. package/dist/es2019/ui/styled.js +28 -0
  18. package/dist/es2019/ui/{PanelTextInput.js → text-input/index.js} +15 -9
  19. package/dist/es2019/ui/text-input/styled.js +15 -0
  20. package/dist/es2019/utils.js +0 -11
  21. package/dist/es2019/version.json +1 -1
  22. package/dist/esm/ui/link-picker.js +10 -8
  23. package/dist/esm/ui/{LinkSearchList.js → link-search-list/index.js} +14 -13
  24. package/dist/esm/ui/link-search-list/styled.js +8 -0
  25. package/dist/esm/ui/{LinkSearchListItem.js → list-item/index.js} +25 -23
  26. package/dist/esm/ui/list-item/styled.js +37 -0
  27. package/dist/esm/ui/styled.js +16 -0
  28. package/dist/esm/ui/{PanelTextInput.js → text-input/index.js} +15 -9
  29. package/dist/esm/ui/text-input/styled.js +10 -0
  30. package/dist/esm/utils.js +0 -11
  31. package/dist/esm/version.json +1 -1
  32. package/dist/types/ui/{LinkSearchList.d.ts → link-search-list/index.d.ts} +4 -4
  33. package/dist/types/ui/link-search-list/styled.d.ts +3 -0
  34. package/dist/types/ui/{LinkSearchListItem.d.ts → list-item/index.d.ts} +1 -1
  35. package/dist/types/ui/list-item/styled.d.ts +7 -0
  36. package/dist/types/ui/styled.d.ts +4 -0
  37. package/dist/types/ui/{PanelTextInput.d.ts → text-input/index.d.ts} +2 -2
  38. package/dist/types/ui/text-input/styled.d.ts +2 -0
  39. package/dist/types/utils.d.ts +0 -1
  40. package/package.json +6 -5
  41. package/dist/cjs/styles.js +0 -90
  42. package/dist/es2019/styles.js +0 -93
  43. package/dist/es2019/ui/LinkSearchListItem.js +0 -88
  44. package/dist/esm/styles.js +0 -46
  45. package/dist/types/styles.d.ts +0 -18
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @atlaskit/link-picker
2
2
 
3
+ ## 0.10.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`dbc82a03866`](https://bitbucket.org/atlassian/atlassian-frontend/commits/dbc82a03866) - Removed styled-components as a peer dependency in favor of @emotion/react
8
+
3
9
  ## 0.9.0
4
10
 
5
11
  ### Minor Changes
@@ -29,19 +29,19 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
29
29
 
30
30
  var _react = _interopRequireWildcard(require("react"));
31
31
 
32
- var _core = require("@emotion/core");
32
+ var _react2 = require("@emotion/react");
33
33
 
34
34
  var _reactIntlNext = require("react-intl-next");
35
35
 
36
36
  var _messages = require("../messages");
37
37
 
38
- var _PanelTextInput = _interopRequireDefault(require("./PanelTextInput"));
38
+ var _textInput = _interopRequireDefault(require("./text-input"));
39
39
 
40
- var _LinkSearchList = _interopRequireDefault(require("./LinkSearchList"));
40
+ var _linkSearchList = _interopRequireDefault(require("./link-search-list"));
41
41
 
42
42
  var _url = require("../url");
43
43
 
44
- var _styles = require("../styles");
44
+ var _styled = require("./styled");
45
45
 
46
46
  var _browser = require("../browser");
47
47
 
@@ -469,27 +469,29 @@ var LinkPicker = /*#__PURE__*/function (_PureComponent) {
469
469
  // for details: https://a11y-internal.atlassian.net/browse/AK-740
470
470
 
471
471
  var screenReaderText = _browser.browser.safari && this.getScreenReaderText();
472
- var searchIcon = activePlugin && (0, _core.jsx)(_styles.SearchIconWrapper, {
472
+ var searchIcon = activePlugin && (0, _react2.jsx)("span", {
473
+ css: _styled.searchIconStyles,
473
474
  "data-testid": "link-picker-search-icon"
474
- }, (0, _core.jsx)(_search.default, {
475
+ }, (0, _react2.jsx)(_search.default, {
475
476
  size: "medium",
476
477
  label: ''
477
478
  }));
478
- return (0, _core.jsx)("div", {
479
+ return (0, _react2.jsx)("div", {
479
480
  "data-testid": "link-picker",
480
481
  className: "recent-list",
481
- css: _styles.recentListStyles
482
- }, (0, _core.jsx)(_styles.Container, {
483
- innerRef: this.wrapperRef
484
- }, screenReaderText && (0, _core.jsx)(_announcer.default, {
482
+ css: _styled.recentListStyles
483
+ }, (0, _react2.jsx)("div", {
484
+ css: _styled.containerStyles,
485
+ ref: this.wrapperRef
486
+ }, screenReaderText && (0, _react2.jsx)(_announcer.default, {
485
487
  ariaLive: "assertive",
486
488
  text: screenReaderText,
487
489
  ariaRelevant: "additions",
488
490
  delay: 250
489
- }), (0, _core.jsx)(_visuallyHidden.default, null, (0, _core.jsx)("span", {
491
+ }), (0, _react2.jsx)(_visuallyHidden.default, null, (0, _react2.jsx)("span", {
490
492
  "aria-hidden": "true",
491
493
  id: screenReaderDescriptionId
492
- }, formatMessage(_messages.messages.searchLinkAriaDescription))), (0, _core.jsx)(_PanelTextInput.default, {
494
+ }, formatMessage(_messages.messages.searchLinkAriaDescription))), (0, _react2.jsx)(_textInput.default, {
493
495
  name: "link",
494
496
  testId: "link-url",
495
497
  role: "combobox",
@@ -510,7 +512,7 @@ var LinkPicker = /*#__PURE__*/function (_PureComponent) {
510
512
  "aria-activedescendant": ariaActiveDescendant,
511
513
  "aria-describedby": screenReaderDescriptionId,
512
514
  "aria-expanded": true
513
- }), (0, _core.jsx)(_PanelTextInput.default, {
515
+ }), (0, _react2.jsx)(_textInput.default, {
514
516
  name: "link-text",
515
517
  testId: "link-text",
516
518
  autoComplete: "off",
@@ -523,17 +525,17 @@ var LinkPicker = /*#__PURE__*/function (_PureComponent) {
523
525
  onChange: this.updateTextInput,
524
526
  onClear: this.handleClearDisplayText,
525
527
  clearLabel: formatMessage(_messages.messages.clearText)
526
- }), !!items.length && (0, _core.jsx)("div", {
527
- css: _styles.ListTitleStyles,
528
+ }), !!items.length && (0, _react2.jsx)("div", {
529
+ css: _styled.listTitleStyles,
528
530
  id: "link-picker-list-title",
529
531
  "data-testid": "link-picker-list-title"
530
- }, formatMessage(this.state.url ? _messages.messages.titleResults : _messages.messages.titleRecentlyViewed)), (0, _core.jsx)(_visuallyHidden.default, null, (0, _core.jsx)("span", {
532
+ }, formatMessage(this.state.url ? _messages.messages.titleResults : _messages.messages.titleRecentlyViewed)), (0, _react2.jsx)(_visuallyHidden.default, null, (0, _react2.jsx)("span", {
531
533
  "aria-live": "polite",
532
534
  "aria-atomic": "true",
533
535
  id: "fabric.smartcard.linkpicker.suggested.results"
534
536
  }, url && formatMessage(_messages.messages.searchLinkResults, {
535
537
  count: items.length
536
- }))), (0, _core.jsx)(_LinkSearchList.default, {
538
+ }))), (0, _react2.jsx)(_linkSearchList.default, {
537
539
  ariaLabelledBy: "link-picker-list-title",
538
540
  ariaControls: "fabric.smartcard.linkpicker.suggested.results",
539
541
  id: linkSearchListId,
@@ -545,13 +547,13 @@ var LinkPicker = /*#__PURE__*/function (_PureComponent) {
545
547
  onSelect: this.handleSelected,
546
548
  onMouseEnter: this.handleMouseEnterResultItem,
547
549
  onMouseLeave: this.handleMouseLeaveResultItem
548
- }), (0, _core.jsx)(_form.FormFooter, {
550
+ }), (0, _react2.jsx)(_form.FormFooter, {
549
551
  align: "end"
550
- }, (0, _core.jsx)(_button.ButtonGroup, null, (0, _core.jsx)(_button.default, {
552
+ }, (0, _react2.jsx)(_button.ButtonGroup, null, (0, _react2.jsx)(_button.default, {
551
553
  appearance: "default",
552
554
  onClick: this.handleCancel,
553
555
  testId: "link-picker-cancel-button"
554
- }, formatMessage(_messages.messages.cancelButton)), (0, _core.jsx)(_button.default, {
556
+ }, formatMessage(_messages.messages.cancelButton)), (0, _react2.jsx)(_button.default, {
555
557
  type: "submit",
556
558
  appearance: "primary",
557
559
  onClick: this.handleSubmit,
@@ -2,12 +2,10 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
- exports.default = exports.List = void 0;
8
+ exports.default = void 0;
11
9
 
12
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
11
 
@@ -19,34 +17,20 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
19
17
 
20
18
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
19
 
22
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
20
+ var _react = require("react");
23
21
 
24
- var _react = _interopRequireWildcard(require("react"));
22
+ var _react2 = require("@emotion/react");
25
23
 
26
24
  var _spinner = _interopRequireDefault(require("@atlaskit/spinner"));
27
25
 
28
- var _styledComponents = _interopRequireDefault(require("styled-components"));
29
-
30
- var _LinkSearchListItem = _interopRequireDefault(require("./LinkSearchListItem"));
31
-
32
- var _templateObject, _templateObject2, _templateObject3;
33
-
34
- 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); }
26
+ var _listItem = _interopRequireDefault(require("../list-item"));
35
27
 
36
- 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; }
28
+ var _styled = require("./styled");
37
29
 
38
30
  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); }; }
39
31
 
40
32
  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; } }
41
33
 
42
- var ListContainer = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n padding-top: 0;\n"])));
43
-
44
- var SpinnerContainer = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n text-align: center;\n min-height: 80px;\n margin-top: 30px;\n"])));
45
-
46
- var List = _styledComponents.default.ul(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n padding: 0;\n list-style: none;\n"])));
47
-
48
- exports.List = List;
49
-
50
34
  var LinkSearchList = /*#__PURE__*/function (_PureComponent) {
51
35
  (0, _inherits2.default)(LinkSearchList, _PureComponent);
52
36
 
@@ -76,13 +60,15 @@ var LinkSearchList = /*#__PURE__*/function (_PureComponent) {
76
60
  var loadingContent;
77
61
 
78
62
  if (items && items.length > 0) {
79
- itemsContent = /*#__PURE__*/_react.default.createElement(List, {
63
+ itemsContent = (0, _react2.jsx)("ul", {
64
+ "data-testid": "link-search-list",
65
+ css: _styled.listStyles,
80
66
  id: id,
81
67
  role: role,
82
68
  "aria-controls": ariaControls,
83
69
  "aria-labelledby": ariaLabelledBy
84
70
  }, items.map(function (item, index) {
85
- return /*#__PURE__*/_react.default.createElement(_LinkSearchListItem.default, {
71
+ return (0, _react2.jsx)(_listItem.default, {
86
72
  id: "link-search-list-item-".concat(index),
87
73
  role: role && 'option',
88
74
  item: item,
@@ -97,13 +83,17 @@ var LinkSearchList = /*#__PURE__*/function (_PureComponent) {
97
83
  }
98
84
 
99
85
  if (isLoading) {
100
- loadingContent = /*#__PURE__*/_react.default.createElement(SpinnerContainer, null, /*#__PURE__*/_react.default.createElement(_spinner.default, {
86
+ loadingContent = (0, _react2.jsx)("div", {
87
+ css: _styled.spinnerContainerStyles
88
+ }, (0, _react2.jsx)(_spinner.default, {
101
89
  testId: "link-picker.results-loading-indicator",
102
90
  size: "medium"
103
91
  }));
104
92
  }
105
93
 
106
- return /*#__PURE__*/_react.default.createElement(ListContainer, null, itemsContent, loadingContent);
94
+ return (0, _react2.jsx)("div", {
95
+ css: _styled.listContainerStyles
96
+ }, itemsContent, loadingContent);
107
97
  }
108
98
  }]);
109
99
  return LinkSearchList;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.spinnerContainerStyles = exports.listStyles = exports.listContainerStyles = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _react = require("@emotion/react");
13
+
14
+ var _templateObject, _templateObject2, _templateObject3;
15
+
16
+ var listContainerStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n padding-top: 0;\n"])));
17
+ exports.listContainerStyles = listContainerStyles;
18
+ var spinnerContainerStyles = (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n text-align: center;\n min-height: 80px;\n margin-top: 30px;\n"])));
19
+ exports.spinnerContainerStyles = spinnerContainerStyles;
20
+ var listStyles = (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n padding: 0;\n list-style: none;\n"])));
21
+ exports.listStyles = listStyles;
@@ -7,13 +7,13 @@ exports.default = void 0;
7
7
 
8
8
  var _react = require("react");
9
9
 
10
- var _core = require("@emotion/core");
10
+ var _react2 = require("@emotion/react");
11
11
 
12
12
  var _reactIntlNext = require("react-intl-next");
13
13
 
14
- var _transformTimeStamp = require("../transformTimeStamp");
14
+ var _transformTimeStamp = require("../../transformTimeStamp");
15
15
 
16
- var _styles = require("../styles");
16
+ var _styled = require("./styled");
17
17
 
18
18
  /** @jsx jsx */
19
19
  var LinkSearchListItem = function LinkSearchListItem(_ref) {
@@ -39,39 +39,37 @@ var LinkSearchListItem = function LinkSearchListItem(_ref) {
39
39
  return onMouseLeave(item.objectId);
40
40
  };
41
41
 
42
- return (0, _core.jsx)(_styles.ListItemWrapper, {
42
+ var container = item.container || null;
43
+ var date = (0, _transformTimeStamp.transformTimeStamp)(intl, item.lastViewedDate, item.lastUpdatedDate);
44
+ return (0, _react2.jsx)("div", {
45
+ css: (0, _styled.composeListItemStyles)(active, selected),
43
46
  role: role,
44
47
  id: id,
45
48
  "aria-selected": selected,
46
49
  "data-testid": "link-search-list-item",
47
- selected: selected,
48
- active: active,
49
50
  onMouseEnter: handleMouseEnter,
50
51
  onMouseLeave: handleMouseLeave,
51
52
  onClick: handleSelect
52
- }, (0, _core.jsx)(ListItemIcon, {
53
+ }, (0, _react2.jsx)(ListItemIcon, {
53
54
  item: item,
54
55
  intl: intl
55
- }), (0, _core.jsx)(_styles.ItemNameWrapper, null, (0, _core.jsx)(_styles.ListItemName, null, item.name), (0, _core.jsx)(_styles.ListItemContext, null, item.container && (0, _core.jsx)(_react.Fragment, null, item.container, "\xA0 \u2022"), (0, _core.jsx)(ItemTimeStamp, {
56
- date: (0, _transformTimeStamp.transformTimeStamp)(intl, item.lastViewedDate, item.lastUpdatedDate)
57
- }))));
56
+ }), (0, _react2.jsx)("div", {
57
+ css: _styled.itemNameStyles
58
+ }, (0, _react2.jsx)("div", {
59
+ "data-testid": "link-search-list-item-title",
60
+ css: _styled.listItemNameStyles
61
+ }, item.name), (0, _react2.jsx)("div", {
62
+ "data-testid": "link-search-list-item-subtitle",
63
+ css: _styled.listItemContextStyles
64
+ }, container, container && date && (0, _react2.jsx)(_react.Fragment, null, "\xA0 \u2022\xA0 "), date && (0, _react2.jsx)(_react.Fragment, null, formatDate(date)))));
58
65
  };
59
66
 
60
67
  var _default = (0, _reactIntlNext.injectIntl)(LinkSearchListItem);
61
68
 
62
69
  exports.default = _default;
63
70
 
64
- var ItemTimeStamp = function ItemTimeStamp(props) {
65
- var date = props.date;
66
-
67
- if (!date) {
68
- return null;
69
- }
70
-
71
- return (0, _core.jsx)(_react.Fragment, null, (0, _core.jsx)("span", {
72
- className: "link-search-timestamp",
73
- "data-test-id": "link-search-timestamp"
74
- }, "\xA0 ", date.pageAction, " ", date.dateString, " ", date.timeSince || ''));
71
+ var formatDate = function formatDate(date) {
72
+ return [date.pageAction, date.dateString, date.timeSince].filter(Boolean).join(' ');
75
73
  };
76
74
 
77
75
  var ListItemIcon = function ListItemIcon(props) {
@@ -88,14 +86,18 @@ var ListItemIcon = function ListItemIcon(props) {
88
86
 
89
87
  if (typeof icon !== 'string') {
90
88
  var Glyph = icon;
91
- return (0, _core.jsx)(_styles.ItemIconWrapper, null, (0, _core.jsx)(Glyph, {
89
+ return (0, _react2.jsx)("span", {
90
+ css: _styled.itemIconStyles
91
+ }, (0, _react2.jsx)(Glyph, {
92
92
  alt: alt
93
93
  }));
94
94
  }
95
95
 
96
- return (0, _core.jsx)(_styles.ItemIconWrapper, null, (0, _core.jsx)("img", {
96
+ return (0, _react2.jsx)("span", {
97
+ css: _styled.itemIconStyles
98
+ }, (0, _react2.jsx)("img", {
97
99
  src: icon,
98
100
  alt: alt,
99
- css: _styles.ImgStyles
101
+ css: _styled.imgStyles
100
102
  }));
101
103
  };
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.relativeFontSizeToBase16 = exports.listItemNameStyles = exports.listItemContextStyles = exports.itemNameStyles = exports.itemIconStyles = exports.imgStyles = exports.composeListItemStyles = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _tokens = require("@atlaskit/tokens");
13
+
14
+ var _react = require("@emotion/react");
15
+
16
+ var _colors = require("@atlaskit/theme/colors");
17
+
18
+ var _constants = require("@atlaskit/theme/constants");
19
+
20
+ var _theme = require("@atlaskit/theme");
21
+
22
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;
23
+
24
+ var relativeFontSizeToBase16 = function relativeFontSizeToBase16(px) {
25
+ if (typeof px === 'string') {
26
+ px = parseInt(px);
27
+ }
28
+
29
+ if (isNaN(px)) {
30
+ throw new Error("Invalid font size: '".concat(px, "'"));
31
+ }
32
+
33
+ return "".concat(px / 16, "rem");
34
+ };
35
+
36
+ exports.relativeFontSizeToBase16 = relativeFontSizeToBase16;
37
+ var listItemBaseStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n padding: ", "px ", "px;\n margin: 0 -", "px;\n cursor: pointer;\n"])), (0, _constants.gridSize)(), (0, _constants.gridSize)() * 2, (0, _constants.gridSize)() * 2);
38
+ var listItemBoxShadow = (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n box-shadow: inset 2px 0px 0px ", ";\n"])), (0, _tokens.token)('color.border.selected', _colors.B400));
39
+ var listItemActive = (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n background-color: ", ";\n"])), (0, _tokens.token)('color.background.neutral.subtle.hovered', _colors.N20));
40
+ var listItemSelected = (0, _react.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n background-color: ", ";\n"])), (0, _tokens.token)('color.background.selected', _colors.B50));
41
+
42
+ var composeListItemStyles = function composeListItemStyles() {
43
+ var active = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
44
+ var selected = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
45
+ var hasShadow = active || selected;
46
+ return (0, _react.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n ", ";\n ", ";\n ", ";\n ", ";\n "])), listItemBaseStyles, active && listItemActive, selected && listItemSelected, hasShadow && listItemBoxShadow);
47
+ };
48
+
49
+ exports.composeListItemStyles = composeListItemStyles;
50
+ var itemNameStyles = (0, _react.css)(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n overflow: hidden;\n"])));
51
+ exports.itemNameStyles = itemNameStyles;
52
+ var listItemNameStyles = (0, _react.css)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n color: ", ";\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n line-height: 20px;\n"])), (0, _tokens.token)('color.text', _colors.N800));
53
+ exports.listItemNameStyles = listItemNameStyles;
54
+ var listItemContextStyles = (0, _react.css)(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\n color: ", ";\n font-size: ", ";\n line-height: ", "px;\n"])), (0, _tokens.token)('color.text', _colors.N300), relativeFontSizeToBase16((0, _theme.fontSizeSmall)()), (0, _theme.fontSize)());
55
+ exports.listItemContextStyles = listItemContextStyles;
56
+ var itemIconStyles = (0, _react.css)(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["\n min-width: ", "px;\n margin-top: 3px;\n margin-right: 12px;\n"])), (0, _constants.gridSize)() * 2);
57
+ exports.itemIconStyles = itemIconStyles;
58
+ var imgStyles = (0, _react.css)(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2.default)(["\n max-width: ", "px;\n"])), (0, _constants.gridSize)() * 2);
59
+ exports.imgStyles = imgStyles;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.searchIconStyles = exports.recentListStyles = exports.listTitleStyles = exports.containerStyles = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _tokens = require("@atlaskit/tokens");
13
+
14
+ var _react = require("@emotion/react");
15
+
16
+ var _colors = require("@atlaskit/theme/colors");
17
+
18
+ var _theme = require("@atlaskit/theme");
19
+
20
+ var _constants = require("@atlaskit/theme/constants");
21
+
22
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
23
+
24
+ var LINK_PICKER_WIDTH_IN_PX = 342;
25
+ var recentListStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: ", "px;\n"])), LINK_PICKER_WIDTH_IN_PX);
26
+ exports.recentListStyles = recentListStyles;
27
+ var containerStyles = (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n padding: ", "px;\n width: 100%;\n overflow: hidden;\n line-height: initial;\n box-sizing: border-box;\n"])), (0, _constants.gridSize)() * 2);
28
+ exports.containerStyles = containerStyles;
29
+ var searchIconStyles = (0, _react.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n margin-left: ", "px;\n color: ", ";\n cursor: default;\n"])), (0, _constants.gridSize)() / 2, (0, _tokens.token)('color.icon', _colors.N500));
30
+ exports.searchIconStyles = searchIconStyles;
31
+ var listTitleStyles = (0, _react.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n ", "\n text-transform: uppercase;\n margin-bottom: ", "px;\n"])), _theme.typography.h100(), (0, _constants.gridSize)() / 2);
32
+ exports.listTitleStyles = listTitleStyles;
@@ -2,8 +2,6 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
@@ -13,7 +11,9 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
13
11
 
14
12
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
13
 
16
- var _react = _interopRequireWildcard(require("react"));
14
+ var _react = require("react");
15
+
16
+ var _react2 = require("@emotion/react");
17
17
 
18
18
  var _form = require("@atlaskit/form");
19
19
 
@@ -23,16 +23,12 @@ var _textfield = _interopRequireDefault(require("@atlaskit/textfield"));
23
23
 
24
24
  var _selectClear = _interopRequireDefault(require("@atlaskit/icon/glyph/select-clear"));
25
25
 
26
- var _styles = require("../styles");
26
+ var _utils = require("../../utils");
27
27
 
28
- var _utils = require("../utils");
28
+ var _styled = require("./styled");
29
29
 
30
30
  var _excluded = ["name", "label", "autoFocus", "onSubmit", "onRedo", "onUndo", "onChange", "onKeyDown", "onClear", "clearLabel", "error"];
31
31
 
32
- 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); }
33
-
34
- 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; }
35
-
36
32
  var PanelTextInput = function PanelTextInput(props) {
37
33
  var name = props.name,
38
34
  label = props.label,
@@ -87,29 +83,30 @@ var PanelTextInput = function PanelTextInput(props) {
87
83
  onClear();
88
84
  }
89
85
  }, [onClear]);
90
-
91
- var clearText = restProps.value !== '' && /*#__PURE__*/_react.default.createElement(_tooltip.default, {
86
+ var clearText = restProps.value !== '' && (0, _react2.jsx)(_tooltip.default, {
92
87
  content: clearLabel
93
- }, /*#__PURE__*/_react.default.createElement(_styles.ClearText, {
88
+ }, (0, _react2.jsx)("button", {
89
+ css: _styled.clearTextButtonStyles,
94
90
  onClick: handleClear,
95
91
  "data-testid": "clear-text"
96
- }, /*#__PURE__*/_react.default.createElement(_selectClear.default, {
92
+ }, (0, _react2.jsx)(_selectClear.default, {
97
93
  size: "medium",
98
94
  label: clearLabel || ''
99
95
  })));
100
-
101
- return /*#__PURE__*/_react.default.createElement(_styles.FieldWrapper, null, /*#__PURE__*/_react.default.createElement(_form.Field, {
96
+ return (0, _react2.jsx)("div", {
97
+ css: _styled.fieldStyles
98
+ }, (0, _react2.jsx)(_form.Field, {
102
99
  label: label,
103
100
  name: name
104
101
  }, function (_ref) {
105
102
  var fieldProps = _ref.fieldProps;
106
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_textfield.default, (0, _extends2.default)({}, fieldProps, restProps, {
103
+ return (0, _react2.jsx)(_react.Fragment, null, (0, _react2.jsx)(_textfield.default, (0, _extends2.default)({}, fieldProps, restProps, {
107
104
  onKeyDown: handleKeydown,
108
105
  onChange: handleChange,
109
106
  ref: handleRef,
110
107
  elemAfterInput: clearText,
111
108
  isInvalid: !!error
112
- })), error && /*#__PURE__*/_react.default.createElement(_form.ErrorMessage, {
109
+ })), error && (0, _react2.jsx)(_form.ErrorMessage, {
113
110
  testId: "link-error"
114
111
  }, error));
115
112
  }));
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.fieldStyles = exports.clearTextButtonStyles = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _tokens = require("@atlaskit/tokens");
13
+
14
+ var _react = require("@emotion/react");
15
+
16
+ var _colors = require("@atlaskit/theme/colors");
17
+
18
+ var _constants = require("@atlaskit/theme/constants");
19
+
20
+ var _templateObject, _templateObject2;
21
+
22
+ var clearTextButtonStyles = (0, _react.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n padding: 0;\n margin-right: ", "px;\n color: ", ";\n background: transparent;\n border: none;\n cursor: pointer;\n"])), (0, _constants.gridSize)() / 2, (0, _tokens.token)('color.icon.subtle', _colors.N500));
23
+ exports.clearTextButtonStyles = clearTextButtonStyles;
24
+ var fieldStyles = (0, _react.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n margin-bottom: ", "px;\n"])), (0, _constants.gridSize)() * 2);
25
+ exports.fieldStyles = fieldStyles;
package/dist/cjs/utils.js CHANGED
@@ -3,23 +3,10 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.relativeFontSizeToBase16 = exports.isUndoEvent = exports.isRedoEvent = void 0;
6
+ exports.isUndoEvent = exports.isRedoEvent = void 0;
7
7
 
8
8
  var _browser = require("./browser");
9
9
 
10
- var relativeFontSizeToBase16 = function relativeFontSizeToBase16(px) {
11
- if (typeof px === 'string') {
12
- px = parseInt(px);
13
- }
14
-
15
- if (isNaN(px)) {
16
- throw new Error("Invalid font size: '".concat(px, "'"));
17
- }
18
-
19
- return "".concat(px / 16, "rem");
20
- };
21
-
22
- exports.relativeFontSizeToBase16 = relativeFontSizeToBase16;
23
10
  var KeyZCode = 90;
24
11
  var KeyYCode = 89;
25
12
 
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@atlaskit/link-picker",
3
- "version": "0.9.0",
3
+ "version": "0.10.0",
4
4
  "sideEffects": false
5
5
  }
@@ -2,13 +2,13 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
2
 
3
3
  /** @jsx jsx */
4
4
  import React, { PureComponent } from 'react';
5
- import { jsx } from '@emotion/core';
5
+ import { jsx } from '@emotion/react';
6
6
  import { injectIntl } from 'react-intl-next';
7
7
  import { messages } from '../messages';
8
- import PanelTextInput from './PanelTextInput';
9
- import LinkSearchList from './LinkSearchList';
8
+ import PanelTextInput from './text-input';
9
+ import LinkSearchList from './link-search-list';
10
10
  import { normalizeUrl, isSafeUrl } from '../url';
11
- import { recentListStyles, Container, SearchIconWrapper, ListTitleStyles } from '../styles';
11
+ import { recentListStyles, containerStyles, searchIconStyles, listTitleStyles } from './styled';
12
12
  import { browser } from '../browser';
13
13
  import { transformTimeStamp } from '../transformTimeStamp';
14
14
  import Announcer from './announcer';
@@ -370,7 +370,8 @@ class LinkPicker extends PureComponent {
370
370
  // for details: https://a11y-internal.atlassian.net/browse/AK-740
371
371
 
372
372
  const screenReaderText = browser.safari && this.getScreenReaderText();
373
- const searchIcon = activePlugin && jsx(SearchIconWrapper, {
373
+ const searchIcon = activePlugin && jsx("span", {
374
+ css: searchIconStyles,
374
375
  "data-testid": "link-picker-search-icon"
375
376
  }, jsx(EditorSearchIcon, {
376
377
  size: "medium",
@@ -380,8 +381,9 @@ class LinkPicker extends PureComponent {
380
381
  "data-testid": "link-picker",
381
382
  className: "recent-list",
382
383
  css: recentListStyles
383
- }, jsx(Container, {
384
- innerRef: this.wrapperRef
384
+ }, jsx("div", {
385
+ css: containerStyles,
386
+ ref: this.wrapperRef
385
387
  }, screenReaderText && jsx(Announcer, {
386
388
  ariaLive: "assertive",
387
389
  text: screenReaderText,
@@ -425,7 +427,7 @@ class LinkPicker extends PureComponent {
425
427
  onClear: this.handleClearDisplayText,
426
428
  clearLabel: formatMessage(messages.clearText)
427
429
  }), !!items.length && jsx("div", {
428
- css: ListTitleStyles,
430
+ css: listTitleStyles,
429
431
  id: "link-picker-list-title",
430
432
  "data-testid": "link-picker-list-title"
431
433
  }, formatMessage(this.state.url ? messages.titleResults : messages.titleRecentlyViewed)), jsx(VisuallyHidden, null, jsx("span", {