@elliemae/ds-global-header 2.3.1 → 3.0.0-alpha.3

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 (182) hide show
  1. package/dist/cjs/GlobalHeader.js +57 -0
  2. package/dist/cjs/GlobalHeader.js.map +7 -0
  3. package/dist/cjs/GlobalHeaderContainer.js +41 -0
  4. package/dist/cjs/GlobalHeaderContainer.js.map +7 -0
  5. package/dist/cjs/GlobalHeaderContext.js +46 -0
  6. package/dist/cjs/GlobalHeaderContext.js.map +7 -0
  7. package/dist/cjs/GlobalHeaderTypes.js +27 -0
  8. package/dist/cjs/GlobalHeaderTypes.js.map +7 -0
  9. package/dist/cjs/components/Breadcrumb/GlobalHeaderBreadcrumb.js +110 -0
  10. package/dist/cjs/components/Breadcrumb/GlobalHeaderBreadcrumb.js.map +7 -0
  11. package/dist/cjs/components/Breadcrumb/PureBreadcrumb.js +79 -0
  12. package/dist/cjs/components/Breadcrumb/PureBreadcrumb.js.map +7 -0
  13. package/dist/cjs/components/Breadcrumb/styles.js +83 -0
  14. package/dist/cjs/components/Breadcrumb/styles.js.map +7 -0
  15. package/dist/cjs/components/Title/GlobalHeaderTitle.js +48 -0
  16. package/dist/cjs/components/Title/GlobalHeaderTitle.js.map +7 -0
  17. package/dist/cjs/components/Toolbar/GlobalHeaderToolbar.js +49 -0
  18. package/dist/cjs/components/Toolbar/GlobalHeaderToolbar.js.map +7 -0
  19. package/dist/cjs/components/Toolbar/ToolbarItems.js +122 -0
  20. package/dist/cjs/components/Toolbar/ToolbarItems.js.map +7 -0
  21. package/dist/cjs/components/Toolbar/styles.js +61 -0
  22. package/dist/cjs/components/Toolbar/styles.js.map +7 -0
  23. package/dist/cjs/config/useGetPropsWithDefaults.js +54 -0
  24. package/dist/cjs/config/useGetPropsWithDefaults.js.map +7 -0
  25. package/dist/cjs/config/useGlobalHeader.js +53 -0
  26. package/dist/cjs/config/useGlobalHeader.js.map +7 -0
  27. package/dist/cjs/config/useValidateProps.js +109 -0
  28. package/dist/cjs/config/useValidateProps.js.map +7 -0
  29. package/dist/cjs/config/validateHelpers.js +111 -0
  30. package/dist/cjs/config/validateHelpers.js.map +7 -0
  31. package/dist/cjs/defaultProps.js +41 -0
  32. package/dist/cjs/defaultProps.js.map +7 -0
  33. package/dist/cjs/index.js +36 -0
  34. package/dist/cjs/index.js.map +7 -0
  35. package/dist/cjs/outOfTheBox/AppPicker/AppPicker.js +139 -0
  36. package/dist/cjs/outOfTheBox/AppPicker/AppPicker.js.map +7 -0
  37. package/dist/cjs/outOfTheBox/PopupMenu/PopupMenu.js +122 -0
  38. package/dist/cjs/outOfTheBox/PopupMenu/PopupMenu.js.map +7 -0
  39. package/dist/cjs/outOfTheBox/PopupMenu/PopupMenuContent.js +97 -0
  40. package/dist/cjs/outOfTheBox/PopupMenu/PopupMenuContent.js.map +7 -0
  41. package/dist/cjs/outOfTheBox/PopupMenu/styles.js +67 -0
  42. package/dist/cjs/outOfTheBox/PopupMenu/styles.js.map +7 -0
  43. package/dist/cjs/outOfTheBox/SearchToggle/SearchToggle.js +134 -0
  44. package/dist/cjs/outOfTheBox/SearchToggle/SearchToggle.js.map +7 -0
  45. package/dist/cjs/outOfTheBox/SearchToggle/styles.js +82 -0
  46. package/dist/cjs/outOfTheBox/SearchToggle/styles.js.map +7 -0
  47. package/dist/cjs/outOfTheBox/index.js +30 -0
  48. package/dist/cjs/outOfTheBox/index.js.map +7 -0
  49. package/dist/cjs/propTypes.js +56 -0
  50. package/dist/cjs/propTypes.js.map +7 -0
  51. package/dist/cjs/styles.js +43 -0
  52. package/dist/cjs/styles.js.map +7 -0
  53. package/dist/esm/GlobalHeader.js +28 -0
  54. package/dist/esm/GlobalHeader.js.map +7 -0
  55. package/dist/esm/GlobalHeaderContainer.js +12 -0
  56. package/dist/esm/GlobalHeaderContainer.js.map +7 -0
  57. package/dist/esm/GlobalHeaderContext.js +17 -0
  58. package/dist/esm/GlobalHeaderContext.js.map +7 -0
  59. package/dist/esm/GlobalHeaderTypes.js +2 -0
  60. package/dist/esm/GlobalHeaderTypes.js.map +7 -0
  61. package/dist/esm/components/Breadcrumb/GlobalHeaderBreadcrumb.js +83 -0
  62. package/dist/esm/components/Breadcrumb/GlobalHeaderBreadcrumb.js.map +7 -0
  63. package/dist/esm/components/Breadcrumb/PureBreadcrumb.js +52 -0
  64. package/dist/esm/components/Breadcrumb/PureBreadcrumb.js.map +7 -0
  65. package/dist/esm/components/Breadcrumb/styles.js +54 -0
  66. package/dist/esm/components/Breadcrumb/styles.js.map +7 -0
  67. package/dist/esm/components/Title/GlobalHeaderTitle.js +19 -0
  68. package/dist/esm/components/Title/GlobalHeaderTitle.js.map +7 -0
  69. package/dist/esm/components/Toolbar/GlobalHeaderToolbar.js +20 -0
  70. package/dist/esm/components/Toolbar/GlobalHeaderToolbar.js.map +7 -0
  71. package/dist/esm/components/Toolbar/ToolbarItems.js +95 -0
  72. package/dist/esm/components/Toolbar/ToolbarItems.js.map +7 -0
  73. package/dist/esm/components/Toolbar/styles.js +32 -0
  74. package/dist/esm/components/Toolbar/styles.js.map +7 -0
  75. package/dist/esm/config/useGetPropsWithDefaults.js +27 -0
  76. package/dist/esm/config/useGetPropsWithDefaults.js.map +7 -0
  77. package/dist/esm/config/useGlobalHeader.js +24 -0
  78. package/dist/esm/config/useGlobalHeader.js.map +7 -0
  79. package/dist/esm/config/useValidateProps.js +88 -0
  80. package/dist/esm/config/useValidateProps.js.map +7 -0
  81. package/dist/esm/config/validateHelpers.js +82 -0
  82. package/dist/esm/config/validateHelpers.js.map +7 -0
  83. package/{esm → dist/esm}/defaultProps.js +5 -3
  84. package/dist/esm/defaultProps.js.map +7 -0
  85. package/dist/esm/index.js +7 -0
  86. package/dist/esm/index.js.map +7 -0
  87. package/dist/esm/outOfTheBox/AppPicker/AppPicker.js +112 -0
  88. package/dist/esm/outOfTheBox/AppPicker/AppPicker.js.map +7 -0
  89. package/dist/esm/outOfTheBox/PopupMenu/PopupMenu.js +95 -0
  90. package/dist/esm/outOfTheBox/PopupMenu/PopupMenu.js.map +7 -0
  91. package/dist/esm/outOfTheBox/PopupMenu/PopupMenuContent.js +70 -0
  92. package/dist/esm/outOfTheBox/PopupMenu/PopupMenuContent.js.map +7 -0
  93. package/dist/esm/outOfTheBox/PopupMenu/styles.js +38 -0
  94. package/dist/esm/outOfTheBox/PopupMenu/styles.js.map +7 -0
  95. package/dist/esm/outOfTheBox/SearchToggle/SearchToggle.js +107 -0
  96. package/dist/esm/outOfTheBox/SearchToggle/SearchToggle.js.map +7 -0
  97. package/dist/esm/outOfTheBox/SearchToggle/styles.js +53 -0
  98. package/dist/esm/outOfTheBox/SearchToggle/styles.js.map +7 -0
  99. package/dist/esm/outOfTheBox/index.js +5 -0
  100. package/dist/esm/outOfTheBox/index.js.map +7 -0
  101. package/dist/esm/propTypes.js +27 -0
  102. package/dist/esm/propTypes.js.map +7 -0
  103. package/dist/esm/styles.js +14 -0
  104. package/dist/esm/styles.js.map +7 -0
  105. package/package.json +82 -73
  106. package/cjs/GlobalHeader.js +0 -37
  107. package/cjs/GlobalHeaderContainer.js +0 -24
  108. package/cjs/GlobalHeaderContext.js +0 -20
  109. package/cjs/GlobalHeaderTypes.js +0 -2
  110. package/cjs/components/Breadcrumb/GlobalHeaderBreadcrumb.js +0 -85
  111. package/cjs/components/Breadcrumb/PureBreadcrumb.js +0 -60
  112. package/cjs/components/Breadcrumb/styles.js +0 -59
  113. package/cjs/components/Title/GlobalHeaderTitle.js +0 -29
  114. package/cjs/components/Toolbar/GlobalHeaderToolbar.js +0 -30
  115. package/cjs/components/Toolbar/ToolbarItems.js +0 -107
  116. package/cjs/components/Toolbar/styles.js +0 -25
  117. package/cjs/config/useGetPropsWithDefaults.js +0 -31
  118. package/cjs/config/useGlobalHeader.js +0 -39
  119. package/cjs/config/useValidateProps.js +0 -92
  120. package/cjs/config/validateHelpers.js +0 -57
  121. package/cjs/defaultProps.js +0 -14
  122. package/cjs/index.js +0 -11
  123. package/cjs/outOfTheBox/AppPicker/AppPicker.js +0 -117
  124. package/cjs/outOfTheBox/PopupMenu/PopupMenu.js +0 -101
  125. package/cjs/outOfTheBox/PopupMenu/PopupMenuContent.js +0 -96
  126. package/cjs/outOfTheBox/PopupMenu/styles.js +0 -32
  127. package/cjs/outOfTheBox/SearchToggle/SearchToggle.js +0 -113
  128. package/cjs/outOfTheBox/SearchToggle/styles.js +0 -15
  129. package/cjs/outOfTheBox/index.js +0 -13
  130. package/cjs/propTypes.js +0 -29
  131. package/cjs/styles.js +0 -21
  132. package/esm/GlobalHeader.js +0 -28
  133. package/esm/GlobalHeaderContainer.js +0 -16
  134. package/esm/GlobalHeaderContext.js +0 -16
  135. package/esm/GlobalHeaderTypes.js +0 -1
  136. package/esm/components/Breadcrumb/GlobalHeaderBreadcrumb.js +0 -75
  137. package/esm/components/Breadcrumb/PureBreadcrumb.js +0 -49
  138. package/esm/components/Breadcrumb/styles.js +0 -48
  139. package/esm/components/Title/GlobalHeaderTitle.js +0 -21
  140. package/esm/components/Toolbar/GlobalHeaderToolbar.js +0 -22
  141. package/esm/components/Toolbar/ToolbarItems.js +0 -97
  142. package/esm/components/Toolbar/styles.js +0 -17
  143. package/esm/config/useGetPropsWithDefaults.js +0 -23
  144. package/esm/config/useGlobalHeader.js +0 -31
  145. package/esm/config/useValidateProps.js +0 -88
  146. package/esm/config/validateHelpers.js +0 -44
  147. package/esm/index.js +0 -1
  148. package/esm/outOfTheBox/AppPicker/AppPicker.js +0 -107
  149. package/esm/outOfTheBox/PopupMenu/PopupMenu.js +0 -91
  150. package/esm/outOfTheBox/PopupMenu/PopupMenuContent.js +0 -86
  151. package/esm/outOfTheBox/PopupMenu/styles.js +0 -21
  152. package/esm/outOfTheBox/SearchToggle/SearchToggle.js +0 -103
  153. package/esm/outOfTheBox/SearchToggle/styles.js +0 -7
  154. package/esm/outOfTheBox/index.js +0 -3
  155. package/esm/propTypes.js +0 -23
  156. package/esm/styles.js +0 -13
  157. package/types/GlobalHeader.d.ts +0 -39
  158. package/types/GlobalHeaderContainer.d.ts +0 -3
  159. package/types/GlobalHeaderContext.d.ts +0 -3
  160. package/types/GlobalHeaderTypes.d.ts +0 -85
  161. package/types/components/Breadcrumb/GlobalHeaderBreadcrumb.d.ts +0 -2
  162. package/types/components/Breadcrumb/PureBreadcrumb.d.ts +0 -3
  163. package/types/components/Breadcrumb/styles.d.ts +0 -5
  164. package/types/components/Title/GlobalHeaderTitle.d.ts +0 -2
  165. package/types/components/Toolbar/GlobalHeaderToolbar.d.ts +0 -2
  166. package/types/components/Toolbar/ToolbarItems.d.ts +0 -2
  167. package/types/components/Toolbar/styles.d.ts +0 -1
  168. package/types/config/useGetPropsWithDefaults.d.ts +0 -2
  169. package/types/config/useGlobalHeader.d.ts +0 -2
  170. package/types/config/useValidateProps.d.ts +0 -2
  171. package/types/config/validateHelpers.d.ts +0 -27
  172. package/types/defaultProps.d.ts +0 -2
  173. package/types/index.d.ts +0 -2
  174. package/types/outOfTheBox/AppPicker/AppPicker.d.ts +0 -8
  175. package/types/outOfTheBox/PopupMenu/PopupMenu.d.ts +0 -3
  176. package/types/outOfTheBox/PopupMenu/PopupMenuContent.d.ts +0 -3
  177. package/types/outOfTheBox/PopupMenu/styles.d.ts +0 -4
  178. package/types/outOfTheBox/SearchToggle/SearchToggle.d.ts +0 -3
  179. package/types/outOfTheBox/SearchToggle/styles.d.ts +0 -1
  180. package/types/outOfTheBox/index.d.ts +0 -3
  181. package/types/propTypes.d.ts +0 -29
  182. package/types/styles.d.ts +0 -2
@@ -1,96 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var _jsx = require('@babel/runtime/helpers/jsx');
6
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
7
- require('core-js/modules/esnext.async-iterator.map.js');
8
- require('core-js/modules/esnext.iterator.map.js');
9
- require('core-js/modules/esnext.async-iterator.filter.js');
10
- require('core-js/modules/esnext.iterator.constructor.js');
11
- require('core-js/modules/esnext.iterator.filter.js');
12
- require('core-js/modules/esnext.async-iterator.for-each.js');
13
- require('core-js/modules/esnext.iterator.for-each.js');
14
- var React = require('react');
15
- var dsPropsHelpers = require('@elliemae/ds-props-helpers');
16
- var styles = require('./styles.js');
17
- var GlobalHeaderContext = require('../../GlobalHeaderContext.js');
18
- var jsxRuntime = require('react/jsx-runtime');
19
-
20
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
21
-
22
- var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
23
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
24
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
25
-
26
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
27
-
28
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
29
- const PopupMenuContent = /*#__PURE__*/React__default["default"].memo(_ref => {
30
- let {
31
- options,
32
- onItemClick,
33
- onClose,
34
- popupOnKeyPress
35
- } = _ref;
36
- const {
37
- instanceUID
38
- } = React.useContext(GlobalHeaderContext.GlobalHeaderContext);
39
- const menuRef = React.useRef(null);
40
- React.useEffect(() => {
41
- var _menuRef$current, _menuRef$current$firs;
42
-
43
- (_menuRef$current = menuRef.current) === null || _menuRef$current === void 0 ? void 0 : (_menuRef$current$firs = _menuRef$current.firstChild) === null || _menuRef$current$firs === void 0 ? void 0 : _menuRef$current$firs.focus();
44
- }, []);
45
- const content = React.useMemo(() => options.map(option => {
46
- const {
47
- type,
48
- Icon,
49
- label = '',
50
- onClick,
51
- Content,
52
- id
53
- } = option;
54
-
55
- const ariaAndDataProps = _objectSpread(_objectSpread({}, dsPropsHelpers.getAriaProps(option)), dsPropsHelpers.getDataProps(option));
56
-
57
- const handleClick = e => {
58
- onItemClick(e);
59
- if (onClick) onClick(e);
60
- };
61
-
62
- const handleKeyDown = e => {
63
- if (e.code === 'Escape') onClose();
64
- if (popupOnKeyPress) popupOnKeyPress(e);
65
- };
66
-
67
- switch (type) {
68
- case 'separator':
69
- return /*#__PURE__*/jsxRuntime.jsx(styles.Separator, _objectSpread({}, ariaAndDataProps), "".concat(instanceUID, "-separator-").concat(label));
70
-
71
- case 'custom':
72
- return /*#__PURE__*/jsxRuntime.jsx(styles.ItemWrapper, _objectSpread(_objectSpread({
73
- onClick: handleClick,
74
- onKeyDown: handleKeyDown,
75
- id: id
76
- }, ariaAndDataProps), {}, {
77
- children: Content && /*#__PURE__*/_jsx__default["default"](Content, {})
78
- }), "".concat(instanceUID, "-popup-").concat(label));
79
-
80
- default:
81
- return /*#__PURE__*/jsxRuntime.jsxs(styles.ItemWrapper, _objectSpread(_objectSpread({
82
- onClick: handleClick,
83
- onKeyDown: handleKeyDown,
84
- id: id
85
- }, ariaAndDataProps), {}, {
86
- children: [Icon && /*#__PURE__*/_jsx__default["default"](Icon, {}), styles.Label && /*#__PURE__*/_jsx__default["default"](styles.Label, {}, void 0, label)]
87
- }), "".concat(instanceUID, "-popup-").concat(label));
88
- }
89
- }), [options, onItemClick, onClose, popupOnKeyPress, instanceUID]);
90
- return /*#__PURE__*/jsxRuntime.jsx(styles.List, {
91
- ref: menuRef,
92
- children: content
93
- });
94
- });
95
-
96
- exports.PopupMenuContent = PopupMenuContent;
@@ -1,32 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var styled = require('styled-components');
6
-
7
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
-
9
- var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
10
-
11
- const List = /*#__PURE__*/styled__default["default"].div.withConfig({
12
- componentId: "sc-snqcgs-0"
13
- })(["padding:5px 0px;background:white;"]);
14
- const ItemWrapper = /*#__PURE__*/styled__default["default"].button.withConfig({
15
- componentId: "sc-snqcgs-1"
16
- })(["display:flex;align-items:center;justify-content:center;width:100%;padding:0 20px;cursor:pointer;border:1px solid transparent;background-color:transparent;outline:none;:hover,:focus{border:", ";}"], _ref => {
17
- let {
18
- theme
19
- } = _ref;
20
- return "1px solid ".concat(theme.colors.brand[600]);
21
- });
22
- const Label = /*#__PURE__*/styled__default["default"].p.withConfig({
23
- componentId: "sc-snqcgs-2"
24
- })(["width:100%;font-size:14px;margin:10px;"]);
25
- const Separator = /*#__PURE__*/styled__default["default"].div.withConfig({
26
- componentId: "sc-snqcgs-3"
27
- })(["width:100%;border:none;border-bottom:1px solid #ccc;"]);
28
-
29
- exports.ItemWrapper = ItemWrapper;
30
- exports.Label = Label;
31
- exports.List = List;
32
- exports.Separator = Separator;
@@ -1,113 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
- var _jsx = require('@babel/runtime/helpers/jsx');
7
- var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
8
- require('core-js/modules/web.dom-collections.iterator.js');
9
- require('core-js/modules/esnext.async-iterator.filter.js');
10
- require('core-js/modules/esnext.iterator.constructor.js');
11
- require('core-js/modules/esnext.iterator.filter.js');
12
- require('core-js/modules/esnext.async-iterator.for-each.js');
13
- require('core-js/modules/esnext.iterator.for-each.js');
14
- var React = require('react');
15
- var dsIcons = require('@elliemae/ds-icons');
16
- var dsPropsHelpers = require('@elliemae/ds-props-helpers');
17
- var dsIcon = require('@elliemae/ds-icon');
18
- var dsForm = require('@elliemae/ds-form');
19
- var styles = require('./styles.js');
20
- var styles$1 = require('../../components/Toolbar/styles.js');
21
- var jsxRuntime = require('react/jsx-runtime');
22
-
23
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
24
-
25
- var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
26
- var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
27
- var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
28
-
29
- const _excluded = ["id", "componentProps"];
30
-
31
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
32
-
33
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
34
- const SearchToggle = _ref => {
35
- let {
36
- id,
37
- componentProps
38
- } = _ref,
39
- otherProps = _objectWithoutProperties__default["default"](_ref, _excluded);
40
-
41
- const [isOpen, setIsOpen] = React.useState(false);
42
- const inputRef = React.useRef(null);
43
- const triggerRef = React.useRef(null);
44
- const containerRef = React.useRef(null);
45
- const {
46
- onNext,
47
- onPrevious,
48
- currentResultIndex,
49
- totalResults,
50
- placeholder,
51
- value,
52
- onChange,
53
- onBlur,
54
- onClear,
55
- isOpen: userIsOpen,
56
- onKeyDown,
57
- onClick
58
- } = componentProps;
59
- const handleOnClick = React.useCallback(e => {
60
- if (userIsOpen === undefined) setIsOpen(true);
61
- if (onClick) onClick(e);
62
- }, [onClick, userIsOpen]);
63
- const handleOnKeyDown = React.useCallback(e => {
64
- if (userIsOpen === undefined) {
65
- if (e.code === 'Escape') {
66
- setIsOpen(false);
67
- setTimeout(() => {
68
- var _triggerRef$current;
69
-
70
- return (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.focus();
71
- });
72
- }
73
- }
74
-
75
- if (onKeyDown) onKeyDown(e);
76
- }, [onKeyDown, userIsOpen]);
77
- const handleOnBlur = React.useCallback(() => {
78
- setTimeout(() => {
79
- var _containerRef$current;
80
-
81
- const contains = (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.contains(document.activeElement);
82
- if (value === '' && !contains) setIsOpen(false);
83
- });
84
- }, [value]);
85
- return userIsOpen || isOpen ? /*#__PURE__*/jsxRuntime.jsx(styles.StyledNavSearchBoxContainer, {
86
- onKeyDown: handleOnKeyDown,
87
- ref: containerRef,
88
- onBlur: handleOnBlur,
89
- children: /*#__PURE__*/_jsx__default["default"](dsForm.DSNavSearchBox, {
90
- onNext: onNext,
91
- onPrevious: onPrevious,
92
- currentResultIndex: currentResultIndex,
93
- totalResults: totalResults,
94
- onClear: onClear,
95
- placeholder: placeholder,
96
- onChange: onChange,
97
- value: value,
98
- onBlur: onBlur,
99
- innerRef: inputRef,
100
- autoFocus: true
101
- })
102
- }) : /*#__PURE__*/jsxRuntime.jsx(styles$1.Button, _objectSpread(_objectSpread({
103
- onClick: handleOnClick,
104
- ref: triggerRef,
105
- id: id
106
- }, dsPropsHelpers.getDataProps(otherProps)), {}, {
107
- children: /*#__PURE__*/_jsx__default["default"](dsIcons.Search, {
108
- color: dsIcon.DSIconColors.WHITE
109
- })
110
- }));
111
- };
112
-
113
- exports.SearchToggle = SearchToggle;
@@ -1,15 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var styled = require('styled-components');
6
-
7
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
-
9
- var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
10
-
11
- const StyledNavSearchBoxContainer = /*#__PURE__*/styled__default["default"].div.withConfig({
12
- componentId: "sc-1dlcqwh-0"
13
- })(["background:white;position:relative;min-width:260px;& .em-ds-button{margin-right:2px;height:24px;width:24px;}& .em-ds-input{border:none;outline:none;box-shadow:none;}& .em-ds-input:focus{border:none;box-shadow:none;}& .em-ds-input.em-ds-input--clearable:hover{border:none;outline:none;box-shadow:none;}& .em-ds-input-addon-wrapper{box-shadow:none;}& .em-ds-input-addon-wrapper:hover{outline:none;}& .em-ds-input-addon-wrapper__addon:hover{outline:none;}& .em-ds-input:not(.floating-label-input-controller):hover:active{border:none;outline:none;box-shadow:none;}"]);
14
-
15
- exports.StyledNavSearchBoxContainer = StyledNavSearchBoxContainer;
@@ -1,13 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var AppPicker = require('./AppPicker/AppPicker.js');
6
- var PopupMenu = require('./PopupMenu/PopupMenu.js');
7
- var SearchToggle = require('./SearchToggle/SearchToggle.js');
8
-
9
-
10
-
11
- exports.AppPicker = AppPicker.AppPicker;
12
- exports.PopupMenu = PopupMenu.PopupMenu;
13
- exports.SearchToggle = SearchToggle.SearchToggle;
package/cjs/propTypes.js DELETED
@@ -1,29 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var reactDesc = require('react-desc');
6
-
7
- const breadcrumbItem = reactDesc.PropTypes.shape({
8
- label: reactDesc.PropTypes.string.description('breadrcrumb item label'),
9
- hasNext: reactDesc.PropTypes.bool.description('whether the item has a child or not'),
10
- isSelected: reactDesc.PropTypes.bool.description('whether the item is selected or not'),
11
- onClick: reactDesc.PropTypes.func.description('Callback executed on click')
12
- });
13
- const toolbarItem = reactDesc.PropTypes.shape({
14
- label: reactDesc.PropTypes.string.description('title tag description'),
15
- type: reactDesc.PropTypes.oneOf(['ds-app-picker', 'ds-popup-menu', 'ds-search-toggle', 'custom']).description('use to select one of the out-of-the-box types of items'),
16
- componentProps: reactDesc.PropTypes.object.description('props of out-of-the-box component'),
17
- Icon: reactDesc.PropTypes.func.description('Icon to display'),
18
- onClick: reactDesc.PropTypes.func.description('Callback executed on click')
19
- });
20
- const globalHeaderProps = {
21
- Logo: reactDesc.PropTypes.func.description('Global Header Logo to render. Logo and LogoWithBrand are going to swap during window resizing.'),
22
- LogoWithBrand: reactDesc.PropTypes.func.description('Global Header Logo With Brand title to render. Logo and LogoWithBrand are going to swap during window resizing.'),
23
- breadcrumb: reactDesc.PropTypes.arrayOf(breadcrumbItem).description('Breadcrumb items to display. max 3 levels'),
24
- toolbar: reactDesc.PropTypes.arrayOf(toolbarItem).description('Toolbar items')
25
- };
26
-
27
- exports.breadcrumbItem = breadcrumbItem;
28
- exports.globalHeaderProps = globalHeaderProps;
29
- exports.toolbarItem = toolbarItem;
package/cjs/styles.js DELETED
@@ -1,21 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var styled = require('styled-components');
6
- var dsGrid = require('@elliemae/ds-grid');
7
-
8
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
-
10
- var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
11
-
12
- const Wrapper = /*#__PURE__*/styled__default["default"](dsGrid.GridContainer).withConfig({
13
- componentId: "sc-1v5zxxm-0"
14
- })(["background-image:linear-gradient(45deg,#0f364a 0%,#1b6392 54%,#164566 100%);color:", ";width:100%;height:40px;padding:0 24px 0 12px;"], _ref => {
15
- let {
16
- theme
17
- } = _ref;
18
- return theme.colors.neutral['000'];
19
- });
20
-
21
- exports.Wrapper = Wrapper;
@@ -1,28 +0,0 @@
1
- import _jsx from '@babel/runtime/helpers/esm/jsx';
2
- import 'react';
3
- import { describe } from 'react-desc';
4
- import { globalHeaderProps } from './propTypes.js';
5
- import { GlobalHeaderTitle } from './components/Title/GlobalHeaderTitle.js';
6
- import { GlobalHeaderBreadcrumb } from './components/Breadcrumb/GlobalHeaderBreadcrumb.js';
7
- import { GlobalHeaderToolbar } from './components/Toolbar/GlobalHeaderToolbar.js';
8
- import { GlobalHeaderContext } from './GlobalHeaderContext.js';
9
- import { useGlobalHeader } from './config/useGlobalHeader.js';
10
- import { defaultProps } from './defaultProps.js';
11
- import { GlobalHeaderContainer } from './GlobalHeaderContainer.js';
12
- import { useValidateProps } from './config/useValidateProps.js';
13
-
14
- var _GlobalHeaderTitle, _GlobalHeaderBreadcru, _GlobalHeaderToolbar;
15
-
16
- const GlobalHeader = props => {
17
- useValidateProps(props);
18
- const ctx = useGlobalHeader(props);
19
- return /*#__PURE__*/_jsx(GlobalHeaderContainer, {}, void 0, /*#__PURE__*/_jsx(GlobalHeaderContext.Provider, {
20
- value: ctx
21
- }, void 0, _GlobalHeaderTitle || (_GlobalHeaderTitle = /*#__PURE__*/_jsx(GlobalHeaderTitle, {})), _GlobalHeaderBreadcru || (_GlobalHeaderBreadcru = /*#__PURE__*/_jsx(GlobalHeaderBreadcrumb, {})), _GlobalHeaderToolbar || (_GlobalHeaderToolbar = /*#__PURE__*/_jsx(GlobalHeaderToolbar, {}))));
22
- };
23
-
24
- GlobalHeader.defaultProps = defaultProps;
25
- const GlobalHeaderWithSchema = describe(GlobalHeader);
26
- GlobalHeaderWithSchema.propTypes = globalHeaderProps;
27
-
28
- export { GlobalHeader, GlobalHeaderWithSchema };
@@ -1,16 +0,0 @@
1
- import _jsx from '@babel/runtime/helpers/esm/jsx';
2
- import 'react';
3
- import { Wrapper } from './styles.js';
4
-
5
- const GlobalHeaderContainer = _ref => {
6
- let {
7
- children
8
- } = _ref;
9
- return /*#__PURE__*/_jsx("header", {
10
- "data-testid": "ds-global-header"
11
- }, void 0, /*#__PURE__*/_jsx(Wrapper, {
12
- cols: ['auto', '1fr', 'auto']
13
- }, void 0, children));
14
- };
15
-
16
- export { GlobalHeaderContainer };
@@ -1,16 +0,0 @@
1
- import { createContext } from 'react';
2
- import { defaultProps } from './defaultProps.js';
3
-
4
- const noop = () => null;
5
-
6
- const defaultContext = {
7
- props: defaultProps,
8
- showIconOnly: false,
9
- setShowIconOnly: noop,
10
- instanceUID: '',
11
- globalHeaderToolbarGrid: [],
12
- globalHeaderBreadcrumbGrid: []
13
- };
14
- const GlobalHeaderContext = /*#__PURE__*/createContext(defaultContext);
15
-
16
- export { GlobalHeaderContext };
@@ -1 +0,0 @@
1
-
@@ -1,75 +0,0 @@
1
- import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
2
- import _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';
3
- import _jsx from '@babel/runtime/helpers/esm/jsx';
4
- import 'core-js/modules/esnext.async-iterator.map.js';
5
- import 'core-js/modules/esnext.iterator.map.js';
6
- import 'core-js/modules/esnext.async-iterator.filter.js';
7
- import 'core-js/modules/esnext.iterator.constructor.js';
8
- import 'core-js/modules/esnext.iterator.filter.js';
9
- import 'core-js/modules/esnext.async-iterator.for-each.js';
10
- import 'core-js/modules/esnext.iterator.for-each.js';
11
- import { useContext, useRef, useEffect } from 'react';
12
- import { Grid } from '@elliemae/ds-grid';
13
- import { Pipe } from './styles.js';
14
- import { GlobalHeaderContext } from '../../GlobalHeaderContext.js';
15
- import { PureBreadcrumb } from './PureBreadcrumb.js';
16
- import { jsx } from 'react/jsx-runtime';
17
-
18
- const _excluded = ["label"];
19
-
20
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
21
-
22
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
23
- const GlobalHeaderBreadcrumb = () => {
24
- const {
25
- props: {
26
- breadcrumb
27
- },
28
- instanceUID,
29
- showIconOnly,
30
- setShowIconOnly,
31
- globalHeaderBreadcrumbGrid
32
- } = useContext(GlobalHeaderContext);
33
- const breakpoint = useRef(null);
34
- const flexRegion = useRef(null);
35
- useEffect(() => {
36
- const evaluateShowIconOnly = () => {
37
- if (flexRegion && flexRegion.current && (flexRegion === null || flexRegion === void 0 ? void 0 : flexRegion.current.offsetWidth) <= 0 && !breakpoint.current) {
38
- setShowIconOnly(true);
39
- breakpoint.current = window.innerWidth;
40
- } else if (breakpoint && breakpoint.current !== null && window.innerWidth >= breakpoint.current) {
41
- setShowIconOnly(false);
42
- breakpoint.current = null;
43
- }
44
- };
45
-
46
- evaluateShowIconOnly();
47
- window.addEventListener('resize', evaluateShowIconOnly);
48
- return () => window.removeEventListener('resize', evaluateShowIconOnly);
49
- }, [breakpoint, flexRegion, setShowIconOnly]);
50
- return /*#__PURE__*/_jsx(Grid, {
51
- height: "100%",
52
- alignItems: "center",
53
- justifyContent: "flex-start",
54
- "aria-label": "breadcrumbs",
55
- cols: globalHeaderBreadcrumbGrid,
56
- role: "navigation"
57
- }, void 0, /*#__PURE__*/_jsx(Pipe, {
58
- showIconOnly: showIconOnly
59
- }), breadcrumb === null || breadcrumb === void 0 ? void 0 : breadcrumb.map(item => {
60
- const {
61
- label
62
- } = item,
63
- rest = _objectWithoutProperties(item, _excluded);
64
-
65
- return /*#__PURE__*/jsx(PureBreadcrumb, _objectSpread({
66
- label: label,
67
- length: breadcrumb.length
68
- }, rest), "".concat(instanceUID, "-breadcrumb-item-").concat(label));
69
- }), /*#__PURE__*/jsx("div", {
70
- id: "global-header-flex-region",
71
- ref: flexRegion
72
- }));
73
- };
74
-
75
- export { GlobalHeaderBreadcrumb };
@@ -1,49 +0,0 @@
1
- import 'core-js/modules/esnext.async-iterator.filter.js';
2
- import 'core-js/modules/esnext.iterator.constructor.js';
3
- import 'core-js/modules/esnext.iterator.filter.js';
4
- import 'core-js/modules/esnext.async-iterator.for-each.js';
5
- import 'core-js/modules/esnext.iterator.for-each.js';
6
- import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
7
- import _jsx from '@babel/runtime/helpers/esm/jsx';
8
- import _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';
9
- import React from 'react';
10
- import { ChevronSmallRight } from '@elliemae/ds-icons';
11
- import { getDataProps } from '@elliemae/ds-props-helpers';
12
- import { BreadcrumbItem, LabelButton, Label } from './styles.js';
13
- import { jsx } from 'react/jsx-runtime';
14
-
15
- var _ChevronSmallRight;
16
-
17
- const _excluded = ["onClick", "isSelected", "length", "label", "hasNext", "id"];
18
-
19
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
20
-
21
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
22
- const PureBreadcrumb = /*#__PURE__*/React.memo(_ref => {
23
- let {
24
- onClick,
25
- isSelected,
26
- length,
27
- label,
28
- hasNext,
29
- id
30
- } = _ref,
31
- rest = _objectWithoutProperties(_ref, _excluded);
32
-
33
- return /*#__PURE__*/_jsx(BreadcrumbItem, {}, void 0, /*#__PURE__*/jsx(LabelButton, _objectSpread(_objectSpread({
34
- onClick: onClick,
35
- "aria-selected": isSelected,
36
- "data-testid": "gh-breadcrumb-btn",
37
- id: id
38
- }, getDataProps(rest)), {}, {
39
- children: /*#__PURE__*/_jsx(Label, {
40
- isSelected: !!isSelected,
41
- isOnlyItem: length === 1
42
- }, void 0, label)
43
- })), hasNext && (_ChevronSmallRight || (_ChevronSmallRight = /*#__PURE__*/_jsx(ChevronSmallRight, {
44
- size: "m",
45
- fill: "#FFF"
46
- }))));
47
- });
48
-
49
- export { PureBreadcrumb };
@@ -1,48 +0,0 @@
1
- import styled from 'styled-components';
2
-
3
- const Pipe = /*#__PURE__*/styled.span.withConfig({
4
- componentId: "sc-1n5l527-0"
5
- })(["margin:0 7px 0 0;border-left:", ";height:20px;"], _ref => {
6
- let {
7
- showIconOnly
8
- } = _ref;
9
- return showIconOnly ? 'none' : '1px solid #fff';
10
- });
11
- const BreadcrumbItem = /*#__PURE__*/styled.div.withConfig({
12
- componentId: "sc-1n5l527-1"
13
- })(["display:flex;align-items:center;height:100%;"]);
14
- const LabelButton = /*#__PURE__*/styled.button.withConfig({
15
- componentId: "sc-1n5l527-2"
16
- })(["width:fit-content;height:100%;margin:0;padding:0;border:1px solid transparent;background-color:transparent;outline:none;cursor:pointer;position:relative;&:focus{:before{content:'';position:absolute;z-index:2;top:2px;left:-5px;width:calc(100% + 10px);height:calc(100% - 4px);border:2px solid ", ";border-radius:4px;}}"], _ref2 => {
17
- let {
18
- theme
19
- } = _ref2;
20
- return theme.colors.neutral['000'];
21
- });
22
- const Label = /*#__PURE__*/styled.p.withConfig({
23
- componentId: "sc-1n5l527-3"
24
- })(["color:", ";", ";font-size:16px;text-transform:uppercase;border-bottom:", ";margin:3px 5px 0 5px;:hover{", ";}"], _ref3 => {
25
- let {
26
- theme
27
- } = _ref3;
28
- return theme.colors.neutral['000'];
29
- }, _ref4 => {
30
- let {
31
- theme,
32
- isSelected
33
- } = _ref4;
34
- return "-webkit-text-stroke: 0.4px ".concat(isSelected ? theme.colors.neutral['000'] : 'transparent');
35
- }, _ref5 => {
36
- let {
37
- isSelected,
38
- isOnlyItem
39
- } = _ref5;
40
- return "2px solid ".concat(isSelected && !isOnlyItem ? '#FFF' : 'transparent');
41
- }, _ref6 => {
42
- let {
43
- theme
44
- } = _ref6;
45
- return "-webkit-text-stroke: 0.4px ".concat(theme.colors.neutral['000']);
46
- });
47
-
48
- export { BreadcrumbItem, Label, LabelButton, Pipe };
@@ -1,21 +0,0 @@
1
- import _jsx from '@babel/runtime/helpers/esm/jsx';
2
- import { useContext } from 'react';
3
- import { Grid } from '@elliemae/ds-grid';
4
- import { GlobalHeaderContext } from '../../GlobalHeaderContext.js';
5
-
6
- const GlobalHeaderTitle = () => {
7
- const {
8
- props: {
9
- Logo,
10
- LogoWithBrand
11
- },
12
- showIconOnly
13
- } = useContext(GlobalHeaderContext);
14
- return /*#__PURE__*/_jsx(Grid, {
15
- alignItems: "center",
16
- pr: showIconOnly ? '0px' : '36px',
17
- cols: showIconOnly ? ['auto'] : ['auto', '1fr']
18
- }, void 0, Logo && showIconOnly && /*#__PURE__*/_jsx(Logo, {}), LogoWithBrand && !showIconOnly && /*#__PURE__*/_jsx(LogoWithBrand, {}));
19
- };
20
-
21
- export { GlobalHeaderTitle };
@@ -1,22 +0,0 @@
1
- import _jsx from '@babel/runtime/helpers/esm/jsx';
2
- import { useContext } from 'react';
3
- import { Grid } from '@elliemae/ds-grid';
4
- import { ToolbarItems } from './ToolbarItems.js';
5
- import { GlobalHeaderContext } from '../../GlobalHeaderContext.js';
6
-
7
- var _ToolbarItems;
8
- const GlobalHeaderToolbar = () => {
9
- const {
10
- globalHeaderToolbarGrid
11
- } = useContext(GlobalHeaderContext);
12
- return /*#__PURE__*/_jsx(Grid, {
13
- height: "100%",
14
- alignItems: "center",
15
- justifyContent: "center",
16
- gutter: "xxs",
17
- cols: globalHeaderToolbarGrid,
18
- role: "toolbar"
19
- }, void 0, _ToolbarItems || (_ToolbarItems = /*#__PURE__*/_jsx(ToolbarItems, {})));
20
- };
21
-
22
- export { GlobalHeaderToolbar };