@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.
Files changed (185) hide show
  1. package/dist/cjs/DSDropdownMenu.js +50 -0
  2. package/dist/cjs/DSDropdownMenu.js.map +7 -0
  3. package/dist/cjs/DropdownMenuContext.js +37 -0
  4. package/dist/cjs/DropdownMenuContext.js.map +7 -0
  5. package/dist/cjs/DropdownMenuDataTestId.js +42 -0
  6. package/dist/cjs/DropdownMenuDataTestId.js.map +7 -0
  7. package/dist/cjs/config/useDropdownMenuConfig.js +114 -0
  8. package/dist/cjs/config/useDropdownMenuConfig.js.map +7 -0
  9. package/dist/cjs/config/useReferenceConfig.js +47 -0
  10. package/dist/cjs/config/useReferenceConfig.js.map +7 -0
  11. package/dist/cjs/deprecated/CustomPhoneRenderer.js +37 -0
  12. package/dist/cjs/deprecated/CustomPhoneRenderer.js.map +7 -0
  13. package/dist/cjs/deprecated/DSDropdownMenu.js +173 -0
  14. package/dist/cjs/deprecated/DSDropdownMenu.js.map +7 -0
  15. package/dist/cjs/deprecated/DropdownMenuContext.js +39 -0
  16. package/dist/cjs/deprecated/DropdownMenuContext.js.map +7 -0
  17. package/dist/cjs/deprecated/DropdownMenuLoadingIndicator.js +46 -0
  18. package/dist/cjs/deprecated/DropdownMenuLoadingIndicator.js.map +7 -0
  19. package/dist/cjs/deprecated/DropdownMenuProvider.js +109 -0
  20. package/dist/cjs/deprecated/DropdownMenuProvider.js.map +7 -0
  21. package/dist/cjs/deprecated/DropdownMenuRenderer.js +173 -0
  22. package/dist/cjs/deprecated/DropdownMenuRenderer.js.map +7 -0
  23. package/dist/cjs/deprecated/DropdownMenuWrapper.js +41 -0
  24. package/dist/cjs/deprecated/DropdownMenuWrapper.js.map +7 -0
  25. package/dist/cjs/deprecated/MenuItemClickableHOC.js +61 -0
  26. package/dist/cjs/deprecated/MenuItemClickableHOC.js.map +7 -0
  27. package/dist/cjs/deprecated/MenuItemGroupSelectionHOC.js +59 -0
  28. package/dist/cjs/deprecated/MenuItemGroupSelectionHOC.js.map +7 -0
  29. package/dist/cjs/deprecated/decoratedMenuItemFactory.js +49 -0
  30. package/dist/cjs/deprecated/decoratedMenuItemFactory.js.map +7 -0
  31. package/dist/cjs/deprecated/index.js +40 -0
  32. package/dist/cjs/deprecated/index.js.map +7 -0
  33. package/dist/cjs/exported-related/constants.js +45 -0
  34. package/dist/cjs/exported-related/constants.js.map +7 -0
  35. package/dist/cjs/exported-related/index.js +30 -0
  36. package/dist/cjs/exported-related/index.js.map +7 -0
  37. package/dist/cjs/hooks/index.js +32 -0
  38. package/dist/cjs/hooks/index.js.map +7 -0
  39. package/dist/cjs/hooks/useAutofocusContainerOnOpen.js +49 -0
  40. package/dist/cjs/hooks/useAutofocusContainerOnOpen.js.map +7 -0
  41. package/dist/cjs/hooks/useDropdownListboxHandlers.js +126 -0
  42. package/dist/cjs/hooks/useDropdownListboxHandlers.js.map +7 -0
  43. package/dist/cjs/hooks/useDropdownMenuItemHandlers.js +128 -0
  44. package/dist/cjs/hooks/useDropdownMenuItemHandlers.js.map +7 -0
  45. package/dist/cjs/hooks/useGetOptionSpecialAttributes.js +47 -0
  46. package/dist/cjs/hooks/useGetOptionSpecialAttributes.js.map +7 -0
  47. package/dist/cjs/index.js +46 -0
  48. package/dist/cjs/index.js.map +7 -0
  49. package/dist/cjs/package.json +7 -0
  50. package/dist/cjs/parts/DropdownMenuContent.js +100 -0
  51. package/dist/cjs/parts/DropdownMenuContent.js.map +7 -0
  52. package/dist/cjs/parts/DropdownMenuEmptyState.js +38 -0
  53. package/dist/cjs/parts/DropdownMenuEmptyState.js.map +7 -0
  54. package/dist/cjs/parts/DropdownMenuItemFactory.js +106 -0
  55. package/dist/cjs/parts/DropdownMenuItemFactory.js.map +7 -0
  56. package/dist/cjs/parts/DropdownMenuListBox.js +135 -0
  57. package/dist/cjs/parts/DropdownMenuListBox.js.map +7 -0
  58. package/dist/cjs/parts/DropdownMenuLoading.js +73 -0
  59. package/dist/cjs/parts/DropdownMenuLoading.js.map +7 -0
  60. package/dist/cjs/parts/DropdownMenuSkeleton.js +42 -0
  61. package/dist/cjs/parts/DropdownMenuSkeleton.js.map +7 -0
  62. package/dist/cjs/react-desc-prop-types.js +129 -0
  63. package/dist/cjs/react-desc-prop-types.js.map +7 -0
  64. package/dist/cjs/styled.js +120 -0
  65. package/dist/cjs/styled.js.map +7 -0
  66. package/dist/cjs/utils/findInCircularList.js +42 -0
  67. package/dist/cjs/utils/findInCircularList.js.map +7 -0
  68. package/dist/cjs/utils/index.js +32 -0
  69. package/dist/cjs/utils/index.js.map +7 -0
  70. package/dist/cjs/utils/isOptionFocuseable.js +36 -0
  71. package/dist/cjs/utils/isOptionFocuseable.js.map +7 -0
  72. package/dist/cjs/utils/manageOpenedSubmenus.js +67 -0
  73. package/dist/cjs/utils/manageOpenedSubmenus.js.map +7 -0
  74. package/dist/esm/DSDropdownMenu.js +20 -0
  75. package/dist/esm/DSDropdownMenu.js.map +7 -0
  76. package/dist/esm/DropdownMenuContext.js +7 -0
  77. package/dist/esm/DropdownMenuContext.js.map +7 -0
  78. package/dist/esm/DropdownMenuDataTestId.js +12 -0
  79. package/dist/esm/DropdownMenuDataTestId.js.map +7 -0
  80. package/dist/esm/config/useDropdownMenuConfig.js +84 -0
  81. package/dist/esm/config/useDropdownMenuConfig.js.map +7 -0
  82. package/dist/esm/config/useReferenceConfig.js +17 -0
  83. package/dist/esm/config/useReferenceConfig.js.map +7 -0
  84. package/dist/esm/deprecated/CustomPhoneRenderer.js +7 -0
  85. package/dist/esm/deprecated/CustomPhoneRenderer.js.map +7 -0
  86. package/dist/esm/deprecated/DSDropdownMenu.js +143 -0
  87. package/dist/esm/deprecated/DSDropdownMenu.js.map +7 -0
  88. package/dist/esm/deprecated/DropdownMenuContext.js +9 -0
  89. package/dist/esm/deprecated/DropdownMenuContext.js.map +7 -0
  90. package/dist/esm/deprecated/DropdownMenuLoadingIndicator.js +16 -0
  91. package/dist/esm/deprecated/DropdownMenuLoadingIndicator.js.map +7 -0
  92. package/dist/esm/deprecated/DropdownMenuProvider.js +79 -0
  93. package/dist/esm/deprecated/DropdownMenuProvider.js.map +7 -0
  94. package/dist/esm/deprecated/DropdownMenuRenderer.js +143 -0
  95. package/dist/esm/deprecated/DropdownMenuRenderer.js.map +7 -0
  96. package/dist/esm/deprecated/DropdownMenuWrapper.js +11 -0
  97. package/dist/esm/deprecated/DropdownMenuWrapper.js.map +7 -0
  98. package/dist/esm/deprecated/MenuItemClickableHOC.js +31 -0
  99. package/dist/esm/deprecated/MenuItemClickableHOC.js.map +7 -0
  100. package/dist/esm/deprecated/MenuItemGroupSelectionHOC.js +29 -0
  101. package/dist/esm/deprecated/MenuItemGroupSelectionHOC.js.map +7 -0
  102. package/dist/esm/deprecated/decoratedMenuItemFactory.js +19 -0
  103. package/dist/esm/deprecated/decoratedMenuItemFactory.js.map +7 -0
  104. package/dist/esm/deprecated/index.js +10 -0
  105. package/dist/esm/deprecated/index.js.map +7 -0
  106. package/dist/esm/exported-related/constants.js +15 -0
  107. package/dist/esm/exported-related/constants.js.map +7 -0
  108. package/dist/esm/exported-related/index.js +3 -0
  109. package/dist/esm/exported-related/index.js.map +7 -0
  110. package/dist/esm/hooks/index.js +5 -0
  111. package/dist/esm/hooks/index.js.map +7 -0
  112. package/dist/esm/hooks/useAutofocusContainerOnOpen.js +19 -0
  113. package/dist/esm/hooks/useAutofocusContainerOnOpen.js.map +7 -0
  114. package/dist/esm/hooks/useDropdownListboxHandlers.js +96 -0
  115. package/dist/esm/hooks/useDropdownListboxHandlers.js.map +7 -0
  116. package/dist/esm/hooks/useDropdownMenuItemHandlers.js +98 -0
  117. package/dist/esm/hooks/useDropdownMenuItemHandlers.js.map +7 -0
  118. package/dist/esm/hooks/useGetOptionSpecialAttributes.js +17 -0
  119. package/dist/esm/hooks/useGetOptionSpecialAttributes.js.map +7 -0
  120. package/dist/esm/index.js +15 -0
  121. package/dist/esm/index.js.map +7 -0
  122. package/dist/esm/package.json +7 -0
  123. package/dist/esm/parts/DropdownMenuContent.js +70 -0
  124. package/dist/esm/parts/DropdownMenuContent.js.map +7 -0
  125. package/dist/esm/parts/DropdownMenuEmptyState.js +8 -0
  126. package/dist/esm/parts/DropdownMenuEmptyState.js.map +7 -0
  127. package/dist/esm/parts/DropdownMenuItemFactory.js +85 -0
  128. package/dist/esm/parts/DropdownMenuItemFactory.js.map +7 -0
  129. package/dist/esm/parts/DropdownMenuListBox.js +105 -0
  130. package/dist/esm/parts/DropdownMenuListBox.js.map +7 -0
  131. package/dist/esm/parts/DropdownMenuLoading.js +43 -0
  132. package/dist/esm/parts/DropdownMenuLoading.js.map +7 -0
  133. package/dist/esm/parts/DropdownMenuSkeleton.js +12 -0
  134. package/dist/esm/parts/DropdownMenuSkeleton.js.map +7 -0
  135. package/dist/esm/react-desc-prop-types.js +102 -0
  136. package/dist/esm/react-desc-prop-types.js.map +7 -0
  137. package/dist/esm/styled.js +90 -0
  138. package/dist/esm/styled.js.map +7 -0
  139. package/dist/esm/utils/findInCircularList.js +12 -0
  140. package/dist/esm/utils/findInCircularList.js.map +7 -0
  141. package/dist/esm/utils/index.js +5 -0
  142. package/dist/esm/utils/index.js.map +7 -0
  143. package/dist/esm/utils/isOptionFocuseable.js +6 -0
  144. package/dist/esm/utils/isOptionFocuseable.js.map +7 -0
  145. package/dist/esm/utils/manageOpenedSubmenus.js +37 -0
  146. package/dist/esm/utils/manageOpenedSubmenus.js.map +7 -0
  147. package/dist/types/DSDropdownMenu.d.ts +5 -0
  148. package/dist/types/DropdownMenuContext.d.ts +3 -0
  149. package/dist/types/DropdownMenuDataTestId.d.ts +7 -0
  150. package/dist/types/config/useDropdownMenuConfig.d.ts +2 -0
  151. package/dist/types/config/useReferenceConfig.d.ts +7 -0
  152. package/dist/types/deprecated/CustomPhoneRenderer.d.ts +2 -0
  153. package/dist/types/deprecated/DSDropdownMenu.d.ts +110 -0
  154. package/dist/types/deprecated/DropdownMenuContext.d.ts +4 -0
  155. package/dist/types/deprecated/DropdownMenuLoadingIndicator.d.ts +3 -0
  156. package/dist/types/deprecated/DropdownMenuProvider.d.ts +12 -0
  157. package/dist/types/deprecated/DropdownMenuRenderer.d.ts +28 -0
  158. package/dist/types/deprecated/DropdownMenuWrapper.d.ts +3 -0
  159. package/dist/types/deprecated/MenuItemClickableHOC.d.ts +6 -0
  160. package/dist/types/deprecated/MenuItemGroupSelectionHOC.d.ts +6 -0
  161. package/dist/types/deprecated/decoratedMenuItemFactory.d.ts +2 -0
  162. package/dist/types/deprecated/index.d.ts +2 -0
  163. package/dist/types/exported-related/constants.d.ts +9 -0
  164. package/dist/types/exported-related/index.d.ts +1 -0
  165. package/dist/types/hooks/index.d.ts +3 -0
  166. package/dist/types/hooks/useAutofocusContainerOnOpen.d.ts +1 -0
  167. package/dist/types/hooks/useDropdownListboxHandlers.d.ts +8 -0
  168. package/dist/types/hooks/useDropdownMenuItemHandlers.d.ts +12 -0
  169. package/dist/types/hooks/useGetOptionSpecialAttributes.d.ts +3 -0
  170. package/dist/types/index.d.ts +7 -0
  171. package/dist/types/parts/DropdownMenuContent.d.ts +2 -0
  172. package/dist/types/parts/DropdownMenuEmptyState.d.ts +8 -0
  173. package/dist/types/parts/DropdownMenuItemFactory.d.ts +8 -0
  174. package/dist/types/parts/DropdownMenuListBox.d.ts +2 -0
  175. package/dist/types/parts/DropdownMenuLoading.d.ts +2 -0
  176. package/dist/types/parts/DropdownMenuSkeleton.d.ts +1 -0
  177. package/dist/types/react-desc-prop-types.d.ts +120 -0
  178. package/dist/types/styled.d.ts +20 -0
  179. package/dist/types/tests/DSDropdownMenuV2.keyboardEvents.test.d.ts +1 -0
  180. package/dist/types/tests/DSDropdownMenuV2.pointerEvents.test.d.ts +1 -0
  181. package/dist/types/utils/findInCircularList.d.ts +1 -0
  182. package/dist/types/utils/index.d.ts +3 -0
  183. package/dist/types/utils/isOptionFocuseable.d.ts +2 -0
  184. package/dist/types/utils/manageOpenedSubmenus.d.ts +2 -0
  185. package/package.json +93 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/deprecated/DropdownMenuContext.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["// @ts-nocheck\nimport React from 'react';\n\nconst DropdownMenuContext = React.createContext();\nexport { DropdownMenuContext };\nexport default DropdownMenuContext;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,mBAAkB;AAElB,MAAM,sBAAsB,aAAAA,QAAM,cAAc;AAEhD,IAAO,8BAAQ;",
6
+ "names": ["React"]
7
+ }
@@ -0,0 +1,46 @@
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 DropdownMenuLoadingIndicator_exports = {};
30
+ __export(DropdownMenuLoadingIndicator_exports, {
31
+ LoadingIndicator: () => LoadingIndicator,
32
+ default: () => DropdownMenuLoadingIndicator_default
33
+ });
34
+ module.exports = __toCommonJS(DropdownMenuLoadingIndicator_exports);
35
+ var React = __toESM(require("react"));
36
+ var import_jsx_runtime = require("react/jsx-runtime");
37
+ var import_ds_legacy_system = require("@elliemae/ds-legacy-system");
38
+ var import_ds_legacy_circular_progress_indicator = require("@elliemae/ds-legacy-circular-progress-indicator");
39
+ const Wrapper = import_ds_legacy_system.styled.div`
40
+ display: flex;
41
+ justify-content: center;
42
+ height: 56px;
43
+ `;
44
+ const LoadingIndicator = () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Wrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_legacy_circular_progress_indicator.DSCircularProgressIndicator, { size: "m" }) });
45
+ var DropdownMenuLoadingIndicator_default = LoadingIndicator;
46
+ //# sourceMappingURL=DropdownMenuLoadingIndicator.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/deprecated/DropdownMenuLoadingIndicator.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["// @ts-nocheck\nimport React from 'react';\nimport { styled } from '@elliemae/ds-legacy-system';\nimport { DSCircularProgressIndicator } from '@elliemae/ds-legacy-circular-progress-indicator';\n\nconst Wrapper = styled.div`\n display: flex;\n justify-content: center;\n height: 56px;\n`;\n\nconst LoadingIndicator = () => (\n <Wrapper>\n <DSCircularProgressIndicator size=\"m\" />\n </Wrapper>\n);\n\nexport { LoadingIndicator };\nexport default LoadingIndicator;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADanB;AAXJ,8BAAuB;AACvB,mDAA4C;AAE5C,MAAM,UAAU,+BAAO;AAAA;AAAA;AAAA;AAAA;AAMvB,MAAM,mBAAmB,MACvB,4CAAC,WACC,sDAAC,4EAA4B,MAAK,KAAI,GACxC;AAIF,IAAO,uCAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,109 @@
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 DropdownMenuProvider_exports = {};
30
+ __export(DropdownMenuProvider_exports, {
31
+ DropdownMenuProvider: () => DropdownMenuProvider,
32
+ default: () => DropdownMenuProvider_default
33
+ });
34
+ module.exports = __toCommonJS(DropdownMenuProvider_exports);
35
+ var React = __toESM(require("react"));
36
+ var import_jsx_runtime = require("react/jsx-runtime");
37
+ var import_react = require("react");
38
+ var import_ds_legacy_utilities = require("@elliemae/ds-legacy-utilities");
39
+ var import_DropdownMenuContext = require("./DropdownMenuContext.js");
40
+ const noop = () => null;
41
+ const DropdownMenuProvider = ({
42
+ onSelectMenuItem = noop,
43
+ onOpenMenu = noop,
44
+ onClose,
45
+ children,
46
+ isOpen,
47
+ selection,
48
+ singleGroupSelection,
49
+ onSelectChange = noop
50
+ }) => {
51
+ const [isMenuOpen, setMenuOpen] = (0, import_react.useState)(isOpen);
52
+ const closeMenu = (0, import_react.useCallback)(() => {
53
+ setMenuOpen(false);
54
+ onOpenMenu(false);
55
+ onClose();
56
+ });
57
+ const openMenu = (0, import_react.useCallback)(() => {
58
+ setMenuOpen(true);
59
+ onOpenMenu(true);
60
+ });
61
+ const handleItemClick = ({ item, group }) => {
62
+ let activeState;
63
+ let nextSelection = !singleGroupSelection ? selection : {};
64
+ if (group) {
65
+ activeState = group.active;
66
+ nextSelection = {
67
+ ...nextSelection,
68
+ [group.id]: activeState
69
+ };
70
+ } else {
71
+ const selectionItem = group || item;
72
+ activeState = selectionItem.active || selectionItem.checked;
73
+ nextSelection = Array.isArray(activeState) ? {
74
+ ...nextSelection,
75
+ [selectionItem.id]: activeState
76
+ } : (0, import_ds_legacy_utilities.toggleInObject)(nextSelection, selectionItem.id, item.label || activeState || true);
77
+ }
78
+ onSelectChange({
79
+ item,
80
+ group,
81
+ selection: nextSelection
82
+ });
83
+ onSelectMenuItem(item, activeState, nextSelection);
84
+ };
85
+ const handleCloseOnClick = (0, import_react.useCallback)(({ item, group = {} }) => {
86
+ if (item.closeOnClick !== void 0) {
87
+ if (item.closeOnClick)
88
+ closeMenu();
89
+ return;
90
+ }
91
+ if (group.closeOnClick !== void 0) {
92
+ if (group.closeOnClick)
93
+ closeMenu();
94
+ }
95
+ }, []);
96
+ const valueProvider = (0, import_react.useMemo)(
97
+ () => ({
98
+ onItemClick: (0, import_ds_legacy_utilities.runAll)(handleItemClick, handleCloseOnClick),
99
+ closeMenu,
100
+ openMenu,
101
+ isMenuOpen,
102
+ selection
103
+ }),
104
+ [isMenuOpen, selection]
105
+ );
106
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DropdownMenuContext.DropdownMenuContext.Provider, { value: valueProvider, children });
107
+ };
108
+ var DropdownMenuProvider_default = DropdownMenuProvider;
109
+ //# sourceMappingURL=DropdownMenuProvider.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/deprecated/DropdownMenuProvider.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["// @ts-nocheck\n/* eslint-disable react/prop-types */\n/* eslint-disable indent */\nimport React, { useCallback, useMemo, useState } from 'react';\nimport { runAll, toggleInObject } from '@elliemae/ds-legacy-utilities';\nimport { DropdownMenuContext } from './DropdownMenuContext.js';\n\nconst noop = () => null;\n\nconst DropdownMenuProvider = ({\n onSelectMenuItem = noop,\n onOpenMenu = noop,\n onClose,\n children,\n isOpen,\n selection,\n singleGroupSelection,\n onSelectChange = noop,\n}) => {\n const [isMenuOpen, setMenuOpen] = useState(isOpen);\n\n const closeMenu = useCallback(() => {\n setMenuOpen(false);\n onOpenMenu(false);\n onClose();\n });\n const openMenu = useCallback(() => {\n setMenuOpen(true);\n onOpenMenu(true);\n });\n\n const handleItemClick = ({ item, group }) => {\n let activeState;\n // reset selection if single selection group is activated\n let nextSelection = !singleGroupSelection ? selection : {};\n\n if (group) {\n activeState = group.active;\n nextSelection = {\n ...nextSelection,\n [group.id]: activeState,\n };\n } else {\n const selectionItem = group || item;\n activeState = selectionItem.active || selectionItem.checked;\n\n // can be toggled (radio with unselection)\n nextSelection = Array.isArray(activeState)\n ? {\n ...nextSelection,\n [selectionItem.id]: activeState,\n }\n : toggleInObject(nextSelection, selectionItem.id, item.label || activeState || true);\n }\n onSelectChange({\n item,\n group,\n selection: nextSelection,\n });\n // todo: just pass item on item and group when selection callback,\n // use onSelectchange for nextSelection\n onSelectMenuItem(item, activeState, nextSelection);\n };\n\n const handleCloseOnClick = useCallback(({ item, group = {} }) => {\n if (item.closeOnClick !== undefined) {\n if (item.closeOnClick) closeMenu();\n return;\n }\n if (group.closeOnClick !== undefined) {\n if (group.closeOnClick) closeMenu();\n }\n }, []);\n\n const valueProvider = useMemo(\n () => ({\n onItemClick: runAll(handleItemClick, handleCloseOnClick),\n closeMenu,\n openMenu,\n isMenuOpen,\n selection,\n }),\n [isMenuOpen, selection],\n );\n return <DropdownMenuContext.Provider value={valueProvider}>{children}</DropdownMenuContext.Provider>;\n};\n\nexport { DropdownMenuProvider };\nexport default DropdownMenuProvider;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADoFd;AAjFT,mBAAsD;AACtD,iCAAuC;AACvC,iCAAoC;AAEpC,MAAM,OAAO,MAAM;AAEnB,MAAM,uBAAuB,CAAC;AAAA,EAC5B,mBAAmB;AAAA,EACnB,aAAa;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,iBAAiB;AACnB,MAAM;AACJ,QAAM,CAAC,YAAY,WAAW,QAAI,uBAAS,MAAM;AAEjD,QAAM,gBAAY,0BAAY,MAAM;AAClC,gBAAY,KAAK;AACjB,eAAW,KAAK;AAChB,YAAQ;AAAA,EACV,CAAC;AACD,QAAM,eAAW,0BAAY,MAAM;AACjC,gBAAY,IAAI;AAChB,eAAW,IAAI;AAAA,EACjB,CAAC;AAED,QAAM,kBAAkB,CAAC,EAAE,MAAM,MAAM,MAAM;AAC3C,QAAI;AAEJ,QAAI,gBAAgB,CAAC,uBAAuB,YAAY,CAAC;AAEzD,QAAI,OAAO;AACT,oBAAc,MAAM;AACpB,sBAAgB;AAAA,QACd,GAAG;AAAA,QACH,CAAC,MAAM,EAAE,GAAG;AAAA,MACd;AAAA,IACF,OAAO;AACL,YAAM,gBAAgB,SAAS;AAC/B,oBAAc,cAAc,UAAU,cAAc;AAGpD,sBAAgB,MAAM,QAAQ,WAAW,IACrC;AAAA,QACE,GAAG;AAAA,QACH,CAAC,cAAc,EAAE,GAAG;AAAA,MACtB,QACA,2CAAe,eAAe,cAAc,IAAI,KAAK,SAAS,eAAe,IAAI;AAAA,IACvF;AACA,mBAAe;AAAA,MACb;AAAA,MACA;AAAA,MACA,WAAW;AAAA,IACb,CAAC;AAGD,qBAAiB,MAAM,aAAa,aAAa;AAAA,EACnD;AAEA,QAAM,yBAAqB,0BAAY,CAAC,EAAE,MAAM,QAAQ,CAAC,EAAE,MAAM;AAC/D,QAAI,KAAK,iBAAiB,QAAW;AACnC,UAAI,KAAK;AAAc,kBAAU;AACjC;AAAA,IACF;AACA,QAAI,MAAM,iBAAiB,QAAW;AACpC,UAAI,MAAM;AAAc,kBAAU;AAAA,IACpC;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,QAAM,oBAAgB;AAAA,IACpB,OAAO;AAAA,MACL,iBAAa,mCAAO,iBAAiB,kBAAkB;AAAA,MACvD;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,IACA,CAAC,YAAY,SAAS;AAAA,EACxB;AACA,SAAO,4CAAC,+CAAoB,UAApB,EAA6B,OAAO,eAAgB,UAAS;AACvE;AAGA,IAAO,+BAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,173 @@
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 DropdownMenuRenderer_exports = {};
30
+ __export(DropdownMenuRenderer_exports, {
31
+ DropdownMenuRenderer: () => DropdownMenuRenderer,
32
+ default: () => DropdownMenuRenderer_default
33
+ });
34
+ module.exports = __toCommonJS(DropdownMenuRenderer_exports);
35
+ var React = __toESM(require("react"));
36
+ var import_jsx_runtime = require("react/jsx-runtime");
37
+ var import_react = require("react");
38
+ var import_ds_legacy_popper = require("@elliemae/ds-legacy-popper");
39
+ var import_ds_legacy_common = require("@elliemae/ds-legacy-common");
40
+ var import_ds_legacy_classnames = require("@elliemae/ds-legacy-classnames");
41
+ var import_ds_legacy_utilities = require("@elliemae/ds-legacy-utilities");
42
+ var import_DropdownMenuContext = require("./DropdownMenuContext.js");
43
+ var import_decoratedMenuItemFactory = require("./decoratedMenuItemFactory.js");
44
+ var import_DropdownMenuLoadingIndicator = require("./DropdownMenuLoadingIndicator.js");
45
+ const blockName = "menu";
46
+ const getMax = (options) => {
47
+ let max = 0;
48
+ options.forEach((o) => {
49
+ if (o && o.label && String(o.label).length > max)
50
+ max = String(o.label).length;
51
+ });
52
+ return max;
53
+ };
54
+ const DropdownMenuRenderer = ({
55
+ containerProps,
56
+ className,
57
+ options = [],
58
+ triggerComponent,
59
+ placement,
60
+ interactionType,
61
+ preventOverflow,
62
+ customMenu,
63
+ contentOffset,
64
+ contentStyle,
65
+ isOpen,
66
+ children,
67
+ menuProps,
68
+ referenceNode,
69
+ focusOnOpen: focusOnOpenProp,
70
+ onClickOutsideMenu,
71
+ responsiveHeight,
72
+ itemsRenderer,
73
+ maxWidth,
74
+ minWidth,
75
+ zIndex,
76
+ type,
77
+ loading,
78
+ hideIfNotVisible
79
+ }) => {
80
+ const [focusOnOpen, setFocusOnOpenMenu] = (0, import_react.useState)(focusOnOpenProp);
81
+ const { isMenuOpen, openMenu, closeMenu } = (0, import_react.useContext)(import_DropdownMenuContext.DropdownMenuContext);
82
+ const maxOption = (0, import_react.useMemo)(() => {
83
+ let max = 0;
84
+ options.forEach((o) => {
85
+ if (o && o.label && String(o.label).length > max)
86
+ max = String(o.label).length;
87
+ if (o && o.items) {
88
+ const nestedMax = getMax(o.items);
89
+ if (nestedMax > max)
90
+ max = nestedMax;
91
+ }
92
+ });
93
+ return max;
94
+ }, [options]);
95
+ const optionsRendererd = (0, import_react.useMemo)(() => {
96
+ if (options[0] && options[0].type === "separator") {
97
+ options[0].showSeparator = false;
98
+ }
99
+ return (0, import_ds_legacy_utilities.isFunction)(itemsRenderer) ? itemsRenderer(options, import_decoratedMenuItemFactory.factory) : (0, import_decoratedMenuItemFactory.renderOptions)(options);
100
+ }, [options]);
101
+ const dropdownBlockName = (0, import_ds_legacy_classnames.convertPropToCssClassName)(blockName);
102
+ const menuContent = () => {
103
+ if (loading)
104
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DropdownMenuLoadingIndicator.LoadingIndicator, {});
105
+ if (children)
106
+ return children;
107
+ if (optionsRendererd)
108
+ return optionsRendererd;
109
+ };
110
+ const MenuComponent = customMenu ? (0, import_ds_legacy_utilities.getComponentFromProps)(customMenu, {
111
+ options,
112
+ focusOnOpen,
113
+ maxOption,
114
+ ...menuProps,
115
+ closeMenu,
116
+ loading
117
+ }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
118
+ import_ds_legacy_common.Menu,
119
+ {
120
+ closeMenu,
121
+ focusOnOpen,
122
+ containerProps,
123
+ maxOption: type === "phone" ? maxOption : void 0,
124
+ maxWidth,
125
+ minWidth,
126
+ onClickOutside: onClickOutsideMenu,
127
+ onExitFocusGroup: closeMenu,
128
+ responsiveHeight,
129
+ type,
130
+ visible: true,
131
+ ...menuProps,
132
+ children: menuContent()
133
+ }
134
+ );
135
+ (0, import_react.useEffect)(() => {
136
+ setFocusOnOpenMenu(focusOnOpenProp);
137
+ });
138
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
139
+ import_ds_legacy_popper.DSPopper,
140
+ {
141
+ hideIfNotVisible,
142
+ blockName: dropdownBlockName,
143
+ containerProps,
144
+ contentComponent: MenuComponent,
145
+ contentOffset,
146
+ contentStyle,
147
+ interactionType,
148
+ isOpen: isOpen !== void 0 ? isOpen : isMenuOpen,
149
+ onOpen: (opening) => opening ? openMenu() : closeMenu(),
150
+ placement,
151
+ preventOverflow,
152
+ referenceNode,
153
+ showArrow: false,
154
+ triggerComponent: (0, import_ds_legacy_utilities.getComponentFromProps)(triggerComponent, {
155
+ onClick: interactionType === "hover" ? (0, import_ds_legacy_utilities.runAll)(openMenu, triggerComponent.props.onClick) : (0, import_ds_legacy_utilities.runAll)(!isMenuOpen ? openMenu : closeMenu, triggerComponent.props.onClick),
156
+ onMouseEnter: interactionType === "hover" ? openMenu : void 0,
157
+ onKeyDown: (e) => {
158
+ if (e.key === "ArrowDown" || e.key === " ") {
159
+ e.preventDefault();
160
+ setFocusOnOpenMenu(true);
161
+ openMenu();
162
+ }
163
+ if (triggerComponent.props.onKeyPress)
164
+ triggerComponent.props.onKeyPress(e);
165
+ },
166
+ className: `${triggerComponent.props.className} ${className}`
167
+ }),
168
+ zIndex: zIndex || menuProps.zIndex
169
+ }
170
+ );
171
+ };
172
+ var DropdownMenuRenderer_default = DropdownMenuRenderer;
173
+ //# sourceMappingURL=DropdownMenuRenderer.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/deprecated/DropdownMenuRenderer.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["// @ts-nocheck\nimport React, { useContext, useEffect, useMemo, useState } from 'react';\nimport { DSPopper } from '@elliemae/ds-legacy-popper';\nimport { Menu } from '@elliemae/ds-legacy-common';\nimport { convertPropToCssClassName } from '@elliemae/ds-legacy-classnames';\nimport { runAll, isFunction, getComponentFromProps } from '@elliemae/ds-legacy-utilities';\nimport { DropdownMenuContext } from './DropdownMenuContext.js';\nimport { renderOptions, factory } from './decoratedMenuItemFactory.js';\nimport { LoadingIndicator } from './DropdownMenuLoadingIndicator.js';\n\nconst blockName = 'menu';\n\nconst getMax = (options) => {\n let max = 0;\n options.forEach((o) => {\n if (o && o.label && String(o.label).length > max) max = String(o.label).length;\n });\n return max;\n};\n\nconst DropdownMenuRenderer = ({\n containerProps,\n className,\n options = [],\n triggerComponent,\n placement,\n interactionType,\n preventOverflow,\n customMenu,\n contentOffset,\n contentStyle,\n isOpen,\n children,\n menuProps,\n referenceNode,\n focusOnOpen: focusOnOpenProp,\n onClickOutsideMenu,\n responsiveHeight,\n itemsRenderer,\n maxWidth,\n minWidth,\n zIndex,\n type,\n loading,\n hideIfNotVisible,\n}) => {\n const [focusOnOpen, setFocusOnOpenMenu] = useState(focusOnOpenProp);\n const { isMenuOpen, openMenu, closeMenu } = useContext(DropdownMenuContext);\n const maxOption = useMemo(() => {\n let max = 0;\n options.forEach((o) => {\n if (o && o.label && String(o.label).length > max) max = String(o.label).length;\n if (o && o.items) {\n const nestedMax = getMax(o.items);\n if (nestedMax > max) max = nestedMax;\n }\n });\n return max;\n }, [options]);\n const optionsRendererd = useMemo(() => {\n if (options[0] && options[0].type === 'separator') {\n options[0].showSeparator = false;\n }\n return isFunction(itemsRenderer) ? itemsRenderer(options, factory) : renderOptions(options);\n }, [options]);\n\n const dropdownBlockName = convertPropToCssClassName(blockName);\n const menuContent = () => {\n if (loading) return <LoadingIndicator />;\n if (children) return children;\n if (optionsRendererd) return optionsRendererd;\n };\n\n const MenuComponent = customMenu ? (\n getComponentFromProps(customMenu, {\n options,\n focusOnOpen,\n maxOption,\n ...menuProps,\n closeMenu,\n loading,\n })\n ) : (\n <Menu\n closeMenu={closeMenu}\n focusOnOpen={focusOnOpen}\n containerProps={containerProps}\n maxOption={type === 'phone' ? maxOption : undefined}\n maxWidth={maxWidth}\n minWidth={minWidth}\n onClickOutside={onClickOutsideMenu}\n onExitFocusGroup={closeMenu}\n responsiveHeight={responsiveHeight}\n type={type}\n visible\n {...menuProps}\n >\n {menuContent()}\n </Menu>\n );\n\n useEffect(() => {\n setFocusOnOpenMenu(focusOnOpenProp);\n });\n\n return (\n <DSPopper\n hideIfNotVisible={hideIfNotVisible}\n blockName={dropdownBlockName}\n containerProps={containerProps}\n contentComponent={MenuComponent}\n contentOffset={contentOffset}\n contentStyle={contentStyle}\n interactionType={interactionType}\n isOpen={isOpen !== undefined ? isOpen : isMenuOpen}\n onOpen={(opening) => (opening ? openMenu() : closeMenu())}\n placement={placement}\n preventOverflow={preventOverflow}\n referenceNode={referenceNode}\n showArrow={false}\n triggerComponent={getComponentFromProps(triggerComponent, {\n onClick:\n interactionType === 'hover'\n ? runAll(openMenu, triggerComponent.props.onClick)\n : runAll(!isMenuOpen ? openMenu : closeMenu, triggerComponent.props.onClick),\n onMouseEnter: interactionType === 'hover' ? openMenu : undefined,\n onKeyDown: (e) => {\n if (e.key === 'ArrowDown' || e.key === ' ') {\n e.preventDefault();\n setFocusOnOpenMenu(true);\n openMenu();\n }\n if (triggerComponent.props.onKeyPress) triggerComponent.props.onKeyPress(e);\n },\n className: `${triggerComponent.props.className} ${className}`,\n })}\n zIndex={zIndex || menuProps.zIndex}\n />\n );\n};\n\nexport { DropdownMenuRenderer };\nexport default DropdownMenuRenderer;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,41 @@
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 DropdownMenuWrapper_exports = {};
30
+ __export(DropdownMenuWrapper_exports, {
31
+ DropdownMenuWrapper: () => DropdownMenuWrapper,
32
+ default: () => DropdownMenuWrapper_default
33
+ });
34
+ module.exports = __toCommonJS(DropdownMenuWrapper_exports);
35
+ var React = __toESM(require("react"));
36
+ var import_jsx_runtime = require("react/jsx-runtime");
37
+ var import_DropdownMenuProvider = require("./DropdownMenuProvider.js");
38
+ var import_DropdownMenuRenderer = require("./DropdownMenuRenderer.js");
39
+ const DropdownMenuWrapper = (props) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DropdownMenuProvider.DropdownMenuProvider, { ...props, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_DropdownMenuRenderer.DropdownMenuRenderer, { ...props }) });
40
+ var DropdownMenuWrapper_default = DropdownMenuWrapper;
41
+ //# sourceMappingURL=DropdownMenuWrapper.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/deprecated/DropdownMenuWrapper.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["// @ts-nocheck\nimport React from 'react';\nimport { DropdownMenuProvider } from './DropdownMenuProvider.js';\nimport { DropdownMenuRenderer } from './DropdownMenuRenderer.js';\n\nconst DropdownMenuWrapper = (props) => (\n <DropdownMenuProvider {...props}>\n <DropdownMenuRenderer {...props} />\n </DropdownMenuProvider>\n);\n\nexport { DropdownMenuWrapper };\nexport default DropdownMenuWrapper;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADOnB;AALJ,kCAAqC;AACrC,kCAAqC;AAErC,MAAM,sBAAsB,CAAC,UAC3B,4CAAC,oDAAsB,GAAG,OACxB,sDAAC,oDAAsB,GAAG,OAAO,GACnC;AAIF,IAAO,8BAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,61 @@
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 MenuItemClickableHOC_exports = {};
30
+ __export(MenuItemClickableHOC_exports, {
31
+ MenuItemClickableHOC: () => MenuItemClickableHOC,
32
+ default: () => MenuItemClickableHOC_default
33
+ });
34
+ module.exports = __toCommonJS(MenuItemClickableHOC_exports);
35
+ var React = __toESM(require("react"));
36
+ var import_jsx_runtime = require("react/jsx-runtime");
37
+ var import_react = require("react");
38
+ var import_ds_legacy_utilities = require("@elliemae/ds-legacy-utilities");
39
+ var import_DropdownMenuContext = require("./DropdownMenuContext.js");
40
+ const noop = () => null;
41
+ const defaultConfig = { type: "default", handlerName: "onClick" };
42
+ function MenuItemClickableHOC(WrappedComponent, config) {
43
+ return function({ item = {}, ...restProps }) {
44
+ const { type, handlerName } = { ...defaultConfig, ...config };
45
+ const { onItemClick, selection } = (0, import_react.useContext)(import_DropdownMenuContext.DropdownMenuContext);
46
+ const propHandler = restProps[handlerName] || noop;
47
+ const handler = {
48
+ [handlerName]: () => (0, import_ds_legacy_utilities.runAll)(onItemClick, propHandler)({ item, type })
49
+ };
50
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
51
+ WrappedComponent,
52
+ {
53
+ ...restProps,
54
+ ...type === "selectable" && selection ? { checked: (0, import_ds_legacy_utilities.get)(selection, [item.id]) } : {},
55
+ ...handler
56
+ }
57
+ );
58
+ };
59
+ }
60
+ var MenuItemClickableHOC_default = MenuItemClickableHOC;
61
+ //# sourceMappingURL=MenuItemClickableHOC.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/deprecated/MenuItemClickableHOC.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["// @ts-nocheck\n/* eslint-disable react/display-name */\nimport React, { useContext } from 'react';\nimport { runAll, get } from '@elliemae/ds-legacy-utilities';\nimport { DropdownMenuContext } from './DropdownMenuContext.js';\n\nconst noop = () => null;\n\nconst defaultConfig = { type: 'default', handlerName: 'onClick' };\n\nfunction MenuItemClickableHOC(WrappedComponent, config) {\n return function ({ item = {}, ...restProps }) {\n const { type, handlerName } = { ...defaultConfig, ...config };\n const { onItemClick, selection } = useContext(DropdownMenuContext);\n const propHandler = restProps[handlerName] || noop;\n const handler = {\n [handlerName]: () => runAll(onItemClick, propHandler)({ item, type }),\n };\n return (\n <WrappedComponent\n {...restProps}\n {...(type === 'selectable' && selection ? { checked: get(selection, [item.id]) } : {})}\n {...handler}\n />\n );\n };\n}\n\nexport { MenuItemClickableHOC };\nexport default MenuItemClickableHOC;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADmBjB;AAjBN,mBAAkC;AAClC,iCAA4B;AAC5B,iCAAoC;AAEpC,MAAM,OAAO,MAAM;AAEnB,MAAM,gBAAgB,EAAE,MAAM,WAAW,aAAa,UAAU;AAEhE,SAAS,qBAAqB,kBAAkB,QAAQ;AACtD,SAAO,SAAU,EAAE,OAAO,CAAC,GAAG,GAAG,UAAU,GAAG;AAC5C,UAAM,EAAE,MAAM,YAAY,IAAI,EAAE,GAAG,eAAe,GAAG,OAAO;AAC5D,UAAM,EAAE,aAAa,UAAU,QAAI,yBAAW,8CAAmB;AACjE,UAAM,cAAc,UAAU,WAAW,KAAK;AAC9C,UAAM,UAAU;AAAA,MACd,CAAC,WAAW,GAAG,UAAM,mCAAO,aAAa,WAAW,EAAE,EAAE,MAAM,KAAK,CAAC;AAAA,IACtE;AACA,WACE;AAAA,MAAC;AAAA;AAAA,QACE,GAAG;AAAA,QACH,GAAI,SAAS,gBAAgB,YAAY,EAAE,aAAS,gCAAI,WAAW,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,CAAC;AAAA,QACnF,GAAG;AAAA;AAAA,IACN;AAAA,EAEJ;AACF;AAGA,IAAO,+BAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,59 @@
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 MenuItemGroupSelectionHOC_exports = {};
30
+ __export(MenuItemGroupSelectionHOC_exports, {
31
+ MenuItemGroupSelectionHOC: () => MenuItemGroupSelectionHOC,
32
+ default: () => MenuItemGroupSelectionHOC_default
33
+ });
34
+ module.exports = __toCommonJS(MenuItemGroupSelectionHOC_exports);
35
+ var React = __toESM(require("react"));
36
+ var import_jsx_runtime = require("react/jsx-runtime");
37
+ var import_react = require("react");
38
+ var import_ds_legacy_utilities = require("@elliemae/ds-legacy-utilities");
39
+ var import_DropdownMenuContext = require("./DropdownMenuContext.js");
40
+ const noop = () => null;
41
+ function MenuItemGroupSelectionHOC(WrappedComponent, handlerName = "onSelect") {
42
+ return function({ item = {}, ...restProps }) {
43
+ const { onItemClick, selection } = (0, import_react.useContext)(import_DropdownMenuContext.DropdownMenuContext);
44
+ const propHandler = restProps[handlerName] || noop;
45
+ const handler = {
46
+ [handlerName]: (active, itemOption) => (0, import_ds_legacy_utilities.runAll)(item.onSelect, onItemClick, propHandler)({ item: itemOption, group: { ...item, active } })
47
+ };
48
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
49
+ WrappedComponent,
50
+ {
51
+ ...restProps,
52
+ ...selection ? { active: (0, import_ds_legacy_utilities.get)(selection, [item.id]) || item.active } : {},
53
+ ...handler
54
+ }
55
+ );
56
+ };
57
+ }
58
+ var MenuItemGroupSelectionHOC_default = MenuItemGroupSelectionHOC;
59
+ //# sourceMappingURL=MenuItemGroupSelectionHOC.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/deprecated/MenuItemGroupSelectionHOC.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["// @ts-nocheck\n/* eslint-disable react/display-name */\nimport React, { useContext } from 'react';\nimport { runAll, get } from '@elliemae/ds-legacy-utilities';\nimport { DropdownMenuContext } from './DropdownMenuContext.js';\n\nconst noop = () => null;\n\nfunction MenuItemGroupSelectionHOC(WrappedComponent, handlerName = 'onSelect') {\n return function ({ item = {}, ...restProps }) {\n const { onItemClick, selection } = useContext(DropdownMenuContext);\n const propHandler = restProps[handlerName] || noop;\n const handler = {\n [handlerName]: (active, itemOption) =>\n runAll(item.onSelect, onItemClick, propHandler)({ item: itemOption, group: { ...item, active } }),\n };\n return (\n <WrappedComponent\n {...restProps}\n {...(selection ? { active: get(selection, [item.id]) || item.active } : {})}\n {...handler}\n />\n );\n };\n}\n\nexport { MenuItemGroupSelectionHOC };\nexport default MenuItemGroupSelectionHOC;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADiBjB;AAfN,mBAAkC;AAClC,iCAA4B;AAC5B,iCAAoC;AAEpC,MAAM,OAAO,MAAM;AAEnB,SAAS,0BAA0B,kBAAkB,cAAc,YAAY;AAC7E,SAAO,SAAU,EAAE,OAAO,CAAC,GAAG,GAAG,UAAU,GAAG;AAC5C,UAAM,EAAE,aAAa,UAAU,QAAI,yBAAW,8CAAmB;AACjE,UAAM,cAAc,UAAU,WAAW,KAAK;AAC9C,UAAM,UAAU;AAAA,MACd,CAAC,WAAW,GAAG,CAAC,QAAQ,mBACtB,mCAAO,KAAK,UAAU,aAAa,WAAW,EAAE,EAAE,MAAM,YAAY,OAAO,EAAE,GAAG,MAAM,OAAO,EAAE,CAAC;AAAA,IACpG;AACA,WACE;AAAA,MAAC;AAAA;AAAA,QACE,GAAG;AAAA,QACH,GAAI,YAAY,EAAE,YAAQ,gCAAI,WAAW,CAAC,KAAK,EAAE,CAAC,KAAK,KAAK,OAAO,IAAI,CAAC;AAAA,QACxE,GAAG;AAAA;AAAA,IACN;AAAA,EAEJ;AACF;AAGA,IAAO,oCAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,49 @@
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 decoratedMenuItemFactory_exports = {};
30
+ __export(decoratedMenuItemFactory_exports, {
31
+ factory: () => factory,
32
+ renderOptions: () => renderOptions
33
+ });
34
+ module.exports = __toCommonJS(decoratedMenuItemFactory_exports);
35
+ var React = __toESM(require("react"));
36
+ var import_ds_legacy_common = require("@elliemae/ds-legacy-common");
37
+ var import_MenuItemClickableHOC = require("./MenuItemClickableHOC.js");
38
+ var import_MenuItemGroupSelectionHOC = require("./MenuItemGroupSelectionHOC.js");
39
+ const itemTypes = {
40
+ separator: import_ds_legacy_common.Menu.Separator,
41
+ menuitem: (0, import_MenuItemClickableHOC.MenuItemClickableHOC)(import_ds_legacy_common.Menu.Item),
42
+ radio: (0, import_MenuItemClickableHOC.MenuItemClickableHOC)(import_ds_legacy_common.Menu.ItemRadio, { type: "selectable" }),
43
+ checkbox: (0, import_MenuItemClickableHOC.MenuItemClickableHOC)(import_ds_legacy_common.Menu.ItemCheckbox, { type: "selectable" }),
44
+ submenu: import_ds_legacy_common.Menu.SubMenu,
45
+ "selection-group": (0, import_MenuItemGroupSelectionHOC.MenuItemGroupSelectionHOC)(import_ds_legacy_common.Menu.SelectionGroup)
46
+ };
47
+ const factory = (type) => (0, import_ds_legacy_common.menuItemFactory)(type, itemTypes, itemTypes.menuitem);
48
+ const renderOptions = (options) => (0, import_ds_legacy_common.renderMenuItems)(options, factory);
49
+ //# sourceMappingURL=decoratedMenuItemFactory.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/deprecated/decoratedMenuItemFactory.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
4
+ "sourcesContent": ["// @ts-nocheck\nimport { Menu, renderMenuItems, menuItemFactory } from '@elliemae/ds-legacy-common';\nimport { MenuItemClickableHOC } from './MenuItemClickableHOC.js';\nimport { MenuItemGroupSelectionHOC } from './MenuItemGroupSelectionHOC.js';\n\nconst itemTypes = {\n separator: Menu.Separator,\n menuitem: MenuItemClickableHOC(Menu.Item),\n radio: MenuItemClickableHOC(Menu.ItemRadio, { type: 'selectable' }),\n checkbox: MenuItemClickableHOC(Menu.ItemCheckbox, { type: 'selectable' }),\n submenu: Menu.SubMenu,\n 'selection-group': MenuItemGroupSelectionHOC(Menu.SelectionGroup),\n};\n\nexport const factory = (type) => menuItemFactory(type, itemTypes, itemTypes.menuitem);\nexport const renderOptions = (options) => renderMenuItems(options, factory);\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADCvB,8BAAuD;AACvD,kCAAqC;AACrC,uCAA0C;AAE1C,MAAM,YAAY;AAAA,EAChB,WAAW,6BAAK;AAAA,EAChB,cAAU,kDAAqB,6BAAK,IAAI;AAAA,EACxC,WAAO,kDAAqB,6BAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAAA,EAClE,cAAU,kDAAqB,6BAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAAA,EACxE,SAAS,6BAAK;AAAA,EACd,uBAAmB,4DAA0B,6BAAK,cAAc;AAClE;AAEO,MAAM,UAAU,CAAC,aAAS,yCAAgB,MAAM,WAAW,UAAU,QAAQ;AAC7E,MAAM,gBAAgB,CAAC,gBAAY,yCAAgB,SAAS,OAAO;",
6
+ "names": []
7
+ }