@elastic/eui 110.0.0 → 111.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/es/components/collapsible_nav/collapsible_nav.js +20 -101
- package/es/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
- package/es/components/flyout/_flyout_overlay.js +52 -0
- package/es/components/flyout/_flyout_resize_button.js +32 -0
- package/es/components/flyout/{flyout_resizable.styles.js → _flyout_resize_button.styles.js} +11 -11
- package/es/components/flyout/const.js +42 -0
- package/es/components/flyout/flyout.component.js +481 -0
- package/es/components/flyout/flyout.js +77 -379
- package/es/components/flyout/flyout.styles.js +105 -7
- package/es/components/flyout/flyout_menu.js +241 -0
- package/es/components/flyout/flyout_menu.styles.js +19 -0
- package/{optimize/es/components/flyout/flyout_context.js → es/components/flyout/flyout_menu_context.js} +1 -7
- package/es/components/flyout/flyout_parent_context.js +36 -0
- package/es/components/flyout/flyout_resizable.js +33 -144
- package/es/components/flyout/hooks.js +25 -0
- package/es/components/flyout/index.js +5 -2
- package/es/components/flyout/manager/actions.js +153 -0
- package/es/components/flyout/manager/activity_stage.js +95 -0
- package/es/components/flyout/manager/const.js +56 -0
- package/es/components/flyout/manager/context.js +33 -0
- package/es/components/flyout/manager/flyout_child.js +75 -0
- package/es/components/flyout/manager/flyout_main.js +65 -0
- package/es/components/flyout/manager/flyout_main.styles.js +25 -0
- package/es/components/flyout/manager/flyout_managed.js +227 -0
- package/es/components/flyout/manager/flyout_managed.styles.js +69 -0
- package/es/components/flyout/manager/hooks.js +55 -0
- package/es/components/flyout/manager/index.js +31 -0
- package/es/components/flyout/manager/layout_mode.js +167 -0
- package/es/components/flyout/manager/provider.js +57 -0
- package/es/components/flyout/manager/reducer.js +320 -0
- package/es/components/flyout/manager/selectors.js +116 -0
- package/es/components/flyout/manager/store.js +113 -0
- package/es/components/flyout/manager/validation.js +85 -0
- package/es/components/flyout/use_flyout_resizable.js +149 -0
- package/es/components/flyout/use_flyout_z_index.js +46 -0
- package/es/components/overlay_mask/overlay_mask.js +13 -3
- package/es/components/overlay_mask/overlay_mask.styles.js +11 -2
- package/es/components/provider/provider.js +2 -1
- package/eui.d.ts +1484 -921
- package/i18ntokens.json +1207 -1153
- package/lib/components/collapsible_nav/collapsible_nav.js +20 -101
- package/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
- package/lib/components/flyout/_flyout_overlay.js +59 -0
- package/lib/components/flyout/_flyout_resize_button.js +38 -0
- package/{test-env/components/flyout/flyout_resizable.styles.js → lib/components/flyout/_flyout_resize_button.styles.js} +12 -12
- package/lib/components/flyout/const.js +49 -0
- package/lib/components/flyout/flyout.component.js +488 -0
- package/lib/components/flyout/flyout.js +102 -379
- package/lib/components/flyout/flyout.styles.js +105 -7
- package/lib/components/flyout/flyout_menu.js +243 -0
- package/lib/components/flyout/flyout_menu.styles.js +25 -0
- package/{optimize/lib/components/flyout/flyout_context.js → lib/components/flyout/flyout_menu_context.js} +2 -7
- package/lib/components/flyout/flyout_parent_context.js +43 -0
- package/lib/components/flyout/flyout_resizable.js +36 -147
- package/lib/components/flyout/hooks.js +30 -0
- package/lib/components/flyout/index.js +21 -14
- package/lib/components/flyout/manager/actions.js +159 -0
- package/lib/components/flyout/manager/activity_stage.js +101 -0
- package/lib/components/flyout/manager/const.js +62 -0
- package/lib/components/flyout/manager/context.js +41 -0
- package/lib/components/flyout/manager/flyout_child.js +80 -0
- package/lib/components/flyout/manager/flyout_main.js +70 -0
- package/lib/components/flyout/manager/flyout_main.styles.js +31 -0
- package/lib/components/flyout/manager/flyout_managed.js +233 -0
- package/lib/components/flyout/manager/flyout_managed.styles.js +73 -0
- package/lib/components/flyout/manager/hooks.js +131 -0
- package/lib/components/flyout/manager/index.js +168 -0
- package/lib/components/flyout/manager/layout_mode.js +171 -0
- package/lib/components/flyout/manager/provider.js +63 -0
- package/lib/components/flyout/manager/reducer.js +325 -0
- package/lib/components/flyout/manager/selectors.js +122 -0
- package/lib/components/flyout/manager/store.js +120 -0
- package/lib/components/flyout/manager/validation.js +94 -0
- package/lib/components/flyout/use_flyout_resizable.js +153 -0
- package/lib/components/flyout/use_flyout_z_index.js +51 -0
- package/lib/components/overlay_mask/overlay_mask.js +12 -2
- package/lib/components/overlay_mask/overlay_mask.styles.js +11 -4
- package/lib/components/provider/provider.js +2 -1
- package/optimize/es/components/collapsible_nav/collapsible_nav.js +1 -0
- package/optimize/es/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
- package/optimize/es/components/flyout/_flyout_overlay.js +52 -0
- package/optimize/es/components/flyout/_flyout_resize_button.js +31 -0
- package/optimize/es/components/flyout/{flyout_resizable.styles.js → _flyout_resize_button.styles.js} +11 -11
- package/optimize/es/components/flyout/const.js +42 -0
- package/optimize/es/components/flyout/flyout.component.js +469 -0
- package/optimize/es/components/flyout/flyout.js +53 -349
- package/optimize/es/components/flyout/flyout.styles.js +102 -7
- package/optimize/es/components/flyout/flyout_menu.js +162 -0
- package/optimize/es/components/flyout/flyout_menu.styles.js +19 -0
- package/{es/components/flyout/flyout_context.js → optimize/es/components/flyout/flyout_menu_context.js} +1 -7
- package/optimize/es/components/flyout/flyout_parent_context.js +36 -0
- package/optimize/es/components/flyout/flyout_resizable.js +7 -138
- package/optimize/es/components/flyout/hooks.js +25 -0
- package/optimize/es/components/flyout/index.js +5 -2
- package/optimize/es/components/flyout/manager/actions.js +153 -0
- package/optimize/es/components/flyout/manager/activity_stage.js +95 -0
- package/optimize/es/components/flyout/manager/const.js +56 -0
- package/optimize/es/components/flyout/manager/context.js +33 -0
- package/optimize/es/components/flyout/manager/flyout_child.js +71 -0
- package/optimize/es/components/flyout/manager/flyout_main.js +61 -0
- package/optimize/es/components/flyout/manager/flyout_main.styles.js +25 -0
- package/optimize/es/components/flyout/manager/flyout_managed.js +223 -0
- package/optimize/es/components/flyout/manager/flyout_managed.styles.js +69 -0
- package/optimize/es/components/flyout/manager/hooks.js +55 -0
- package/optimize/es/components/flyout/manager/index.js +31 -0
- package/optimize/es/components/flyout/manager/layout_mode.js +162 -0
- package/optimize/es/components/flyout/manager/provider.js +53 -0
- package/optimize/es/components/flyout/manager/reducer.js +312 -0
- package/optimize/es/components/flyout/manager/selectors.js +116 -0
- package/optimize/es/components/flyout/manager/store.js +113 -0
- package/optimize/es/components/flyout/manager/types.js +1 -0
- package/optimize/es/components/flyout/manager/validation.js +85 -0
- package/optimize/es/components/flyout/types.js +1 -0
- package/optimize/es/components/flyout/use_flyout_resizable.js +144 -0
- package/optimize/es/components/flyout/use_flyout_z_index.js +46 -0
- package/optimize/es/components/overlay_mask/overlay_mask.js +13 -3
- package/optimize/es/components/overlay_mask/overlay_mask.styles.js +11 -2
- package/optimize/es/components/provider/provider.js +2 -1
- package/optimize/lib/components/collapsible_nav/collapsible_nav.js +1 -0
- package/optimize/lib/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
- package/optimize/lib/components/flyout/_flyout_overlay.js +62 -0
- package/optimize/lib/components/flyout/_flyout_resize_button.js +37 -0
- package/{lib/components/flyout/flyout_resizable.styles.js → optimize/lib/components/flyout/_flyout_resize_button.styles.js} +12 -12
- package/optimize/lib/components/flyout/const.js +49 -0
- package/optimize/lib/components/flyout/flyout.component.js +477 -0
- package/optimize/lib/components/flyout/flyout.js +77 -349
- package/optimize/lib/components/flyout/flyout.styles.js +102 -7
- package/optimize/lib/components/flyout/flyout_menu.js +168 -0
- package/optimize/lib/components/flyout/flyout_menu.styles.js +25 -0
- package/{lib/components/flyout/flyout_context.js → optimize/lib/components/flyout/flyout_menu_context.js} +2 -7
- package/optimize/lib/components/flyout/flyout_parent_context.js +43 -0
- package/optimize/lib/components/flyout/flyout_resizable.js +9 -139
- package/optimize/lib/components/flyout/hooks.js +30 -0
- package/optimize/lib/components/flyout/index.js +21 -14
- package/optimize/lib/components/flyout/manager/actions.js +159 -0
- package/optimize/lib/components/flyout/manager/activity_stage.js +101 -0
- package/optimize/lib/components/flyout/manager/const.js +62 -0
- package/optimize/lib/components/flyout/manager/context.js +41 -0
- package/optimize/lib/components/flyout/manager/flyout_child.js +76 -0
- package/optimize/lib/components/flyout/manager/flyout_main.js +66 -0
- package/optimize/lib/components/flyout/manager/flyout_main.styles.js +31 -0
- package/optimize/lib/components/flyout/manager/flyout_managed.js +231 -0
- package/optimize/lib/components/flyout/manager/flyout_managed.styles.js +74 -0
- package/optimize/lib/components/flyout/manager/hooks.js +131 -0
- package/optimize/lib/components/flyout/manager/index.js +168 -0
- package/optimize/lib/components/flyout/manager/layout_mode.js +169 -0
- package/optimize/lib/components/flyout/manager/provider.js +61 -0
- package/optimize/lib/components/flyout/manager/reducer.js +318 -0
- package/optimize/lib/components/flyout/manager/selectors.js +122 -0
- package/optimize/lib/components/flyout/manager/store.js +120 -0
- package/optimize/lib/components/flyout/manager/validation.js +94 -0
- package/optimize/lib/components/flyout/types.js +5 -0
- package/optimize/lib/components/flyout/use_flyout_resizable.js +151 -0
- package/optimize/lib/components/flyout/use_flyout_z_index.js +51 -0
- package/optimize/lib/components/overlay_mask/overlay_mask.js +12 -2
- package/optimize/lib/components/overlay_mask/overlay_mask.styles.js +11 -4
- package/optimize/lib/components/provider/provider.js +2 -1
- package/package.json +5 -4
- package/test-env/components/collapsible_nav/collapsible_nav.js +20 -101
- package/test-env/components/collapsible_nav_beta/collapsible_nav_beta.js +1 -0
- package/test-env/components/flyout/_flyout_overlay.js +62 -0
- package/test-env/components/flyout/_flyout_resize_button.js +37 -0
- package/{optimize/lib/components/flyout/flyout_resizable.styles.js → test-env/components/flyout/_flyout_resize_button.styles.js} +12 -12
- package/test-env/components/flyout/const.js +49 -0
- package/test-env/components/flyout/flyout.component.js +477 -0
- package/test-env/components/flyout/flyout.styles.js +102 -7
- package/test-env/components/flyout/flyout_menu.js +241 -0
- package/test-env/components/flyout/flyout_menu.styles.js +25 -0
- package/test-env/components/flyout/{flyout_context.js → flyout_menu_context.js} +2 -7
- package/test-env/components/flyout/flyout_parent_context.js +43 -0
- package/test-env/components/flyout/flyout_resizable.js +35 -139
- package/test-env/components/flyout/hooks.js +30 -0
- package/test-env/components/flyout/index.js +21 -14
- package/test-env/components/flyout/manager/actions.js +159 -0
- package/test-env/components/flyout/manager/activity_stage.js +101 -0
- package/test-env/components/flyout/manager/const.js +62 -0
- package/test-env/components/flyout/manager/context.js +41 -0
- package/test-env/components/flyout/manager/flyout_child.js +76 -0
- package/test-env/components/flyout/manager/flyout_main.js +66 -0
- package/test-env/components/flyout/manager/flyout_main.styles.js +31 -0
- package/test-env/components/flyout/manager/flyout_managed.js +231 -0
- package/test-env/components/flyout/manager/flyout_managed.styles.js +74 -0
- package/test-env/components/flyout/manager/hooks.js +131 -0
- package/test-env/components/flyout/manager/index.js +168 -0
- package/test-env/components/flyout/manager/layout_mode.js +169 -0
- package/test-env/components/flyout/manager/provider.js +61 -0
- package/test-env/components/flyout/manager/reducer.js +318 -0
- package/test-env/components/flyout/manager/selectors.js +122 -0
- package/test-env/components/flyout/manager/store.js +120 -0
- package/test-env/components/flyout/manager/types.js +5 -0
- package/test-env/components/flyout/manager/validation.js +94 -0
- package/test-env/components/flyout/types.js +5 -0
- package/test-env/components/flyout/use_flyout_resizable.js +151 -0
- package/test-env/components/flyout/use_flyout_z_index.js +51 -0
- package/test-env/components/overlay_mask/overlay_mask.js +12 -2
- package/test-env/components/overlay_mask/overlay_mask.styles.js +11 -4
- package/test-env/components/provider/provider.js +2 -1
- package/es/components/flyout/flyout_child.js +0 -223
- package/es/components/flyout/flyout_child.styles.js +0 -32
- package/es/components/flyout/flyout_child_manager.js +0 -114
- package/es/components/flyout/sessions/flyout_provider.js +0 -95
- package/es/components/flyout/sessions/flyout_reducer.js +0 -195
- package/es/components/flyout/sessions/index.js +0 -10
- package/es/components/flyout/sessions/use_eui_flyout.js +0 -82
- package/lib/components/flyout/flyout_child.js +0 -231
- package/lib/components/flyout/flyout_child.styles.js +0 -38
- package/lib/components/flyout/flyout_child_manager.js +0 -122
- package/lib/components/flyout/sessions/flyout_provider.js +0 -102
- package/lib/components/flyout/sessions/flyout_reducer.js +0 -202
- package/lib/components/flyout/sessions/index.js +0 -25
- package/lib/components/flyout/sessions/use_eui_flyout.js +0 -88
- package/optimize/es/components/flyout/flyout_child.js +0 -178
- package/optimize/es/components/flyout/flyout_child.styles.js +0 -32
- package/optimize/es/components/flyout/flyout_child_manager.js +0 -100
- package/optimize/es/components/flyout/sessions/flyout_provider.js +0 -90
- package/optimize/es/components/flyout/sessions/flyout_reducer.js +0 -187
- package/optimize/es/components/flyout/sessions/index.js +0 -10
- package/optimize/es/components/flyout/sessions/use_eui_flyout.js +0 -82
- package/optimize/lib/components/flyout/flyout_child.js +0 -186
- package/optimize/lib/components/flyout/flyout_child.styles.js +0 -38
- package/optimize/lib/components/flyout/flyout_child_manager.js +0 -110
- package/optimize/lib/components/flyout/sessions/flyout_provider.js +0 -100
- package/optimize/lib/components/flyout/sessions/flyout_reducer.js +0 -195
- package/optimize/lib/components/flyout/sessions/index.js +0 -25
- package/optimize/lib/components/flyout/sessions/use_eui_flyout.js +0 -88
- package/test-env/components/flyout/flyout_child.js +0 -230
- package/test-env/components/flyout/flyout_child.styles.js +0 -38
- package/test-env/components/flyout/flyout_child_manager.js +0 -119
- package/test-env/components/flyout/sessions/flyout_provider.js +0 -100
- package/test-env/components/flyout/sessions/flyout_reducer.js +0 -195
- package/test-env/components/flyout/sessions/index.js +0 -25
- package/test-env/components/flyout/sessions/use_eui_flyout.js +0 -88
- /package/es/components/flyout/{sessions → manager}/types.js +0 -0
- /package/{optimize/es/components/flyout/sessions → es/components/flyout}/types.js +0 -0
- /package/lib/components/flyout/{sessions → manager}/types.js +0 -0
- /package/{optimize/lib/components/flyout/sessions → lib/components/flyout}/types.js +0 -0
- /package/{test-env/components/flyout/sessions → optimize/lib/components/flyout/manager}/types.js +0 -0
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import { addFlyout as addFlyoutAction, closeFlyout as closeFlyoutAction, setActiveFlyout as setActiveFlyoutAction, setFlyoutWidth as setFlyoutWidthAction, setPushPadding as setPushPaddingAction, goBack as goBackAction, goToFlyout as goToFlyoutAction, addUnmanagedFlyout as addUnmanagedFlyoutAction, closeUnmanagedFlyout as closeUnmanagedFlyoutAction } from './actions';
|
|
10
|
+
import { flyoutManagerReducer, initialState } from './reducer';
|
|
11
|
+
function createStore() {
|
|
12
|
+
var initial = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;
|
|
13
|
+
var currentState = initial;
|
|
14
|
+
var listeners = new Set();
|
|
15
|
+
var getState = function getState() {
|
|
16
|
+
return currentState;
|
|
17
|
+
};
|
|
18
|
+
var subscribe = function subscribe(listener) {
|
|
19
|
+
listeners.add(listener);
|
|
20
|
+
return function () {
|
|
21
|
+
listeners.delete(listener);
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
// The onClick handlers won't execute until after store is fully assigned.
|
|
26
|
+
// eslint-disable-next-line prefer-const -- Forward declaration requires 'let' not 'const'
|
|
27
|
+
var store;
|
|
28
|
+
var computeHistoryItems = function computeHistoryItems() {
|
|
29
|
+
var currentSessionIndex = currentState.sessions.length - 1;
|
|
30
|
+
var previousSessions = currentState.sessions.slice(0, currentSessionIndex);
|
|
31
|
+
return previousSessions.reverse().map(function (_ref) {
|
|
32
|
+
var title = _ref.title,
|
|
33
|
+
mainFlyoutId = _ref.mainFlyoutId;
|
|
34
|
+
return {
|
|
35
|
+
title: title,
|
|
36
|
+
onClick: function onClick() {
|
|
37
|
+
store.dispatch(goToFlyoutAction(mainFlyoutId));
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
});
|
|
41
|
+
};
|
|
42
|
+
var dispatch = function dispatch(action) {
|
|
43
|
+
var nextState = flyoutManagerReducer(currentState, action);
|
|
44
|
+
if (nextState !== currentState) {
|
|
45
|
+
var previousSessions = currentState.sessions;
|
|
46
|
+
currentState = nextState;
|
|
47
|
+
|
|
48
|
+
// Recompute history items eagerly if sessions changed
|
|
49
|
+
// This ensures stable references and avoids stale closures
|
|
50
|
+
if (nextState.sessions !== previousSessions) {
|
|
51
|
+
store.historyItems = computeHistoryItems();
|
|
52
|
+
}
|
|
53
|
+
listeners.forEach(function (l) {
|
|
54
|
+
l();
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
store = {
|
|
59
|
+
getState: getState,
|
|
60
|
+
subscribe: subscribe,
|
|
61
|
+
dispatch: dispatch,
|
|
62
|
+
addFlyout: function addFlyout(flyoutId, title, level, size) {
|
|
63
|
+
return dispatch(addFlyoutAction(flyoutId, title, level, size));
|
|
64
|
+
},
|
|
65
|
+
closeFlyout: function closeFlyout(flyoutId) {
|
|
66
|
+
return dispatch(closeFlyoutAction(flyoutId));
|
|
67
|
+
},
|
|
68
|
+
setActiveFlyout: function setActiveFlyout(flyoutId) {
|
|
69
|
+
return dispatch(setActiveFlyoutAction(flyoutId));
|
|
70
|
+
},
|
|
71
|
+
setFlyoutWidth: function setFlyoutWidth(flyoutId, width) {
|
|
72
|
+
return dispatch(setFlyoutWidthAction(flyoutId, width));
|
|
73
|
+
},
|
|
74
|
+
setPushPadding: function setPushPadding(side, width) {
|
|
75
|
+
return dispatch(setPushPaddingAction(side, width));
|
|
76
|
+
},
|
|
77
|
+
goBack: function goBack() {
|
|
78
|
+
return dispatch(goBackAction());
|
|
79
|
+
},
|
|
80
|
+
goToFlyout: function goToFlyout(flyoutId) {
|
|
81
|
+
return dispatch(goToFlyoutAction(flyoutId));
|
|
82
|
+
},
|
|
83
|
+
addUnmanagedFlyout: function addUnmanagedFlyout(flyoutId) {
|
|
84
|
+
return dispatch(addUnmanagedFlyoutAction(flyoutId));
|
|
85
|
+
},
|
|
86
|
+
closeUnmanagedFlyout: function closeUnmanagedFlyout(flyoutId) {
|
|
87
|
+
return dispatch(closeUnmanagedFlyoutAction(flyoutId));
|
|
88
|
+
},
|
|
89
|
+
historyItems: computeHistoryItems() // Initialize with current state
|
|
90
|
+
};
|
|
91
|
+
return store;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
// Module-level singleton. A necessary trade-off to avoid global namespace pollution or the need for a third-party library.
|
|
95
|
+
var storeInstance = null;
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Returns a singleton store instance shared across all React roots within the same JS context.
|
|
99
|
+
* Uses module-level singleton to ensure deduplication even if modules are loaded twice.
|
|
100
|
+
*/
|
|
101
|
+
export function getFlyoutManagerStore() {
|
|
102
|
+
if (!storeInstance) {
|
|
103
|
+
storeInstance = createStore();
|
|
104
|
+
}
|
|
105
|
+
return storeInstance;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* For testing purposes - allows resetting the store
|
|
110
|
+
*/
|
|
111
|
+
export function _resetFlyoutManagerStore() {
|
|
112
|
+
storeInstance = null;
|
|
113
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import { FLYOUT_SIZES } from '../const';
|
|
10
|
+
import { LEVEL_CHILD } from './const';
|
|
11
|
+
/**
|
|
12
|
+
* Checks if a size is a named size (s, m, l)
|
|
13
|
+
*/
|
|
14
|
+
export function isNamedSize(size) {
|
|
15
|
+
return FLYOUT_SIZES.includes(size);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Validates that a managed flyout only uses named sizes
|
|
20
|
+
*/
|
|
21
|
+
export function validateManagedFlyoutSize(size, flyoutId, level) {
|
|
22
|
+
if (level === LEVEL_CHILD && !isNamedSize(size)) {
|
|
23
|
+
var namedSizes = FLYOUT_SIZES.join(', ');
|
|
24
|
+
return {
|
|
25
|
+
type: 'INVALID_SIZE_TYPE',
|
|
26
|
+
message: "Child flyout ".concat(flyoutId, " must use a named size (").concat(namedSizes, "). Received: ").concat(size),
|
|
27
|
+
flyoutId: flyoutId,
|
|
28
|
+
level: level,
|
|
29
|
+
size: size
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Validates size combinations for parent-child flyouts
|
|
37
|
+
*/
|
|
38
|
+
export function validateSizeCombination(parentSize, childSize) {
|
|
39
|
+
var sizes = [parentSize, childSize];
|
|
40
|
+
|
|
41
|
+
// Parent and child can't both be 'm'
|
|
42
|
+
if (sizes.every(function (s) {
|
|
43
|
+
return s === 'm';
|
|
44
|
+
})) {
|
|
45
|
+
return {
|
|
46
|
+
type: 'INVALID_SIZE_COMBINATION',
|
|
47
|
+
message: 'Parent and child flyouts cannot both be size "m"'
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// Parent and child can't both be 'fill'
|
|
52
|
+
if (sizes.every(function (s) {
|
|
53
|
+
return s === 'fill';
|
|
54
|
+
})) {
|
|
55
|
+
return {
|
|
56
|
+
type: 'INVALID_SIZE_COMBINATION',
|
|
57
|
+
message: 'Parent and child flyouts cannot both be size "fill"'
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
// Flyout can't be 'l' if the other in the pair is not "fill"
|
|
62
|
+
if (sizes.includes('l') && !sizes.includes('fill')) {
|
|
63
|
+
return {
|
|
64
|
+
type: 'INVALID_SIZE_COMBINATION',
|
|
65
|
+
message: 'Flyouts cannot be size "l" unless the other flyout is "fill"'
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Creates a user-friendly error message for validation errors
|
|
73
|
+
*/
|
|
74
|
+
export function createValidationErrorMessage(error) {
|
|
75
|
+
console.error(error);
|
|
76
|
+
var prefix = "EuiFlyout validation error";
|
|
77
|
+
switch (error.type) {
|
|
78
|
+
case 'INVALID_SIZE_TYPE':
|
|
79
|
+
case 'INVALID_SIZE_COMBINATION':
|
|
80
|
+
case 'INVALID_FLYOUT_MENU_TITLE':
|
|
81
|
+
return "".concat(prefix, ": ").concat(error.message);
|
|
82
|
+
default:
|
|
83
|
+
return "".concat(prefix, ": Unknown validation error");
|
|
84
|
+
}
|
|
85
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
4
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
5
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
6
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
7
|
+
* Side Public License, v 1.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
11
|
+
import { keys } from '../../services';
|
|
12
|
+
import { getPosition } from '../resizable_container/helpers';
|
|
13
|
+
/**
|
|
14
|
+
* @internal
|
|
15
|
+
*/
|
|
16
|
+
export var useEuiFlyoutResizable = function useEuiFlyoutResizable(_ref) {
|
|
17
|
+
var enabled = _ref.enabled,
|
|
18
|
+
_ref$minWidth = _ref.minWidth,
|
|
19
|
+
minWidth = _ref$minWidth === void 0 ? 0 : _ref$minWidth,
|
|
20
|
+
maxWidth = _ref.maxWidth,
|
|
21
|
+
onResize = _ref.onResize,
|
|
22
|
+
side = _ref.side,
|
|
23
|
+
_size = _ref.size;
|
|
24
|
+
var getFlyoutMinMaxWidth = useCallback(function (width) {
|
|
25
|
+
return Math.min(Math.max(width, minWidth), maxWidth || Infinity, window.innerWidth - 20 // Leave some offset
|
|
26
|
+
);
|
|
27
|
+
}, [minWidth, maxWidth]);
|
|
28
|
+
var _useState = useState(0),
|
|
29
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
30
|
+
flyoutWidth = _useState2[0],
|
|
31
|
+
setFlyoutWidth = _useState2[1];
|
|
32
|
+
var _useState3 = useState(false),
|
|
33
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
34
|
+
callOnResize = _useState4[0],
|
|
35
|
+
setCallOnResize = _useState4[1];
|
|
36
|
+
|
|
37
|
+
// Must use state for the flyout ref in order for the useEffect to be correctly called after render
|
|
38
|
+
var _useState5 = useState(null),
|
|
39
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
40
|
+
flyoutRef = _useState6[0],
|
|
41
|
+
setFlyoutRef = _useState6[1];
|
|
42
|
+
useEffect(function () {
|
|
43
|
+
if (!enabled) return; // Don't measure when resizing is disabled
|
|
44
|
+
if (!flyoutWidth && flyoutRef) {
|
|
45
|
+
setCallOnResize(false); // Don't call `onResize` for non-user width changes
|
|
46
|
+
setFlyoutWidth(getFlyoutMinMaxWidth(flyoutRef.offsetWidth));
|
|
47
|
+
}
|
|
48
|
+
}, [flyoutWidth, flyoutRef, getFlyoutMinMaxWidth, enabled]);
|
|
49
|
+
|
|
50
|
+
// Update flyout width when consumers pass in a new `size`
|
|
51
|
+
useEffect(function () {
|
|
52
|
+
if (!enabled) return; // Don't update width when resizing is disabled
|
|
53
|
+
setCallOnResize(false);
|
|
54
|
+
// For string `size`s, resetting flyoutWidth to 0 will trigger the above useEffect's recalculation
|
|
55
|
+
setFlyoutWidth(typeof _size === 'number' ? getFlyoutMinMaxWidth(_size) : 0);
|
|
56
|
+
}, [_size, getFlyoutMinMaxWidth, enabled]);
|
|
57
|
+
|
|
58
|
+
// Initial numbers to calculate from, on resize drag start
|
|
59
|
+
var initialWidth = useRef(0);
|
|
60
|
+
var initialMouseX = useRef(0);
|
|
61
|
+
|
|
62
|
+
// Account for flyout side and logical property direction
|
|
63
|
+
var direction = useMemo(function () {
|
|
64
|
+
var modifier = side === 'right' ? -1 : 1;
|
|
65
|
+
if (flyoutRef) {
|
|
66
|
+
var languageDirection = window.getComputedStyle(flyoutRef).direction;
|
|
67
|
+
if (languageDirection === 'rtl') modifier *= -1;
|
|
68
|
+
}
|
|
69
|
+
return modifier;
|
|
70
|
+
}, [side, flyoutRef]);
|
|
71
|
+
var onMouseMove = useCallback(function (e) {
|
|
72
|
+
if (!enabled) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
var mouseOffset = getPosition(e, true) - initialMouseX.current;
|
|
76
|
+
var changedFlyoutWidth = initialWidth.current + mouseOffset * direction;
|
|
77
|
+
setFlyoutWidth(getFlyoutMinMaxWidth(changedFlyoutWidth));
|
|
78
|
+
}, [getFlyoutMinMaxWidth, direction, enabled]);
|
|
79
|
+
var onMouseUp = useCallback(function () {
|
|
80
|
+
setCallOnResize(true);
|
|
81
|
+
if (!enabled) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
initialMouseX.current = 0;
|
|
85
|
+
window.removeEventListener('mousemove', onMouseMove);
|
|
86
|
+
window.removeEventListener('mouseup', onMouseUp);
|
|
87
|
+
window.removeEventListener('touchmove', onMouseMove);
|
|
88
|
+
window.removeEventListener('touchend', onMouseUp);
|
|
89
|
+
}, [onMouseMove, enabled]);
|
|
90
|
+
var onMouseDown = useCallback(function (e) {
|
|
91
|
+
var _flyoutRef$offsetWidt;
|
|
92
|
+
setCallOnResize(false);
|
|
93
|
+
if (!enabled) {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
initialMouseX.current = getPosition(e, true);
|
|
97
|
+
initialWidth.current = (_flyoutRef$offsetWidt = flyoutRef === null || flyoutRef === void 0 ? void 0 : flyoutRef.offsetWidth) !== null && _flyoutRef$offsetWidt !== void 0 ? _flyoutRef$offsetWidt : 0;
|
|
98
|
+
|
|
99
|
+
// Window event listeners instead of React events are used
|
|
100
|
+
// in case the user's mouse leaves the component
|
|
101
|
+
window.addEventListener('mousemove', onMouseMove);
|
|
102
|
+
window.addEventListener('mouseup', onMouseUp);
|
|
103
|
+
window.addEventListener('touchmove', onMouseMove);
|
|
104
|
+
window.addEventListener('touchend', onMouseUp);
|
|
105
|
+
}, [flyoutRef, onMouseMove, onMouseUp, enabled]);
|
|
106
|
+
var onKeyDown = useCallback(function (e) {
|
|
107
|
+
setCallOnResize(true);
|
|
108
|
+
if (!enabled) {
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
var KEYBOARD_OFFSET = 10;
|
|
112
|
+
switch (e.key) {
|
|
113
|
+
case keys.ARROW_RIGHT:
|
|
114
|
+
e.preventDefault(); // Safari+VO will screen reader navigate off the button otherwise
|
|
115
|
+
setFlyoutWidth(function (flyoutWidth) {
|
|
116
|
+
return getFlyoutMinMaxWidth(flyoutWidth + KEYBOARD_OFFSET * direction);
|
|
117
|
+
});
|
|
118
|
+
break;
|
|
119
|
+
case keys.ARROW_LEFT:
|
|
120
|
+
e.preventDefault(); // Safari+VO will screen reader navigate off the button otherwise
|
|
121
|
+
setFlyoutWidth(function (flyoutWidth) {
|
|
122
|
+
return getFlyoutMinMaxWidth(flyoutWidth - KEYBOARD_OFFSET * direction);
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
}, [getFlyoutMinMaxWidth, direction, enabled]);
|
|
126
|
+
|
|
127
|
+
// To reduce unnecessary calls, only fire onResize callback:
|
|
128
|
+
// 1. After initial mount / on user width change events only
|
|
129
|
+
// 2. If not currently mouse dragging
|
|
130
|
+
useEffect(function () {
|
|
131
|
+
if (callOnResize && enabled) {
|
|
132
|
+
onResize === null || onResize === void 0 || onResize(flyoutWidth);
|
|
133
|
+
}
|
|
134
|
+
}, [onResize, callOnResize, flyoutWidth, enabled]);
|
|
135
|
+
var size = useMemo(function () {
|
|
136
|
+
return enabled ? flyoutWidth || _size : _size;
|
|
137
|
+
}, [enabled, flyoutWidth, _size]);
|
|
138
|
+
return {
|
|
139
|
+
onKeyDown: onKeyDown,
|
|
140
|
+
onMouseDown: onMouseDown,
|
|
141
|
+
setFlyoutRef: setFlyoutRef,
|
|
142
|
+
size: size
|
|
143
|
+
};
|
|
144
|
+
};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
4
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
5
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
6
|
+
* Side Public License, v 1.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import { useEuiTheme } from '../../services';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
var calculateZIndex = function calculateZIndex(baseLevel, isChildFlyout) {
|
|
16
|
+
var level = Number(baseLevel);
|
|
17
|
+
return {
|
|
18
|
+
// Child flyouts slide in from below and need to have a lower z-index
|
|
19
|
+
flyoutZIndex: isChildFlyout ? level - 1 : level,
|
|
20
|
+
maskZIndex: level - 2
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
27
|
+
export var useEuiFlyoutZIndex = function useEuiFlyoutZIndex(_ref) {
|
|
28
|
+
var maskProps = _ref.maskProps,
|
|
29
|
+
isPushed = _ref.isPushed,
|
|
30
|
+
managedFlyoutIndex = _ref.managedFlyoutIndex,
|
|
31
|
+
isChildFlyout = _ref.isChildFlyout;
|
|
32
|
+
var _useEuiTheme = useEuiTheme(),
|
|
33
|
+
euiTheme = _useEuiTheme.euiTheme;
|
|
34
|
+
var baseLevel = Number(euiTheme.levels.flyout);
|
|
35
|
+
|
|
36
|
+
// The default headerZindexLocation for EuiFlyout is "below"
|
|
37
|
+
// which is different from what EuiOverlayMask fallbacks to - see
|
|
38
|
+
// _flyout_overlay.tsx.
|
|
39
|
+
// We set z-index to mask level only when explicitly overridden
|
|
40
|
+
// via the maskProps prop
|
|
41
|
+
if (!isPushed && (maskProps === null || maskProps === void 0 ? void 0 : maskProps.headerZindexLocation) === 'above') {
|
|
42
|
+
baseLevel = Number(euiTheme.levels.mask);
|
|
43
|
+
}
|
|
44
|
+
baseLevel += managedFlyoutIndex;
|
|
45
|
+
return calculateZIndex(baseLevel, isChildFlyout);
|
|
46
|
+
};
|
|
@@ -10,7 +10,7 @@ var _excluded = ["className", "children", "headerZindexLocation", "maskRef"];
|
|
|
10
10
|
* Side Public License, v 1.
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
|
-
import React, { useEffect, useState } from 'react';
|
|
13
|
+
import React, { useCallback, useEffect, useRef, useState } from 'react';
|
|
14
14
|
import { cx } from '@emotion/css';
|
|
15
15
|
import { Global } from '@emotion/react';
|
|
16
16
|
import { keysOf } from '../common';
|
|
@@ -26,13 +26,17 @@ export var EuiOverlayMask = function EuiOverlayMask(_ref) {
|
|
|
26
26
|
headerZindexLocation = _ref$headerZindexLoca === void 0 ? 'above' : _ref$headerZindexLoca,
|
|
27
27
|
maskRef = _ref.maskRef,
|
|
28
28
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
29
|
+
var hasRendered = useRef(false);
|
|
29
30
|
var _useState = useState(null),
|
|
30
31
|
_useState2 = _slicedToArray(_useState, 2),
|
|
31
32
|
overlayMaskNode = _useState2[0],
|
|
32
33
|
setOverlayMaskNode = _useState2[1];
|
|
33
34
|
var combinedMaskRef = useCombinedRefs([setOverlayMaskNode, maskRef]);
|
|
35
|
+
var handleAnimationEnd = useCallback(function () {
|
|
36
|
+
hasRendered.current = true;
|
|
37
|
+
}, []);
|
|
34
38
|
var styles = useEuiMemoizedStyles(euiOverlayMaskStyles);
|
|
35
|
-
var cssStyles = cx([styles.euiOverlayMask, styles["".concat(headerZindexLocation, "Header")]]);
|
|
39
|
+
var cssStyles = cx([styles.euiOverlayMask, styles["".concat(headerZindexLocation, "Header")], hasRendered.current && styles.noAnimation]);
|
|
36
40
|
useEffect(function () {
|
|
37
41
|
if (!overlayMaskNode) return;
|
|
38
42
|
keysOf(rest).forEach(function (key) {
|
|
@@ -43,7 +47,13 @@ export var EuiOverlayMask = function EuiOverlayMask(_ref) {
|
|
|
43
47
|
overlayMaskNode.setAttribute(key, rest[key]);
|
|
44
48
|
}
|
|
45
49
|
});
|
|
46
|
-
|
|
50
|
+
overlayMaskNode.addEventListener('animationend', handleAnimationEnd, {
|
|
51
|
+
once: true
|
|
52
|
+
});
|
|
53
|
+
return function () {
|
|
54
|
+
overlayMaskNode.removeEventListener('animationend', handleAnimationEnd);
|
|
55
|
+
};
|
|
56
|
+
}, [overlayMaskNode, handleAnimationEnd]); // eslint-disable-line react-hooks/exhaustive-deps
|
|
47
57
|
|
|
48
58
|
// Note: Use `classList.add/remove` instead of setting the entire `className`
|
|
49
59
|
// so as not to override any existing classes set by `EuiPortal`
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
|
|
1
2
|
/*
|
|
2
3
|
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
3
4
|
* or more contributor license agreements. Licensed under the Elastic License
|
|
@@ -12,8 +13,16 @@ export var euiOverlayMaskStyles = function euiOverlayMaskStyles(_ref) {
|
|
|
12
13
|
var euiTheme = _ref.euiTheme,
|
|
13
14
|
highContrastMode = _ref.highContrastMode;
|
|
14
15
|
return {
|
|
15
|
-
euiOverlayMask: /*#__PURE__*/css("position:fixed;", logicalCSS('top', 0), " ", logicalCSS('left', 0), " ", logicalCSS('right', 0), " ", logicalCSS('bottom', 0), " display:flex;align-items:center;justify-content:center;animation:", euiAnimFadeIn, " ", euiTheme.animation.fast, " ease-in;background:", highContrastMode ? euiTheme.components.overlayMaskBackgroundHighContrast : euiTheme.components.overlayMaskBackground, ";;label:euiOverlayMask;"),
|
|
16
|
+
euiOverlayMask: /*#__PURE__*/css("position:fixed;", logicalCSS('top', 0), " ", logicalCSS('left', 0), " ", logicalCSS('right', 0), " ", logicalCSS('bottom', 0), " display:flex;align-items:center;justify-content:center;animation:", euiAnimFadeIn, " ", euiTheme.animation.fast, " ease-in forwards;animation-iteration-count:1;background:", highContrastMode ? euiTheme.components.overlayMaskBackgroundHighContrast : euiTheme.components.overlayMaskBackground, ";;label:euiOverlayMask;"),
|
|
16
17
|
aboveHeader: /*#__PURE__*/css("z-index:", euiTheme.levels.mask, ";;label:aboveHeader;"),
|
|
17
|
-
belowHeader: /*#__PURE__*/css("z-index:", euiTheme.levels.maskBelowHeader, ";", logicalCSS('top', 'var(--euiFixedHeadersOffset, 0)'), ";;label:belowHeader;")
|
|
18
|
+
belowHeader: /*#__PURE__*/css("z-index:", euiTheme.levels.maskBelowHeader, ";", logicalCSS('top', 'var(--euiFixedHeadersOffset, 0)'), ";;label:belowHeader;"),
|
|
19
|
+
noAnimation: /*#__PURE__*/css(process.env.NODE_ENV === "production" ? {
|
|
20
|
+
name: "lqr4xc-noAnimation",
|
|
21
|
+
styles: "animation:none;label:noAnimation;"
|
|
22
|
+
} : {
|
|
23
|
+
name: "lqr4xc-noAnimation",
|
|
24
|
+
styles: "animation:none;label:noAnimation;",
|
|
25
|
+
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
26
|
+
})
|
|
18
27
|
};
|
|
19
28
|
};
|
|
@@ -17,6 +17,7 @@ import { EuiCacheProvider } from './cache';
|
|
|
17
17
|
import { EuiSystemDefaultsProvider } from './system_defaults';
|
|
18
18
|
import { EuiProviderNestedCheck, useIsNestedEuiProvider } from './nested';
|
|
19
19
|
import { EuiComponentDefaultsProvider } from './component_defaults';
|
|
20
|
+
import { EuiFlyoutManager } from '../flyout/manager';
|
|
20
21
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
21
22
|
var isEmotionCacheObject = function isEmotionCacheObject(obj) {
|
|
22
23
|
return obj.hasOwnProperty('key');
|
|
@@ -79,5 +80,5 @@ export var EuiProvider = function EuiProvider(_ref) {
|
|
|
79
80
|
children: Utilities && ___EmotionJSX(Utilities, null)
|
|
80
81
|
})), ___EmotionJSX(EuiComponentDefaultsProvider, {
|
|
81
82
|
componentDefaults: componentDefaults
|
|
82
|
-
}, children)))));
|
|
83
|
+
}, ___EmotionJSX(EuiFlyoutManager, null, children))))));
|
|
83
84
|
};
|
|
@@ -92,6 +92,7 @@ var EuiCollapsibleNav = exports.EuiCollapsibleNav = function EuiCollapsibleNav(_
|
|
|
92
92
|
});
|
|
93
93
|
var flyout = (0, _react2.jsx)(_flyout.EuiFlyout, (0, _extends2.default)({
|
|
94
94
|
id: flyoutID,
|
|
95
|
+
session: "never",
|
|
95
96
|
css: cssStyles,
|
|
96
97
|
className: classes
|
|
97
98
|
// Flyout props we set different defaults for
|
|
@@ -157,6 +157,7 @@ var _EuiCollapsibleNavBeta = function _EuiCollapsibleNavBeta(_ref) {
|
|
|
157
157
|
}, rest, {
|
|
158
158
|
// EuiCollapsibleNav is significantly less permissive than EuiFlyout
|
|
159
159
|
id: flyoutID,
|
|
160
|
+
session: "never",
|
|
160
161
|
css: cssStyles,
|
|
161
162
|
className: classes,
|
|
162
163
|
size: width,
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.EuiFlyoutOverlay = void 0;
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
var _css = require("@emotion/css");
|
|
12
|
+
var _overlay_mask = require("../overlay_mask");
|
|
13
|
+
var _portal = require("../portal");
|
|
14
|
+
var _react2 = require("@emotion/react");
|
|
15
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
16
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
17
|
+
/*
|
|
18
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
19
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
20
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
21
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
22
|
+
* Side Public License, v 1.
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
var getEuiFlyoutOverlayStyles = function getEuiFlyoutOverlayStyles(zIndex) {
|
|
26
|
+
/*
|
|
27
|
+
This needs to have !important to override the default EuiOverlayMask
|
|
28
|
+
z-index based on the headerZindexLocation prop. Using the style attribute
|
|
29
|
+
doesn't work since EuiOverlayMask requires a string style prop that
|
|
30
|
+
causes React errors in the test environment.
|
|
31
|
+
*/
|
|
32
|
+
return /*#__PURE__*/(0, _css.css)("z-index:", zIndex, "!important;;label:getEuiFlyoutOverlayStyles;");
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Light wrapper for conditionally rendering portals or overlay masks:
|
|
37
|
+
* - If ownFocus is set, wrap with an overlay and allow the user to click it to close it.
|
|
38
|
+
* - Otherwise still wrap within an EuiPortal so it appends to the bottom of the window.
|
|
39
|
+
* Push flyouts have no overlay OR portal behavior.
|
|
40
|
+
*
|
|
41
|
+
* @internal
|
|
42
|
+
*/
|
|
43
|
+
var EuiFlyoutOverlay = exports.EuiFlyoutOverlay = function EuiFlyoutOverlay(_ref) {
|
|
44
|
+
var children = _ref.children,
|
|
45
|
+
isPushed = _ref.isPushed,
|
|
46
|
+
maskProps = _ref.maskProps,
|
|
47
|
+
hasOverlayMask = _ref.hasOverlayMask,
|
|
48
|
+
maskZIndex = _ref.maskZIndex;
|
|
49
|
+
var styles = (0, _react.useMemo)(function () {
|
|
50
|
+
return getEuiFlyoutOverlayStyles(maskZIndex);
|
|
51
|
+
}, [maskZIndex]);
|
|
52
|
+
var content = children;
|
|
53
|
+
if (!isPushed || hasOverlayMask) {
|
|
54
|
+
content = (0, _react2.jsx)(_portal.EuiPortal, null, content);
|
|
55
|
+
}
|
|
56
|
+
var classes = (0, _css.cx)(maskProps === null || maskProps === void 0 ? void 0 : maskProps.className, styles);
|
|
57
|
+
return (0, _react2.jsx)(_react.default.Fragment, null, hasOverlayMask && (0, _react2.jsx)(_overlay_mask.EuiOverlayMask, (0, _extends2.default)({
|
|
58
|
+
headerZindexLocation: "below"
|
|
59
|
+
}, maskProps, {
|
|
60
|
+
className: classes
|
|
61
|
+
})), content);
|
|
62
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.EuiFlyoutResizeButton = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
var _services = require("../../services");
|
|
12
|
+
var _resizable_container = require("../resizable_container");
|
|
13
|
+
var _flyout_resize_button = require("./_flyout_resize_button.styles");
|
|
14
|
+
var _react2 = require("@emotion/react");
|
|
15
|
+
var _excluded = ["type", "side", "ownFocus", "isPushed"];
|
|
16
|
+
/*
|
|
17
|
+
* Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
|
|
18
|
+
* or more contributor license agreements. Licensed under the Elastic License
|
|
19
|
+
* 2.0 and the Server Side Public License, v 1; you may not use this file except
|
|
20
|
+
* in compliance with, at your election, the Elastic License 2.0 or the Server
|
|
21
|
+
* Side Public License, v 1.
|
|
22
|
+
*/
|
|
23
|
+
var EuiFlyoutResizeButton = exports.EuiFlyoutResizeButton = function EuiFlyoutResizeButton(_ref) {
|
|
24
|
+
var type = _ref.type,
|
|
25
|
+
side = _ref.side,
|
|
26
|
+
ownFocus = _ref.ownFocus,
|
|
27
|
+
isPushed = _ref.isPushed,
|
|
28
|
+
resizableButtonProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
29
|
+
var hasOverlay = ownFocus && type === 'overlay';
|
|
30
|
+
var styles = (0, _services.useEuiMemoizedStyles)(_flyout_resize_button.euiFlyoutResizeButtonStyles);
|
|
31
|
+
var cssStyles = [styles.root, styles[type][side], !hasOverlay && styles.noOverlay.root, !hasOverlay && styles.noOverlay[side]];
|
|
32
|
+
return (0, _react2.jsx)(_resizable_container.EuiResizableButton, (0, _extends2.default)({
|
|
33
|
+
isHorizontal: true,
|
|
34
|
+
indicator: "border",
|
|
35
|
+
css: cssStyles
|
|
36
|
+
}, resizableButtonProps));
|
|
37
|
+
};
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.euiFlyoutResizeButtonStyles = void 0;
|
|
7
7
|
var _react = require("@emotion/react");
|
|
8
8
|
var _global_styling = require("../../global_styling");
|
|
9
9
|
function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; } /*
|
|
@@ -30,25 +30,25 @@ var _ref2 = process.env.NODE_ENV === "production" ? {
|
|
|
30
30
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
31
31
|
};
|
|
32
32
|
var _ref3 = process.env.NODE_ENV === "production" ? {
|
|
33
|
-
name: "
|
|
34
|
-
styles: "margin-inline:0;label:
|
|
33
|
+
name: "10l1ho9-root",
|
|
34
|
+
styles: "margin-inline:0;label:root;"
|
|
35
35
|
} : {
|
|
36
|
-
name: "
|
|
37
|
-
styles: "margin-inline:0;label:
|
|
36
|
+
name: "10l1ho9-root",
|
|
37
|
+
styles: "margin-inline:0;label:root;",
|
|
38
38
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
39
39
|
};
|
|
40
40
|
var _ref4 = process.env.NODE_ENV === "production" ? {
|
|
41
|
-
name: "
|
|
42
|
-
styles: "position:absolute;label:
|
|
41
|
+
name: "1yicr0l-root",
|
|
42
|
+
styles: "position:absolute;label:root;"
|
|
43
43
|
} : {
|
|
44
|
-
name: "
|
|
45
|
-
styles: "position:absolute;label:
|
|
44
|
+
name: "1yicr0l-root",
|
|
45
|
+
styles: "position:absolute;label:root;",
|
|
46
46
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
47
47
|
};
|
|
48
|
-
var
|
|
48
|
+
var euiFlyoutResizeButtonStyles = exports.euiFlyoutResizeButtonStyles = function euiFlyoutResizeButtonStyles(_ref5) {
|
|
49
49
|
var euiTheme = _ref5.euiTheme;
|
|
50
50
|
return {
|
|
51
|
-
|
|
51
|
+
root: _ref4,
|
|
52
52
|
overlay: {
|
|
53
53
|
left: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('right', 0), ";;label:left;"),
|
|
54
54
|
right: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('left', 0), ";;label:right;")
|
|
@@ -58,7 +58,7 @@ var euiFlyoutResizableButtonStyles = exports.euiFlyoutResizableButtonStyles = fu
|
|
|
58
58
|
right: /*#__PURE__*/(0, _react.css)((0, _global_styling.logicalCSS)('left', "-".concat(euiTheme.border.width.thick)), ";;label:right;")
|
|
59
59
|
},
|
|
60
60
|
noOverlay: {
|
|
61
|
-
|
|
61
|
+
root: _ref3,
|
|
62
62
|
left: _ref2,
|
|
63
63
|
right: _ref
|
|
64
64
|
}
|