@elliemae/ds-legacy-dropdownmenu 1.0.0-rc.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/DSDropdownMenu.js +50 -0
- package/dist/cjs/DSDropdownMenu.js.map +7 -0
- package/dist/cjs/DropdownMenuContext.js +37 -0
- package/dist/cjs/DropdownMenuContext.js.map +7 -0
- package/dist/cjs/DropdownMenuDataTestId.js +42 -0
- package/dist/cjs/DropdownMenuDataTestId.js.map +7 -0
- package/dist/cjs/config/useDropdownMenuConfig.js +114 -0
- package/dist/cjs/config/useDropdownMenuConfig.js.map +7 -0
- package/dist/cjs/config/useReferenceConfig.js +47 -0
- package/dist/cjs/config/useReferenceConfig.js.map +7 -0
- package/dist/cjs/deprecated/CustomPhoneRenderer.js +37 -0
- package/dist/cjs/deprecated/CustomPhoneRenderer.js.map +7 -0
- package/dist/cjs/deprecated/DSDropdownMenu.js +173 -0
- package/dist/cjs/deprecated/DSDropdownMenu.js.map +7 -0
- package/dist/cjs/deprecated/DropdownMenuContext.js +39 -0
- package/dist/cjs/deprecated/DropdownMenuContext.js.map +7 -0
- package/dist/cjs/deprecated/DropdownMenuLoadingIndicator.js +46 -0
- package/dist/cjs/deprecated/DropdownMenuLoadingIndicator.js.map +7 -0
- package/dist/cjs/deprecated/DropdownMenuProvider.js +109 -0
- package/dist/cjs/deprecated/DropdownMenuProvider.js.map +7 -0
- package/dist/cjs/deprecated/DropdownMenuRenderer.js +173 -0
- package/dist/cjs/deprecated/DropdownMenuRenderer.js.map +7 -0
- package/dist/cjs/deprecated/DropdownMenuWrapper.js +41 -0
- package/dist/cjs/deprecated/DropdownMenuWrapper.js.map +7 -0
- package/dist/cjs/deprecated/MenuItemClickableHOC.js +61 -0
- package/dist/cjs/deprecated/MenuItemClickableHOC.js.map +7 -0
- package/dist/cjs/deprecated/MenuItemGroupSelectionHOC.js +59 -0
- package/dist/cjs/deprecated/MenuItemGroupSelectionHOC.js.map +7 -0
- package/dist/cjs/deprecated/decoratedMenuItemFactory.js +49 -0
- package/dist/cjs/deprecated/decoratedMenuItemFactory.js.map +7 -0
- package/dist/cjs/deprecated/index.js +40 -0
- package/dist/cjs/deprecated/index.js.map +7 -0
- package/dist/cjs/exported-related/constants.js +45 -0
- package/dist/cjs/exported-related/constants.js.map +7 -0
- package/dist/cjs/exported-related/index.js +30 -0
- package/dist/cjs/exported-related/index.js.map +7 -0
- package/dist/cjs/hooks/index.js +32 -0
- package/dist/cjs/hooks/index.js.map +7 -0
- package/dist/cjs/hooks/useAutofocusContainerOnOpen.js +49 -0
- package/dist/cjs/hooks/useAutofocusContainerOnOpen.js.map +7 -0
- package/dist/cjs/hooks/useDropdownListboxHandlers.js +126 -0
- package/dist/cjs/hooks/useDropdownListboxHandlers.js.map +7 -0
- package/dist/cjs/hooks/useDropdownMenuItemHandlers.js +128 -0
- package/dist/cjs/hooks/useDropdownMenuItemHandlers.js.map +7 -0
- package/dist/cjs/hooks/useGetOptionSpecialAttributes.js +47 -0
- package/dist/cjs/hooks/useGetOptionSpecialAttributes.js.map +7 -0
- package/dist/cjs/index.js +46 -0
- package/dist/cjs/index.js.map +7 -0
- package/dist/cjs/package.json +7 -0
- package/dist/cjs/parts/DropdownMenuContent.js +100 -0
- package/dist/cjs/parts/DropdownMenuContent.js.map +7 -0
- package/dist/cjs/parts/DropdownMenuEmptyState.js +38 -0
- package/dist/cjs/parts/DropdownMenuEmptyState.js.map +7 -0
- package/dist/cjs/parts/DropdownMenuItemFactory.js +106 -0
- package/dist/cjs/parts/DropdownMenuItemFactory.js.map +7 -0
- package/dist/cjs/parts/DropdownMenuListBox.js +135 -0
- package/dist/cjs/parts/DropdownMenuListBox.js.map +7 -0
- package/dist/cjs/parts/DropdownMenuLoading.js +73 -0
- package/dist/cjs/parts/DropdownMenuLoading.js.map +7 -0
- package/dist/cjs/parts/DropdownMenuSkeleton.js +42 -0
- package/dist/cjs/parts/DropdownMenuSkeleton.js.map +7 -0
- package/dist/cjs/react-desc-prop-types.js +129 -0
- package/dist/cjs/react-desc-prop-types.js.map +7 -0
- package/dist/cjs/styled.js +120 -0
- package/dist/cjs/styled.js.map +7 -0
- package/dist/cjs/utils/findInCircularList.js +42 -0
- package/dist/cjs/utils/findInCircularList.js.map +7 -0
- package/dist/cjs/utils/index.js +32 -0
- package/dist/cjs/utils/index.js.map +7 -0
- package/dist/cjs/utils/isOptionFocuseable.js +36 -0
- package/dist/cjs/utils/isOptionFocuseable.js.map +7 -0
- package/dist/cjs/utils/manageOpenedSubmenus.js +67 -0
- package/dist/cjs/utils/manageOpenedSubmenus.js.map +7 -0
- package/dist/esm/DSDropdownMenu.js +20 -0
- package/dist/esm/DSDropdownMenu.js.map +7 -0
- package/dist/esm/DropdownMenuContext.js +7 -0
- package/dist/esm/DropdownMenuContext.js.map +7 -0
- package/dist/esm/DropdownMenuDataTestId.js +12 -0
- package/dist/esm/DropdownMenuDataTestId.js.map +7 -0
- package/dist/esm/config/useDropdownMenuConfig.js +84 -0
- package/dist/esm/config/useDropdownMenuConfig.js.map +7 -0
- package/dist/esm/config/useReferenceConfig.js +17 -0
- package/dist/esm/config/useReferenceConfig.js.map +7 -0
- package/dist/esm/deprecated/CustomPhoneRenderer.js +7 -0
- package/dist/esm/deprecated/CustomPhoneRenderer.js.map +7 -0
- package/dist/esm/deprecated/DSDropdownMenu.js +143 -0
- package/dist/esm/deprecated/DSDropdownMenu.js.map +7 -0
- package/dist/esm/deprecated/DropdownMenuContext.js +9 -0
- package/dist/esm/deprecated/DropdownMenuContext.js.map +7 -0
- package/dist/esm/deprecated/DropdownMenuLoadingIndicator.js +16 -0
- package/dist/esm/deprecated/DropdownMenuLoadingIndicator.js.map +7 -0
- package/dist/esm/deprecated/DropdownMenuProvider.js +79 -0
- package/dist/esm/deprecated/DropdownMenuProvider.js.map +7 -0
- package/dist/esm/deprecated/DropdownMenuRenderer.js +143 -0
- package/dist/esm/deprecated/DropdownMenuRenderer.js.map +7 -0
- package/dist/esm/deprecated/DropdownMenuWrapper.js +11 -0
- package/dist/esm/deprecated/DropdownMenuWrapper.js.map +7 -0
- package/dist/esm/deprecated/MenuItemClickableHOC.js +31 -0
- package/dist/esm/deprecated/MenuItemClickableHOC.js.map +7 -0
- package/dist/esm/deprecated/MenuItemGroupSelectionHOC.js +29 -0
- package/dist/esm/deprecated/MenuItemGroupSelectionHOC.js.map +7 -0
- package/dist/esm/deprecated/decoratedMenuItemFactory.js +19 -0
- package/dist/esm/deprecated/decoratedMenuItemFactory.js.map +7 -0
- package/dist/esm/deprecated/index.js +10 -0
- package/dist/esm/deprecated/index.js.map +7 -0
- package/dist/esm/exported-related/constants.js +15 -0
- package/dist/esm/exported-related/constants.js.map +7 -0
- package/dist/esm/exported-related/index.js +3 -0
- package/dist/esm/exported-related/index.js.map +7 -0
- package/dist/esm/hooks/index.js +5 -0
- package/dist/esm/hooks/index.js.map +7 -0
- package/dist/esm/hooks/useAutofocusContainerOnOpen.js +19 -0
- package/dist/esm/hooks/useAutofocusContainerOnOpen.js.map +7 -0
- package/dist/esm/hooks/useDropdownListboxHandlers.js +96 -0
- package/dist/esm/hooks/useDropdownListboxHandlers.js.map +7 -0
- package/dist/esm/hooks/useDropdownMenuItemHandlers.js +98 -0
- package/dist/esm/hooks/useDropdownMenuItemHandlers.js.map +7 -0
- package/dist/esm/hooks/useGetOptionSpecialAttributes.js +17 -0
- package/dist/esm/hooks/useGetOptionSpecialAttributes.js.map +7 -0
- package/dist/esm/index.js +15 -0
- package/dist/esm/index.js.map +7 -0
- package/dist/esm/package.json +7 -0
- package/dist/esm/parts/DropdownMenuContent.js +70 -0
- package/dist/esm/parts/DropdownMenuContent.js.map +7 -0
- package/dist/esm/parts/DropdownMenuEmptyState.js +8 -0
- package/dist/esm/parts/DropdownMenuEmptyState.js.map +7 -0
- package/dist/esm/parts/DropdownMenuItemFactory.js +85 -0
- package/dist/esm/parts/DropdownMenuItemFactory.js.map +7 -0
- package/dist/esm/parts/DropdownMenuListBox.js +105 -0
- package/dist/esm/parts/DropdownMenuListBox.js.map +7 -0
- package/dist/esm/parts/DropdownMenuLoading.js +43 -0
- package/dist/esm/parts/DropdownMenuLoading.js.map +7 -0
- package/dist/esm/parts/DropdownMenuSkeleton.js +12 -0
- package/dist/esm/parts/DropdownMenuSkeleton.js.map +7 -0
- package/dist/esm/react-desc-prop-types.js +102 -0
- package/dist/esm/react-desc-prop-types.js.map +7 -0
- package/dist/esm/styled.js +90 -0
- package/dist/esm/styled.js.map +7 -0
- package/dist/esm/utils/findInCircularList.js +12 -0
- package/dist/esm/utils/findInCircularList.js.map +7 -0
- package/dist/esm/utils/index.js +5 -0
- package/dist/esm/utils/index.js.map +7 -0
- package/dist/esm/utils/isOptionFocuseable.js +6 -0
- package/dist/esm/utils/isOptionFocuseable.js.map +7 -0
- package/dist/esm/utils/manageOpenedSubmenus.js +37 -0
- package/dist/esm/utils/manageOpenedSubmenus.js.map +7 -0
- package/dist/types/DSDropdownMenu.d.ts +5 -0
- package/dist/types/DropdownMenuContext.d.ts +3 -0
- package/dist/types/DropdownMenuDataTestId.d.ts +7 -0
- package/dist/types/config/useDropdownMenuConfig.d.ts +2 -0
- package/dist/types/config/useReferenceConfig.d.ts +7 -0
- package/dist/types/deprecated/CustomPhoneRenderer.d.ts +2 -0
- package/dist/types/deprecated/DSDropdownMenu.d.ts +110 -0
- package/dist/types/deprecated/DropdownMenuContext.d.ts +4 -0
- package/dist/types/deprecated/DropdownMenuLoadingIndicator.d.ts +3 -0
- package/dist/types/deprecated/DropdownMenuProvider.d.ts +12 -0
- package/dist/types/deprecated/DropdownMenuRenderer.d.ts +28 -0
- package/dist/types/deprecated/DropdownMenuWrapper.d.ts +3 -0
- package/dist/types/deprecated/MenuItemClickableHOC.d.ts +6 -0
- package/dist/types/deprecated/MenuItemGroupSelectionHOC.d.ts +6 -0
- package/dist/types/deprecated/decoratedMenuItemFactory.d.ts +2 -0
- package/dist/types/deprecated/index.d.ts +2 -0
- package/dist/types/exported-related/constants.d.ts +9 -0
- package/dist/types/exported-related/index.d.ts +1 -0
- package/dist/types/hooks/index.d.ts +3 -0
- package/dist/types/hooks/useAutofocusContainerOnOpen.d.ts +1 -0
- package/dist/types/hooks/useDropdownListboxHandlers.d.ts +8 -0
- package/dist/types/hooks/useDropdownMenuItemHandlers.d.ts +12 -0
- package/dist/types/hooks/useGetOptionSpecialAttributes.d.ts +3 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/parts/DropdownMenuContent.d.ts +2 -0
- package/dist/types/parts/DropdownMenuEmptyState.d.ts +8 -0
- package/dist/types/parts/DropdownMenuItemFactory.d.ts +8 -0
- package/dist/types/parts/DropdownMenuListBox.d.ts +2 -0
- package/dist/types/parts/DropdownMenuLoading.d.ts +2 -0
- package/dist/types/parts/DropdownMenuSkeleton.d.ts +1 -0
- package/dist/types/react-desc-prop-types.d.ts +120 -0
- package/dist/types/styled.d.ts +20 -0
- package/dist/types/tests/DSDropdownMenuV2.keyboardEvents.test.d.ts +1 -0
- package/dist/types/tests/DSDropdownMenuV2.pointerEvents.test.d.ts +1 -0
- package/dist/types/utils/findInCircularList.d.ts +1 -0
- package/dist/types/utils/index.d.ts +3 -0
- package/dist/types/utils/isOptionFocuseable.d.ts +2 -0
- package/dist/types/utils/manageOpenedSubmenus.d.ts +2 -0
- package/package.json +93 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/index.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["import DSDropdownMenu from './deprecated/index.js';\nimport type {} from '@xstyled/system';\n\nexport * from './DSDropdownMenu.js';\nexport * from './exported-related/index.js';\nexport type { DSDropdownMenuT } from './react-desc-prop-types.js';\nexport { DropdownMenuDataTestId } from './DropdownMenuDataTestId.js';\n\n// Deprecated part\nexport { DSDropdownMenu, DropdownMenuWithSchema, CustomPhoneRenderer } from './deprecated/index.js';\nexport default DSDropdownMenu;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,wBAA2B;AAG3B,wBAAc,gCAHd;AAIA,wBAAc,wCAJd;AAMA,oCAAuC;AAGvC,IAAAA,qBAA4E;AAC5E,IAAO,cAAQ,kBAAAC;",
|
|
6
|
+
"names": ["import_deprecated", "DSDropdownMenu"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var DropdownMenuContent_exports = {};
|
|
30
|
+
__export(DropdownMenuContent_exports, {
|
|
31
|
+
DropdownMenuContent: () => DropdownMenuContent
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(DropdownMenuContent_exports);
|
|
34
|
+
var React = __toESM(require("react"));
|
|
35
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
|
+
var import_react = require("react");
|
|
37
|
+
var import_ds_legacy_popperjs = require("@elliemae/ds-legacy-popperjs");
|
|
38
|
+
var import_ds_legacy_props_helpers = require("@elliemae/ds-legacy-props-helpers");
|
|
39
|
+
var import_DropdownMenuDataTestId = require("../DropdownMenuDataTestId.js");
|
|
40
|
+
var import_styled = require("../styled.js");
|
|
41
|
+
var import_DropdownMenuListBox = require("./DropdownMenuListBox.js");
|
|
42
|
+
var import_DropdownMenuContext = require("../DropdownMenuContext.js");
|
|
43
|
+
var import_DropdownMenuLoading = require("./DropdownMenuLoading.js");
|
|
44
|
+
const DropdownMenuContent = () => {
|
|
45
|
+
const { props, triggerReferenceElement, setTriggerReferenceElement } = (0, import_react.useContext)(import_DropdownMenuContext.DSDropdownMenuContext);
|
|
46
|
+
const {
|
|
47
|
+
children,
|
|
48
|
+
isOpened,
|
|
49
|
+
onClickOutside,
|
|
50
|
+
startPlacementPreference,
|
|
51
|
+
placementOrderPreference,
|
|
52
|
+
customOffset,
|
|
53
|
+
wrapperStyles,
|
|
54
|
+
isLoading,
|
|
55
|
+
zIndex,
|
|
56
|
+
as
|
|
57
|
+
} = props;
|
|
58
|
+
const { "data-popover-label": dataPopoverLabel, ...globalAttributes } = (0, import_ds_legacy_props_helpers.useGetGlobalAttributes)(props);
|
|
59
|
+
const { minWidth, minHeight, ...restXstyledProps } = (0, import_ds_legacy_props_helpers.useGetXstyledProps)(props);
|
|
60
|
+
const onClickOutsideHandler = (e) => {
|
|
61
|
+
const dropdownListboxes = [
|
|
62
|
+
...document.body.querySelectorAll(`[data-testid="${import_DropdownMenuDataTestId.DropdownMenuDataTestId.MENU_WRAPPER}"]`)
|
|
63
|
+
];
|
|
64
|
+
if (dropdownListboxes.every((listbox) => !listbox.contains(e.target))) {
|
|
65
|
+
onClickOutside(e);
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
69
|
+
import_styled.StyledTriggerWrapper,
|
|
70
|
+
{
|
|
71
|
+
"data-testid": `${import_DropdownMenuDataTestId.DropdownMenuDataTestId.TRIGGER_WRAPPER}`,
|
|
72
|
+
ref: setTriggerReferenceElement,
|
|
73
|
+
"aria-haspopup": "listbox",
|
|
74
|
+
...wrapperStyles,
|
|
75
|
+
...globalAttributes,
|
|
76
|
+
...restXstyledProps,
|
|
77
|
+
as,
|
|
78
|
+
children: [
|
|
79
|
+
children,
|
|
80
|
+
triggerReferenceElement && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
81
|
+
import_ds_legacy_popperjs.DSPopperJS,
|
|
82
|
+
{
|
|
83
|
+
referenceElement: triggerReferenceElement,
|
|
84
|
+
showPopover: isOpened,
|
|
85
|
+
withoutArrow: true,
|
|
86
|
+
withoutAnimation: true,
|
|
87
|
+
customOffset,
|
|
88
|
+
onClickOutside: onClickOutsideHandler,
|
|
89
|
+
startPlacementPreference,
|
|
90
|
+
placementOrderPreference,
|
|
91
|
+
zIndex,
|
|
92
|
+
"aria-label": dataPopoverLabel || "dropdown-menu popover",
|
|
93
|
+
children: isLoading ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DropdownMenuLoading.DropdownMenuLoading, {}) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DropdownMenuListBox.DropdownMenuListBox, {})
|
|
94
|
+
}
|
|
95
|
+
)
|
|
96
|
+
]
|
|
97
|
+
}
|
|
98
|
+
);
|
|
99
|
+
};
|
|
100
|
+
//# sourceMappingURL=DropdownMenuContent.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/parts/DropdownMenuContent.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["/* eslint-disable no-unused-vars */\nimport React, { useContext } from 'react';\nimport { DSPopperJS } from '@elliemae/ds-legacy-popperjs';\nimport { useGetGlobalAttributes, useGetXstyledProps } from '@elliemae/ds-legacy-props-helpers';\nimport { DropdownMenuDataTestId } from '../DropdownMenuDataTestId.js';\nimport { StyledTriggerWrapper } from '../styled.js';\nimport { DropdownMenuListBox } from './DropdownMenuListBox.js';\nimport { DSDropdownMenuContext } from '../DropdownMenuContext.js';\nimport { DropdownMenuLoading } from './DropdownMenuLoading.js';\n\nexport const DropdownMenuContent: React.ComponentType<Record<string, never>> = () => {\n const { props, triggerReferenceElement, setTriggerReferenceElement } = useContext(DSDropdownMenuContext);\n\n const {\n children,\n isOpened,\n onClickOutside,\n startPlacementPreference,\n placementOrderPreference,\n customOffset,\n wrapperStyles,\n isLoading,\n zIndex,\n as,\n } = props;\n const { 'data-popover-label': dataPopoverLabel, ...globalAttributes } = useGetGlobalAttributes(props);\n // we need to exclude this props from the xstyled props because there is a conflict\n // using submenus items with the name of the prop of ddmenu and xstyled\n const { minWidth, minHeight, ...restXstyledProps } = useGetXstyledProps(props);\n const onClickOutsideHandler = (e: MouseEvent | TouchEvent) => {\n // We need to find out if the click was originated inside a child's dropdownmenu\n const dropdownListboxes = [\n ...document.body.querySelectorAll(`[data-testid=\"${DropdownMenuDataTestId.MENU_WRAPPER}\"]`),\n ];\n if (dropdownListboxes.every((listbox) => !listbox.contains(e.target as Node))) {\n onClickOutside(e);\n }\n };\n\n return (\n <StyledTriggerWrapper\n data-testid={`${DropdownMenuDataTestId.TRIGGER_WRAPPER}`}\n ref={setTriggerReferenceElement}\n aria-haspopup=\"listbox\"\n {...wrapperStyles}\n {...globalAttributes}\n {...restXstyledProps}\n as={as}\n >\n {children}\n {triggerReferenceElement && (\n <DSPopperJS\n referenceElement={triggerReferenceElement}\n showPopover={isOpened}\n withoutArrow\n withoutAnimation\n customOffset={customOffset}\n onClickOutside={onClickOutsideHandler}\n startPlacementPreference={startPlacementPreference}\n placementOrderPreference={placementOrderPreference}\n zIndex={zIndex}\n aria-label={(dataPopoverLabel as string) || 'dropdown-menu popover'}\n >\n {isLoading ? <DropdownMenuLoading /> : <DropdownMenuListBox />}\n </DSPopperJS>\n )}\n </StyledTriggerWrapper>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADwCnB;AAvCJ,mBAAkC;AAClC,gCAA2B;AAC3B,qCAA2D;AAC3D,oCAAuC;AACvC,oBAAqC;AACrC,iCAAoC;AACpC,iCAAsC;AACtC,iCAAoC;AAE7B,MAAM,sBAAkE,MAAM;AACnF,QAAM,EAAE,OAAO,yBAAyB,2BAA2B,QAAI,yBAAW,gDAAqB;AAEvG,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AACJ,QAAM,EAAE,sBAAsB,kBAAkB,GAAG,iBAAiB,QAAI,uDAAuB,KAAK;AAGpG,QAAM,EAAE,UAAU,WAAW,GAAG,iBAAiB,QAAI,mDAAmB,KAAK;AAC7E,QAAM,wBAAwB,CAAC,MAA+B;AAE5D,UAAM,oBAAoB;AAAA,MACxB,GAAG,SAAS,KAAK,iBAAiB,iBAAiB,qDAAuB,gBAAgB;AAAA,IAC5F;AACA,QAAI,kBAAkB,MAAM,CAAC,YAAY,CAAC,QAAQ,SAAS,EAAE,MAAc,CAAC,GAAG;AAC7E,qBAAe,CAAC;AAAA,IAClB;AAAA,EACF;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAa,GAAG,qDAAuB;AAAA,MACvC,KAAK;AAAA,MACL,iBAAc;AAAA,MACb,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACJ;AAAA,MAEC;AAAA;AAAA,QACA,2BACC;AAAA,UAAC;AAAA;AAAA,YACC,kBAAkB;AAAA,YAClB,aAAa;AAAA,YACb,cAAY;AAAA,YACZ,kBAAgB;AAAA,YAChB;AAAA,YACA,gBAAgB;AAAA,YAChB;AAAA,YACA;AAAA,YACA;AAAA,YACA,cAAa,oBAA+B;AAAA,YAE3C,sBAAY,4CAAC,kDAAoB,IAAK,4CAAC,kDAAoB;AAAA;AAAA,QAC9D;AAAA;AAAA;AAAA,EAEJ;AAEJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var DropdownMenuEmptyState_exports = {};
|
|
30
|
+
__export(DropdownMenuEmptyState_exports, {
|
|
31
|
+
DropdownMenuEmptyState: () => DropdownMenuEmptyState
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(DropdownMenuEmptyState_exports);
|
|
34
|
+
var React = __toESM(require("react"));
|
|
35
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
|
+
var import_styled = require("../styled.js");
|
|
37
|
+
const DropdownMenuEmptyState = (props) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledEmptyStateWrapper, { px: "xxs", py: "xxxs", role: "alert", ...props, children: "No content available" });
|
|
38
|
+
//# sourceMappingURL=DropdownMenuEmptyState.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/parts/DropdownMenuEmptyState.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["import React from 'react';\nimport { StyledEmptyStateWrapper } from '../styled.js';\nimport type { SizingProps } from '@elliemae/ds-legacy-system';\n\ninterface DropdownMenuEmptyStateProps {\n minWidth: SizingProps['minWidth'];\n maxHeight: SizingProps['maxHeight'];\n}\nexport const DropdownMenuEmptyState: React.FC<DropdownMenuEmptyStateProps> = (props) => (\n <StyledEmptyStateWrapper px=\"xxs\" py=\"xxxs\" role=\"alert\" {...props}>\n No content available\n </StyledEmptyStateWrapper>\n);\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADSrB;AARF,oBAAwC;AAOjC,MAAM,yBAAgE,CAAC,UAC5E,4CAAC,yCAAwB,IAAG,OAAM,IAAG,QAAO,MAAK,SAAS,GAAG,OAAO,kCAEpE;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var DropdownMenuItemFactory_exports = {};
|
|
30
|
+
__export(DropdownMenuItemFactory_exports, {
|
|
31
|
+
DropdownMenuItemFactory: () => DropdownMenuItemFactory
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(DropdownMenuItemFactory_exports);
|
|
34
|
+
var React = __toESM(require("react"));
|
|
35
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
|
+
var import_react = require("react");
|
|
37
|
+
var import_ds_legacy_menu_items = require("@elliemae/ds-legacy-menu-items");
|
|
38
|
+
var import_DropdownMenuContext = require("../DropdownMenuContext.js");
|
|
39
|
+
var import_hooks = require("../hooks/index.js");
|
|
40
|
+
const menuItemMap = {
|
|
41
|
+
action: import_ds_legacy_menu_items.ActionMenuItem,
|
|
42
|
+
single: import_ds_legacy_menu_items.SingleMenuItem,
|
|
43
|
+
checkbox: import_ds_legacy_menu_items.MultiMenuItem,
|
|
44
|
+
submenu: import_ds_legacy_menu_items.SubmenuItem,
|
|
45
|
+
separator: import_ds_legacy_menu_items.Separator,
|
|
46
|
+
section: import_ds_legacy_menu_items.Section,
|
|
47
|
+
singleWithSubmenu: import_ds_legacy_menu_items.SingleWithSubmenuItem,
|
|
48
|
+
skeleton: import_ds_legacy_menu_items.SkeletonMenuItem
|
|
49
|
+
};
|
|
50
|
+
const DropdownMenuItemFactory = ({ option, style, innerRef, optionsShouldHavePadding }) => {
|
|
51
|
+
const {
|
|
52
|
+
props: { selectedOptions, onOptionClick, openedSubmenus, onSubmenuToggle, onClickOutside },
|
|
53
|
+
activeDescendant,
|
|
54
|
+
DSDropdownMenuV2
|
|
55
|
+
} = (0, import_react.useContext)(import_DropdownMenuContext.DSDropdownMenuContext);
|
|
56
|
+
if (!(option.type in menuItemMap)) {
|
|
57
|
+
throw new Error(
|
|
58
|
+
`Provided option type (${option.type}) is not valid. Please provide one of ${Object.keys(menuItemMap).join(
|
|
59
|
+
", "
|
|
60
|
+
)}`
|
|
61
|
+
);
|
|
62
|
+
}
|
|
63
|
+
const type = option.type;
|
|
64
|
+
const Component = menuItemMap[type];
|
|
65
|
+
const { onDropdownKeyDown, ...handlers } = (0, import_hooks.useDropdownMenuItemHandlers)(option);
|
|
66
|
+
const itemProps = (0, import_react.useMemo)(
|
|
67
|
+
() => ({
|
|
68
|
+
...handlers,
|
|
69
|
+
innerRef,
|
|
70
|
+
isActive: activeDescendant === option.dsId,
|
|
71
|
+
isSelected: selectedOptions ? !!selectedOptions[option.dsId] : false,
|
|
72
|
+
isSubmenuOpened: openedSubmenus ? !!openedSubmenus[option.dsId] : false,
|
|
73
|
+
tabIndex: -1,
|
|
74
|
+
optionsShouldHavePadding,
|
|
75
|
+
wrapperStyles: style,
|
|
76
|
+
Dropdown: DSDropdownMenuV2,
|
|
77
|
+
dropdownProps: {
|
|
78
|
+
...option,
|
|
79
|
+
options: option.type === "submenu" || option.type === "singleWithSubmenu" ? option.options : [],
|
|
80
|
+
onClickOutside,
|
|
81
|
+
onOptionClick,
|
|
82
|
+
onSubmenuToggle,
|
|
83
|
+
selectedOptions,
|
|
84
|
+
openedSubmenus,
|
|
85
|
+
onKeyDown: onDropdownKeyDown
|
|
86
|
+
}
|
|
87
|
+
}),
|
|
88
|
+
[
|
|
89
|
+
handlers,
|
|
90
|
+
innerRef,
|
|
91
|
+
activeDescendant,
|
|
92
|
+
option,
|
|
93
|
+
selectedOptions,
|
|
94
|
+
openedSubmenus,
|
|
95
|
+
optionsShouldHavePadding,
|
|
96
|
+
style,
|
|
97
|
+
DSDropdownMenuV2,
|
|
98
|
+
onClickOutside,
|
|
99
|
+
onOptionClick,
|
|
100
|
+
onSubmenuToggle,
|
|
101
|
+
onDropdownKeyDown
|
|
102
|
+
]
|
|
103
|
+
);
|
|
104
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { ...option, ...itemProps });
|
|
105
|
+
};
|
|
106
|
+
//# sourceMappingURL=DropdownMenuItemFactory.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/parts/DropdownMenuItemFactory.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["/* eslint-disable react/prop-types */\nimport React, { useContext, useMemo } from 'react';\nimport {\n ActionMenuItem,\n SingleMenuItem,\n MultiMenuItem,\n SubmenuItem,\n Separator,\n Section,\n SingleWithSubmenuItem,\n SkeletonMenuItem,\n} from '@elliemae/ds-legacy-menu-items';\nimport type { DSDropdownMenuT } from '../react-desc-prop-types.js';\nimport { DSDropdownMenuContext } from '../DropdownMenuContext.js';\nimport { useDropdownMenuItemHandlers } from '../hooks/index.js';\n\nconst menuItemMap = {\n action: ActionMenuItem,\n single: SingleMenuItem,\n checkbox: MultiMenuItem,\n submenu: SubmenuItem,\n separator: Separator,\n section: Section,\n singleWithSubmenu: SingleWithSubmenuItem,\n skeleton: SkeletonMenuItem,\n};\n\nexport const DropdownMenuItemFactory: React.ComponentType<{\n option: DSDropdownMenuT.Item;\n style?: Record<string, unknown>;\n innerRef?: (el: HTMLElement) => void;\n optionsShouldHavePadding: boolean;\n}> = ({ option, style, innerRef, optionsShouldHavePadding }): JSX.Element => {\n const {\n props: { selectedOptions, onOptionClick, openedSubmenus, onSubmenuToggle, onClickOutside },\n activeDescendant,\n DSDropdownMenuV2,\n } = useContext(DSDropdownMenuContext);\n\n if (!(option.type in menuItemMap)) {\n throw new Error(\n `Provided option type (${option.type}) is not valid. Please provide one of ${Object.keys(menuItemMap).join(\n ', ',\n )}`,\n );\n }\n const type = option.type as\n | 'action'\n | 'single'\n | 'checkbox'\n | 'separator'\n | 'section'\n | 'skeleton'\n | 'singleWithSubmenu';\n\n const Component = menuItemMap[type];\n\n const { onDropdownKeyDown, ...handlers } = useDropdownMenuItemHandlers(option);\n\n const itemProps = useMemo(\n () => ({\n ...handlers,\n innerRef,\n isActive: activeDescendant === option.dsId,\n isSelected: selectedOptions ? !!selectedOptions[option.dsId] : false,\n isSubmenuOpened: openedSubmenus ? !!openedSubmenus[option.dsId] : false,\n tabIndex: -1 as const,\n optionsShouldHavePadding,\n wrapperStyles: style,\n Dropdown: DSDropdownMenuV2,\n dropdownProps: {\n ...option,\n options: option.type === 'submenu' || option.type === 'singleWithSubmenu' ? option.options : [],\n onClickOutside,\n onOptionClick,\n onSubmenuToggle,\n selectedOptions,\n openedSubmenus,\n onKeyDown: onDropdownKeyDown,\n },\n }),\n [\n handlers,\n innerRef,\n activeDescendant,\n option,\n selectedOptions,\n openedSubmenus,\n optionsShouldHavePadding,\n style,\n DSDropdownMenuV2,\n onClickOutside,\n onOptionClick,\n onSubmenuToggle,\n onDropdownKeyDown,\n ],\n );\n\n return <Component {...option} {...itemProps} />;\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADkGd;AAjGT,mBAA2C;AAC3C,kCASO;AAEP,iCAAsC;AACtC,mBAA4C;AAE5C,MAAM,cAAc;AAAA,EAClB,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,SAAS;AAAA,EACT,WAAW;AAAA,EACX,SAAS;AAAA,EACT,mBAAmB;AAAA,EACnB,UAAU;AACZ;AAEO,MAAM,0BAKR,CAAC,EAAE,QAAQ,OAAO,UAAU,yBAAyB,MAAmB;AAC3E,QAAM;AAAA,IACJ,OAAO,EAAE,iBAAiB,eAAe,gBAAgB,iBAAiB,eAAe;AAAA,IACzF;AAAA,IACA;AAAA,EACF,QAAI,yBAAW,gDAAqB;AAEpC,MAAI,EAAE,OAAO,QAAQ,cAAc;AACjC,UAAM,IAAI;AAAA,MACR,yBAAyB,OAAO,6CAA6C,OAAO,KAAK,WAAW,EAAE;AAAA,QACpG;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACA,QAAM,OAAO,OAAO;AASpB,QAAM,YAAY,YAAY,IAAI;AAElC,QAAM,EAAE,mBAAmB,GAAG,SAAS,QAAI,0CAA4B,MAAM;AAE7E,QAAM,gBAAY;AAAA,IAChB,OAAO;AAAA,MACL,GAAG;AAAA,MACH;AAAA,MACA,UAAU,qBAAqB,OAAO;AAAA,MACtC,YAAY,kBAAkB,CAAC,CAAC,gBAAgB,OAAO,IAAI,IAAI;AAAA,MAC/D,iBAAiB,iBAAiB,CAAC,CAAC,eAAe,OAAO,IAAI,IAAI;AAAA,MAClE,UAAU;AAAA,MACV;AAAA,MACA,eAAe;AAAA,MACf,UAAU;AAAA,MACV,eAAe;AAAA,QACb,GAAG;AAAA,QACH,SAAS,OAAO,SAAS,aAAa,OAAO,SAAS,sBAAsB,OAAO,UAAU,CAAC;AAAA,QAC9F;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,WAAW;AAAA,MACb;AAAA,IACF;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,SAAO,4CAAC,aAAW,GAAG,QAAS,GAAG,WAAW;AAC/C;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var DropdownMenuListBox_exports = {};
|
|
30
|
+
__export(DropdownMenuListBox_exports, {
|
|
31
|
+
DropdownMenuListBox: () => DropdownMenuListBox
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(DropdownMenuListBox_exports);
|
|
34
|
+
var React = __toESM(require("react"));
|
|
35
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
|
+
var import_react = require("react");
|
|
37
|
+
var import_ds_legacy_form_input_text = require("@elliemae/ds-legacy-form-input-text");
|
|
38
|
+
var import_DropdownMenuContext = require("../DropdownMenuContext.js");
|
|
39
|
+
var import_DropdownMenuDataTestId = require("../DropdownMenuDataTestId.js");
|
|
40
|
+
var import_useDropdownListboxHandlers = require("../hooks/useDropdownListboxHandlers.js");
|
|
41
|
+
var import_styled = require("../styled.js");
|
|
42
|
+
var import_DropdownMenuEmptyState = require("./DropdownMenuEmptyState.js");
|
|
43
|
+
var import_DropdownMenuItemFactory = require("./DropdownMenuItemFactory.js");
|
|
44
|
+
var import_DropdownMenuSkeleton = require("./DropdownMenuSkeleton.js");
|
|
45
|
+
var import_hooks = require("../hooks/index.js");
|
|
46
|
+
const DropdownMenuListBox = () => {
|
|
47
|
+
const ctx = (0, import_react.useContext)(import_DropdownMenuContext.DSDropdownMenuContext);
|
|
48
|
+
const {
|
|
49
|
+
triggerReferenceElement,
|
|
50
|
+
props: {
|
|
51
|
+
isSkeleton,
|
|
52
|
+
options,
|
|
53
|
+
hasInput,
|
|
54
|
+
inputValue,
|
|
55
|
+
onInputChange,
|
|
56
|
+
HeaderComp,
|
|
57
|
+
minWidth: userMinWidth,
|
|
58
|
+
maxHeight: userMaxHeight
|
|
59
|
+
},
|
|
60
|
+
activeDescendant,
|
|
61
|
+
listboxReference,
|
|
62
|
+
inputReference,
|
|
63
|
+
virtualListHelpers: { totalSize, virtualItems }
|
|
64
|
+
} = ctx;
|
|
65
|
+
(0, import_hooks.useAutofocusContainerOnOpen)();
|
|
66
|
+
const { onKeyDown, onMouseEnter, onMouseLeave } = (0, import_useDropdownListboxHandlers.useDropdownListboxHandlers)();
|
|
67
|
+
const { optionsShouldHavePadding } = (0, import_hooks.useGetOptionSpecialAttributes)();
|
|
68
|
+
const minWidth = (0, import_react.useMemo)(
|
|
69
|
+
() => userMinWidth !== void 0 ? userMinWidth : Math.max(triggerReferenceElement?.offsetWidth ?? 0, 162),
|
|
70
|
+
[triggerReferenceElement?.offsetWidth, userMinWidth]
|
|
71
|
+
);
|
|
72
|
+
return (0, import_react.useMemo)(() => {
|
|
73
|
+
if (virtualItems.length === 0) {
|
|
74
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DropdownMenuEmptyState.DropdownMenuEmptyState, { minWidth, maxHeight: userMaxHeight || 400 });
|
|
75
|
+
}
|
|
76
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
77
|
+
import_styled.StyledListBoxWrapper,
|
|
78
|
+
{
|
|
79
|
+
minWidth,
|
|
80
|
+
maxHeight: userMaxHeight || 400,
|
|
81
|
+
ref: listboxReference,
|
|
82
|
+
tabIndex: 0,
|
|
83
|
+
"data-testid": import_DropdownMenuDataTestId.DropdownMenuDataTestId.MENU_WRAPPER,
|
|
84
|
+
onKeyDown,
|
|
85
|
+
onMouseEnter,
|
|
86
|
+
onMouseLeave,
|
|
87
|
+
hasHeader: !!HeaderComp,
|
|
88
|
+
children: isSkeleton ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DropdownMenuSkeleton.DropdownMenuSkeleton, {}) : /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
89
|
+
HeaderComp && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledHeaderWrapper, { alignItems: "center", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(HeaderComp, { ctx }) }),
|
|
90
|
+
hasInput && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.StyledInputWrapper, { hasHeader: !!HeaderComp, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_form_input_text.DSInputText, { value: inputValue, onChange: onInputChange, innerRef: inputReference }) }, "dropdown-listbox-input-wrapper"),
|
|
91
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
92
|
+
import_styled.StyledOptionListWrapper,
|
|
93
|
+
{
|
|
94
|
+
"aria-activedescendant": activeDescendant,
|
|
95
|
+
"data-testid": import_DropdownMenuDataTestId.DropdownMenuDataTestId.LISTBOX,
|
|
96
|
+
role: "listbox",
|
|
97
|
+
"aria-label": "List of options",
|
|
98
|
+
style: { height: totalSize || 16 },
|
|
99
|
+
children: virtualItems.map((vItem) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
100
|
+
import_DropdownMenuItemFactory.DropdownMenuItemFactory,
|
|
101
|
+
{
|
|
102
|
+
option: options[vItem.index],
|
|
103
|
+
style: { position: "absolute", top: vItem.start, left: 0, width: "100%" },
|
|
104
|
+
innerRef: vItem.measureRef,
|
|
105
|
+
optionsShouldHavePadding
|
|
106
|
+
},
|
|
107
|
+
`dropdown-listbox-option-${options[vItem.index].dsId}`
|
|
108
|
+
))
|
|
109
|
+
}
|
|
110
|
+
)
|
|
111
|
+
] })
|
|
112
|
+
}
|
|
113
|
+
);
|
|
114
|
+
}, [
|
|
115
|
+
HeaderComp,
|
|
116
|
+
activeDescendant,
|
|
117
|
+
ctx,
|
|
118
|
+
hasInput,
|
|
119
|
+
inputReference,
|
|
120
|
+
inputValue,
|
|
121
|
+
isSkeleton,
|
|
122
|
+
listboxReference,
|
|
123
|
+
minWidth,
|
|
124
|
+
onInputChange,
|
|
125
|
+
onKeyDown,
|
|
126
|
+
onMouseEnter,
|
|
127
|
+
onMouseLeave,
|
|
128
|
+
options,
|
|
129
|
+
optionsShouldHavePadding,
|
|
130
|
+
totalSize,
|
|
131
|
+
userMaxHeight,
|
|
132
|
+
virtualItems
|
|
133
|
+
]);
|
|
134
|
+
};
|
|
135
|
+
//# sourceMappingURL=DropdownMenuListBox.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/parts/DropdownMenuListBox.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["import React, { useContext, useMemo } from 'react';\nimport { DSInputText } from '@elliemae/ds-legacy-form-input-text';\nimport { DSDropdownMenuContext } from '../DropdownMenuContext.js';\nimport { DropdownMenuDataTestId } from '../DropdownMenuDataTestId.js';\nimport { useDropdownListboxHandlers } from '../hooks/useDropdownListboxHandlers.js';\nimport { StyledInputWrapper, StyledListBoxWrapper, StyledHeaderWrapper, StyledOptionListWrapper } from '../styled.js';\nimport { DropdownMenuEmptyState } from './DropdownMenuEmptyState.js';\nimport { DropdownMenuItemFactory } from './DropdownMenuItemFactory.js';\nimport { DropdownMenuSkeleton } from './DropdownMenuSkeleton.js';\n\nimport { useAutofocusContainerOnOpen, useGetOptionSpecialAttributes } from '../hooks/index.js';\n\nexport const DropdownMenuListBox: React.ComponentType<Record<string, never>> = () => {\n const ctx = useContext(DSDropdownMenuContext);\n const {\n triggerReferenceElement,\n props: {\n isSkeleton,\n options,\n hasInput,\n inputValue,\n onInputChange,\n HeaderComp,\n minWidth: userMinWidth,\n maxHeight: userMaxHeight,\n },\n activeDescendant,\n listboxReference,\n inputReference,\n virtualListHelpers: { totalSize, virtualItems },\n } = ctx;\n\n useAutofocusContainerOnOpen();\n\n const { onKeyDown, onMouseEnter, onMouseLeave } = useDropdownListboxHandlers();\n\n const { optionsShouldHavePadding } = useGetOptionSpecialAttributes();\n\n const minWidth = useMemo(\n () => (userMinWidth !== undefined ? userMinWidth : Math.max(triggerReferenceElement?.offsetWidth ?? 0, 162)),\n [triggerReferenceElement?.offsetWidth, userMinWidth],\n );\n\n return useMemo(() => {\n if (virtualItems.length === 0) {\n return <DropdownMenuEmptyState minWidth={minWidth} maxHeight={userMaxHeight || 400} />;\n }\n return (\n <StyledListBoxWrapper\n minWidth={minWidth}\n maxHeight={userMaxHeight || 400}\n ref={listboxReference}\n tabIndex={0}\n data-testid={DropdownMenuDataTestId.MENU_WRAPPER}\n onKeyDown={onKeyDown}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n hasHeader={!!HeaderComp}\n >\n {isSkeleton ? (\n <DropdownMenuSkeleton />\n ) : (\n <>\n {HeaderComp && (\n <StyledHeaderWrapper alignItems=\"center\">\n <HeaderComp ctx={ctx} />\n </StyledHeaderWrapper>\n )}\n {hasInput && (\n <StyledInputWrapper key=\"dropdown-listbox-input-wrapper\" hasHeader={!!HeaderComp}>\n <DSInputText value={inputValue} onChange={onInputChange} innerRef={inputReference} />\n </StyledInputWrapper>\n )}\n <StyledOptionListWrapper\n aria-activedescendant={activeDescendant}\n data-testid={DropdownMenuDataTestId.LISTBOX}\n role=\"listbox\"\n aria-label=\"List of options\"\n style={{ height: totalSize || 16 }}\n >\n {virtualItems.map((vItem) => (\n <DropdownMenuItemFactory\n option={options[vItem.index]}\n style={{ position: 'absolute', top: vItem.start, left: 0, width: '100%' }}\n key={`dropdown-listbox-option-${options[vItem.index].dsId}`}\n innerRef={vItem.measureRef}\n optionsShouldHavePadding={optionsShouldHavePadding}\n />\n ))}\n </StyledOptionListWrapper>\n </>\n )}\n </StyledListBoxWrapper>\n );\n }, [\n HeaderComp,\n activeDescendant,\n ctx,\n hasInput,\n inputReference,\n inputValue,\n isSkeleton,\n listboxReference,\n minWidth,\n onInputChange,\n onKeyDown,\n onMouseEnter,\n onMouseLeave,\n options,\n optionsShouldHavePadding,\n totalSize,\n userMaxHeight,\n virtualItems,\n ]);\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;AD6CV;AA7Cb,mBAA2C;AAC3C,uCAA4B;AAC5B,iCAAsC;AACtC,oCAAuC;AACvC,wCAA2C;AAC3C,oBAAuG;AACvG,oCAAuC;AACvC,qCAAwC;AACxC,kCAAqC;AAErC,mBAA2E;AAEpE,MAAM,sBAAkE,MAAM;AACnF,QAAM,UAAM,yBAAW,gDAAqB;AAC5C,QAAM;AAAA,IACJ;AAAA,IACA,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,UAAU;AAAA,MACV,WAAW;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,oBAAoB,EAAE,WAAW,aAAa;AAAA,EAChD,IAAI;AAEJ,gDAA4B;AAE5B,QAAM,EAAE,WAAW,cAAc,aAAa,QAAI,8DAA2B;AAE7E,QAAM,EAAE,yBAAyB,QAAI,4CAA8B;AAEnE,QAAM,eAAW;AAAA,IACf,MAAO,iBAAiB,SAAY,eAAe,KAAK,IAAI,yBAAyB,eAAe,GAAG,GAAG;AAAA,IAC1G,CAAC,yBAAyB,aAAa,YAAY;AAAA,EACrD;AAEA,aAAO,sBAAQ,MAAM;AACnB,QAAI,aAAa,WAAW,GAAG;AAC7B,aAAO,4CAAC,wDAAuB,UAAoB,WAAW,iBAAiB,KAAK;AAAA,IACtF;AACA,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,WAAW,iBAAiB;AAAA,QAC5B,KAAK;AAAA,QACL,UAAU;AAAA,QACV,eAAa,qDAAuB;AAAA,QACpC;AAAA,QACA;AAAA,QACA;AAAA,QACA,WAAW,CAAC,CAAC;AAAA,QAEZ,uBACC,4CAAC,oDAAqB,IAEtB,4EACG;AAAA,wBACC,4CAAC,qCAAoB,YAAW,UAC9B,sDAAC,cAAW,KAAU,GACxB;AAAA,UAED,YACC,4CAAC,oCAAwD,WAAW,CAAC,CAAC,YACpE,sDAAC,gDAAY,OAAO,YAAY,UAAU,eAAe,UAAU,gBAAgB,KAD7D,gCAExB;AAAA,UAEF;AAAA,YAAC;AAAA;AAAA,cACC,yBAAuB;AAAA,cACvB,eAAa,qDAAuB;AAAA,cACpC,MAAK;AAAA,cACL,cAAW;AAAA,cACX,OAAO,EAAE,QAAQ,aAAa,GAAG;AAAA,cAEhC,uBAAa,IAAI,CAAC,UACjB;AAAA,gBAAC;AAAA;AAAA,kBACC,QAAQ,QAAQ,MAAM,KAAK;AAAA,kBAC3B,OAAO,EAAE,UAAU,YAAY,KAAK,MAAM,OAAO,MAAM,GAAG,OAAO,OAAO;AAAA,kBAExE,UAAU,MAAM;AAAA,kBAChB;AAAA;AAAA,gBAFK,2BAA2B,QAAQ,MAAM,KAAK,EAAE;AAAA,cAGvD,CACD;AAAA;AAAA,UACH;AAAA,WACF;AAAA;AAAA,IAEJ;AAAA,EAEJ,GAAG;AAAA,IACD;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACH;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var DropdownMenuLoading_exports = {};
|
|
30
|
+
__export(DropdownMenuLoading_exports, {
|
|
31
|
+
DropdownMenuLoading: () => DropdownMenuLoading
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(DropdownMenuLoading_exports);
|
|
34
|
+
var React = __toESM(require("react"));
|
|
35
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
|
+
var import_react = require("react");
|
|
37
|
+
var import_ds_legacy_circular_progress_indicator = require("@elliemae/ds-legacy-circular-progress-indicator");
|
|
38
|
+
var import_DropdownMenuContext = require("../DropdownMenuContext.js");
|
|
39
|
+
var import_DropdownMenuDataTestId = require("../DropdownMenuDataTestId.js");
|
|
40
|
+
var import_styled = require("../styled.js");
|
|
41
|
+
const DropdownMenuLoading = () => {
|
|
42
|
+
const {
|
|
43
|
+
props: { onClickOutside },
|
|
44
|
+
triggerReferenceElement
|
|
45
|
+
} = (0, import_react.useContext)(import_DropdownMenuContext.DSDropdownMenuContext);
|
|
46
|
+
const loadingRef = (0, import_react.useRef)(null);
|
|
47
|
+
(0, import_react.useLayoutEffect)(() => {
|
|
48
|
+
loadingRef.current?.focus();
|
|
49
|
+
}, [loadingRef]);
|
|
50
|
+
const onKeyDown = (0, import_react.useCallback)(
|
|
51
|
+
(e) => {
|
|
52
|
+
if (e.code === "Escape" || e.code === "ArrowLeft")
|
|
53
|
+
onClickOutside(e);
|
|
54
|
+
},
|
|
55
|
+
[onClickOutside]
|
|
56
|
+
);
|
|
57
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
58
|
+
import_styled.StyledLoadingWrapper,
|
|
59
|
+
{
|
|
60
|
+
minWidth: triggerReferenceElement?.offsetWidth ?? 0,
|
|
61
|
+
justifyContent: "center",
|
|
62
|
+
alignItems: "center",
|
|
63
|
+
"data-testid": import_DropdownMenuDataTestId.DropdownMenuDataTestId.LOADING,
|
|
64
|
+
tabIndex: 0,
|
|
65
|
+
role: "status",
|
|
66
|
+
"aria-busy": "true",
|
|
67
|
+
ref: loadingRef,
|
|
68
|
+
onKeyDown,
|
|
69
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_circular_progress_indicator.DSCircularProgressIndicator, { size: "l" })
|
|
70
|
+
}
|
|
71
|
+
);
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=DropdownMenuLoading.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/parts/DropdownMenuLoading.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["import React, { useCallback, useContext, useLayoutEffect, useRef } from 'react';\nimport { DSCircularProgressIndicator } from '@elliemae/ds-legacy-circular-progress-indicator';\nimport { DSDropdownMenuContext } from '../DropdownMenuContext.js';\nimport { DropdownMenuDataTestId } from '../DropdownMenuDataTestId.js';\nimport { StyledLoadingWrapper } from '../styled.js';\n\nexport const DropdownMenuLoading: React.ComponentType<Record<string, never>> = () => {\n const {\n props: { onClickOutside },\n triggerReferenceElement,\n } = useContext(DSDropdownMenuContext);\n\n const loadingRef = useRef<HTMLDivElement>(null);\n\n useLayoutEffect(() => {\n loadingRef.current?.focus();\n }, [loadingRef]);\n\n const onKeyDown: React.KeyboardEventHandler = useCallback(\n (e) => {\n if (e.code === 'Escape' || e.code === 'ArrowLeft') onClickOutside(e);\n },\n [onClickOutside],\n );\n\n return (\n <StyledLoadingWrapper\n minWidth={triggerReferenceElement?.offsetWidth ?? 0}\n justifyContent=\"center\"\n alignItems=\"center\"\n data-testid={DropdownMenuDataTestId.LOADING}\n tabIndex={0}\n role=\"status\"\n aria-busy=\"true\"\n ref={loadingRef}\n onKeyDown={onKeyDown}\n >\n <DSCircularProgressIndicator size=\"l\" />\n </StyledLoadingWrapper>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADqCjB;AArCN,mBAAwE;AACxE,mDAA4C;AAC5C,iCAAsC;AACtC,oCAAuC;AACvC,oBAAqC;AAE9B,MAAM,sBAAkE,MAAM;AACnF,QAAM;AAAA,IACJ,OAAO,EAAE,eAAe;AAAA,IACxB;AAAA,EACF,QAAI,yBAAW,gDAAqB;AAEpC,QAAM,iBAAa,qBAAuB,IAAI;AAE9C,oCAAgB,MAAM;AACpB,eAAW,SAAS,MAAM;AAAA,EAC5B,GAAG,CAAC,UAAU,CAAC;AAEf,QAAM,gBAAwC;AAAA,IAC5C,CAAC,MAAM;AACL,UAAI,EAAE,SAAS,YAAY,EAAE,SAAS;AAAa,uBAAe,CAAC;AAAA,IACrE;AAAA,IACA,CAAC,cAAc;AAAA,EACjB;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,UAAU,yBAAyB,eAAe;AAAA,MAClD,gBAAe;AAAA,MACf,YAAW;AAAA,MACX,eAAa,qDAAuB;AAAA,MACpC,UAAU;AAAA,MACV,MAAK;AAAA,MACL,aAAU;AAAA,MACV,KAAK;AAAA,MACL;AAAA,MAEA,sDAAC,4EAA4B,MAAK,KAAI;AAAA;AAAA,EACxC;AAEJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var DropdownMenuSkeleton_exports = {};
|
|
30
|
+
__export(DropdownMenuSkeleton_exports, {
|
|
31
|
+
DropdownMenuSkeleton: () => DropdownMenuSkeleton
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(DropdownMenuSkeleton_exports);
|
|
34
|
+
var React = __toESM(require("react"));
|
|
35
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
36
|
+
var import_ds_legacy_menu_items = require("@elliemae/ds-legacy-menu-items");
|
|
37
|
+
var import_ds_legacy_grid = require("@elliemae/ds-legacy-grid");
|
|
38
|
+
const DropdownMenuSkeleton = () => {
|
|
39
|
+
const SKELETON_AMOUNT = 5;
|
|
40
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_grid.Grid, { children: Array(SKELETON_AMOUNT).fill(0).map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_menu_items.SkeletonMenuItem, { dsId: `${index}-skeleton` }, index)) });
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=DropdownMenuSkeleton.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/parts/DropdownMenuSkeleton.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["import React from 'react';\nimport { SkeletonMenuItem } from '@elliemae/ds-legacy-menu-items';\nimport { Grid } from '@elliemae/ds-legacy-grid';\n\nexport const DropdownMenuSkeleton = () => {\n const SKELETON_AMOUNT = 5;\n\n return (\n <Grid>\n {Array(SKELETON_AMOUNT)\n .fill(0)\n .map((_, index) => (\n <SkeletonMenuItem key={index} dsId={`${index}-skeleton`} />\n ))}\n </Grid>\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADYb;AAXV,kCAAiC;AACjC,4BAAqB;AAEd,MAAM,uBAAuB,MAAM;AACxC,QAAM,kBAAkB;AAExB,SACE,4CAAC,8BACE,gBAAM,eAAe,EACnB,KAAK,CAAC,EACN,IAAI,CAAC,GAAG,UACP,4CAAC,gDAA6B,MAAM,GAAG,oBAAhB,KAAkC,CAC1D,GACL;AAEJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|