@atlaskit/textarea 4.7.7 → 5.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 +47 -41
- package/dist/cjs/component-tokens.js +13 -65
- package/dist/cjs/index.js +1 -14
- package/dist/cjs/styles.js +84 -38
- package/dist/cjs/text-area.js +10 -28
- package/dist/es2019/component-tokens.js +14 -53
- package/dist/es2019/index.js +1 -2
- package/dist/es2019/styles.js +73 -27
- package/dist/es2019/text-area.js +6 -22
- package/dist/esm/component-tokens.js +14 -53
- package/dist/esm/index.js +1 -2
- package/dist/esm/styles.js +77 -31
- package/dist/esm/text-area.js +10 -27
- package/dist/types/component-tokens.d.ts +13 -52
- package/dist/types/index.d.ts +0 -2
- package/dist/types/styles.d.ts +1 -2
- package/dist/types/types.d.ts +22 -22
- package/dist/types-ts4.5/component-tokens.d.ts +13 -52
- package/dist/types-ts4.5/index.d.ts +0 -2
- package/dist/types-ts4.5/styles.d.ts +1 -2
- package/dist/types-ts4.5/types.d.ts +22 -22
- package/package.json +4 -5
- package/report.api.md +0 -169
- package/tmp/api-report-tmp.d.ts +0 -167
- package/dist/cjs/theme.js +0 -122
- package/dist/es2019/theme.js +0 -110
- package/dist/esm/theme.js +0 -111
- package/dist/types/theme.d.ts +0 -174
- package/dist/types-ts4.5/theme.d.ts +0 -174
- package/theme/package.json +0 -15
package/dist/cjs/text-area.js
CHANGED
|
@@ -13,17 +13,15 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
|
|
|
13
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
14
14
|
var _react2 = require("@emotion/react");
|
|
15
15
|
var _analyticsNext = require("@atlaskit/analytics-next");
|
|
16
|
-
var _components = require("@atlaskit/theme/components");
|
|
17
16
|
var _styles = require("./styles");
|
|
18
|
-
var
|
|
19
|
-
var _excluded = ["resize", "appearance", "isCompact", "isRequired", "isReadOnly", "isDisabled", "isInvalid", "isMonospaced", "minimumRows", "theme", "testId", "maxHeight", "onBlur", "onFocus", "onChange", "tokens", "value"];
|
|
17
|
+
var _excluded = ["resize", "appearance", "isCompact", "isRequired", "isReadOnly", "isDisabled", "isInvalid", "isMonospaced", "minimumRows", "testId", "maxHeight", "onBlur", "onFocus", "onChange", "value"];
|
|
20
18
|
/** @jsx jsx */
|
|
21
19
|
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); }
|
|
22
20
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
23
|
-
function ownKeys(
|
|
24
|
-
function _objectSpread(
|
|
21
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
22
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
25
23
|
var packageName = "@atlaskit/textarea";
|
|
26
|
-
var packageVersion = "
|
|
24
|
+
var packageVersion = "5.0.0";
|
|
27
25
|
var analyticsParams = {
|
|
28
26
|
componentName: 'textArea',
|
|
29
27
|
packageName: packageName,
|
|
@@ -37,7 +35,7 @@ var setSmartHeight = function setSmartHeight(el) {
|
|
|
37
35
|
var borderBoxHeight = paddingBoxHeight + borderHeight * 2;
|
|
38
36
|
el.style.height = "".concat(borderBoxHeight, "px");
|
|
39
37
|
};
|
|
40
|
-
var
|
|
38
|
+
var InnerTextArea = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
41
39
|
var ourRef = (0, _react.useRef)(null);
|
|
42
40
|
var _props$resize = props.resize,
|
|
43
41
|
resize = _props$resize === void 0 ? 'smart' : _props$resize,
|
|
@@ -57,14 +55,12 @@ var TextAreaWithTokens = /*#__PURE__*/(0, _react.forwardRef)(function (props, re
|
|
|
57
55
|
isMonospaced = _props$isMonospaced === void 0 ? false : _props$isMonospaced,
|
|
58
56
|
_props$minimumRows = props.minimumRows,
|
|
59
57
|
minimumRows = _props$minimumRows === void 0 ? 2 : _props$minimumRows,
|
|
60
|
-
theme = props.theme,
|
|
61
58
|
testId = props.testId,
|
|
62
59
|
_props$maxHeight = props.maxHeight,
|
|
63
60
|
maxHeight = _props$maxHeight === void 0 ? '50vh' : _props$maxHeight,
|
|
64
61
|
onBlur = props.onBlur,
|
|
65
62
|
onFocus = props.onFocus,
|
|
66
63
|
onChange = props.onChange,
|
|
67
|
-
tokens = props.tokens,
|
|
68
64
|
value = props.value,
|
|
69
65
|
rest = (0, _objectWithoutProperties2.default)(props, _excluded);
|
|
70
66
|
(0, _react.useEffect)(function () {
|
|
@@ -116,9 +112,7 @@ var TextAreaWithTokens = /*#__PURE__*/(0, _react.forwardRef)(function (props, re
|
|
|
116
112
|
maxHeight: maxHeight
|
|
117
113
|
});
|
|
118
114
|
}, [minimumRows, resize, appearance, isMonospaced, maxHeight]);
|
|
119
|
-
var textAreaStyles = (0, _react2.css)([baseStyles,
|
|
120
|
-
// not memoizing themeStyles as `tokens` is an unstable reference
|
|
121
|
-
(0, _styles.themeStyles)(tokens, appearance)]);
|
|
115
|
+
var textAreaStyles = (0, _react2.css)([baseStyles, (0, _styles.dynamicStyles)(appearance)]);
|
|
122
116
|
return (0, _react2.jsx)("textarea", (0, _extends2.default)({}, controlProps, {
|
|
123
117
|
value: value,
|
|
124
118
|
disabled: isDisabled,
|
|
@@ -147,21 +141,9 @@ var TextAreaWithTokens = /*#__PURE__*/(0, _react.forwardRef)(function (props, re
|
|
|
147
141
|
* - [Usage](https://atlassian.design/components/textarea/usage)
|
|
148
142
|
*/
|
|
149
143
|
var TextArea = /*#__PURE__*/(0, _react.memo)( /*#__PURE__*/(0, _react.forwardRef)(function TextArea(props, ref) {
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
value: props.theme
|
|
154
|
-
}, (0, _react2.jsx)(_theme.Theme.Consumer, {
|
|
155
|
-
appearance: props.appearance || 'standard',
|
|
156
|
-
mode: mode
|
|
157
|
-
}, function (tokens) {
|
|
158
|
-
return (0, _react2.jsx)(TextAreaWithTokens, (0, _extends2.default)({
|
|
159
|
-
ref: ref
|
|
160
|
-
}, props, {
|
|
161
|
-
tokens: tokens
|
|
162
|
-
}));
|
|
163
|
-
}));
|
|
144
|
+
return (0, _react2.jsx)(InnerTextArea, (0, _extends2.default)({
|
|
145
|
+
ref: ref
|
|
146
|
+
}, props));
|
|
164
147
|
}));
|
|
165
148
|
TextArea.displayName = 'TextArea';
|
|
166
|
-
var _default = TextArea;
|
|
167
|
-
exports.default = _default;
|
|
149
|
+
var _default = exports.default = TextArea;
|
|
@@ -1,54 +1,15 @@
|
|
|
1
1
|
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
2
|
-
import {
|
|
3
|
-
export const disabledBackground = {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
}
|
|
7
|
-
export const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
export const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
export const
|
|
16
|
-
light: `var(--ds-border-input, ${getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? N100 : N40})`,
|
|
17
|
-
dark: `var(--ds-border-input, ${getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? DN200 : DN40})`
|
|
18
|
-
};
|
|
19
|
-
export const defaultBorderColorFocus = {
|
|
20
|
-
light: `var(--ds-border-focused, ${B200})`,
|
|
21
|
-
dark: `var(--ds-border-focused, ${B100})`
|
|
22
|
-
};
|
|
23
|
-
export const defaultBackgroundColor = {
|
|
24
|
-
light: `var(--ds-background-input, ${N10})`,
|
|
25
|
-
dark: `var(--ds-background-input, ${DN10})`
|
|
26
|
-
};
|
|
27
|
-
export const defaultBackgroundColorHover = {
|
|
28
|
-
light: `var(--ds-background-input-hovered, ${N30})`,
|
|
29
|
-
dark: `var(--ds-background-input-hovered, ${DN30})`
|
|
30
|
-
};
|
|
31
|
-
export const defaultBackgroundColorFocus = {
|
|
32
|
-
light: `var(--ds-background-input-pressed, ${N0})`,
|
|
33
|
-
dark: `var(--ds-background-input-pressed, ${DN10})`
|
|
34
|
-
};
|
|
35
|
-
export const subtleBorderColorHover = {
|
|
36
|
-
light: "var(--ds-border-input, transparent)",
|
|
37
|
-
dark: "var(--ds-border-input, transparent)"
|
|
38
|
-
};
|
|
39
|
-
export const placeholderTextColor = {
|
|
40
|
-
light: `var(--ds-text-subtlest, ${N200})`,
|
|
41
|
-
dark: `var(--ds-text-subtlest, ${DN200})`
|
|
42
|
-
};
|
|
43
|
-
export const textColor = {
|
|
44
|
-
light: `var(--ds-text, ${N900})`,
|
|
45
|
-
dark: `var(--ds-text, ${DN600})`
|
|
46
|
-
};
|
|
47
|
-
export const disabledTextColor = {
|
|
48
|
-
light: `var(--ds-text-disabled, ${N70})`,
|
|
49
|
-
dark: `var(--ds-text-disabled, ${DN90})`
|
|
50
|
-
};
|
|
51
|
-
export const transparent = {
|
|
52
|
-
light: 'transparent',
|
|
53
|
-
dark: 'transparent'
|
|
54
|
-
};
|
|
2
|
+
import { B200, N0, N10, N100, N20, N200, N30, N40, N70, N900, R400 } from '@atlaskit/theme/colors';
|
|
3
|
+
export const disabledBackground = `var(--ds-background-disabled, ${N20})`;
|
|
4
|
+
export const disabledBorder = `var(--ds-border-disabled, ${N40})`;
|
|
5
|
+
export const invalidBorderColor = `var(--ds-border-danger, ${R400})`;
|
|
6
|
+
export const defaultBorderColor = `var(--ds-border-input, ${getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? N100 : N40})`;
|
|
7
|
+
export const defaultBorderColorFocus = `var(--ds-border-focused, ${B200})`;
|
|
8
|
+
export const defaultBackgroundColor = `var(--ds-background-input, ${N10})`;
|
|
9
|
+
export const defaultBackgroundColorHover = `var(--ds-background-input-hovered, ${N30})`;
|
|
10
|
+
export const defaultBackgroundColorFocus = `var(--ds-background-input-pressed, ${N0})`;
|
|
11
|
+
export const subtleBorderColorHover = "var(--ds-border-input, transparent)";
|
|
12
|
+
export const placeholderTextColor = `var(--ds-text-subtlest, ${N200})`;
|
|
13
|
+
export const textColor = `var(--ds-text, ${N900})`;
|
|
14
|
+
export const disabledTextColor = `var(--ds-text-disabled, ${N70})`;
|
|
15
|
+
export const transparent = 'transparent';
|
package/dist/es2019/index.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
export { default } from './text-area';
|
|
2
|
-
export { Theme, themeTokens } from './theme';
|
|
1
|
+
export { default } from './text-area';
|
package/dist/es2019/styles.js
CHANGED
|
@@ -4,6 +4,52 @@ import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
|
4
4
|
import { codeFontFamily as getCodeFontFamily, fontFamily as getFontFamily, fontSize as getFontSize,
|
|
5
5
|
// eslint-disable-next-line @atlaskit/design-system/no-deprecated-imports
|
|
6
6
|
gridSize } from '@atlaskit/theme/constants';
|
|
7
|
+
import * as componentTokens from './component-tokens';
|
|
8
|
+
const disabledRules = {
|
|
9
|
+
backgroundColor: componentTokens.disabledBackground,
|
|
10
|
+
backgroundColorFocus: componentTokens.disabledBackground,
|
|
11
|
+
backgroundColorHover: componentTokens.disabledBackground,
|
|
12
|
+
borderColor: componentTokens.disabledBorder,
|
|
13
|
+
borderColorFocus: componentTokens.defaultBorderColorFocus,
|
|
14
|
+
textColor: componentTokens.disabledTextColor
|
|
15
|
+
};
|
|
16
|
+
const invalidRules = {
|
|
17
|
+
borderColor: componentTokens.invalidBorderColor,
|
|
18
|
+
borderColorFocus: componentTokens.defaultBorderColorFocus,
|
|
19
|
+
backgroundColor: componentTokens.defaultBackgroundColor,
|
|
20
|
+
backgroundColorFocus: componentTokens.defaultBackgroundColorFocus,
|
|
21
|
+
backgroundColorHover: componentTokens.defaultBackgroundColorHover
|
|
22
|
+
};
|
|
23
|
+
const backgroundColor = {
|
|
24
|
+
standard: componentTokens.defaultBackgroundColor,
|
|
25
|
+
subtle: componentTokens.transparent,
|
|
26
|
+
none: componentTokens.transparent
|
|
27
|
+
};
|
|
28
|
+
const backgroundColorFocus = {
|
|
29
|
+
standard: componentTokens.defaultBackgroundColorFocus,
|
|
30
|
+
subtle: componentTokens.defaultBackgroundColorFocus,
|
|
31
|
+
none: componentTokens.transparent
|
|
32
|
+
};
|
|
33
|
+
const backgroundColorHover = {
|
|
34
|
+
standard: componentTokens.defaultBackgroundColorHover,
|
|
35
|
+
subtle: componentTokens.defaultBackgroundColorHover,
|
|
36
|
+
none: componentTokens.transparent
|
|
37
|
+
};
|
|
38
|
+
const borderColor = {
|
|
39
|
+
standard: componentTokens.defaultBorderColor,
|
|
40
|
+
subtle: componentTokens.transparent,
|
|
41
|
+
none: componentTokens.transparent
|
|
42
|
+
};
|
|
43
|
+
const borderColorFocus = {
|
|
44
|
+
standard: componentTokens.defaultBorderColorFocus,
|
|
45
|
+
subtle: componentTokens.defaultBorderColorFocus,
|
|
46
|
+
none: componentTokens.transparent
|
|
47
|
+
};
|
|
48
|
+
const borderColorHover = {
|
|
49
|
+
standard: componentTokens.defaultBorderColor,
|
|
50
|
+
subtle: componentTokens.subtleBorderColorHover,
|
|
51
|
+
none: componentTokens.transparent
|
|
52
|
+
};
|
|
7
53
|
const grid = gridSize();
|
|
8
54
|
const lineHeightBase = grid * 2.5;
|
|
9
55
|
const lineHeightCompact = grid * 2;
|
|
@@ -30,38 +76,38 @@ const borderBoxMinHeightCompact = (minimumRows, borderHeight) => {
|
|
|
30
76
|
const contentHeightCompact = lineHeightCompact * minimumRows;
|
|
31
77
|
return contentHeightCompact + compactVerticalPadding * 2 + borderHeight * 2;
|
|
32
78
|
};
|
|
33
|
-
const bgAndBorderColorStyles =
|
|
79
|
+
const bgAndBorderColorStyles = appearance => appearance && css({
|
|
34
80
|
'&:focus': {
|
|
35
|
-
backgroundColor:
|
|
36
|
-
borderColor:
|
|
37
|
-
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? `inset 0 0 0 ${"var(--ds-border-width, 1px)"} ${
|
|
81
|
+
backgroundColor: backgroundColorFocus[appearance],
|
|
82
|
+
borderColor: borderColorFocus[appearance],
|
|
83
|
+
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? `inset 0 0 0 ${"var(--ds-border-width, 1px)"} ${borderColorFocus[appearance]}` : undefined
|
|
38
84
|
},
|
|
39
85
|
'&:not(:focus)': {
|
|
40
|
-
backgroundColor:
|
|
41
|
-
borderColor:
|
|
86
|
+
backgroundColor: backgroundColor[appearance],
|
|
87
|
+
borderColor: borderColor[appearance]
|
|
42
88
|
},
|
|
43
89
|
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles
|
|
44
90
|
'&[data-invalid]:focus': {
|
|
45
|
-
backgroundColor:
|
|
46
|
-
borderColor:
|
|
47
|
-
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? `inset 0 0 0 ${"var(--ds-border-width, 1px)"} ${
|
|
91
|
+
backgroundColor: invalidRules.backgroundColorFocus,
|
|
92
|
+
borderColor: invalidRules.borderColorFocus,
|
|
93
|
+
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? `inset 0 0 0 ${"var(--ds-border-width, 1px)"} ${invalidRules.borderColorFocus}` : undefined
|
|
48
94
|
},
|
|
49
95
|
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles
|
|
50
96
|
'&[data-invalid]:not(:focus)': {
|
|
51
|
-
backgroundColor:
|
|
52
|
-
borderColor:
|
|
53
|
-
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? `inset 0 0 0 ${"var(--ds-border-width, 1px)"} ${
|
|
97
|
+
backgroundColor: invalidRules.backgroundColor,
|
|
98
|
+
borderColor: invalidRules.borderColor,
|
|
99
|
+
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? `inset 0 0 0 ${"var(--ds-border-width, 1px)"} ${invalidRules.borderColor}` : undefined
|
|
54
100
|
},
|
|
55
101
|
// Disabled background and border styles should not be applied to components that
|
|
56
102
|
// have either no background or transparent background to begin with
|
|
57
103
|
...(appearance === 'standard' ? {
|
|
58
104
|
'&:disabled:focus': {
|
|
59
|
-
backgroundColor:
|
|
60
|
-
borderColor:
|
|
105
|
+
backgroundColor: disabledRules.backgroundColorFocus,
|
|
106
|
+
borderColor: disabledRules.borderColorFocus
|
|
61
107
|
},
|
|
62
108
|
'&:disabled:not(:focus)': {
|
|
63
|
-
backgroundColor:
|
|
64
|
-
borderColor:
|
|
109
|
+
backgroundColor: disabledRules.backgroundColor,
|
|
110
|
+
borderColor: disabledRules.borderColor
|
|
65
111
|
}
|
|
66
112
|
} : {})
|
|
67
113
|
});
|
|
@@ -70,18 +116,18 @@ const placeholderStyle = placeholderTextColor => css({
|
|
|
70
116
|
color: placeholderTextColor
|
|
71
117
|
}
|
|
72
118
|
});
|
|
73
|
-
const hoverBackgroundAndBorderStyles =
|
|
119
|
+
const hoverBackgroundAndBorderStyles = appearance => appearance && css({
|
|
74
120
|
'&:hover:not(:read-only):not(:focus)': {
|
|
75
|
-
backgroundColor:
|
|
76
|
-
borderColor:
|
|
121
|
+
backgroundColor: backgroundColorHover[appearance],
|
|
122
|
+
borderColor: borderColorHover[appearance],
|
|
77
123
|
'&:disabled': {
|
|
78
|
-
backgroundColor:
|
|
124
|
+
backgroundColor: disabledRules.backgroundColorHover
|
|
79
125
|
},
|
|
80
126
|
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles
|
|
81
127
|
'&[data-invalid]': {
|
|
82
|
-
backgroundColor:
|
|
83
|
-
borderColor:
|
|
84
|
-
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? `inset 0 0 0 ${"var(--ds-border-width, 1px)"} ${
|
|
128
|
+
backgroundColor: invalidRules.backgroundColorHover,
|
|
129
|
+
borderColor: invalidRules.borderColor,
|
|
130
|
+
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? `inset 0 0 0 ${"var(--ds-border-width, 1px)"} ${invalidRules.borderColor}` : undefined
|
|
85
131
|
}
|
|
86
132
|
}
|
|
87
133
|
});
|
|
@@ -166,11 +212,11 @@ export const getBaseStyles = ({
|
|
|
166
212
|
css([staticStyles, borderPaddingAndHeightStyles(minimumRows, appearance), resizeStyle(resize), borderStyle(appearance), fontFamilyStyle(isMonospaced), {
|
|
167
213
|
maxHeight
|
|
168
214
|
}]);
|
|
169
|
-
export const
|
|
215
|
+
export const dynamicStyles = appearance =>
|
|
170
216
|
// eslint-disable-next-line @repo/internal/styles/no-exported-styles
|
|
171
|
-
css([bgAndBorderColorStyles(
|
|
172
|
-
color:
|
|
217
|
+
css([bgAndBorderColorStyles(appearance), hoverBackgroundAndBorderStyles(appearance), placeholderStyle(componentTokens.placeholderTextColor), {
|
|
218
|
+
color: componentTokens.textColor,
|
|
173
219
|
'&:disabled': {
|
|
174
|
-
color:
|
|
220
|
+
color: disabledRules.textColor
|
|
175
221
|
}
|
|
176
222
|
}]);
|
package/dist/es2019/text-area.js
CHANGED
|
@@ -3,11 +3,9 @@ import _extends from "@babel/runtime/helpers/extends";
|
|
|
3
3
|
import React, { forwardRef, memo, useCallback, useEffect, useMemo, useRef } from 'react';
|
|
4
4
|
import { css, jsx } from '@emotion/react';
|
|
5
5
|
import { usePlatformLeafEventHandler } from '@atlaskit/analytics-next';
|
|
6
|
-
import {
|
|
7
|
-
import { borderWidth, getBaseStyles, themeStyles } from './styles';
|
|
8
|
-
import { Theme } from './theme';
|
|
6
|
+
import { borderWidth, dynamicStyles, getBaseStyles } from './styles';
|
|
9
7
|
const packageName = "@atlaskit/textarea";
|
|
10
|
-
const packageVersion = "
|
|
8
|
+
const packageVersion = "5.0.0";
|
|
11
9
|
const analyticsParams = {
|
|
12
10
|
componentName: 'textArea',
|
|
13
11
|
packageName,
|
|
@@ -21,7 +19,7 @@ const setSmartHeight = el => {
|
|
|
21
19
|
const borderBoxHeight = paddingBoxHeight + borderHeight * 2;
|
|
22
20
|
el.style.height = `${borderBoxHeight}px`;
|
|
23
21
|
};
|
|
24
|
-
const
|
|
22
|
+
const InnerTextArea = /*#__PURE__*/forwardRef((props, ref) => {
|
|
25
23
|
const ourRef = useRef(null);
|
|
26
24
|
const {
|
|
27
25
|
resize = 'smart',
|
|
@@ -33,13 +31,11 @@ const TextAreaWithTokens = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
33
31
|
isInvalid = false,
|
|
34
32
|
isMonospaced = false,
|
|
35
33
|
minimumRows = 2,
|
|
36
|
-
theme,
|
|
37
34
|
testId,
|
|
38
35
|
maxHeight = '50vh',
|
|
39
36
|
onBlur,
|
|
40
37
|
onFocus,
|
|
41
38
|
onChange,
|
|
42
|
-
tokens,
|
|
43
39
|
value,
|
|
44
40
|
...rest
|
|
45
41
|
} = props;
|
|
@@ -92,9 +88,7 @@ const TextAreaWithTokens = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
92
88
|
isMonospaced,
|
|
93
89
|
maxHeight
|
|
94
90
|
}), [minimumRows, resize, appearance, isMonospaced, maxHeight]);
|
|
95
|
-
const textAreaStyles = css([baseStyles,
|
|
96
|
-
// not memoizing themeStyles as `tokens` is an unstable reference
|
|
97
|
-
themeStyles(tokens, appearance)]);
|
|
91
|
+
const textAreaStyles = css([baseStyles, dynamicStyles(appearance)]);
|
|
98
92
|
return jsx("textarea", _extends({}, controlProps, {
|
|
99
93
|
value: value,
|
|
100
94
|
disabled: isDisabled,
|
|
@@ -123,19 +117,9 @@ const TextAreaWithTokens = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
123
117
|
* - [Usage](https://atlassian.design/components/textarea/usage)
|
|
124
118
|
*/
|
|
125
119
|
const TextArea = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function TextArea(props, ref) {
|
|
126
|
-
|
|
127
|
-
mode
|
|
128
|
-
} = useGlobalTheme();
|
|
129
|
-
return jsx(Theme.Provider, {
|
|
130
|
-
value: props.theme
|
|
131
|
-
}, jsx(Theme.Consumer, {
|
|
132
|
-
appearance: props.appearance || 'standard',
|
|
133
|
-
mode: mode
|
|
134
|
-
}, tokens => jsx(TextAreaWithTokens, _extends({
|
|
120
|
+
return jsx(InnerTextArea, _extends({
|
|
135
121
|
ref: ref
|
|
136
|
-
}, props
|
|
137
|
-
tokens: tokens
|
|
138
|
-
}))));
|
|
122
|
+
}, props));
|
|
139
123
|
}));
|
|
140
124
|
TextArea.displayName = 'TextArea';
|
|
141
125
|
export default TextArea;
|
|
@@ -1,54 +1,15 @@
|
|
|
1
1
|
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
2
|
-
import {
|
|
3
|
-
export var disabledBackground =
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export var
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
export var
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
export var
|
|
16
|
-
light: "var(--ds-border-input, ".concat(getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? N100 : N40, ")"),
|
|
17
|
-
dark: "var(--ds-border-input, ".concat(getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? DN200 : DN40, ")")
|
|
18
|
-
};
|
|
19
|
-
export var defaultBorderColorFocus = {
|
|
20
|
-
light: "var(--ds-border-focused, ".concat(B200, ")"),
|
|
21
|
-
dark: "var(--ds-border-focused, ".concat(B100, ")")
|
|
22
|
-
};
|
|
23
|
-
export var defaultBackgroundColor = {
|
|
24
|
-
light: "var(--ds-background-input, ".concat(N10, ")"),
|
|
25
|
-
dark: "var(--ds-background-input, ".concat(DN10, ")")
|
|
26
|
-
};
|
|
27
|
-
export var defaultBackgroundColorHover = {
|
|
28
|
-
light: "var(--ds-background-input-hovered, ".concat(N30, ")"),
|
|
29
|
-
dark: "var(--ds-background-input-hovered, ".concat(DN30, ")")
|
|
30
|
-
};
|
|
31
|
-
export var defaultBackgroundColorFocus = {
|
|
32
|
-
light: "var(--ds-background-input-pressed, ".concat(N0, ")"),
|
|
33
|
-
dark: "var(--ds-background-input-pressed, ".concat(DN10, ")")
|
|
34
|
-
};
|
|
35
|
-
export var subtleBorderColorHover = {
|
|
36
|
-
light: "var(--ds-border-input, transparent)",
|
|
37
|
-
dark: "var(--ds-border-input, transparent)"
|
|
38
|
-
};
|
|
39
|
-
export var placeholderTextColor = {
|
|
40
|
-
light: "var(--ds-text-subtlest, ".concat(N200, ")"),
|
|
41
|
-
dark: "var(--ds-text-subtlest, ".concat(DN200, ")")
|
|
42
|
-
};
|
|
43
|
-
export var textColor = {
|
|
44
|
-
light: "var(--ds-text, ".concat(N900, ")"),
|
|
45
|
-
dark: "var(--ds-text, ".concat(DN600, ")")
|
|
46
|
-
};
|
|
47
|
-
export var disabledTextColor = {
|
|
48
|
-
light: "var(--ds-text-disabled, ".concat(N70, ")"),
|
|
49
|
-
dark: "var(--ds-text-disabled, ".concat(DN90, ")")
|
|
50
|
-
};
|
|
51
|
-
export var transparent = {
|
|
52
|
-
light: 'transparent',
|
|
53
|
-
dark: 'transparent'
|
|
54
|
-
};
|
|
2
|
+
import { B200, N0, N10, N100, N20, N200, N30, N40, N70, N900, R400 } from '@atlaskit/theme/colors';
|
|
3
|
+
export var disabledBackground = "var(--ds-background-disabled, ".concat(N20, ")");
|
|
4
|
+
export var disabledBorder = "var(--ds-border-disabled, ".concat(N40, ")");
|
|
5
|
+
export var invalidBorderColor = "var(--ds-border-danger, ".concat(R400, ")");
|
|
6
|
+
export var defaultBorderColor = "var(--ds-border-input, ".concat(getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? N100 : N40, ")");
|
|
7
|
+
export var defaultBorderColorFocus = "var(--ds-border-focused, ".concat(B200, ")");
|
|
8
|
+
export var defaultBackgroundColor = "var(--ds-background-input, ".concat(N10, ")");
|
|
9
|
+
export var defaultBackgroundColorHover = "var(--ds-background-input-hovered, ".concat(N30, ")");
|
|
10
|
+
export var defaultBackgroundColorFocus = "var(--ds-background-input-pressed, ".concat(N0, ")");
|
|
11
|
+
export var subtleBorderColorHover = "var(--ds-border-input, transparent)";
|
|
12
|
+
export var placeholderTextColor = "var(--ds-text-subtlest, ".concat(N200, ")");
|
|
13
|
+
export var textColor = "var(--ds-text, ".concat(N900, ")");
|
|
14
|
+
export var disabledTextColor = "var(--ds-text-disabled, ".concat(N70, ")");
|
|
15
|
+
export var transparent = 'transparent';
|
package/dist/esm/index.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
export { default } from './text-area';
|
|
2
|
-
export { Theme, themeTokens } from './theme';
|
|
1
|
+
export { default } from './text-area';
|
package/dist/esm/styles.js
CHANGED
|
@@ -1,12 +1,58 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
function ownKeys(
|
|
3
|
-
function _objectSpread(
|
|
2
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
4
|
/** @jsx jsx */
|
|
5
5
|
import { css } from '@emotion/react';
|
|
6
6
|
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
7
7
|
import { codeFontFamily as getCodeFontFamily, fontFamily as getFontFamily, fontSize as getFontSize,
|
|
8
8
|
// eslint-disable-next-line @atlaskit/design-system/no-deprecated-imports
|
|
9
9
|
gridSize } from '@atlaskit/theme/constants';
|
|
10
|
+
import * as componentTokens from './component-tokens';
|
|
11
|
+
var disabledRules = {
|
|
12
|
+
backgroundColor: componentTokens.disabledBackground,
|
|
13
|
+
backgroundColorFocus: componentTokens.disabledBackground,
|
|
14
|
+
backgroundColorHover: componentTokens.disabledBackground,
|
|
15
|
+
borderColor: componentTokens.disabledBorder,
|
|
16
|
+
borderColorFocus: componentTokens.defaultBorderColorFocus,
|
|
17
|
+
textColor: componentTokens.disabledTextColor
|
|
18
|
+
};
|
|
19
|
+
var invalidRules = {
|
|
20
|
+
borderColor: componentTokens.invalidBorderColor,
|
|
21
|
+
borderColorFocus: componentTokens.defaultBorderColorFocus,
|
|
22
|
+
backgroundColor: componentTokens.defaultBackgroundColor,
|
|
23
|
+
backgroundColorFocus: componentTokens.defaultBackgroundColorFocus,
|
|
24
|
+
backgroundColorHover: componentTokens.defaultBackgroundColorHover
|
|
25
|
+
};
|
|
26
|
+
var backgroundColor = {
|
|
27
|
+
standard: componentTokens.defaultBackgroundColor,
|
|
28
|
+
subtle: componentTokens.transparent,
|
|
29
|
+
none: componentTokens.transparent
|
|
30
|
+
};
|
|
31
|
+
var backgroundColorFocus = {
|
|
32
|
+
standard: componentTokens.defaultBackgroundColorFocus,
|
|
33
|
+
subtle: componentTokens.defaultBackgroundColorFocus,
|
|
34
|
+
none: componentTokens.transparent
|
|
35
|
+
};
|
|
36
|
+
var backgroundColorHover = {
|
|
37
|
+
standard: componentTokens.defaultBackgroundColorHover,
|
|
38
|
+
subtle: componentTokens.defaultBackgroundColorHover,
|
|
39
|
+
none: componentTokens.transparent
|
|
40
|
+
};
|
|
41
|
+
var borderColor = {
|
|
42
|
+
standard: componentTokens.defaultBorderColor,
|
|
43
|
+
subtle: componentTokens.transparent,
|
|
44
|
+
none: componentTokens.transparent
|
|
45
|
+
};
|
|
46
|
+
var borderColorFocus = {
|
|
47
|
+
standard: componentTokens.defaultBorderColorFocus,
|
|
48
|
+
subtle: componentTokens.defaultBorderColorFocus,
|
|
49
|
+
none: componentTokens.transparent
|
|
50
|
+
};
|
|
51
|
+
var borderColorHover = {
|
|
52
|
+
standard: componentTokens.defaultBorderColor,
|
|
53
|
+
subtle: componentTokens.subtleBorderColorHover,
|
|
54
|
+
none: componentTokens.transparent
|
|
55
|
+
};
|
|
10
56
|
var grid = gridSize();
|
|
11
57
|
var lineHeightBase = grid * 2.5;
|
|
12
58
|
var lineHeightCompact = grid * 2;
|
|
@@ -33,37 +79,37 @@ var borderBoxMinHeightCompact = function borderBoxMinHeightCompact(minimumRows,
|
|
|
33
79
|
var contentHeightCompact = lineHeightCompact * minimumRows;
|
|
34
80
|
return contentHeightCompact + compactVerticalPadding * 2 + borderHeight * 2;
|
|
35
81
|
};
|
|
36
|
-
var bgAndBorderColorStyles = function bgAndBorderColorStyles(
|
|
37
|
-
return css(_objectSpread({
|
|
82
|
+
var bgAndBorderColorStyles = function bgAndBorderColorStyles(appearance) {
|
|
83
|
+
return appearance && css(_objectSpread({
|
|
38
84
|
'&:focus': {
|
|
39
|
-
backgroundColor:
|
|
40
|
-
borderColor:
|
|
41
|
-
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? "inset 0 0 0 ".concat("var(--ds-border-width, 1px)", " ",
|
|
85
|
+
backgroundColor: backgroundColorFocus[appearance],
|
|
86
|
+
borderColor: borderColorFocus[appearance],
|
|
87
|
+
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? "inset 0 0 0 ".concat("var(--ds-border-width, 1px)", " ", borderColorFocus[appearance]) : undefined
|
|
42
88
|
},
|
|
43
89
|
'&:not(:focus)': {
|
|
44
|
-
backgroundColor:
|
|
45
|
-
borderColor:
|
|
90
|
+
backgroundColor: backgroundColor[appearance],
|
|
91
|
+
borderColor: borderColor[appearance]
|
|
46
92
|
},
|
|
47
93
|
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles
|
|
48
94
|
'&[data-invalid]:focus': {
|
|
49
|
-
backgroundColor:
|
|
50
|
-
borderColor:
|
|
51
|
-
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? "inset 0 0 0 ".concat("var(--ds-border-width, 1px)", " ",
|
|
95
|
+
backgroundColor: invalidRules.backgroundColorFocus,
|
|
96
|
+
borderColor: invalidRules.borderColorFocus,
|
|
97
|
+
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? "inset 0 0 0 ".concat("var(--ds-border-width, 1px)", " ", invalidRules.borderColorFocus) : undefined
|
|
52
98
|
},
|
|
53
99
|
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles
|
|
54
100
|
'&[data-invalid]:not(:focus)': {
|
|
55
|
-
backgroundColor:
|
|
56
|
-
borderColor:
|
|
57
|
-
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? "inset 0 0 0 ".concat("var(--ds-border-width, 1px)", " ",
|
|
101
|
+
backgroundColor: invalidRules.backgroundColor,
|
|
102
|
+
borderColor: invalidRules.borderColor,
|
|
103
|
+
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? "inset 0 0 0 ".concat("var(--ds-border-width, 1px)", " ", invalidRules.borderColor) : undefined
|
|
58
104
|
}
|
|
59
105
|
}, appearance === 'standard' ? {
|
|
60
106
|
'&:disabled:focus': {
|
|
61
|
-
backgroundColor:
|
|
62
|
-
borderColor:
|
|
107
|
+
backgroundColor: disabledRules.backgroundColorFocus,
|
|
108
|
+
borderColor: disabledRules.borderColorFocus
|
|
63
109
|
},
|
|
64
110
|
'&:disabled:not(:focus)': {
|
|
65
|
-
backgroundColor:
|
|
66
|
-
borderColor:
|
|
111
|
+
backgroundColor: disabledRules.backgroundColor,
|
|
112
|
+
borderColor: disabledRules.borderColor
|
|
67
113
|
}
|
|
68
114
|
} : {}));
|
|
69
115
|
};
|
|
@@ -74,19 +120,19 @@ var placeholderStyle = function placeholderStyle(placeholderTextColor) {
|
|
|
74
120
|
}
|
|
75
121
|
});
|
|
76
122
|
};
|
|
77
|
-
var hoverBackgroundAndBorderStyles = function hoverBackgroundAndBorderStyles(
|
|
78
|
-
return css({
|
|
123
|
+
var hoverBackgroundAndBorderStyles = function hoverBackgroundAndBorderStyles(appearance) {
|
|
124
|
+
return appearance && css({
|
|
79
125
|
'&:hover:not(:read-only):not(:focus)': {
|
|
80
|
-
backgroundColor:
|
|
81
|
-
borderColor:
|
|
126
|
+
backgroundColor: backgroundColorHover[appearance],
|
|
127
|
+
borderColor: borderColorHover[appearance],
|
|
82
128
|
'&:disabled': {
|
|
83
|
-
backgroundColor:
|
|
129
|
+
backgroundColor: disabledRules.backgroundColorHover
|
|
84
130
|
},
|
|
85
131
|
// eslint-disable-next-line @atlaskit/design-system/no-nested-styles
|
|
86
132
|
'&[data-invalid]': {
|
|
87
|
-
backgroundColor:
|
|
88
|
-
borderColor:
|
|
89
|
-
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? "inset 0 0 0 ".concat("var(--ds-border-width, 1px)", " ",
|
|
133
|
+
backgroundColor: invalidRules.backgroundColorHover,
|
|
134
|
+
borderColor: invalidRules.borderColor,
|
|
135
|
+
boxShadow: getBooleanFF('platform.design-system-team.border-checkbox_nyoiu') ? "inset 0 0 0 ".concat("var(--ds-border-width, 1px)", " ", invalidRules.borderColor) : undefined
|
|
90
136
|
}
|
|
91
137
|
}
|
|
92
138
|
});
|
|
@@ -178,13 +224,13 @@ export var getBaseStyles = function getBaseStyles(_ref) {
|
|
|
178
224
|
}])
|
|
179
225
|
);
|
|
180
226
|
};
|
|
181
|
-
export var
|
|
227
|
+
export var dynamicStyles = function dynamicStyles(appearance) {
|
|
182
228
|
return (
|
|
183
229
|
// eslint-disable-next-line @repo/internal/styles/no-exported-styles
|
|
184
|
-
css([bgAndBorderColorStyles(
|
|
185
|
-
color:
|
|
230
|
+
css([bgAndBorderColorStyles(appearance), hoverBackgroundAndBorderStyles(appearance), placeholderStyle(componentTokens.placeholderTextColor), {
|
|
231
|
+
color: componentTokens.textColor,
|
|
186
232
|
'&:disabled': {
|
|
187
|
-
color:
|
|
233
|
+
color: disabledRules.textColor
|
|
188
234
|
}
|
|
189
235
|
}])
|
|
190
236
|
);
|