@atlaskit/datetime-picker 18.3.1 → 18.4.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 +52 -0
- package/__tests__/playwright/top-layer-focus.spec.tsx +34 -37
- package/codemods/14.0.0-remove-duplicate-and-unused-props.tsx +0 -1
- package/dist/cjs/components/date-picker.js +38 -31
- package/dist/cjs/components/date-time-picker.js +6 -6
- package/dist/cjs/components/time-picker.js +15 -22
- package/dist/cjs/internal/date-time-picker-container.js +2 -2
- package/dist/cjs/internal/fixed-layer-menu-top-layer.js +3 -7
- package/dist/cjs/internal/fixed-layer-menu.js +4 -8
- package/dist/cjs/internal/fixed-layer.js +7 -5
- package/dist/cjs/internal/indicators-container.js +2 -2
- package/dist/cjs/internal/menu-top-layer.compiled.css +5 -0
- package/dist/cjs/internal/menu-top-layer.js +11 -51
- package/dist/cjs/internal/menu.js +3 -3
- package/dist/cjs/internal/single-value.js +3 -2
- package/dist/es2019/components/date-picker.js +31 -24
- package/dist/es2019/components/date-time-picker.js +3 -3
- package/dist/es2019/components/time-picker.js +10 -17
- package/dist/es2019/internal/date-time-picker-container.js +1 -1
- package/dist/es2019/internal/fixed-layer-menu-top-layer.js +2 -6
- package/dist/es2019/internal/fixed-layer-menu.js +3 -7
- package/dist/es2019/internal/fixed-layer.js +4 -2
- package/dist/es2019/internal/indicators-container.js +1 -1
- package/dist/es2019/internal/menu-top-layer.compiled.css +5 -0
- package/dist/es2019/internal/menu-top-layer.js +12 -53
- package/dist/es2019/internal/menu.js +2 -2
- package/dist/es2019/internal/single-value.js +2 -2
- package/dist/esm/components/date-picker.js +31 -24
- package/dist/esm/components/date-time-picker.js +3 -3
- package/dist/esm/components/time-picker.js +10 -17
- package/dist/esm/internal/date-time-picker-container.js +1 -1
- package/dist/esm/internal/fixed-layer-menu-top-layer.js +2 -6
- package/dist/esm/internal/fixed-layer-menu.js +3 -7
- package/dist/esm/internal/fixed-layer.js +4 -2
- package/dist/esm/internal/indicators-container.js +1 -1
- package/dist/esm/internal/menu-top-layer.compiled.css +5 -0
- package/dist/esm/internal/menu-top-layer.js +12 -53
- package/dist/esm/internal/menu.js +2 -2
- package/dist/esm/internal/single-value.js +2 -2
- package/dist/types/components/date-picker.d.ts +1 -1
- package/dist/types/internal/fixed-layer-menu-top-layer.d.ts +1 -1
- package/dist/types/internal/fixed-layer-menu.d.ts +1 -1
- package/dist/types/internal/format-date.d.ts +1 -1
- package/dist/types/internal/get-placeholder.d.ts +1 -1
- package/dist/types/internal/indicators-container.d.ts +1 -1
- package/dist/types/internal/menu-top-layer.d.ts +3 -5
- package/dist/types/internal/menu.d.ts +1 -1
- package/dist/types/internal/parse-date.d.ts +1 -1
- package/dist/types/internal/single-value.d.ts +1 -1
- package/dist/types/types.d.ts +2 -2
- package/package.json +22 -21
- package/datetime-picker.docs.tsx +0 -132
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,57 @@
|
|
|
1
1
|
# @atlaskit/datetime-picker
|
|
2
2
|
|
|
3
|
+
## 18.4.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`a7e63cfd84876`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/a7e63cfd84876) -
|
|
8
|
+
[ux] When `platform-dst-top-layer` is enabled, Select menus now use the native Popover API to
|
|
9
|
+
handle Escape and light-dismiss before synchronizing `menuIsOpen` through `onMenuClose`. This
|
|
10
|
+
ensures Escape dismisses a nested Select menu without also dismissing its containing popup.
|
|
11
|
+
|
|
12
|
+
Existing public props keep their behavior. The top-layer `Popover` implementation gains an
|
|
13
|
+
internal `source` prop for imperative native popover invokers. The public runtime differences
|
|
14
|
+
behind the feature gate are:
|
|
15
|
+
- Select no longer calls `preventDefault()` or `stopPropagation()` for Escape on the top-layer
|
|
16
|
+
path, whether its menu is open or closed. Successive Escape presses can therefore dismiss the
|
|
17
|
+
Select menu and then its containing native popover.
|
|
18
|
+
- `onMenuClose` is called from the native popover close lifecycle rather than synchronously during
|
|
19
|
+
Select's Escape `keydown` handler.
|
|
20
|
+
- `shouldPreventEscapePropagation` no longer stops Escape propagation while a top-layer menu is
|
|
21
|
+
open; its legacy-path behavior is unchanged.
|
|
22
|
+
- Top-layer Escape invokes `onInputChange` with the `menu-close` action once, after native
|
|
23
|
+
dismissal, instead of the legacy path's two calls.
|
|
24
|
+
- Controlled Selects must continue updating `menuIsOpen` to `false` in response to `onMenuClose`.
|
|
25
|
+
- `PopupSelect` delegates Escape dismissal and focus restoration to its native popover. A consumer
|
|
26
|
+
`onKeyDown` handler can therefore prevent the native dismissal with `preventDefault()`;
|
|
27
|
+
previously, `PopupSelect` closed before forwarding the event.
|
|
28
|
+
- DatePicker's top-layer calendar now uses the Select menu portal's native popover instead of
|
|
29
|
+
creating a nested manual popover.
|
|
30
|
+
- The internal Popover forwarding API accepts a native `source` element so imperative Select
|
|
31
|
+
popovers retain their trigger relationship for light-dismiss behavior.
|
|
32
|
+
|
|
33
|
+
- Updated dependencies
|
|
34
|
+
|
|
35
|
+
## 18.4.0
|
|
36
|
+
|
|
37
|
+
### Minor Changes
|
|
38
|
+
|
|
39
|
+
- [`d82e6f76528ab`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/d82e6f76528ab) -
|
|
40
|
+
Add direct subpath package exports as part of the linking-platform, search, media, and
|
|
41
|
+
design-system barrel-removal (de-barrel) migration.
|
|
42
|
+
|
|
43
|
+
These packages now expose their individual modules via explicit `package.json` `exports` subpaths
|
|
44
|
+
so that consumers can import directly from the leaf module (e.g. `@atlaskit/pkg/thing`) instead of
|
|
45
|
+
the package barrel/index. This adds new public entry points without changing or removing any
|
|
46
|
+
existing exports, so it is a backwards-compatible additive change.
|
|
47
|
+
|
|
48
|
+
No runtime behaviour changes; this is an API-surface (entry-point) addition to support
|
|
49
|
+
tree-shaking and to unblock removal of the barrel index files.
|
|
50
|
+
|
|
51
|
+
### Patch Changes
|
|
52
|
+
|
|
53
|
+
- Updated dependencies
|
|
54
|
+
|
|
3
55
|
## 18.3.1
|
|
4
56
|
|
|
5
57
|
### Patch Changes
|
|
@@ -3,19 +3,15 @@ import { expect, test } from '@af/integration-testing';
|
|
|
3
3
|
/**
|
|
4
4
|
* Date picker: focus contract on the top-layer code path.
|
|
5
5
|
*
|
|
6
|
-
* `DatePicker`
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* `top-layer/notes/architecture/focus.md` does NOT apply: dialogs always
|
|
10
|
-
* move focus into the popover (to the first focusable, here the
|
|
11
|
-
* previous-year navigation button).
|
|
6
|
+
* `DatePicker` renders its calendar inside the top-layer react-select menu.
|
|
7
|
+
* Opening from the input keeps DOM focus on the combobox; the calendar remains
|
|
8
|
+
* reachable in normal Tab order.
|
|
12
9
|
*
|
|
13
10
|
* The focus contract is therefore:
|
|
14
11
|
*
|
|
15
|
-
* 1. Open
|
|
16
|
-
* (the previous-year navigation button).
|
|
12
|
+
* 1. Open from the input: focus remains on the combobox.
|
|
17
13
|
* 2. Escape: the popover closes and focus is restored to the combobox input.
|
|
18
|
-
* 3. Tab
|
|
14
|
+
* 3. Tab: focus moves from the input into the calendar without closing it.
|
|
19
15
|
*
|
|
20
16
|
* See: `platform/packages/design-system/top-layer/notes/architecture/focus.md`.
|
|
21
17
|
*/
|
|
@@ -23,9 +19,7 @@ import { expect, test } from '@af/integration-testing';
|
|
|
23
19
|
const featureFlag = 'platform-dst-top-layer';
|
|
24
20
|
|
|
25
21
|
test.describe('Date picker: top-layer focus contract', () => {
|
|
26
|
-
test('
|
|
27
|
-
page,
|
|
28
|
-
}) => {
|
|
22
|
+
test('pointer interaction: clicking the input opens the calendar', async ({ page }) => {
|
|
29
23
|
await page.visitExample<typeof import('../../examples/testing-top-layer-focus.tsx')>(
|
|
30
24
|
'design-system',
|
|
31
25
|
'datetime-picker',
|
|
@@ -33,13 +27,27 @@ test.describe('Date picker: top-layer focus contract', () => {
|
|
|
33
27
|
{ featureFlag },
|
|
34
28
|
);
|
|
35
29
|
|
|
36
|
-
|
|
30
|
+
const combobox = page.getByRole('combobox');
|
|
31
|
+
await combobox.click();
|
|
37
32
|
|
|
38
|
-
|
|
39
|
-
await expect(
|
|
33
|
+
await expect(page.getByRole('grid')).toBeVisible();
|
|
34
|
+
await expect(combobox).toHaveAttribute('aria-expanded', 'true');
|
|
35
|
+
});
|
|
40
36
|
|
|
41
|
-
|
|
42
|
-
await
|
|
37
|
+
test('initial focus: opening from the input keeps focus on the combobox', async ({ page }) => {
|
|
38
|
+
await page.visitExample<typeof import('../../examples/testing-top-layer-focus.tsx')>(
|
|
39
|
+
'design-system',
|
|
40
|
+
'datetime-picker',
|
|
41
|
+
'testing-top-layer-focus',
|
|
42
|
+
{ featureFlag },
|
|
43
|
+
);
|
|
44
|
+
|
|
45
|
+
const combobox = page.getByRole('combobox');
|
|
46
|
+
await combobox.focus();
|
|
47
|
+
|
|
48
|
+
const calendar = page.getByRole('grid');
|
|
49
|
+
await expect(calendar).toBeVisible();
|
|
50
|
+
await expect(combobox).toBeFocused();
|
|
43
51
|
});
|
|
44
52
|
|
|
45
53
|
test('focus restoration: Escape closes the popover and focus returns to the combobox input', async ({
|
|
@@ -53,9 +61,9 @@ test.describe('Date picker: top-layer focus contract', () => {
|
|
|
53
61
|
);
|
|
54
62
|
|
|
55
63
|
const combobox = page.getByRole('combobox');
|
|
56
|
-
await
|
|
64
|
+
await combobox.focus();
|
|
57
65
|
|
|
58
|
-
const calendar = page.getByRole('
|
|
66
|
+
const calendar = page.getByRole('grid');
|
|
59
67
|
await expect(calendar).toBeVisible();
|
|
60
68
|
|
|
61
69
|
await page.keyboard.press('Escape');
|
|
@@ -63,9 +71,7 @@ test.describe('Date picker: top-layer focus contract', () => {
|
|
|
63
71
|
await expect(combobox).toBeFocused();
|
|
64
72
|
});
|
|
65
73
|
|
|
66
|
-
test('focus movement: Tab moves focus
|
|
67
|
-
page,
|
|
68
|
-
}) => {
|
|
74
|
+
test('focus movement: Tab moves focus from the input into the calendar', async ({ page }) => {
|
|
69
75
|
await page.visitExample<typeof import('../../examples/testing-top-layer-focus.tsx')>(
|
|
70
76
|
'design-system',
|
|
71
77
|
'datetime-picker',
|
|
@@ -73,25 +79,16 @@ test.describe('Date picker: top-layer focus contract', () => {
|
|
|
73
79
|
{ featureFlag },
|
|
74
80
|
);
|
|
75
81
|
|
|
76
|
-
|
|
82
|
+
const combobox = page.getByRole('combobox');
|
|
83
|
+
await combobox.focus();
|
|
77
84
|
|
|
78
|
-
const calendar = page.getByRole('
|
|
85
|
+
const calendar = page.getByRole('grid');
|
|
79
86
|
await expect(calendar).toBeVisible();
|
|
87
|
+
await expect(combobox).toBeFocused();
|
|
80
88
|
|
|
81
89
|
const previousYearButton = page.getByTestId('date-picker--calendar--previous-year');
|
|
82
|
-
await expect(previousYearButton).toBeFocused();
|
|
83
|
-
|
|
84
|
-
// `useFocusWrap` keeps Tab inside the dialog for role="dialog" popovers.
|
|
85
90
|
await page.keyboard.press('Tab');
|
|
86
|
-
await expect(previousYearButton).
|
|
87
|
-
|
|
88
|
-
// Focus must stay within the calendar dialog: for a role="dialog" popover
|
|
89
|
-
// `useFocusWrap` intercepts Tab so focus never escapes to page content
|
|
90
|
-
// behind the popover.
|
|
91
|
-
const focusWithinCalendar = await calendar.evaluate(
|
|
92
|
-
(calendarElement) =>
|
|
93
|
-
document.activeElement !== null && calendarElement.contains(document.activeElement),
|
|
94
|
-
);
|
|
95
|
-
expect(focusWithinCalendar).toBe(true);
|
|
91
|
+
await expect(previousYearButton).toBeFocused();
|
|
92
|
+
await expect(calendar).toBeVisible();
|
|
96
93
|
});
|
|
97
94
|
});
|
|
@@ -350,7 +350,6 @@ function moveDateTimePickerProps(
|
|
|
350
350
|
j.jsxExpressionContainer(
|
|
351
351
|
// Adding `true` for boolean attributes that have no value;
|
|
352
352
|
// This definitely exists on here. Can't coerce right. May god have mercy on my soul for this ts-ignore.
|
|
353
|
-
// @ts-ignore Argument of type 'LiteralKind | JSXElement | JSXExpressionContainer | JSXFragment | null | undefined' is not assignable to parameter of type 'Literal | JSXText | StringLiteral | NumericLiteral | BigIntLiteral | NullLiteral | BooleanLiteral | ... 53 more ... | TSParameterProperty'. Type 'undefined' is not assignable to type 'Literal | JSXText | StringLiteral | NumericLiteral | BigIntLiteral | NullLiteral | BooleanLiteral | ... 53 more ... | TSParameterProperty'.
|
|
354
353
|
j.objectExpression([j.property('init', j.identifier(propertyName), newValue)]),
|
|
355
354
|
),
|
|
356
355
|
);
|
|
@@ -16,15 +16,16 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
16
16
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
17
17
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
18
18
|
var _dateFns = require("date-fns");
|
|
19
|
-
var
|
|
19
|
+
var _usePlatformLeafEventHandler = require("@atlaskit/analytics-next/usePlatformLeafEventHandler");
|
|
20
20
|
var _new = require("@atlaskit/button/new");
|
|
21
21
|
var _css = require("@atlaskit/css");
|
|
22
22
|
var _useId = require("@atlaskit/ds-lib/use-id");
|
|
23
23
|
var _calendar = _interopRequireDefault(require("@atlaskit/icon/core/calendar"));
|
|
24
|
-
var
|
|
25
|
-
var
|
|
24
|
+
var _localizationProvider = require("@atlaskit/locale/localization-provider");
|
|
25
|
+
var _fg = require("@atlaskit/platform-feature-flags/fg");
|
|
26
26
|
var _compiled = require("@atlaskit/primitives/compiled");
|
|
27
|
-
var
|
|
27
|
+
var _default2 = _interopRequireDefault(require("@atlaskit/select/default"));
|
|
28
|
+
var _styles = require("@atlaskit/react-select/styles");
|
|
28
29
|
var _emptyComponent = require("../internal/empty-component");
|
|
29
30
|
var _formatDate = require("../internal/format-date");
|
|
30
31
|
var _getParsedIso = require("../internal/get-parsed-iso");
|
|
@@ -44,7 +45,7 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
|
|
|
44
45
|
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; }
|
|
45
46
|
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; }
|
|
46
47
|
var packageName = "@atlaskit/datetime-picker";
|
|
47
|
-
var packageVersion = "18.
|
|
48
|
+
var packageVersion = "18.4.0";
|
|
48
49
|
var styles = {
|
|
49
50
|
pickerContainerStyle: "_kqswh2mm",
|
|
50
51
|
dropdownIndicatorStyles: "_1ul91k8s _1tke1k8s _1e0c1txw _4cvr1h6o _1bah1h6o",
|
|
@@ -71,6 +72,7 @@ var DatePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, _forwarded
|
|
|
71
72
|
var containerRef = (0, _react.useRef)(null);
|
|
72
73
|
var calendarRef = (0, _react.useRef)(null);
|
|
73
74
|
var calendarButtonRef = (0, _react.useRef)(null);
|
|
75
|
+
var isPointerInteractionRef = (0, _react.useRef)(false);
|
|
74
76
|
var _props$appearance = props.appearance,
|
|
75
77
|
appearance = _props$appearance === void 0 ? 'default' : _props$appearance,
|
|
76
78
|
_props$autoFocus = props.autoFocus,
|
|
@@ -159,7 +161,7 @@ var DatePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, _forwarded
|
|
|
159
161
|
_useState10 = (0, _slicedToArray2.default)(_useState1, 2),
|
|
160
162
|
calendarValue = _useState10[0],
|
|
161
163
|
setCalendarValue = _useState10[1];
|
|
162
|
-
var _useState11 = (0, _react.useState)((0,
|
|
164
|
+
var _useState11 = (0, _react.useState)((0, _localizationProvider.createLocalizationProvider)(propLocale)),
|
|
163
165
|
_useState12 = (0, _slicedToArray2.default)(_useState11, 2),
|
|
164
166
|
l10n = _useState12[0],
|
|
165
167
|
setL10n = _useState12[1];
|
|
@@ -186,29 +188,25 @@ var DatePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, _forwarded
|
|
|
186
188
|
}, true),
|
|
187
189
|
_useReducer2 = (0, _slicedToArray2.default)(_useReducer, 2),
|
|
188
190
|
forceUpdate = _useReducer2[1];
|
|
189
|
-
var onChangePropWithAnalytics = (0,
|
|
191
|
+
var onChangePropWithAnalytics = (0, _usePlatformLeafEventHandler.usePlatformLeafEventHandler)(_objectSpread({
|
|
190
192
|
fn: onChangeProp,
|
|
191
193
|
action: 'selectedDate',
|
|
192
194
|
actionSubject: 'datePicker'
|
|
193
195
|
}, analyticsAttributes));
|
|
194
196
|
if (propLocale !== locale) {
|
|
195
|
-
setL10n((0,
|
|
197
|
+
setL10n((0, _localizationProvider.createLocalizationProvider)(propLocale));
|
|
196
198
|
setLocale(propLocale);
|
|
197
199
|
}
|
|
198
200
|
(0, _react.useEffect)(function () {
|
|
199
|
-
//
|
|
201
|
+
// Only move focus when the dedicated calendar button opened the menu.
|
|
200
202
|
if (!isKeyDown) {
|
|
201
203
|
return;
|
|
202
204
|
}
|
|
203
205
|
if (isOpen && wasOpenedFromCalendarButton) {
|
|
206
|
+
var _calendarRef$current;
|
|
204
207
|
setIsKeyDown(false);
|
|
205
|
-
//
|
|
206
|
-
|
|
207
|
-
if (!(0, _platformFeatureFlags.fg)('platform-dst-top-layer')) {
|
|
208
|
-
var _calendarRef$current;
|
|
209
|
-
// Focus on the first button within the calendar
|
|
210
|
-
calendarRef === null || calendarRef === void 0 || (_calendarRef$current = calendarRef.current) === null || _calendarRef$current === void 0 || (_calendarRef$current = _calendarRef$current.querySelector('button')) === null || _calendarRef$current === void 0 || _calendarRef$current.focus();
|
|
211
|
-
}
|
|
208
|
+
// Focus on the first button within the calendar
|
|
209
|
+
calendarRef === null || calendarRef === void 0 || (_calendarRef$current = calendarRef.current) === null || _calendarRef$current === void 0 || (_calendarRef$current = _calendarRef$current.querySelector('button')) === null || _calendarRef$current === void 0 || _calendarRef$current.focus();
|
|
212
210
|
}
|
|
213
211
|
}, [isKeyDown, calendarRef, isOpen, wasOpenedFromCalendarButton]);
|
|
214
212
|
var getValue = function getValue() {
|
|
@@ -234,7 +232,7 @@ var DatePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, _forwarded
|
|
|
234
232
|
|
|
235
233
|
// When using top-layer, PopupContent handles focus restoration automatically
|
|
236
234
|
// on close based on the role. Only manually restore focus for the legacy path.
|
|
237
|
-
if (!(0,
|
|
235
|
+
if (!(0, _fg.fg)('platform-dst-top-layer')) {
|
|
238
236
|
if (wasOpenedFromCalendarButton) {
|
|
239
237
|
var _calendarButtonRef$cu;
|
|
240
238
|
(_calendarButtonRef$cu = calendarButtonRef.current) === null || _calendarButtonRef$cu === void 0 || _calendarButtonRef$cu.focus();
|
|
@@ -255,6 +253,7 @@ var DatePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, _forwarded
|
|
|
255
253
|
var onContainerBlur = function onContainerBlur(event) {
|
|
256
254
|
var _containerRef$current2;
|
|
257
255
|
var newlyFocusedElement = event.relatedTarget;
|
|
256
|
+
isPointerInteractionRef.current = false;
|
|
258
257
|
if (!(containerRef !== null && containerRef !== void 0 && (_containerRef$current2 = containerRef.current) !== null && _containerRef$current2 !== void 0 && _containerRef$current2.contains(newlyFocusedElement))) {
|
|
259
258
|
setIsOpen(false);
|
|
260
259
|
setShouldSetFocusOnCurrentDay(false);
|
|
@@ -285,8 +284,12 @@ var DatePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, _forwarded
|
|
|
285
284
|
// Don't open menu if focussing after the user has clicked clear
|
|
286
285
|
setClearingFromIcon(false);
|
|
287
286
|
} else {
|
|
288
|
-
//
|
|
289
|
-
|
|
287
|
+
// Opening an auto popover during pointer focus allows the matching pointerup
|
|
288
|
+
// to immediately light-dismiss it. Let the subsequent click open it instead.
|
|
289
|
+
if (!(0, _fg.fg)('platform-dst-top-layer') || !isPointerInteractionRef.current) {
|
|
290
|
+
// Don't open when focused into via keyboard if the calendar button is present
|
|
291
|
+
setIsOpen(!shouldShowCalendarButton);
|
|
292
|
+
}
|
|
290
293
|
setCalendarValue(value);
|
|
291
294
|
setIsFocused(true);
|
|
292
295
|
setWasOpenedFromCalendarButton(false);
|
|
@@ -322,12 +325,7 @@ var DatePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, _forwarded
|
|
|
322
325
|
}
|
|
323
326
|
switch (keyPressed) {
|
|
324
327
|
case 'escape':
|
|
325
|
-
// Restore focus
|
|
326
|
-
// the legacy path because it has no built-in restoration, and
|
|
327
|
-
// the top-layer path because the menu uses `mode="manual"` to
|
|
328
|
-
// avoid the auto-popover light-dismiss closing the menu on the
|
|
329
|
-
// same click that opens it (see internal/menu-top-layer.tsx).
|
|
330
|
-
// `manual` mode disables the browser's native focus return.
|
|
328
|
+
// Restore focus because it may have moved from the input into the calendar.
|
|
331
329
|
if (wasOpenedFromCalendarButton) {
|
|
332
330
|
var _calendarButtonRef$cu2;
|
|
333
331
|
(_calendarButtonRef$cu2 = calendarButtonRef.current) === null || _calendarButtonRef$cu2 === void 0 || _calendarButtonRef$cu2.focus();
|
|
@@ -405,6 +403,9 @@ var DatePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, _forwarded
|
|
|
405
403
|
|
|
406
404
|
// This event handler is triggered from both keydown and click. It's weird.
|
|
407
405
|
var onCalendarButtonClick = function onCalendarButtonClick(e) {
|
|
406
|
+
if (!getIsOpen() && (0, _fg.fg)('platform-dst-top-layer')) {
|
|
407
|
+
setIsKeyDown(true);
|
|
408
|
+
}
|
|
408
409
|
setIsOpen(function (isOpen) {
|
|
409
410
|
if (isOpen) {
|
|
410
411
|
var _props$selectProps2, _props$selectProps2$o;
|
|
@@ -477,7 +478,7 @@ var DatePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, _forwarded
|
|
|
477
478
|
}));
|
|
478
479
|
}
|
|
479
480
|
} : {}), {}, {
|
|
480
|
-
Menu: (0,
|
|
481
|
+
Menu: (0, _fg.fg)('platform-dst-top-layer') ? _menuTopLayer.MenuTopLayer : _menu.Menu,
|
|
481
482
|
SingleValue: SingleValue
|
|
482
483
|
}, !showClearIndicator && {
|
|
483
484
|
ClearIndicator: _emptyComponent.EmptyComponent
|
|
@@ -508,9 +509,7 @@ var DatePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, _forwarded
|
|
|
508
509
|
*/
|
|
509
510
|
menuInnerWrapper: props === null || props === void 0 ? void 0 : props.menuInnerWrapper
|
|
510
511
|
};
|
|
511
|
-
|
|
512
|
-
// @ts-ignore -- Argument of type 'StylesConfig<OptionType, false, GroupBase<OptionType>>' is not assignable to parameter of type 'StylesConfig<OptionType, boolean, GroupBase<OptionType>>'.
|
|
513
|
-
var mergedStyles = (0, _select.mergeStyles)(selectStyles, {
|
|
512
|
+
var mergedStyles = (0, _styles.mergeStyles)(selectStyles, {
|
|
514
513
|
control: function control(base) {
|
|
515
514
|
return _objectSpread(_objectSpread({}, base), disabledStyle);
|
|
516
515
|
},
|
|
@@ -537,10 +536,19 @@ var DatePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, _forwarded
|
|
|
537
536
|
return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({}, innerProps, {
|
|
538
537
|
"data-testid": testId && "".concat(testId, "--container"),
|
|
539
538
|
onBlur: onContainerBlur,
|
|
539
|
+
onClickCapture: function onClickCapture() {
|
|
540
|
+
isPointerInteractionRef.current = false;
|
|
541
|
+
},
|
|
540
542
|
onFocus: onContainerFocus,
|
|
541
543
|
onClick: onInputClick,
|
|
542
544
|
onInput: onTextInput,
|
|
543
545
|
onKeyDown: onInputKeyDown,
|
|
546
|
+
onPointerCancelCapture: function onPointerCancelCapture() {
|
|
547
|
+
isPointerInteractionRef.current = false;
|
|
548
|
+
},
|
|
549
|
+
onPointerDownCapture: function onPointerDownCapture() {
|
|
550
|
+
isPointerInteractionRef.current = true;
|
|
551
|
+
},
|
|
544
552
|
ref: getContainerRef
|
|
545
553
|
// Since the onclick, onfocus are passed down, adding role="presentation" prevents typecheck errors.
|
|
546
554
|
,
|
|
@@ -551,7 +559,7 @@ var DatePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, _forwarded
|
|
|
551
559
|
type: "hidden",
|
|
552
560
|
value: getterValue,
|
|
553
561
|
"data-testid": testId && "".concat(testId, "--input")
|
|
554
|
-
}), /*#__PURE__*/React.createElement(
|
|
562
|
+
}), /*#__PURE__*/React.createElement(_default2.default, (0, _extends2.default)({
|
|
555
563
|
appearance: appearance,
|
|
556
564
|
"aria-describedby": ariaDescribedBy ? "".concat(ariaDescribedBy, " ").concat(valueId) : valueId,
|
|
557
565
|
label: label || undefined,
|
|
@@ -593,7 +601,6 @@ var DatePicker = /*#__PURE__*/(0, _react.forwardRef)(function (props, _forwarded
|
|
|
593
601
|
spacing: spacing,
|
|
594
602
|
testId: testId
|
|
595
603
|
// These aren't part of `Select`'s API, but we're using them here.
|
|
596
|
-
// @ts-ignore -- Property 'calendarContainerRef' does not exist on type 'IntrinsicAttributes & LibraryManagedAttributes<(<Option extends unknown = OptionType, IsMulti extends boolean = false>(props: AtlaskitSelectProps<Option, IsMulti> & { ...; }) => Element), AtlaskitSelectProps<...> & { ...; }>'.
|
|
597
604
|
,
|
|
598
605
|
calendarContainerRef: calendarProps.calendarContainerRef,
|
|
599
606
|
calendarDisabled: calendarProps.calendarDisabled,
|
|
@@ -15,11 +15,11 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
|
15
15
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
16
|
var _react = _interopRequireWildcard(require("react"));
|
|
17
17
|
var _dateFns = require("date-fns");
|
|
18
|
-
var
|
|
18
|
+
var _usePlatformLeafEventHandler = require("@atlaskit/analytics-next/usePlatformLeafEventHandler");
|
|
19
19
|
var _new = require("@atlaskit/button/new");
|
|
20
20
|
var _crossCircle = _interopRequireDefault(require("@atlaskit/icon/core/cross-circle"));
|
|
21
21
|
var _compiled = require("@atlaskit/primitives/compiled");
|
|
22
|
-
var
|
|
22
|
+
var _styles = require("@atlaskit/react-select/styles");
|
|
23
23
|
var _dateTimePickerContainer = require("../internal/date-time-picker-container");
|
|
24
24
|
var _formatDateTimeZoneIntoIso = require("../internal/format-date-time-zone-into-iso");
|
|
25
25
|
var _parseTokens = require("../internal/parse-tokens");
|
|
@@ -33,7 +33,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
33
33
|
// for typing `process`
|
|
34
34
|
// oxlint-disable-next-line @atlassian/no-restricted-imports
|
|
35
35
|
var packageName = "@atlaskit/datetime-picker";
|
|
36
|
-
var packageVersion = "18.
|
|
36
|
+
var packageVersion = "18.4.0";
|
|
37
37
|
var analyticsAttributes = {
|
|
38
38
|
componentName: 'dateTimePicker',
|
|
39
39
|
packageName: packageName,
|
|
@@ -339,7 +339,7 @@ var DateTimePicker = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
339
339
|
timePickerPropsWithSelectProps.onChange('');
|
|
340
340
|
}
|
|
341
341
|
};
|
|
342
|
-
var onChangePropWithAnalytics = (0,
|
|
342
|
+
var onChangePropWithAnalytics = (0, _usePlatformLeafEventHandler.usePlatformLeafEventHandler)(_objectSpread({
|
|
343
343
|
fn: onChangeProp,
|
|
344
344
|
action: 'selectedDate',
|
|
345
345
|
actionSubject: 'dateTimePicker'
|
|
@@ -392,14 +392,14 @@ var DateTimePicker = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
392
392
|
var datePickerAriaDescribedBy = datePickerProps['aria-describedby'] || ariaDescribedBy;
|
|
393
393
|
var datePickerLabel = datePickerProps.label || 'Date';
|
|
394
394
|
var mergedDatePickerSelectProps = _objectSpread(_objectSpread({}, datePickerSelectProps), {}, {
|
|
395
|
-
styles: (0,
|
|
395
|
+
styles: (0, _styles.mergeStyles)(styles, datePickerSelectProps === null || datePickerSelectProps === void 0 ? void 0 : datePickerSelectProps.styles)
|
|
396
396
|
});
|
|
397
397
|
var timePickerSelectProps = timePickerPropsWithSelectProps.selectProps,
|
|
398
398
|
timePickerProps = (0, _objectWithoutProperties2.default)(timePickerPropsWithSelectProps, _excluded2);
|
|
399
399
|
var timePickerAriaDescribedBy = timePickerProps['aria-describedby'] || ariaDescribedBy;
|
|
400
400
|
var timePickerLabel = timePickerProps.label || 'Time';
|
|
401
401
|
var mergedTimePickerSelectProps = _objectSpread(_objectSpread({}, timePickerSelectProps), {}, {
|
|
402
|
-
styles: (0,
|
|
402
|
+
styles: (0, _styles.mergeStyles)(styles, timePickerSelectProps === null || timePickerSelectProps === void 0 ? void 0 : timePickerSelectProps.styles)
|
|
403
403
|
});
|
|
404
404
|
|
|
405
405
|
// Render DateTimePicker's IconContainer when a value has been filled
|
|
@@ -12,11 +12,13 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
12
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
14
14
|
var _dateFns = require("date-fns");
|
|
15
|
-
var
|
|
15
|
+
var _usePlatformLeafEventHandler = require("@atlaskit/analytics-next/usePlatformLeafEventHandler");
|
|
16
16
|
var _noop = _interopRequireDefault(require("@atlaskit/ds-lib/noop"));
|
|
17
|
-
var
|
|
18
|
-
var
|
|
19
|
-
var
|
|
17
|
+
var _localizationProvider = require("@atlaskit/locale/localization-provider");
|
|
18
|
+
var _fg = require("@atlaskit/platform-feature-flags/fg");
|
|
19
|
+
var _default2 = _interopRequireDefault(require("@atlaskit/select/default"));
|
|
20
|
+
var _creatableSelect = _interopRequireDefault(require("@atlaskit/select/creatable-select"));
|
|
21
|
+
var _styles = require("@atlaskit/react-select/styles");
|
|
20
22
|
var _defaultTimes = require("../internal/default-times");
|
|
21
23
|
var _emptyComponent = require("../internal/empty-component");
|
|
22
24
|
var _fixedLayerMenu = require("../internal/fixed-layer-menu");
|
|
@@ -30,7 +32,7 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
|
|
|
30
32
|
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; }
|
|
31
33
|
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; } // oxlint-disable-next-line @atlassian/no-restricted-imports
|
|
32
34
|
var packageName = "@atlaskit/datetime-picker";
|
|
33
|
-
var packageVersion = "18.
|
|
35
|
+
var packageVersion = "18.4.0";
|
|
34
36
|
var defaultTimeFormat = 'h:mma';
|
|
35
37
|
var menuStyles = {
|
|
36
38
|
/* Need to remove default absolute positioning as that causes issues with position fixed */
|
|
@@ -142,7 +144,7 @@ var TimePicker = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, _ref) {
|
|
|
142
144
|
}, 0),
|
|
143
145
|
_useReducer2 = (0, _slicedToArray2.default)(_useReducer, 2),
|
|
144
146
|
forceUpdate = _useReducer2[1];
|
|
145
|
-
var providedOnChangeWithAnalytics = (0,
|
|
147
|
+
var providedOnChangeWithAnalytics = (0, _usePlatformLeafEventHandler.usePlatformLeafEventHandler)(_objectSpread({
|
|
146
148
|
fn: providedOnChange,
|
|
147
149
|
action: 'selectedTime'
|
|
148
150
|
}, analyticsAttributes));
|
|
@@ -229,11 +231,11 @@ var TimePicker = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, _ref) {
|
|
|
229
231
|
};
|
|
230
232
|
var ICON_PADDING = 2;
|
|
231
233
|
var GRID_SIZE = 8;
|
|
232
|
-
var l10n = (0,
|
|
234
|
+
var l10n = (0, _localizationProvider.createLocalizationProvider)(locale);
|
|
233
235
|
var _selectProps$styles = selectProps.styles,
|
|
234
236
|
selectStyles = _selectProps$styles === void 0 ? {} : _selectProps$styles,
|
|
235
237
|
otherSelectProps = (0, _objectWithoutProperties2.default)(selectProps, _excluded);
|
|
236
|
-
var SelectComponent = timeIsEditable ?
|
|
238
|
+
var SelectComponent = timeIsEditable ? _creatableSelect.default : _default2.default;
|
|
237
239
|
|
|
238
240
|
/**
|
|
239
241
|
* There are multiple props that can change how the time is formatted.
|
|
@@ -283,15 +285,13 @@ var TimePicker = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, _ref) {
|
|
|
283
285
|
});
|
|
284
286
|
var selectComponents = _objectSpread({
|
|
285
287
|
DropdownIndicator: _emptyComponent.EmptyComponent,
|
|
286
|
-
Menu: (0,
|
|
288
|
+
Menu: (0, _fg.fg)('platform-dst-top-layer') ? _fixedLayerMenuTopLayer.FixedLayerMenuTopLayer : _fixedLayerMenu.FixedLayerMenu,
|
|
287
289
|
SingleValue: SingleValue
|
|
288
290
|
}, hideIcon && {
|
|
289
291
|
ClearIndicator: _emptyComponent.EmptyComponent
|
|
290
292
|
});
|
|
291
293
|
var renderIconContainer = Boolean(!hideIcon && value);
|
|
292
|
-
|
|
293
|
-
// @ts-ignore -- Argument of type 'StylesConfig<OptionType, false, GroupBase<OptionType>>' is not assignable to parameter of type 'StylesConfig<OptionType, boolean, GroupBase<OptionType>>'.
|
|
294
|
-
var mergedStyles = (0, _select.mergeStyles)(selectStyles, {
|
|
294
|
+
var mergedStyles = (0, _styles.mergeStyles)(selectStyles, {
|
|
295
295
|
control: function control(base) {
|
|
296
296
|
return _objectSpread({}, base);
|
|
297
297
|
},
|
|
@@ -323,9 +323,7 @@ var TimePicker = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, _ref) {
|
|
|
323
323
|
"aria-label": label || undefined,
|
|
324
324
|
appearance: appearance,
|
|
325
325
|
autoFocus: autoFocus,
|
|
326
|
-
clearControlLabel: clearControlLabel
|
|
327
|
-
// @ts-ignore - Type mismatch with components - workaround for help-center local consumption
|
|
328
|
-
,
|
|
326
|
+
clearControlLabel: clearControlLabel,
|
|
329
327
|
components: selectComponents,
|
|
330
328
|
inputId: id,
|
|
331
329
|
isClearable: true,
|
|
@@ -335,22 +333,17 @@ var TimePicker = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, _ref) {
|
|
|
335
333
|
menuPlacement: "auto",
|
|
336
334
|
openMenuOnFocus: true,
|
|
337
335
|
onBlur: onBlur,
|
|
338
|
-
onCreateOption: onCreateOption
|
|
339
|
-
// @ts-ignore - Type mismatch with onChange handler - workaround for help-center local consumption
|
|
340
|
-
,
|
|
336
|
+
onCreateOption: onCreateOption,
|
|
341
337
|
onChange: onChange,
|
|
342
338
|
options: options,
|
|
343
339
|
onFocus: onFocus,
|
|
344
340
|
onMenuOpen: onMenuOpen,
|
|
345
341
|
onMenuClose: onMenuClose,
|
|
346
|
-
placeholder: placeholder || l10n.formatTime(_placeholderDateTime.placeholderDatetime)
|
|
347
|
-
// @ts-ignore - Type mismatch with styles config - workaround for help-center local consumption
|
|
348
|
-
,
|
|
342
|
+
placeholder: placeholder || l10n.formatTime(_placeholderDateTime.placeholderDatetime),
|
|
349
343
|
styles: mergedStyles,
|
|
350
344
|
value: initialValue,
|
|
351
345
|
spacing: spacing
|
|
352
346
|
// We need this to get things to work, even though it's not supported.
|
|
353
|
-
// @ts-ignore
|
|
354
347
|
,
|
|
355
348
|
fixedLayerRef: containerRef,
|
|
356
349
|
isInvalid: isInvalid,
|
|
@@ -12,7 +12,7 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
12
12
|
var React = _react;
|
|
13
13
|
var _runtime = require("@compiled/react/runtime");
|
|
14
14
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
15
|
-
var
|
|
15
|
+
var _fg = require("@atlaskit/platform-feature-flags/fg");
|
|
16
16
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
17
17
|
var isInvalidBorderStyles = null;
|
|
18
18
|
var isFocusedBorderStyles = null;
|
|
@@ -44,6 +44,6 @@ var DateTimePickerContainer = exports.DateTimePickerContainer = /*#__PURE__*/(0,
|
|
|
44
44
|
return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({}, innerProps, {
|
|
45
45
|
"data-testid": testId,
|
|
46
46
|
ref: ref,
|
|
47
|
-
className: (0, _runtime.ax)(["_2rko12b0 _v564r5cv _1e0c1txw _bfhk1j9a _d0altlke", (0,
|
|
47
|
+
className: (0, _runtime.ax)(["_2rko12b0 _v564r5cv _1e0c1txw _bfhk1j9a _d0altlke", (0, _fg.fg)('platform-dst-shape-theme-default') && "_2rko1qi0", "_19itno8c", isDisabled && "_1h6dbk0g _bfhk187o _d0al73ad", isFocused && "_bfhkr01l", appearance === 'subtle' && isFocused && "_1h6d1j28 _bfhkr01l", appearance === 'subtle' && !isFocused && "_1h6d1j28 _bfhk1j28", isFocused && "_1h6d1v1w _16qsvyy1", isInvalid && "_1h6d1bqt", notFocusedOrIsDisabled && isInvalid && "_4cvx1bqt _irr3l4ek", notFocusedOrIsDisabled && !isInvalid && "_4cvxrsbi _irr3l4ek", appearance === 'none' && "_1h6d1j28 _bfhk1j28 _4cvx1j28 _irr31j28"])
|
|
48
48
|
}), children);
|
|
49
49
|
});
|
|
@@ -12,7 +12,7 @@ var React = _react;
|
|
|
12
12
|
var _runtime = require("@compiled/react/runtime");
|
|
13
13
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
14
14
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
15
|
-
var
|
|
15
|
+
var _components = require("@atlaskit/react-select/components");
|
|
16
16
|
var _placementMap = require("@atlaskit/top-layer/placement-map");
|
|
17
17
|
var _popover = require("@atlaskit/top-layer/popover");
|
|
18
18
|
var _popoverSurface = require("@atlaskit/top-layer/popover-surface");
|
|
@@ -63,9 +63,7 @@ var FixedLayerMenuTopLayer = exports.FixedLayerMenuTopLayer = function FixedLaye
|
|
|
63
63
|
children = _ref.children,
|
|
64
64
|
rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
65
65
|
// The select's container element is the anchor for the popup.
|
|
66
|
-
// @ts-ignore -- fixedLayerRef is a custom prop passed through selectProps
|
|
67
66
|
var triggerRef = (0, _react.useRef)((_selectProps$fixedLay = selectProps.fixedLayerRef) !== null && _selectProps$fixedLay !== void 0 ? _selectProps$fixedLay : null);
|
|
68
|
-
// @ts-ignore -- fixedLayerRef is a custom prop passed through selectProps
|
|
69
67
|
triggerRef.current = (_selectProps$fixedLay2 = selectProps.fixedLayerRef) !== null && _selectProps$fixedLay2 !== void 0 ? _selectProps$fixedLay2 : null;
|
|
70
68
|
var popoverRef = (0, _react.useRef)(null);
|
|
71
69
|
(0, _useAnchorPosition.useAnchorPosition)({
|
|
@@ -91,11 +89,9 @@ var FixedLayerMenuTopLayer = exports.FixedLayerMenuTopLayer = function FixedLaye
|
|
|
91
89
|
,
|
|
92
90
|
mode: "manual",
|
|
93
91
|
placement: popupPlacement,
|
|
94
|
-
shouldAnimate: true
|
|
95
|
-
// @ts-ignore -- testId is a custom prop passed through selectProps
|
|
96
|
-
,
|
|
92
|
+
shouldAnimate: true,
|
|
97
93
|
testId: selectProps.testId && "".concat(selectProps.testId, "--popup")
|
|
98
|
-
}, /*#__PURE__*/React.createElement(_popoverSurface.PopoverSurface, null, /*#__PURE__*/React.createElement(
|
|
94
|
+
}, /*#__PURE__*/React.createElement(_popoverSurface.PopoverSurface, null, /*#__PURE__*/React.createElement(_components.components.Menu, (0, _extends2.default)({}, rest, {
|
|
99
95
|
// eslint-disable-next-line @atlaskit/design-system/no-unsafe-style-overrides, @atlaskit/ui-styling-standard/no-classname-prop
|
|
100
96
|
className: className,
|
|
101
97
|
clearValue: clearValue,
|
|
@@ -11,7 +11,7 @@ var React = _interopRequireWildcard(require("react"));
|
|
|
11
11
|
var _runtime = require("@compiled/react/runtime");
|
|
12
12
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
13
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
14
|
-
var
|
|
14
|
+
var _components = require("@atlaskit/react-select/components");
|
|
15
15
|
var _fixedLayer = _interopRequireDefault(require("../internal/fixed-layer"));
|
|
16
16
|
var _excluded = ["className", "clearValue", "cx", "getStyles", "getValue", "hasValue", "innerProps", "innerRef", "isLoading", "isMulti", "isRtl", "maxMenuHeight", "menuPlacement", "menuPosition", "menuShouldScrollIntoView", "minMenuHeight", "options", "placement", "selectOption", "selectProps", "setValue", "children"];
|
|
17
17
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
@@ -43,11 +43,9 @@ var FixedLayerMenu = exports.FixedLayerMenu = function FixedLayerMenu(_ref) {
|
|
|
43
43
|
children = _ref.children,
|
|
44
44
|
rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
45
45
|
return /*#__PURE__*/React.createElement(_fixedLayer.default, {
|
|
46
|
-
inputValue: selectProps.inputValue
|
|
47
|
-
//@ts-ignore react-select unsupported props
|
|
48
|
-
,
|
|
46
|
+
inputValue: selectProps.inputValue,
|
|
49
47
|
containerRef: selectProps.fixedLayerRef,
|
|
50
|
-
content: /*#__PURE__*/React.createElement(
|
|
48
|
+
content: /*#__PURE__*/React.createElement(_components.components.Menu, (0, _extends2.default)({}, rest, {
|
|
51
49
|
// eslint-disable-next-line @atlaskit/design-system/no-unsafe-style-overrides, @atlaskit/ui-styling-standard/no-classname-prop
|
|
52
50
|
className: className,
|
|
53
51
|
clearValue: clearValue,
|
|
@@ -70,9 +68,7 @@ var FixedLayerMenu = exports.FixedLayerMenu = function FixedLayerMenu(_ref) {
|
|
|
70
68
|
selectOption: selectOption,
|
|
71
69
|
selectProps: selectProps,
|
|
72
70
|
setValue: setValue
|
|
73
|
-
}), children)
|
|
74
|
-
//@ts-ignore react-select unsupported props
|
|
75
|
-
,
|
|
71
|
+
}), children),
|
|
76
72
|
testId: selectProps.testId
|
|
77
73
|
});
|
|
78
74
|
};
|