@bigbinary/neetoui 6.5.7 → 6.5.9

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 (50) hide show
  1. package/{formik.js → dist/TreeSelect-54c59138.js} +336 -5933
  2. package/dist/TreeSelect-54c59138.js.map +1 -0
  3. package/{layouts.js → dist/Typography-6b2170d4.js} +1883 -730
  4. package/dist/Typography-6b2170d4.js.map +1 -0
  5. package/{formik.cjs.js → dist/cjs/TreeSelect-40898804.js} +555 -6139
  6. package/dist/cjs/TreeSelect-40898804.js.map +1 -0
  7. package/{layouts.cjs.js → dist/cjs/Typography-3f90f925.js} +1905 -727
  8. package/dist/cjs/Typography-3f90f925.js.map +1 -0
  9. package/dist/cjs/createClass-ca103cfb.js +57 -0
  10. package/dist/cjs/createClass-ca103cfb.js.map +1 -0
  11. package/dist/cjs/formik.js +624 -0
  12. package/dist/cjs/formik.js.map +1 -0
  13. package/dist/cjs/index-099304bb.js +104 -0
  14. package/dist/cjs/index-099304bb.js.map +1 -0
  15. package/dist/cjs/index.js +13829 -0
  16. package/dist/cjs/index.js.map +1 -0
  17. package/dist/cjs/layouts.js +375 -0
  18. package/dist/cjs/layouts.js.map +1 -0
  19. package/dist/cjs/managers.js +11 -0
  20. package/dist/cjs/managers.js.map +1 -0
  21. package/{managers.cjs.js → dist/cjs/overlayManager-a0827ae7.js} +4 -54
  22. package/dist/cjs/overlayManager-a0827ae7.js.map +1 -0
  23. package/dist/createClass-27bd48bc.js +52 -0
  24. package/dist/createClass-27bd48bc.js.map +1 -0
  25. package/dist/formik.js +604 -0
  26. package/dist/formik.js.map +1 -0
  27. package/dist/index-ed90c85d.js +98 -0
  28. package/dist/index-ed90c85d.js.map +1 -0
  29. package/dist/index.css +4 -0
  30. package/dist/index.js +13764 -0
  31. package/dist/index.js.map +1 -0
  32. package/dist/layouts.js +367 -0
  33. package/dist/layouts.js.map +1 -0
  34. package/dist/managers.js +3 -0
  35. package/dist/managers.js.map +1 -0
  36. package/{managers.js → dist/overlayManager-4d5be56b.js} +3 -51
  37. package/dist/overlayManager-4d5be56b.js.map +1 -0
  38. package/index.d.ts +2 -0
  39. package/package.json +13 -17
  40. package/formik.cjs.js.map +0 -1
  41. package/formik.js.map +0 -1
  42. package/index.cjs.js +0 -42484
  43. package/index.cjs.js.map +0 -1
  44. package/index.js +0 -42414
  45. package/index.js.map +0 -1
  46. package/layouts.cjs.js.map +0 -1
  47. package/layouts.js.map +0 -1
  48. package/managers.cjs.js.map +0 -1
  49. package/managers.js.map +0 -1
  50. /package/{index.css → dist/cjs/index.css} +0 -0
@@ -0,0 +1,375 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var Typography = require('./Typography-3f90f925.js');
7
+ var neetoIcons = require('@bigbinary/neeto-icons');
8
+ var ramda = require('ramda');
9
+ var index = require('./index-099304bb.js');
10
+ var logos = require('@bigbinary/neeto-icons/logos');
11
+ var reactRouterDom = require('react-router-dom');
12
+ require('./createClass-ca103cfb.js');
13
+ require('@bigbinary/neeto-cist');
14
+ require('util');
15
+ require('react-dom');
16
+
17
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
18
+
19
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
20
+
21
+ var FeaturedTooltip = function FeaturedTooltip(_ref) {
22
+ var label = _ref.label,
23
+ description = _ref.description;
24
+ return /*#__PURE__*/React__default["default"].createElement("div", {
25
+ className: "neeto-ui-flex neeto-ui-flex-col sidebar-featured-tooltip"
26
+ }, /*#__PURE__*/React__default["default"].createElement(Typography.Typography, {
27
+ className: "neeto-ui-text-center sidebar-featured-tooltip__title",
28
+ lineHeight: "tight",
29
+ style: "h5",
30
+ weight: "semibold"
31
+ }, label), description && /*#__PURE__*/React__default["default"].createElement(Typography.Typography, {
32
+ className: "neeto-ui-text-center neeto-ui-text-gray-400 sidebar-featured-tooltip__description",
33
+ lineHeight: "normal",
34
+ style: "body3"
35
+ }, description));
36
+ };
37
+
38
+ var TOOLTIP_STYLES$1 = {
39
+ "default": "default",
40
+ featured: "featured"
41
+ };
42
+ var NavIconWrapper = function NavIconWrapper(_ref) {
43
+ var tooltipStyle = _ref.tooltipStyle,
44
+ description = _ref.description,
45
+ icon = _ref.icon,
46
+ label = _ref.label,
47
+ children = _ref.children;
48
+ var tooltipContent = tooltipStyle === TOOLTIP_STYLES$1.featured ? /*#__PURE__*/React__default["default"].createElement(FeaturedTooltip, {
49
+ description: description,
50
+ icon: icon,
51
+ label: label
52
+ }) : label;
53
+ var content = /*#__PURE__*/React__default["default"].createElement(Typography.Tooltip, {
54
+ content: tooltipContent,
55
+ delay: [400, 40],
56
+ duration: [200, 200],
57
+ position: "right",
58
+ className: Typography.classnames({
59
+ "sidebar-featured-tooltip__content": tooltipStyle === TOOLTIP_STYLES$1.featured
60
+ })
61
+ }, children);
62
+ return content;
63
+ };
64
+
65
+ var AppSwitcher = function AppSwitcher(_ref) {
66
+ var tooltipStyle = _ref.tooltipStyle,
67
+ onAppSwitcherToggle = _ref.onAppSwitcherToggle;
68
+ return /*#__PURE__*/React__default["default"].createElement(NavIconWrapper, {
69
+ icon: /*#__PURE__*/React__default["default"].createElement(neetoIcons.AppSwitcher, null),
70
+ label: "Product switcher",
71
+ tooltipStyle: tooltipStyle
72
+ }, /*#__PURE__*/React__default["default"].createElement("button", {
73
+ className: "neeto-ui-flex neeto-ui-items-center neeto-ui-justify-start neeto-ui-w-full neeto-ui-select-none neeto-ui-sidebar__link neeto-ui-sidebar__link--app-switcher neeto-ui-sidebar__link--button shadow-none",
74
+ "data-cy": "app-switcher-button",
75
+ onClick: onAppSwitcherToggle
76
+ }, /*#__PURE__*/React__default["default"].createElement("span", {
77
+ className: "neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-sidebar__link-icon"
78
+ }, /*#__PURE__*/React__default["default"].createElement(neetoIcons.AppSwitcher, {
79
+ size: 24
80
+ }))));
81
+ };
82
+
83
+ /* eslint-disable react/display-name */
84
+ var HelpSection = /*#__PURE__*/React.forwardRef(function (_, ref) {
85
+ return /*#__PURE__*/React__default["default"].createElement("button", {
86
+ className: "neeto-ui-sidebar__link neeto-ui-sidebar__link--button shadow-none",
87
+ "data-cy": "help-button",
88
+ ref: ref
89
+ }, /*#__PURE__*/React__default["default"].createElement("span", {
90
+ className: "neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-sidebar__link-icon"
91
+ }, /*#__PURE__*/React__default["default"].createElement(neetoIcons.Help, {
92
+ size: 24
93
+ })));
94
+ });
95
+ HelpSection.displayName = "HelpSection";
96
+
97
+ var _excluded$2 = ["onClick", "label", "icon"];
98
+ var HelpLinkSection = function HelpLinkSection(_ref) {
99
+ var links = _ref.links;
100
+ return /*#__PURE__*/React__default["default"].createElement("ul", null, links === null || links === void 0 ? void 0 : links.map(function (_ref2, idx) {
101
+ var _ref2$onClick = _ref2.onClick,
102
+ onClick = _ref2$onClick === void 0 ? Typography.noop : _ref2$onClick,
103
+ _ref2$label = _ref2.label,
104
+ label = _ref2$label === void 0 ? "" : _ref2$label,
105
+ _ref2$icon = _ref2.icon,
106
+ icon = _ref2$icon === void 0 ? null : _ref2$icon,
107
+ otherProps = Typography._objectWithoutProperties(_ref2, _excluded$2);
108
+ var IconSVG = icon;
109
+ return /*#__PURE__*/React__default["default"].createElement("li", {
110
+ className: "neeto-ui-help-sublist__item",
111
+ key: idx
112
+ }, /*#__PURE__*/React__default["default"].createElement("button", Typography._extends({
113
+ className: "neeto-ui-help-sublist__item-btn",
114
+ onClick: onClick
115
+ }, otherProps), icon && /*#__PURE__*/React__default["default"].createElement("span", {
116
+ className: "neeto-ui-help-sublist__item-btn-icon"
117
+ }, /*#__PURE__*/React__default["default"].createElement(IconSVG, null)), /*#__PURE__*/React__default["default"].createElement(Typography.Typography, {
118
+ className: "neeto-ui-help-sublist__item-btn-label",
119
+ component: "span",
120
+ style: "body2",
121
+ weight: "normal"
122
+ }, label)));
123
+ }));
124
+ };
125
+
126
+ 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; }
127
+ 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) { Typography._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; }
128
+ var HelpSectionTooltip = function HelpSectionTooltip(_ref) {
129
+ var helpSectionProps = _ref.helpSectionProps;
130
+ var documentationProps = helpSectionProps.documentationProps,
131
+ keyboardShortcutProps = helpSectionProps.keyboardShortcutProps,
132
+ liveChatProps = helpSectionProps.liveChatProps,
133
+ changelogProps = helpSectionProps.changelogProps;
134
+ var helpLinks = [documentationProps && _objectSpread(_objectSpread({}, documentationProps), {}, {
135
+ label: "Documentation",
136
+ icon: neetoIcons.Book,
137
+ "data-cy": "help-link-documentation-button"
138
+ }), keyboardShortcutProps && _objectSpread(_objectSpread({}, keyboardShortcutProps), {}, {
139
+ label: "Keyboard shortcuts",
140
+ icon: neetoIcons.Keyboard,
141
+ "data-cy": "help-link-keyboard-shortcut-button"
142
+ }), liveChatProps && _objectSpread(_objectSpread({}, liveChatProps), {}, {
143
+ label: "Chat with us",
144
+ icon: neetoIcons.ChatEmpty,
145
+ "data-cy": "help-link-live-chat-button"
146
+ }), changelogProps && _objectSpread(_objectSpread({}, changelogProps), {}, {
147
+ label: "What's new?",
148
+ icon: neetoIcons.Gift,
149
+ "data-cy": "help-link-changelog-button"
150
+ })].filter(Boolean);
151
+ return /*#__PURE__*/React__default["default"].createElement(HelpLinkSection, {
152
+ links: ramda.values(helpLinks)
153
+ });
154
+ };
155
+
156
+ /* eslint-disable react/display-name */
157
+ var ProfileSection = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
158
+ var profileInfo = _ref.profileInfo,
159
+ onClick = _ref.onClick;
160
+ var dataCy = profileInfo["data-cy"] || "profile-section";
161
+ return /*#__PURE__*/React__default["default"].createElement("button", {
162
+ className: "neeto-ui-w-full neeto-ui-text-left neeto-ui-sidebar__profile-wrapper",
163
+ "data-cy": dataCy,
164
+ ref: ref,
165
+ onClick: onClick
166
+ }, /*#__PURE__*/React__default["default"].createElement("span", {
167
+ className: "neeto-ui-flex neeto-ui-items-center neeto-ui-flex-shrink-0 neeto-ui-w-full neeto-ui-sidebar__profile"
168
+ }, /*#__PURE__*/React__default["default"].createElement(index.Avatar, {
169
+ className: "neeto-ui-flex-shrink-0",
170
+ size: "large",
171
+ user: profileInfo
172
+ })));
173
+ });
174
+ ProfileSection.displayName = "ProfileSection";
175
+
176
+ var _excluded$1 = ["onClick", "label", "icon"];
177
+ var LinkSection = function LinkSection(_ref) {
178
+ var links = _ref.links;
179
+ return /*#__PURE__*/React__default["default"].createElement("ul", {
180
+ className: "neeto-ui-profile-sublist"
181
+ }, links === null || links === void 0 ? void 0 : links.map(function (_ref2, idx) {
182
+ var onClick = _ref2.onClick,
183
+ label = _ref2.label,
184
+ _ref2$icon = _ref2.icon,
185
+ icon = _ref2$icon === void 0 ? null : _ref2$icon,
186
+ otherProps = Typography._objectWithoutProperties(_ref2, _excluded$1);
187
+ var IconSVG = icon;
188
+ return /*#__PURE__*/React__default["default"].createElement("li", {
189
+ className: "neeto-ui-profile-sublist__item",
190
+ key: idx
191
+ }, /*#__PURE__*/React__default["default"].createElement("button", Typography._extends({
192
+ onClick: onClick
193
+ }, otherProps, {
194
+ className: "neeto-ui-profile-sublist__item-btn"
195
+ }), icon && /*#__PURE__*/React__default["default"].createElement("span", {
196
+ className: "neeto-ui-profile-sublist__item-btn-icon"
197
+ }, /*#__PURE__*/React__default["default"].createElement(IconSVG, null)), /*#__PURE__*/React__default["default"].createElement(Typography.Typography, {
198
+ className: "neeto-ui-profile-sublist__item-btn-label",
199
+ component: "span",
200
+ style: "body2",
201
+ weight: "normal"
202
+ }, label)));
203
+ }));
204
+ };
205
+
206
+ var truncate = function truncate(str, length) {
207
+ return str && str.length > length ? "".concat(str.substring(0, length - 3), "...") : str;
208
+ };
209
+
210
+ var ProfileSectionTooltip = function ProfileSectionTooltip(_ref) {
211
+ var profileInfo = _ref.profileInfo;
212
+ var name = profileInfo.name,
213
+ email = profileInfo.email,
214
+ topLinks = profileInfo.topLinks,
215
+ bottomLinks = profileInfo.bottomLinks,
216
+ customContent = profileInfo.customContent;
217
+ return /*#__PURE__*/React__default["default"].createElement("div", {
218
+ className: "neeto-ui-flex neeto-ui-flex-col neeto-ui-profile-popup"
219
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
220
+ className: Typography.classnames("neeto-ui-relative neeto-ui-flex neeto-ui-items-center neeto-ui-p-3")
221
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
222
+ className: "top-0 left-0"
223
+ }, /*#__PURE__*/React__default["default"].createElement(index.Avatar, {
224
+ size: "large",
225
+ user: profileInfo
226
+ })), /*#__PURE__*/React__default["default"].createElement("div", {
227
+ className: "neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-grow neeto-ui-min-w-0 neeto-ui-pl-3"
228
+ }, /*#__PURE__*/React__default["default"].createElement(Typography.Typography, {
229
+ className: "neeto-ui-m-0",
230
+ component: "h2",
231
+ lineHeight: "tight",
232
+ style: "h5",
233
+ title: name,
234
+ weight: "semibold"
235
+ }, truncate(name, 18)), email && /*#__PURE__*/React__default["default"].createElement(Typography.Typography, {
236
+ className: "neeto-ui-w-full neeto-ui-truncate neeto-ui-text-gray-600",
237
+ lineHeight: "tight",
238
+ style: "body3"
239
+ }, email))), /*#__PURE__*/React__default["default"].createElement("div", {
240
+ className: "neeto-ui-sidebar__profile-wrapper-custom-content"
241
+ }, customContent), topLinks && /*#__PURE__*/React__default["default"].createElement(LinkSection, {
242
+ links: topLinks
243
+ }), bottomLinks && /*#__PURE__*/React__default["default"].createElement(LinkSection, {
244
+ links: bottomLinks
245
+ }));
246
+ };
247
+
248
+ var Footer = function Footer(_ref) {
249
+ var profileInfo = _ref.profileInfo,
250
+ tooltipStyle = _ref.tooltipStyle,
251
+ _ref$showAppSwitcher = _ref.showAppSwitcher,
252
+ showAppSwitcher = _ref$showAppSwitcher === void 0 ? false : _ref$showAppSwitcher,
253
+ onAppSwitcherToggle = _ref.onAppSwitcherToggle,
254
+ helpLinks = _ref.helpLinks;
255
+ var _useState = React.useState(false),
256
+ _useState2 = Typography._slicedToArray(_useState, 2),
257
+ isProfileDropdownOpen = _useState2[0],
258
+ setIsProfileDropdownOpen = _useState2[1];
259
+ return /*#__PURE__*/React__default["default"].createElement("div", {
260
+ className: "neeto-ui-sidebar__footer"
261
+ }, helpLinks && /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement(Typography.Tooltip, {
262
+ interactive: true,
263
+ className: "neeto-ui-help-popup-wrapper",
264
+ content: /*#__PURE__*/React__default["default"].createElement(HelpSectionTooltip, {
265
+ helpSectionProps: helpLinks
266
+ }),
267
+ hideOnClick: false,
268
+ position: "right",
269
+ theme: "light"
270
+ }, /*#__PURE__*/React__default["default"].createElement(HelpSection, null))), showAppSwitcher && /*#__PURE__*/React__default["default"].createElement(AppSwitcher, {
271
+ tooltipStyle: tooltipStyle,
272
+ onAppSwitcherToggle: onAppSwitcherToggle
273
+ }), profileInfo && /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement(Typography.Tooltip, {
274
+ interactive: true,
275
+ className: "neeto-ui-profile-popup-wrapper",
276
+ content: /*#__PURE__*/React__default["default"].createElement(ProfileSectionTooltip, {
277
+ profileInfo: profileInfo
278
+ }),
279
+ hideOnClick: false,
280
+ position: "right",
281
+ theme: "light"
282
+ }, /*#__PURE__*/React__default["default"].createElement(ProfileSection, {
283
+ profileInfo: profileInfo,
284
+ onClick: function onClick() {
285
+ setIsProfileDropdownOpen(!isProfileDropdownOpen);
286
+ }
287
+ }))));
288
+ };
289
+
290
+ var Header = function Header(_ref) {
291
+ var organizationInfo = _ref.organizationInfo;
292
+ var LogoSVG = organizationInfo === null || organizationInfo === void 0 ? void 0 : organizationInfo.logo;
293
+ return /*#__PURE__*/React__default["default"].createElement("div", {
294
+ className: "neeto-ui-flex neeto-ui-items-center neeto-ui-sidebar__header",
295
+ "data-cy": "sidebar-info"
296
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
297
+ className: "neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-flex-shrink-0 neeto-ui-sidebar__logo"
298
+ }, LogoSVG || /*#__PURE__*/React__default["default"].createElement(logos.Neeto, null)));
299
+ };
300
+
301
+ var _excluded = ["label", "to", "icon", "description"];
302
+ var Links = function Links(_ref) {
303
+ var _ref$navLinks = _ref.navLinks,
304
+ navLinks = _ref$navLinks === void 0 ? [] : _ref$navLinks,
305
+ tooltipStyle = _ref.tooltipStyle;
306
+ var location = reactRouterDom.useLocation();
307
+ return /*#__PURE__*/React__default["default"].createElement("div", {
308
+ className: "neeto-ui-sidebar__links"
309
+ }, navLinks.map(function (_ref2, mainIndex) {
310
+ var label = _ref2.label,
311
+ to = _ref2.to,
312
+ icon = _ref2.icon,
313
+ description = _ref2.description,
314
+ otherProps = Typography._objectWithoutProperties(_ref2, _excluded);
315
+ var IconSVG = icon;
316
+ var url = new URL(to, window.location.href);
317
+ var _isActive = location.pathname.startsWith(url.pathname);
318
+ return /*#__PURE__*/React__default["default"].createElement(NavIconWrapper, {
319
+ description: description,
320
+ icon: /*#__PURE__*/React__default["default"].createElement(IconSVG, {
321
+ color: "#68737D"
322
+ }),
323
+ key: mainIndex,
324
+ label: label,
325
+ tooltipStyle: tooltipStyle
326
+ }, /*#__PURE__*/React__default["default"].createElement(reactRouterDom.NavLink, Typography._extends({
327
+ activeClassName: "active",
328
+ className: "neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none neeto-ui-sidebar__link",
329
+ isActive: function isActive() {
330
+ return _isActive;
331
+ },
332
+ to: to
333
+ }, otherProps), icon && /*#__PURE__*/React__default["default"].createElement("div", {
334
+ className: "neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-sidebar__link-icon",
335
+ "data-testid": label
336
+ }, /*#__PURE__*/React__default["default"].createElement(IconSVG, null))));
337
+ }));
338
+ };
339
+
340
+ var TOOLTIP_STYLES = {
341
+ "default": "default",
342
+ featured: "featured"
343
+ };
344
+ var Sidebar = function Sidebar(_ref) {
345
+ var organizationInfo = _ref.organizationInfo,
346
+ _ref$navLinks = _ref.navLinks,
347
+ navLinks = _ref$navLinks === void 0 ? [] : _ref$navLinks,
348
+ _ref$tooltipStyle = _ref.tooltipStyle,
349
+ tooltipStyle = _ref$tooltipStyle === void 0 ? TOOLTIP_STYLES.featured : _ref$tooltipStyle,
350
+ profileInfo = _ref.profileInfo,
351
+ helpLinks = _ref.helpLinks,
352
+ _ref$showAppSwitcher = _ref.showAppSwitcher,
353
+ showAppSwitcher = _ref$showAppSwitcher === void 0 ? false : _ref$showAppSwitcher,
354
+ _ref$onAppSwitcherTog = _ref.onAppSwitcherToggle,
355
+ onAppSwitcherToggle = _ref$onAppSwitcherTog === void 0 ? Typography.noop : _ref$onAppSwitcherTog;
356
+ return /*#__PURE__*/React__default["default"].createElement("div", {
357
+ "data-cy": "sidebar-wrapper",
358
+ "data-testid": "sidebar",
359
+ className: Typography.classnames("neeto-ui-sidebar neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-shrink-0 neeto-ui-overflow-y-auto neeto-ui-overflow-x-hidden", "neeto-ui-sidebar--collapsed")
360
+ }, /*#__PURE__*/React__default["default"].createElement(Header, {
361
+ organizationInfo: organizationInfo
362
+ }), /*#__PURE__*/React__default["default"].createElement(Links, {
363
+ navLinks: navLinks,
364
+ tooltipStyle: tooltipStyle
365
+ }), /*#__PURE__*/React__default["default"].createElement(Footer, {
366
+ helpLinks: helpLinks,
367
+ profileInfo: profileInfo,
368
+ showAppSwitcher: showAppSwitcher,
369
+ tooltipStyle: tooltipStyle,
370
+ onAppSwitcherToggle: onAppSwitcherToggle
371
+ }));
372
+ };
373
+
374
+ exports.Sidebar = Sidebar;
375
+ //# sourceMappingURL=layouts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layouts.js","sources":["../../src/components/layouts/Sidebar/FeaturedTooltip.jsx","../../src/components/layouts/Sidebar/NavIconWrapper.jsx","../../src/components/layouts/Sidebar/Footer/AppSwitcher.jsx","../../src/components/layouts/Sidebar/HelpSection/index.jsx","../../src/components/layouts/Sidebar/HelpSection/LinkSection.jsx","../../src/components/layouts/Sidebar/HelpSection/Tooltip.jsx","../../src/components/layouts/Sidebar/ProfileSection/index.jsx","../../src/components/layouts/Sidebar/ProfileSection/LinkSection.jsx","../../src/components/layouts/Sidebar/ProfileSection/utils.js","../../src/components/layouts/Sidebar/ProfileSection/Tooltip.jsx","../../src/components/layouts/Sidebar/Footer/index.jsx","../../src/components/layouts/Sidebar/Header.jsx","../../src/components/layouts/Sidebar/Links.jsx","../../src/components/layouts/Sidebar/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport Typography from \"../../Typography\";\n\nconst FeaturedTooltip = ({ label, description }) => (\n <div className=\"neeto-ui-flex neeto-ui-flex-col sidebar-featured-tooltip\">\n <Typography\n className=\"neeto-ui-text-center sidebar-featured-tooltip__title\"\n lineHeight=\"tight\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n {description && (\n <Typography\n className=\"neeto-ui-text-center neeto-ui-text-gray-400 sidebar-featured-tooltip__description\"\n lineHeight=\"normal\"\n style=\"body3\"\n >\n {description}\n </Typography>\n )}\n </div>\n);\n\nexport default FeaturedTooltip;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\n\nimport Tooltip from \"components/Tooltip\";\n\nimport FeaturedTooltip from \"./FeaturedTooltip\";\n\nconst TOOLTIP_STYLES = { default: \"default\", featured: \"featured\" };\n\nconst NavIconWrapper = ({\n tooltipStyle,\n description,\n icon,\n label,\n children,\n}) => {\n const tooltipContent =\n tooltipStyle === TOOLTIP_STYLES.featured ? (\n <FeaturedTooltip description={description} icon={icon} label={label} />\n ) : (\n label\n );\n\n const content = (\n <Tooltip\n content={tooltipContent}\n delay={[400, 40]}\n duration={[200, 200]}\n position=\"right\"\n className={classnames({\n \"sidebar-featured-tooltip__content\":\n tooltipStyle === TOOLTIP_STYLES.featured,\n })}\n >\n {children}\n </Tooltip>\n );\n\n return content;\n};\n\nexport default NavIconWrapper;\n","import React from \"react\";\n\nimport { AppSwitcher as AppSwitcherIcon } from \"neetoicons\";\n\nimport NavIconWrapper from \"../NavIconWrapper\";\n\nconst AppSwitcher = ({ tooltipStyle, onAppSwitcherToggle }) => (\n <NavIconWrapper\n icon={<AppSwitcherIcon />}\n label=\"Product switcher\"\n tooltipStyle={tooltipStyle}\n >\n <button\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-start neeto-ui-w-full neeto-ui-select-none neeto-ui-sidebar__link neeto-ui-sidebar__link--app-switcher neeto-ui-sidebar__link--button shadow-none\"\n data-cy=\"app-switcher-button\"\n onClick={onAppSwitcherToggle}\n >\n <span className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-sidebar__link-icon\">\n <AppSwitcherIcon size={24} />\n </span>\n </button>\n </NavIconWrapper>\n);\n\nexport default AppSwitcher;\n","/* eslint-disable react/display-name */\n\nimport React, { forwardRef } from \"react\";\n\nimport { Help } from \"neetoicons\";\n\nconst HelpSection = forwardRef((_, ref) => (\n <button\n className=\"neeto-ui-sidebar__link neeto-ui-sidebar__link--button shadow-none\"\n data-cy=\"help-button\"\n ref={ref}\n >\n <span className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-sidebar__link-icon\">\n <Help size={24} />\n </span>\n </button>\n));\n\nHelpSection.displayName = \"HelpSection\";\n\nexport default HelpSection;\n","import React from \"react\";\n\nimport { noop } from \"utils\";\n\nimport Typography from \"../../../Typography\";\n\nconst HelpLinkSection = ({ links }) => (\n <ul>\n {links?.map(\n ({ onClick = noop, label = \"\", icon = null, ...otherProps }, idx) => {\n const IconSVG = icon;\n\n return (\n <li className=\"neeto-ui-help-sublist__item\" key={idx}>\n <button\n className=\"neeto-ui-help-sublist__item-btn\"\n onClick={onClick}\n {...otherProps}\n >\n {icon && (\n <span className=\"neeto-ui-help-sublist__item-btn-icon\">\n <IconSVG />\n </span>\n )}\n <Typography\n className=\"neeto-ui-help-sublist__item-btn-label\"\n component=\"span\"\n style=\"body2\"\n weight=\"normal\"\n >\n {label}\n </Typography>\n </button>\n </li>\n );\n }\n )}\n </ul>\n);\nexport default HelpLinkSection;\n","import React from \"react\";\n\nimport { Book, Keyboard, Gift, ChatEmpty } from \"neetoicons\";\nimport { values } from \"ramda\";\n\nimport HelpLinkSection from \"./LinkSection\";\n\nconst HelpSectionTooltip = ({ helpSectionProps }) => {\n const {\n documentationProps,\n keyboardShortcutProps,\n liveChatProps,\n changelogProps,\n } = helpSectionProps;\n\n const helpLinks = [\n documentationProps && {\n ...documentationProps,\n label: \"Documentation\",\n icon: Book,\n \"data-cy\": \"help-link-documentation-button\",\n },\n keyboardShortcutProps && {\n ...keyboardShortcutProps,\n label: \"Keyboard shortcuts\",\n icon: Keyboard,\n \"data-cy\": \"help-link-keyboard-shortcut-button\",\n },\n liveChatProps && {\n ...liveChatProps,\n label: \"Chat with us\",\n icon: ChatEmpty,\n \"data-cy\": \"help-link-live-chat-button\",\n },\n changelogProps && {\n ...changelogProps,\n label: \"What's new?\",\n icon: Gift,\n \"data-cy\": \"help-link-changelog-button\",\n },\n ].filter(Boolean);\n\n return <HelpLinkSection links={values(helpLinks)} />;\n};\n\nexport default HelpSectionTooltip;\n","/* eslint-disable react/display-name */\nimport React, { forwardRef } from \"react\";\n\nimport Avatar from \"components/Avatar\";\n\nconst ProfileSection = forwardRef(({ profileInfo, onClick }, ref) => {\n const dataCy = profileInfo[\"data-cy\"] || \"profile-section\";\n\n return (\n <button\n className=\"neeto-ui-w-full neeto-ui-text-left neeto-ui-sidebar__profile-wrapper\"\n data-cy={dataCy}\n ref={ref}\n onClick={onClick}\n >\n <span className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-flex-shrink-0 neeto-ui-w-full neeto-ui-sidebar__profile\">\n <Avatar\n className=\"neeto-ui-flex-shrink-0\"\n size=\"large\"\n user={profileInfo}\n />\n </span>\n </button>\n );\n});\n\nProfileSection.displayName = \"ProfileSection\";\n\nexport default ProfileSection;\n","import React from \"react\";\n\nimport Typography from \"components/Typography\";\n\nconst LinkSection = ({ links }) => (\n <ul className=\"neeto-ui-profile-sublist\">\n {links?.map(({ onClick, label, icon = null, ...otherProps }, idx) => {\n const IconSVG = icon;\n\n return (\n <li className=\"neeto-ui-profile-sublist__item\" key={idx}>\n <button\n onClick={onClick}\n {...otherProps}\n className=\"neeto-ui-profile-sublist__item-btn\"\n >\n {icon && (\n <span className=\"neeto-ui-profile-sublist__item-btn-icon\">\n <IconSVG />\n </span>\n )}\n <Typography\n className=\"neeto-ui-profile-sublist__item-btn-label\"\n component=\"span\"\n style=\"body2\"\n weight=\"normal\"\n >\n {label}\n </Typography>\n </button>\n </li>\n );\n })}\n </ul>\n);\n\nexport default LinkSection;\n","export const truncate = (str, length) =>\n str && str.length > length ? `${str.substring(0, length - 3)}...` : str;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\n\nimport Avatar from \"components/Avatar\";\nimport Typography from \"components/Typography\";\n\nimport LinkSection from \"./LinkSection\";\nimport { truncate } from \"./utils\";\n\nconst ProfileSectionTooltip = ({ profileInfo }) => {\n const { name, email, topLinks, bottomLinks, customContent } = profileInfo;\n\n return (\n <div className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-profile-popup\">\n <div\n className={classnames(\n \"neeto-ui-relative neeto-ui-flex neeto-ui-items-center neeto-ui-p-3\"\n )}\n >\n <div className=\"top-0 left-0\">\n <Avatar size=\"large\" user={profileInfo} />\n </div>\n <div className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-grow neeto-ui-min-w-0 neeto-ui-pl-3\">\n <Typography\n className=\"neeto-ui-m-0\"\n component=\"h2\"\n lineHeight=\"tight\"\n style=\"h5\"\n title={name}\n weight=\"semibold\"\n >\n {truncate(name, 18)}\n </Typography>\n {email && (\n <Typography\n className=\"neeto-ui-w-full neeto-ui-truncate neeto-ui-text-gray-600\"\n lineHeight=\"tight\"\n style=\"body3\"\n >\n {email}\n </Typography>\n )}\n </div>\n </div>\n <div className=\"neeto-ui-sidebar__profile-wrapper-custom-content\">\n {customContent}\n </div>\n {topLinks && <LinkSection links={topLinks} />}\n {bottomLinks && <LinkSection links={bottomLinks} />}\n </div>\n );\n};\n\nexport default ProfileSectionTooltip;\n","import React, { useState } from \"react\";\n\nimport Tooltip from \"components/Tooltip\";\n\nimport AppSwitcher from \"./AppSwitcher\";\n\nimport HelpSection from \"../HelpSection\";\nimport HelpSectionTooltip from \"../HelpSection/Tooltip\";\nimport ProfileSection from \"../ProfileSection\";\nimport ProfileSectionTooltip from \"../ProfileSection/Tooltip\";\n\nconst Footer = ({\n profileInfo,\n tooltipStyle,\n showAppSwitcher = false,\n onAppSwitcherToggle,\n helpLinks,\n}) => {\n const [isProfileDropdownOpen, setIsProfileDropdownOpen] = useState(false);\n\n return (\n <div className=\"neeto-ui-sidebar__footer\">\n {helpLinks && (\n <div>\n <Tooltip\n interactive\n className=\"neeto-ui-help-popup-wrapper\"\n content={<HelpSectionTooltip helpSectionProps={helpLinks} />}\n hideOnClick={false}\n position=\"right\"\n theme=\"light\"\n >\n <HelpSection />\n </Tooltip>\n </div>\n )}\n {showAppSwitcher && (\n <AppSwitcher\n tooltipStyle={tooltipStyle}\n onAppSwitcherToggle={onAppSwitcherToggle}\n />\n )}\n {profileInfo && (\n <div>\n <Tooltip\n interactive\n className=\"neeto-ui-profile-popup-wrapper\"\n content={<ProfileSectionTooltip profileInfo={profileInfo} />}\n hideOnClick={false}\n position=\"right\"\n theme=\"light\"\n >\n <ProfileSection\n profileInfo={profileInfo}\n onClick={() => {\n setIsProfileDropdownOpen(!isProfileDropdownOpen);\n }}\n />\n </Tooltip>\n </div>\n )}\n </div>\n );\n};\n\nexport default Footer;\n","import React from \"react\";\n\nimport { Neeto } from \"neetoicons/logos\";\n\nconst Header = ({ organizationInfo }) => {\n const LogoSVG = organizationInfo?.logo;\n\n return (\n <div\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-sidebar__header\"\n data-cy=\"sidebar-info\"\n >\n <div className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-flex-shrink-0 neeto-ui-sidebar__logo\">\n {LogoSVG || <Neeto />}\n </div>\n </div>\n );\n};\n\nexport default Header;\n","import React from \"react\";\n\nimport { NavLink, useLocation } from \"react-router-dom\";\n\nimport NavIconWrapper from \"./NavIconWrapper\";\n\nconst Links = ({ navLinks = [], tooltipStyle }) => {\n const location = useLocation();\n\n return (\n <div className=\"neeto-ui-sidebar__links\">\n {navLinks.map(\n ({ label, to, icon, description, ...otherProps }, mainIndex) => {\n const IconSVG = icon;\n const url = new URL(to, window.location.href);\n const isActive = location.pathname.startsWith(url.pathname);\n\n return (\n <NavIconWrapper\n description={description}\n icon={<IconSVG color=\"#68737D\" />}\n key={mainIndex}\n label={label}\n tooltipStyle={tooltipStyle}\n >\n <NavLink\n activeClassName=\"active\"\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none neeto-ui-sidebar__link\"\n isActive={() => isActive}\n to={to}\n {...otherProps}\n >\n {icon && (\n <div\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-center neeto-ui-sidebar__link-icon\"\n data-testid={label}\n >\n <IconSVG />\n </div>\n )}\n </NavLink>\n </NavIconWrapper>\n );\n }\n )}\n </div>\n );\n};\n\nexport default Links;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport { noop } from \"utils\";\n\nimport Footer from \"./Footer\";\nimport Header from \"./Header\";\nimport Links from \"./Links\";\n\nconst TOOLTIP_STYLES = {\n default: \"default\",\n featured: \"featured\",\n};\n\nconst Sidebar = ({\n organizationInfo,\n navLinks = [],\n tooltipStyle = TOOLTIP_STYLES.featured,\n profileInfo,\n helpLinks,\n showAppSwitcher = false,\n onAppSwitcherToggle = noop,\n}) => (\n <div\n data-cy=\"sidebar-wrapper\"\n data-testid=\"sidebar\"\n className={classnames(\n \"neeto-ui-sidebar neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-shrink-0 neeto-ui-overflow-y-auto neeto-ui-overflow-x-hidden\",\n \"neeto-ui-sidebar--collapsed\"\n )}\n >\n <Header organizationInfo={organizationInfo} />\n <Links navLinks={navLinks} tooltipStyle={tooltipStyle} />\n <Footer\n helpLinks={helpLinks}\n profileInfo={profileInfo}\n showAppSwitcher={showAppSwitcher}\n tooltipStyle={tooltipStyle}\n onAppSwitcherToggle={onAppSwitcherToggle}\n />\n </div>\n);\n\nSidebar.propTypes = {\n /**\n * To specify the organization info to be rendered in the Sidebar\n */\n organizationInfo: PropTypes.shape({\n logo: PropTypes.element,\n name: PropTypes.string,\n subdomain: PropTypes.string,\n }),\n /**\n * To specify the tooltip styles\n */\n tooltipStyle: PropTypes.oneOf(Object.keys(TOOLTIP_STYLES)),\n /**\n * To provide the nav links to be rendered in the Sidebar\n */\n navLinks: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n description: PropTypes.string,\n to: PropTypes.string,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n })\n ).isRequired,\n\n /**\n * To specify the profile info to be rendered in the Sidebar\n */\n profileInfo: PropTypes.shape({\n name: PropTypes.string,\n email: PropTypes.string,\n customContent: PropTypes.element,\n topLinks: PropTypes.arrayOf(\n PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n })\n ),\n bottomLinks: PropTypes.arrayOf(\n PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n })\n ),\n }),\n\n /**\n * To specify the is app switcher visible\n */\n showAppSwitcher: PropTypes.bool,\n /**\n * To provide the function to toggle app switcher\n */\n onAppSwitcherToggle: PropTypes.func,\n /**\n * To provide the help links to be rendered in the Sidebar\n */\n helpLinks: PropTypes.shape({\n documentationProps: PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n }),\n keyboardShortcutProps: PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n }),\n liveChatProps: PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n }),\n changelogProps: PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n }),\n }),\n};\n\nexport default Sidebar;\n"],"names":["FeaturedTooltip","_ref","label","description","React","createElement","className","Typography","lineHeight","style","weight","TOOLTIP_STYLES","featured","NavIconWrapper","tooltipStyle","icon","children","tooltipContent","content","Tooltip","delay","duration","position","classnames","AppSwitcher","onAppSwitcherToggle","AppSwitcherIcon","onClick","size","HelpSection","forwardRef","_","ref","Help","displayName","HelpLinkSection","links","map","_ref2","idx","_ref2$onClick","noop","_ref2$label","_ref2$icon","otherProps","_objectWithoutProperties","_excluded","IconSVG","key","_extends","component","HelpSectionTooltip","helpSectionProps","documentationProps","keyboardShortcutProps","liveChatProps","changelogProps","helpLinks","_objectSpread","Book","Keyboard","ChatEmpty","Gift","filter","Boolean","values","ProfileSection","profileInfo","dataCy","Avatar","user","LinkSection","truncate","str","length","concat","substring","ProfileSectionTooltip","name","email","topLinks","bottomLinks","customContent","title","Footer","_ref$showAppSwitcher","showAppSwitcher","_useState","useState","_useState2","_slicedToArray","isProfileDropdownOpen","setIsProfileDropdownOpen","interactive","hideOnClick","theme","Header","organizationInfo","LogoSVG","logo","Neeto","Links","_ref$navLinks","navLinks","location","useLocation","mainIndex","to","url","URL","window","href","isActive","pathname","startsWith","color","NavLink","activeClassName","Sidebar","_ref$tooltipStyle","_ref$onAppSwitcherTog"],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var overlayManager = require('./overlayManager-a0827ae7.js');
6
+ require('./createClass-ca103cfb.js');
7
+
8
+
9
+
10
+ exports.manager = overlayManager.manager;
11
+ //# sourceMappingURL=managers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managers.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
@@ -1,60 +1,10 @@
1
1
  'use strict';
2
2
 
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- function _classCallCheck(instance, Constructor) {
6
- if (!(instance instanceof Constructor)) {
7
- throw new TypeError("Cannot call a class as a function");
8
- }
9
- }
10
-
11
- function _typeof(obj) {
12
- "@babel/helpers - typeof";
13
-
14
- return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
15
- return typeof obj;
16
- } : function (obj) {
17
- return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
18
- }, _typeof(obj);
19
- }
20
-
21
- function _toPrimitive(input, hint) {
22
- if (_typeof(input) !== "object" || input === null) return input;
23
- var prim = input[Symbol.toPrimitive];
24
- if (prim !== undefined) {
25
- var res = prim.call(input, hint || "default");
26
- if (_typeof(res) !== "object") return res;
27
- throw new TypeError("@@toPrimitive must return a primitive value.");
28
- }
29
- return (hint === "string" ? String : Number)(input);
30
- }
31
-
32
- function _toPropertyKey(arg) {
33
- var key = _toPrimitive(arg, "string");
34
- return _typeof(key) === "symbol" ? key : String(key);
35
- }
36
-
37
- function _defineProperties(target, props) {
38
- for (var i = 0; i < props.length; i++) {
39
- var descriptor = props[i];
40
- descriptor.enumerable = descriptor.enumerable || false;
41
- descriptor.configurable = true;
42
- if ("value" in descriptor) descriptor.writable = true;
43
- Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor);
44
- }
45
- }
46
- function _createClass(Constructor, protoProps, staticProps) {
47
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
48
- if (staticProps) _defineProperties(Constructor, staticProps);
49
- Object.defineProperty(Constructor, "prototype", {
50
- writable: false
51
- });
52
- return Constructor;
53
- }
3
+ var createClass = require('./createClass-ca103cfb.js');
54
4
 
55
5
  var OverlayManager = /*#__PURE__*/function () {
56
6
  function OverlayManager() {
57
- _classCallCheck(this, OverlayManager);
7
+ createClass._classCallCheck(this, OverlayManager);
58
8
  this.overlays = [];
59
9
  this.previouslyFocusedElements = [];
60
10
  this.subscribers = new Set();
@@ -66,7 +16,7 @@ var OverlayManager = /*#__PURE__*/function () {
66
16
  this.getTopMostOverlay = this.getTopMostOverlay.bind(this);
67
17
  this.subscribe = this.subscribe.bind(this);
68
18
  }
69
- _createClass(OverlayManager, [{
19
+ createClass._createClass(OverlayManager, [{
70
20
  key: "subscribe",
71
21
  value: function subscribe(callback) {
72
22
  var _this = this;
@@ -128,4 +78,4 @@ var OverlayManager = /*#__PURE__*/function () {
128
78
  var manager = new OverlayManager();
129
79
 
130
80
  exports.manager = manager;
131
- //# sourceMappingURL=managers.cjs.js.map
81
+ //# sourceMappingURL=overlayManager-a0827ae7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"overlayManager-a0827ae7.js","sources":["../../src/managers/overlayManager.js"],"sourcesContent":["class OverlayManager {\n constructor() {\n this.overlays = [];\n this.previouslyFocusedElements = [];\n this.subscribers = new Set();\n this.add = this.add.bind(this);\n this.remove = this.remove.bind(this);\n this.isTopOverlay = this.isTopOverlay.bind(this);\n this.hasOverlays = this.hasOverlays.bind(this);\n this.getFinalFocusInOverlay = this.getFinalFocusInOverlay.bind(this);\n this.getTopMostOverlay = this.getTopMostOverlay.bind(this);\n this.subscribe = this.subscribe.bind(this);\n }\n\n subscribe(callback) {\n this.subscribers.add(callback);\n\n return () => this.subscribers.delete(callback);\n }\n\n add(overlay, elementToFocus) {\n this.overlays.push(overlay);\n this.previouslyFocusedElements.push(elementToFocus);\n\n this.subscribers.forEach(subscriber => subscriber());\n }\n\n remove(overlay, elementToFocus) {\n this.overlays = this.overlays.filter(_overlay => _overlay !== overlay);\n this.previouslyFocusedElements = this.previouslyFocusedElements.filter(\n _elementToFocus => _elementToFocus !== elementToFocus\n );\n\n this.subscribers.forEach(subscriber => subscriber());\n }\n\n isTopOverlay(overlay) {\n const topMostOverlay = this.overlays[this.overlays.length - 1];\n\n return topMostOverlay === overlay;\n }\n\n hasOverlays() {\n return this.overlays.length > 0;\n }\n\n getFinalFocusInOverlay() {\n const finalFocus = this.previouslyFocusedElements.pop();\n this.subscribers.forEach(subscriber => subscriber());\n\n return finalFocus;\n }\n\n getTopMostOverlay() {\n return this.overlays[this.overlays.length - 1];\n }\n}\n\nexport const manager = new OverlayManager();\n"],"names":["OverlayManager","_classCallCheck","overlays","previouslyFocusedElements","subscribers","Set","add","bind","remove","isTopOverlay","hasOverlays","getFinalFocusInOverlay","getTopMostOverlay","subscribe","_createClass","key","value","callback","_this","overlay","elementToFocus","push","forEach","subscriber","filter","_overlay","_elementToFocus","topMostOverlay","length","finalFocus","pop","manager"],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ function _typeof(obj) {
2
+ "@babel/helpers - typeof";
3
+
4
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
5
+ return typeof obj;
6
+ } : function (obj) {
7
+ return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
8
+ }, _typeof(obj);
9
+ }
10
+
11
+ function _toPrimitive(input, hint) {
12
+ if (_typeof(input) !== "object" || input === null) return input;
13
+ var prim = input[Symbol.toPrimitive];
14
+ if (prim !== undefined) {
15
+ var res = prim.call(input, hint || "default");
16
+ if (_typeof(res) !== "object") return res;
17
+ throw new TypeError("@@toPrimitive must return a primitive value.");
18
+ }
19
+ return (hint === "string" ? String : Number)(input);
20
+ }
21
+
22
+ function _toPropertyKey(arg) {
23
+ var key = _toPrimitive(arg, "string");
24
+ return _typeof(key) === "symbol" ? key : String(key);
25
+ }
26
+
27
+ function _classCallCheck(instance, Constructor) {
28
+ if (!(instance instanceof Constructor)) {
29
+ throw new TypeError("Cannot call a class as a function");
30
+ }
31
+ }
32
+
33
+ function _defineProperties(target, props) {
34
+ for (var i = 0; i < props.length; i++) {
35
+ var descriptor = props[i];
36
+ descriptor.enumerable = descriptor.enumerable || false;
37
+ descriptor.configurable = true;
38
+ if ("value" in descriptor) descriptor.writable = true;
39
+ Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor);
40
+ }
41
+ }
42
+ function _createClass(Constructor, protoProps, staticProps) {
43
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
44
+ if (staticProps) _defineProperties(Constructor, staticProps);
45
+ Object.defineProperty(Constructor, "prototype", {
46
+ writable: false
47
+ });
48
+ return Constructor;
49
+ }
50
+
51
+ export { _typeof as _, _toPropertyKey as a, _createClass as b, _classCallCheck as c };
52
+ //# sourceMappingURL=createClass-27bd48bc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createClass-27bd48bc.js","sources":["../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../node_modules/@babel/runtime/helpers/esm/createClass.js"],"sourcesContent":["export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}"],"names":["toPrimitive","toPropertyKey"],"mappings":"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"}