@bigbinary/neeto-molecules 4.1.39 → 4.1.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -77,6 +77,7 @@ https://neeto-molecules.neeto.com/
77
77
  - [StatusDropdown](./docs/components/StatusDropdown.md)
78
78
  - [StickyRibbonsContainer](./docs/components/StickyRibbonsContainer.md)
79
79
  - [SubHeader](./docs/components/SubHeader.md)
80
+ - [SubscriptionUpgradeRequestModal](./docs/components/SubscriptionUpgradeRequestModal.md)
80
81
  - [SuffixedInput](./docs/components/SuffixedInput.md)
81
82
  - [TableWrapper](./docs/components/TableWrapper.md)
82
83
  - [Taxonomy](./docs/components/Taxonomy.md)
@@ -12,6 +12,7 @@ import Avatar from '@bigbinary/neetoui/Avatar';
12
12
  import Dropdown$1 from '@bigbinary/neetoui/Dropdown';
13
13
  import { isEmpty, toLower, mergeDeepLeft, not } from 'ramda';
14
14
  import KeyboardShortcuts from './KeyboardShortcuts.js';
15
+ import SubscriptionUpgradeRequestModal from './SubscriptionUpgradeRequestModal.js';
15
16
  import Modal$1 from '@bigbinary/neetoui/Modal';
16
17
  import classnames from 'classnames';
17
18
  import Search from '@bigbinary/neeto-icons/Search';
@@ -70,8 +71,8 @@ var css$1 = ".neeto-molecules-product-switcher__wrapper{align-items:flex-start;b
70
71
  n(css$1,{});
71
72
 
72
73
  var _excluded$4 = ["name", "description", "url", "isHighlighted"];
73
- function ownKeys$8(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; }
74
- function _objectSpread$8(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$8(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$8(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
74
+ function ownKeys$9(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; }
75
+ function _objectSpread$9(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$9(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$9(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
75
76
  var ProductLink = function ProductLink(_ref) {
76
77
  var name = _ref.name,
77
78
  description = _ref.description,
@@ -83,7 +84,7 @@ var ProductLink = function ProductLink(_ref) {
83
84
  var specialCase = SPECIAL_APP_NAMES[normalizedName];
84
85
  var appName = "Neeto".concat(name.charAt(0)).concat(name.slice(1).toLowerCase());
85
86
  var AppIcon = specialCase ? AppIcons["Neeto".concat(specialCase)] : AppIcons[appName];
86
- return /*#__PURE__*/jsxs("a", _objectSpread$8(_objectSpread$8({
87
+ return /*#__PURE__*/jsxs("a", _objectSpread$9(_objectSpread$9({
87
88
  "data-testid": "".concat(normalizedName, "-app-link"),
88
89
  href: url,
89
90
  rel: "noreferrer",
@@ -112,8 +113,8 @@ var ProductLink = function ProductLink(_ref) {
112
113
  };
113
114
  var ProductLink$1 = /*#__PURE__*/memo(ProductLink);
114
115
 
115
- function ownKeys$7(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; }
116
- function _objectSpread$7(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$7(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$7(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
116
+ function ownKeys$8(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; }
117
+ function _objectSpread$8(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$8(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$8(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
117
118
  var Content = function Content(_ref) {
118
119
  var highlightedIndex = _ref.highlightedIndex,
119
120
  filteredApps = _ref.filteredApps,
@@ -129,7 +130,7 @@ var Content = function Content(_ref) {
129
130
  return (filteredApps === null || filteredApps === void 0 ? void 0 : filteredApps.length) > 0 ? /*#__PURE__*/jsx("div", {
130
131
  className: "neeto-molecules-product-switcher__grid",
131
132
  children: filteredApps.map(function (app, index) {
132
- return /*#__PURE__*/jsx(ProductLink$1, _objectSpread$7(_objectSpread$7({}, app), {}, {
133
+ return /*#__PURE__*/jsx(ProductLink$1, _objectSpread$8(_objectSpread$8({}, app), {}, {
133
134
  "data-highlighted-index": index,
134
135
  isHighlighted: index === highlightedIndex
135
136
  }), app.name);
@@ -149,10 +150,10 @@ var neetoAppsApi = {
149
150
  fetch: fetch$1
150
151
  };
151
152
 
152
- function ownKeys$6(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; }
153
- function _objectSpread$6(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$6(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$6(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
153
+ function ownKeys$7(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; }
154
+ function _objectSpread$7(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$7(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$7(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
154
155
  var useFetchNeetoApps = function useFetchNeetoApps(options) {
155
- return useQuery(_objectSpread$6({
156
+ return useQuery(_objectSpread$7({
156
157
  queryKey: [QUERY_KEYS$1.NEETO_APPS_LIST],
157
158
  queryFn: neetoAppsApi.fetch
158
159
  }, options));
@@ -340,14 +341,14 @@ var Modal = function Modal(_ref) {
340
341
  };
341
342
 
342
343
  var _excluded$3 = ["t", "tReady"];
343
- function ownKeys$5(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; }
344
- function _objectSpread$5(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$5(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$5(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
344
+ function ownKeys$6(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; }
345
+ function _objectSpread$6(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$6(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$6(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
345
346
  var MenuItem$9 = Dropdown$1.MenuItem;
346
347
  var MenuButton$4 = withT(function (_ref) {
347
348
  var t = _ref.t;
348
349
  _ref.tReady;
349
350
  var otherProps = _objectWithoutProperties(_ref, _excluded$3);
350
- return /*#__PURE__*/jsx(MenuItem$9.Button, _objectSpread$5(_objectSpread$5({
351
+ return /*#__PURE__*/jsx(MenuItem$9.Button, _objectSpread$6(_objectSpread$6({
351
352
  className: "neeto-molecules-menu-sublist__item-btn",
352
353
  "data-testid": "help-menu-button",
353
354
  prefix: /*#__PURE__*/jsx(Help, {
@@ -428,8 +429,8 @@ var HelpMenu = function HelpMenu() {
428
429
  };
429
430
 
430
431
  var _excluded$2 = ["label", "icon", "changesCount"];
431
- function ownKeys$4(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; }
432
- function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
432
+ function ownKeys$5(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; }
433
+ function _objectSpread$5(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$5(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$5(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
433
434
  var LinkSection = function LinkSection(_ref) {
434
435
  var links = _ref.links;
435
436
  var MenuItem = Dropdown$1.MenuItem;
@@ -440,7 +441,7 @@ var LinkSection = function LinkSection(_ref) {
440
441
  Icon = _ref2.icon,
441
442
  changesCount = _ref2.changesCount,
442
443
  otherProps = _objectWithoutProperties(_ref2, _excluded$2);
443
- return /*#__PURE__*/jsxs(MenuItem.Button, _objectSpread$4(_objectSpread$4({
444
+ return /*#__PURE__*/jsxs(MenuItem.Button, _objectSpread$5(_objectSpread$5({
444
445
  className: "neeto-molecules-menu-sublist__item-btn",
445
446
  "data-testid": "floating-action-menu-link-section",
446
447
  prefix: Icon && /*#__PURE__*/jsx(Icon, {
@@ -558,14 +559,14 @@ var OrganizationSwitcher = function OrganizationSwitcher() {
558
559
  });
559
560
  };
560
561
 
561
- function ownKeys$3(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; }
562
- function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
562
+ function ownKeys$4(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; }
563
+ function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
563
564
  var MenuButton$2 = function MenuButton(_ref) {
564
565
  var otherProps = Object.assign({}, (_objectDestructuringEmpty(_ref), _ref));
565
566
  var _useTranslation = useTranslation(),
566
567
  t = _useTranslation.t;
567
568
  var MenuItem = Dropdown$1.MenuItem;
568
- return /*#__PURE__*/jsx(MenuItem.Button, _objectSpread$3(_objectSpread$3({
569
+ return /*#__PURE__*/jsx(MenuItem.Button, _objectSpread$4(_objectSpread$4({
569
570
  className: "neeto-molecules-menu-sublist__item-btn",
570
571
  "data-testid": "product-switcher-button",
571
572
  label: t("neetoMolecules.sidebar.productSwitcher"),
@@ -650,13 +651,13 @@ var ProfileHeader = function ProfileHeader(_ref) {
650
651
  };
651
652
 
652
653
  var _excluded$1 = ["profileInfo"];
653
- 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; }
654
- 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; }
654
+ function ownKeys$3(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; }
655
+ function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
655
656
  var MenuItem$4 = Dropdown$1.MenuItem;
656
657
  var MenuButton$1 = function MenuButton(_ref) {
657
658
  var profileInfo = _ref.profileInfo,
658
659
  otherProps = _objectWithoutProperties(_ref, _excluded$1);
659
- return /*#__PURE__*/jsx(MenuItem$4.Button, _objectSpread$2(_objectSpread$2({
660
+ return /*#__PURE__*/jsx(MenuItem$4.Button, _objectSpread$3(_objectSpread$3({
660
661
  className: "neeto-molecules-profile-popup",
661
662
  "data-testid": "profile-expand-menu-button",
662
663
  suffix: /*#__PURE__*/jsx(Right, {
@@ -939,6 +940,8 @@ var WorkspaceMenu = function WorkspaceMenu() {
939
940
  });
940
941
  };
941
942
 
943
+ 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; }
944
+ 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; }
942
945
  var ProfileMenu = function ProfileMenu(_ref) {
943
946
  var _globalProps$user, _globalProps$user2, _globalProps$user3, _globalProps$user4;
944
947
  var profileInfo = _ref.profileInfo,
@@ -950,7 +953,9 @@ var ProfileMenu = function ProfileMenu(_ref) {
950
953
  toggleModal = _ref.toggleModal,
951
954
  isThemeSwitcherEnabled = _ref.isThemeSwitcherEnabled,
952
955
  isOrganizationSwitcherEnabled = _ref.isOrganizationSwitcherEnabled,
953
- isConsumer = _ref.isConsumer;
956
+ isConsumer = _ref.isConsumer,
957
+ enableSubscriptionUpgradeRequest = _ref.enableSubscriptionUpgradeRequest,
958
+ openUpgradeModal = _ref.openUpgradeModal;
954
959
  var Menu = Dropdown$1.Menu,
955
960
  MenuItem = Dropdown$1.MenuItem,
956
961
  Divider = Dropdown$1.Divider;
@@ -958,6 +963,28 @@ var ProfileMenu = function ProfileMenu(_ref) {
958
963
  var _useTranslation = useTranslation(),
959
964
  t = _useTranslation.t;
960
965
  var normalizedPlan = (((_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.subscriptionPlan) || "").toLowerCase();
966
+ var isFreePlan = normalizedPlan === "free";
967
+ var showUpgradeAction = isFreePlan && enableSubscriptionUpgradeRequest;
968
+ var subscriptionPlanLink = _objectSpread$2({
969
+ label: /*#__PURE__*/jsxs(Fragment, {
970
+ children: [globalProps.appName, " ", /*#__PURE__*/jsx("span", {
971
+ className: classnames("neeto-molecules-subscription-plan-badge flex items-center gap-1", {
972
+ "neeto-molecules-subscription-plan-badge--pro": normalizedPlan === "pro",
973
+ "neeto-molecules-subscription-plan-badge--free": isFreePlan
974
+ }),
975
+ children: normalizedPlan === "pro" ? humanize((_globalProps$user2 = globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.subscriptionPlan) : /*#__PURE__*/jsxs(Fragment, {
976
+ children: [/*#__PURE__*/jsx(Crown, {
977
+ size: 12
978
+ }), t("neetoMolecules.sidebar.upgradePlan")]
979
+ })
980
+ })]
981
+ }),
982
+ "data-testid": "subscription-plan"
983
+ }, showUpgradeAction ? {
984
+ onClick: openUpgradeModal
985
+ } : {
986
+ href: NEETO_AUTH_BILLING_INFO_URL
987
+ });
961
988
  return /*#__PURE__*/jsxs(Menu, {
962
989
  className: "pb-1",
963
990
  children: [!isConsumer && /*#__PURE__*/jsxs(Fragment, {
@@ -972,24 +999,8 @@ var ProfileMenu = function ProfileMenu(_ref) {
972
999
  className: "neeto-molecules-floating-action-button__profile-wrapper-custom-content",
973
1000
  children: customContent
974
1001
  })]
975
- }), /*#__PURE__*/jsx(Divider, {}), ((_globalProps$user2 = globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.isOwner) && /*#__PURE__*/jsx(WorkspaceMenu, {}), isOrganizationSwitcherEnabled && /*#__PURE__*/jsx(OrganizationSwitcher, {}), /*#__PURE__*/jsx(Divider, {}), isPresent((_globalProps$user3 = globalProps.user) === null || _globalProps$user3 === void 0 ? void 0 : _globalProps$user3.subscriptionPlan) && /*#__PURE__*/jsx(LinkSection, {
976
- links: [{
977
- label: /*#__PURE__*/jsxs(Fragment, {
978
- children: [globalProps.appName, " ", /*#__PURE__*/jsx("span", {
979
- className: classnames("neeto-molecules-subscription-plan-badge flex items-center gap-1", {
980
- "neeto-molecules-subscription-plan-badge--pro": normalizedPlan === "pro",
981
- "neeto-molecules-subscription-plan-badge--free": normalizedPlan === "free"
982
- }),
983
- children: normalizedPlan === "pro" ? humanize((_globalProps$user4 = globalProps.user) === null || _globalProps$user4 === void 0 ? void 0 : _globalProps$user4.subscriptionPlan) : /*#__PURE__*/jsxs(Fragment, {
984
- children: [/*#__PURE__*/jsx(Crown, {
985
- size: 12
986
- }), t("neetoMolecules.sidebar.upgradePlan")]
987
- })
988
- })]
989
- }),
990
- href: NEETO_AUTH_BILLING_INFO_URL,
991
- "data-testid": "subscription-plan"
992
- }]
1002
+ }), /*#__PURE__*/jsx(Divider, {}), ((_globalProps$user3 = globalProps.user) === null || _globalProps$user3 === void 0 ? void 0 : _globalProps$user3.isOwner) && /*#__PURE__*/jsx(WorkspaceMenu, {}), isOrganizationSwitcherEnabled && /*#__PURE__*/jsx(OrganizationSwitcher, {}), /*#__PURE__*/jsx(Divider, {}), isPresent((_globalProps$user4 = globalProps.user) === null || _globalProps$user4 === void 0 ? void 0 : _globalProps$user4.subscriptionPlan) && /*#__PURE__*/jsx(LinkSection, {
1003
+ links: [subscriptionPlanLink]
993
1004
  }), showProductSwitcher && /*#__PURE__*/jsx(ProductSwitcher, {
994
1005
  toggleModal: toggleModal
995
1006
  }), /*#__PURE__*/jsx(HelpMenu, {}), /*#__PURE__*/jsx(Divider, {})]
@@ -1014,19 +1025,24 @@ var ProfileButton = function ProfileButton(_ref) {
1014
1025
  isThemeSwitcherEnabled = _ref.isThemeSwitcherEnabled,
1015
1026
  isOrganizationSwitcherEnabled = _ref.isOrganizationSwitcherEnabled,
1016
1027
  profilePopoverProps = _ref.profilePopoverProps,
1017
- isConsumer = _ref.isConsumer;
1028
+ isConsumer = _ref.isConsumer,
1029
+ enableSubscriptionUpgradeRequest = _ref.enableSubscriptionUpgradeRequest;
1018
1030
  var _useState = useState(false),
1019
1031
  _useState2 = _slicedToArray(_useState, 2),
1020
1032
  isModalOpen = _useState2[0],
1021
1033
  setIsModalOpen = _useState2[1];
1022
1034
  var _useState3 = useState(false),
1023
1035
  _useState4 = _slicedToArray(_useState3, 2),
1024
- isBackdropVisible = _useState4[0],
1025
- setIsBackdropVisible = _useState4[1];
1026
- var _useState5 = useState(null),
1036
+ isUpgradeModalOpen = _useState4[0],
1037
+ setIsUpgradeModalOpen = _useState4[1];
1038
+ var _useState5 = useState(false),
1027
1039
  _useState6 = _slicedToArray(_useState5, 2),
1028
- changesCount = _useState6[0],
1029
- setChangesCount = _useState6[1];
1040
+ isBackdropVisible = _useState6[0],
1041
+ setIsBackdropVisible = _useState6[1];
1042
+ var _useState7 = useState(null),
1043
+ _useState8 = _slicedToArray(_useState7, 2),
1044
+ changesCount = _useState8[0],
1045
+ setChangesCount = _useState8[1];
1030
1046
  var _KeyboardShortcuts$us = KeyboardShortcuts.usePaneState(),
1031
1047
  _KeyboardShortcuts$us2 = _slicedToArray(_KeyboardShortcuts$us, 2),
1032
1048
  setIsOpen = _KeyboardShortcuts$us2[1];
@@ -1109,6 +1125,7 @@ var ProfileButton = function ProfileButton(_ref) {
1109
1125
  children: /*#__PURE__*/jsx(ProfileMenu, {
1110
1126
  customContent: customContent,
1111
1127
  defaultLinks: defaultLinks,
1128
+ enableSubscriptionUpgradeRequest: enableSubscriptionUpgradeRequest,
1112
1129
  isConsumer: isConsumer,
1113
1130
  isOrganizationSwitcherEnabled: isOrganizationSwitcherEnabled,
1114
1131
  isThemeSwitcherEnabled: isThemeSwitcherEnabled,
@@ -1116,6 +1133,9 @@ var ProfileButton = function ProfileButton(_ref) {
1116
1133
  showProductSwitcher: showProductSwitcher,
1117
1134
  topLinks: topLinks,
1118
1135
  bottomLinks: newBottomLinks,
1136
+ openUpgradeModal: function openUpgradeModal() {
1137
+ return setIsUpgradeModalOpen(true);
1138
+ },
1119
1139
  toggleModal: setIsModalOpen
1120
1140
  })
1121
1141
  }), isPresent(changesCount) && /*#__PURE__*/jsx("span", {
@@ -1127,6 +1147,11 @@ var ProfileButton = function ProfileButton(_ref) {
1127
1147
  onClose: function onClose() {
1128
1148
  return setIsModalOpen(false);
1129
1149
  }
1150
+ }), enableSubscriptionUpgradeRequest && /*#__PURE__*/jsx(SubscriptionUpgradeRequestModal, {
1151
+ isOpen: isUpgradeModalOpen,
1152
+ onClose: function onClose() {
1153
+ return setIsUpgradeModalOpen(false);
1154
+ }
1130
1155
  })]
1131
1156
  });
1132
1157
  };
@@ -1134,7 +1159,7 @@ var ProfileButton = function ProfileButton(_ref) {
1134
1159
  var css = ":root{--neeto-molecules-floating-menu-z-index:99999}.neeto-molecules-floating-action-menu__container{background-color:rgb(var(--neeto-ui-white));border:1px solid rgb(var(--neeto-ui-white));border-end-end-radius:1.0625rem;border-inline-start:none;border-start-end-radius:1.0625rem;bottom:16px;inset-inline-start:0;position:fixed;z-index:99999;z-index:var(--neeto-molecules-floating-menu-z-index)}.neeto-molecules-floating-action-button{align-items:center;background-color:rgb(var(--neeto-ui-primary-500));border-color:rgb(var(--neeto-ui-primary-500));border-end-end-radius:1rem;border-start-end-radius:1rem;display:flex;flex-direction:column;gap:.375rem;justify-content:center;padding:.25rem}.neeto-molecules-floating-action-button__help-icon{align-items:center;background-color:#fff;border-radius:6.25rem;display:flex;height:1.625rem;justify-content:center;width:1.625rem}.neeto-molecules-floating-action-button__profile-avatar{--neeto-ui-avatar-container-width:1.625rem;--neeto-ui-avatar-container-height:1.625rem;border:2px solid #fff;border-radius:6.25rem}.neeto-molecules-floating-action-button__profile-avatar>div{height:100%;width:100%}.neeto-molecules-floating-action-button__profile-avatar .neeto-ui-avatar{height:100%!important;width:100%!important}.neeto-molecules-floating-action-button__dropdown{--neeto-ui-dropdown-divider-margin:0.5rem;--neeto-ui-dropdown-item-border-radius:0.25rem;flex-shrink:0;max-height:95vh!important;max-width:none;width:16rem;z-index:99999;z-index:var(--neeto-molecules-floating-menu-z-index)}.neeto-molecules-floating-action-button__dropdown .neeto-ui-dropdown__popup-menu{padding-bottom:.75rem!important;padding-top:.75rem!important}.neeto-molecules-floating-action-button__dropdown.neeto-ui-dropdown__popup .neeto-ui-dropdown__popup-menu-item{background-color:transparent!important;padding-left:.75rem;padding-right:.75rem}.neeto-molecules-floating-action-button__backdrop{background-color:rgba(var(--neeto-ui-black),.27);height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:99998;z-index:calc(var(--neeto-molecules-floating-menu-z-index) - 1)}.neeto-molecules-product-switcher-menu-popup__dropdown{max-height:none!important;max-width:none}.neeto-molecules-menu__notif-count{border:1px solid #fff;height:.9375rem;inset-inline-end:0;min-width:.9375rem;pointer-events:none;position:absolute;top:0;z-index:3}.neeto-molecules-menu-list__item-btn-count,.neeto-molecules-menu__notif-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);justify-content:center;padding-inline-end:.25rem;padding-inline-start:.25rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.neeto-molecules-menu-list__item-btn-count{height:1.125rem;min-width:1.125rem}.neeto-ui-dropdown__popup .neeto-molecules-product-switcher-menu-popup-wrapper{border:1px solid rgb(var(--neeto-ui-gray-400));border-radius:.75rem!important;min-width:15rem}.neeto-ui-dropdown__popup .neeto-molecules-product-switcher-menu-popup-wrapper .tippy-content{padding:0}.neeto-ui-dropdown__popup .neeto-molecules-product-switcher-menu-popup-wrapper .tippy-svg-arrow{display:none!important}.neeto-molecules-profile-popup__top-section{border-radius:.25rem;transition:var(--neeto-ui-transition)}@media (prefers-reduced-motion:reduce){.neeto-molecules-profile-popup__top-section{transition:none}}.neeto-molecules-profile-popup__top-section:hover{background-color:rgb(var(--neeto-ui-gray-200))}.neeto-molecules-menu-sublist__item-btn{font-weight:500!important;height:2.5rem}.neeto-molecules-menu-sublist__item-btn[data-btn-weight=bold]{font-weight:700!important}.neeto-molecules-menu-sublist__item-btn.active{background-color:rgb(var(--neeto-ui-gray-800));color:rgb(var(--neeto-ui-white))}.neeto-molecules-menu-sublist__item-btn-icon svg path{vector-effect:non-scaling-stroke}.neeto-molecules-menu-sublist__item-btn span{align-items:center;display:flex;gap:.5rem}.neeto-molecules-product-switcher-menu-popup-wrapper{height:95vh;overflow-y:auto;width:calc(100vw - 25rem)}.neeto-molecules-floating-action-button__profile-wrapper-custom-content:hover{background-color:rgb(var(--neeto-ui-white))!important}.neeto-molecules-organization-switcher-active-button,.neeto-molecules-theme-switcher-active-button{color:rgb(var(--neeto-ui-success-600))!important}.tippy-box[data-theme~=neeto-molecules-floating-action-outer-dropdown-wrapper]{--neeto-ui-dropdown-box-shadow:0 0 0 0;--neeto-ui-dropdown-border-radius:0.75rem;--neeto-ui-dropdown-popup-border-radius:0.75rem;--neeto-ui-dropdown-margin-y:0;--neeto-ui-dropdown-margin-x:0;transition:var(--neeto-ui-transition)}@media (prefers-reduced-motion:reduce){.tippy-box[data-theme~=neeto-molecules-floating-action-outer-dropdown-wrapper]{transition:none}}.tippy-box[data-theme~=neeto-molecules-floating-action-outer-dropdown-wrapper] .neeto-ui-dropdown__popup{--neeto-ui-dropdown-border-radius:0.75rem;transition:var(--neeto-ui-transition)}@media (prefers-reduced-motion:reduce){.tippy-box[data-theme~=neeto-molecules-floating-action-outer-dropdown-wrapper] .neeto-ui-dropdown__popup{transition:none}}.tippy-box[data-theme~=neeto-molecules-floating-action-outer-dropdown-wrapper] .neeto-ui-dropdown__popup .neeto-ui-dropdown__popup-divider{transition:var(--neeto-ui-transition)}@media (prefers-reduced-motion:reduce){.tippy-box[data-theme~=neeto-molecules-floating-action-outer-dropdown-wrapper] .neeto-ui-dropdown__popup .neeto-ui-dropdown__popup-divider{transition:none}}.neeto-molecules-subscription-plan-badge{border-radius:9999px;display:inline-block;font-size:.625rem;font-weight:600;line-height:1.1;padding:.25rem .625rem}.neeto-molecules-subscription-plan-badge--pro{background-color:#ffe44a;color:#000}.neeto-molecules-subscription-plan-badge--free{background-color:rgb(var(--neeto-ui-primary-500));color:rgb(var(--neeto-ui-white))}.neeto-molecules-theme-switcher{border-bottom-left-radius:.75rem;border-bottom-right-radius:.75rem}.neeto-molecules-theme-switcher__label{color:rgb(var(--neeto-ui-gray-800));font-size:.875rem;font-weight:500}.neeto-molecules-theme-switcher__segmented-control{background-color:rgb(var(--neeto-ui-gray-200));border-radius:9999px;display:flex;gap:.25rem;padding:.0625rem}.neeto-molecules-theme-switcher__option{align-items:center;background-color:transparent;border:1px solid transparent;border-radius:9999px;color:rgb(var(--neeto-ui-gray-700));cursor:pointer;display:flex;flex:1;font-size:.75rem;font-weight:500;gap:.125rem;padding:.25rem .375rem;transition:all .2s ease;white-space:nowrap}@media (prefers-reduced-motion:reduce){.neeto-molecules-theme-switcher__option{transition:none}}.neeto-molecules-theme-switcher__option:hover{background-color:rgb(var(--neeto-ui-gray-100))}.neeto-molecules-theme-switcher__option--active{background-color:rgb(var(--neeto-ui-white));border-color:rgb(var(--neeto-ui-gray-300));box-shadow:0 1px 2px rgba(0,0,0,.05);color:rgb(var(--neeto-ui-gray-800))}.neeto-molecules-theme-switcher__option svg{flex-shrink:0}";
1135
1160
  n(css,{});
1136
1161
 
1137
- var _excluded = ["profileInfoOverrides", "topLinks", "bottomLinks", "showProductSwitcher", "isThemeSwitcherEnabled", "isOrganizationSwitcherEnabled", "customContent", "profilePopoverProps", "isConsumer"];
1162
+ var _excluded = ["profileInfoOverrides", "topLinks", "bottomLinks", "showProductSwitcher", "isThemeSwitcherEnabled", "isOrganizationSwitcherEnabled", "customContent", "profilePopoverProps", "isConsumer", "enableSubscriptionUpgradeRequest"];
1138
1163
  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; }
1139
1164
  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; }
1140
1165
  var FloatingActionMenu = /*#__PURE__*/forwardRef(function (_ref, ref) {
@@ -1156,6 +1181,8 @@ var FloatingActionMenu = /*#__PURE__*/forwardRef(function (_ref, ref) {
1156
1181
  profilePopoverProps = _ref$profilePopoverPr === void 0 ? {} : _ref$profilePopoverPr,
1157
1182
  _ref$isConsumer = _ref.isConsumer,
1158
1183
  isConsumer = _ref$isConsumer === void 0 ? false : _ref$isConsumer,
1184
+ _ref$enableSubscripti = _ref.enableSubscriptionUpgradeRequest,
1185
+ enableSubscriptionUpgradeRequest = _ref$enableSubscripti === void 0 ? true : _ref$enableSubscripti,
1159
1186
  otherProps = _objectWithoutProperties(_ref, _excluded);
1160
1187
  useEffect(function () {
1161
1188
  isThemeSwitcherEnabled && setAppTheme();
@@ -1169,6 +1196,7 @@ var FloatingActionMenu = /*#__PURE__*/forwardRef(function (_ref, ref) {
1169
1196
  children: /*#__PURE__*/jsx(ProfileButton, _defineProperty({
1170
1197
  bottomLinks: bottomLinks,
1171
1198
  customContent: customContent,
1199
+ enableSubscriptionUpgradeRequest: enableSubscriptionUpgradeRequest,
1172
1200
  isConsumer: isConsumer,
1173
1201
  isOrganizationSwitcherEnabled: isOrganizationSwitcherEnabled,
1174
1202
  isThemeSwitcherEnabled: isThemeSwitcherEnabled,