@atlaskit/range 5.1.1 → 6.0.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,34 @@
1
1
  # @atlaskit/range
2
2
 
3
+ ## 6.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - [`17d9edaa415`](https://bitbucket.org/atlassian/atlassian-frontend/commits/17d9edaa415) - In preparation for compiled adoption, internal styling has been rewritten to remove dynamic styles.
8
+ This includes custom theming using the `theme` prop, which has been removed.
9
+
10
+ If you are not using the `theme` prop, there should be no breaking changes.
11
+
12
+ ## 5.1.4
13
+
14
+ ### Patch Changes
15
+
16
+ - [`19d72473dfb`](https://bitbucket.org/atlassian/atlassian-frontend/commits/19d72473dfb) - The no-unsafe-design-token-usage eslint rule now respects the new token naming conventions when auto-fixing by correctly formatting token ids.
17
+ - [`19d72473dfb`](https://bitbucket.org/atlassian/atlassian-frontend/commits/19d72473dfb) - The no-unsafe-design-token-usage eslint rule now respects the new token naming conventions when auto-fixing by correctly formatting token ids.
18
+ - Updated dependencies
19
+
20
+ ## 5.1.3
21
+
22
+ ### Patch Changes
23
+
24
+ - Updated dependencies
25
+
26
+ ## 5.1.2
27
+
28
+ ### Patch Changes
29
+
30
+ - [`c55c736ecea`](https://bitbucket.org/atlassian/atlassian-frontend/commits/c55c736ecea) - Patch VULN AFP-3486 AFP-3487 AFP-3488 AFP-3489
31
+
3
32
  ## 5.1.1
4
33
 
5
34
  ### Patch Changes
package/dist/cjs/range.js CHANGED
@@ -21,15 +21,15 @@ var _react = _interopRequireWildcard(require("react"));
21
21
 
22
22
  var _styled = require("./styled");
23
23
 
24
- var _theme = require("./theme");
24
+ var _excluded = ["isDisabled", "defaultValue", "max", "min", "onChange", "step", "value", "testId"];
25
25
 
26
26
  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); }
27
27
 
28
28
  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; }
29
29
 
30
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
30
+ 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; }
31
31
 
32
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
32
+ 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; }
33
33
 
34
34
  var snapToStep = function snapToStep(value, min, step) {
35
35
  // Normalise the value to allow for division properly with different min values
@@ -67,9 +67,8 @@ var _default = /*#__PURE__*/(0, _react.forwardRef)(function Range(props, ref) {
67
67
  _props$step = props.step,
68
68
  step = _props$step === void 0 ? 1 : _props$step,
69
69
  propsValue = props.value,
70
- theme = props.theme,
71
70
  testId = props.testId,
72
- rest = (0, _objectWithoutProperties2.default)(props, ["isDisabled", "defaultValue", "max", "min", "onChange", "step", "value", "theme", "testId"]);
71
+ rest = (0, _objectWithoutProperties2.default)(props, _excluded);
73
72
 
74
73
  var spreadProps = _objectSpread({
75
74
  max: max,
@@ -91,18 +90,14 @@ var _default = /*#__PURE__*/(0, _react.forwardRef)(function Range(props, ref) {
91
90
  }, [onChange]);
92
91
  var renderValue = propsValue !== undefined ? propsValue : value;
93
92
  var valuePercent = getRoundedPercentValue(renderValue, min, max, step);
94
- return /*#__PURE__*/_react.default.createElement(_theme.Theme.Provider, {
95
- value: theme
96
- }, /*#__PURE__*/_react.default.createElement(_theme.Theme.Consumer, null, function (computedTheme) {
97
- return /*#__PURE__*/_react.default.createElement(_styled.Input, (0, _extends2.default)({
98
- type: "range",
99
- disabled: isDisabled,
100
- onChange: handleChange,
101
- value: renderValue,
102
- valuePercent: valuePercent,
103
- "data-testid": testId
104
- }, computedTheme, spreadProps));
105
- }));
93
+ return /*#__PURE__*/_react.default.createElement(_styled.Input, (0, _extends2.default)({
94
+ type: "range",
95
+ disabled: isDisabled,
96
+ onChange: handleChange,
97
+ value: renderValue,
98
+ valuePercent: valuePercent,
99
+ "data-testid": testId
100
+ }, spreadProps));
106
101
  });
107
102
 
108
103
  exports.default = _default;
@@ -2,94 +2,138 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
5
7
  Object.defineProperty(exports, "__esModule", {
6
8
  value: true
7
9
  });
8
- exports.Input = exports.rangeInputStyle = exports.overallHeight = void 0;
10
+ exports.Input = void 0;
9
11
 
10
12
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
13
 
12
14
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
15
 
14
- var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
16
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
17
 
16
18
  var _react = require("react");
17
19
 
18
20
  var _core = require("@emotion/core");
19
21
 
20
- var _colors = require("@atlaskit/theme/colors");
21
-
22
- var _constants = require("@atlaskit/theme/constants");
22
+ var theme = _interopRequireWildcard(require("./theme"));
23
23
 
24
- var _templateObject;
24
+ var _excluded = ["valuePercent", "style"];
25
25
 
26
- var sliderThumbSize = 16;
27
- var sliderThumbBorderThickness = 2;
28
- var sliderLineThickness = 4;
29
- var transitionDuration = '0.2s';
30
- var sliderBorderRadius = sliderLineThickness / 2;
31
- var overallHeight = 40;
32
- exports.overallHeight = overallHeight;
33
-
34
- var getBackgroundGradient = function getBackgroundGradient(_ref) {
35
- var lower = _ref.lower,
36
- upper = _ref.upper;
37
- return "\n background: linear-gradient(".concat(lower, ", ").concat(lower, ") 0 / var(--range-inline-width) 100%\n no-repeat ").concat(upper, ";\n [dir='rtl'] & {\n background-position: right;\n }\n ");
38
- };
26
+ var _activeHover, _disabled, _css;
39
27
 
40
- var elevationStyle = "var(--ds-overlay, ".concat("0 4px 8px -2px ".concat(_colors.N50A, ", 0 0 1px ").concat(_colors.N60A), ")"); // Thumb style
28
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
41
29
 
42
- var sliderThumbStyle = function sliderThumbStyle(_ref2) {
43
- var thumb = _ref2.thumb;
44
- return "\n background: ".concat(thumb.default.background, ";\n border: ").concat(sliderThumbBorderThickness, "px solid transparent;\n border-radius: 50%;\n height: ").concat(sliderThumbSize, "px;\n width: ").concat(sliderThumbSize, "px;\n box-sizing: border-box;\n transition: border-color ").concat(transitionDuration, " ease-in-out;\n box-shadow: ").concat(elevationStyle, "\n ");
45
- }; // Track styles
30
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
46
31
 
32
+ 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; }
47
33
 
48
- var sliderTrackStyle = "\n border-radius: ".concat(sliderBorderRadius, "px;\n border: 0;\n cursor: pointer;\n height: ").concat(sliderLineThickness, "px;\n width: 100%;\n transition: background-color ").concat(transitionDuration, " ease-in-out;\n"); // Range input styles
34
+ 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; }
49
35
 
50
- var chromeRangeInputStyle = function chromeRangeInputStyle(tokens) {
51
- return "\n &::-webkit-slider-thumb {\n -webkit-appearance: none;\n margin-top: -".concat((sliderThumbSize - sliderLineThickness) / 2, "px;\n ").concat(sliderThumbStyle(tokens), ";\n }\n\n &:focus::-webkit-slider-thumb {\n border-color: ").concat(tokens.thumb.focus.border, ";\n }\n\n &:disabled::-webkit-slider-thumb {\n cursor: not-allowed;\n box-shadow: ").concat(tokens.thumb.disabled.boxShadow, ";\n }\n\n &::-webkit-slider-runnable-track {\n ").concat(sliderTrackStyle, ";\n ").concat(getBackgroundGradient(tokens.track.default), ";\n }\n\n &:focus::-webkit-slider-runnable-track {\n ").concat(getBackgroundGradient(tokens.track.default), ";\n }\n\n &:active::-webkit-slider-runnable-track,\n &:hover::-webkit-slider-runnable-track {\n ").concat(getBackgroundGradient(tokens.track.hover), ";\n }\n\n &:disabled::-webkit-slider-runnable-track {\n ").concat(getBackgroundGradient(tokens.track.disabled), "\n cursor: not-allowed;\n }\n ");
36
+ var VAR_THUMB_BORDER_COLOR = '--thumb-border';
37
+ var VAR_THUMB_SHADOW = '--thumb-shadow';
38
+ var VAR_TRACK_BACKGROUND_COLOR = '--track-bg';
39
+ var VAR_TRACK_FOREGROUND_COLOR = '--track-fg';
40
+ var VAR_TRACK_FOREGROUND_WIDTH = '--track-fg-width';
41
+ var sliderThumbStyles = {
42
+ boxSizing: 'border-box',
43
+ width: theme.thumb.size,
44
+ height: theme.thumb.size,
45
+ background: theme.thumb.background,
46
+ border: "".concat(theme.thumb.borderWidth, "px solid var(").concat(VAR_THUMB_BORDER_COLOR, ")"),
47
+ borderRadius: '50%',
48
+ boxShadow: "var(".concat(VAR_THUMB_SHADOW, ")"),
49
+ cursor: 'pointer',
50
+ // Different implicit behavior across browsers -> making it explicit
51
+ transition: "border-color ".concat(theme.transitionDuration, " ease-in-out")
52
52
  };
53
-
54
- var firefoxRangeInputStyle = function firefoxRangeInputStyle(tokens) {
55
- return "\n &::-moz-focus-outer {\n border: 0;\n }\n\n &::-moz-range-thumb {\n ".concat(sliderThumbStyle(tokens), ";\n }\n\n &:focus::-moz-range-thumb {\n border-color: ").concat(tokens.thumb.focus.border, ";\n }\n\n &:disabled::-moz-range-thumb {\n cursor: not-allowed;\n box-shadow: ").concat(tokens.thumb.disabled.boxShadow, ";\n }\n\n &::-moz-range-progress {\n ").concat(sliderTrackStyle, ";\n background: ").concat(tokens.track.default.lower, ";\n }\n\n &::-moz-range-track {\n ").concat(sliderTrackStyle, ";\n background: ").concat(tokens.track.default.upper, ";\n }\n\n &:active::-moz-range-progress,\n &:hover::-moz-range-progress {\n background: ").concat(tokens.track.hover.lower, ";\n }\n\n &:active::-moz-range-track,\n &:hover::-moz-range-track {\n background: ").concat(tokens.track.hover.upper, ";\n }\n\n &:disabled::-moz-range-progress {\n background: ").concat(tokens.track.disabled.lower, ";\n cursor: not-allowed;\n }\n\n &:disabled::-moz-range-track {\n background: ").concat(tokens.track.disabled.upper, ";\n cursor: not-allowed;\n }\n");
56
- };
57
-
58
- var IERangeInputStyle = function IERangeInputStyle(tokens) {
59
- return "\n &::-ms-thumb {\n margin-top: 0;\n ".concat(sliderThumbStyle(tokens), ";\n }\n\n &:focus::-ms-thumb {\n border-color: ").concat(tokens.thumb.focus.border, ";\n }\n\n &:disabled::-ms-thumb {\n cursor: not-allowed;\n box-shadow: ").concat(tokens.thumb.disabled.boxShadow, ";\n }\n\n &::-ms-track {\n background: transparent;\n border-color: transparent;\n color: transparent;\n cursor: pointer;\n height: ").concat(sliderLineThickness, "px;\n transition: background-color ").concat(transitionDuration, " ease-in-out;\n width: 100%;\n }\n\n &::-ms-fill-lower {\n background: ").concat(tokens.track.default.lower, ";\n border-radius: ").concat(sliderBorderRadius, "px;\n border: 0;\n }\n\n &::-ms-fill-upper {\n background: ").concat(tokens.track.default.upper, ";\n border-radius: ").concat(sliderBorderRadius, "px;\n border: 0;\n }\n\n &:active::-ms-fill-lower,\n &:hover::-ms-fill-lower {\n background: ").concat(tokens.track.hover.lower, ";\n }\n\n &:active::-ms-fill-upper,\n &:hover::-ms-fill-upper {\n background: ").concat(tokens.track.hover.upper, ";\n }\n\n &:disabled::-ms-fill-lower {\n background: ").concat(tokens.track.disabled.lower, ";\n cursor: not-allowed;\n }\n\n &:disabled::-ms-fill-upper {\n background: ").concat(tokens.track.disabled.upper, ";\n cursor: not-allowed;\n }\n");
53
+ var sliderTrackStyles = {
54
+ borderRadius: theme.track.borderRadius,
55
+ border: 0,
56
+ cursor: 'pointer',
57
+ height: theme.track.height,
58
+ width: '100%',
59
+ transition: "background-color ".concat(theme.transitionDuration, " ease-in-out")
60
60
  }; // Styles are split per browser as they are implemented differently
61
61
  // Cannot consolidate as Chrome & Firefox don't recognise styles if they are grouped
62
62
  // with CSS selectors they don't recognise, e.g. &::-ms-thumb
63
63
 
64
-
65
- var rangeInputStyle = function rangeInputStyle(tokens) {
66
- return (0, _core.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n -webkit-appearance: none; /* Hides the slider so that custom slider can be made */\n background: transparent; /* Otherwise white in Chrome */\n height: ", "px; /* Otherwise thumb will collide with previous box element */\n padding: 0; /* IE11 includes padding, this normalises it */\n width: 100%; /* Specific width is required for Firefox. */\n\n &:focus {\n outline: none;\n }\n\n &:disabled {\n cursor: not-allowed;\n }\n\n ", "\n ", "\n ", ";\n\n font-family: ", ";\n\n background-position: right;\n "])), overallHeight, chromeRangeInputStyle(tokens), firefoxRangeInputStyle(tokens), IERangeInputStyle(tokens), (0, _constants.fontFamily)());
64
+ var browserStyles = {
65
+ webkit: (0, _core.css)({
66
+ WebkitAppearance: 'none',
67
+ // Hides the slider so that custom slider can be made
68
+ '::-webkit-slider-thumb': _objectSpread(_objectSpread({}, sliderThumbStyles), {}, {
69
+ marginTop: -(theme.thumb.size - theme.track.height) / 2,
70
+ WebkitAppearance: 'none'
71
+ }),
72
+ '::-webkit-slider-runnable-track': _objectSpread(_objectSpread({}, sliderTrackStyles), {}, {
73
+ /**
74
+ * Webkit does not have separate properties for the background/foreground like firefox.
75
+ * Instead we use background layering:
76
+ * - The gray background is a simple background color.
77
+ * - The blue foreground is a 'gradient' (to create a color block) that is sized to the progress.
78
+ *
79
+ * Individual properties have been used over the `background` shorthand for readability.
80
+ */
81
+ backgroundColor: "var(".concat(VAR_TRACK_BACKGROUND_COLOR, ")"),
82
+ backgroundImage: "linear-gradient(var(".concat(VAR_TRACK_FOREGROUND_COLOR, "), var(").concat(VAR_TRACK_FOREGROUND_COLOR, "))"),
83
+ backgroundRepeat: 'no-repeat',
84
+ backgroundSize: "var(".concat(VAR_TRACK_FOREGROUND_WIDTH, ") 100%"),
85
+ // eslint-disable-next-line @repo/internal/styles/no-nested-styles
86
+ '[dir="rtl"] &': {
87
+ backgroundPosition: 'right'
88
+ }
89
+ }),
90
+ ':disabled': {
91
+ '::-webkit-slider-thumb, ::-webkit-slider-runnable-track': {
92
+ cursor: 'not-allowed'
93
+ }
94
+ }
95
+ }),
96
+ firefox: (0, _core.css)({
97
+ '::-moz-range-thumb': sliderThumbStyles,
98
+ '::-moz-focus-outer': {
99
+ border: 0
100
+ },
101
+ '::-moz-range-progress': _objectSpread(_objectSpread({}, sliderTrackStyles), {}, {
102
+ background: "var(".concat(VAR_TRACK_FOREGROUND_COLOR, ")")
103
+ }),
104
+ '::-moz-range-track': _objectSpread(_objectSpread({}, sliderTrackStyles), {}, {
105
+ background: "var(".concat(VAR_TRACK_BACKGROUND_COLOR, ")")
106
+ }),
107
+ ':disabled': {
108
+ '::-moz-range-thumb, ::-moz-range-progress, ::-moz-range-track': {
109
+ cursor: 'not-allowed'
110
+ }
111
+ }
112
+ })
67
113
  };
68
-
69
- exports.rangeInputStyle = rangeInputStyle;
114
+ var baseStyles = (0, _core.css)({
115
+ width: '100%',
116
+ // Has a fixed width by default
117
+ height: theme.input.height,
118
+ // Otherwise thumb will collide with previous box element
119
+ background: 'transparent',
120
+ // Otherwise white
121
+ ':focus': {
122
+ outline: 'none'
123
+ },
124
+ ':disabled': {
125
+ cursor: 'not-allowed'
126
+ }
127
+ });
128
+ var themeStyles = (0, _core.css)((_css = {}, (0, _defineProperty2.default)(_css, VAR_THUMB_BORDER_COLOR, theme.thumb.borderColor.default), (0, _defineProperty2.default)(_css, VAR_THUMB_SHADOW, theme.thumb.boxShadow.default), (0, _defineProperty2.default)(_css, VAR_TRACK_BACKGROUND_COLOR, theme.track.background.default), (0, _defineProperty2.default)(_css, VAR_TRACK_FOREGROUND_COLOR, theme.track.foreground.default), (0, _defineProperty2.default)(_css, ':active, :hover', (_activeHover = {}, (0, _defineProperty2.default)(_activeHover, VAR_TRACK_BACKGROUND_COLOR, theme.track.background.hovered), (0, _defineProperty2.default)(_activeHover, VAR_TRACK_FOREGROUND_COLOR, theme.track.foreground.hovered), _activeHover)), (0, _defineProperty2.default)(_css, ':focus', (0, _defineProperty2.default)({}, VAR_THUMB_BORDER_COLOR, theme.thumb.borderColor.focused)), (0, _defineProperty2.default)(_css, ':disabled', (_disabled = {}, (0, _defineProperty2.default)(_disabled, VAR_THUMB_SHADOW, theme.thumb.boxShadow.disabled), (0, _defineProperty2.default)(_disabled, VAR_TRACK_BACKGROUND_COLOR, theme.track.background.disabled), (0, _defineProperty2.default)(_disabled, VAR_TRACK_FOREGROUND_COLOR, theme.track.foreground.disabled), _disabled)), _css));
70
129
  var Input = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
71
130
  var valuePercent = props.valuePercent,
72
- thumb = props.thumb,
73
- track = props.track,
74
131
  style = props.style,
75
- strippedProps = (0, _objectWithoutProperties2.default)(props, ["valuePercent", "thumb", "track", "style"]); // Note: emotion will cache unique outputs as their own this
76
- // We are memoizing the creation of this string
77
-
78
- var styles = (0, _react.useMemo)(function () {
79
- return rangeInputStyle({
80
- track: track,
81
- thumb: thumb
82
- });
83
- }, [thumb, track]); // We are creating a css variable to control the "progress" portion of the range input
84
- // This avoids us needing to create a new css class for each new percentage value
85
-
132
+ strippedProps = (0, _objectWithoutProperties2.default)(props, _excluded);
86
133
  return (0, _core.jsx)("input", (0, _extends2.default)({}, strippedProps, {
87
- style: {
88
- '--range-inline-width': "".concat(valuePercent, "%")
89
- },
90
- ref: ref // eslint-disable-next-line @repo/internal/react/consistent-css-prop-usage
91
- ,
92
- css: styles
134
+ style: (0, _defineProperty2.default)({}, VAR_TRACK_FOREGROUND_WIDTH, "".concat(valuePercent, "%")),
135
+ ref: ref,
136
+ css: [baseStyles, browserStyles.webkit, browserStyles.firefox, themeStyles]
93
137
  }));
94
138
  });
95
139
  exports.Input = Input;
package/dist/cjs/theme.js CHANGED
@@ -5,48 +5,51 @@ var _typeof = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.Theme = exports.track = exports.thumb = void 0;
8
+ exports.transitionDuration = exports.track = exports.thumb = exports.input = void 0;
9
9
 
10
10
  var colors = _interopRequireWildcard(require("@atlaskit/theme/colors"));
11
11
 
12
- var _components = require("@atlaskit/theme/components");
13
-
14
12
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
13
 
16
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; }
17
15
 
16
+ var transitionDuration = '0.2s';
17
+ exports.transitionDuration = transitionDuration;
18
+ var input = {
19
+ height: 40
20
+ };
21
+ exports.input = input;
18
22
  var thumb = {
19
- default: {
20
- background: "var(--ds-background-card, ".concat(colors.N0, ")")
21
- },
22
- disabled: {
23
- boxShadow: "var(--ds-card, ".concat("0 0 1px ".concat(colors.N60A), ")")
23
+ size: 16,
24
+ borderWidth: 2,
25
+ background: "var(--ds-surface-raised, ".concat(colors.N0, ")"),
26
+ borderColor: {
27
+ default: 'transparent',
28
+ focused: "var(--ds-border-focused, ".concat(colors.B200, ")")
24
29
  },
25
- focus: {
26
- background: "var(--ds-background-boldNeutral-resting, ".concat(colors.N0, ")"),
27
- border: "var(--ds-border-focus, ".concat(colors.B200, ")")
30
+ boxShadow: {
31
+ default: "var(--ds-shadow-overlay, ".concat("0 4px 8px -2px ".concat(colors.N50A, ", 0 0 1px ").concat(colors.N60A), ")"),
32
+ disabled: "var(--ds-shadow-raised, ".concat("0 0 1px ".concat(colors.N60A), ")")
28
33
  }
29
34
  };
30
35
  exports.thumb = thumb;
31
36
  var track = {
32
- default: {
33
- lower: "var(--ds-background-boldBrand-resting, ".concat(colors.B400, ")"),
34
- upper: "var(--ds-background-subtleNeutral-resting, ".concat(colors.N30, ")")
35
- },
36
- disabled: {
37
- lower: "var(--ds-text-disabled, ".concat(colors.N50, ")"),
38
- upper: "var(--ds-background-disabled, ".concat(colors.N30, ")")
37
+ height: 4,
38
+
39
+ /**
40
+ * borderRadius >= height / 2 to create a pill shape.
41
+ * Using '50%' creates an ellipse.
42
+ */
43
+ borderRadius: 2,
44
+ background: {
45
+ default: "var(--ds-background-neutral, ".concat(colors.N30, ")"),
46
+ hovered: "var(--ds-background-neutral-hovered, ".concat(colors.N40, ")"),
47
+ disabled: "var(--ds-background-disabled, ".concat(colors.N30, ")")
39
48
  },
40
- hover: {
41
- lower: "var(--ds-background-boldBrand-hover, ".concat(colors.B300, ")"),
42
- upper: "var(--ds-background-subtleNeutral-hover, ".concat(colors.N40, ")")
49
+ foreground: {
50
+ default: "var(--ds-background-brand-bold, ".concat(colors.B400, ")"),
51
+ hovered: "var(--ds-background-brand-bold-hovered, ".concat(colors.B300, ")"),
52
+ disabled: "var(--ds-text-disabled, ".concat(colors.N50, ")")
43
53
  }
44
54
  };
45
- exports.track = track;
46
- var Theme = (0, _components.createTheme)(function () {
47
- return {
48
- thumb: thumb,
49
- track: track
50
- };
51
- });
52
- exports.Theme = Theme;
55
+ exports.track = track;
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "@atlaskit/range",
3
- "version": "5.1.1",
3
+ "version": "6.0.0",
4
4
  "sideEffects": false
5
5
  }
@@ -1,7 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import React, { forwardRef, useCallback, useState } from 'react';
3
3
  import { Input } from './styled';
4
- import { Theme } from './theme';
5
4
 
6
5
  const snapToStep = (value, min, step) => {
7
6
  // Normalise the value to allow for division properly with different min values
@@ -34,7 +33,6 @@ export default /*#__PURE__*/forwardRef(function Range(props, ref) {
34
33
  onChange = noop,
35
34
  step = 1,
36
35
  value: propsValue,
37
- theme,
38
36
  testId,
39
37
  ...rest
40
38
  } = props;
@@ -54,14 +52,12 @@ export default /*#__PURE__*/forwardRef(function Range(props, ref) {
54
52
  }, [onChange]);
55
53
  const renderValue = propsValue !== undefined ? propsValue : value;
56
54
  const valuePercent = getRoundedPercentValue(renderValue, min, max, step);
57
- return /*#__PURE__*/React.createElement(Theme.Provider, {
58
- value: theme
59
- }, /*#__PURE__*/React.createElement(Theme.Consumer, null, computedTheme => /*#__PURE__*/React.createElement(Input, _extends({
55
+ return /*#__PURE__*/React.createElement(Input, _extends({
60
56
  type: "range",
61
57
  disabled: isDisabled,
62
58
  onChange: handleChange,
63
59
  value: renderValue,
64
60
  valuePercent: valuePercent,
65
61
  "data-testid": testId
66
- }, computedTheme, spreadProps))));
62
+ }, spreadProps));
67
63
  });