@atlaskit/form 12.5.1 → 12.5.2
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 +7 -0
- package/dist/cjs/messages.js +15 -33
- package/dist/es2019/messages.js +12 -27
- package/dist/esm/messages.js +16 -34
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# @atlaskit/form
|
|
2
2
|
|
|
3
|
+
## 12.5.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`020fb99d98aff`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/020fb99d98aff) -
|
|
8
|
+
Simplified screenreader logic for message components when MessageWrapper is present
|
|
9
|
+
|
|
3
10
|
## 12.5.1
|
|
4
11
|
|
|
5
12
|
### Patch Changes
|
package/dist/cjs/messages.js
CHANGED
|
@@ -63,41 +63,26 @@ var Message = function Message(_ref2) {
|
|
|
63
63
|
fieldId = _ref2.fieldId,
|
|
64
64
|
testId = _ref2.testId;
|
|
65
65
|
var icon = messageIcons[appearance];
|
|
66
|
-
var isFeatureFlagEnabled = (0, _platformFeatureFlags.fg)('platform_dst_form_screenreader_message_fix');
|
|
67
66
|
var _useContext = (0, _react.useContext)(MessageWrapperContext),
|
|
68
67
|
isWrapper = _useContext.isWrapper;
|
|
69
|
-
var _useState = (0, _react.useState)(
|
|
68
|
+
var _useState = (0, _react.useState)(false),
|
|
70
69
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
71
|
-
|
|
72
|
-
|
|
70
|
+
shouldRenderAfterDelay = _useState2[0],
|
|
71
|
+
setShouldRenderAfterDelay = _useState2[1];
|
|
73
72
|
|
|
74
73
|
// TODO: DSP-23603 - To clean up when removing "platform_dst_form_screenreader_message_fix" feature flag
|
|
75
|
-
var
|
|
76
|
-
var _useState3 = (0, _react.useState)(isWrapper),
|
|
77
|
-
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
78
|
-
hasMessageWrapper = _useState4[0],
|
|
79
|
-
setHasMessageWrapper = _useState4[1];
|
|
74
|
+
var isDelayRenderEnabled = (0, _platformFeatureFlags.fg)('platform_dst_form_screenreader_message_fix') && !isWrapper;
|
|
80
75
|
(0, _react.useEffect)(function () {
|
|
81
|
-
if (
|
|
82
|
-
if
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
return
|
|
88
|
-
|
|
89
|
-
};
|
|
90
|
-
} else {
|
|
91
|
-
// When using MessageWrapper, render content immediately since the wrapper handles aria-live
|
|
92
|
-
setShouldRenderContent(true);
|
|
93
|
-
}
|
|
94
|
-
} else {
|
|
95
|
-
// TODO: DSP-23603 - To clean up when removing "platform_dst_form_screenreader_message_fix" feature flag
|
|
96
|
-
if (messageRef.current) {
|
|
97
|
-
setHasMessageWrapper(isWrapper);
|
|
98
|
-
}
|
|
76
|
+
if (isDelayRenderEnabled) {
|
|
77
|
+
// Only delay rendering if there is no wrapper and feature flag is enabled
|
|
78
|
+
var timer = setTimeout(function () {
|
|
79
|
+
setShouldRenderAfterDelay(true);
|
|
80
|
+
}, 10);
|
|
81
|
+
return function () {
|
|
82
|
+
return clearTimeout(timer);
|
|
83
|
+
};
|
|
99
84
|
}
|
|
100
|
-
}, [
|
|
85
|
+
}, [isDelayRenderEnabled]);
|
|
101
86
|
|
|
102
87
|
/**
|
|
103
88
|
* The wrapping span is necessary to preserve spaces between children.
|
|
@@ -112,15 +97,12 @@ var Message = function Message(_ref2) {
|
|
|
112
97
|
return /*#__PURE__*/React.createElement("div", {
|
|
113
98
|
"data-testid": testId,
|
|
114
99
|
id: fieldId
|
|
115
|
-
// TODO: DSP-23603 - To clean up when removing "platform_dst_form_screenreader_message_fix" feature flag
|
|
116
|
-
,
|
|
117
|
-
ref: messageRef
|
|
118
100
|
// For backwards compatability, if there is a wrapper, aria-live is not needed
|
|
119
101
|
// TODO: DSP-23603 - To clean up when removing "platform_dst_form_screenreader_message_fix" feature flag
|
|
120
102
|
,
|
|
121
|
-
"aria-live": !
|
|
103
|
+
"aria-live": !isWrapper ? 'polite' : undefined,
|
|
122
104
|
className: (0, _runtime.ax)(["_zulp12x7 _11c8dcr7 _1e0c1txw _1bah1q9y _1pfh1b66", messageAppearanceStyles[appearance]])
|
|
123
|
-
},
|
|
105
|
+
}, isDelayRenderEnabled ? shouldRenderAfterDelay && childrenToRender : childrenToRender);
|
|
124
106
|
};
|
|
125
107
|
|
|
126
108
|
/**
|
package/dist/es2019/messages.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import "./messages.compiled.css";
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import { ax, ix } from "@compiled/react/runtime";
|
|
5
|
-
import { createContext, Fragment, useContext, useEffect,
|
|
5
|
+
import { createContext, Fragment, useContext, useEffect, useState } from 'react';
|
|
6
6
|
import ErrorIcon from '@atlaskit/icon/core/migration/status-error--error';
|
|
7
7
|
import SuccessIcon from '@atlaskit/icon/core/migration/status-success--editor-success';
|
|
8
8
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
@@ -53,34 +53,22 @@ const Message = ({
|
|
|
53
53
|
testId
|
|
54
54
|
}) => {
|
|
55
55
|
const icon = messageIcons[appearance];
|
|
56
|
-
const isFeatureFlagEnabled = fg('platform_dst_form_screenreader_message_fix');
|
|
57
56
|
const {
|
|
58
57
|
isWrapper
|
|
59
58
|
} = useContext(MessageWrapperContext);
|
|
60
|
-
const [
|
|
59
|
+
const [shouldRenderAfterDelay, setShouldRenderAfterDelay] = useState(false);
|
|
61
60
|
|
|
62
61
|
// TODO: DSP-23603 - To clean up when removing "platform_dst_form_screenreader_message_fix" feature flag
|
|
63
|
-
const
|
|
64
|
-
const [hasMessageWrapper, setHasMessageWrapper] = useState(isWrapper);
|
|
62
|
+
const isDelayRenderEnabled = fg('platform_dst_form_screenreader_message_fix') && !isWrapper;
|
|
65
63
|
useEffect(() => {
|
|
66
|
-
if (
|
|
67
|
-
if
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
return () => clearTimeout(timer);
|
|
73
|
-
} else {
|
|
74
|
-
// When using MessageWrapper, render content immediately since the wrapper handles aria-live
|
|
75
|
-
setShouldRenderContent(true);
|
|
76
|
-
}
|
|
77
|
-
} else {
|
|
78
|
-
// TODO: DSP-23603 - To clean up when removing "platform_dst_form_screenreader_message_fix" feature flag
|
|
79
|
-
if (messageRef.current) {
|
|
80
|
-
setHasMessageWrapper(isWrapper);
|
|
81
|
-
}
|
|
64
|
+
if (isDelayRenderEnabled) {
|
|
65
|
+
// Only delay rendering if there is no wrapper and feature flag is enabled
|
|
66
|
+
const timer = setTimeout(() => {
|
|
67
|
+
setShouldRenderAfterDelay(true);
|
|
68
|
+
}, 10);
|
|
69
|
+
return () => clearTimeout(timer);
|
|
82
70
|
}
|
|
83
|
-
}, [
|
|
71
|
+
}, [isDelayRenderEnabled]);
|
|
84
72
|
|
|
85
73
|
/**
|
|
86
74
|
* The wrapping span is necessary to preserve spaces between children.
|
|
@@ -95,15 +83,12 @@ const Message = ({
|
|
|
95
83
|
return /*#__PURE__*/React.createElement("div", {
|
|
96
84
|
"data-testid": testId,
|
|
97
85
|
id: fieldId
|
|
98
|
-
// TODO: DSP-23603 - To clean up when removing "platform_dst_form_screenreader_message_fix" feature flag
|
|
99
|
-
,
|
|
100
|
-
ref: messageRef
|
|
101
86
|
// For backwards compatability, if there is a wrapper, aria-live is not needed
|
|
102
87
|
// TODO: DSP-23603 - To clean up when removing "platform_dst_form_screenreader_message_fix" feature flag
|
|
103
88
|
,
|
|
104
|
-
"aria-live": !
|
|
89
|
+
"aria-live": !isWrapper ? 'polite' : undefined,
|
|
105
90
|
className: ax(["_zulp12x7 _11c8dcr7 _1e0c1txw _1bah1q9y _1pfh1b66", messageAppearanceStyles[appearance]])
|
|
106
|
-
},
|
|
91
|
+
}, isDelayRenderEnabled ? shouldRenderAfterDelay && childrenToRender : childrenToRender);
|
|
107
92
|
};
|
|
108
93
|
|
|
109
94
|
/**
|
package/dist/esm/messages.js
CHANGED
|
@@ -3,7 +3,7 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
|
3
3
|
import "./messages.compiled.css";
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import { ax, ix } from "@compiled/react/runtime";
|
|
6
|
-
import { createContext, Fragment, useContext, useEffect,
|
|
6
|
+
import { createContext, Fragment, useContext, useEffect, useState } from 'react';
|
|
7
7
|
import ErrorIcon from '@atlaskit/icon/core/migration/status-error--error';
|
|
8
8
|
import SuccessIcon from '@atlaskit/icon/core/migration/status-success--editor-success';
|
|
9
9
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
@@ -55,41 +55,26 @@ var Message = function Message(_ref2) {
|
|
|
55
55
|
fieldId = _ref2.fieldId,
|
|
56
56
|
testId = _ref2.testId;
|
|
57
57
|
var icon = messageIcons[appearance];
|
|
58
|
-
var isFeatureFlagEnabled = fg('platform_dst_form_screenreader_message_fix');
|
|
59
58
|
var _useContext = useContext(MessageWrapperContext),
|
|
60
59
|
isWrapper = _useContext.isWrapper;
|
|
61
|
-
var _useState = useState(
|
|
60
|
+
var _useState = useState(false),
|
|
62
61
|
_useState2 = _slicedToArray(_useState, 2),
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
shouldRenderAfterDelay = _useState2[0],
|
|
63
|
+
setShouldRenderAfterDelay = _useState2[1];
|
|
65
64
|
|
|
66
65
|
// TODO: DSP-23603 - To clean up when removing "platform_dst_form_screenreader_message_fix" feature flag
|
|
67
|
-
var
|
|
68
|
-
var _useState3 = useState(isWrapper),
|
|
69
|
-
_useState4 = _slicedToArray(_useState3, 2),
|
|
70
|
-
hasMessageWrapper = _useState4[0],
|
|
71
|
-
setHasMessageWrapper = _useState4[1];
|
|
66
|
+
var isDelayRenderEnabled = fg('platform_dst_form_screenreader_message_fix') && !isWrapper;
|
|
72
67
|
useEffect(function () {
|
|
73
|
-
if (
|
|
74
|
-
if
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
return
|
|
80
|
-
|
|
81
|
-
};
|
|
82
|
-
} else {
|
|
83
|
-
// When using MessageWrapper, render content immediately since the wrapper handles aria-live
|
|
84
|
-
setShouldRenderContent(true);
|
|
85
|
-
}
|
|
86
|
-
} else {
|
|
87
|
-
// TODO: DSP-23603 - To clean up when removing "platform_dst_form_screenreader_message_fix" feature flag
|
|
88
|
-
if (messageRef.current) {
|
|
89
|
-
setHasMessageWrapper(isWrapper);
|
|
90
|
-
}
|
|
68
|
+
if (isDelayRenderEnabled) {
|
|
69
|
+
// Only delay rendering if there is no wrapper and feature flag is enabled
|
|
70
|
+
var timer = setTimeout(function () {
|
|
71
|
+
setShouldRenderAfterDelay(true);
|
|
72
|
+
}, 10);
|
|
73
|
+
return function () {
|
|
74
|
+
return clearTimeout(timer);
|
|
75
|
+
};
|
|
91
76
|
}
|
|
92
|
-
}, [
|
|
77
|
+
}, [isDelayRenderEnabled]);
|
|
93
78
|
|
|
94
79
|
/**
|
|
95
80
|
* The wrapping span is necessary to preserve spaces between children.
|
|
@@ -104,15 +89,12 @@ var Message = function Message(_ref2) {
|
|
|
104
89
|
return /*#__PURE__*/React.createElement("div", {
|
|
105
90
|
"data-testid": testId,
|
|
106
91
|
id: fieldId
|
|
107
|
-
// TODO: DSP-23603 - To clean up when removing "platform_dst_form_screenreader_message_fix" feature flag
|
|
108
|
-
,
|
|
109
|
-
ref: messageRef
|
|
110
92
|
// For backwards compatability, if there is a wrapper, aria-live is not needed
|
|
111
93
|
// TODO: DSP-23603 - To clean up when removing "platform_dst_form_screenreader_message_fix" feature flag
|
|
112
94
|
,
|
|
113
|
-
"aria-live": !
|
|
95
|
+
"aria-live": !isWrapper ? 'polite' : undefined,
|
|
114
96
|
className: ax(["_zulp12x7 _11c8dcr7 _1e0c1txw _1bah1q9y _1pfh1b66", messageAppearanceStyles[appearance]])
|
|
115
|
-
},
|
|
97
|
+
}, isDelayRenderEnabled ? shouldRenderAfterDelay && childrenToRender : childrenToRender);
|
|
116
98
|
};
|
|
117
99
|
|
|
118
100
|
/**
|