pixel-priya 1.1.21 → 1.1.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 (71) hide show
  1. package/lib/_virtual/index10.js +2 -2
  2. package/lib/_virtual/index11.js +2 -2
  3. package/lib/_virtual/index9.js +2 -2
  4. package/lib/assets/icons/filter_active.svg.js +1 -1
  5. package/lib/assets/icons/filter_active.svg.js.map +1 -1
  6. package/lib/components/AllProjectsDropdown/AllProjectsDropdown.js +3 -3
  7. package/lib/components/AllProjectsDropdown/AllProjectsDropdown.js.map +1 -1
  8. package/lib/components/AppHeader/AppHeader.d.ts +0 -1
  9. package/lib/components/AppHeader/AppHeader.js +4 -28
  10. package/lib/components/AppHeader/AppHeader.js.map +1 -1
  11. package/lib/components/AttachmentButton/AttachmentButton.js +5 -2
  12. package/lib/components/AttachmentButton/AttachmentButton.js.map +1 -1
  13. package/lib/components/BrowserTabs/BrowserTabs.js +12 -4
  14. package/lib/components/BrowserTabs/BrowserTabs.js.map +1 -1
  15. package/lib/components/Charts/DashboardDonutChart/DashboardDonutChart.js +3 -5
  16. package/lib/components/Charts/DashboardDonutChart/DashboardDonutChart.js.map +1 -1
  17. package/lib/components/ContentCard/ContentCard.d.ts +1 -1
  18. package/lib/components/EditLabel/EditLabel.js +11 -2
  19. package/lib/components/EditLabel/EditLabel.js.map +1 -1
  20. package/lib/components/Editor/Editor.js +39 -24
  21. package/lib/components/Editor/Editor.js.map +1 -1
  22. package/lib/components/Excel/ExcelFile/ExcelFileComponents/ActiveCell.js +2 -1
  23. package/lib/components/Excel/ExcelFile/ExcelFileComponents/ActiveCell.js.map +1 -1
  24. package/lib/components/Excel/ExcelFile/ExcelFileComponents/matrix.d.ts +2 -0
  25. package/lib/components/Excel/ExcelFile/ExcelFileComponents/matrix.js +7 -8
  26. package/lib/components/Excel/ExcelFile/ExcelFileComponents/matrix.js.map +1 -1
  27. package/lib/components/Icon/iconList.js +1 -1
  28. package/lib/components/Icon/iconList.js.map +1 -1
  29. package/lib/components/MachineInputField/MachineInputField.js +4 -1
  30. package/lib/components/MachineInputField/MachineInputField.js.map +1 -1
  31. package/lib/components/MenuOption/MenuOption.js +1 -1
  32. package/lib/components/MenuOption/MenuOption.js.map +1 -1
  33. package/lib/components/MultiSelect/MultiSelect.js +2 -2
  34. package/lib/components/MultiSelect/MultiSelect.js.map +1 -1
  35. package/lib/components/ScriptGenerationLoader/ScriptGenerationLoader.d.ts +5 -0
  36. package/lib/components/ScriptGenerationLoader/ScriptGenerationLoader.js +11 -0
  37. package/lib/components/ScriptGenerationLoader/ScriptGenerationLoader.js.map +1 -0
  38. package/lib/components/ScriptGenerationLoader/index.d.ts +1 -0
  39. package/lib/components/ScriptGenerationLoader/index.js +2 -0
  40. package/lib/components/ScriptGenerationLoader/index.js.map +1 -0
  41. package/lib/components/ScriptGenerationLoader/types.d.ts +15 -0
  42. package/lib/components/ScriptGenerationLoader/types.js +2 -0
  43. package/lib/components/ScriptGenerationLoader/types.js.map +1 -0
  44. package/lib/components/Search/Search.js +2 -1
  45. package/lib/components/Search/Search.js.map +1 -1
  46. package/lib/components/TableTree/Components/TableHead.d.ts +1 -1
  47. package/lib/components/TableTree/Components/TableHead.js +3 -2
  48. package/lib/components/TableTree/Components/TableHead.js.map +1 -1
  49. package/lib/components/TableTree/TableTree.js +4 -2
  50. package/lib/components/TableTree/TableTree.js.map +1 -1
  51. package/lib/components/TableTree/types.d.ts +2 -0
  52. package/lib/components/Tooltip/Tooltip.js +4 -3
  53. package/lib/components/Tooltip/Tooltip.js.map +1 -1
  54. package/lib/components/Tooltip/types.d.ts +4 -0
  55. package/lib/index.cjs +104 -199
  56. package/lib/index.cjs.map +1 -1
  57. package/lib/index.d.ts +6 -1
  58. package/lib/index.js +1 -1
  59. package/lib/node_modules/js-beautify/js/src/css/beautifier.js +1 -1
  60. package/lib/node_modules/js-beautify/js/src/css/index.js +1 -1
  61. package/lib/node_modules/js-beautify/js/src/css/options.js +1 -1
  62. package/lib/node_modules/js-beautify/js/src/html/beautifier.js +1 -1
  63. package/lib/node_modules/js-beautify/js/src/html/index.js +1 -1
  64. package/lib/node_modules/js-beautify/js/src/html/options.js +1 -1
  65. package/lib/node_modules/js-beautify/js/src/javascript/beautifier.js +1 -1
  66. package/lib/node_modules/js-beautify/js/src/javascript/index.js +1 -1
  67. package/lib/node_modules/js-beautify/js/src/javascript/options.js +1 -1
  68. package/lib/styles.css +1 -3
  69. package/lib/styles.css.map +1 -1
  70. package/lib/tsconfig.tsbuildinfo +1 -1
  71. package/package.json +1 -2
package/lib/index.cjs CHANGED
@@ -1723,7 +1723,8 @@ const Tooltip = ({
1723
1723
  children,
1724
1724
  placement = 'bottom',
1725
1725
  disabled = false,
1726
- style = {}
1726
+ style = {},
1727
+ as: Element = 'div'
1727
1728
  }) => {
1728
1729
  const [isVisible, setIsVisible] = React.useState(false);
1729
1730
  const titleRef = React.useRef(null);
@@ -1848,13 +1849,13 @@ const Tooltip = ({
1848
1849
  calculateDim();
1849
1850
  }
1850
1851
  }, [isVisible]);
1851
- return jsxRuntime.jsxs("div", {
1852
+ return jsxRuntime.jsxs(Element, {
1852
1853
  ref: tooltipContainerRef,
1853
1854
  className: classNames('ff-tooltip-container', currentTheme),
1854
1855
  onMouseEnter: () => setIsVisible(true),
1855
1856
  onMouseLeave: () => setIsVisible(false),
1856
1857
  style: style,
1857
- children: [children, isVisible && !disabled && !isTitleEmpty(title) && /*#__PURE__*/ReactDOM.createPortal(jsxRuntime.jsx("div", {
1858
+ children: [children, isVisible && !disabled && !isTitleEmpty(title) && /*#__PURE__*/ReactDOM.createPortal(jsxRuntime.jsx(Element, {
1858
1859
  ref: titleRef,
1859
1860
  style: {
1860
1861
  ...styles[finalPlacement]
@@ -2963,7 +2964,7 @@ const MultiSelect = ({
2963
2964
  overflowY,
2964
2965
  overflowX
2965
2966
  } = window.getComputedStyle(parent);
2966
- if (/(auto|scroll|overlay)/.test(overflowY) && parent.scrollHeight > parent.clientHeight || /(auto|scroll|overlay)/.test(overflowX) && parent.scrollWidth > parent.clientWidth) {
2967
+ if (/(auto|scroll|overlay)/.test(overflowY) || /(auto|scroll|overlay)/.test(overflowX) && parent.scrollWidth > parent.clientWidth) {
2967
2968
  return parent;
2968
2969
  }
2969
2970
  parent = parent.parentElement;
@@ -3124,7 +3125,7 @@ const MultiSelect = ({
3124
3125
  children: label
3125
3126
  }), jsxRuntime.jsxs("div", {
3126
3127
  className: "ff-multiselect-chip-container",
3127
- children: [!withSelectButton && (displayAllSelectedAsText && selectedOptions.length === allOptions.length && labelAccessor !== 'name' ? jsxRuntime.jsx(ChipElement, {
3128
+ children: [!withSelectButton && (displayAllSelectedAsText && selectedOptions.length === allOptions.length && !checkEmpty(allOptions) && labelAccessor !== 'name' ? jsxRuntime.jsx(ChipElement, {
3128
3129
  zIndex: zIndex,
3129
3130
  label: "All",
3130
3131
  onChipCloseClick: handleChipCloseAll,
@@ -4770,7 +4771,7 @@ const OptionCard = ({
4770
4771
  },
4771
4772
  ref: optionCardRef,
4772
4773
  children: options.map(opt => !opt.hide && jsxRuntime.jsx(Tooltip, {
4773
- title: opt?.tooltipForOption ? opt?.tooltipForOption : opt?.label,
4774
+ title: opt?.tooltipForOption ? opt?.tooltipForOption : '',
4774
4775
  placement: opt?.tooltipPlacementForOption,
4775
4776
  children: jsxRuntime.jsx(Option$1, {
4776
4777
  option: opt,
@@ -16217,7 +16218,8 @@ const TableHead = /*#__PURE__*/React.memo(({
16217
16218
  onCheckBoxChange,
16218
16219
  selectedNode,
16219
16220
  tableHeaderBgColor,
16220
- hideOnDisable
16221
+ hideOnDisable,
16222
+ transparentHeader
16221
16223
  }) => {
16222
16224
  // const hasDefaultValues = useMemo(
16223
16225
  // () => columnsData.some(({ defaultValue }) => !!defaultValue),
@@ -16239,7 +16241,7 @@ const TableHead = /*#__PURE__*/React.memo(({
16239
16241
  className: "ff-table-tree-th",
16240
16242
  style: {
16241
16243
  width: width,
16242
- backgroundColor: tableHeaderBgColor
16244
+ backgroundColor: transparentHeader ? 'transparent' : tableHeaderBgColor
16243
16245
  },
16244
16246
  children: name
16245
16247
  }, name))
@@ -16433,6 +16435,7 @@ const EditLabel = ({
16433
16435
  const confirmRef = React.useRef(null);
16434
16436
  const isThrowingError = showError && isEditing ? true : false;
16435
16437
  const inputRef = React.useRef(null);
16438
+ const dropdownRef = React.useRef(null);
16436
16439
  const isValueFilled = !checkEmpty(text);
16437
16440
  const handleTextFieldChange = e => {
16438
16441
  const newValue = e.target.value;
@@ -16502,6 +16505,11 @@ const EditLabel = ({
16502
16505
  if (onCancel) onCancel();
16503
16506
  setIsEditable && setIsEditable(null);
16504
16507
  };
16508
+ const handleOutsideClick = () => {
16509
+ if (!isEditing || !containerRef.current) return;
16510
+ handleCancel();
16511
+ };
16512
+ useClickOutside(containerRef, handleOutsideClick, [confirmRef, cancelRef, dropdownRef]);
16505
16513
  const handleCancel = () => {
16506
16514
  if (isDisable.cancel) return;
16507
16515
  if (required && !value) {
@@ -16588,6 +16596,8 @@ const EditLabel = ({
16588
16596
  children: label
16589
16597
  })]
16590
16598
  }), jsxRuntime.jsx("input", {
16599
+ ref: inputRef,
16600
+ id: "add-module-input",
16591
16601
  name: "add-module-input",
16592
16602
  type: "text",
16593
16603
  className: classNames('ff-add-module-input', {
@@ -16600,10 +16610,10 @@ const EditLabel = ({
16600
16610
  disabled: isDisable.textField,
16601
16611
  onKeyDown: handleKeyDown,
16602
16612
  autoFocus: true,
16603
- autoComplete: "off",
16604
- ref: inputRef
16613
+ autoComplete: "off"
16605
16614
  })]
16606
16615
  }), withDropdown && jsxRuntime.jsx(Select$1, {
16616
+ dropDownRef: dropdownRef,
16607
16617
  optionsList: optionsList,
16608
16618
  selectedOption: currentSelectedOption,
16609
16619
  showLabel: false,
@@ -16979,7 +16989,8 @@ const TreeTable = /*#__PURE__*/React.forwardRef(({
16979
16989
  addModuleInputWidth = 150,
16980
16990
  addModuleSelectWidth,
16981
16991
  onScroll,
16982
- disableEditLabelConfirmIcon = false
16992
+ disableEditLabelConfirmIcon = false,
16993
+ transparentHeader = false
16983
16994
  }, ref) => {
16984
16995
  const [expanding, setExpanding] = React.useState(null);
16985
16996
  const [isLoading, setIsLoading] = React.useState(null);
@@ -17135,7 +17146,8 @@ const TreeTable = /*#__PURE__*/React.forwardRef(({
17135
17146
  selected: selected,
17136
17147
  selectedNode: selectedNode,
17137
17148
  tableHeaderBgColor: tableHeaderBgColor,
17138
- hideOnDisable: hideOnDisable
17149
+ hideOnDisable: hideOnDisable,
17150
+ transparentHeader: transparentHeader
17139
17151
  }), jsxRuntime.jsx(TableBody, {
17140
17152
  flattenedTreeData: addLastChild(treeData),
17141
17153
  rootNode: rootNode?.node,
@@ -17228,6 +17240,7 @@ const BrowserTabs = ({
17228
17240
  }) => {
17229
17241
  const containerRef = React.useRef(null);
17230
17242
  const [tabWidth, setTabWidth] = React.useState();
17243
+ const [failedIcons, setFailedIcons] = React.useState({});
17231
17244
  React.useEffect(() => {
17232
17245
  const updateTabWidth = () => {
17233
17246
  if (containerRef.current) {
@@ -17240,6 +17253,12 @@ const BrowserTabs = ({
17240
17253
  window.addEventListener('resize', updateTabWidth);
17241
17254
  return () => window.removeEventListener('resize', updateTabWidth);
17242
17255
  }, [tabsData.length, maxTabWidth]);
17256
+ const handleIconError = tabId => {
17257
+ setFailedIcons(prev => ({
17258
+ ...prev,
17259
+ [tabId]: true
17260
+ }));
17261
+ };
17243
17262
  return jsxRuntime.jsxs("div", {
17244
17263
  className: "ff-browser-tabs-container",
17245
17264
  ref: containerRef,
@@ -17268,12 +17287,13 @@ const BrowserTabs = ({
17268
17287
  children: jsxRuntime.jsxs("div", {
17269
17288
  className: "ff-tab-content",
17270
17289
  children: [tabWidth && tabWidth >= 20 && (!isActive || tabWidth >= 80) && jsxRuntime.jsx(jsxRuntime.Fragment, {
17271
- children: tab.tabIconSrc ? jsxRuntime.jsx("img", {
17290
+ children: tab.tabIconSrc && !failedIcons[tab.id] ? jsxRuntime.jsx("img", {
17272
17291
  src: tab.tabIconSrc,
17273
17292
  alt: tab.label,
17274
- className: "ff-tab-icon"
17275
- }) : tab.tabIcon && jsxRuntime.jsx(Icon, {
17276
- name: tab.tabIcon,
17293
+ className: "ff-tab-icon",
17294
+ onError: () => handleIconError(tab.id)
17295
+ }) : jsxRuntime.jsx(Icon, {
17296
+ name: tab.tabIcon || "web_icon",
17277
17297
  hoverEffect: false,
17278
17298
  color: "inherit"
17279
17299
  })
@@ -17540,7 +17560,8 @@ const Search = ({
17540
17560
  children: jsxRuntime.jsx(Icon, {
17541
17561
  name: "search",
17542
17562
  height: isExpand ? 14 : 16,
17543
- width: isExpand ? 14 : 16
17563
+ width: isExpand ? 14 : 16,
17564
+ disabled: disabled
17544
17565
  })
17545
17566
  })
17546
17567
  }), jsxRuntime.jsx("div", {
@@ -29613,8 +29634,8 @@ const AllProjectsDropdown = ({
29613
29634
  lineHeight: '30px',
29614
29635
  className: "ff-projects-label",
29615
29636
  children: jsxRuntime.jsx(Tooltip, {
29616
- title: option.label.length > 25 ? option.label : '',
29617
- children: option.label.length < 25 ? option.label : truncateText(option.label, 25)
29637
+ title: isTextTruncated(option.label, 165, 'pixel') ? option.label : '',
29638
+ children: truncateText(option.label, 165, 'pixel')
29618
29639
  })
29619
29640
  }, index)]
29620
29641
  }, index))
@@ -29950,119 +29971,6 @@ const clearStore = () => {
29950
29971
  }
29951
29972
  };
29952
29973
 
29953
- /**
29954
- * @internal
29955
- */
29956
- const SkeletonThemeContext = /*#__PURE__*/React.createContext({});
29957
-
29958
- /* eslint-disable react/no-array-index-key */
29959
- const defaultEnableAnimation = true;
29960
- // For performance & cleanliness, don't add any inline styles unless we have to
29961
- function styleOptionsToCssProperties({
29962
- baseColor,
29963
- highlightColor,
29964
- width,
29965
- height,
29966
- borderRadius,
29967
- circle,
29968
- direction,
29969
- duration,
29970
- enableAnimation = defaultEnableAnimation,
29971
- customHighlightBackground
29972
- }) {
29973
- const style = {};
29974
- if (direction === 'rtl') style['--animation-direction'] = 'reverse';
29975
- if (typeof duration === 'number') style['--animation-duration'] = `${duration}s`;
29976
- if (!enableAnimation) style['--pseudo-element-display'] = 'none';
29977
- if (typeof width === 'string' || typeof width === 'number') style.width = width;
29978
- if (typeof height === 'string' || typeof height === 'number') style.height = height;
29979
- if (typeof borderRadius === 'string' || typeof borderRadius === 'number') style.borderRadius = borderRadius;
29980
- if (circle) style.borderRadius = '50%';
29981
- if (typeof baseColor !== 'undefined') style['--base-color'] = baseColor;
29982
- if (typeof highlightColor !== 'undefined') style['--highlight-color'] = highlightColor;
29983
- if (typeof customHighlightBackground === 'string') style['--custom-highlight-background'] = customHighlightBackground;
29984
- return style;
29985
- }
29986
- function Skeleton({
29987
- count = 1,
29988
- wrapper: Wrapper,
29989
- className: customClassName,
29990
- containerClassName,
29991
- containerTestId,
29992
- circle = false,
29993
- style: styleProp,
29994
- ...originalPropsStyleOptions
29995
- }) {
29996
- var _a, _b, _c;
29997
- const contextStyleOptions = React.useContext(SkeletonThemeContext);
29998
- const propsStyleOptions = {
29999
- ...originalPropsStyleOptions
30000
- };
30001
- // DO NOT overwrite style options from the context if `propsStyleOptions`
30002
- // has properties explicity set to undefined
30003
- for (const [key, value] of Object.entries(originalPropsStyleOptions)) {
30004
- if (typeof value === 'undefined') {
30005
- delete propsStyleOptions[key];
30006
- }
30007
- }
30008
- // Props take priority over context
30009
- const styleOptions = {
30010
- ...contextStyleOptions,
30011
- ...propsStyleOptions,
30012
- circle
30013
- };
30014
- // `styleProp` has the least priority out of everything
30015
- const style = {
30016
- ...styleProp,
30017
- ...styleOptionsToCssProperties(styleOptions)
30018
- };
30019
- let className = 'react-loading-skeleton';
30020
- if (customClassName) className += ` ${customClassName}`;
30021
- const inline = (_a = styleOptions.inline) !== null && _a !== void 0 ? _a : false;
30022
- const elements = [];
30023
- const countCeil = Math.ceil(count);
30024
- for (let i = 0; i < countCeil; i++) {
30025
- let thisStyle = style;
30026
- if (countCeil > count && i === countCeil - 1) {
30027
- // count is not an integer and we've reached the last iteration of
30028
- // the loop, so add a "fractional" skeleton.
30029
- //
30030
- // For example, if count is 3.5, we've already added 3 full
30031
- // skeletons, so now we add one more skeleton that is 0.5 times the
30032
- // original width.
30033
- const width = (_b = thisStyle.width) !== null && _b !== void 0 ? _b : '100%'; // 100% is the default since that's what's in the CSS
30034
- const fractionalPart = count % 1;
30035
- const fractionalWidth = typeof width === 'number' ? width * fractionalPart : `calc(${width} * ${fractionalPart})`;
30036
- thisStyle = {
30037
- ...thisStyle,
30038
- width: fractionalWidth
30039
- };
30040
- }
30041
- const skeletonSpan = /*#__PURE__*/React.createElement("span", {
30042
- className: className,
30043
- style: thisStyle,
30044
- key: i
30045
- }, "\u200C");
30046
- if (inline) {
30047
- elements.push(skeletonSpan);
30048
- } else {
30049
- // Without the <br />, the skeleton lines will all run together if
30050
- // `width` is specified
30051
- elements.push(/*#__PURE__*/React.createElement(React.Fragment, {
30052
- key: i
30053
- }, skeletonSpan, /*#__PURE__*/React.createElement("br", null)));
30054
- }
30055
- }
30056
- return /*#__PURE__*/React.createElement("span", {
30057
- className: containerClassName,
30058
- "data-testid": containerTestId,
30059
- "aria-live": "polite",
30060
- "aria-busy": (_c = styleOptions.enableAnimation) !== null && _c !== void 0 ? _c : defaultEnableAnimation
30061
- }, Wrapper ? elements.map((el, i) => /*#__PURE__*/React.createElement(Wrapper, {
30062
- key: i
30063
- }, el)) : elements);
30064
- }
30065
-
30066
29974
  const AppHeader = ({
30067
29975
  logoIconName = 'fireflink_icon',
30068
29976
  width,
@@ -30092,7 +30000,6 @@ const AppHeader = ({
30092
30000
  }) => {
30093
30001
  const hiddenMenuRef = React.useRef(null);
30094
30002
  const hiddenQuickMenuRef = React.useRef(null);
30095
- const [isHidden, setIsHidden] = React.useState(true);
30096
30003
  const [projectArrayList, setProjectArrayList] = React.useState(projectsList);
30097
30004
  const [quickMenuItems, setQuickMenuItems] = React.useState([]);
30098
30005
  const [appHeaderHiddenMenuItems, setAppHeaderHiddenMenuItems] = React.useState([]);
@@ -30111,14 +30018,12 @@ const AppHeader = ({
30111
30018
  }
30112
30019
  }, [selectedMenu, selectedMenuItem]);
30113
30020
  const handleMenuClick = menuItem => {
30114
- setIsHidden(true);
30115
30021
  if (!disabled) {
30116
30022
  onMenuClick(menuItem);
30117
30023
  calculateVisibleItems();
30118
30024
  }
30119
30025
  };
30120
30026
  const handleSubMenuClick = subMenuItem => {
30121
- setIsHidden(true);
30122
30027
  if (!disabled) {
30123
30028
  onSubMenuClick(subMenuItem);
30124
30029
  if (timeoutRef.current) clearTimeout(timeoutRef.current);
@@ -30136,21 +30041,18 @@ const AppHeader = ({
30136
30041
  if (projectItem?.value === projectDetails?.id && projectItem?.value !== 'All Projects') {
30137
30042
  return;
30138
30043
  }
30139
- setIsHidden(true);
30140
30044
  if (!disabled) {
30141
30045
  onProjectMenuClick(projectItem);
30142
30046
  calculateVisibleItems();
30143
30047
  }
30144
30048
  };
30145
30049
  const handleProjectDropdownLabelClick = () => {
30146
- setIsHidden(true);
30147
30050
  if (!disabled) {
30148
30051
  onProjectDropdownLabelClick();
30149
30052
  calculateVisibleItems();
30150
30053
  }
30151
30054
  };
30152
30055
  const handleMoreMenuOptionClick = option => {
30153
- setIsHidden(true);
30154
30056
  if (!disabled) {
30155
30057
  onMoreMenuOptionClick(option, calculateVisibleItems);
30156
30058
  }
@@ -30163,10 +30065,9 @@ const AppHeader = ({
30163
30065
  const calculateVisibleItems = React.useCallback(() => {
30164
30066
  if (!isClient && projectDetails?.id === 'All Projects' || !menuContainerRef.current) {
30165
30067
  setAppHeaderHiddenMenuItems([]);
30166
- if (isHidden) setIsHidden(false);
30167
30068
  return;
30168
30069
  }
30169
- const containerWidth = isClient ? 700 : 900;
30070
+ const containerWidth = isClient ? 700 : 950;
30170
30071
  let totalWidth = 0;
30171
30072
  const hiddenItems = [];
30172
30073
  const sortedMenuItems = [...appHeaderMenuItems];
@@ -30194,14 +30095,13 @@ const AppHeader = ({
30194
30095
  value: item.path,
30195
30096
  icon: item?.iconName
30196
30097
  })));
30197
- if (isHidden) setIsHidden(false);
30198
- }, [appHeaderMenuItems, selectedMenuItem, selectedMenu, selectedSubMenu, selectedQuickMenu, isHidden]);
30098
+ }, [appHeaderMenuItems, selectedMenuItem, selectedMenu, selectedSubMenu, selectedQuickMenu]);
30199
30099
  React.useEffect(() => {
30200
30100
  const timer = setTimeout(() => {
30201
30101
  calculateVisibleItems();
30202
30102
  }, 800);
30203
30103
  return () => clearTimeout(timer);
30204
- }, [projectDetails?.id, selectedMenuItem, scriptId, quickMenuItems, isHidden]);
30104
+ }, [projectDetails?.id, selectedMenuItem, scriptId, quickMenuItems]);
30205
30105
  const checkIsHavingEntityPendingCounts = data => {
30206
30106
  if (data.label === 'Approval Request' && data.entityPendingCounts) {
30207
30107
  return Object.values(data.entityPendingCounts).some(count => count > 0);
@@ -30255,26 +30155,11 @@ const AppHeader = ({
30255
30155
  className: "ff-app-header-left-content",
30256
30156
  children: leftContent
30257
30157
  })]
30258
- }), isHidden && jsxRuntime.jsx("div", {
30259
- className: "ff-app-header-nav-bar-skeleton",
30260
- style: {
30261
- width: width,
30262
- display: isHidden ? 'flex' : 'none'
30263
- },
30264
- children: [...Array(projectDetails?.id === 'All Projects' ? 5 : 8)].map((_, idx) => jsxRuntime.jsx(Skeleton, {
30265
- width: 80,
30266
- height: 22,
30267
- style: {
30268
- marginRight: 16,
30269
- borderRadius: 20,
30270
- opacity: 0.5
30271
- }
30272
- }, idx))
30273
30158
  }), jsxRuntime.jsxs("div", {
30274
30159
  className: "ff-app-header-nav-bar",
30275
30160
  style: {
30276
30161
  width: width,
30277
- visibility: checkEmpty(appHeaderMenuItems) && projectDetails?.id === 'All Projects' || isHidden || hideNavbar ? 'hidden' : 'visible',
30162
+ visibility: checkEmpty(appHeaderMenuItems) && projectDetails?.id === 'All Projects' || hideNavbar ? 'hidden' : 'visible',
30278
30163
  position: 'relative',
30279
30164
  zIndex: 1
30280
30165
  },
@@ -31081,9 +30966,7 @@ const DashboardDonutChart = ({
31081
30966
  children: legendData?.map(item => jsxRuntime.jsxs("tr", {
31082
30967
  className: "ff-legend-item",
31083
30968
  onMouseEnter: () => {
31084
- if (toNumber(item.value) > 0) {
31085
- setHoveredItemIndex(item.originalIndex);
31086
- }
30969
+ setHoveredItemIndex(item.originalIndex);
31087
30970
  },
31088
30971
  onMouseLeave: () => setHoveredItemIndex(null),
31089
30972
  children: [jsxRuntime.jsxs("td", {
@@ -31103,7 +30986,7 @@ const DashboardDonutChart = ({
31103
30986
  })]
31104
30987
  }), jsxRuntime.jsx("td", {
31105
30988
  className: "ff-legend-percentage",
31106
- children: item.percentage ? item.percentage : typeof item.value === 'string' ? (parseFloat(item.value) / total * 100).toFixed(1) : total === 0 ? 0 : (item.value / total * 100).toFixed(1)
30989
+ children: item.percentage ? item.percentage : typeof item.value === 'string' ? Math.round(parseFloat(item.value) / total * 100) : total === 0 ? 0 : Math.round(item.value / total * 100)
31107
30990
  }), jsxRuntime.jsx("td", {
31108
30991
  className: "ff-legend-count",
31109
30992
  children: item.value
@@ -31214,7 +31097,7 @@ const DashboardDonutChart = ({
31214
31097
  style: {
31215
31098
  fontSize: `${labelFontSize}px`
31216
31099
  },
31217
- children: wrapText(legendType === 'tableLegend' && hoveredItemIndex !== null && chartValues.find(item => item.originalIndex === hoveredItemIndex) ? `${((chartValues.find(item => item.originalIndex === hoveredItemIndex)?.value || 0) / total * 100).toFixed(1)}%` : legendType === 'memoryLegend' ? `${totalMemory}` : isOnClick && hoveredItemIndex !== null && chartValues.find(item => item.originalIndex === hoveredItemIndex)?.value ? `${chartValues.find(item => item.originalIndex === hoveredItemIndex)?.value}` : `${Number.isInteger(total) ? total : total?.toFixed(2)} ${showUnit && unit ? unit.toUpperCase() : ''}`, LABEL_MAX_WIDTH, labelFontSize).map((line, index) => jsxRuntime.jsx("tspan", {
31100
+ children: wrapText(legendType === 'tableLegend' && hoveredItemIndex !== null && chartValues.find(item => item.originalIndex === hoveredItemIndex) ? `${Math.round((chartValues.find(item => item.originalIndex === hoveredItemIndex)?.value || 0) / total * 100)}%` : legendType === 'memoryLegend' ? `${totalMemory}` : isOnClick && hoveredItemIndex !== null && chartValues.find(item => item.originalIndex === hoveredItemIndex)?.value ? `${chartValues.find(item => item.originalIndex === hoveredItemIndex)?.value}` : `${Number.isInteger(total) ? total : total?.toFixed(2)} ${showUnit && unit ? unit.toUpperCase() : ''}`, LABEL_MAX_WIDTH, labelFontSize).map((line, index) => jsxRuntime.jsx("tspan", {
31218
31101
  x: "0",
31219
31102
  dy: index === 0 ? 0 : labelFontSize,
31220
31103
  children: selectedItemIndex !== null && chartValues.find(item => item.originalIndex === selectedItemIndex) ? index === 0 ? chartValues.find(item => item.originalIndex === selectedItemIndex)?.value : null : apiDataLabel ? apiDataLabel : line
@@ -34169,7 +34052,10 @@ const MachineInputField = ({
34169
34052
  safari: 'safari_icon',
34170
34053
  opera: 'opera',
34171
34054
  windows: 'windows',
34172
- edge: 'edge'
34055
+ edge: 'edge',
34056
+ firefox: 'fire_fox',
34057
+ chrome: 'chrome_icon',
34058
+ explorer: 'internet_explorer'
34173
34059
  };
34174
34060
  const isManualScript = scriptType.toLowerCase() === 'manual';
34175
34061
  return jsxRuntime.jsxs("div", {
@@ -34903,7 +34789,10 @@ const AttachmentButton = ({
34903
34789
  onClick: onFileListClick,
34904
34790
  children: [jsxRuntime.jsx(Typography, {
34905
34791
  color: "var(--brand-color)",
34906
- children: truncateText(file.name, truncateMaxLimit, 'pixel')
34792
+ children: jsxRuntime.jsx(TruncatedTooltip, {
34793
+ title: file.name,
34794
+ width: truncateMaxLimit
34795
+ })
34907
34796
  }), deleteButton && jsxRuntime.jsx(Tooltip, {
34908
34797
  title: "Delete",
34909
34798
  children: jsxRuntime.jsx(Icon, {
@@ -35887,10 +35776,9 @@ function mutableSet(point, value, matrix) {
35887
35776
  // nextMatrix[point.row] = nextRow;
35888
35777
  // return nextMatrix;
35889
35778
  // }
35890
- const convertPxToPt$1 = px => {
35891
- const numericPx = parseFloat(px.replace('px', ''));
35892
- const pt = numericPx / 1.33;
35893
- return pt;
35779
+ const convertPtToPx$1 = pt => {
35780
+ const px = pt * 1.33;
35781
+ return `${px}px`;
35894
35782
  };
35895
35783
  const EmptyCell$1 = {
35896
35784
  value: '',
@@ -35910,7 +35798,7 @@ const EmptyCell$1 = {
35910
35798
  borderLeft: `1px solid var(--excel-header-border)`,
35911
35799
  borderTop: `1px solid var(--excel-header-border)`,
35912
35800
  borderBottom: `1px solid var(--excel-header-border)`,
35913
- fontSize: `${convertPxToPt$1('9')}`,
35801
+ fontSize: `${convertPtToPx$1(9)}`,
35914
35802
  fontWeight: 'normal',
35915
35803
  fontStyle: 'normal',
35916
35804
  fontFamily: 'Poppins',
@@ -36043,11 +35931,11 @@ function pad(matrix, size) {
36043
35931
  let padded = [...matrix];
36044
35932
  if (resultSize.columns > columns) {
36045
35933
  const padColumns = resultSize.columns - columns;
36046
- padded = padded.map(row => [...row, ...Array(padColumns).fill(undefined)]);
35934
+ padded = padded.map(row => [...row, ...Array(padColumns).fill(EmptyCell$1)]);
36047
35935
  }
36048
35936
  if (resultSize.rows > rows) {
36049
35937
  const padRows = resultSize.rows - rows;
36050
- const emptyRow = Array(resultSize.columns).fill(undefined);
35938
+ const emptyRow = Array(resultSize.columns).fill(EmptyCell$1);
36051
35939
  padded = [...padded, ...Array(padRows).fill(emptyRow)];
36052
35940
  }
36053
35941
  return padded;
@@ -40501,7 +40389,8 @@ const ActiveCell = props => {
40501
40389
  buttonVariant: "tertiary",
40502
40390
  deleteButton: true,
40503
40391
  addAttachmentButton: true,
40504
- isInfoIconRequired: false
40392
+ isInfoIconRequired: false,
40393
+ truncateMaxLimit: dimensions.width - 60
40505
40394
  }) : mode === 'edit' && active ? jsxRuntime.jsx(DataEditor, {
40506
40395
  row: active.row,
40507
40396
  column: active.column,
@@ -56837,6 +56726,8 @@ const Editor = /*#__PURE__*/React.forwardRef(({
56837
56726
  }, ref) => {
56838
56727
  const editorRef = React.useRef(null);
56839
56728
  const decorationsRef = React.useRef([]);
56729
+ const varRef = React.useRef(null);
56730
+ const filterVarRef = React.useRef(null);
56840
56731
  const [currentLine, setCurrentLine] = React.useState(0);
56841
56732
  const [showDropdown, setShowDropdown] = React.useState(false);
56842
56733
  const [dropdownPosition, setDropdownPosition] = React.useState({
@@ -56857,19 +56748,21 @@ const Editor = /*#__PURE__*/React.forwardRef(({
56857
56748
  if (!position || !model) return;
56858
56749
  const currentLineContent = model.getLineContent(position.lineNumber);
56859
56750
  const columnIndex = position.column - 2;
56860
- if (currentLineContent[columnIndex] === '$') {
56861
- const match = currentLineContent.match(/ff\.(GLOBAL|PROJECT_ENVIRONMENT)\.(get|set)\(\$/);
56862
- if (isRequisiteType) {
56863
- editor.executeEdits('', [{
56864
- range: new monaco.Range(position.lineNumber, position.column - 1, position.lineNumber, position.column),
56865
- text: ''
56866
- }]);
56867
- }
56868
- if (match) {
56869
- const variableScope = match[1];
56870
- setFilteredVariableOptions(variableOptionsList.filter(v => v.type === variableScope));
56751
+ if (currentLineContent[varRef.current ?? columnIndex] === '$') {
56752
+ if (varRef.current === null) {
56753
+ varRef.current = columnIndex;
56754
+ }
56755
+ filterVarRef.current = currentLineContent.slice(varRef.current + 1, columnIndex);
56756
+ const filteredVariable = variableOptionsList.filter(e => e?.name.toLowerCase().includes(filterVarRef.current?.toLowerCase()));
56757
+ if (filteredVariable.length) {
56758
+ setFilteredVariableOptions(filteredVariable);
56871
56759
  } else {
56872
- setFilteredVariableOptions(variableOptionsList);
56760
+ setFilteredVariableOptions([]);
56761
+ if (varRef?.current !== columnIndex && currentLineContent[columnIndex] === ' ') {
56762
+ varRef.current = null;
56763
+ filterVarRef.current = null;
56764
+ setShowDropdown(false);
56765
+ }
56873
56766
  }
56874
56767
  const visiblePosition = editor.getScrolledVisiblePosition(position);
56875
56768
  const editorDomNode = editor.getDomNode();
@@ -56883,15 +56776,15 @@ const Editor = /*#__PURE__*/React.forwardRef(({
56883
56776
  const dropdownHeight = 150;
56884
56777
  let dropdownTop = top;
56885
56778
  let dropdownLeft = left;
56886
- if (dropdownTop + dropdownHeight > editorHeight) {
56887
- dropdownTop -= dropdownHeight;
56779
+ if (dropdownTop + dropdownHeight > editorHeight - dropdownHeight + 100) {
56780
+ dropdownTop -= Math.floor(dropdownHeight / 2) + dropdownHeight + 25;
56888
56781
  } else {
56889
- dropdownTop += 20;
56782
+ dropdownTop -= 5;
56890
56783
  }
56891
56784
  if (left > editorRect.width * 0.75) {
56892
- dropdownLeft -= 150;
56893
- } else if (left < editorRect.width * 0.25) {
56894
- dropdownLeft += 20;
56785
+ dropdownLeft -= dropdownHeight;
56786
+ } else if (left < editorRect.width * 0.5 + dropdownHeight) {
56787
+ dropdownLeft = dropdownLeft + 35;
56895
56788
  }
56896
56789
  setDropdownPosition({
56897
56790
  top: dropdownTop,
@@ -56900,6 +56793,8 @@ const Editor = /*#__PURE__*/React.forwardRef(({
56900
56793
  setShowDropdown(true);
56901
56794
  } else {
56902
56795
  setShowDropdown(false);
56796
+ varRef.current = null;
56797
+ filterVarRef.current = null;
56903
56798
  }
56904
56799
  });
56905
56800
  // Detect paste events
@@ -56991,15 +56886,20 @@ const Editor = /*#__PURE__*/React.forwardRef(({
56991
56886
  const editor = editorRef.current;
56992
56887
  const position = editor.getPosition();
56993
56888
  if (position) {
56889
+ const val = `{${type}${type === 'FLV_for:' ? '' : '_'}${suggestion}}`;
56890
+ const currentPostion = varRef?.current ?? 0;
56994
56891
  editor.executeEdits('', [{
56995
56892
  range: {
56996
56893
  startLineNumber: position.lineNumber,
56997
- startColumn: position.column,
56894
+ startColumn: currentPostion + 2,
56998
56895
  endLineNumber: position.lineNumber,
56999
- endColumn: position.column
56896
+ endColumn: currentPostion + (position.column - currentPostion)
57000
56897
  },
57001
- text: `{${type}${type === 'FLV_for:' ? '' : '_'}${suggestion}}`
56898
+ text: val,
56899
+ forceMoveMarkers: true
57002
56900
  }]);
56901
+ filterVarRef.current = null;
56902
+ varRef.current = null;
57003
56903
  setShowDropdown(false);
57004
56904
  }
57005
56905
  }
@@ -57010,15 +56910,19 @@ const Editor = /*#__PURE__*/React.forwardRef(({
57010
56910
  const position = editor.getPosition();
57011
56911
  if (position) {
57012
56912
  const textToInsert = `'${option.name}'`;
56913
+ const currentPostion = varRef?.current ?? 0;
57013
56914
  editor.executeEdits('', [{
57014
56915
  range: {
57015
56916
  startLineNumber: position.lineNumber,
57016
- startColumn: position.column,
56917
+ startColumn: currentPostion + 1,
57017
56918
  endLineNumber: position.lineNumber,
57018
- endColumn: position.column
56919
+ endColumn: currentPostion + (position.column - currentPostion)
57019
56920
  },
57020
- text: textToInsert
56921
+ text: textToInsert,
56922
+ forceMoveMarkers: true
57021
56923
  }]);
56924
+ filterVarRef.current = null;
56925
+ varRef.current = null;
57022
56926
  setShowDropdown(false);
57023
56927
  }
57024
56928
  } else {
@@ -57127,7 +57031,7 @@ const Editor = /*#__PURE__*/React.forwardRef(({
57127
57031
  }), showDropdown && dropdownPosition && showVariableDropdown && jsxRuntime.jsx(VariableDropdown, {
57128
57032
  position: "absolute",
57129
57033
  width: "300px",
57130
- height: "300px",
57034
+ height: "210px",
57131
57035
  optionsList: filteredVariableOptions,
57132
57036
  onSelectVariable: handleSelectVariable,
57133
57037
  dropdownPosition: dropdownPosition
@@ -115172,6 +115076,7 @@ exports.SCRIPT_REGEX = SCRIPT_REGEX;
115172
115076
  exports.SSN_REGEX = SSN_REGEX;
115173
115077
  exports.START_END_WHITESPACE_REGEX = START_END_WHITESPACE_REGEX;
115174
115078
  exports.STEP_GROUP_NAME_REGEX = STEP_GROUP_NAME_REGEX;
115079
+ exports.ScriptGenerationLoader = StepResultStats;
115175
115080
  exports.ScriptSwitchButton = ScriptSwitchButton;
115176
115081
  exports.Search = Search;
115177
115082
  exports.Select = Select$1;