impact-ui 4.0.0-alpha.21 → 4.0.0-alpha.22

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 (27) hide show
  1. package/dist/_virtual/index2.js +2 -2
  2. package/dist/_virtual/index3.js +4 -2
  3. package/dist/_virtual/index4.js +3 -3
  4. package/dist/_virtual/index5.js +2 -4
  5. package/dist/components/Menu/Menu.types.d.ts +4 -2
  6. package/dist/components/Menu/Menu.types.d.ts.map +1 -1
  7. package/dist/components/Menu/index.d.ts.map +1 -1
  8. package/dist/components/Menu/index.js +10 -1
  9. package/dist/components/Notification/NotificationBody/NotificationList/NotificationChipsList.d.ts +3 -1
  10. package/dist/components/Notification/NotificationBody/NotificationList/NotificationChipsList.d.ts.map +1 -1
  11. package/dist/components/Notification/NotificationBody/NotificationList/NotificationChipsList.js +55 -16
  12. package/dist/components/Notification/NotificationBody/NotificationList/NotificationList.js +1 -1
  13. package/dist/components/Notification/NotificationBody/NotificationList/NotificationListItem.d.ts.map +1 -1
  14. package/dist/components/Notification/NotificationBody/NotificationList/NotificationListItem.js +124 -9
  15. package/dist/components/Notification/NotificationBody/NotificationTaskList.d.ts.map +1 -1
  16. package/dist/components/Notification/NotificationBody/NotificationTaskList.js +14 -6
  17. package/dist/components/Notification/index.js +1 -1
  18. package/dist/components/Table/CommentsPortal.d.ts.map +1 -1
  19. package/dist/components/Table/CommentsPortal.js +11 -4
  20. package/dist/components/Table/TableImpl.d.ts.map +1 -1
  21. package/dist/components/Table/TableImpl.js +77 -31
  22. package/dist/components/Table/withCommentIcon.js +2 -2
  23. package/dist/mcp-component-registry.json +2 -2
  24. package/dist/node_modules/@mui/system/colorManipulator.js +2 -2
  25. package/dist/node_modules/prop-types/index.js +1 -1
  26. package/dist/node_modules/react-is/index.js +1 -1
  27. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- var reactIs = { exports: {} };
1
+ var propTypes = { exports: {} };
2
2
  export {
3
- reactIs as __module
3
+ propTypes as __module
4
4
  };
@@ -1,4 +1,6 @@
1
- var propTypes = { exports: {} };
1
+ import { getAugmentedNamespace } from "./_commonjsHelpers.js";
2
+ import * as index from "../node_modules/@mui/system/node_modules/@mui/utils/esm/formatMuiErrorMessage/index.js";
3
+ const require$$1 = /* @__PURE__ */ getAugmentedNamespace(index);
2
4
  export {
3
- propTypes as __module
5
+ require$$1 as default
4
6
  };
@@ -1,6 +1,6 @@
1
1
  import { getAugmentedNamespace } from "./_commonjsHelpers.js";
2
- import * as index from "../node_modules/@mui/system/node_modules/@mui/utils/esm/formatMuiErrorMessage/index.js";
3
- const require$$1 = /* @__PURE__ */ getAugmentedNamespace(index);
2
+ import * as index from "../node_modules/@mui/system/node_modules/@mui/utils/esm/clamp/index.js";
3
+ const require$$2 = /* @__PURE__ */ getAugmentedNamespace(index);
4
4
  export {
5
- require$$1 as default
5
+ require$$2 as default
6
6
  };
@@ -1,6 +1,4 @@
1
- import { getAugmentedNamespace } from "./_commonjsHelpers.js";
2
- import * as index from "../node_modules/@mui/system/node_modules/@mui/utils/esm/clamp/index.js";
3
- const require$$2 = /* @__PURE__ */ getAugmentedNamespace(index);
1
+ var reactIs = { exports: {} };
4
2
  export {
5
- require$$2 as default
3
+ reactIs as __module
6
4
  };
@@ -74,13 +74,13 @@ export interface MenuProps extends BaseComponentProps {
74
74
  iconPlacement?: 'left' | 'top';
75
75
  /** When true, show checkboxes and multi-select; does not close menu on item click */
76
76
  withCheckbox?: boolean;
77
- /** When true (and withCheckbox), show Cancel/Apply buttons at bottom */
77
+ /** When true (and withCheckbox), show Apply at bottom; pass tertiaryButtonLabel to also show Cancel */
78
78
  withActionButtons?: boolean;
79
79
  /** Called when Apply is clicked */
80
80
  onPrimaryButtonClick?: () => void;
81
81
  /** Called when the tertiary (left) action button is clicked */
82
82
  onTertiaryButtonClick?: () => void;
83
- /** Label for the tertiary action button (defaults to "Cancel") */
83
+ /** When set, renders the tertiary action button (e.g. "Cancel") */
84
84
  tertiaryButtonLabel?: string;
85
85
  /** Unused; kept for API compat */
86
86
  withSection?: boolean;
@@ -110,6 +110,8 @@ export interface MenuProps extends BaseComponentProps {
110
110
  onClearSelection?: () => void;
111
111
  /** Apply button props (loading, label, disabled) */
112
112
  primaryButtonProps?: MenuPrimaryButtonProps;
113
+ /** Tertiary action button props (label, disabled) */
114
+ tertiaryButtonProps?: MenuPrimaryButtonProps;
113
115
  /** Class name for the MUI Menu paper container */
114
116
  menuContainerClassName?: string;
115
117
  /** When true, close menu after clicking a leaf item (default: false to match old behavior) */
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.types.d.ts","sourceRoot":"","sources":["../../../src/components/Menu/Menu.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Menu.types.d.ts","sourceRoot":"","sources":["../../../src/components/Menu/Menu.types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Menu/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAI/D,OAAO,KAAK,EAAE,SAAS,EAAc,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,oBAAoB,CAAC;AAE5B,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAElE;;;;GAIG;AACH,eAAO,MAAM,IAAI,uHA6NhB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Menu/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAI/D,OAAO,KAAK,EAAE,SAAS,EAAc,MAAM,cAAc,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,oBAAoB,CAAC;AAE5B,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAElE;;;;GAIG;AACH,eAAO,MAAM,IAAI,uHAoOhB,CAAC"}
@@ -35,6 +35,7 @@ const Menu = forwardRef(
35
35
  menuContainerClassName,
36
36
  className,
37
37
  id,
38
+ tertiaryButtonProps = {},
38
39
  "data-testid": dataTestId,
39
40
  ...rest
40
41
  } = props;
@@ -152,7 +153,15 @@ const Menu = forwardRef(
152
153
  renderHeader(),
153
154
  isLoading ? renderLoadingState() : isSearching ? renderSearchingState() : hasEmptySearch ? renderEmptySearchState() : hasNoInitialData ? renderNoDataState() : /* @__PURE__ */ jsx("div", { className: "menu-scroll-area", children: menuItems }),
154
155
  withActionButtons && withCheckbox && !isLoading && !isSearching && ((data == null ? void 0 : data.length) ?? 0) > 0 && /* @__PURE__ */ jsx("div", { className: "bottom_action", children: /* @__PURE__ */ jsxs("div", { className: "ia-menu-action-button-container", children: [
155
- /* @__PURE__ */ jsx(Button, { variant: "tertiary", onClick: onTertiaryButtonClick, children: tertiaryButtonLabel ?? "Cancel" }),
156
+ tertiaryButtonLabel && /* @__PURE__ */ jsx(
157
+ Button,
158
+ {
159
+ variant: "tertiary",
160
+ onClick: onTertiaryButtonClick,
161
+ ...tertiaryButtonProps,
162
+ children: tertiaryButtonLabel || "Cancel"
163
+ }
164
+ ),
156
165
  /* @__PURE__ */ jsx(
157
166
  Button,
158
167
  {
@@ -15,7 +15,9 @@ interface NotificationChipsListProps {
15
15
  showBadgeLoader?: boolean;
16
16
  notificationList: NotificationListItemData[];
17
17
  expandList: boolean;
18
+ setExpandList: (value: boolean | ((prev: boolean) => boolean)) => void;
19
+ setSearchExpand: (value: boolean | ((prev: boolean) => boolean)) => void;
18
20
  }
19
- export declare function NotificationChipsList({ list, currActiveListType, setCurrActiveListType, activeBadge, showBadgeLoader, notificationList, expandList, }: NotificationChipsListProps): import("react/jsx-runtime").JSX.Element;
21
+ export declare function NotificationChipsList({ list, currActiveListType, setCurrActiveListType, activeBadge, showBadgeLoader, notificationList, expandList, setExpandList, setSearchExpand, }: NotificationChipsListProps): import("react/jsx-runtime").JSX.Element;
20
22
  export {};
21
23
  //# sourceMappingURL=NotificationChipsList.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationChipsList.d.ts","sourceRoot":"","sources":["../../../../../src/components/Notification/NotificationBody/NotificationList/NotificationChipsList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEzE,MAAM,WAAW,oBAAoB;IACnC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,UAAU,0BAA0B;IAClC,IAAI,EAAE,oBAAoB,EAAE,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,wBAAwB,EAAE,CAAC;IAC7C,UAAU,EAAE,OAAO,CAAC;CACrB;AAWD,wBAAgB,qBAAqB,CAAC,EACpC,IAAI,EACJ,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,UAAU,GACX,EAAE,0BAA0B,2CA4B5B"}
1
+ {"version":3,"file":"NotificationChipsList.d.ts","sourceRoot":"","sources":["../../../../../src/components/Notification/NotificationBody/NotificationList/NotificationChipsList.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEzE,MAAM,WAAW,oBAAoB;IACnC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,UAAU,0BAA0B;IAClC,IAAI,EAAE,oBAAoB,EAAE,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,wBAAwB,EAAE,CAAC;IAC7C,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,KAAK,IAAI,CAAC;IACvE,eAAe,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,KAAK,IAAI,CAAC;CAC1E;AAmBD,wBAAgB,qBAAqB,CAAC,EACpC,IAAI,EACJ,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,eAAe,GAChB,EAAE,0BAA0B,2CAuD5B"}
@@ -1,5 +1,7 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
+ import { useCallback } from "react";
2
3
  import { Badge } from "../../../Badge/index.js";
4
+ import { FilterSlider } from "../../../FiltersStrip/FilterSlider.js";
3
5
  import { Loader } from "../../../Loader/index.js";
4
6
  function getBadgeLabel(item, notificationList) {
5
7
  const baseLabel = item.label || "";
@@ -9,6 +11,13 @@ function getBadgeLabel(item, notificationList) {
9
11
  const count = notificationList.filter((listItem) => listItem.badge === item.label).length;
10
12
  return count > 0 ? `${baseLabel} (${count})` : baseLabel;
11
13
  }
14
+ function toFilterSliderList(list) {
15
+ return list.map((item) => ({
16
+ id: String(item.id ?? item.label),
17
+ label: item.label,
18
+ values: []
19
+ }));
20
+ }
12
21
  function NotificationChipsList({
13
22
  list,
14
23
  currActiveListType,
@@ -16,31 +25,61 @@ function NotificationChipsList({
16
25
  activeBadge,
17
26
  showBadgeLoader,
18
27
  notificationList,
19
- expandList
28
+ expandList,
29
+ setExpandList,
30
+ setSearchExpand
20
31
  }) {
32
+ const handleClick = useCallback(
33
+ (chip) => {
34
+ var _a, _b;
35
+ (_a = chip.handleClick) == null ? void 0 : _a.call(chip);
36
+ (_b = chip.onClick) == null ? void 0 : _b.call(chip);
37
+ setCurrActiveListType(chip.label);
38
+ },
39
+ [setCurrActiveListType]
40
+ );
41
+ const handleExpandClick = useCallback(() => {
42
+ if (!expandList) {
43
+ setSearchExpand(false);
44
+ }
45
+ setExpandList((prev) => !prev);
46
+ }, [expandList, setExpandList, setSearchExpand]);
21
47
  if (showBadgeLoader) {
22
- return /* @__PURE__ */ jsx(Loader, { showSkeleton: true, size: "small" });
48
+ return /* @__PURE__ */ jsx(Loader, { showSkeleton: true });
23
49
  }
24
50
  const activeLabel = activeBadge != null && activeBadge !== "" ? activeBadge : currActiveListType;
25
51
  return /* @__PURE__ */ jsx("div", { className: "impact-notification-task-list-chips", children: /* @__PURE__ */ jsx(
26
52
  "div",
27
53
  {
28
54
  className: `impact-notification-task-list-item ${expandList ? "list-item-full-width" : ""}`,
29
- children: list.map((item, index) => /* @__PURE__ */ jsx(
30
- Badge,
55
+ children: /* @__PURE__ */ jsx(
56
+ FilterSlider,
31
57
  {
32
- color: activeLabel === item.label ? "info" : void 0,
33
- label: getBadgeLabel(item, notificationList),
34
- variant: "stroke",
35
- onClick: () => {
36
- var _a, _b;
37
- (_a = item.handleClick) == null ? void 0 : _a.call(item);
38
- (_b = item.onClick) == null ? void 0 : _b.call(item);
39
- setCurrActiveListType(item.label);
40
- }
41
- },
42
- item.id ?? index
43
- ))
58
+ currDropShow: null,
59
+ handleExpandClick,
60
+ isExpanded: expandList,
61
+ list: toFilterSliderList(list),
62
+ tagsChildren: (item, index) => {
63
+ const chip = list[index];
64
+ if (!chip) {
65
+ return null;
66
+ }
67
+ return /* @__PURE__ */ jsx(
68
+ Badge,
69
+ {
70
+ color: activeLabel === chip.label ? "info" : void 0,
71
+ label: getBadgeLabel(chip, notificationList),
72
+ variant: "stroke",
73
+ onClick: () => {
74
+ handleClick(chip);
75
+ }
76
+ },
77
+ item.id
78
+ );
79
+ },
80
+ width: expandList || list.length < 3 ? "75%" : "20%"
81
+ }
82
+ )
44
83
  }
45
84
  ) });
46
85
  }
@@ -1,4 +1,4 @@
1
- !function(){"use strict";try{if("undefined"!=typeof document){var i=document.createElement("style");i.appendChild(document.createTextNode(".impact-notification-container{height:100%;transition:width .2s ease-in;width:600px}.impact-notification-container .impact-notification-header{align-items:center;background-color:#fff;border-bottom:1px solid #d9dde7;display:flex;height:40px;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:1}.impact-notification-container .impact-notification-header .impact-notification-heading{font-size:16px;font-weight:700;line-height:20px}.impact-notification-container .impact-notification-header .impact-notification-header-action-btns{align-items:center;display:flex;gap:12px}.impact-notification-container .impact-notification-header .impact-notification-header-action-btns button{background-color:#f5f6fa;border:none;border-radius:8px;cursor:pointer;height:32px;width:32px}.impact-notification-container .impact-notification-header .collapse-icon{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/collapse-icon-2.svg) no-repeat;background-position:50%;background-size:16px;cursor:pointer;height:16px;width:16px}.impact-notification-container .impact-notification-header .expand-icon{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/expand-icon.svg) no-repeat;background-position:50%;background-size:20px;cursor:pointer;height:16px;width:16px}.impact-notification-container .impact-notification-header .impact-notification-header-close-btn{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/close-tags.svg) no-repeat;background-position:50%;background-size:24px;cursor:pointer;height:16px;width:16px}.impact-notification-container .impact-notification-body-container{height:calc(100% - 96px);padding:20px 16px}.impact-notification-container .notification-body-container-full{height:calc(100% - 40px)}.impact-notification-container .impact-notification-body-header-container{align-items:baseline;display:flex;flex-direction:row;gap:12px}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer{height:100%;width:100%}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer .impact-tab-panel{height:calc(100% - 156px);overflow:hidden;padding:20px 0 0;position:absolute;width:calc(100% - 32px)}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer .impact-tab-panel .ia-tabPanel{height:100%}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer .impact-tab-panel .ia-tabPanel .MuiBox-root:has(.empty-state-container){height:100%}.impact-notification-container .impact-notification-body-header-container .ia-styles.ia-btn{flex-shrink:0}.impact-notification-container .impact-notification-task-list-filter-container{background:#fff;border:1px solid #b3bdf8;border-radius:12px;min-height:128px;padding:16px;position:absolute;right:0;top:65px;width:379px;z-index:99999}.impact-notification-container .impact-notification-task-list-filter-item{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:10px}.impact-notification-container .impact-notification-task-list-title{align-items:center;display:flex;gap:4px;margin-bottom:8px}.impact-notification-container .impact-notification-task-list-title .impact-notification-task-list-title-text{color:#1f2b4d;font-size:16px;font-weight:600;line-height:24px}.impact-notification-container .impact-notification-task-list-title .impact-notification-task-list-title-text-sub{color:#60697d;font-size:12px;font-weight:500;line-height:16px}.impact-notification-container .impact-notification-task-list-filter-item-badge .MuiChip-root.impact_badges_only_label_subtle{background-color:#f5f6fa;border:1px solid #c3c8d4;cursor:pointer}.impact-notification-container .impact-notification-task-list-filter-item-badge .MuiChip-root.impact_badges_only_label_subtle .MuiChip-label{color:#7a8294}.impact-notification-container .impact-notification-task-list-filter-item-badge.selected .MuiChip-root.impact_badges_only_label_subtle{background-color:#eceefd;border:1px solid #4259ee;cursor:pointer}.impact-notification-container .impact-notification-task-list-filter-item-badge.selected .MuiChip-root.impact_badges_only_label_subtle .MuiChip-label{color:#4259ee}.impact-notification-container .body-header-container-full .ia-tabContainer .impact-tab-panel{height:calc(100% - 100px)}.impact-notification-container .impact-notification-footer-container{align-items:center;background:#fff;border-top:1px solid #d9dde7;bottom:0;display:flex;gap:8px;height:56px;justify-content:flex-end;left:0;padding:0 16px;position:absolute;right:0;z-index:1}.impact-notification-task-list-container{height:100vh}.impact-notification-task-list-container.empty-state-container{height:100%}.impact-notification-task-list-container .impact-notification-task-list-header{align-items:center;border-bottom:1px solid #d9dde7;display:flex;justify-content:space-between;padding-bottom:20px}.impact-notification-task-list-container .impact-notification-task-list-search-container{position:relative}.impact-notification-task-list-container .impact-notification-task-list-search-container .impact-input-wrapper{height:27px;min-width:100%!important;transition:width .2s ease-in-out;width:35px}.impact-notification-task-list-container .impact-notification-task-list-search-container .right-input-icon{position:relative;right:7px;top:1px}.impact-notification-task-list-container .search-expand .impact-input-wrapper{width:240px}.impact-notification-task-list-container .search-expand .right-input-icon{left:0}.impact-notification-task-list-container .ia-styles.ia-btn.ia-btn-text:focus{outline:none}.impact-notification-task-list-container .impact-notification-task-list-chips{display:flex;flex-basis:90%;gap:4px;overflow:hidden}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-notification-task-list-item{display:flex;gap:4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-notification-task-list-item .MuiChip-label{font-size:12px!important}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-notification-task-list-item-hidden{display:flex;gap:4px;overflow:hidden;transition:width .2s ease-in;width:0}.impact-notification-task-list-container .impact-notification-task-list-chips .list-item-full-width{width:100%}.impact-notification-task-list-container .impact-notification-task-list-actions{align-items:center;display:flex;gap:4px}.impact-notification-list-container{height:100%;padding-top:20px}.impact-notification-list-container .impact-notification-list-header{align-items:center;display:flex;flex-direction:row;justify-content:space-between;padding-bottom:20px}.impact-notification-list-container .impact-notification-list-title{color:#1f2b4d;font-family:Manrope,sans-serif;font-size:16px;font-weight:600;line-height:24px}.impact-notification-list-container .impact-notification-list-action-btns{align-items:center;display:flex;flex-direction:row;gap:4px}.impact-notification-list-container .impact-notification-list-items-container{display:flex;flex-direction:column;gap:8px;height:calc(100% - 280px);overflow-y:auto;padding-bottom:20px;scroll-behavior:smooth}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item{align-items:flex-start;background-color:#f8f9fb;border-radius:12px;display:flex;flex-direction:row;gap:8px;padding:16px 12px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-checkbox{padding-top:5px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:30px;justify-content:center;width:30px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon .impact-notification-list-item-icon-line{height:15px;width:2px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon.status-success{background-color:#ebf7f1;border:1px solid #108431}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon.status-success .impact-notification-list-item-icon-line{background-color:#108431}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon.status-fail{background-color:#fceeee;border:1px solid #ec4c5c}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon.status-fail .impact-notification-list-item-icon-line{background-color:#ec4c5c}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon.status-pending{background-color:#fcf8ea;border:1px solid #ffe174}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon.status-pending .impact-notification-list-item-icon-line{background-color:#ffe174}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container{align-items:flex-start;display:flex;flex-direction:column;gap:6px;justify-content:flex-start;width:100%}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header{align-items:center;display:flex;flex-direction:row;gap:8px;justify-content:space-between;width:100%}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:focus,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:hover{cursor:pointer}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:focus .impact-notification-list-item-header-right,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:hover .impact-notification-list-item-header-right{width:24%}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-left,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right{align-items:center;display:flex;flex-direction:row;gap:8px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-title{color:#0d152c;font-family:Manrope,sans-serif;font-size:14px;font-weight:800;line-height:21px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right{overflow:hidden;transition:width .4s ease-in-out;width:0}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right .impact-notification-list-item-delete-btn{display:inline-flex!important;opacity:1!important;visibility:visible!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right .impact-notification-list-item-delete-btn~*{display:none!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:has(.impact-notification-list-item-delete-btn) .impact-notification-list-item-header-right{width:24%!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:hover .impact-notification-list-item-header-right .impact-notification-list-item-delete-btn~*{display:inline-flex!important;opacity:1!important;visibility:visible!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-schedule{align-items:center;color:#5f6673;display:flex;flex-direction:row;font-family:Manrope,sans-serif;font-size:12px;font-weight:500;gap:8px;justify-content:flex-start;line-height:15px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-description{color:#394960;font-family:Manrope,sans-serif;font-size:14px;font-weight:500;line-height:20px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-description span{color:#4259ee;cursor:pointer}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-action-btns{align-items:center;display:flex;flex-direction:row;gap:8px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item.impact-notification-list-item-hover-on-card .impact-notification-list-item-container .impact-notification-list-item-header:focus .impact-notification-list-item-header-right,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item.impact-notification-list-item-hover-on-card .impact-notification-list-item-container .impact-notification-list-item-header:hover .impact-notification-list-item-header-right{width:0!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item.impact-notification-list-item-hover-on-card:hover .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right{width:24%!important}.impact-notification-list-container .impact-notification-list-items-container .list-item-selected{background-color:#eceefd}.impact-notification-list-container .impact-notification-list-items-container .list-item-read{border-left:3px solid #4259ee}.impact-notification-list-empty-state-container{align-items:center;display:flex;flex-direction:column;gap:16px;height:calc(100% - 48px);justify-content:center}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-icon{height:72px;width:72px}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-content{align-items:center;display:flex;flex-direction:column;gap:4px;justify-content:center}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-content .impact-notification-list-empty-state-title{color:#0d152c;font-size:20px;font-weight:800;line-height:28px}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-content .impact-notification-list-empty-state-description{color:#7a8294;font-size:14px;font-weight:500;line-height:21px}.impact-notification-container-expand{width:800px}.impact-notification-list-item-bookmark-btn.ia-styles.ia-btn.ia-btn-text svg path{fill:#4258ed!important}.impact-notification-list-header .impact-notification-list-title-loader .css-tqb5fd-MuiSkeleton-root{display:none}.impact-notification-list-header .impact-notification-list-title-loader .css-58ftfq-MuiSkeleton-root{width:40px!important}.impact-notification-list-loader-container .css-70qvj9{left:calc(50% - 157px);position:absolute;top:calc(50% - 15px)}.impact-notification-list-action-btns-loader .css-tqb5fd-MuiSkeleton-root{display:none}.impact-notification-list-action-btns-loader .css-1366qbr{position:absolute;right:calc(50% - 150px)}")),document.head.appendChild(i)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}}();
1
+ !function(){"use strict";try{if("undefined"!=typeof document){var i=document.createElement("style");i.appendChild(document.createTextNode(".impact-notification-separator{background-color:#d9dde7;display:inline-block;height:16px;width:1.5px}.impact-notification-container{height:100%;transition:width .2s ease-in;width:600px}.impact-notification-container .impact-notification-header{align-items:center;background-color:#fff;border-bottom:1px solid #d9dde7;display:flex;height:40px;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:1}.impact-notification-container .impact-notification-header .impact-notification-heading{font-size:16px;font-weight:700;line-height:20px}.impact-notification-container .impact-notification-header .impact-notification-header-action-btns{align-items:center;display:flex;gap:12px}.impact-notification-container .impact-notification-header .impact-notification-header-action-btns button{background-color:#f5f6fa;border:none;border-radius:8px;cursor:pointer;height:32px;width:32px}.impact-notification-container .impact-notification-header .collapse-icon{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/collapse-icon-2.svg) no-repeat;background-position:50%;background-size:16px;cursor:pointer;height:16px;width:16px}.impact-notification-container .impact-notification-header .expand-icon{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/expand-icon.svg) no-repeat;background-position:50%;background-size:20px;cursor:pointer;height:16px;width:16px}.impact-notification-container .impact-notification-header .impact-notification-header-close-btn{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/close-tags.svg) no-repeat;background-position:50%;background-size:24px;cursor:pointer;height:16px;width:16px}.impact-notification-container .impact-notification-body-container{height:calc(100% - 96px);padding:20px 10px}.impact-notification-container .notification-body-container-full{height:calc(100% - 40px)}.impact-notification-container .impact-notification-body-header-container{align-items:baseline;display:flex;flex-direction:row;gap:12px}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer{height:100%;width:100%}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer .impact-tab-panel{height:calc(100% - 156px);overflow:hidden;padding:20px 6px 0;position:absolute;width:calc(100% - 32px)}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer .impact-tab-panel .ia-tabPanel{height:100%}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer .impact-tab-panel .ia-tabPanel .MuiBox-root:has(.empty-state-container){height:100%}.impact-notification-container .impact-notification-body-header-container .ia-styles.ia-btn{flex-shrink:0}.impact-notification-container .impact-notification-task-list-filter-container{background:#fff;border:1px solid #b3bdf8;border-radius:12px;min-height:128px;padding:16px;position:absolute;right:0;top:65px;width:379px;z-index:99999}.impact-notification-container .impact-notification-task-list-filter-item{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:10px}.impact-notification-container .impact-notification-task-list-title{align-items:center;display:flex;gap:4px;margin-bottom:8px}.impact-notification-container .impact-notification-task-list-title .impact-notification-task-list-title-text{color:#1f2b4d;font-size:16px;font-weight:600;line-height:24px}.impact-notification-container .impact-notification-task-list-title .impact-notification-task-list-title-text-sub{color:#60697d;font-size:12px;font-weight:500;line-height:16px}.impact-notification-container .impact-notification-task-list-filter-item-badge .MuiChip-root.impact_badges_only_label_subtle{background-color:#f5f6fa;border:1px solid #c3c8d4;cursor:pointer}.impact-notification-container .impact-notification-task-list-filter-item-badge .MuiChip-root.impact_badges_only_label_subtle .MuiChip-label{color:#7a8294}.impact-notification-container .impact-notification-task-list-filter-item-badge.selected .MuiChip-root.impact_badges_only_label_subtle{background-color:#eceefd;border:1px solid #4259ee;cursor:pointer}.impact-notification-container .impact-notification-task-list-filter-item-badge.selected .MuiChip-root.impact_badges_only_label_subtle .MuiChip-label{color:#4259ee}.impact-notification-container .body-header-container-full .ia-tabContainer .impact-tab-panel{height:calc(100% - 100px)}.impact-notification-container .impact-notification-footer-container{align-items:center;background:#fff;border-top:1px solid #d9dde7;bottom:0;display:flex;gap:8px;height:56px;justify-content:flex-end;left:0;padding:0 16px;position:absolute;right:0;z-index:1}.impact-notification-task-list-container{height:100vh}.impact-notification-task-list-container.empty-state-container{height:100%}.impact-notification-task-list-container .impact-notification-task-list-header{align-items:center;border-bottom:1px solid #d9dde7;display:flex;justify-content:space-between;padding-bottom:20px}.impact-notification-task-list-container .impact-notification-task-list-search-container{position:relative}.impact-notification-task-list-container .impact-notification-task-list-search-container .impact-input-wrapper{height:27px;min-width:100%!important;transition:width .2s ease-in-out;width:35px}.impact-notification-task-list-container .impact-notification-task-list-search-container .right-input-icon{position:relative;right:7px;top:1px}.impact-notification-task-list-container .search-expand .impact-input-wrapper{width:240px}.impact-notification-task-list-container .search-expand .right-input-icon{left:0}.impact-notification-task-list-container .impact-notification-task-list-chips{display:flex;flex-basis:90%;gap:4px;overflow:hidden}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-notification-task-list-item{display:flex;gap:4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-notification-task-list-item .MuiChip-label{font-size:12px!important}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-notification-task-list-item-hidden{display:flex;gap:4px;overflow:hidden;transition:width .2s ease-in;width:0}.impact-notification-task-list-container .impact-notification-task-list-chips .list-item-full-width{width:100%}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container{align-items:center;display:flex;flex-direction:row;gap:8px;justify-content:space-between}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-tags{align-items:center;display:flex;flex:1 0 auto;flex-direction:row;gap:8px;max-width:100%;overflow:scroll;scrollbar-width:none;width:700px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-tags .impact-selected-filter-wrapper{align-items:center;display:flex;flex-direction:row;flex-shrink:0;gap:6px;position:relative;transition:transform .5s ease-in-out}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-tags .impact-selected-filter-wrapper .impact-selected-filter-tags-container{align-items:center;display:flex;flex-direction:row;gap:4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-tags.collapsed{overflow:hidden}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-action-btns{align-items:center;display:flex;flex-direction:row;gap:4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-action-btns .impact-selected-filter-action-btn{align-items:center;background-color:#f5f6fa;cursor:pointer;display:flex;justify-content:center;padding:8px 4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-action-btns .impact-selected-filter-action-btn svg{color:#60697d;font-size:18px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-action-btns .prev{border-bottom-left-radius:4px;border-top-left-radius:4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-action-btns .next{border-bottom-right-radius:4px;border-top-right-radius:4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-action-btns .expand{border-radius:8px;color:#60697d;font-size:14px}.impact-notification-task-list-container .impact-notification-task-list-actions{align-items:center;display:flex;gap:4px}.impact-notification-list-container{height:100%;padding-top:20px}.impact-notification-list-container .impact-notification-list-header{align-items:center;display:flex;flex-direction:row;justify-content:space-between;padding-bottom:20px}.impact-notification-list-container .impact-notification-list-title{color:#1f2b4d;font-family:Manrope,sans-serif;font-size:16px;font-weight:600;line-height:24px}.impact-notification-list-container .impact-notification-list-action-btns{align-items:center;display:flex;flex-direction:row;gap:4px}.impact-notification-list-container .impact-notification-list-items-container{display:flex;flex-direction:column;gap:8px;height:calc(100% - 280px);overflow-y:auto;padding-bottom:20px;scroll-behavior:smooth}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item{align-items:flex-start;background-color:#f8f9fb;border-radius:12px;display:flex;flex-direction:row;gap:8px;padding:16px 12px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-checkbox{padding-top:5px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:30px;justify-content:center;width:30px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon .impact-notification-list-item-icon-line{height:15px;width:2px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .status-success{background-color:#ebf7f1;border:1px solid #108431}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .status-success .impact-notification-list-item-icon-line{background-color:#108431}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .status-fail{background-color:#fceeee;border:1px solid #ec4c5c}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .status-fail .impact-notification-list-item-icon-line{background-color:#ec4c5c}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .status-pending{background-color:#fcf8ea;border:1px solid #ffe174}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .status-pending .impact-notification-list-item-icon-line{background-color:#ffe174}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container{align-items:flex-start;display:flex;flex-direction:column;gap:6px;justify-content:flex-start;min-width:0;width:100%}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header{align-items:center;display:flex;flex-direction:row;gap:8px;justify-content:space-between;width:100%}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:focus,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:hover{cursor:pointer}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:focus .impact-notification-list-item-header-right,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:hover .impact-notification-list-item-header-right{width:24%}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-left,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right{align-items:center;display:flex;flex-direction:row;gap:8px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-title{color:#0d152c;font-family:Manrope,sans-serif;font-size:14px;font-weight:800;line-height:21px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right{overflow:hidden;transition:width .4s ease-in-out;width:0}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right .impact-notification-list-item-delete-btn{display:inline-flex!important;opacity:1!important;visibility:visible!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right .impact-notification-list-item-delete-btn~*{display:none!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:has(.impact-notification-list-item-delete-btn) .impact-notification-list-item-header-right{width:24%!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:hover .impact-notification-list-item-header-right .impact-notification-list-item-delete-btn~*{display:inline-flex!important;opacity:1!important;visibility:visible!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-schedule{align-items:center;color:#5f6673;display:flex;flex-direction:row;font-family:Manrope,sans-serif;font-size:12px;font-weight:500;gap:8px;justify-content:flex-start;line-height:15px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-description{color:#394960;font-family:Manrope,sans-serif;font-size:14px;font-weight:500;line-height:20px;max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:break-word}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-description span{color:#4259ee;cursor:pointer}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-action-btns{align-items:center;display:flex;flex-direction:row;gap:8px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item.impact-notification-list-item-hover-on-card .impact-notification-list-item-container .impact-notification-list-item-header:focus .impact-notification-list-item-header-right,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item.impact-notification-list-item-hover-on-card .impact-notification-list-item-container .impact-notification-list-item-header:hover .impact-notification-list-item-header-right{width:0!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item.impact-notification-list-item-hover-on-card:hover .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right{width:24%!important}.impact-notification-list-container .impact-notification-list-items-container .list-item-selected{background-color:#eceefd}.impact-notification-list-container .impact-notification-list-items-container .list-item-read{border-left:3px solid #4259ee}.impact-notification-list-empty-state-container{align-items:center;display:flex;flex-direction:column;gap:16px;height:calc(100% - 48px);justify-content:center}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-icon{height:72px;width:72px}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-content{align-items:center;display:flex;flex-direction:column;gap:4px;justify-content:center}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-content .impact-notification-list-empty-state-title{color:#0d152c;font-size:20px;font-weight:800;line-height:28px}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-content .impact-notification-list-empty-state-description{color:#7a8294;font-size:14px;font-weight:500;line-height:21px}.impact-notification-container-expand{width:800px}.impact-notification-list-item-bookmark-btn.ia-styles.ia-btn.ia-btn-text svg path{fill:#4258ed!important}.impact-notification-list-header .impact-notification-list-title-loader .css-tqb5fd-MuiSkeleton-root{display:none}.impact-notification-list-header .impact-notification-list-title-loader .css-58ftfq-MuiSkeleton-root{width:40px!important}.impact-notification-list-loader-container .css-70qvj9{left:calc(50% - 157px);position:absolute;top:calc(50% - 15px)}.impact-notification-list-action-btns-loader .css-tqb5fd-MuiSkeleton-root{display:none}.impact-notification-list-action-btns-loader .css-1366qbr{position:absolute;right:calc(50% - 150px)}")),document.head.appendChild(i)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}}();
2
2
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
3
3
  import { useRef, useState, useEffect, useCallback } from "react";
4
4
  import default_1 from "../../../../node_modules/@mui/icons-material/DeleteOutlineOutlined.js";
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationListItem.d.ts","sourceRoot":"","sources":["../../../../../src/components/Notification/NotificationBody/NotificationList/NotificationListItem.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,wBAAwB,EAExB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAMlC,UAAU,yBAAyB;IACjC,IAAI,EAAE,wBAAwB,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB,EAAE,qBAAqB,EAAE,CAAC;IAC5C,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,KAAK,IAAI,CAAC;IAClE,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AA6CD,wBAAgB,oBAAoB,CAAC,EACnC,IAAI,EACJ,IAAI,EACJ,kBAAkB,EAClB,qBAAqB,EACrB,aAAa,EACb,aAAqB,EACrB,qBAA6B,GAC9B,EAAE,yBAAyB,2CAsQ3B"}
1
+ {"version":3,"file":"NotificationListItem.d.ts","sourceRoot":"","sources":["../../../../../src/components/Notification/NotificationBody/NotificationList/NotificationListItem.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,wBAAwB,EAExB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAkGlC,UAAU,yBAAyB;IACjC,IAAI,EAAE,wBAAwB,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB,EAAE,qBAAqB,EAAE,CAAC;IAC5C,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,KAAK,IAAI,CAAC;IAClE,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AA6CD,wBAAgB,oBAAoB,CAAC,EACnC,IAAI,EACJ,IAAI,EACJ,kBAAkB,EAClB,qBAAqB,EACrB,aAAa,EACb,aAAqB,EACrB,qBAA6B,GAC9B,EAAE,yBAAyB,2CAyS3B"}
@@ -1,5 +1,5 @@
1
- import { jsxs, jsx } from "react/jsx-runtime";
2
- import { useState, useCallback } from "react";
1
+ import { jsxs, jsx, Fragment } from "react/jsx-runtime";
2
+ import { useState, useCallback, useMemo } from "react";
3
3
  import default_1$1 from "../../../../node_modules/@mui/icons-material/BookmarkBorderOutlined.js";
4
4
  import default_1 from "../../../../node_modules/@mui/icons-material/DeleteOutlineOutlined.js";
5
5
  import default_1$2 from "../../../../node_modules/@mui/icons-material/FileDownloadOutlined.js";
@@ -11,6 +11,86 @@ import { Checkbox } from "../../../Checkbox/index.js";
11
11
  const NotificationReadIcon = getAssetUrl("icons/notification-read.svg");
12
12
  const NotificationBookmarkIcon = getAssetUrl("icons/notification-bookmark.svg");
13
13
  const BookMarkedFillIcon = getAssetUrl("icons/bookMarkedFill.svg");
14
+ const NOTIFICATION_DESCRIPTION_VISIBLE_MAX = 150;
15
+ function getVisibleTextLengthFromHtml(html) {
16
+ if (!html) {
17
+ return 0;
18
+ }
19
+ const doc = new DOMParser().parseFromString(
20
+ `<div data-notification-desc-root>${html}</div>`,
21
+ "text/html"
22
+ );
23
+ const root = doc.querySelector("[data-notification-desc-root]");
24
+ return root ? root.textContent.length : 0;
25
+ }
26
+ function truncateHtmlByVisibleLength(html, maxVisibleLen) {
27
+ if (!html || maxVisibleLen <= 0) {
28
+ return { html: "", isTruncated: false };
29
+ }
30
+ const doc = new DOMParser().parseFromString(
31
+ `<div data-notification-desc-root>${html}</div>`,
32
+ "text/html"
33
+ );
34
+ const sourceRoot = doc.querySelector("[data-notification-desc-root]");
35
+ if (!sourceRoot) {
36
+ return { html, isTruncated: false };
37
+ }
38
+ const fullLen = sourceRoot.textContent.length;
39
+ if (fullLen <= maxVisibleLen) {
40
+ return { html, isTruncated: false };
41
+ }
42
+ let remaining = maxVisibleLen;
43
+ function processNode(node) {
44
+ if (remaining <= 0) {
45
+ return null;
46
+ }
47
+ if (node.nodeType === Node.TEXT_NODE) {
48
+ const text = node.textContent ?? "";
49
+ if (!text) {
50
+ return null;
51
+ }
52
+ if (text.length <= remaining) {
53
+ remaining -= text.length;
54
+ return doc.createTextNode(text);
55
+ }
56
+ const chunk = text.slice(0, remaining);
57
+ remaining = 0;
58
+ return doc.createTextNode(chunk);
59
+ }
60
+ if (node.nodeType === Node.ELEMENT_NODE) {
61
+ const element = node;
62
+ const clone = element.cloneNode(false);
63
+ for (const child of Array.from(element.childNodes)) {
64
+ if (remaining <= 0) {
65
+ break;
66
+ }
67
+ const processed = processNode(child);
68
+ if (processed) {
69
+ clone.appendChild(processed);
70
+ }
71
+ }
72
+ if (clone.childNodes.length === 0 && element.childNodes.length === 0) {
73
+ return clone;
74
+ }
75
+ if (clone.childNodes.length === 0 && element.childNodes.length > 0) {
76
+ return null;
77
+ }
78
+ return clone;
79
+ }
80
+ return null;
81
+ }
82
+ const out = doc.createElement("div");
83
+ for (const child of Array.from(sourceRoot.childNodes)) {
84
+ if (remaining <= 0) {
85
+ break;
86
+ }
87
+ const processed = processNode(child);
88
+ if (processed) {
89
+ out.appendChild(processed);
90
+ }
91
+ }
92
+ return { html: out.innerHTML, isTruncated: true };
93
+ }
14
94
  function invokeHandler(handler, type, notificationPanels, setNotificationPanels, list) {
15
95
  handler == null ? void 0 : handler(type, notificationPanels, setNotificationPanels, list);
16
96
  }
@@ -60,8 +140,17 @@ function NotificationListItem({
60
140
  },
61
141
  [list, notificationPanels, setNotificationPanels, type]
62
142
  );
63
- const description = list.description ?? "";
64
- const isLongDescription = description.length > 150;
143
+ const description = list.description;
144
+ const { visibleTextLength, truncatedHtml } = useMemo(() => {
145
+ const len = getVisibleTextLengthFromHtml(description);
146
+ if (len <= NOTIFICATION_DESCRIPTION_VISIBLE_MAX) {
147
+ return { visibleTextLength: len, truncatedHtml: description };
148
+ }
149
+ return {
150
+ visibleTextLength: len,
151
+ truncatedHtml: truncateHtmlByVisibleLength(description, NOTIFICATION_DESCRIPTION_VISIBLE_MAX).html
152
+ };
153
+ }, [description]);
65
154
  const showHeaderIcons = !!list.showOverdueIcon || !!list.showFastApproachingIcon;
66
155
  const showBookmarkControl = list.handleBookMark != null || Boolean(list.showBookMark);
67
156
  const handleRowActivate = useCallback(
@@ -203,11 +292,37 @@ function NotificationListItem({
203
292
  }
204
293
  )
205
294
  ] }),
206
- isLongDescription ? /* @__PURE__ */ jsxs("div", { className: "impact-notification-list-item-description", children: [
207
- /* @__PURE__ */ jsx("div", { dangerouslySetInnerHTML: { __html: description.slice(0, 150) } }),
208
- showMore ? /* @__PURE__ */ jsx("div", { dangerouslySetInnerHTML: { __html: description.slice(150) } }) : null,
209
- "... ",
295
+ visibleTextLength > NOTIFICATION_DESCRIPTION_VISIBLE_MAX ? /* @__PURE__ */ jsxs("div", { className: "impact-notification-list-item-description", children: [
210
296
  /* @__PURE__ */ jsx(
297
+ "div",
298
+ {
299
+ dangerouslySetInnerHTML: {
300
+ __html: showMore ? description : truncatedHtml
301
+ }
302
+ }
303
+ ),
304
+ !showMore ? /* @__PURE__ */ jsxs(Fragment, { children: [
305
+ "... ",
306
+ /* @__PURE__ */ jsx(
307
+ "span",
308
+ {
309
+ role: "button",
310
+ tabIndex: 0,
311
+ onClick: (e) => {
312
+ e.stopPropagation();
313
+ setShowMore((prev) => !prev);
314
+ },
315
+ onKeyDown: (e) => {
316
+ if (e.key === "Enter" || e.key === " ") {
317
+ e.preventDefault();
318
+ e.stopPropagation();
319
+ setShowMore((prev) => !prev);
320
+ }
321
+ },
322
+ children: "Read More"
323
+ }
324
+ )
325
+ ] }) : /* @__PURE__ */ jsx(
211
326
  "span",
212
327
  {
213
328
  role: "button",
@@ -223,7 +338,7 @@ function NotificationListItem({
223
338
  setShowMore((prev) => !prev);
224
339
  }
225
340
  },
226
- children: showMore ? "Read Less" : "Read More"
341
+ children: "Read Less"
227
342
  }
228
343
  )
229
344
  ] }) : /* @__PURE__ */ jsx(
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationTaskList.d.ts","sourceRoot":"","sources":["../../../../src/components/Notification/NotificationBody/NotificationTaskList.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NotificationTaskList.d.ts","sourceRoot":"","sources":["../../../../src/components/Notification/NotificationBody/NotificationTaskList.tsx"],"names":[],"mappings":"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"}
@@ -88,12 +88,18 @@ function NotificationTaskList({
88
88
  },
89
89
  [notificationList]
90
90
  );
91
- const handleClickOutside = useCallback((event) => {
92
- const target = event.target;
93
- if (!target.closest(".impact-notification-task-list-filter-container")) {
94
- setShowFilter(false);
95
- }
96
- }, []);
91
+ const handleClickOutside = useCallback(
92
+ (event) => {
93
+ if (!showFilter) {
94
+ return;
95
+ }
96
+ const target = event.target;
97
+ if (!target.closest(".impact-notification-task-list-filter-container")) {
98
+ setShowFilter(false);
99
+ }
100
+ },
101
+ [showFilter]
102
+ );
97
103
  useEffect(() => {
98
104
  document.addEventListener("click", handleClickOutside);
99
105
  return () => {
@@ -123,6 +129,8 @@ function NotificationTaskList({
123
129
  list,
124
130
  notificationList: notificationListItems,
125
131
  setCurrActiveListType,
132
+ setExpandList,
133
+ setSearchExpand,
126
134
  showBadgeLoader
127
135
  }
128
136
  ),
@@ -1,4 +1,4 @@
1
- !function(){"use strict";try{if("undefined"!=typeof document){var i=document.createElement("style");i.appendChild(document.createTextNode(".impact-notification-container{height:100%;transition:width .2s ease-in;width:600px}.impact-notification-container .impact-notification-header{align-items:center;background-color:#fff;border-bottom:1px solid #d9dde7;display:flex;height:40px;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:1}.impact-notification-container .impact-notification-header .impact-notification-heading{font-size:16px;font-weight:700;line-height:20px}.impact-notification-container .impact-notification-header .impact-notification-header-action-btns{align-items:center;display:flex;gap:12px}.impact-notification-container .impact-notification-header .impact-notification-header-action-btns button{background-color:#f5f6fa;border:none;border-radius:8px;cursor:pointer;height:32px;width:32px}.impact-notification-container .impact-notification-header .collapse-icon{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/collapse-icon-2.svg) no-repeat;background-position:50%;background-size:16px;cursor:pointer;height:16px;width:16px}.impact-notification-container .impact-notification-header .expand-icon{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/expand-icon.svg) no-repeat;background-position:50%;background-size:20px;cursor:pointer;height:16px;width:16px}.impact-notification-container .impact-notification-header .impact-notification-header-close-btn{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/close-tags.svg) no-repeat;background-position:50%;background-size:24px;cursor:pointer;height:16px;width:16px}.impact-notification-container .impact-notification-body-container{height:calc(100% - 96px);padding:20px 16px}.impact-notification-container .notification-body-container-full{height:calc(100% - 40px)}.impact-notification-container .impact-notification-body-header-container{align-items:baseline;display:flex;flex-direction:row;gap:12px}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer{height:100%;width:100%}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer .impact-tab-panel{height:calc(100% - 156px);overflow:hidden;padding:20px 0 0;position:absolute;width:calc(100% - 32px)}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer .impact-tab-panel .ia-tabPanel{height:100%}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer .impact-tab-panel .ia-tabPanel .MuiBox-root:has(.empty-state-container){height:100%}.impact-notification-container .impact-notification-body-header-container .ia-styles.ia-btn{flex-shrink:0}.impact-notification-container .impact-notification-task-list-filter-container{background:#fff;border:1px solid #b3bdf8;border-radius:12px;min-height:128px;padding:16px;position:absolute;right:0;top:65px;width:379px;z-index:99999}.impact-notification-container .impact-notification-task-list-filter-item{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:10px}.impact-notification-container .impact-notification-task-list-title{align-items:center;display:flex;gap:4px;margin-bottom:8px}.impact-notification-container .impact-notification-task-list-title .impact-notification-task-list-title-text{color:#1f2b4d;font-size:16px;font-weight:600;line-height:24px}.impact-notification-container .impact-notification-task-list-title .impact-notification-task-list-title-text-sub{color:#60697d;font-size:12px;font-weight:500;line-height:16px}.impact-notification-container .impact-notification-task-list-filter-item-badge .MuiChip-root.impact_badges_only_label_subtle{background-color:#f5f6fa;border:1px solid #c3c8d4;cursor:pointer}.impact-notification-container .impact-notification-task-list-filter-item-badge .MuiChip-root.impact_badges_only_label_subtle .MuiChip-label{color:#7a8294}.impact-notification-container .impact-notification-task-list-filter-item-badge.selected .MuiChip-root.impact_badges_only_label_subtle{background-color:#eceefd;border:1px solid #4259ee;cursor:pointer}.impact-notification-container .impact-notification-task-list-filter-item-badge.selected .MuiChip-root.impact_badges_only_label_subtle .MuiChip-label{color:#4259ee}.impact-notification-container .body-header-container-full .ia-tabContainer .impact-tab-panel{height:calc(100% - 100px)}.impact-notification-container .impact-notification-footer-container{align-items:center;background:#fff;border-top:1px solid #d9dde7;bottom:0;display:flex;gap:8px;height:56px;justify-content:flex-end;left:0;padding:0 16px;position:absolute;right:0;z-index:1}.impact-notification-task-list-container{height:100vh}.impact-notification-task-list-container.empty-state-container{height:100%}.impact-notification-task-list-container .impact-notification-task-list-header{align-items:center;border-bottom:1px solid #d9dde7;display:flex;justify-content:space-between;padding-bottom:20px}.impact-notification-task-list-container .impact-notification-task-list-search-container{position:relative}.impact-notification-task-list-container .impact-notification-task-list-search-container .impact-input-wrapper{height:27px;min-width:100%!important;transition:width .2s ease-in-out;width:35px}.impact-notification-task-list-container .impact-notification-task-list-search-container .right-input-icon{position:relative;right:7px;top:1px}.impact-notification-task-list-container .search-expand .impact-input-wrapper{width:240px}.impact-notification-task-list-container .search-expand .right-input-icon{left:0}.impact-notification-task-list-container .ia-styles.ia-btn.ia-btn-text:focus{outline:none}.impact-notification-task-list-container .impact-notification-task-list-chips{display:flex;flex-basis:90%;gap:4px;overflow:hidden}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-notification-task-list-item{display:flex;gap:4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-notification-task-list-item .MuiChip-label{font-size:12px!important}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-notification-task-list-item-hidden{display:flex;gap:4px;overflow:hidden;transition:width .2s ease-in;width:0}.impact-notification-task-list-container .impact-notification-task-list-chips .list-item-full-width{width:100%}.impact-notification-task-list-container .impact-notification-task-list-actions{align-items:center;display:flex;gap:4px}.impact-notification-list-container{height:100%;padding-top:20px}.impact-notification-list-container .impact-notification-list-header{align-items:center;display:flex;flex-direction:row;justify-content:space-between;padding-bottom:20px}.impact-notification-list-container .impact-notification-list-title{color:#1f2b4d;font-family:Manrope,sans-serif;font-size:16px;font-weight:600;line-height:24px}.impact-notification-list-container .impact-notification-list-action-btns{align-items:center;display:flex;flex-direction:row;gap:4px}.impact-notification-list-container .impact-notification-list-items-container{display:flex;flex-direction:column;gap:8px;height:calc(100% - 280px);overflow-y:auto;padding-bottom:20px;scroll-behavior:smooth}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item{align-items:flex-start;background-color:#f8f9fb;border-radius:12px;display:flex;flex-direction:row;gap:8px;padding:16px 12px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-checkbox{padding-top:5px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:30px;justify-content:center;width:30px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon .impact-notification-list-item-icon-line{height:15px;width:2px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon.status-success{background-color:#ebf7f1;border:1px solid #108431}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon.status-success .impact-notification-list-item-icon-line{background-color:#108431}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon.status-fail{background-color:#fceeee;border:1px solid #ec4c5c}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon.status-fail .impact-notification-list-item-icon-line{background-color:#ec4c5c}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon.status-pending{background-color:#fcf8ea;border:1px solid #ffe174}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon.status-pending .impact-notification-list-item-icon-line{background-color:#ffe174}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container{align-items:flex-start;display:flex;flex-direction:column;gap:6px;justify-content:flex-start;width:100%}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header{align-items:center;display:flex;flex-direction:row;gap:8px;justify-content:space-between;width:100%}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:focus,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:hover{cursor:pointer}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:focus .impact-notification-list-item-header-right,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:hover .impact-notification-list-item-header-right{width:24%}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-left,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right{align-items:center;display:flex;flex-direction:row;gap:8px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-title{color:#0d152c;font-family:Manrope,sans-serif;font-size:14px;font-weight:800;line-height:21px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right{overflow:hidden;transition:width .4s ease-in-out;width:0}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right .impact-notification-list-item-delete-btn{display:inline-flex!important;opacity:1!important;visibility:visible!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right .impact-notification-list-item-delete-btn~*{display:none!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:has(.impact-notification-list-item-delete-btn) .impact-notification-list-item-header-right{width:24%!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:hover .impact-notification-list-item-header-right .impact-notification-list-item-delete-btn~*{display:inline-flex!important;opacity:1!important;visibility:visible!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-schedule{align-items:center;color:#5f6673;display:flex;flex-direction:row;font-family:Manrope,sans-serif;font-size:12px;font-weight:500;gap:8px;justify-content:flex-start;line-height:15px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-description{color:#394960;font-family:Manrope,sans-serif;font-size:14px;font-weight:500;line-height:20px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-description span{color:#4259ee;cursor:pointer}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-action-btns{align-items:center;display:flex;flex-direction:row;gap:8px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item.impact-notification-list-item-hover-on-card .impact-notification-list-item-container .impact-notification-list-item-header:focus .impact-notification-list-item-header-right,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item.impact-notification-list-item-hover-on-card .impact-notification-list-item-container .impact-notification-list-item-header:hover .impact-notification-list-item-header-right{width:0!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item.impact-notification-list-item-hover-on-card:hover .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right{width:24%!important}.impact-notification-list-container .impact-notification-list-items-container .list-item-selected{background-color:#eceefd}.impact-notification-list-container .impact-notification-list-items-container .list-item-read{border-left:3px solid #4259ee}.impact-notification-list-empty-state-container{align-items:center;display:flex;flex-direction:column;gap:16px;height:calc(100% - 48px);justify-content:center}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-icon{height:72px;width:72px}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-content{align-items:center;display:flex;flex-direction:column;gap:4px;justify-content:center}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-content .impact-notification-list-empty-state-title{color:#0d152c;font-size:20px;font-weight:800;line-height:28px}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-content .impact-notification-list-empty-state-description{color:#7a8294;font-size:14px;font-weight:500;line-height:21px}.impact-notification-container-expand{width:800px}.impact-notification-list-item-bookmark-btn.ia-styles.ia-btn.ia-btn-text svg path{fill:#4258ed!important}.impact-notification-list-header .impact-notification-list-title-loader .css-tqb5fd-MuiSkeleton-root{display:none}.impact-notification-list-header .impact-notification-list-title-loader .css-58ftfq-MuiSkeleton-root{width:40px!important}.impact-notification-list-loader-container .css-70qvj9{left:calc(50% - 157px);position:absolute;top:calc(50% - 15px)}.impact-notification-list-action-btns-loader .css-tqb5fd-MuiSkeleton-root{display:none}.impact-notification-list-action-btns-loader .css-1366qbr{position:absolute;right:calc(50% - 150px)}")),document.head.appendChild(i)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}}();
1
+ !function(){"use strict";try{if("undefined"!=typeof document){var i=document.createElement("style");i.appendChild(document.createTextNode(".impact-notification-separator{background-color:#d9dde7;display:inline-block;height:16px;width:1.5px}.impact-notification-container{height:100%;transition:width .2s ease-in;width:600px}.impact-notification-container .impact-notification-header{align-items:center;background-color:#fff;border-bottom:1px solid #d9dde7;display:flex;height:40px;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:1}.impact-notification-container .impact-notification-header .impact-notification-heading{font-size:16px;font-weight:700;line-height:20px}.impact-notification-container .impact-notification-header .impact-notification-header-action-btns{align-items:center;display:flex;gap:12px}.impact-notification-container .impact-notification-header .impact-notification-header-action-btns button{background-color:#f5f6fa;border:none;border-radius:8px;cursor:pointer;height:32px;width:32px}.impact-notification-container .impact-notification-header .collapse-icon{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/collapse-icon-2.svg) no-repeat;background-position:50%;background-size:16px;cursor:pointer;height:16px;width:16px}.impact-notification-container .impact-notification-header .expand-icon{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/expand-icon.svg) no-repeat;background-position:50%;background-size:20px;cursor:pointer;height:16px;width:16px}.impact-notification-container .impact-notification-header .impact-notification-header-close-btn{background:url(https://impact-kit.devs.iaproducts.ai/api/v1/files/uploads/impact-ui/prod/icons/close-tags.svg) no-repeat;background-position:50%;background-size:24px;cursor:pointer;height:16px;width:16px}.impact-notification-container .impact-notification-body-container{height:calc(100% - 96px);padding:20px 10px}.impact-notification-container .notification-body-container-full{height:calc(100% - 40px)}.impact-notification-container .impact-notification-body-header-container{align-items:baseline;display:flex;flex-direction:row;gap:12px}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer{height:100%;width:100%}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer .impact-tab-panel{height:calc(100% - 156px);overflow:hidden;padding:20px 6px 0;position:absolute;width:calc(100% - 32px)}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer .impact-tab-panel .ia-tabPanel{height:100%}.impact-notification-container .impact-notification-body-header-container .ia-tabContainer .impact-tab-panel .ia-tabPanel .MuiBox-root:has(.empty-state-container){height:100%}.impact-notification-container .impact-notification-body-header-container .ia-styles.ia-btn{flex-shrink:0}.impact-notification-container .impact-notification-task-list-filter-container{background:#fff;border:1px solid #b3bdf8;border-radius:12px;min-height:128px;padding:16px;position:absolute;right:0;top:65px;width:379px;z-index:99999}.impact-notification-container .impact-notification-task-list-filter-item{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:10px}.impact-notification-container .impact-notification-task-list-title{align-items:center;display:flex;gap:4px;margin-bottom:8px}.impact-notification-container .impact-notification-task-list-title .impact-notification-task-list-title-text{color:#1f2b4d;font-size:16px;font-weight:600;line-height:24px}.impact-notification-container .impact-notification-task-list-title .impact-notification-task-list-title-text-sub{color:#60697d;font-size:12px;font-weight:500;line-height:16px}.impact-notification-container .impact-notification-task-list-filter-item-badge .MuiChip-root.impact_badges_only_label_subtle{background-color:#f5f6fa;border:1px solid #c3c8d4;cursor:pointer}.impact-notification-container .impact-notification-task-list-filter-item-badge .MuiChip-root.impact_badges_only_label_subtle .MuiChip-label{color:#7a8294}.impact-notification-container .impact-notification-task-list-filter-item-badge.selected .MuiChip-root.impact_badges_only_label_subtle{background-color:#eceefd;border:1px solid #4259ee;cursor:pointer}.impact-notification-container .impact-notification-task-list-filter-item-badge.selected .MuiChip-root.impact_badges_only_label_subtle .MuiChip-label{color:#4259ee}.impact-notification-container .body-header-container-full .ia-tabContainer .impact-tab-panel{height:calc(100% - 100px)}.impact-notification-container .impact-notification-footer-container{align-items:center;background:#fff;border-top:1px solid #d9dde7;bottom:0;display:flex;gap:8px;height:56px;justify-content:flex-end;left:0;padding:0 16px;position:absolute;right:0;z-index:1}.impact-notification-task-list-container{height:100vh}.impact-notification-task-list-container.empty-state-container{height:100%}.impact-notification-task-list-container .impact-notification-task-list-header{align-items:center;border-bottom:1px solid #d9dde7;display:flex;justify-content:space-between;padding-bottom:20px}.impact-notification-task-list-container .impact-notification-task-list-search-container{position:relative}.impact-notification-task-list-container .impact-notification-task-list-search-container .impact-input-wrapper{height:27px;min-width:100%!important;transition:width .2s ease-in-out;width:35px}.impact-notification-task-list-container .impact-notification-task-list-search-container .right-input-icon{position:relative;right:7px;top:1px}.impact-notification-task-list-container .search-expand .impact-input-wrapper{width:240px}.impact-notification-task-list-container .search-expand .right-input-icon{left:0}.impact-notification-task-list-container .impact-notification-task-list-chips{display:flex;flex-basis:90%;gap:4px;overflow:hidden}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-notification-task-list-item{display:flex;gap:4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-notification-task-list-item .MuiChip-label{font-size:12px!important}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-notification-task-list-item-hidden{display:flex;gap:4px;overflow:hidden;transition:width .2s ease-in;width:0}.impact-notification-task-list-container .impact-notification-task-list-chips .list-item-full-width{width:100%}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container{align-items:center;display:flex;flex-direction:row;gap:8px;justify-content:space-between}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-tags{align-items:center;display:flex;flex:1 0 auto;flex-direction:row;gap:8px;max-width:100%;overflow:scroll;scrollbar-width:none;width:700px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-tags .impact-selected-filter-wrapper{align-items:center;display:flex;flex-direction:row;flex-shrink:0;gap:6px;position:relative;transition:transform .5s ease-in-out}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-tags .impact-selected-filter-wrapper .impact-selected-filter-tags-container{align-items:center;display:flex;flex-direction:row;gap:4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-tags.collapsed{overflow:hidden}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-action-btns{align-items:center;display:flex;flex-direction:row;gap:4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-action-btns .impact-selected-filter-action-btn{align-items:center;background-color:#f5f6fa;cursor:pointer;display:flex;justify-content:center;padding:8px 4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-action-btns .impact-selected-filter-action-btn svg{color:#60697d;font-size:18px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-action-btns .prev{border-bottom-left-radius:4px;border-top-left-radius:4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-action-btns .next{border-bottom-right-radius:4px;border-top-right-radius:4px}.impact-notification-task-list-container .impact-notification-task-list-chips .impact-selected-filter-container .impact-selected-filter-action-btns .expand{border-radius:8px;color:#60697d;font-size:14px}.impact-notification-task-list-container .impact-notification-task-list-actions{align-items:center;display:flex;gap:4px}.impact-notification-list-container{height:100%;padding-top:20px}.impact-notification-list-container .impact-notification-list-header{align-items:center;display:flex;flex-direction:row;justify-content:space-between;padding-bottom:20px}.impact-notification-list-container .impact-notification-list-title{color:#1f2b4d;font-family:Manrope,sans-serif;font-size:16px;font-weight:600;line-height:24px}.impact-notification-list-container .impact-notification-list-action-btns{align-items:center;display:flex;flex-direction:row;gap:4px}.impact-notification-list-container .impact-notification-list-items-container{display:flex;flex-direction:column;gap:8px;height:calc(100% - 280px);overflow-y:auto;padding-bottom:20px;scroll-behavior:smooth}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item{align-items:flex-start;background-color:#f8f9fb;border-radius:12px;display:flex;flex-direction:row;gap:8px;padding:16px 12px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-checkbox{padding-top:5px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:30px;justify-content:center;width:30px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-icon .impact-notification-list-item-icon-line{height:15px;width:2px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .status-success{background-color:#ebf7f1;border:1px solid #108431}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .status-success .impact-notification-list-item-icon-line{background-color:#108431}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .status-fail{background-color:#fceeee;border:1px solid #ec4c5c}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .status-fail .impact-notification-list-item-icon-line{background-color:#ec4c5c}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .status-pending{background-color:#fcf8ea;border:1px solid #ffe174}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .status-pending .impact-notification-list-item-icon-line{background-color:#ffe174}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container{align-items:flex-start;display:flex;flex-direction:column;gap:6px;justify-content:flex-start;min-width:0;width:100%}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header{align-items:center;display:flex;flex-direction:row;gap:8px;justify-content:space-between;width:100%}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:focus,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:hover{cursor:pointer}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:focus .impact-notification-list-item-header-right,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:hover .impact-notification-list-item-header-right{width:24%}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-left,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right{align-items:center;display:flex;flex-direction:row;gap:8px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-title{color:#0d152c;font-family:Manrope,sans-serif;font-size:14px;font-weight:800;line-height:21px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right{overflow:hidden;transition:width .4s ease-in-out;width:0}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right .impact-notification-list-item-delete-btn{display:inline-flex!important;opacity:1!important;visibility:visible!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right .impact-notification-list-item-delete-btn~*{display:none!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:has(.impact-notification-list-item-delete-btn) .impact-notification-list-item-header-right{width:24%!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-header:hover .impact-notification-list-item-header-right .impact-notification-list-item-delete-btn~*{display:inline-flex!important;opacity:1!important;visibility:visible!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-schedule{align-items:center;color:#5f6673;display:flex;flex-direction:row;font-family:Manrope,sans-serif;font-size:12px;font-weight:500;gap:8px;justify-content:flex-start;line-height:15px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-description{color:#394960;font-family:Manrope,sans-serif;font-size:14px;font-weight:500;line-height:20px;max-width:100%;min-width:0;overflow-wrap:anywhere;word-break:break-word}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-description span{color:#4259ee;cursor:pointer}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item .impact-notification-list-item-container .impact-notification-list-item-action-btns{align-items:center;display:flex;flex-direction:row;gap:8px}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item.impact-notification-list-item-hover-on-card .impact-notification-list-item-container .impact-notification-list-item-header:focus .impact-notification-list-item-header-right,.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item.impact-notification-list-item-hover-on-card .impact-notification-list-item-container .impact-notification-list-item-header:hover .impact-notification-list-item-header-right{width:0!important}.impact-notification-list-container .impact-notification-list-items-container .impact-notification-list-item.impact-notification-list-item-hover-on-card:hover .impact-notification-list-item-container .impact-notification-list-item-header .impact-notification-list-item-header-right{width:24%!important}.impact-notification-list-container .impact-notification-list-items-container .list-item-selected{background-color:#eceefd}.impact-notification-list-container .impact-notification-list-items-container .list-item-read{border-left:3px solid #4259ee}.impact-notification-list-empty-state-container{align-items:center;display:flex;flex-direction:column;gap:16px;height:calc(100% - 48px);justify-content:center}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-icon{height:72px;width:72px}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-content{align-items:center;display:flex;flex-direction:column;gap:4px;justify-content:center}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-content .impact-notification-list-empty-state-title{color:#0d152c;font-size:20px;font-weight:800;line-height:28px}.impact-notification-list-empty-state-container .impact-notification-list-empty-state-content .impact-notification-list-empty-state-description{color:#7a8294;font-size:14px;font-weight:500;line-height:21px}.impact-notification-container-expand{width:800px}.impact-notification-list-item-bookmark-btn.ia-styles.ia-btn.ia-btn-text svg path{fill:#4258ed!important}.impact-notification-list-header .impact-notification-list-title-loader .css-tqb5fd-MuiSkeleton-root{display:none}.impact-notification-list-header .impact-notification-list-title-loader .css-58ftfq-MuiSkeleton-root{width:40px!important}.impact-notification-list-loader-container .css-70qvj9{left:calc(50% - 157px);position:absolute;top:calc(50% - 15px)}.impact-notification-list-action-btns-loader .css-tqb5fd-MuiSkeleton-root{display:none}.impact-notification-list-action-btns-loader .css-1366qbr{position:absolute;right:calc(50% - 150px)}")),document.head.appendChild(i)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}}();
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import { useState, useCallback, Suspense } from "react";
4
4
  import { NotificationBody } from "./NotificationBody/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"CommentsPortal.d.ts","sourceRoot":"","sources":["../../../src/components/Table/CommentsPortal.tsx"],"names":[],"mappings":"AAgBA,QAAA,MAAM,cAAc,GAAI;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BvB,uCAyZA,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"CommentsPortal.d.ts","sourceRoot":"","sources":["../../../src/components/Table/CommentsPortal.tsx"],"names":[],"mappings":"AAgBA,QAAA,MAAM,cAAc,GAAI;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BvB,uCAoaA,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -86,9 +86,14 @@ const CommentsPortal = ({
86
86
  setAdjustedPosition({ top: newTop, left: (position == null ? void 0 : position.left) || 0 });
87
87
  }
88
88
  } else {
89
- setAdjustedPosition(position);
89
+ setAdjustedPosition((prev) => {
90
+ if ((prev == null ? void 0 : prev.top) === (position == null ? void 0 : position.top) && (prev == null ? void 0 : prev.left) === (position == null ? void 0 : position.left) && (prev == null ? void 0 : prev.side) === (position == null ? void 0 : position.side)) {
91
+ return prev;
92
+ }
93
+ return position;
94
+ });
90
95
  }
91
- }, [openFullReplies, comments, position]);
96
+ }, [openFullReplies, comments, position == null ? void 0 : position.top, position == null ? void 0 : position.left, position == null ? void 0 : position.side]);
92
97
  useEffect(() => {
93
98
  var _a;
94
99
  if (!isOpen) return;
@@ -121,8 +126,10 @@ const CommentsPortal = ({
121
126
  } catch (e) {
122
127
  }
123
128
  });
124
- if (onMarkAsReadClick && !((_a = comments[0]) == null ? void 0 : _a.read)) onMarkAsReadClick(cellId);
125
- }, [isOpen, openFullReplies, comments == null ? void 0 : comments.length, messageId]);
129
+ if (onMarkAsReadClick && !((_a = comments[0]) == null ? void 0 : _a.read) && (openedBy === "click" || openFullReplies)) {
130
+ onMarkAsReadClick(cellId);
131
+ }
132
+ }, [isOpen, openFullReplies, comments == null ? void 0 : comments.length, messageId, openedBy, onMarkAsReadClick, cellId]);
126
133
  useEffect(() => {
127
134
  if (!isOpen) return;
128
135
  const isNoCommentsOutsidePortal = !(comments && comments.length > 0);
@@ -1 +1 @@
1
- {"version":3,"file":"TableImpl.d.ts","sourceRoot":"","sources":["../../../src/components/Table/TableImpl.tsx"],"names":[],"mappings":"AAaA,OAAO,sCAAsC,CAAC;AAC9C,OAAO,8CAA8C,CAAC;AACtD,OAAO,qBAAqB,CAAC;AAe7B,eAAO,MAAM,KAAK,mFAwgEjB,CAAC"}
1
+ {"version":3,"file":"TableImpl.d.ts","sourceRoot":"","sources":["../../../src/components/Table/TableImpl.tsx"],"names":[],"mappings":"AAaA,OAAO,sCAAsC,CAAC;AAC9C,OAAO,8CAA8C,CAAC;AACtD,OAAO,qBAAqB,CAAC;AAe7B,eAAO,MAAM,KAAK,mFAokEjB,CAAC"}
@@ -735,20 +735,44 @@ const Table = forwardRef(
735
735
  }
736
736
  }, [handleCommentNotification, triggerCommentClick]);
737
737
  const [popup, setPopup] = useState(null);
738
+ const prevPopupCellIdRef = useRef(null);
739
+ const isPointerOverPortalRef = useRef(false);
738
740
  useEffect(() => {
739
741
  const api = getLiveGridApi();
740
- if (api) {
742
+ if (!api) return;
743
+ const currentCellId = (popup == null ? void 0 : popup.cellId) ?? null;
744
+ const prevCellId = prevPopupCellIdRef.current;
745
+ if (currentCellId === prevCellId) return;
746
+ prevPopupCellIdRef.current = currentCellId;
747
+ const colIds = /* @__PURE__ */ new Set();
748
+ const addColIdFromCellId = (cellId) => {
749
+ if (!cellId) return;
750
+ const parts = String(cellId).split("__");
751
+ if (parts[1]) colIds.add(parts[1]);
752
+ };
753
+ addColIdFromCellId(prevCellId);
754
+ addColIdFromCellId(currentCellId);
755
+ if (colIds.size > 0) {
741
756
  api.refreshCells({
742
757
  force: true,
743
- suppressFlash: true
758
+ suppressFlash: true,
759
+ columns: Array.from(colIds)
744
760
  });
745
761
  }
746
- }, [popup, resolvedComments]);
762
+ }, [popup == null ? void 0 : popup.cellId]);
763
+ useEffect(() => {
764
+ const api = getLiveGridApi();
765
+ if (!api) return;
766
+ api.refreshCells({
767
+ force: true,
768
+ suppressFlash: true
769
+ });
770
+ }, [resolvedComments]);
747
771
  useEffect(() => {
748
772
  const scrollableElement = document.querySelector(".ag-body-viewport");
749
773
  const bodyElement = document.querySelector("body");
750
774
  const preventScroll = (e) => {
751
- const portalElement = e.target.closest(".comments-portal");
775
+ const portalElement = e.target.closest(".comments-portal-container");
752
776
  const portalListElement = e.target.closest(".comments-portal-list");
753
777
  const panelListElement = e.target.closest(".comment-panel-content");
754
778
  const textareaElement = e.target.closest(".comments-textarea");
@@ -1066,46 +1090,68 @@ const Table = forwardRef(
1066
1090
  }, [comments]);
1067
1091
  const handleCommentIconHover = useCallback(
1068
1092
  (params) => {
1069
- var _a2, _b2;
1093
+ var _a2;
1070
1094
  if (params.eGridCell) {
1071
1095
  const rect = params.eGridCell.getBoundingClientRect();
1072
1096
  const rowIdentifier = (commentProps == null ? void 0 : commentProps.colIdentifierKey) ? ((_a2 = params.data) == null ? void 0 : _a2[commentProps.colIdentifierKey]) || params.node.id : params.node.id;
1073
1097
  const baseCellId = `${rowIdentifier}__${params.column.getColId()}`;
1074
1098
  const cellId = getLatestUnresolvedThreadId(baseCellId);
1075
1099
  if (!cellId) return;
1076
- const position = calculatePopupPosition(rect, comments[cellId], "hover");
1077
- setPopup({
1078
- position,
1079
- // { top: rect.top, left: rect.right + 5 },
1080
- rowId: rowIdentifier,
1081
- colId: params.column.getColId(),
1082
- cellId,
1083
- comment: comments[cellId],
1084
- author: (commentProps == null ? void 0 : commentProps.author) || "Current User",
1085
- openedBy: "hover",
1086
- data: (_b2 = params.node) == null ? void 0 : _b2.data
1100
+ setPopup((current) => {
1101
+ var _a3;
1102
+ if ((current == null ? void 0 : current.openedBy) === "hover" && current.cellId === cellId) {
1103
+ return current;
1104
+ }
1105
+ const position = calculatePopupPosition(rect, comments[cellId], "hover");
1106
+ return {
1107
+ position,
1108
+ rowId: rowIdentifier,
1109
+ colId: params.column.getColId(),
1110
+ cellId,
1111
+ comment: comments[cellId],
1112
+ author: (commentProps == null ? void 0 : commentProps.author) || "Current User",
1113
+ openedBy: "hover",
1114
+ data: (_a3 = params.node) == null ? void 0 : _a3.data
1115
+ };
1087
1116
  });
1088
1117
  }
1089
1118
  },
1090
- [getLatestUnresolvedThreadId, calculatePopupPosition, comments, commentProps == null ? void 0 : commentProps.author]
1119
+ [
1120
+ getLatestUnresolvedThreadId,
1121
+ calculatePopupPosition,
1122
+ comments,
1123
+ commentProps == null ? void 0 : commentProps.author,
1124
+ commentProps == null ? void 0 : commentProps.colIdentifierKey
1125
+ ]
1091
1126
  );
1092
1127
  const handleMouseLeave = useCallback(() => {
1093
- if ((popup == null ? void 0 : popup.openedBy) === "hover") {
1094
- hoverTimeoutRef.current = setTimeout(() => {
1095
- if (!menuAnchorEl) {
1096
- setPopup(null);
1097
- setEditingComment(null);
1098
- setSelectedComment(null);
1128
+ clearTimeout(hoverTimeoutRef.current);
1129
+ hoverTimeoutRef.current = setTimeout(() => {
1130
+ if (isPointerOverPortalRef.current || menuAnchorEl) return;
1131
+ setPopup((current) => {
1132
+ if ((current == null ? void 0 : current.openedBy) !== "hover") {
1133
+ return current;
1099
1134
  }
1100
- }, 200);
1101
- } else {
1102
- setPopup(null);
1135
+ return null;
1136
+ });
1103
1137
  setEditingComment(null);
1104
1138
  setSelectedComment(null);
1105
- }
1106
- }, [popup, menuAnchorEl]);
1139
+ }, 200);
1140
+ }, [menuAnchorEl]);
1107
1141
  const handleMouseEnter = useCallback(() => {
1108
- if ((popup == null ? void 0 : popup.openedBy) === "hover") {
1142
+ clearTimeout(hoverTimeoutRef.current);
1143
+ }, []);
1144
+ const handlePortalMouseEnter = useCallback(() => {
1145
+ isPointerOverPortalRef.current = true;
1146
+ handleMouseEnter();
1147
+ }, [handleMouseEnter]);
1148
+ const handlePortalMouseLeave = useCallback(() => {
1149
+ isPointerOverPortalRef.current = false;
1150
+ handleMouseLeave();
1151
+ }, [handleMouseLeave]);
1152
+ useEffect(() => {
1153
+ if (!popup) {
1154
+ isPointerOverPortalRef.current = false;
1109
1155
  clearTimeout(hoverTimeoutRef.current);
1110
1156
  }
1111
1157
  }, [popup]);
@@ -1738,8 +1784,8 @@ const Table = forwardRef(
1738
1784
  onMarkAsReadClick: ((_c = commentProps == null ? void 0 : commentProps.configuration) == null ? void 0 : _c.disableMarkAsRead) ? null : commentProps == null ? void 0 : commentProps.handleMarkAsRead,
1739
1785
  onMarkAsResolvedClick: ((_d = commentProps == null ? void 0 : commentProps.configuration) == null ? void 0 : _d.disableMarkAsResolved) ? null : handleMarkAsResolved,
1740
1786
  onMenuClick: handleMenuClick,
1741
- onMouseEnter: handleMouseEnter,
1742
- onMouseLeave: handleMouseLeave,
1787
+ onMouseEnter: handlePortalMouseEnter,
1788
+ onMouseLeave: handlePortalMouseLeave,
1743
1789
  onUpdateComment: handleUpdateComment
1744
1790
  },
1745
1791
  (popup == null ? void 0 : popup.cellId) || "comments-portal"
@@ -67,11 +67,11 @@ const withCommentIcon = (Renderer) => {
67
67
  zIndex: 2
68
68
  },
69
69
  title: `${commentsArray.length} comment${commentsArray.length > 1 ? "s" : ""}`,
70
- onMouseLeave: handleMouseLeave,
71
- onMouseOver: () => {
70
+ onMouseEnter: () => {
72
71
  handleMouseEnter();
73
72
  handleCommentIconHover(props);
74
73
  },
74
+ onMouseLeave: handleMouseLeave,
75
75
  children: /* @__PURE__ */ jsx("img", { alt: "", src: CommentIndicator })
76
76
  }
77
77
  )
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 1,
3
- "generatedAt": "2026-06-24T14:29:53.334Z",
3
+ "generatedAt": "2026-06-26T12:21:22.614Z",
4
4
  "components": {
5
5
  "Accordion": {
6
6
  "title": "Components/Accordion",
@@ -1875,7 +1875,7 @@
1875
1875
  "required": true
1876
1876
  },
1877
1877
  "withActionButtons": {
1878
- "description": "Show Cancel/Apply at bottom (use with withCheckbox)",
1878
+ "description": "Show Apply at bottom (use with withCheckbox); pass tertiaryButtonLabel to show Cancel",
1879
1879
  "type": "unknown",
1880
1880
  "required": true
1881
1881
  },
@@ -1,7 +1,7 @@
1
1
  import { __exports as colorManipulator } from "../../../_virtual/colorManipulator.js";
2
2
  import require$$0 from "@babel/runtime/helpers/interopRequireDefault";
3
- import require$$1 from "../../../_virtual/index4.js";
4
- import require$$2 from "../../../_virtual/index5.js";
3
+ import require$$1 from "../../../_virtual/index3.js";
4
+ import require$$2 from "../../../_virtual/index4.js";
5
5
  var _interopRequireDefault = require$$0;
6
6
  Object.defineProperty(colorManipulator, "__esModule", {
7
7
  value: true
@@ -1,5 +1,5 @@
1
1
  import { getDefaultExportFromCjs } from "../../_virtual/_commonjsHelpers.js";
2
- import { __module as propTypes } from "../../_virtual/index3.js";
2
+ import { __module as propTypes } from "../../_virtual/index2.js";
3
3
  import { __require as requireReactIs } from "./node_modules/react-is/index.js";
4
4
  import { __require as requireFactoryWithTypeCheckers } from "./factoryWithTypeCheckers.js";
5
5
  import { __require as requireFactoryWithThrowingShims } from "./factoryWithThrowingShims.js";
@@ -1,4 +1,4 @@
1
- import { __module as reactIs } from "../../_virtual/index2.js";
1
+ import { __module as reactIs } from "../../_virtual/index5.js";
2
2
  import { __require as requireReactIs_production } from "./cjs/react-is.production.js";
3
3
  import { __require as requireReactIs_development } from "./cjs/react-is.development.js";
4
4
  if (process.env.NODE_ENV === "production") {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "impact-ui",
3
- "version": "4.0.0-alpha.21",
3
+ "version": "4.0.0-alpha.22",
4
4
  "description": "Impact Analytics UI library",
5
5
  "type": "module",
6
6
  "main": "./dist/components/index.js",