@bigbinary/neeto-molecules 4.0.110 → 4.0.112-beta1

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.
@@ -0,0 +1,268 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
3
+ import classnames from 'classnames';
4
+ import { handleMetaClick } from '@bigbinary/neeto-commons-frontend/react-utils';
5
+ import { hyphenize } from '@bigbinary/neeto-commons-frontend/utils/general';
6
+ import Home from '@bigbinary/neeto-icons/Home';
7
+ import Typography from '@bigbinary/neetoui/Typography';
8
+ import Button from '@bigbinary/neetoui/Button';
9
+ import { curry, is, includes, __, all, equals, omit } from 'ramda';
10
+ import { NavLink, useHistory } from 'react-router-dom';
11
+ import { Fragment } from 'react';
12
+ import { isNotEmpty, isPresent, hyphenate } from '@bigbinary/neeto-cist';
13
+ import Segments from '@bigbinary/neeto-filters-frontend/Segments';
14
+ import { useNavigationCheckpoints } from '@bigbinary/neeto-commons-frontend/react-utils/useRegisterNavigationCheckpoint';
15
+ import { jsx, jsxs } from 'react/jsx-runtime';
16
+ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
17
+ import { n } from './inject-css-C2dztUxs.js';
18
+
19
+ var SUB_LINK_TYPES = {
20
+ SYSTEM_VIEW: "system_view",
21
+ SEGMENTS: "segments"
22
+ };
23
+ var SELECTED_NAV_LINK_ROUTE_STORAGE_KEY = "selectedNavLinkRoute";
24
+ var DEFAULT_HOME_PATH = "/admin";
25
+ var SIDEBAR_WIDTH_KEY = "neeto-molecules-sidebar-width";
26
+ var MIN_SIDEBAR_WIDTH = 12.5 * 16;
27
+ var MAX_SIDEBAR_WIDTH = 20 * 16;
28
+ var DEFAULT_SIDEBAR_WIDTH = 15 * 16;
29
+ var PINNED_MORE_NAV_LINKS_KEY = "pinnedMoreNavLinks";
30
+ var SPECIAL_APP_NAMES = {
31
+ bugwatch: "BugWatch"
32
+ };
33
+
34
+ var _excluded$1 = ["checkpointKey", "to", "href", "children"];
35
+ function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
36
+ function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
37
+ var CheckPointNavLinks = function CheckPointNavLinks(_ref) {
38
+ var checkpointKey = _ref.checkpointKey,
39
+ to = _ref.to,
40
+ href = _ref.href,
41
+ children = _ref.children,
42
+ others = _objectWithoutProperties(_ref, _excluded$1);
43
+ var _useNavigationCheckpo = useNavigationCheckpoints(checkpointKey),
44
+ checkpoint = _useNavigationCheckpo[checkpointKey];
45
+ var LinkElement = href ? "a" : NavLink;
46
+ var linkProps = href ? _objectSpread$2({
47
+ href: href,
48
+ key: href
49
+ }, others) : _objectSpread$2({
50
+ to: checkpoint || to,
51
+ key: to
52
+ }, others);
53
+ return /*#__PURE__*/jsx(LinkElement, _objectSpread$2(_objectSpread$2({}, linkProps), {}, {
54
+ children: children
55
+ }));
56
+ };
57
+
58
+ var isSubRouteActive = function isSubRouteActive(subRoute, location) {
59
+ var currentBrowserUrl = new URL(location.pathname + location.search + location.hash, window.location.origin);
60
+ var targetUrl = new URL(subRoute, window.location.origin);
61
+ var targetSearchParams = targetUrl.searchParams;
62
+ var targetSearchKeys = Array.from(targetSearchParams.keys());
63
+ return all(function (key) {
64
+ return currentBrowserUrl.searchParams.get(key) === targetSearchParams.get(key);
65
+ }, targetSearchKeys) && equals(currentBrowserUrl.pathname, targetUrl.pathname);
66
+ };
67
+ var getSidebarStateLocalStorageKey = function getSidebarStateLocalStorageKey() {
68
+ var _globalProps$user, _globalProps$user2;
69
+ var user = ((_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.email) || ((_globalProps$user2 = globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.phoneNumber);
70
+ return "sidebarState-".concat(user);
71
+ };
72
+ var filterByPermissions = curry(function (_ref) {
73
+ var permissions = _ref.permissions;
74
+ if (permissions && isNotEmpty(permissions)) {
75
+ return is(Array, permissions) ? permissions.some(includes(__, globalProps.permissions)) : globalProps.permissions.includes(permissions);
76
+ }
77
+ return true;
78
+ });
79
+ var getActiveConfigurePageLink = function getActiveConfigurePageLink(_ref2) {
80
+ var navLinks = _ref2.navLinks,
81
+ location = _ref2.location;
82
+ return navLinks.find(function (link) {
83
+ var _link$to;
84
+ var _ref3 = ((_link$to = link.to) === null || _link$to === void 0 ? void 0 : _link$to.split("?")) || [],
85
+ _ref4 = _slicedToArray(_ref3, 1),
86
+ linkPathname = _ref4[0];
87
+ return isPresent(link.isConfigureNavLink) && link.isConfigureNavLink && location.pathname.startsWith(linkPathname);
88
+ });
89
+ };
90
+ var enableDraggingStyles = function enableDraggingStyles() {
91
+ document.body.classList.add("dragging-sidebar");
92
+ document.body.style.cursor = "col-resize";
93
+ document.body.style.userSelect = "none";
94
+ };
95
+ var disableDraggingStyles = function disableDraggingStyles() {
96
+ document.body.classList.remove("dragging-sidebar");
97
+ document.body.style.cursor = "";
98
+ document.body.style.userSelect = "";
99
+ };
100
+
101
+ var SubLink = function SubLink(_ref) {
102
+ var to = _ref.to,
103
+ href = _ref.href,
104
+ onClick = _ref.onClick,
105
+ label = _ref.label,
106
+ _ref$type = _ref.type,
107
+ type = _ref$type === void 0 ? SUB_LINK_TYPES.SYSTEM_VIEW : _ref$type,
108
+ count = _ref.count,
109
+ isSectionHeader = _ref.isSectionHeader,
110
+ isCountsLoading = _ref.isCountsLoading,
111
+ isSettingsItems = _ref.isSettingsItems,
112
+ dataCy = _ref["data-cy"],
113
+ _ref$entity = _ref.entity,
114
+ entity = _ref$entity === void 0 ? "" : _ref$entity,
115
+ _ref$columns = _ref.columns,
116
+ columns = _ref$columns === void 0 ? [] : _ref$columns,
117
+ baseUrl = _ref.baseUrl,
118
+ isActive = _ref.isActive;
119
+ if (type === SUB_LINK_TYPES.SEGMENTS) {
120
+ return /*#__PURE__*/jsx(Segments, {
121
+ baseUrl: baseUrl,
122
+ columns: columns,
123
+ entity: entity,
124
+ isIndependent: false
125
+ });
126
+ }
127
+ var dataCyPrefix = dataCy || hyphenate(label);
128
+ var renderCount = function renderCount(count) {
129
+ return count > 999 ? "999+" : count;
130
+ };
131
+ var isSubLinkActive = function isSubLinkActive() {
132
+ return !isSectionHeader && (is(Function, isActive) ? isActive() : isSubRouteActive(to, location));
133
+ };
134
+ return /*#__PURE__*/jsxs(CheckPointNavLinks, {
135
+ href: href,
136
+ onClick: onClick,
137
+ to: to,
138
+ activeClassName: "active",
139
+ "data-cy": "".concat(dataCyPrefix, "-sub-link"),
140
+ isActive: isSubLinkActive,
141
+ className: classnames("neeto-molecules-sidebar__sublink neeto-ui-flex neeto-ui-items-center neeto-ui-select-none", {
142
+ "neeto-molecules-sidebar__sublink--settings-items": isSettingsItems
143
+ }),
144
+ children: [/*#__PURE__*/jsx(Typography, {
145
+ className: "neeto-molecules-sidebar__link-sub-label neeto-ui-flex-grow",
146
+ component: "span",
147
+ "data-cy": "".concat(dataCyPrefix, "-sub-link-label"),
148
+ style: "body2",
149
+ children: label
150
+ }), /*#__PURE__*/jsx(Typography, {
151
+ className: "neeto-molecules-sidebar__link-sub-count neeto-ui-flex-shrink-0",
152
+ component: "span",
153
+ "data-cy": "".concat(dataCyPrefix, "-sub-link-count"),
154
+ style: "body2",
155
+ children: isCountsLoading ? /*#__PURE__*/jsx("div", {
156
+ className: "neeto-ui-rounded neeto-ui-bg-gray-200 h-4 w-4 animate-pulse"
157
+ }) : renderCount(count)
158
+ })]
159
+ });
160
+ };
161
+
162
+ function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
163
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
164
+ var _Items = function Items(_ref) {
165
+ var items = _ref.items,
166
+ _ref$isSettingsItems = _ref.isSettingsItems,
167
+ isSettingsItems = _ref$isSettingsItems === void 0 ? false : _ref$isSettingsItems,
168
+ isCountsLoading = _ref.isCountsLoading;
169
+ return /*#__PURE__*/jsx("div", {
170
+ "data-cy": "sidebar-sub-link-wrapper",
171
+ className: classnames("neeto-molecules-sidebar__sublink-wrapper", {
172
+ "neeto-molecules-sidebar__sublink-wrapper--settings-items": isSettingsItems
173
+ }),
174
+ children: items.filter(filterByPermissions).map(function (subItem, subIndex) {
175
+ var _subItem$to;
176
+ return /*#__PURE__*/jsxs(Fragment, {
177
+ children: [/*#__PURE__*/jsx(SubLink, _objectSpread$1(_objectSpread$1({}, _objectSpread$1(_objectSpread$1({}, subItem), {}, {
178
+ isCountsLoading: isCountsLoading,
179
+ isSettingsItems: isSettingsItems
180
+ })), {}, {
181
+ href: subItem.href,
182
+ isActive: subItem.isActive,
183
+ isSectionHeader: isPresent(subItem.item),
184
+ to: (_subItem$to = subItem.to) !== null && _subItem$to !== void 0 ? _subItem$to : subItem.path,
185
+ onClick: subItem.onClick
186
+ })), isSettingsItems && isPresent(subItem.items) && /*#__PURE__*/jsx(_Items, {
187
+ isSettingsItems: isSettingsItems,
188
+ items: subItem.items
189
+ })]
190
+ }, subIndex);
191
+ })
192
+ });
193
+ };
194
+
195
+ var _excluded = ["label", "items", "isConfigureNavLink"];
196
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
197
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
198
+ var SelectedLink = function SelectedLink(_ref) {
199
+ var _ref$navLink = _ref.navLink,
200
+ navLink = _ref$navLink === void 0 ? {
201
+ label: "",
202
+ items: [],
203
+ isConfigureNavLink: false
204
+ } : _ref$navLink,
205
+ handleGoBack = _ref.handleGoBack,
206
+ isConfigureSidebar = _ref.isConfigureSidebar;
207
+ var history = useHistory();
208
+ var label = navLink.label,
209
+ items = navLink.items,
210
+ isConfigureNavLink = navLink.isConfigureNavLink,
211
+ otherProps = _objectWithoutProperties(navLink, _excluded);
212
+ var handleHomeButtonClick = function handleHomeButtonClick(e) {
213
+ e.stopPropagation();
214
+ handleMetaClick(history, DEFAULT_HOME_PATH, e);
215
+ };
216
+ return /*#__PURE__*/jsxs("div", {
217
+ className: "neeto-molecules-sidebar__links neeto-molecules-sidebar__links--focus-mode neeto-molecules-sidebar__no-shrinkable",
218
+ "data-cy": "configure-nav-container",
219
+ children: [/*#__PURE__*/jsxs("div", _objectSpread(_objectSpread({
220
+ className: "neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-molecules-sidebar__link neeto-molecules-sidebar__link--selected neeto-ui-border-b neeto-ui-border-gray-200",
221
+ onClick: handleGoBack
222
+ }, _objectSpread({}, omit(["icon"], otherProps))), {}, {
223
+ children: [isConfigureNavLink && /*#__PURE__*/jsx("span", {
224
+ className: "neeto-molecules-sidebar__link-icon flex items-center pl-4",
225
+ children: /*#__PURE__*/jsx(Button, {
226
+ "data-cy": "".concat(hyphenize(label), "-go-back-button"),
227
+ "data-testid": "".concat(label, "-go-home-button"),
228
+ icon: Home,
229
+ iconProps: {
230
+ size: 20
231
+ },
232
+ style: "text",
233
+ onClick: handleHomeButtonClick
234
+ })
235
+ }), /*#__PURE__*/jsx(Typography, {
236
+ component: "span",
237
+ style: "body2",
238
+ className: classnames("neeto-molecules-sidebar__link-label", _defineProperty({
239
+ "neeto-molecules-sidebar__configure-page-header": isConfigureNavLink
240
+ }, "pl-4", isConfigureSidebar)),
241
+ children: label
242
+ })]
243
+ })), items && /*#__PURE__*/jsx(_Items, {
244
+ items: items,
245
+ isSettingsItems: true
246
+ })]
247
+ });
248
+ };
249
+
250
+ var css = ":root{--neeto-molecules-sidebar-width:15rem;--neeto-molecules-sidebar-wrapper-z-index:99997;--neeto-molecules-sidebar-z-index:99998}@media screen and (min-width:1024px){:root{--neeto-molecules-sidebar-width:15rem}}.neeto-molecules-sidebar__wrapper{display:flex;max-width:15rem;max-width:var(--neeto-molecules-sidebar-width);position:relative;width:15rem;width:var(--neeto-molecules-sidebar-width)}@media screen and (max-width:768px){.neeto-molecules-sidebar__wrapper{height:100%;inset-inline-start:0;max-width:100%;position:fixed;top:0;transition:none;width:100%;z-index:99997;z-index:var(--neeto-molecules-sidebar-wrapper-z-index)}.neeto-molecules-sidebar__wrapper .neeto-molecules-sidebar{inset-inline-start:0;max-width:15rem;max-width:var(--neeto-molecules-sidebar-width);position:fixed;top:0;transition:none;width:15rem;width:var(--neeto-molecules-sidebar-width)}}.neeto-molecules-sidebar__wrapper__configure-page .neeto-molecules-sidebar__toggler{inset-inline-end:1.25rem;top:.5rem}@media screen and (max-width:768px){.neeto-molecules-sidebar__wrapper__configure-page .neeto-molecules-sidebar__toggler{inset-inline-end:auto;top:.5rem}}.neeto-molecules-sidebar__wrapper--collapsed{max-width:0;width:0}.neeto-molecules-sidebar__wrapper--collapsed .neeto-molecules-sidebar__toggler{inset-inline-end:-2.25rem;transform:scale(-1)}@media screen and (max-width:768px){.neeto-molecules-sidebar__wrapper--collapsed .neeto-molecules-sidebar__toggler{inset-inline-end:auto;inset-inline-start:.5rem;top:.5rem}.neeto-molecules-sidebar__wrapper--collapsed .neeto-molecules-sidebar{inset-inline-start:-15rem;inset-inline-start:calc(var(--neeto-molecules-sidebar-width)*-1)}.neeto-molecules-sidebar__wrapper__configure-page.neeto-molecules-sidebar__wrapper--collapsed .neeto-molecules-sidebar__toggler{top:6.8125rem}}.neeto-molecules-sidebar{background-color:#f9f9f9;height:100vh;height:100dvh;padding:1.5rem 0;width:100%;z-index:99998;z-index:var(--neeto-molecules-sidebar-z-index)}.neeto-molecules-sidebar:not(.neeto-molecules-sidebar__configure-page) .neeto-molecules-sidebar__links:not(.neeto-molecules-sidebar__links--focus-mode){display:flex;flex-direction:column;gap:.625rem;height:calc(100vh - 7.75rem)!important;height:calc(100dvh - 7.75rem)!important;overflow-y:auto;padding-block-end:4rem;padding:0 1rem}.neeto-molecules-sidebar__no-shrinkable{max-width:15rem;max-width:var(--neeto-molecules-sidebar-width);width:15rem;width:var(--neeto-molecules-sidebar-width)}.neeto-molecules-sidebar__separator{margin:.375rem auto;width:100%}.neeto-molecules-sidebar__toggler{color:rgb(var(--neeto-ui-primary-500))!important;inset-inline-end:.5rem;position:absolute!important;top:2.125rem;z-index:99998;z-index:var(--neeto-molecules-sidebar-z-index)}@media screen and (max-width:768px){.neeto-molecules-sidebar__toggler{inset-inline-end:auto;inset-inline-start:12.625rem;inset-inline-start:calc(var(--neeto-molecules-sidebar-width) - 2.375rem);transition:none}}.neeto-molecules-sidebar__configure-page{border-inline-end:1px solid rgb(var(--neeto-ui-gray-200));height:auto}@media screen and (max-width:768px){.neeto-molecules-sidebar__configure-page{height:100%}}.neeto-molecules-sidebar__configure-page .neeto-molecules-sidebar__links{height:calc(100vh - 8.5rem)!important;height:calc(100dvh - 8.5rem)!important}@media screen and (max-width:768px){.neeto-molecules-sidebar__configure-page .neeto-molecules-sidebar__links{height:calc(100vh - 5rem)!important;height:calc(100dvh - 5rem)!important}}.neeto-molecules-sidebar__configure-page .neeto-molecules-sidebar__toggler{display:none}.neeto-molecules-sidebar__header{--neeto-ui-text-body2:1rem;margin-block:.5rem 2rem;margin-inline:0;padding-block:0;padding-inline:1.5rem}.neeto-molecules-sidebar__logo svg{height:2.25rem;max-width:100%;width:auto}.neeto-molecules-sidebar__link{border-radius:.25rem;color:rgb(var(--neeto-ui-black));gap:.5rem;line-height:1.2;padding-block:.375rem;padding-inline:.5rem;position:relative;text-decoration:none!important;transition:color .3s,background-color .3s;width:100%}.neeto-molecules-sidebar__link-icon{flex-shrink:0}.neeto-molecules-sidebar__link-icon svg path{stroke-width:1.2;vector-effect:non-scaling-stroke;color:rgb(var(--neeto-ui-gray-600))}.neeto-molecules-sidebar__link-icon--caret{opacity:0;transition:opacity .3s ease-in-out}.neeto-molecules-sidebar__link-icon--rotate{opacity:1;transform:rotate(90deg)}.neeto-molecules-sidebar__link-label,.neeto-molecules-sidebar__link-sub-label{--neeto-ui-text-body2:0.9375rem;flex-grow:1;text-align:start}@media screen and (min-width:1536px){.neeto-molecules-sidebar__link-label,.neeto-molecules-sidebar__link-sub-label{--neeto-ui-text-body2:1rem}}.neeto-molecules-sidebar__link:hover{background-color:#eee;color:rgb(var(--neeto-ui-black))}.neeto-molecules-sidebar__link:focus,.neeto-molecules-sidebar__link:focus-visible,.neeto-molecules-sidebar__link[aria-expanded=true]{color:rgb(var(--neeto-ui-black));outline:none}.neeto-molecules-sidebar__link--hover-active{background-color:rgb(var(--neeto-ui-gray-100))}.neeto-molecules-sidebar__link.active{background-color:rgb(var(--neeto-ui-white));box-shadow:0 0 4px 0 rgba(var(--neeto-ui-black),.15);color:rgb(var(--neeto-ui-black));font-weight:var(--neeto-ui-font-semibold)}.neeto-molecules-sidebar__link.active .neeto-molecules-sidebar__link-icon--caret,.neeto-molecules-sidebar__link:hover .neeto-molecules-sidebar__link-icon--caret,.neeto-molecules-sidebar__link[aria-expanded=true] .neeto-molecules-sidebar__link-icon--caret{opacity:1}.neeto-molecules-sidebar__link--button:focus{background-color:transparent}.neeto-molecules-sidebar__link--button:focus-visible{background-color:rgb(var(--neeto-ui-gray-200));color:rgb(var(--neeto-ui-black))}.neeto-molecules-sidebar__link--change-log{outline:none!important}.neeto-molecules-sidebar__sublink-wrapper{padding-block:.25rem;padding-inline:0}.neeto-molecules-sidebar__sublink-wrapper--settings-items{gap:.125rem!important;padding-block:.25rem;padding-inline:.75rem!important}.neeto-molecules-sidebar__sublink-wrapper~.neeto-molecules-sidebar__sublink--settings-items.active{background-color:transparent!important;box-shadow:none!important}.neeto-molecules-sidebar__sublink{color:rgb(var(--neeto-ui-gray-700));cursor:pointer;gap:.5rem;margin-block-end:0;margin-inline:0;padding-block:.5rem;padding-inline-end:.5rem;padding-inline-start:2.5rem;text-decoration:none;transition:color .3s,background-color .3s}.neeto-molecules-sidebar__sublink--settings-items{padding-block:.375rem;padding-inline-end:1.5rem;padding-inline-start:1.5rem}.neeto-molecules-sidebar__sublink--settings-items:focus,.neeto-molecules-sidebar__sublink--settings-items:focus-visible,.neeto-molecules-sidebar__sublink--settings-items:hover{background-color:var(--neeto-ui-gray-200)!important;border-radius:4px!important}.neeto-molecules-sidebar__sublink--settings-items.active{background-color:rgb(var(--neeto-ui-white))!important;border-radius:4px!important;box-shadow:0 0 4px 0 rgba(var(--neeto-ui-black),.15)!important;font-weight:var(--neeto-ui-font-semibold)!important}.neeto-molecules-sidebar__sublink .neeto-molecules-sidebar__link-sub-count{--neeto-ui-text-body2:0.9375rem;opacity:.75}@media screen and (min-width:1536px){.neeto-molecules-sidebar__sublink .neeto-molecules-sidebar__link-sub-count{--neeto-ui-text-body2:1rem}}.neeto-molecules-sidebar__sublink:hover{color:rgb(var(--neeto-ui-black));text-decoration:none}.neeto-molecules-sidebar__sublink:hover .neeto-molecules-sidebar__link-sub-count{opacity:1}.neeto-molecules-sidebar__sublink:focus,.neeto-molecules-sidebar__sublink:focus-visible{color:rgb(var(--neeto-ui-black));outline:none;text-decoration:none}.neeto-molecules-sidebar__sublink:focus .neeto-molecules-sidebar__link-sub-count,.neeto-molecules-sidebar__sublink:focus-visible .neeto-molecules-sidebar__link-sub-count{opacity:1}.neeto-molecules-sidebar__sublink.active,.neeto-molecules-sidebar__sublink:active{color:rgb(var(--neeto-ui-accent-800));font-weight:500;text-decoration:none}.neeto-molecules-sidebar__sublink.active .neeto-molecules-sidebar__link-sub-count,.neeto-molecules-sidebar__sublink:active .neeto-molecules-sidebar__link-sub-count{opacity:1}.neeto-molecules-sidebar__footer{margin-block-start:auto}.sidebar-featured-tooltip__content{border-radius:.5rem!important;box-shadow:var(--neeto-ui-shadow-sm)!important}.sidebar-featured-tooltip__content .tippy-content{padding:0}.sidebar-featured-tooltip{padding:.75rem;width:9.375rem}.sidebar-featured-tooltip__icon-wrap{background-color:rgb(var(--neeto-ui-gray-100));border-radius:.5rem;height:2.5rem;margin-block-end:.5rem;margin-inline:auto;width:2.5rem}.sidebar-featured-tooltip__title{margin-block-end:.25rem}.neeto-molecules-help-popup-wrapper,.neeto-molecules-product-switcher-popup-wrapper,.neeto-molecules-profile-popup-wrapper{border:1px solid rgb(var(--neeto-ui-gray-400));border-radius:var(--neeto-ui-rounded)!important;min-width:15rem}.neeto-molecules-help-popup-wrapper .tippy-content,.neeto-molecules-product-switcher-popup-wrapper .tippy-content,.neeto-molecules-profile-popup-wrapper .tippy-content{padding:0}.neeto-molecules-help-popup-wrapper .tippy-svg-arrow,.neeto-molecules-product-switcher-popup-wrapper .tippy-svg-arrow,.neeto-molecules-profile-popup-wrapper .tippy-svg-arrow{display:none!important}.neeto-molecules-profile-popup__top-section{border-start-end-radius:var(--neeto-ui-rounded);border-start-start-radius:var(--neeto-ui-rounded)}.neeto-molecules-profile-sublist{border-block-start:1px solid rgb(var(--neeto-ui-gray-400))}.neeto-molecules-help-sublist,.neeto-molecules-profile-sublist{list-style:none;margin:0;padding-block:.25rem;padding-inline:0}.neeto-molecules-help-sublist__item,.neeto-molecules-profile-sublist__item{width:100%}.neeto-molecules-help-sublist__item-btn,.neeto-molecules-profile-sublist__item-btn{border-radius:0;justify-content:flex-end!important;min-height:2.5rem;text-align:start}.neeto-molecules-help-sublist__item-btn.active,.neeto-molecules-profile-sublist__item-btn.active{background-color:rgb(var(--neeto-ui-gray-800));color:rgb(var(--neeto-ui-white))}.neeto-molecules-help-sublist__item-btn-icon svg path,.neeto-molecules-profile-sublist__item-btn-icon svg path{vector-effect:non-scaling-stroke}.neeto-molecules-help-sublist__item-btn span,.neeto-molecules-profile-sublist__item-btn span{align-items:center;display:flex;gap:.5rem}.neeto-molecules-sidebar__link-icon{position:relative}.neeto-molecules-sidebar__notif-count{inset-inline-end:-6px;position:absolute;top:-6px;z-index:1}.neeto-molecules-help-sublist__item-btn-count,.neeto-molecules-sidebar__notif-count{align-items:center;background-color:rgb(var(--neeto-ui-primary-500));border-radius:var(--neeto-ui-rounded-full);color:rgb(var(--neeto-ui-white));display:inline-flex;flex-shrink:0;font-size:var(--neeto-ui-text-xxs);height:.9375rem;justify-content:center;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:.9375rem}.neeto-molecules-product-switcher-popup-wrapper{height:calc(100vh - 1rem);height:calc(100dvh - 1rem);margin-block-end:.5rem;min-width:calc(100vw - 11rem);overflow-y:auto}@media screen and (max-width:768px){.neeto-molecules-product-switcher-popup-wrapper{width:calc(100vw - 11.5625rem)!important}}.neeto-molecules-sidebar__backdrop{background-color:rgba(var(--neeto-ui-black),.4);height:100%;inset-inline-start:0;position:absolute;top:0;width:100%}@media screen and (min-width:769px){.neeto-molecules-sidebar__backdrop{display:none;visibility:hidden}}.neeto-molecules-sidebar-segments-header{padding-inline-start:3.625rem}.neeto-molecules-sidebar-segment{margin-block-end:0!important;padding-block:.25rem;padding-inline-end:1.5rem;padding-inline-start:3.625rem}.neeto-molecules-sidebar.neeto-molecules-sidebar--focus-mode{padding-block-start:0}.neeto-molecules-sidebar.neeto-molecules-sidebar--focus-mode .neeto-molecules-sidebar__header{padding-block-start:1.5rem}.neeto-molecules-sidebar.neeto-molecules-sidebar--focus-mode .neeto-molecules-sidebar__links{display:flex;flex-direction:column;height:calc(100vh - 10rem);height:calc(100dvh - 10rem);margin-block-end:0}.neeto-molecules-sidebar__links--focus-mode>.neeto-molecules-sidebar__sublink-wrapper{flex-grow:1;margin-block-end:.625rem!important;margin-inline:0!important;min-height:0;overflow-y:auto;padding-block-end:.625rem!important;padding-inline:0!important}.neeto-molecules-sidebar__links--focus-mode .neeto-molecules-sidebar__link{--neeto-ui-text-body1:1.125rem;background-color:rgb(var(--neeto-ui-gray-100));color:rgb(var(--neeto-ui-black));cursor:pointer;font-weight:var(--neeto-ui-font-semibold);gap:.25rem;padding-block:.75rem;padding-inline:.25rem;position:sticky;top:0;z-index:1}.neeto-molecules-sidebar__links--focus-mode .neeto-molecules-sidebar__link--selected{background-color:transparent;border-radius:0}.neeto-molecules-sidebar__links--focus-mode .neeto-molecules-sidebar__link-label,.neeto-molecules-sidebar__links--focus-mode .neeto-molecules-sidebar__link-sub-label{--neeto-ui-text-body2:0.9375rem}.neeto-molecules-sidebar__links--focus-mode>.neeto-molecules-sidebar__sublink-wrapper>.neeto-molecules-sidebar__sublink{color:rgb(var(--neeto-ui-black));font-weight:var(--neeto-ui-font-medium);margin-block-end:0;padding-block:.625rem;padding-inline:1.5rem}.neeto-molecules-sidebar__links--focus-mode>.neeto-molecules-sidebar__sublink-wrapper>.neeto-molecules-sidebar__sublink.active{font-weight:var(--neeto-ui-font-semibold)}.neeto-molecules-sidebar__links--focus-mode>.neeto-molecules-sidebar__sublink-wrapper>.neeto-molecules-sidebar__sublink-wrapper .neeto-molecules-sidebar__sublink{border-radius:0;padding-inline-start:2rem}.neeto-molecules-sidebar__links--focus-mode .neeto-molecules-sidebar__sublink{cursor:pointer;line-height:1.2;padding-block:.5rem;padding-inline-end:.75rem;padding-inline-start:1.5rem;position:relative}.neeto-molecules-sidebar__links--focus-mode .neeto-molecules-sidebar__sublink:hover{background-color:rgb(var(--neeto-ui-gray-100))}.neeto-molecules-sidebar__links--focus-mode .neeto-molecules-sidebar__sublink.active{background-color:rgb(var(--neeto-ui-white))!important;color:rgb(var(--neeto-ui-black))!important;font-weight:var(--neeto-ui-font-medium)}.neeto-molecules-sidebar__link-unread-count{align-items:center;background-color:rgb(var(--neeto-ui-accent-500));border-radius:var(--neeto-ui-rounded-full);color:rgb(var(--neeto-ui-white));display:flex;flex-shrink:0;font-size:var(--neeto-ui-text-xxs);height:1rem;inset-inline-end:-4px;justify-content:center;min-width:1rem;padding-inline:.25rem;position:absolute;top:-4px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.neeto-ui-theme--dark .neeto-molecules-sidebar__logo [data-dark-mode-color=true]{fill:rgb(var(--neeto-ui-black))}.neeto-molecules-sidebar__workspace-info{margin-block-end:1.5rem;padding-block:.5rem;padding-inline:1.5rem}.neeto-molecules-sidebar__resize-handle{bottom:0;cursor:col-resize;inset-inline-end:0;position:absolute;top:0;width:3px;z-index:99999;z-index:calc(var(--neeto-molecules-sidebar-z-index) + 1)}.neeto-molecules-sidebar__resize-handle:before{background-color:rgb(var(--neeto-ui-gray-200));bottom:0;content:\"\";inset-inline-start:0;position:absolute;top:0;transition:background-color .15s ease-in-out,width .15s ease-in-out;width:0}.neeto-molecules-sidebar__resize-handle:hover:before{background-color:rgb(var(--neeto-ui-gray-400));width:2px}.neeto-molecules-sidebar__resize-handle:active:before{background-color:rgb(var(--neeto-ui-primary-500));width:2px}.neeto-molecules-sidebar__wrapper:not(.neeto-molecules-sidebar__wrapper--collapsed)+.neeto-molecules-sidebar__resize-handle{display:block}.neeto-molecules-sidebar__wrapper+.neeto-molecules-sidebar__resize-handle{display:none;inset-inline-start:15rem;inset-inline-start:var(--neeto-molecules-sidebar-width)}.neeto-molecules-sidebar__wrapper--collapsed+.neeto-molecules-sidebar__resize-handle{display:none}body.dragging-sidebar,body.dragging-sidebar *{cursor:col-resize!important}body.dragging-sidebar *{-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}[dir=rtl] .neeto-molecules-sidebar__toggler{transform:scaleX(-1);transition:none}[dir=rtl] .neeto-molecules-sidebar__wrapper--collapsed .neeto-molecules-sidebar__toggler{transform:scaleX(1)}[dir=rtl] .neeto-molecules-sidebar__link-icon{transform:scaleX(-1)}[dir=rtl] .neeto-molecules-sidebar__link-icon--rotate{transform:scaleX(1) rotate(90deg)}";
251
+ n(css,{});
252
+
253
+ var Chevron = function Chevron(_ref) {
254
+ var style = _ref.style;
255
+ return /*#__PURE__*/jsx("svg", {
256
+ style: style,
257
+ height: "16",
258
+ viewBox: "0 0 16 16",
259
+ width: "16",
260
+ children: /*#__PURE__*/jsx("path", {
261
+ d: "M7.07031 13.8887C7.2207 14.0391 7.40527 14.1211 7.62402 14.1211C8.06836 14.1211 8.41699 13.7725 8.41699 13.3281C8.41699 13.1094 8.32812 12.9043 8.17773 12.7539L3.37207 8.05762L8.17773 3.375C8.32812 3.21777 8.41699 3.0127 8.41699 2.80078C8.41699 2.35645 8.06836 2.00781 7.62402 2.00781C7.40527 2.00781 7.2207 2.08984 7.07031 2.24023L1.73828 7.44922C1.56055 7.62012 1.46484 7.8252 1.46484 8.06445C1.46484 8.29688 1.55371 8.49512 1.73828 8.67969L7.07031 13.8887ZM13.1748 13.8887C13.3252 14.0391 13.5098 14.1211 13.7354 14.1211C14.1797 14.1211 14.5283 13.7725 14.5283 13.3281C14.5283 13.1094 14.4395 12.9043 14.2891 12.7539L9.4834 8.05762L14.2891 3.375C14.4395 3.21777 14.5283 3.0127 14.5283 2.80078C14.5283 2.35645 14.1797 2.00781 13.7354 2.00781C13.5098 2.00781 13.3252 2.08984 13.1748 2.24023L7.84961 7.44922C7.66504 7.62012 7.57617 7.8252 7.56934 8.06445C7.56934 8.29688 7.66504 8.49512 7.84961 8.67969L13.1748 13.8887Z",
262
+ fill: "currentColor"
263
+ })
264
+ });
265
+ };
266
+
267
+ export { Chevron as C, DEFAULT_HOME_PATH as D, MIN_SIDEBAR_WIDTH as M, PINNED_MORE_NAV_LINKS_KEY as P, SelectedLink as S, _Items as _, SPECIAL_APP_NAMES as a, CheckPointNavLinks as b, SELECTED_NAV_LINK_ROUTE_STORAGE_KEY as c, SIDEBAR_WIDTH_KEY as d, DEFAULT_SIDEBAR_WIDTH as e, filterByPermissions as f, getSidebarStateLocalStorageKey as g, enableDraggingStyles as h, disableDraggingStyles as i, getActiveConfigurePageLink as j, MAX_SIDEBAR_WIDTH as k };
268
+ //# sourceMappingURL=Chevron-BWNdVGl_.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chevron-BWNdVGl_.js","sources":["../src/components/Sidebar/constants.js","../src/components/Sidebar/Components/Links/CheckPointNavLink.jsx","../src/components/Sidebar/utils.js","../src/components/Sidebar/Components/Links/SubLink.jsx","../src/components/Sidebar/Components/Links/Items.jsx","../src/components/Sidebar/Components/Links/SelectedLink.jsx","../src/components/Sidebar/Components/Chevron.jsx"],"sourcesContent":["export const SUB_LINK_TYPES = {\n SYSTEM_VIEW: \"system_view\",\n SEGMENTS: \"segments\",\n};\n\nexport const SELECTED_NAV_LINK_ROUTE_STORAGE_KEY = \"selectedNavLinkRoute\";\n\nexport const DEFAULT_HOME_PATH = \"/admin\";\n\nexport const SIDEBAR_WIDTH_KEY = \"neeto-molecules-sidebar-width\";\nexport const MIN_SIDEBAR_WIDTH = 12.5 * 16;\nexport const MAX_SIDEBAR_WIDTH = 20 * 16;\nexport const DEFAULT_SIDEBAR_WIDTH = 15 * 16;\n\nexport const PINNED_MORE_NAV_LINKS_KEY = \"pinnedMoreNavLinks\";\n\nexport const SPECIAL_APP_NAMES = { bugwatch: \"BugWatch\" };\n","import { useNavigationCheckpoints } from \"neetocommons/react-utils/useRegisterNavigationCheckpoint\";\nimport { NavLink } from \"react-router-dom\";\n\nconst CheckPointNavLinks = ({\n checkpointKey,\n to,\n href,\n children,\n ...others\n}) => {\n const { [checkpointKey]: checkpoint } =\n useNavigationCheckpoints(checkpointKey);\n\n const LinkElement = href ? \"a\" : NavLink;\n const linkProps = href\n ? { href, key: href, ...others }\n : { to: checkpoint || to, key: to, ...others };\n\n return <LinkElement {...linkProps}>{children}</LinkElement>;\n};\n\nexport default CheckPointNavLinks;\n","import { isPresent, isNotEmpty } from \"neetocist\";\nimport { __, all, curry, equals, includes, is } from \"ramda\";\n\nexport const isSubRouteActive = (subRoute, location) => {\n const currentBrowserUrl = new URL(\n location.pathname + location.search + location.hash,\n window.location.origin\n );\n const targetUrl = new URL(subRoute, window.location.origin);\n\n const targetSearchParams = targetUrl.searchParams;\n const targetSearchKeys = Array.from(targetSearchParams.keys());\n\n return (\n all(\n key =>\n currentBrowserUrl.searchParams.get(key) === targetSearchParams.get(key),\n targetSearchKeys\n ) && equals(currentBrowserUrl.pathname, targetUrl.pathname)\n );\n};\n\nexport const getSidebarStateLocalStorageKey = () => {\n const user = globalProps.user?.email || globalProps.user?.phoneNumber;\n\n return `sidebarState-${user}`;\n};\n\nexport const filterByPermissions = curry(({ permissions }) => {\n if (permissions && isNotEmpty(permissions)) {\n return is(Array, permissions)\n ? permissions.some(includes(__, globalProps.permissions))\n : globalProps.permissions.includes(permissions);\n }\n\n return true;\n});\n\nexport const getActiveConfigurePageLink = ({ navLinks, location }) =>\n navLinks.find(link => {\n const [linkPathname] = link.to?.split(\"?\") || [];\n\n return (\n isPresent(link.isConfigureNavLink) &&\n link.isConfigureNavLink &&\n location.pathname.startsWith(linkPathname)\n );\n });\n\nexport const enableDraggingStyles = () => {\n document.body.classList.add(\"dragging-sidebar\");\n document.body.style.cursor = \"col-resize\";\n document.body.style.userSelect = \"none\";\n};\n\nexport const disableDraggingStyles = () => {\n document.body.classList.remove(\"dragging-sidebar\");\n document.body.style.cursor = \"\";\n document.body.style.userSelect = \"\";\n};\n","import classNames from \"classnames\";\nimport { hyphenate } from \"neetocist\";\nimport { Segments } from \"neetofilters\";\nimport { Typography } from \"neetoui\";\nimport { is } from \"ramda\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\n\nimport { SUB_LINK_TYPES } from \"../../constants\";\nimport { isSubRouteActive } from \"../../utils\";\n\nconst SubLink = ({\n to,\n href,\n onClick,\n label,\n type = SUB_LINK_TYPES.SYSTEM_VIEW,\n count,\n isSectionHeader,\n isCountsLoading,\n isSettingsItems,\n \"data-cy\": dataCy,\n entity = \"\",\n columns = [],\n baseUrl,\n isActive,\n}) => {\n if (type === SUB_LINK_TYPES.SEGMENTS) {\n return <Segments {...{ baseUrl, columns, entity }} isIndependent={false} />;\n }\n\n const dataCyPrefix = dataCy || hyphenate(label);\n\n const renderCount = count => (count > 999 ? \"999+\" : count);\n\n const isSubLinkActive = () =>\n !isSectionHeader &&\n (is(Function, isActive) ? isActive() : isSubRouteActive(to, location));\n\n return (\n <CheckPointNavLinks\n {...{ href, onClick, to }}\n activeClassName=\"active\"\n data-cy={`${dataCyPrefix}-sub-link`}\n isActive={isSubLinkActive}\n className={classNames(\n \"neeto-molecules-sidebar__sublink neeto-ui-flex neeto-ui-items-center neeto-ui-select-none\",\n {\n \"neeto-molecules-sidebar__sublink--settings-items\": isSettingsItems,\n }\n )}\n >\n <Typography\n className=\"neeto-molecules-sidebar__link-sub-label neeto-ui-flex-grow\"\n component=\"span\"\n data-cy={`${dataCyPrefix}-sub-link-label`}\n style=\"body2\"\n >\n {label}\n </Typography>\n <Typography\n className=\"neeto-molecules-sidebar__link-sub-count neeto-ui-flex-shrink-0\"\n component=\"span\"\n data-cy={`${dataCyPrefix}-sub-link-count`}\n style=\"body2\"\n >\n {isCountsLoading ? (\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-200 h-4 w-4 animate-pulse\" />\n ) : (\n renderCount(count)\n )}\n </Typography>\n </CheckPointNavLinks>\n );\n};\n\nexport default SubLink;\n","import { Fragment } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\n\nimport SubLink from \"./SubLink\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst Items = ({ items, isSettingsItems = false, isCountsLoading }) => (\n <div\n data-cy=\"sidebar-sub-link-wrapper\"\n className={classNames(\"neeto-molecules-sidebar__sublink-wrapper\", {\n \"neeto-molecules-sidebar__sublink-wrapper--settings-items\":\n isSettingsItems,\n })}\n >\n {items.filter(filterByPermissions).map((subItem, subIndex) => (\n <Fragment key={subIndex}>\n <SubLink\n {...{ ...subItem, isCountsLoading, isSettingsItems }}\n href={subItem.href}\n isActive={subItem.isActive}\n isSectionHeader={isPresent(subItem.item)}\n to={subItem.to ?? subItem.path}\n onClick={subItem.onClick}\n />\n {isSettingsItems && isPresent(subItem.items) && (\n <Items {...{ isSettingsItems }} items={subItem.items} />\n )}\n </Fragment>\n ))}\n </div>\n);\n\nexport default Items;\n","import classNames from \"classnames\";\nimport { handleMetaClick } from \"neetocommons/react-utils\";\nimport { hyphenize } from \"neetocommons/utils/general\";\nimport { Home } from \"neetoicons\";\nimport { Typography, Button } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { DEFAULT_HOME_PATH } from \"components/Sidebar/constants\";\n\nimport Items from \"./Items\";\n\nconst SelectedLink = ({\n navLink = { label: \"\", items: [], isConfigureNavLink: false },\n handleGoBack,\n isConfigureSidebar,\n}) => {\n const history = useHistory();\n const { label, items, isConfigureNavLink, ...otherProps } = navLink;\n\n const handleHomeButtonClick = e => {\n e.stopPropagation();\n handleMetaClick(history, DEFAULT_HOME_PATH, e);\n };\n\n return (\n <div\n className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__links--focus-mode neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"configure-nav-container\"\n >\n <div\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-molecules-sidebar__link neeto-molecules-sidebar__link--selected neeto-ui-border-b neeto-ui-border-gray-200\"\n onClick={handleGoBack}\n {...{ ...omit([\"icon\"], otherProps) }}\n >\n {isConfigureNavLink && (\n <span className=\"neeto-molecules-sidebar__link-icon flex items-center pl-4\">\n <Button\n data-cy={`${hyphenize(label)}-go-back-button`}\n data-testid={`${label}-go-home-button`}\n icon={Home}\n iconProps={{ size: 20 }}\n style=\"text\"\n onClick={handleHomeButtonClick}\n />\n </span>\n )}\n <Typography\n component=\"span\"\n style=\"body2\"\n className={classNames(\"neeto-molecules-sidebar__link-label\", {\n \"neeto-molecules-sidebar__configure-page-header\":\n isConfigureNavLink,\n [\"pl-4\"]: isConfigureSidebar,\n })}\n >\n {label}\n </Typography>\n </div>\n {items && <Items {...{ items }} isSettingsItems />}\n </div>\n );\n};\n\nexport default SelectedLink;\n","const Chevron = ({ style }) => (\n <svg {...{ style }} height=\"16\" viewBox=\"0 0 16 16\" width=\"16\">\n <path\n d=\"M7.07031 13.8887C7.2207 14.0391 7.40527 14.1211 7.62402 14.1211C8.06836 14.1211 8.41699 13.7725 8.41699 13.3281C8.41699 13.1094 8.32812 12.9043 8.17773 12.7539L3.37207 8.05762L8.17773 3.375C8.32812 3.21777 8.41699 3.0127 8.41699 2.80078C8.41699 2.35645 8.06836 2.00781 7.62402 2.00781C7.40527 2.00781 7.2207 2.08984 7.07031 2.24023L1.73828 7.44922C1.56055 7.62012 1.46484 7.8252 1.46484 8.06445C1.46484 8.29688 1.55371 8.49512 1.73828 8.67969L7.07031 13.8887ZM13.1748 13.8887C13.3252 14.0391 13.5098 14.1211 13.7354 14.1211C14.1797 14.1211 14.5283 13.7725 14.5283 13.3281C14.5283 13.1094 14.4395 12.9043 14.2891 12.7539L9.4834 8.05762L14.2891 3.375C14.4395 3.21777 14.5283 3.0127 14.5283 2.80078C14.5283 2.35645 14.1797 2.00781 13.7354 2.00781C13.5098 2.00781 13.3252 2.08984 13.1748 2.24023L7.84961 7.44922C7.66504 7.62012 7.57617 7.8252 7.56934 8.06445C7.56934 8.29688 7.66504 8.49512 7.84961 8.67969L13.1748 13.8887Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport default Chevron;\n"],"names":["SUB_LINK_TYPES","SYSTEM_VIEW","SEGMENTS","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","DEFAULT_HOME_PATH","SIDEBAR_WIDTH_KEY","MIN_SIDEBAR_WIDTH","MAX_SIDEBAR_WIDTH","DEFAULT_SIDEBAR_WIDTH","PINNED_MORE_NAV_LINKS_KEY","SPECIAL_APP_NAMES","bugwatch","CheckPointNavLinks","_ref","checkpointKey","to","href","children","others","_objectWithoutProperties","_excluded","_useNavigationCheckpo","useNavigationCheckpoints","checkpoint","LinkElement","NavLink","linkProps","_objectSpread","key","_jsx","isSubRouteActive","subRoute","location","currentBrowserUrl","URL","pathname","search","hash","window","origin","targetUrl","targetSearchParams","searchParams","targetSearchKeys","Array","from","keys","all","get","equals","getSidebarStateLocalStorageKey","_globalProps$user","_globalProps$user2","user","globalProps","email","phoneNumber","concat","filterByPermissions","curry","permissions","isNotEmpty","is","some","includes","__","getActiveConfigurePageLink","_ref2","navLinks","find","link","_link$to","_ref3","split","_ref4","_slicedToArray","linkPathname","isPresent","isConfigureNavLink","startsWith","enableDraggingStyles","document","body","classList","add","style","cursor","userSelect","disableDraggingStyles","remove","SubLink","onClick","label","_ref$type","type","count","isSectionHeader","isCountsLoading","isSettingsItems","dataCy","_ref$entity","entity","_ref$columns","columns","baseUrl","isActive","Segments","isIndependent","dataCyPrefix","hyphenate","renderCount","isSubLinkActive","Function","_jsxs","activeClassName","className","classNames","Typography","component","Items","items","_ref$isSettingsItems","filter","map","subItem","subIndex","_subItem$to","Fragment","item","path","_Items","SelectedLink","_ref$navLink","navLink","handleGoBack","isConfigureSidebar","history","useHistory","otherProps","handleHomeButtonClick","e","stopPropagation","handleMetaClick","omit","Button","hyphenize","icon","Home","iconProps","size","_defineProperty","Chevron","height","viewBox","width","d","fill"],"mappings":"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"}
@@ -5,7 +5,7 @@ import Button from '@bigbinary/neetoui/Button';
5
5
  import { not } from 'ramda';
6
6
  import { useTranslation } from 'react-i18next';
7
7
  import { useHistory } from 'react-router-dom';
8
- import { S as SelectedLink, C as Chevron } from './Chevron-Dtxc2piW.js';
8
+ import { S as SelectedLink, C as Chevron } from './Chevron-BWNdVGl_.js';
9
9
  import { jsxs, jsx } from 'react/jsx-runtime';
10
10
  import '@babel/runtime/helpers/defineProperty';
11
11
  import '@babel/runtime/helpers/objectWithoutProperties';
@@ -2,8 +2,8 @@ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
2
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
3
3
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
4
4
  import { useField } from 'formik';
5
- import { P as PhoneNumberInput, g as getPhoneData, S as SingleValue } from './phone-number-DzOGxsrm.js';
6
- export { i as isPhoneNumberValid, v as validation } from './phone-number-DzOGxsrm.js';
5
+ import { P as PhoneNumberInput, g as getPhoneData, S as SingleValue } from './phone-number-HpVGHffA.js';
6
+ export { i as isPhoneNumberValid, v as validation } from './phone-number-HpVGHffA.js';
7
7
  import { jsx, jsxs } from 'react/jsx-runtime';
8
8
  import { memo } from 'react';
9
9
  import classnames from 'classnames';
package/dist/Schedule.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { createContext, useContext, memo, useMemo, useState, useEffect, useImperativeHandle, forwardRef } from 'react';
2
2
  import { useFormikContext, FieldArray, ErrorMessage, Formik, Form as Form$2 } from 'formik';
3
- import { findIndexBy, isNotPresent, isPresent, toLabelAndValue, noop } from '@bigbinary/neeto-cist';
3
+ import { findIndexBy, isNotPresent, isPresent, toLabelAndValue, isNotEmpty, noop } from '@bigbinary/neeto-cist';
4
4
  import { joinHyphenCase } from '@bigbinary/neeto-commons-frontend/utils/general';
5
5
  import Typography from '@bigbinary/neetoui/Typography';
6
6
  import { useTranslation } from 'react-i18next';
@@ -10,7 +10,7 @@ import { ianaTimezoneToHumanReadable } from '@bigbinary/neeto-time-zones';
10
10
  import i18next from 'i18next';
11
11
  import { dayjs } from '@bigbinary/neeto-commons-frontend/utils';
12
12
  import { timeFormat } from '@bigbinary/neeto-commons-frontend/utils/datetime';
13
- import { fromPairs, map, prop, pick, assoc, uniq, pluck, difference, append, without, identity } from 'ramda';
13
+ import { fromPairs, map, prop, pick, assoc, identity, uniq, pluck, difference, append, without } from 'ramda';
14
14
  import * as yup from 'yup';
15
15
  import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
16
16
  import _createClass from '@babel/runtime/helpers/createClass';
@@ -429,12 +429,40 @@ var slotsSelectComponentDefaultValue = function slotsSelectComponentDefaultValue
429
429
  var padZeroes = function padZeroes(str) {
430
430
  return str.length % 2 === 0 ? str : "0".concat(str);
431
431
  };
432
- var customFilter = function customFilter(option, searchTerm) {
433
- if (isNotPresent(searchTerm)) return true;
432
+ var filterSlots = function filterSlots(option, searchTerm) {
433
+ if (isNotPresent(searchTerm) || option.data.__isNew__) return true;
434
434
  var doesNumberMatches = option.value.replace(":", "").startsWith(padZeroes(searchTerm.replaceAll(/\D+/gi, "")));
435
435
  var doesAmPmMatches = option.value.includes(searchTerm.toUpperCase().replaceAll(/[^a-z]/gi, ""));
436
436
  return doesNumberMatches && doesAmPmMatches;
437
437
  };
438
+ var formatCreateLabel = identity;
439
+ var isValidTimeSlotOption = function isValidTimeSlotOption(value) {
440
+ // Allow HH:MM AM/PM, H:MM AM/PM, H:MM am/pm, or HH:MM (24h)
441
+ // Accepts 1 or 2 digit hour (1-12) with AM/PM OR 00-23:00-59 for 24h, AM/PM (any case) optional, optional leading zero
442
+
443
+ var timeRegex = /^(((0?[1-9]|1[0-2]):[0-5]\d ?[AaPp][Mm])|([01]?\d|2[0-3]):[0-5]\d)$/;
444
+ return timeRegex.test(value);
445
+ };
446
+ var formatTimeSlotOption = function formatTimeSlotOption(v) {
447
+ var value = (v || "").toUpperCase();
448
+ if (isNotEmpty(value)) {
449
+ // If value is in 24h format and missing AM/PM, convert to 12h with AM/PM
450
+ var time24hMatch = value.match(/^([01]?\d|2[0-3]):([0-5]\d)$/);
451
+ if (time24hMatch) {
452
+ var _time24hMatch = _slicedToArray(time24hMatch, 3),
453
+ hours = _time24hMatch[1],
454
+ minutes = _time24hMatch[2];
455
+ var hoursInt = parseInt(hours, 10);
456
+ var suffix = hoursInt >= 12 ? "PM" : "AM";
457
+ var hour12 = hoursInt % 12 || 12;
458
+ value = "".concat(hour12.toString().padStart(2, "0"), ":").concat(minutes, " ").concat(suffix);
459
+ } else if (value[1] === ":") {
460
+ // Pad hour with 0 if single digit (legacy logic)
461
+ value = "0".concat(value);
462
+ }
463
+ }
464
+ return value;
465
+ };
438
466
  var roundToNearestHour = function roundToNearestHour(time) {
439
467
  var minutes = time.minute();
440
468
  if (minutes === 59) return time.startOf("hour").add(1, "hour");
@@ -475,6 +503,10 @@ var ScheduleRow = function ScheduleRow(_ref) {
475
503
  bookedSlots: bookedSlots
476
504
  });
477
505
  }, [slotInterval, bookedSlots]);
506
+ var handleChange = function handleChange(index, field, e) {
507
+ var value = formatTimeSlotOption(e === null || e === void 0 ? void 0 : e.value);
508
+ setFieldValue("wdays.".concat(day, ".periods[").concat(index, "].").concat(field), value);
509
+ };
478
510
  var handleAddRow = function handleAddRow(arrayHelpers) {
479
511
  if (isNotPresent(values.wdays[day].periods)) {
480
512
  arrayHelpers.push(addDefaultPeriod(day));
@@ -502,11 +534,14 @@ var ScheduleRow = function ScheduleRow(_ref) {
502
534
  className: "flex items-start gap-2 @xl:gap-3",
503
535
  "data-cy": "schedule-row",
504
536
  children: [/*#__PURE__*/jsx(Select, {
537
+ formatCreateLabel: formatCreateLabel,
505
538
  isClearable: true,
539
+ isCreateable: true,
506
540
  isSearchable: true,
507
541
  className: "w-full",
508
542
  components: REMOVE_SELECT_DOWN_ARROW,
509
- filterOption: customFilter,
543
+ filterOption: filterSlots,
544
+ isValidNewOption: isValidTimeSlotOption,
510
545
  name: "wdays.".concat(day, ".periods[").concat(index, "].startTime"),
511
546
  placeholder: t("neetoMolecules.schedule.startTime"),
512
547
  strategy: "fixed",
@@ -514,14 +549,17 @@ var ScheduleRow = function ScheduleRow(_ref) {
514
549
  options: sortSlotsInterval("startTime", period === null || period === void 0 ? void 0 : period.startTime),
515
550
  value: slotsSelectComponentDefaultValue(period === null || period === void 0 ? void 0 : period.startTime),
516
551
  onChange: function onChange(e) {
517
- return setFieldValue("wdays.".concat(day, ".periods[").concat(index, "].startTime"), (e === null || e === void 0 ? void 0 : e.value) || "");
552
+ return handleChange(index, "startTime", e);
518
553
  }
519
554
  }), /*#__PURE__*/jsx(Select, {
555
+ formatCreateLabel: formatCreateLabel,
520
556
  isClearable: true,
557
+ isCreateable: true,
521
558
  isSearchable: true,
522
559
  className: "w-full",
523
560
  components: REMOVE_SELECT_DOWN_ARROW,
524
- filterOption: customFilter,
561
+ filterOption: filterSlots,
562
+ isValidNewOption: isValidTimeSlotOption,
525
563
  name: "wdays.".concat(day, ".periods[").concat(index, "].endTime"),
526
564
  options: sortSlotsInterval("endTime", period === null || period === void 0 ? void 0 : period.endTime),
527
565
  placeholder: t("neetoMolecules.schedule.endTime"),
@@ -529,7 +567,7 @@ var ScheduleRow = function ScheduleRow(_ref) {
529
567
  styles: BLUR_TEXT_WHEN_SELECT_MENU_IS_OPEN,
530
568
  value: slotsSelectComponentDefaultValue(period === null || period === void 0 ? void 0 : period.endTime),
531
569
  onChange: function onChange(e) {
532
- return setFieldValue("wdays.".concat(day, ".periods[").concat(index, "].endTime"), (e === null || e === void 0 ? void 0 : e.value) || "");
570
+ return handleChange(index, "endTime", e);
533
571
  }
534
572
  }), /*#__PURE__*/jsx(Button, {
535
573
  className: "flex-shrink-0 self-start",
@@ -920,5 +958,5 @@ var Schedule = /*#__PURE__*/forwardRef(function (_ref, scheduleRef) {
920
958
  });
921
959
  Schedule.displayName = "Schedule";
922
960
 
923
- export { Schedule as default };
961
+ export { addDefaultPeriod, buildSlotIntervals, Schedule as default, filterSlots, formatCreateLabel, formatTimeSlotOption, generateNewPeriod, isValidTimeSlotOption, slotsSelectComponentDefaultValue };
924
962
  //# sourceMappingURL=Schedule.js.map