@atlaskit/select 16.3.0 → 16.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @atlaskit/select
2
2
 
3
+ ## 16.3.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [`1cd0d824b3c`](https://bitbucket.org/atlassian/atlassian-frontend/commits/1cd0d824b3c) - NO-ISSUE Add basic memoization on CheckboxSelect and RadioSelect to avoid unnecessary re-renders with otherwise static references.
8
+
3
9
  ## 16.3.0
4
10
 
5
11
  ### Minor Changes
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
@@ -8,24 +9,29 @@ exports.default = void 0;
8
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
- var _react = _interopRequireDefault(require("react"));
12
+ var _react = _interopRequireWildcard(require("react"));
12
13
  var _Select = _interopRequireDefault(require("./Select"));
13
14
  var _inputOptions = require("./components/input-options");
14
15
  var _excluded = ["components"];
16
+ 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); }
17
+ 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
18
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
16
19
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
17
- var CheckboxSelect = function CheckboxSelect(_ref) {
20
+ var CheckboxSelect = /*#__PURE__*/_react.default.memo(function (_ref) {
18
21
  var components = _ref.components,
19
22
  props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
20
- var temp = _objectSpread(_objectSpread({}, components), {}, {
21
- Option: _inputOptions.CheckboxOption
22
- });
23
+ var mergedComponents = (0, _react.useMemo)(function () {
24
+ return _objectSpread(_objectSpread({}, components), {}, {
25
+ Option: _inputOptions.CheckboxOption
26
+ });
27
+ }, [components]);
23
28
  return /*#__PURE__*/_react.default.createElement(_Select.default, (0, _extends2.default)({
24
29
  closeMenuOnSelect: false,
25
30
  hideSelectedOptions: false,
26
- isMulti: true,
27
- components: temp
28
- }, props));
29
- };
31
+ isMulti: true
32
+ }, props, {
33
+ components: mergedComponents
34
+ }));
35
+ });
30
36
  var _default = CheckboxSelect;
31
37
  exports.default = _default;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
@@ -8,21 +9,26 @@ exports.default = void 0;
8
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
- var _react = _interopRequireDefault(require("react"));
12
+ var _react = _interopRequireWildcard(require("react"));
12
13
  var _Select = _interopRequireDefault(require("./Select"));
13
14
  var _inputOptions = require("./components/input-options");
14
15
  var _excluded = ["components"];
16
+ 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); }
17
+ 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
18
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
16
19
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
17
- var RadioSelect = function RadioSelect(_ref) {
20
+ var RadioSelect = /*#__PURE__*/_react.default.memo(function (_ref) {
18
21
  var components = _ref.components,
19
22
  props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
23
+ var mergedComponents = (0, _react.useMemo)(function () {
24
+ return _objectSpread(_objectSpread({}, components), {}, {
25
+ Option: _inputOptions.RadioOption
26
+ });
27
+ }, [components]);
20
28
  return /*#__PURE__*/_react.default.createElement(_Select.default, (0, _extends2.default)({}, props, {
21
29
  isMulti: false,
22
- components: _objectSpread(_objectSpread({}, components), {}, {
23
- Option: _inputOptions.RadioOption
24
- })
30
+ components: mergedComponents
25
31
  }));
26
- };
32
+ });
27
33
  var _default = RadioSelect;
28
34
  exports.default = _default;
@@ -9,7 +9,7 @@ var _reactSelect = _interopRequireDefault(require("react-select"));
9
9
  var _analyticsNext = require("@atlaskit/analytics-next");
10
10
  var _createSelect = _interopRequireDefault(require("./createSelect"));
11
11
  var packageName = "@atlaskit/select";
12
- var packageVersion = "16.3.0";
12
+ var packageVersion = "16.3.1";
13
13
  var SelectWithoutAnalytics = (0, _createSelect.default)(_reactSelect.default);
14
14
  exports.SelectWithoutAnalytics = SelectWithoutAnalytics;
15
15
  var createAndFireEventOnAtlaskit = (0, _analyticsNext.createAndFireEvent)('atlaskit');
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@atlaskit/select",
3
- "version": "16.3.0",
3
+ "version": "16.3.1",
4
4
  "sideEffects": false
5
5
  }
@@ -1,20 +1,21 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
- import React from 'react';
2
+ import React, { useMemo } from 'react';
3
3
  import Select from './Select';
4
4
  import { CheckboxOption } from './components/input-options';
5
- const CheckboxSelect = ({
5
+ const CheckboxSelect = /*#__PURE__*/React.memo(({
6
6
  components,
7
7
  ...props
8
8
  }) => {
9
- const temp = {
9
+ const mergedComponents = useMemo(() => ({
10
10
  ...components,
11
11
  Option: CheckboxOption
12
- };
12
+ }), [components]);
13
13
  return /*#__PURE__*/React.createElement(Select, _extends({
14
14
  closeMenuOnSelect: false,
15
15
  hideSelectedOptions: false,
16
- isMulti: true,
17
- components: temp
18
- }, props));
19
- };
16
+ isMulti: true
17
+ }, props, {
18
+ components: mergedComponents
19
+ }));
20
+ });
20
21
  export default CheckboxSelect;
@@ -1,15 +1,18 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
- import React from 'react';
2
+ import React, { useMemo } from 'react';
3
3
  import Select from './Select';
4
4
  import { RadioOption } from './components/input-options';
5
- const RadioSelect = ({
5
+ const RadioSelect = /*#__PURE__*/React.memo(({
6
6
  components,
7
7
  ...props
8
- }) => /*#__PURE__*/React.createElement(Select, _extends({}, props, {
9
- isMulti: false,
10
- components: {
8
+ }) => {
9
+ const mergedComponents = useMemo(() => ({
11
10
  ...components,
12
11
  Option: RadioOption
13
- }
14
- }));
12
+ }), [components]);
13
+ return /*#__PURE__*/React.createElement(Select, _extends({}, props, {
14
+ isMulti: false,
15
+ components: mergedComponents
16
+ }));
17
+ });
15
18
  export default RadioSelect;
@@ -2,7 +2,7 @@ import Select from 'react-select';
2
2
  import { withAnalyticsEvents, withAnalyticsContext, createAndFireEvent } from '@atlaskit/analytics-next';
3
3
  import createSelect from './createSelect';
4
4
  const packageName = "@atlaskit/select";
5
- const packageVersion = "16.3.0";
5
+ const packageVersion = "16.3.1";
6
6
  export const SelectWithoutAnalytics = createSelect(Select);
7
7
  const createAndFireEventOnAtlaskit = createAndFireEvent('atlaskit');
8
8
  export default withAnalyticsContext({
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@atlaskit/select",
3
- "version": "16.3.0",
3
+ "version": "16.3.1",
4
4
  "sideEffects": false
5
5
  }
@@ -4,20 +4,23 @@ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProper
4
4
  var _excluded = ["components"];
5
5
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
6
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
- import React from 'react';
7
+ import React, { useMemo } from 'react';
8
8
  import Select from './Select';
9
9
  import { CheckboxOption } from './components/input-options';
10
- var CheckboxSelect = function CheckboxSelect(_ref) {
10
+ var CheckboxSelect = /*#__PURE__*/React.memo(function (_ref) {
11
11
  var components = _ref.components,
12
12
  props = _objectWithoutProperties(_ref, _excluded);
13
- var temp = _objectSpread(_objectSpread({}, components), {}, {
14
- Option: CheckboxOption
15
- });
13
+ var mergedComponents = useMemo(function () {
14
+ return _objectSpread(_objectSpread({}, components), {}, {
15
+ Option: CheckboxOption
16
+ });
17
+ }, [components]);
16
18
  return /*#__PURE__*/React.createElement(Select, _extends({
17
19
  closeMenuOnSelect: false,
18
20
  hideSelectedOptions: false,
19
- isMulti: true,
20
- components: temp
21
- }, props));
22
- };
21
+ isMulti: true
22
+ }, props, {
23
+ components: mergedComponents
24
+ }));
25
+ });
23
26
  export default CheckboxSelect;
@@ -4,17 +4,20 @@ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProper
4
4
  var _excluded = ["components"];
5
5
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
6
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
7
- import React from 'react';
7
+ import React, { useMemo } from 'react';
8
8
  import Select from './Select';
9
9
  import { RadioOption } from './components/input-options';
10
- var RadioSelect = function RadioSelect(_ref) {
10
+ var RadioSelect = /*#__PURE__*/React.memo(function (_ref) {
11
11
  var components = _ref.components,
12
12
  props = _objectWithoutProperties(_ref, _excluded);
13
+ var mergedComponents = useMemo(function () {
14
+ return _objectSpread(_objectSpread({}, components), {}, {
15
+ Option: RadioOption
16
+ });
17
+ }, [components]);
13
18
  return /*#__PURE__*/React.createElement(Select, _extends({}, props, {
14
19
  isMulti: false,
15
- components: _objectSpread(_objectSpread({}, components), {}, {
16
- Option: RadioOption
17
- })
20
+ components: mergedComponents
18
21
  }));
19
- };
22
+ });
20
23
  export default RadioSelect;
@@ -2,7 +2,7 @@ import Select from 'react-select';
2
2
  import { withAnalyticsEvents, withAnalyticsContext, createAndFireEvent } from '@atlaskit/analytics-next';
3
3
  import createSelect from './createSelect';
4
4
  var packageName = "@atlaskit/select";
5
- var packageVersion = "16.3.0";
5
+ var packageVersion = "16.3.1";
6
6
  export var SelectWithoutAnalytics = createSelect(Select);
7
7
  var createAndFireEventOnAtlaskit = createAndFireEvent('atlaskit');
8
8
  export default withAnalyticsContext({
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@atlaskit/select",
3
- "version": "16.3.0",
3
+ "version": "16.3.1",
4
4
  "sideEffects": false
5
5
  }
@@ -1,4 +1,4 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import { SelectProps, OptionType } from './types';
3
- declare const CheckboxSelect: ({ components, ...props }: SelectProps<OptionType, true>) => JSX.Element;
3
+ declare const CheckboxSelect: React.MemoExoticComponent<({ components, ...props }: SelectProps<OptionType, true>) => JSX.Element>;
4
4
  export default CheckboxSelect;
@@ -1,4 +1,4 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import { SelectProps, OptionType } from './types';
3
- declare const RadioSelect: ({ components, ...props }: SelectProps<OptionType>) => JSX.Element;
3
+ declare const RadioSelect: React.MemoExoticComponent<({ components, ...props }: SelectProps<OptionType>) => JSX.Element>;
4
4
  export default RadioSelect;
@@ -1,4 +1,4 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import { SelectProps, OptionType } from './types';
3
- declare const CheckboxSelect: ({ components, ...props }: SelectProps<OptionType, true>) => JSX.Element;
3
+ declare const CheckboxSelect: React.MemoExoticComponent<({ components, ...props }: SelectProps<OptionType, true>) => JSX.Element>;
4
4
  export default CheckboxSelect;
@@ -1,4 +1,4 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import { SelectProps, OptionType } from './types';
3
- declare const RadioSelect: ({ components, ...props }: SelectProps<OptionType>) => JSX.Element;
3
+ declare const RadioSelect: React.MemoExoticComponent<({ components, ...props }: SelectProps<OptionType>) => JSX.Element>;
4
4
  export default RadioSelect;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/select",
3
- "version": "16.3.0",
3
+ "version": "16.3.1",
4
4
  "description": "Select allows users to make a single selection or multiple selections from a list of options.",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -73,7 +73,6 @@
73
73
  "@atlaskit/radio": "^5.6.0",
74
74
  "@atlaskit/section-message": "^6.4.0",
75
75
  "@atlaskit/ssr": "*",
76
- "@atlaskit/tooltip": "^17.8.0",
77
76
  "@atlaskit/visual-regression": "*",
78
77
  "@atlaskit/webdriver-runner": "*",
79
78
  "@atlassian/atlassian-frontend-prettier-config-1.0.1": "npm:@atlassian/atlassian-frontend-prettier-config@1.0.1",