@elliemae/ds-global-header 3.0.0-next.9 → 3.0.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/dist/cjs/DSGlobalHeader.js +61 -0
- package/dist/cjs/DSGlobalHeader.js.map +7 -0
- package/dist/cjs/DSGlobalHeaderContext.js +30 -0
- package/dist/cjs/DSGlobalHeaderContext.js.map +7 -0
- package/dist/cjs/config/useGlobalHeader.js +15 -23
- package/dist/cjs/config/useGlobalHeader.js.map +2 -2
- package/dist/cjs/config/useValidateProps.js +9 -29
- package/dist/cjs/config/useValidateProps.js.map +2 -2
- package/dist/cjs/config/validateHelpers.js +9 -16
- package/dist/cjs/config/validateHelpers.js.map +2 -2
- package/dist/cjs/exported-related/DSGlobalHeaderDatatestid.js +58 -0
- package/dist/cjs/exported-related/DSGlobalHeaderDatatestid.js.map +7 -0
- package/dist/cjs/exported-related/index.js +23 -0
- package/dist/cjs/exported-related/index.js.map +7 -0
- package/dist/cjs/exported-related/theming.js +60 -0
- package/dist/cjs/exported-related/theming.js.map +7 -0
- package/dist/cjs/index.js +14 -19
- package/dist/cjs/index.js.map +3 -3
- package/dist/cjs/parts/Breadcrumb/GlobalHeaderBreadcrumb.js +96 -0
- package/dist/cjs/parts/Breadcrumb/GlobalHeaderBreadcrumb.js.map +7 -0
- package/dist/cjs/{components → parts}/Breadcrumb/PureBreadcrumb.js +39 -26
- package/dist/cjs/parts/Breadcrumb/PureBreadcrumb.js.map +7 -0
- package/dist/cjs/parts/Breadcrumb/styles.js +101 -0
- package/dist/cjs/parts/Breadcrumb/styles.js.map +7 -0
- package/dist/cjs/parts/Breadcrumb/useGlobalHeaderBreadcrumb.js +65 -0
- package/dist/cjs/parts/Breadcrumb/useGlobalHeaderBreadcrumb.js.map +7 -0
- package/dist/cjs/parts/GlobalHeaderContainer.js +56 -0
- package/dist/cjs/parts/GlobalHeaderContainer.js.map +7 -0
- package/dist/cjs/parts/Logo/GlobalHeaderLogo.js +43 -0
- package/dist/cjs/parts/Logo/GlobalHeaderLogo.js.map +7 -0
- package/dist/cjs/parts/Logo/styles.js +31 -0
- package/dist/cjs/parts/Logo/styles.js.map +7 -0
- package/dist/cjs/parts/Toolbar/GlobalHeaderToolbar.js +160 -0
- package/dist/cjs/parts/Toolbar/GlobalHeaderToolbar.js.map +7 -0
- package/dist/cjs/{outOfTheBox → parts/Toolbar/outOfTheBox}/AppPicker/AppPicker.js +36 -37
- package/dist/cjs/parts/Toolbar/outOfTheBox/AppPicker/AppPicker.js.map +7 -0
- package/dist/cjs/{outOfTheBox → parts/Toolbar/outOfTheBox}/PopupMenu/PopupMenu.js +54 -38
- package/dist/cjs/parts/Toolbar/outOfTheBox/PopupMenu/PopupMenu.js.map +7 -0
- package/dist/cjs/parts/Toolbar/outOfTheBox/PopupMenu/menuContent/PopupMenuContent.js +123 -0
- package/dist/cjs/parts/Toolbar/outOfTheBox/PopupMenu/menuContent/PopupMenuContent.js.map +7 -0
- package/dist/cjs/parts/Toolbar/outOfTheBox/PopupMenu/menuContent/styles.js +66 -0
- package/dist/cjs/parts/Toolbar/outOfTheBox/PopupMenu/menuContent/styles.js.map +7 -0
- package/dist/cjs/parts/Toolbar/outOfTheBox/PopupMenu/menuContent/usePopupMenuContent.js +74 -0
- package/dist/cjs/parts/Toolbar/outOfTheBox/PopupMenu/menuContent/usePopupMenuContent.js.map +7 -0
- package/dist/cjs/{outOfTheBox → parts/Toolbar/outOfTheBox}/SearchToggle/SearchToggle.js +54 -41
- package/dist/cjs/parts/Toolbar/outOfTheBox/SearchToggle/SearchToggle.js.map +7 -0
- package/dist/cjs/{outOfTheBox → parts/Toolbar/outOfTheBox}/SearchToggle/styles.js +16 -20
- package/dist/cjs/parts/Toolbar/outOfTheBox/SearchToggle/styles.js.map +7 -0
- package/dist/cjs/parts/Toolbar/outOfTheBox/index.js +24 -0
- package/dist/cjs/parts/Toolbar/outOfTheBox/index.js.map +7 -0
- package/dist/cjs/parts/Toolbar/styles.js +40 -0
- package/dist/cjs/parts/Toolbar/styles.js.map +7 -0
- package/dist/cjs/parts/Toolbar/useGlobalHeaderToolbar.js +65 -0
- package/dist/cjs/parts/Toolbar/useGlobalHeaderToolbar.js.map +7 -0
- package/dist/cjs/parts/styles.js +68 -0
- package/dist/cjs/parts/styles.js.map +7 -0
- package/dist/cjs/react-desc-prop-types.js +76 -0
- package/dist/cjs/react-desc-prop-types.js.map +7 -0
- package/dist/cjs/sharedTypes.js +20 -0
- package/dist/cjs/sharedTypes.js.map +7 -0
- package/dist/esm/DSGlobalHeader.js +39 -0
- package/dist/esm/DSGlobalHeader.js.map +7 -0
- package/dist/esm/DSGlobalHeaderContext.js +8 -0
- package/dist/esm/DSGlobalHeaderContext.js.map +7 -0
- package/dist/esm/config/useGlobalHeader.js +6 -7
- package/dist/esm/config/useGlobalHeader.js.map +2 -2
- package/dist/esm/config/useValidateProps.js +0 -13
- package/dist/esm/config/useValidateProps.js.map +2 -2
- package/dist/esm/config/validateHelpers.js.map +2 -2
- package/dist/esm/exported-related/DSGlobalHeaderDatatestid.js +36 -0
- package/dist/esm/exported-related/DSGlobalHeaderDatatestid.js.map +7 -0
- package/dist/esm/exported-related/index.js +4 -0
- package/dist/esm/exported-related/index.js.map +7 -0
- package/dist/esm/exported-related/theming.js +38 -0
- package/dist/esm/exported-related/theming.js.map +7 -0
- package/dist/esm/index.js +3 -2
- package/dist/esm/index.js.map +3 -3
- package/dist/esm/parts/Breadcrumb/GlobalHeaderBreadcrumb.js +76 -0
- package/dist/esm/parts/Breadcrumb/GlobalHeaderBreadcrumb.js.map +7 -0
- package/dist/esm/{components → parts}/Breadcrumb/PureBreadcrumb.js +31 -11
- package/dist/esm/parts/Breadcrumb/PureBreadcrumb.js.map +7 -0
- package/dist/esm/parts/Breadcrumb/styles.js +79 -0
- package/dist/esm/parts/Breadcrumb/styles.js.map +7 -0
- package/dist/esm/parts/Breadcrumb/useGlobalHeaderBreadcrumb.js +43 -0
- package/dist/esm/parts/Breadcrumb/useGlobalHeaderBreadcrumb.js.map +7 -0
- package/dist/esm/{config/useGetPropsWithDefaults.js → parts/GlobalHeaderContainer.js} +17 -8
- package/dist/esm/parts/GlobalHeaderContainer.js.map +7 -0
- package/dist/esm/parts/Logo/GlobalHeaderLogo.js +21 -0
- package/dist/esm/parts/Logo/GlobalHeaderLogo.js.map +7 -0
- package/dist/esm/parts/Logo/styles.js +9 -0
- package/dist/esm/parts/Logo/styles.js.map +7 -0
- package/dist/esm/parts/Toolbar/GlobalHeaderToolbar.js +140 -0
- package/dist/esm/parts/Toolbar/GlobalHeaderToolbar.js.map +7 -0
- package/dist/esm/{outOfTheBox → parts/Toolbar/outOfTheBox}/AppPicker/AppPicker.js +29 -23
- package/dist/esm/parts/Toolbar/outOfTheBox/AppPicker/AppPicker.js.map +7 -0
- package/dist/esm/{outOfTheBox → parts/Toolbar/outOfTheBox}/PopupMenu/PopupMenu.js +46 -23
- package/dist/esm/parts/Toolbar/outOfTheBox/PopupMenu/PopupMenu.js.map +7 -0
- package/dist/esm/parts/Toolbar/outOfTheBox/PopupMenu/menuContent/PopupMenuContent.js +103 -0
- package/dist/esm/parts/Toolbar/outOfTheBox/PopupMenu/menuContent/PopupMenuContent.js.map +7 -0
- package/dist/esm/parts/Toolbar/outOfTheBox/PopupMenu/menuContent/styles.js +44 -0
- package/dist/esm/parts/Toolbar/outOfTheBox/PopupMenu/menuContent/styles.js.map +7 -0
- package/dist/esm/parts/Toolbar/outOfTheBox/PopupMenu/menuContent/usePopupMenuContent.js +52 -0
- package/dist/esm/parts/Toolbar/outOfTheBox/PopupMenu/menuContent/usePopupMenuContent.js.map +7 -0
- package/dist/esm/{outOfTheBox → parts/Toolbar/outOfTheBox}/SearchToggle/SearchToggle.js +45 -25
- package/dist/esm/parts/Toolbar/outOfTheBox/SearchToggle/SearchToggle.js.map +7 -0
- package/dist/esm/{outOfTheBox → parts/Toolbar/outOfTheBox}/SearchToggle/styles.js +7 -4
- package/dist/esm/parts/Toolbar/outOfTheBox/SearchToggle/styles.js.map +7 -0
- package/dist/esm/{outOfTheBox → parts/Toolbar/outOfTheBox}/index.js +0 -0
- package/dist/esm/{outOfTheBox → parts/Toolbar/outOfTheBox}/index.js.map +1 -1
- package/dist/esm/parts/Toolbar/styles.js +18 -0
- package/dist/esm/parts/Toolbar/styles.js.map +7 -0
- package/dist/esm/parts/Toolbar/useGlobalHeaderToolbar.js +43 -0
- package/dist/esm/parts/Toolbar/useGlobalHeaderToolbar.js.map +7 -0
- package/dist/esm/parts/styles.js +46 -0
- package/dist/esm/parts/styles.js.map +7 -0
- package/dist/esm/react-desc-prop-types.js +56 -0
- package/dist/esm/react-desc-prop-types.js.map +7 -0
- package/dist/esm/sharedTypes.js +2 -0
- package/dist/esm/{GlobalHeaderTypes.js.map → sharedTypes.js.map} +0 -0
- package/package.json +17 -17
- package/dist/cjs/GlobalHeader.js +0 -57
- package/dist/cjs/GlobalHeader.js.map +0 -7
- package/dist/cjs/GlobalHeaderContainer.js +0 -41
- package/dist/cjs/GlobalHeaderContainer.js.map +0 -7
- package/dist/cjs/GlobalHeaderContext.js +0 -46
- package/dist/cjs/GlobalHeaderContext.js.map +0 -7
- package/dist/cjs/GlobalHeaderTypes.js +0 -27
- package/dist/cjs/GlobalHeaderTypes.js.map +0 -7
- package/dist/cjs/components/Breadcrumb/GlobalHeaderBreadcrumb.js +0 -110
- package/dist/cjs/components/Breadcrumb/GlobalHeaderBreadcrumb.js.map +0 -7
- package/dist/cjs/components/Breadcrumb/PureBreadcrumb.js.map +0 -7
- package/dist/cjs/components/Breadcrumb/styles.js +0 -83
- package/dist/cjs/components/Breadcrumb/styles.js.map +0 -7
- package/dist/cjs/components/Title/GlobalHeaderTitle.js +0 -48
- package/dist/cjs/components/Title/GlobalHeaderTitle.js.map +0 -7
- package/dist/cjs/components/Toolbar/GlobalHeaderToolbar.js +0 -49
- package/dist/cjs/components/Toolbar/GlobalHeaderToolbar.js.map +0 -7
- package/dist/cjs/components/Toolbar/ToolbarItems.js +0 -121
- package/dist/cjs/components/Toolbar/ToolbarItems.js.map +0 -7
- package/dist/cjs/components/Toolbar/styles.js +0 -61
- package/dist/cjs/components/Toolbar/styles.js.map +0 -7
- package/dist/cjs/config/useGetPropsWithDefaults.js +0 -54
- package/dist/cjs/config/useGetPropsWithDefaults.js.map +0 -7
- package/dist/cjs/defaultProps.js +0 -41
- package/dist/cjs/defaultProps.js.map +0 -7
- package/dist/cjs/outOfTheBox/AppPicker/AppPicker.js.map +0 -7
- package/dist/cjs/outOfTheBox/PopupMenu/PopupMenu.js.map +0 -7
- package/dist/cjs/outOfTheBox/PopupMenu/PopupMenuContent.js +0 -97
- package/dist/cjs/outOfTheBox/PopupMenu/PopupMenuContent.js.map +0 -7
- package/dist/cjs/outOfTheBox/PopupMenu/styles.js +0 -67
- package/dist/cjs/outOfTheBox/PopupMenu/styles.js.map +0 -7
- package/dist/cjs/outOfTheBox/SearchToggle/SearchToggle.js.map +0 -7
- package/dist/cjs/outOfTheBox/SearchToggle/styles.js.map +0 -7
- package/dist/cjs/outOfTheBox/index.js +0 -30
- package/dist/cjs/outOfTheBox/index.js.map +0 -7
- package/dist/cjs/propTypes.js +0 -56
- package/dist/cjs/propTypes.js.map +0 -7
- package/dist/cjs/styles.js +0 -43
- package/dist/cjs/styles.js.map +0 -7
- package/dist/esm/GlobalHeader.js +0 -28
- package/dist/esm/GlobalHeader.js.map +0 -7
- package/dist/esm/GlobalHeaderContainer.js +0 -12
- package/dist/esm/GlobalHeaderContainer.js.map +0 -7
- package/dist/esm/GlobalHeaderContext.js +0 -17
- package/dist/esm/GlobalHeaderContext.js.map +0 -7
- package/dist/esm/GlobalHeaderTypes.js +0 -2
- package/dist/esm/components/Breadcrumb/GlobalHeaderBreadcrumb.js +0 -83
- package/dist/esm/components/Breadcrumb/GlobalHeaderBreadcrumb.js.map +0 -7
- package/dist/esm/components/Breadcrumb/PureBreadcrumb.js.map +0 -7
- package/dist/esm/components/Breadcrumb/styles.js +0 -54
- package/dist/esm/components/Breadcrumb/styles.js.map +0 -7
- package/dist/esm/components/Title/GlobalHeaderTitle.js +0 -19
- package/dist/esm/components/Title/GlobalHeaderTitle.js.map +0 -7
- package/dist/esm/components/Toolbar/GlobalHeaderToolbar.js +0 -20
- package/dist/esm/components/Toolbar/GlobalHeaderToolbar.js.map +0 -7
- package/dist/esm/components/Toolbar/ToolbarItems.js +0 -94
- package/dist/esm/components/Toolbar/ToolbarItems.js.map +0 -7
- package/dist/esm/components/Toolbar/styles.js +0 -32
- package/dist/esm/components/Toolbar/styles.js.map +0 -7
- package/dist/esm/config/useGetPropsWithDefaults.js.map +0 -7
- package/dist/esm/defaultProps.js +0 -12
- package/dist/esm/defaultProps.js.map +0 -7
- package/dist/esm/outOfTheBox/AppPicker/AppPicker.js.map +0 -7
- package/dist/esm/outOfTheBox/PopupMenu/PopupMenu.js.map +0 -7
- package/dist/esm/outOfTheBox/PopupMenu/PopupMenuContent.js +0 -70
- package/dist/esm/outOfTheBox/PopupMenu/PopupMenuContent.js.map +0 -7
- package/dist/esm/outOfTheBox/PopupMenu/styles.js +0 -38
- package/dist/esm/outOfTheBox/PopupMenu/styles.js.map +0 -7
- package/dist/esm/outOfTheBox/SearchToggle/SearchToggle.js.map +0 -7
- package/dist/esm/outOfTheBox/SearchToggle/styles.js.map +0 -7
- package/dist/esm/propTypes.js +0 -27
- package/dist/esm/propTypes.js.map +0 -7
- package/dist/esm/styles.js +0 -14
- package/dist/esm/styles.js.map +0 -7
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
9
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
10
|
+
var __spreadValues = (a, b) => {
|
|
11
|
+
for (var prop in b || (b = {}))
|
|
12
|
+
if (__hasOwnProp.call(b, prop))
|
|
13
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14
|
+
if (__getOwnPropSymbols)
|
|
15
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
16
|
+
if (__propIsEnum.call(b, prop))
|
|
17
|
+
__defNormalProp(a, prop, b[prop]);
|
|
18
|
+
}
|
|
19
|
+
return a;
|
|
20
|
+
};
|
|
21
|
+
var __objRest = (source, exclude) => {
|
|
22
|
+
var target = {};
|
|
23
|
+
for (var prop in source)
|
|
24
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
25
|
+
target[prop] = source[prop];
|
|
26
|
+
if (source != null && __getOwnPropSymbols)
|
|
27
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
28
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
29
|
+
target[prop] = source[prop];
|
|
30
|
+
}
|
|
31
|
+
return target;
|
|
32
|
+
};
|
|
33
|
+
var __export = (target, all) => {
|
|
34
|
+
for (var name in all)
|
|
35
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
36
|
+
};
|
|
37
|
+
var __copyProps = (to, from, except, desc) => {
|
|
38
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
39
|
+
for (let key of __getOwnPropNames(from))
|
|
40
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
41
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
42
|
+
}
|
|
43
|
+
return to;
|
|
44
|
+
};
|
|
45
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
|
|
46
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
47
|
+
var GlobalHeaderToolbar_exports = {};
|
|
48
|
+
__export(GlobalHeaderToolbar_exports, {
|
|
49
|
+
GlobalHeaderToolbar: () => GlobalHeaderToolbar
|
|
50
|
+
});
|
|
51
|
+
module.exports = __toCommonJS(GlobalHeaderToolbar_exports);
|
|
52
|
+
var React = __toESM(require("react"));
|
|
53
|
+
var import_react = __toESM(require("react"));
|
|
54
|
+
var import_ds_utilities = require("@elliemae/ds-utilities");
|
|
55
|
+
var import_styles = require("./styles");
|
|
56
|
+
var import_outOfTheBox = require("./outOfTheBox");
|
|
57
|
+
var import_styles2 = require("../styles");
|
|
58
|
+
var import_DSGlobalHeaderContext = require("../../DSGlobalHeaderContext");
|
|
59
|
+
var import_exported_related = require("../../exported-related");
|
|
60
|
+
var import_useGlobalHeaderToolbar = require("./useGlobalHeaderToolbar");
|
|
61
|
+
const GlobalHeaderToolbar = () => {
|
|
62
|
+
const {
|
|
63
|
+
props: { toolbar },
|
|
64
|
+
instanceUID,
|
|
65
|
+
globalHeaderToolbarGrid
|
|
66
|
+
} = (0, import_react.useContext)(import_DSGlobalHeaderContext.DSGlobalHeaderContext);
|
|
67
|
+
const { listRef, setRef, keyboardNavigation } = (0, import_useGlobalHeaderToolbar.useGlobalHeaderToolbar)();
|
|
68
|
+
return /* @__PURE__ */ import_react.default.createElement(import_styles.StyledMenubarContainer, {
|
|
69
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.CONTAINER
|
|
70
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_styles.StyledList, {
|
|
71
|
+
height: "100%",
|
|
72
|
+
alignItems: "center",
|
|
73
|
+
justifyContent: "center",
|
|
74
|
+
gutter: "xxs",
|
|
75
|
+
cols: globalHeaderToolbarGrid,
|
|
76
|
+
role: "menubar",
|
|
77
|
+
forwardedAs: "ul",
|
|
78
|
+
onKeyDown: keyboardNavigation,
|
|
79
|
+
listRef,
|
|
80
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.LIST
|
|
81
|
+
}, toolbar.map((item, index) => {
|
|
82
|
+
const _a = item, {
|
|
83
|
+
Icon,
|
|
84
|
+
type,
|
|
85
|
+
onClick,
|
|
86
|
+
onKeyPress,
|
|
87
|
+
CustomComponent,
|
|
88
|
+
label,
|
|
89
|
+
id = "",
|
|
90
|
+
componentProps = {}
|
|
91
|
+
} = _a, otherProps = __objRest(_a, [
|
|
92
|
+
"Icon",
|
|
93
|
+
"type",
|
|
94
|
+
"onClick",
|
|
95
|
+
"onKeyPress",
|
|
96
|
+
"CustomComponent",
|
|
97
|
+
"label",
|
|
98
|
+
"id",
|
|
99
|
+
"componentProps"
|
|
100
|
+
]);
|
|
101
|
+
switch (type) {
|
|
102
|
+
case "ds-popup-menu":
|
|
103
|
+
return /* @__PURE__ */ import_react.default.createElement(import_styles.StyledToolbarItem, {
|
|
104
|
+
key: `${instanceUID}-ds-toolbar-item-${label}`,
|
|
105
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.ITEM
|
|
106
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_outOfTheBox.PopupMenu, __spreadValues({
|
|
107
|
+
title: label,
|
|
108
|
+
Icon,
|
|
109
|
+
onClick,
|
|
110
|
+
onKeyPress,
|
|
111
|
+
setRef: setRef(index),
|
|
112
|
+
id,
|
|
113
|
+
componentProps
|
|
114
|
+
}, otherProps)));
|
|
115
|
+
case "ds-app-picker":
|
|
116
|
+
return /* @__PURE__ */ import_react.default.createElement(import_styles.StyledToolbarItem, {
|
|
117
|
+
key: `${instanceUID}-ds-toolbar-item-${label}`,
|
|
118
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.ITEM
|
|
119
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_outOfTheBox.AppPicker, __spreadValues({
|
|
120
|
+
label,
|
|
121
|
+
id,
|
|
122
|
+
setRef: setRef(index),
|
|
123
|
+
componentProps
|
|
124
|
+
}, otherProps)));
|
|
125
|
+
case "ds-search-toggle":
|
|
126
|
+
return /* @__PURE__ */ import_react.default.createElement(import_styles.StyledToolbarItem, {
|
|
127
|
+
key: `${instanceUID}-ds-toolbar-item-${label}`,
|
|
128
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.ITEM
|
|
129
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_outOfTheBox.SearchToggle, __spreadValues({
|
|
130
|
+
id,
|
|
131
|
+
setRef: setRef(index),
|
|
132
|
+
componentProps
|
|
133
|
+
}, otherProps)));
|
|
134
|
+
case "custom":
|
|
135
|
+
return /* @__PURE__ */ import_react.default.createElement(import_styles.StyledToolbarItem, {
|
|
136
|
+
key: `${instanceUID}-ds-toolbar-item-${label}`,
|
|
137
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.ITEM
|
|
138
|
+
}, CustomComponent && /* @__PURE__ */ import_react.default.createElement(CustomComponent, {
|
|
139
|
+
item,
|
|
140
|
+
role: "menuitem",
|
|
141
|
+
setRef: setRef(index)
|
|
142
|
+
}));
|
|
143
|
+
default:
|
|
144
|
+
return /* @__PURE__ */ import_react.default.createElement(import_styles.StyledToolbarItem, {
|
|
145
|
+
key: `${instanceUID}-ds-toolbar-item-${label}`,
|
|
146
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.ITEM
|
|
147
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_styles2.StyledButton, __spreadValues({
|
|
148
|
+
onClick,
|
|
149
|
+
title: label,
|
|
150
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.ITEM_BUTTON,
|
|
151
|
+
id,
|
|
152
|
+
role: "menuitem",
|
|
153
|
+
ref: setRef(index)
|
|
154
|
+
}, (0, import_ds_utilities.getGlobalAttributes)(otherProps)), Icon && /* @__PURE__ */ import_react.default.createElement(Icon, {
|
|
155
|
+
size: "m"
|
|
156
|
+
})));
|
|
157
|
+
}
|
|
158
|
+
})));
|
|
159
|
+
};
|
|
160
|
+
//# sourceMappingURL=GlobalHeaderToolbar.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/parts/Toolbar/GlobalHeaderToolbar.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["import React, { useContext } from 'react';\nimport { getGlobalAttributes } from '@elliemae/ds-utilities';\nimport { StyledList, StyledMenubarContainer, StyledToolbarItem } from './styles';\nimport { AppPicker, PopupMenu, SearchToggle } from './outOfTheBox';\nimport { StyledButton } from '../styles';\nimport { DSGlobalHeaderContext } from '../../DSGlobalHeaderContext';\nimport { DSGlobalHeaderDatatestid } from '../../exported-related';\nimport { useGlobalHeaderToolbar } from './useGlobalHeaderToolbar';\nimport type { DSGlobalHeaderInternalsT } from '../../sharedTypes';\n\nexport const GlobalHeaderToolbar = (): JSX.Element => {\n const {\n props: { toolbar },\n instanceUID,\n globalHeaderToolbarGrid,\n } = useContext(DSGlobalHeaderContext);\n\n const { listRef, setRef, keyboardNavigation } = useGlobalHeaderToolbar();\n\n return (\n <StyledMenubarContainer data-testid={DSGlobalHeaderDatatestid.MENUBAR.CONTAINER}>\n <StyledList\n height=\"100%\"\n alignItems=\"center\"\n justifyContent=\"center\"\n gutter=\"xxs\"\n cols={globalHeaderToolbarGrid}\n role=\"menubar\"\n forwardedAs=\"ul\"\n onKeyDown={keyboardNavigation}\n listRef={listRef}\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.LIST}\n >\n {toolbar.map((item, index) => {\n const {\n Icon,\n type,\n onClick,\n onKeyPress,\n CustomComponent,\n label,\n id = '',\n componentProps = {},\n ...otherProps\n } = item;\n\n switch (type) {\n case 'ds-popup-menu':\n return (\n <StyledToolbarItem\n key={`${instanceUID}-ds-toolbar-item-${label}`}\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.ITEM}\n >\n <PopupMenu\n title={label}\n Icon={Icon}\n onClick={onClick}\n onKeyPress={onKeyPress}\n setRef={setRef(index)}\n id={id}\n componentProps={componentProps as DSGlobalHeaderInternalsT.PopupMenuComponentProps}\n {...otherProps}\n />\n </StyledToolbarItem>\n );\n case 'ds-app-picker':\n return (\n <StyledToolbarItem\n key={`${instanceUID}-ds-toolbar-item-${label}`}\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.ITEM}\n >\n <AppPicker\n label={label}\n id={id}\n setRef={setRef(index)}\n componentProps={componentProps as DSGlobalHeaderInternalsT.AppPickerComponentProps}\n {...otherProps}\n />\n </StyledToolbarItem>\n );\n case 'ds-search-toggle':\n return (\n <StyledToolbarItem\n key={`${instanceUID}-ds-toolbar-item-${label}`}\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.ITEM}\n >\n <SearchToggle\n id={id}\n setRef={setRef(index)}\n componentProps={componentProps as DSGlobalHeaderInternalsT.ToggleSearchComponentProps}\n {...otherProps}\n />\n </StyledToolbarItem>\n );\n case 'custom':\n return (\n <StyledToolbarItem\n key={`${instanceUID}-ds-toolbar-item-${label}`}\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.ITEM}\n >\n {CustomComponent && <CustomComponent item={item} role=\"menuitem\" setRef={setRef(index)} />}\n </StyledToolbarItem>\n );\n\n default:\n return (\n <StyledToolbarItem\n key={`${instanceUID}-ds-toolbar-item-${label}`}\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.ITEM}\n >\n <StyledButton\n onClick={onClick}\n title={label}\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.ITEM_BUTTON}\n id={id}\n role=\"menuitem\"\n ref={setRef(index)}\n {...getGlobalAttributes(otherProps)}\n >\n {Icon && <Icon size=\"m\" />}\n </StyledButton>\n </StyledToolbarItem>\n );\n }\n })}\n </StyledList>\n </StyledMenubarContainer>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,mBAAkC;AAClC,0BAAoC;AACpC,oBAAsE;AACtE,yBAAmD;AACnD,qBAA6B;AAC7B,mCAAsC;AACtC,8BAAyC;AACzC,oCAAuC;AAGhC,MAAM,sBAAsB,MAAmB;AACpD,QAAM;AAAA,IACJ,OAAO,EAAE;AAAA,IACT;AAAA,IACA;AAAA,MACE,6BAAW,kDAAqB;AAEpC,QAAM,EAAE,SAAS,QAAQ,uBAAuB,0DAAuB;AAEvE,SACE,mDAAC;AAAA,IAAuB,eAAa,iDAAyB,QAAQ;AAAA,KACpE,mDAAC;AAAA,IACC,QAAO;AAAA,IACP,YAAW;AAAA,IACX,gBAAe;AAAA,IACf,QAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAK;AAAA,IACL,aAAY;AAAA,IACZ,WAAW;AAAA,IACX;AAAA,IACA,eAAa,iDAAyB,QAAQ;AAAA,KAE7C,QAAQ,IAAI,CAAC,MAAM,UAAU;AAC5B,UAUI,WATF;AAAA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,KAAK;AAAA,MACL,iBAAiB,CAAC;AAAA,QAEhB,IADC,uBACD,IADC;AAAA,MARH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAIF,YAAQ;AAAA,WACD;AACH,eACE,mDAAC;AAAA,UACC,KAAK,GAAG,+BAA+B;AAAA,UACvC,eAAa,iDAAyB,QAAQ;AAAA,WAE9C,mDAAC;AAAA,UACC,OAAO;AAAA,UACP;AAAA,UACA;AAAA,UACA;AAAA,UACA,QAAQ,OAAO,KAAK;AAAA,UACpB;AAAA,UACA;AAAA,WACI,WACN,CACF;AAAA,WAEC;AACH,eACE,mDAAC;AAAA,UACC,KAAK,GAAG,+BAA+B;AAAA,UACvC,eAAa,iDAAyB,QAAQ;AAAA,WAE9C,mDAAC;AAAA,UACC;AAAA,UACA;AAAA,UACA,QAAQ,OAAO,KAAK;AAAA,UACpB;AAAA,WACI,WACN,CACF;AAAA,WAEC;AACH,eACE,mDAAC;AAAA,UACC,KAAK,GAAG,+BAA+B;AAAA,UACvC,eAAa,iDAAyB,QAAQ;AAAA,WAE9C,mDAAC;AAAA,UACC;AAAA,UACA,QAAQ,OAAO,KAAK;AAAA,UACpB;AAAA,WACI,WACN,CACF;AAAA,WAEC;AACH,eACE,mDAAC;AAAA,UACC,KAAK,GAAG,+BAA+B;AAAA,UACvC,eAAa,iDAAyB,QAAQ;AAAA,WAE7C,mBAAmB,mDAAC;AAAA,UAAgB;AAAA,UAAY,MAAK;AAAA,UAAW,QAAQ,OAAO,KAAK;AAAA,SAAG,CAC1F;AAAA;AAIF,eACE,mDAAC;AAAA,UACC,KAAK,GAAG,+BAA+B;AAAA,UACvC,eAAa,iDAAyB,QAAQ;AAAA,WAE9C,mDAAC;AAAA,UACC;AAAA,UACA,OAAO;AAAA,UACP,eAAa,iDAAyB,QAAQ;AAAA,UAC9C;AAAA,UACA,MAAK;AAAA,UACL,KAAK,OAAO,KAAK;AAAA,WACb,6CAAoB,UAAU,IAEjC,QAAQ,mDAAC;AAAA,UAAK,MAAK;AAAA,SAAI,CAC1B,CACF;AAAA;AAAA,EAGR,CAAC,CACH,CACF;AAEJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -18,7 +18,6 @@ var __spreadValues = (a, b) => {
|
|
|
18
18
|
}
|
|
19
19
|
return a;
|
|
20
20
|
};
|
|
21
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
22
21
|
var __objRest = (source, exclude) => {
|
|
23
22
|
var target = {};
|
|
24
23
|
for (var prop in source)
|
|
@@ -35,45 +34,42 @@ var __export = (target, all) => {
|
|
|
35
34
|
for (var name in all)
|
|
36
35
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
37
36
|
};
|
|
38
|
-
var
|
|
39
|
-
if (
|
|
40
|
-
for (let key of __getOwnPropNames(
|
|
41
|
-
if (!__hasOwnProp.call(
|
|
42
|
-
__defProp(
|
|
37
|
+
var __copyProps = (to, from, except, desc) => {
|
|
38
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
39
|
+
for (let key of __getOwnPropNames(from))
|
|
40
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
41
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
43
42
|
}
|
|
44
|
-
return
|
|
45
|
-
};
|
|
46
|
-
var __toESM = (module2, isNodeMode) => {
|
|
47
|
-
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
|
43
|
+
return to;
|
|
48
44
|
};
|
|
49
|
-
var
|
|
50
|
-
|
|
51
|
-
return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
|
|
52
|
-
};
|
|
53
|
-
})(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
|
|
45
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
|
|
46
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
54
47
|
var AppPicker_exports = {};
|
|
55
48
|
__export(AppPicker_exports, {
|
|
56
49
|
AppPicker: () => AppPicker
|
|
57
50
|
});
|
|
51
|
+
module.exports = __toCommonJS(AppPicker_exports);
|
|
58
52
|
var React = __toESM(require("react"));
|
|
59
53
|
var import_react = __toESM(require("react"));
|
|
60
54
|
var import_ds_app_picker = require("@elliemae/ds-app-picker");
|
|
61
55
|
var import_ds_utilities = require("@elliemae/ds-utilities");
|
|
62
56
|
var import_ds_icons = require("@elliemae/ds-icons");
|
|
63
|
-
var
|
|
64
|
-
var
|
|
57
|
+
var import_styles = require("../../../styles");
|
|
58
|
+
var import_exported_related = require("../../../../exported-related");
|
|
65
59
|
const AppPicker = (_a) => {
|
|
66
60
|
var _b = _a, {
|
|
67
61
|
label,
|
|
68
62
|
id,
|
|
63
|
+
setRef,
|
|
69
64
|
componentProps
|
|
70
65
|
} = _b, otherProps = __objRest(_b, [
|
|
71
66
|
"label",
|
|
72
67
|
"id",
|
|
68
|
+
"setRef",
|
|
73
69
|
"componentProps"
|
|
74
70
|
]);
|
|
75
71
|
const [isOpen, setIsOpen] = (0, import_react.useState)(false);
|
|
76
|
-
const
|
|
72
|
+
const internalTriggerRef = (0, import_react.useRef)(null);
|
|
77
73
|
const {
|
|
78
74
|
apps,
|
|
79
75
|
icon,
|
|
@@ -89,15 +85,17 @@ const AppPicker = (_a) => {
|
|
|
89
85
|
triggerRef,
|
|
90
86
|
triggerOnClick
|
|
91
87
|
} = componentProps;
|
|
88
|
+
const schedule = (0, import_ds_utilities.useCallbackAfterRender)();
|
|
89
|
+
const focusTrigger = (0, import_react.useCallback)(() => internalTriggerRef.current?.focus(), []);
|
|
92
90
|
const handleTriggerKeyDown = (0, import_react.useCallback)((e) => {
|
|
93
|
-
if (e.code === "Enter" || e.code === "Space") {
|
|
91
|
+
if (e.code === "Enter" || e.code === "Space" || e.code === "ArrowDown") {
|
|
94
92
|
setIsOpen(true);
|
|
95
93
|
}
|
|
96
94
|
}, []);
|
|
97
95
|
const handleAppPickerOnKeyDown = (0, import_react.useCallback)((e) => {
|
|
98
|
-
if (e.
|
|
96
|
+
if (e.key === "Escape") {
|
|
99
97
|
setIsOpen(false);
|
|
100
|
-
|
|
98
|
+
schedule(focusTrigger);
|
|
101
99
|
}
|
|
102
100
|
}, []);
|
|
103
101
|
const handleOnClickOutside = (0, import_react.useCallback)(() => {
|
|
@@ -106,20 +104,6 @@ const AppPicker = (_a) => {
|
|
|
106
104
|
const handleOnClick = (0, import_react.useCallback)(() => {
|
|
107
105
|
setIsOpen(true);
|
|
108
106
|
}, []);
|
|
109
|
-
const renderTrigger = (0, import_react.useMemo)(() => ({ ref }) => /* @__PURE__ */ import_react.default.createElement("div", {
|
|
110
|
-
ref
|
|
111
|
-
}, /* @__PURE__ */ import_react.default.createElement(import_styles.Button, __spreadValues({
|
|
112
|
-
onClick: triggerOnClick ?? handleOnClick,
|
|
113
|
-
onKeyDown: handleTriggerKeyDown,
|
|
114
|
-
ref: (0, import_ds_utilities.mergeRefs)(buttonRef, triggerRef),
|
|
115
|
-
title: label,
|
|
116
|
-
"data-testid": "gh-toolbar-item",
|
|
117
|
-
id
|
|
118
|
-
}, (0, import_ds_props_helpers.getDataProps)(otherProps)), /* @__PURE__ */ import_react.default.createElement(import_ds_icons.MenuPicker, {
|
|
119
|
-
fill: "#FFF",
|
|
120
|
-
width: 20.73,
|
|
121
|
-
height: 20.73
|
|
122
|
-
}))), [triggerOnClick, handleOnClick, handleTriggerKeyDown, triggerRef, label, id, otherProps]);
|
|
123
107
|
return /* @__PURE__ */ import_react.default.createElement(import_ds_app_picker.DSAppPicker, {
|
|
124
108
|
apps,
|
|
125
109
|
customApps,
|
|
@@ -129,11 +113,26 @@ const AppPicker = (_a) => {
|
|
|
129
113
|
onKeyDown: userOnKeyDown ?? handleAppPickerOnKeyDown,
|
|
130
114
|
actionRef,
|
|
131
115
|
onClickOutside: userOnClickOutside ?? handleOnClickOutside,
|
|
132
|
-
renderTrigger: userRenderTrigger
|
|
116
|
+
renderTrigger: userRenderTrigger || (({ ref }) => /* @__PURE__ */ import_react.default.createElement(import_styles.StyledButton, __spreadValues({
|
|
117
|
+
onClick: triggerOnClick ?? handleOnClick,
|
|
118
|
+
onKeyDown: handleTriggerKeyDown,
|
|
119
|
+
ref: (buttonRef) => {
|
|
120
|
+
setRef(buttonRef);
|
|
121
|
+
(0, import_ds_utilities.mergeRefs)(internalTriggerRef, triggerRef, ref)(buttonRef);
|
|
122
|
+
},
|
|
123
|
+
"aria-label": label,
|
|
124
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.ITEM_BUTTON,
|
|
125
|
+
role: "menuitem",
|
|
126
|
+
"aria-haspopup": true,
|
|
127
|
+
"aria-expanded": userIsOpen ?? isOpen,
|
|
128
|
+
id
|
|
129
|
+
}, (0, import_ds_utilities.getGlobalAttributes)(otherProps)), /* @__PURE__ */ import_react.default.createElement(import_ds_icons.MenuPicker, {
|
|
130
|
+
width: 20.73,
|
|
131
|
+
height: 20.73
|
|
132
|
+
}))),
|
|
133
133
|
isOpen: userIsOpen ?? isOpen,
|
|
134
134
|
onClose,
|
|
135
135
|
triggerRef
|
|
136
136
|
});
|
|
137
137
|
};
|
|
138
|
-
module.exports = __toCommonJS(AppPicker_exports);
|
|
139
138
|
//# sourceMappingURL=AppPicker.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../src/parts/Toolbar/outOfTheBox/AppPicker/AppPicker.tsx", "../../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["import React, { useState, useRef, useCallback } from 'react';\nimport { DSAppPicker } from '@elliemae/ds-app-picker';\nimport { mergeRefs, getGlobalAttributes, useCallbackAfterRender } from '@elliemae/ds-utilities';\nimport { MenuPicker } from '@elliemae/ds-icons';\nimport { StyledButton } from '../../../styles';\nimport { DSGlobalHeaderDatatestid } from '../../../../exported-related';\nimport type { DSGlobalHeaderInternalsT } from '../../../../sharedTypes';\n\nexport const AppPicker = ({\n label,\n id,\n setRef,\n componentProps,\n ...otherProps\n}: DSGlobalHeaderInternalsT.AppPickerProps): JSX.Element => {\n const [isOpen, setIsOpen] = useState<boolean>(false);\n const internalTriggerRef = useRef<HTMLButtonElement>(null);\n\n const {\n apps,\n icon,\n customApps,\n sectionTitle,\n customSectionTitle,\n actionRef,\n isOpen: userIsOpen,\n onKeyDown: userOnKeyDown,\n onClickOutside: userOnClickOutside,\n renderTrigger: userRenderTrigger,\n onClose,\n triggerRef,\n triggerOnClick,\n } = componentProps;\n\n const schedule = useCallbackAfterRender();\n\n const focusTrigger = useCallback(() => internalTriggerRef.current?.focus(), []);\n\n const handleTriggerKeyDown: React.KeyboardEventHandler = useCallback((e) => {\n if (e.code === 'Enter' || e.code === 'Space' || e.code === 'ArrowDown') {\n setIsOpen(true);\n }\n }, []);\n\n const handleAppPickerOnKeyDown = useCallback((e: React.KeyboardEvent) => {\n if (e.key === 'Escape') {\n setIsOpen(false);\n schedule(focusTrigger);\n }\n }, []);\n\n const handleOnClickOutside = useCallback(() => {\n setIsOpen(false);\n }, []);\n\n const handleOnClick: React.MouseEventHandler = useCallback(() => {\n setIsOpen(true);\n }, []);\n\n return (\n <DSAppPicker\n apps={apps}\n customApps={customApps}\n sectionTitle={sectionTitle}\n customSectionTitle={customSectionTitle}\n icon={icon}\n onKeyDown={userOnKeyDown ?? handleAppPickerOnKeyDown}\n actionRef={actionRef}\n onClickOutside={userOnClickOutside ?? handleOnClickOutside}\n renderTrigger={\n userRenderTrigger ||\n (({ ref }: { ref: React.MutableRefObject<HTMLButtonElement> }) => (\n <StyledButton\n onClick={triggerOnClick ?? handleOnClick}\n onKeyDown={handleTriggerKeyDown}\n ref={(buttonRef: HTMLButtonElement) => {\n setRef(buttonRef);\n mergeRefs(internalTriggerRef, triggerRef, ref)(buttonRef);\n }}\n aria-label={label}\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.ITEM_BUTTON}\n role=\"menuitem\"\n aria-haspopup\n aria-expanded={userIsOpen ?? isOpen}\n id={id}\n {...getGlobalAttributes(otherProps)}\n >\n <MenuPicker width={20.73} height={20.73} />\n </StyledButton>\n ))\n }\n isOpen={userIsOpen ?? isOpen}\n onClose={onClose}\n triggerRef={triggerRef}\n />\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,mBAAqD;AACrD,2BAA4B;AAC5B,0BAAuE;AACvE,sBAA2B;AAC3B,oBAA6B;AAC7B,8BAAyC;AAGlC,MAAM,YAAY,CAAC,OAMkC;AANlC,eACxB;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,MAJwB,IAKrB,uBALqB,IAKrB;AAAA,IAJH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,QAAM,CAAC,QAAQ,aAAa,2BAAkB,KAAK;AACnD,QAAM,qBAAqB,yBAA0B,IAAI;AAEzD,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,IACR,WAAW;AAAA,IACX,gBAAgB;AAAA,IAChB,eAAe;AAAA,IACf;AAAA,IACA;AAAA,IACA;AAAA,MACE;AAEJ,QAAM,WAAW,gDAAuB;AAExC,QAAM,eAAe,8BAAY,MAAM,mBAAmB,SAAS,MAAM,GAAG,CAAC,CAAC;AAE9E,QAAM,uBAAmD,8BAAY,CAAC,MAAM;AAC1E,QAAI,EAAE,SAAS,WAAW,EAAE,SAAS,WAAW,EAAE,SAAS,aAAa;AACtE,gBAAU,IAAI;AAAA,IAChB;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,QAAM,2BAA2B,8BAAY,CAAC,MAA2B;AACvE,QAAI,EAAE,QAAQ,UAAU;AACtB,gBAAU,KAAK;AACf,eAAS,YAAY;AAAA,IACvB;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,QAAM,uBAAuB,8BAAY,MAAM;AAC7C,cAAU,KAAK;AAAA,EACjB,GAAG,CAAC,CAAC;AAEL,QAAM,gBAAyC,8BAAY,MAAM;AAC/D,cAAU,IAAI;AAAA,EAChB,GAAG,CAAC,CAAC;AAEL,SACE,mDAAC;AAAA,IACC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW,iBAAiB;AAAA,IAC5B;AAAA,IACA,gBAAgB,sBAAsB;AAAA,IACtC,eACE,qBACC,EAAC,EAAE,UACF,mDAAC;AAAA,MACC,SAAS,kBAAkB;AAAA,MAC3B,WAAW;AAAA,MACX,KAAK,CAAC,cAAiC;AACrC,eAAO,SAAS;AAChB,2CAAU,oBAAoB,YAAY,GAAG,EAAE,SAAS;AAAA,MAC1D;AAAA,MACA,cAAY;AAAA,MACZ,eAAa,iDAAyB,QAAQ;AAAA,MAC9C,MAAK;AAAA,MACL,iBAAa;AAAA,MACb,iBAAe,cAAc;AAAA,MAC7B;AAAA,OACI,6CAAoB,UAAU,IAElC,mDAAC;AAAA,MAAW,OAAO;AAAA,MAAO,QAAQ;AAAA,KAAO,CAC3C;AAAA,IAGJ,QAAQ,cAAc;AAAA,IACtB;AAAA,IACA;AAAA,GACF;AAEJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -18,7 +18,6 @@ var __spreadValues = (a, b) => {
|
|
|
18
18
|
}
|
|
19
19
|
return a;
|
|
20
20
|
};
|
|
21
|
-
var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
|
22
21
|
var __objRest = (source, exclude) => {
|
|
23
22
|
var target = {};
|
|
24
23
|
for (var prop in source)
|
|
@@ -35,34 +34,44 @@ var __export = (target, all) => {
|
|
|
35
34
|
for (var name in all)
|
|
36
35
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
37
36
|
};
|
|
38
|
-
var
|
|
39
|
-
if (
|
|
40
|
-
for (let key of __getOwnPropNames(
|
|
41
|
-
if (!__hasOwnProp.call(
|
|
42
|
-
__defProp(
|
|
37
|
+
var __copyProps = (to, from, except, desc) => {
|
|
38
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
39
|
+
for (let key of __getOwnPropNames(from))
|
|
40
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
41
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
43
42
|
}
|
|
44
|
-
return
|
|
45
|
-
};
|
|
46
|
-
var __toESM = (module2, isNodeMode) => {
|
|
47
|
-
return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
|
43
|
+
return to;
|
|
48
44
|
};
|
|
49
|
-
var
|
|
50
|
-
|
|
51
|
-
return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
|
|
52
|
-
};
|
|
53
|
-
})(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
|
|
45
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
|
|
46
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
54
47
|
var PopupMenu_exports = {};
|
|
55
48
|
__export(PopupMenu_exports, {
|
|
56
49
|
PopupMenu: () => PopupMenu
|
|
57
50
|
});
|
|
51
|
+
module.exports = __toCommonJS(PopupMenu_exports);
|
|
58
52
|
var React = __toESM(require("react"));
|
|
59
53
|
var import_react = __toESM(require("react"));
|
|
54
|
+
var import_ds_utilities = require("@elliemae/ds-utilities");
|
|
60
55
|
var import_ds_popperjs = require("@elliemae/ds-popperjs");
|
|
61
|
-
var import_PopupMenuContent = require("./PopupMenuContent");
|
|
62
|
-
var import_styles = require("
|
|
63
|
-
var
|
|
56
|
+
var import_PopupMenuContent = require("./menuContent/PopupMenuContent");
|
|
57
|
+
var import_styles = require("../../../styles");
|
|
58
|
+
var import_exported_related = require("../../../../exported-related");
|
|
64
59
|
const PopupMenu = (_a) => {
|
|
65
|
-
var _b = _a, {
|
|
60
|
+
var _b = _a, {
|
|
61
|
+
Icon,
|
|
62
|
+
title,
|
|
63
|
+
onClick,
|
|
64
|
+
id,
|
|
65
|
+
setRef,
|
|
66
|
+
componentProps
|
|
67
|
+
} = _b, otherProps = __objRest(_b, [
|
|
68
|
+
"Icon",
|
|
69
|
+
"title",
|
|
70
|
+
"onClick",
|
|
71
|
+
"id",
|
|
72
|
+
"setRef",
|
|
73
|
+
"componentProps"
|
|
74
|
+
]);
|
|
66
75
|
const [isOpen, setIsOpen] = (0, import_react.useState)(false);
|
|
67
76
|
const [buttonRef, setButtonRef] = (0, import_react.useState)(null);
|
|
68
77
|
const {
|
|
@@ -73,8 +82,8 @@ const PopupMenu = (_a) => {
|
|
|
73
82
|
options,
|
|
74
83
|
closeOnClick
|
|
75
84
|
} = componentProps;
|
|
76
|
-
const
|
|
77
|
-
if (e.code === "
|
|
85
|
+
const handleOnKeyDown = (0, import_react.useCallback)((e) => {
|
|
86
|
+
if (e.code === "ArrowDown") {
|
|
78
87
|
setIsOpen(true);
|
|
79
88
|
}
|
|
80
89
|
if (onKeyPress)
|
|
@@ -89,34 +98,41 @@ const PopupMenu = (_a) => {
|
|
|
89
98
|
const handleTriggerOnClick = (0, import_react.useCallback)((e) => {
|
|
90
99
|
if (userIsOpen === void 0)
|
|
91
100
|
setIsOpen(true);
|
|
92
|
-
onClick
|
|
101
|
+
if (onClick)
|
|
102
|
+
onClick(e);
|
|
93
103
|
}, [onClick, userIsOpen]);
|
|
94
104
|
const handleItemClick = (0, import_react.useCallback)(() => {
|
|
95
105
|
if (closeOnClick && userIsOpen === void 0)
|
|
96
106
|
handleOnClose();
|
|
97
107
|
}, [closeOnClick, handleOnClose, userIsOpen]);
|
|
98
|
-
const
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
}), [options, handleItemClick, handleOnClose, popupOnKeyPress]);
|
|
104
|
-
return /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(import_styles.Button, __spreadValues({
|
|
108
|
+
const handleRefs = (0, import_react.useCallback)((ref) => {
|
|
109
|
+
setRef(ref);
|
|
110
|
+
setButtonRef(ref);
|
|
111
|
+
}, []);
|
|
112
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(import_styles.StyledButton, __spreadValues({
|
|
105
113
|
onClick: handleTriggerOnClick,
|
|
106
|
-
|
|
107
|
-
title,
|
|
108
|
-
ref:
|
|
109
|
-
"data-testid":
|
|
114
|
+
onKeyDown: handleOnKeyDown,
|
|
115
|
+
"aria-label": title,
|
|
116
|
+
ref: handleRefs,
|
|
117
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.ITEM_BUTTON,
|
|
118
|
+
role: "menuitem",
|
|
119
|
+
"aria-haspopup": true,
|
|
120
|
+
"aria-expanded": userIsOpen ?? isOpen,
|
|
110
121
|
id
|
|
111
|
-
}, (0,
|
|
112
|
-
fill: "#FFF",
|
|
122
|
+
}, (0, import_ds_utilities.useGetGlobalAttributes)(otherProps)), Icon && /* @__PURE__ */ import_react.default.createElement(Icon, {
|
|
113
123
|
size: "m"
|
|
114
124
|
})), /* @__PURE__ */ import_react.default.createElement(import_ds_popperjs.DSPopperJS, {
|
|
115
125
|
referenceElement: buttonRef,
|
|
116
126
|
showPopover: userIsOpen ?? isOpen,
|
|
117
127
|
closeContextMenu: handleOnClose,
|
|
118
|
-
onClickOutside
|
|
119
|
-
|
|
128
|
+
onClickOutside,
|
|
129
|
+
withoutPortal: true
|
|
130
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_PopupMenuContent.PopupMenuContent, {
|
|
131
|
+
options,
|
|
132
|
+
onItemClick: handleItemClick,
|
|
133
|
+
onClose: handleOnClose,
|
|
134
|
+
setIsOpen,
|
|
135
|
+
popupOnKeyPress
|
|
136
|
+
})));
|
|
120
137
|
};
|
|
121
|
-
module.exports = __toCommonJS(PopupMenu_exports);
|
|
122
138
|
//# sourceMappingURL=PopupMenu.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../src/parts/Toolbar/outOfTheBox/PopupMenu/PopupMenu.tsx", "../../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["import React, { useState, useCallback } from 'react';\nimport { useGetGlobalAttributes } from '@elliemae/ds-utilities';\nimport { DSPopperJS } from '@elliemae/ds-popperjs';\nimport { PopupMenuContent } from './menuContent/PopupMenuContent';\nimport { StyledButton } from '../../../styles';\nimport { DSGlobalHeaderDatatestid } from '../../../../exported-related';\nimport type { DSGlobalHeaderInternalsT } from '../../../../sharedTypes';\n\nexport const PopupMenu = ({\n Icon,\n title,\n onClick,\n id,\n setRef,\n componentProps,\n ...otherProps\n}: DSGlobalHeaderInternalsT.PopupProps): JSX.Element => {\n const [isOpen, setIsOpen] = useState<boolean>(false);\n const [buttonRef, setButtonRef] = useState<HTMLButtonElement | null>(null);\n\n const {\n onClickOutside = () => null,\n onKeyPress,\n popupOnKeyPress,\n isOpen: userIsOpen,\n options,\n closeOnClick,\n } = componentProps;\n\n const handleOnKeyDown = useCallback(\n (e: React.KeyboardEvent) => {\n if (e.code === 'ArrowDown') {\n setIsOpen(true);\n }\n if (onKeyPress) onKeyPress(e);\n },\n [onKeyPress],\n );\n\n const handleOnClose = useCallback(() => {\n if (userIsOpen === undefined) {\n setIsOpen(false);\n }\n buttonRef?.focus();\n }, [buttonRef, userIsOpen]);\n\n const handleTriggerOnClick = useCallback(\n (e: React.MouseEvent) => {\n if (userIsOpen === undefined) setIsOpen(true);\n if (onClick) onClick(e);\n },\n [onClick, userIsOpen],\n );\n\n const handleItemClick = useCallback(() => {\n if (closeOnClick && userIsOpen === undefined) handleOnClose();\n }, [closeOnClick, handleOnClose, userIsOpen]);\n\n const handleRefs = useCallback((ref) => {\n setRef(ref);\n setButtonRef(ref);\n }, []);\n\n return (\n <>\n <StyledButton\n onClick={handleTriggerOnClick}\n onKeyDown={handleOnKeyDown}\n aria-label={title}\n ref={handleRefs}\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.ITEM_BUTTON}\n role=\"menuitem\"\n aria-haspopup\n aria-expanded={userIsOpen ?? isOpen}\n id={id}\n {...useGetGlobalAttributes(otherProps)}\n >\n {Icon && <Icon size=\"m\" />}\n </StyledButton>\n <DSPopperJS\n referenceElement={buttonRef}\n showPopover={userIsOpen ?? isOpen}\n closeContextMenu={handleOnClose}\n onClickOutside={onClickOutside}\n withoutPortal\n >\n <PopupMenuContent\n options={options}\n onItemClick={handleItemClick}\n onClose={handleOnClose}\n setIsOpen={setIsOpen}\n popupOnKeyPress={popupOnKeyPress}\n />\n </DSPopperJS>\n </>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,mBAA6C;AAC7C,0BAAuC;AACvC,yBAA2B;AAC3B,8BAAiC;AACjC,oBAA6B;AAC7B,8BAAyC;AAGlC,MAAM,YAAY,CAAC,OAQ8B;AAR9B,eACxB;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,MANwB,IAOrB,uBAPqB,IAOrB;AAAA,IANH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,QAAM,CAAC,QAAQ,aAAa,2BAAkB,KAAK;AACnD,QAAM,CAAC,WAAW,gBAAgB,2BAAmC,IAAI;AAEzE,QAAM;AAAA,IACJ,iBAAiB,MAAM;AAAA,IACvB;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,IACR;AAAA,IACA;AAAA,MACE;AAEJ,QAAM,kBAAkB,8BACtB,CAAC,MAA2B;AAC1B,QAAI,EAAE,SAAS,aAAa;AAC1B,gBAAU,IAAI;AAAA,IAChB;AACA,QAAI;AAAY,iBAAW,CAAC;AAAA,EAC9B,GACA,CAAC,UAAU,CACb;AAEA,QAAM,gBAAgB,8BAAY,MAAM;AACtC,QAAI,eAAe,QAAW;AAC5B,gBAAU,KAAK;AAAA,IACjB;AACA,eAAW,MAAM;AAAA,EACnB,GAAG,CAAC,WAAW,UAAU,CAAC;AAE1B,QAAM,uBAAuB,8BAC3B,CAAC,MAAwB;AACvB,QAAI,eAAe;AAAW,gBAAU,IAAI;AAC5C,QAAI;AAAS,cAAQ,CAAC;AAAA,EACxB,GACA,CAAC,SAAS,UAAU,CACtB;AAEA,QAAM,kBAAkB,8BAAY,MAAM;AACxC,QAAI,gBAAgB,eAAe;AAAW,oBAAc;AAAA,EAC9D,GAAG,CAAC,cAAc,eAAe,UAAU,CAAC;AAE5C,QAAM,aAAa,8BAAY,CAAC,QAAQ;AACtC,WAAO,GAAG;AACV,iBAAa,GAAG;AAAA,EAClB,GAAG,CAAC,CAAC;AAEL,SACE,wFACE,mDAAC;AAAA,IACC,SAAS;AAAA,IACT,WAAW;AAAA,IACX,cAAY;AAAA,IACZ,KAAK;AAAA,IACL,eAAa,iDAAyB,QAAQ;AAAA,IAC9C,MAAK;AAAA,IACL,iBAAa;AAAA,IACb,iBAAe,cAAc;AAAA,IAC7B;AAAA,KACI,gDAAuB,UAAU,IAEpC,QAAQ,mDAAC;AAAA,IAAK,MAAK;AAAA,GAAI,CAC1B,GACA,mDAAC;AAAA,IACC,kBAAkB;AAAA,IAClB,aAAa,cAAc;AAAA,IAC3B,kBAAkB;AAAA,IAClB;AAAA,IACA,eAAa;AAAA,KAEb,mDAAC;AAAA,IACC;AAAA,IACA,aAAa;AAAA,IACb,SAAS;AAAA,IACT;AAAA,IACA;AAAA,GACF,CACF,CACF;AAEJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
9
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
10
|
+
var __spreadValues = (a, b) => {
|
|
11
|
+
for (var prop in b || (b = {}))
|
|
12
|
+
if (__hasOwnProp.call(b, prop))
|
|
13
|
+
__defNormalProp(a, prop, b[prop]);
|
|
14
|
+
if (__getOwnPropSymbols)
|
|
15
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
16
|
+
if (__propIsEnum.call(b, prop))
|
|
17
|
+
__defNormalProp(a, prop, b[prop]);
|
|
18
|
+
}
|
|
19
|
+
return a;
|
|
20
|
+
};
|
|
21
|
+
var __objRest = (source, exclude) => {
|
|
22
|
+
var target = {};
|
|
23
|
+
for (var prop in source)
|
|
24
|
+
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
25
|
+
target[prop] = source[prop];
|
|
26
|
+
if (source != null && __getOwnPropSymbols)
|
|
27
|
+
for (var prop of __getOwnPropSymbols(source)) {
|
|
28
|
+
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
29
|
+
target[prop] = source[prop];
|
|
30
|
+
}
|
|
31
|
+
return target;
|
|
32
|
+
};
|
|
33
|
+
var __export = (target, all) => {
|
|
34
|
+
for (var name in all)
|
|
35
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
36
|
+
};
|
|
37
|
+
var __copyProps = (to, from, except, desc) => {
|
|
38
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
39
|
+
for (let key of __getOwnPropNames(from))
|
|
40
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
41
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
42
|
+
}
|
|
43
|
+
return to;
|
|
44
|
+
};
|
|
45
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
|
|
46
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
47
|
+
var PopupMenuContent_exports = {};
|
|
48
|
+
__export(PopupMenuContent_exports, {
|
|
49
|
+
PopupMenuContent: () => PopupMenuContent
|
|
50
|
+
});
|
|
51
|
+
module.exports = __toCommonJS(PopupMenuContent_exports);
|
|
52
|
+
var React = __toESM(require("react"));
|
|
53
|
+
var import_react = __toESM(require("react"));
|
|
54
|
+
var import_ds_utilities = require("@elliemae/ds-utilities");
|
|
55
|
+
var import_styles = require("./styles");
|
|
56
|
+
var import_DSGlobalHeaderContext = require("../../../../../DSGlobalHeaderContext");
|
|
57
|
+
var import_exported_related = require("../../../../../exported-related");
|
|
58
|
+
var import_usePopupMenuContent = require("./usePopupMenuContent");
|
|
59
|
+
const PopupMenuContent = import_react.default.memo(({
|
|
60
|
+
options,
|
|
61
|
+
onItemClick,
|
|
62
|
+
onClose,
|
|
63
|
+
popupOnKeyPress,
|
|
64
|
+
setIsOpen
|
|
65
|
+
}) => {
|
|
66
|
+
const { instanceUID } = (0, import_react.useContext)(import_DSGlobalHeaderContext.DSGlobalHeaderContext);
|
|
67
|
+
const { menuRef, setRef, keyboardNavigation } = (0, import_usePopupMenuContent.usePopupMenuContent)({ setIsOpen });
|
|
68
|
+
return /* @__PURE__ */ import_react.default.createElement(import_styles.StyledList, {
|
|
69
|
+
ref: menuRef,
|
|
70
|
+
role: "menu",
|
|
71
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.LIST
|
|
72
|
+
}, options.map((option) => {
|
|
73
|
+
const _a = option, { type, Icon, label = "", onClick, Content, id } = _a, rest = __objRest(_a, ["type", "Icon", "label", "onClick", "Content", "id"]);
|
|
74
|
+
const globalAttrs = (0, import_ds_utilities.getGlobalAttributes)(rest);
|
|
75
|
+
const handleClick = (e) => {
|
|
76
|
+
onItemClick();
|
|
77
|
+
if (onClick)
|
|
78
|
+
onClick(e);
|
|
79
|
+
};
|
|
80
|
+
const handleKeyDown = (e) => {
|
|
81
|
+
keyboardNavigation(e);
|
|
82
|
+
if (e.code === "Escape")
|
|
83
|
+
onClose();
|
|
84
|
+
if (popupOnKeyPress)
|
|
85
|
+
popupOnKeyPress(e);
|
|
86
|
+
};
|
|
87
|
+
switch (type) {
|
|
88
|
+
case "separator":
|
|
89
|
+
return /* @__PURE__ */ import_react.default.createElement(import_styles.StyledSeparator, __spreadValues({
|
|
90
|
+
key: `${instanceUID}-separator-${label}`,
|
|
91
|
+
role: "none",
|
|
92
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.SEPARATOR
|
|
93
|
+
}, globalAttrs));
|
|
94
|
+
case "custom":
|
|
95
|
+
return /* @__PURE__ */ import_react.default.createElement(import_styles.StyledItemContainer, {
|
|
96
|
+
key: `${instanceUID}-popup-${label}`,
|
|
97
|
+
role: "menuitem",
|
|
98
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.ITEM
|
|
99
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_styles.StyledItemButton, __spreadValues({
|
|
100
|
+
ref: setRef,
|
|
101
|
+
onClick: handleClick,
|
|
102
|
+
onKeyDown: handleKeyDown,
|
|
103
|
+
id,
|
|
104
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.ITEM_BUTTON
|
|
105
|
+
}, globalAttrs), Content && /* @__PURE__ */ import_react.default.createElement(Content, null)));
|
|
106
|
+
default:
|
|
107
|
+
return /* @__PURE__ */ import_react.default.createElement(import_styles.StyledItemContainer, {
|
|
108
|
+
key: `${instanceUID}-popup-${label}`,
|
|
109
|
+
role: "menuitem",
|
|
110
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.ITEM
|
|
111
|
+
}, /* @__PURE__ */ import_react.default.createElement(import_styles.StyledItemButton, __spreadValues({
|
|
112
|
+
ref: setRef,
|
|
113
|
+
onClick: handleClick,
|
|
114
|
+
onKeyDown: handleKeyDown,
|
|
115
|
+
id,
|
|
116
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.ITEM_BUTTON
|
|
117
|
+
}, globalAttrs), Icon && /* @__PURE__ */ import_react.default.createElement(Icon, null), label && /* @__PURE__ */ import_react.default.createElement(import_styles.StyledLabel, {
|
|
118
|
+
"data-testid": import_exported_related.DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.ITEM_BUTTON_LABEL
|
|
119
|
+
}, label)));
|
|
120
|
+
}
|
|
121
|
+
}));
|
|
122
|
+
});
|
|
123
|
+
//# sourceMappingURL=PopupMenuContent.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../../src/parts/Toolbar/outOfTheBox/PopupMenu/menuContent/PopupMenuContent.tsx", "../../../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["import React, { useContext } from 'react';\nimport { getGlobalAttributes } from '@elliemae/ds-utilities';\nimport { StyledSeparator, StyledItemButton, StyledLabel, StyledList, StyledItemContainer } from './styles';\nimport { DSGlobalHeaderContext } from '../../../../../DSGlobalHeaderContext';\nimport { DSGlobalHeaderDatatestid } from '../../../../../exported-related';\nimport { usePopupMenuContent } from './usePopupMenuContent';\nimport type { DSGlobalHeaderInternalsT } from '../../../../../sharedTypes';\n\nexport const PopupMenuContent = React.memo(\n ({\n options,\n onItemClick,\n onClose,\n popupOnKeyPress,\n setIsOpen,\n }: DSGlobalHeaderInternalsT.PopupMenuContentProps): JSX.Element => {\n const { instanceUID } = useContext(DSGlobalHeaderContext);\n\n const { menuRef, setRef, keyboardNavigation } = usePopupMenuContent({ setIsOpen });\n\n return (\n <StyledList ref={menuRef} role=\"menu\" data-testid={DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.LIST}>\n {options.map((option) => {\n const { type, Icon, label = '', onClick, Content, id, ...rest } = option;\n\n const globalAttrs = getGlobalAttributes(rest);\n\n const handleClick = (e: React.MouseEvent) => {\n onItemClick();\n if (onClick) onClick(e);\n };\n\n const handleKeyDown = (e: React.KeyboardEvent) => {\n keyboardNavigation(e);\n if (e.code === 'Escape') onClose();\n if (popupOnKeyPress) popupOnKeyPress(e);\n };\n\n switch (type) {\n case 'separator':\n return (\n <StyledSeparator\n key={`${instanceUID}-separator-${label}`}\n role=\"none\"\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.SEPARATOR}\n {...globalAttrs}\n />\n );\n case 'custom':\n return (\n <StyledItemContainer\n key={`${instanceUID}-popup-${label}`}\n role=\"menuitem\"\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.ITEM}\n >\n <StyledItemButton\n ref={setRef}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n id={id}\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.ITEM_BUTTON}\n {...globalAttrs}\n >\n {Content && <Content />}\n </StyledItemButton>\n </StyledItemContainer>\n );\n default:\n return (\n <StyledItemContainer\n key={`${instanceUID}-popup-${label}`}\n role=\"menuitem\"\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.ITEM}\n >\n <StyledItemButton\n ref={setRef}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n id={id}\n data-testid={DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.ITEM_BUTTON}\n {...globalAttrs}\n >\n {Icon && <Icon />}\n {label && (\n <StyledLabel data-testid={DSGlobalHeaderDatatestid.MENUBAR.POPUP_MENU.ITEM_BUTTON_LABEL}>\n {label}\n </StyledLabel>\n )}\n </StyledItemButton>\n </StyledItemContainer>\n );\n }\n })}\n </StyledList>\n );\n },\n);\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,mBAAkC;AAClC,0BAAoC;AACpC,oBAAgG;AAChG,mCAAsC;AACtC,8BAAyC;AACzC,iCAAoC;AAG7B,MAAM,mBAAmB,qBAAM,KACpC,CAAC;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,MACiE;AACjE,QAAM,EAAE,gBAAgB,6BAAW,kDAAqB;AAExD,QAAM,EAAE,SAAS,QAAQ,uBAAuB,oDAAoB,EAAE,UAAU,CAAC;AAEjF,SACE,mDAAC;AAAA,IAAW,KAAK;AAAA,IAAS,MAAK;AAAA,IAAO,eAAa,iDAAyB,QAAQ,WAAW;AAAA,KAC5F,QAAQ,IAAI,CAAC,WAAW;AACvB,UAAkE,aAA1D,QAAM,MAAM,QAAQ,IAAI,SAAS,SAAS,OAAgB,IAAT,iBAAS,IAAT,CAAjD,QAAM,QAAM,SAAY,WAAS,WAAS;AAElD,UAAM,cAAc,6CAAoB,IAAI;AAE5C,UAAM,cAAc,CAAC,MAAwB;AAC3C,kBAAY;AACZ,UAAI;AAAS,gBAAQ,CAAC;AAAA,IACxB;AAEA,UAAM,gBAAgB,CAAC,MAA2B;AAChD,yBAAmB,CAAC;AACpB,UAAI,EAAE,SAAS;AAAU,gBAAQ;AACjC,UAAI;AAAiB,wBAAgB,CAAC;AAAA,IACxC;AAEA,YAAQ;AAAA,WACD;AACH,eACE,mDAAC;AAAA,UACC,KAAK,GAAG,yBAAyB;AAAA,UACjC,MAAK;AAAA,UACL,eAAa,iDAAyB,QAAQ,WAAW;AAAA,WACrD,YACN;AAAA,WAEC;AACH,eACE,mDAAC;AAAA,UACC,KAAK,GAAG,qBAAqB;AAAA,UAC7B,MAAK;AAAA,UACL,eAAa,iDAAyB,QAAQ,WAAW;AAAA,WAEzD,mDAAC;AAAA,UACC,KAAK;AAAA,UACL,SAAS;AAAA,UACT,WAAW;AAAA,UACX;AAAA,UACA,eAAa,iDAAyB,QAAQ,WAAW;AAAA,WACrD,cAEH,WAAW,mDAAC,aAAQ,CACvB,CACF;AAAA;AAGF,eACE,mDAAC;AAAA,UACC,KAAK,GAAG,qBAAqB;AAAA,UAC7B,MAAK;AAAA,UACL,eAAa,iDAAyB,QAAQ,WAAW;AAAA,WAEzD,mDAAC;AAAA,UACC,KAAK;AAAA,UACL,SAAS;AAAA,UACT,WAAW;AAAA,UACX;AAAA,UACA,eAAa,iDAAyB,QAAQ,WAAW;AAAA,WACrD,cAEH,QAAQ,mDAAC,UAAK,GACd,SACC,mDAAC;AAAA,UAAY,eAAa,iDAAyB,QAAQ,WAAW;AAAA,WACnE,KACH,CAEJ,CACF;AAAA;AAAA,EAGR,CAAC,CACH;AAEJ,CACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|