oolib 2.187.9 → 2.187.11

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 (35) hide show
  1. package/dist/components/AudioInput/index.js +4 -0
  2. package/dist/components/Banners/index.js +7 -3
  3. package/dist/components/DatePicker/index.js +3 -2
  4. package/dist/components/Dropdowns/utils/useHideShowOptions.js +1 -1
  5. package/dist/components/Dropdowns/utils/useKeyboardControl.js +2 -1
  6. package/dist/components/IFrameInput/utils/DisplayCoachmark.js +2 -1
  7. package/dist/components/ImageInput/ImageInputContext.js +4 -3
  8. package/dist/components/ImageInput/comps/GallerySlider/comps/SliderShell/index.js +3 -3
  9. package/dist/components/ImageInput/comps/GallerySlider/index.js +3 -6
  10. package/dist/components/ImageInput/comps/ImageEditor/index.js +2 -7
  11. package/dist/components/ImageInput/comps/ImageEditor/utils/useReorientImage/changeImageOrientation.js +0 -4
  12. package/dist/components/Lexical/Plugins/TableCellResizer/index.js +3 -2
  13. package/dist/components/Modals/Modal/index.js +2 -1
  14. package/dist/components/Modals/ModalConfirm/index.js +2 -1
  15. package/dist/components/PDFInput/index.js +4 -0
  16. package/dist/components/SimpleTable/index.js +3 -2
  17. package/dist/components/TabBar/index.js +4 -34
  18. package/dist/components/VideoInput/index.js +4 -0
  19. package/dist/stories/Oolib/components/Dropdowns.stories.js +2 -1
  20. package/dist/stories/Oolib/components/SimpleTable.stories.js +3 -3
  21. package/dist/stories/Oolib/components/Tooltip.stories.js +4 -35
  22. package/dist/stories/v2/components/Dropdowns.stories.js +2 -1
  23. package/dist/utils/customHooks/useContainerQuery.js +3 -2
  24. package/dist/utils/customHooks/useHandleClickOutside.js +2 -1
  25. package/dist/utils/customHooks/useScreenWidth.js +3 -2
  26. package/dist/utils/useStyleUpdateAfterToggleTransition.js +3 -2
  27. package/dist/v2/components/BarChart/index.js +3 -2
  28. package/dist/v2/components/DatePicker/utils/useDatePickerState.js +5 -4
  29. package/dist/v2/components/Dropdowns/utils/useHideShowOptions.js +1 -1
  30. package/dist/v2/components/Dropdowns/utils/useKeyboardControl.js +2 -1
  31. package/dist/v2/components/HomeCover/comps/ImageSwitcher/index.js +3 -2
  32. package/dist/v2/components/ImagePlaceholder/index.js +3 -2
  33. package/dist/v2/themes/utils/createSafeCleanup.d.ts +1 -0
  34. package/dist/v2/themes/utils/createSafeCleanup.js +18 -0
  35. package/package.json +1 -1
@@ -66,6 +66,7 @@ var AudioAction_1 = require("./comps/AudioAction");
66
66
  var AudioPlayer_1 = require("./comps/AudioPlayer");
67
67
  var styled_js_1 = require("./styled.js");
68
68
  var FileUploadWrapper_1 = require("../FileUploadWrapper");
69
+ var createSafeCleanup_1 = require("../../v2/themes/utils/createSafeCleanup");
69
70
  function AudioInput(_a) {
70
71
  var id = _a.id, value = _a.value, parentOnChange = _a.onChange, readOnly = _a.readOnly, invert = _a.invert, isInRTE = _a.isInRTE, files = _a.files, props = __rest(_a, ["id", "value", "onChange", "readOnly", "invert", "isInRTE", "files"]);
71
72
  var audioData = value || [];
@@ -102,6 +103,9 @@ function AudioInput(_a) {
102
103
  if (files) {
103
104
  handleUpload({ files: files });
104
105
  }
106
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
107
+ //
108
+ });
105
109
  }, []);
106
110
  return (react_1.default.createElement(react_1.Fragment, null,
107
111
  react_1.default.createElement(BlockLabel_1.BlockLabel, __assign({}, (0, getBlockLabelProps_1.getBlockLabelProps)(props))),
@@ -51,6 +51,7 @@ var react_router_dom_1 = require("react-router-dom");
51
51
  var Buttons_1 = require("../Buttons");
52
52
  var icons_1 = require("../../icons");
53
53
  var Typo_1 = require("../Typo");
54
+ var createSafeCleanup_1 = require("../../v2/themes/utils/createSafeCleanup");
54
55
  var ICONS = {
55
56
  red: "XCircle",
56
57
  green: "CheckCircle",
@@ -93,10 +94,10 @@ var Banner = function (_a) {
93
94
  remove(null, id);
94
95
  }, timeOut);
95
96
  }
96
- return function () {
97
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
97
98
  if (timer)
98
99
  clearTimeout(timer);
99
- };
100
+ });
100
101
  }, [cta, id, msg, timeOut]);
101
102
  var remove = function (e, id) {
102
103
  setHeight(0);
@@ -139,12 +140,15 @@ var BannerAlert = function (_a) {
139
140
  var BANNER_STATE = _a.BANNER_STATE, REMOVE_ALERT_BANNER = _a.REMOVE_ALERT_BANNER;
140
141
  var _c = (0, react_1.useState)(0), top = _c[0], setTop = _c[1];
141
142
  (0, react_1.useEffect)(function () {
142
- setTimeout(function () {
143
+ var timerId = setTimeout(function () {
143
144
  var ele = document.getElementById("bannerInfo");
144
145
  if (ele) {
145
146
  setTop(ele.offsetHeight);
146
147
  }
147
148
  }, 100);
149
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
150
+ clearTimeout(timerId);
151
+ });
148
152
  }, []);
149
153
  return (react_1.default.createElement(styled_1.BannerAlertStyled, { top: top }, (_b = BANNER_STATE === null || BANNER_STATE === void 0 ? void 0 : BANNER_STATE.alertState) === null || _b === void 0 ? void 0 : _b.map(function (e) { return (react_1.default.createElement(Banner, { key: e.id, id: e.id, color: e.color, msg: e.msg, cta: e.cta, handleRemove: REMOVE_ALERT_BANNER, timeOut: e.timeOut, showIcon: e.showIcon, hideCloseButton: e.hideCloseButton })); })));
150
154
  };
@@ -56,6 +56,7 @@ var styled_1 = require("./styled");
56
56
  var Buttons_1 = require("../Buttons");
57
57
  var mixins_1 = require("../../themes/mixins");
58
58
  var Modal_1 = require("../Modals/Modal");
59
+ var createSafeCleanup_1 = require("../../v2/themes/utils/createSafeCleanup");
59
60
  var white = themes_1.colors.white, greyColor40 = themes_1.colors.greyColor40;
60
61
  var months = [
61
62
  "January",
@@ -114,9 +115,9 @@ function DatePicker(props) {
114
115
  // Add an event listener to the 'scroll' event on the 'window'.
115
116
  // When the user scrolls the page, the 'handleVerticalPosDebounced' function will be called.
116
117
  window.addEventListener("scroll", handleVerticalPosDebounced);
117
- return function () {
118
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
118
119
  window.removeEventListener("scroll", handleVerticalPosDebounced);
119
- };
120
+ });
120
121
  }, []);
121
122
  (0, react_1.useEffect)(function () {
122
123
  if (readOnly)
@@ -14,7 +14,7 @@ var useHideShowOptions = function (options) {
14
14
  (0, react_1.useEffect)(function () {
15
15
  !isFirstMount.current && broadcastShowOptions && broadcastShowOptions(showOptions);
16
16
  }, [showOptions]);
17
- (0, react_1.useEffect)(function () { return isFirstMount.current = false; }, []);
17
+ (0, react_1.useEffect)(function () { isFirstMount.current = false; }, []);
18
18
  return { showOptions: showOptions, handleHideOptions: handleHideOptions, handleShowOptions: handleShowOptions };
19
19
  };
20
20
  exports.useHideShowOptions = useHideShowOptions;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useKeyboardControl = void 0;
4
4
  var react_1 = require("react");
5
5
  var getKeyCode_1 = require("../../../utils/getKeyCode");
6
+ var createSafeCleanup_1 = require("../../../v2/themes/utils/createSafeCleanup");
6
7
  var useKeyboardControl = function (_a) {
7
8
  var showOptions = _a.showOptions, handleHideOptions = _a.handleHideOptions, optionsWrapperRef = _a.optionsWrapperRef, handleSelect = _a.handleSelect, options = _a.options, searchString = _a.searchString, id = _a.id;
8
9
  var _b = (0, react_1.useState)(-1), focussedOp = _b[0], setFocussedOp = _b[1];
@@ -47,7 +48,7 @@ var useKeyboardControl = function (_a) {
47
48
  }
48
49
  };
49
50
  window.addEventListener('keydown', handleKeyDown);
50
- return function () { return window.removeEventListener('keydown', handleKeyDown); };
51
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () { return window.removeEventListener('keydown', handleKeyDown); });
51
52
  });
52
53
  var scrollFocussedOpIntoView = function (el) {
53
54
  var _a = el.getBoundingClientRect(), elBottom = _a.bottom, elTop = _a.top;
@@ -40,6 +40,7 @@ var react_1 = __importStar(require("react"));
40
40
  var config_1 = __importDefault(require("../../Coachmark/config"));
41
41
  var index_1 = require("../../Coachmark/index");
42
42
  var mixins_1 = require("../../../themes/mixins");
43
+ var createSafeCleanup_1 = require("../../../v2/themes/utils/createSafeCleanup");
43
44
  var DisplayCoachmark = function (_a, ref) {
44
45
  var user = _a.user, url = _a.url, setUrl = _a.setUrl;
45
46
  var _b = (0, index_1.useCoachmark)({ coachmarks: config_1.default.H5PEmbed, compIdentifier: "H5PEmbed" }), activeMark = _b.activeMark, rank = _b.rank, removeCoachmark = _b.removeCoachmark, showNextMark = _b.showNextMark, useReliableRef = _b.useReliableRef;
@@ -85,7 +86,7 @@ var DisplayCoachmark = function (_a, ref) {
85
86
  };
86
87
  var adjustOptimized_1 = optimizeForResize(adjustSlidesHeight, 100);
87
88
  window.addEventListener('resize', adjustOptimized_1);
88
- return function () { return window.removeEventListener('resize', adjustOptimized_1); };
89
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () { return window.removeEventListener('resize', adjustOptimized_1); });
89
90
  }
90
91
  }, []);
91
92
  return (react_1.default.createElement(index_1.Coachmark, { active: (user === null || user === void 0 ? void 0 : user.coachmarkChecklist.H5PEmbed) === false && url && url.includes("h5p"), rank: rank, observerThreshold: 0.3, currentMark: activeMark, handleNext: showNextMarkOnTilt, handleSkip: removeCoachmark }));
@@ -58,6 +58,7 @@ var react_1 = __importStar(require("react"));
58
58
  var styled_components_1 = require("styled-components");
59
59
  var useFakeUploadMedia_1 = require("../../utilsOolib/useFakeUploadMedia");
60
60
  var bannerContext_1 = require("../Banners/bannerContext");
61
+ var createSafeCleanup_1 = require("../../v2/themes/utils/createSafeCleanup");
61
62
  exports.ImageInputContext = (0, react_1.createContext)();
62
63
  var ImageInputContextProvider = function (_a) {
63
64
  var children = _a.children, value = _a.value, multiple = _a.multiple, allowedFormats = _a.allowedFormats, formatConvertConfig = _a.formatConvertConfig, folderName = _a.folderName, bucketEnv = _a.bucketEnv, onChange = _a.onChange, id = _a.id, aspectRatio = _a.aspectRatio, readOnly = _a.readOnly, enableCaptions = _a.enableCaptions, defaultImageSpread = _a.defaultImageSpread, invert = _a.invert, containerShape = _a.containerShape, stretchToFullHeight = _a.stretchToFullHeight, dropzoneLabel = _a.dropzoneLabel, dropzoneSublabel = _a.dropzoneSublabel, disableImageBorder = _a.disableImageBorder, omitEditorTools = _a.omitEditorTools, files = _a.files, showOptionalLabelInDropzone = _a.showOptionalLabelInDropzone, isRequired = _a.isRequired, isInRTE = _a.isInRTE, showImageUploadCaution = _a.showImageUploadCaution;
@@ -144,8 +145,10 @@ var ImageInputContextProvider = function (_a) {
144
145
  }
145
146
  });
146
147
  }
148
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
149
+ //
150
+ });
147
151
  }, []);
148
- console.log({ outside_value: value });
149
152
  // Create a ref to always track the latest value
150
153
  var valueRef = (0, react_1.useRef)(value);
151
154
  // Keep the ref updated whenever value changes
@@ -155,11 +158,9 @@ var ImageInputContextProvider = function (_a) {
155
158
  var handleSingleImageDataChange = function (_a) {
156
159
  var publicUrl = _a.publicUrl, imageData = _a.imageData;
157
160
  //publicUrl is used as an 'id' identifier
158
- console.log({ publicUrl: publicUrl, imageData: imageData, valueToUpdate: JSON.parse(JSON.stringify(value)) });
159
161
  var currentValue = valueRef.current;
160
162
  var newValue = __spreadArray([], currentValue, true);
161
163
  var imgIdxToReplace = newValue.findIndex(function (d) { return d.publicUrl === publicUrl; });
162
- console.log({ imgIdxToReplace: imgIdxToReplace, valueAfterFindIndex: JSON.parse(JSON.stringify(value)) });
163
164
  newValue[imgIdxToReplace] = imageData;
164
165
  onChange(id, newValue);
165
166
  };
@@ -41,6 +41,7 @@ var calcAspectRatio_1 = require("../../../ImageEditor/utils/calcAspectRatio");
41
41
  var themes_1 = require("../../../../../../themes");
42
42
  var icons_1 = require("../../../../../../icons");
43
43
  var Typo_1 = require("../../../../../Typo");
44
+ var createSafeCleanup_1 = require("../../../../../../v2/themes/utils/createSafeCleanup");
44
45
  var greyColor80 = themes_1.colors.greyColor80;
45
46
  var CaretLeft = icons_1.icons.CaretLeft, CaretRight = icons_1.icons.CaretRight;
46
47
  var SliderShell = function (_a) {
@@ -58,7 +59,6 @@ var SliderShell = function (_a) {
58
59
  (0, react_1.useEffect)(function () {
59
60
  updateHeight();
60
61
  window.addEventListener('resize', updateHeight);
61
- // console.log({ imageMinusCaptionHeight, wrapperRef })
62
62
  var intervalId = setInterval(function () {
63
63
  // to avoid issues in cases where height is initally 0 because parent block has display:hidden condition on initial render
64
64
  if (!isHeightSet) {
@@ -68,10 +68,10 @@ var SliderShell = function (_a) {
68
68
  clearInterval(intervalId);
69
69
  }
70
70
  }, 100);
71
- return function () {
71
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
72
72
  window.removeEventListener('resize', updateHeight);
73
73
  intervalId && clearInterval(intervalId);
74
- };
74
+ });
75
75
  }, []);
76
76
  return (react_1.default.createElement(styled_1.StyledFlexWrapper, { ref: wrapperRef },
77
77
  value.map(function (v, idx) { return (react_1.default.createElement(styled_1.StyledFlexItem, { key: (v === null || v === void 0 ? void 0 : v.publicUrl) || idx, marginLeft: idx === 0 && activeIdx * -100 + "%" }, render(v, idx) /* explicitly called, cuz we want an error to throw if render prop aint passed thru */)); }),
@@ -57,7 +57,7 @@ var useSwipe_1 = require("../../../../utils/customHooks/useSwipe");
57
57
  var GallerySlider = function () {
58
58
  var _a = (0, ImageInputContext_1.useImageInputContext)(), value = _a.value, noOfImagesUploading = _a.noOfImagesUploading, invert = _a.invert;
59
59
  var _b = (0, react_1.useState)(0), activeIdx = _b[0], setActiveIdx = _b[1];
60
- (0, react_1.useEffect)(function () { return setActiveIdx(0); }, [value === null || value === void 0 ? void 0 : value.length]); // reset the activeidx with uploading new images(focus on the newly added Images)
60
+ (0, react_1.useEffect)(function () { setActiveIdx(0), [value === null || value === void 0 ? void 0 : value.length]; }, []); // reset the activeidx with uploading new images(focus on the newly added Images)
61
61
  var uploadingPlaceholders = (0, makeArrayFromLength_1.makeArrayFromLength)(noOfImagesUploading).map(function (d) { return undefined; });
62
62
  var isTouchDevice = (0, react_1.useRef)('ontouchstart' in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0);
63
63
  var handleDragStart = (0, useSwipe_1.useSwipe)({
@@ -70,10 +70,7 @@ var GallerySlider = function () {
70
70
  }).handleDragStart;
71
71
  return (react_1.default.createElement(styled_1.StyledGallery, { invert: invert },
72
72
  react_1.default.createElement(GalleryThumbnails_1.GalleryThumbnails, { setActiveIdx: setActiveIdx, activeIdx: activeIdx }),
73
- (value === null || value === void 0 ? void 0 : value.length) > 0 ? (react_1.default.createElement(SliderShell_1.SliderShell, { value: __spreadArray(__spreadArray([], uploadingPlaceholders, true), value, true), activeIdx: activeIdx, setActiveIdx: setActiveIdx, render: function (v, idx) {
74
- console.log({ key: (v === null || v === void 0 ? void 0 : v.publicUrl) || idx, });
75
- return (react_1.default.createElement(SingleImageInput_1.SingleImageInput, { key: (v === null || v === void 0 ? void 0 : v.publicUrl) || idx,
76
- value: v, handleDragStart: handleDragStart }));
77
- } })) : (react_1.default.createElement(Placeholder_1.default, null))));
73
+ (value === null || value === void 0 ? void 0 : value.length) > 0 ? (react_1.default.createElement(SliderShell_1.SliderShell, { value: __spreadArray(__spreadArray([], uploadingPlaceholders, true), value, true), activeIdx: activeIdx, setActiveIdx: setActiveIdx, render: function (v, idx) { return (react_1.default.createElement(SingleImageInput_1.SingleImageInput, { key: (v === null || v === void 0 ? void 0 : v.publicUrl) || idx,
74
+ value: v, handleDragStart: handleDragStart })); } })) : (react_1.default.createElement(Placeholder_1.default, null))));
78
75
  };
79
76
  exports.default = GallerySlider;
@@ -164,19 +164,14 @@ function ImageEditor(_a) {
164
164
  padding: readOnly ? "1rem" : "2rem",
165
165
  backgroundColor: invert ? themes_1.colors.greyColor90 : themes_1.colors.greyColor5,
166
166
  } }, !LexicalTextEditor
167
- ? react_1.default.createElement(TextInputs_1.TextInput, { value: imageData.caption, onChange: function (id, val) {
168
- console.log('in lex caption change handler', { imageData: imageData, caption: val, publicUrl: publicUrl });
167
+ ? react_1.default.createElement(TextInputs_1.TextInput //basically on oolib it renders this for preview purposes.
168
+ , { value: imageData.caption, onChange: function (id, val) {
169
169
  handleSingleImageDataChange({
170
170
  publicUrl: publicUrl,
171
171
  imageData: __assign(__assign({}, imageData), { caption: val }),
172
172
  });
173
173
  } })
174
- // renderRTEPlaceholderForOolibPreview({
175
- // width: '100%',
176
- // height: '30px'
177
- // })
178
174
  : react_1.default.createElement(LexicalTextEditor, { variant: 'simple', disableNewline: true, invert: invert, placeholder: "type caption for image (optional)", readOnly: readOnly, charLimit: 100, typo: "SANS_3", placeholderColor: invert ? themes_1.colors.greyColor70 : themes_1.colors.greyColor40, value: imageData.caption, onChange: function (id, val) {
179
- console.log('in lex caption change handler', { imageData: imageData, caption: val, publicUrl: publicUrl });
180
175
  handleSingleImageDataChange({
181
176
  publicUrl: publicUrl,
182
177
  imageData: __assign(__assign({}, imageData), { caption: val }),
@@ -22,7 +22,6 @@ var changeImageOrientation = function (_a) {
22
22
  { deg: -90, orientation: 8 },
23
23
  //later : permutations and combinations of these can enable flip
24
24
  ];
25
- // console.log({imageRotate})
26
25
  var orientationToSet = degToOrientationValueMap.find(function (d) { return d.deg === (imageRotate % 360); } //so that we bring all numbers within the range of -360 & 360
27
26
  ).orientation;
28
27
  // set proper canvas dimensions before transform & export
@@ -62,8 +61,6 @@ var changeImageOrientation = function (_a) {
62
61
  }
63
62
  // draw image
64
63
  ctx.drawImage(img, 0, 0);
65
- // console.log({newUrl: 'newUrl'})
66
- // console.log({newUrl: canvas.toDataURL()})
67
64
  // export base64
68
65
  callback({
69
66
  reorientedUrl: canvas.toDataURL(),
@@ -71,6 +68,5 @@ var changeImageOrientation = function (_a) {
71
68
  imageHeight: canvas.height
72
69
  });
73
70
  };
74
- // console.log({ srcUrl });
75
71
  };
76
72
  exports.changeImageOrientation = changeImageOrientation;
@@ -54,6 +54,7 @@ var React = __importStar(require("react"));
54
54
  var react_1 = require("react");
55
55
  var react_dom_1 = require("react-dom");
56
56
  var index_styled_1 = require("./index.styled");
57
+ var createSafeCleanup_1 = require("../../../../v2/themes/utils/createSafeCleanup");
57
58
  var MIN_ROW_HEIGHT = 33;
58
59
  var MIN_COLUMN_WIDTH = 50;
59
60
  function TableCellResizer(_a) {
@@ -123,9 +124,9 @@ function TableCellResizer(_a) {
123
124
  }, 0);
124
125
  };
125
126
  document.addEventListener('mousemove', onMouseMove);
126
- return function () {
127
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
127
128
  document.removeEventListener('mousemove', onMouseMove);
128
- };
129
+ });
129
130
  }, [activeCell, draggingDirection, editor, resetState]);
130
131
  var isHeightChanging = function (direction) {
131
132
  if (direction === 'bottom') {
@@ -55,6 +55,7 @@ var ModalHeaderStyle2_1 = require("./comps/ModalHeaderStyle2");
55
55
  var styled_1 = require("./styled");
56
56
  var Buttons_1 = require("../../Buttons");
57
57
  var Divider_1 = require("../../Divider");
58
+ var createSafeCleanup_1 = require("../../../v2/themes/utils/createSafeCleanup");
58
59
  /**
59
60
  * @component Renders a modal component with customizable title, content, and actions.
60
61
  *
@@ -89,7 +90,7 @@ var Modal = function (_a) {
89
90
  var _o = (0, react_1.useState)(endAnimPos), animPos = _o[0], setAnimPos = _o[1];
90
91
  (0, react_1.useEffect)(function () {
91
92
  document.body.style.overflow = "hidden";
92
- return function () { document.body.style.overflow = "unset"; };
93
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () { document.body.style.overflow = "unset"; });
93
94
  }, []);
94
95
  var genHeader = function () {
95
96
  var headerStyles = {
@@ -41,6 +41,7 @@ var useScreenWidth_1 = require("../../../utils/customHooks/useScreenWidth");
41
41
  var Buttons_1 = require("../../Buttons");
42
42
  var Typo_1 = require("../../Typo");
43
43
  var styled_1 = require("./styled");
44
+ var createSafeCleanup_1 = require("../../../v2/themes/utils/createSafeCleanup");
44
45
  /**
45
46
  * @component Renders a modal confirmation component with customizable text, buttons and styling.
46
47
  *
@@ -65,7 +66,7 @@ var ModalConfirm = function (_a) {
65
66
  var _g = (0, react_1.useState)(endAnimPos), animPos = _g[0], setAnimPos = _g[1];
66
67
  (0, react_1.useEffect)(function () {
67
68
  document.body.style.overflow = "hidden";
68
- return function () { document.body.style.overflow = "unset"; };
69
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () { document.body.style.overflow = "unset"; });
69
70
  }, []);
70
71
  var SubTitleText = screenWidth >= (0, mixins_1.getBreakPoint)('sm') ? Typo_1.SANS_4 : Typo_1.SANS_3;
71
72
  var genModalContents = function () { return (react_1.default.createElement(react_1.Fragment, null,
@@ -74,6 +74,7 @@ var useFakeUploadImpression_1 = require("../../utilsOolib/useFakeUploadImpressio
74
74
  var react_3 = require("react");
75
75
  var PDFActions_1 = require("./comps/PDFActions");
76
76
  var FileUploadWrapper_1 = require("../FileUploadWrapper");
77
+ var createSafeCleanup_1 = require("../../v2/themes/utils/createSafeCleanup");
77
78
  var StyledActionsButtonWrapper = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: absolute;\n right: 0;\n top: 0;\n z-index: 1000;\n margin: 0.5rem;\n"], ["\n position: absolute;\n right: 0;\n top: 0;\n z-index: 1000;\n margin: 0.5rem;\n"])));
78
79
  function PDFInput(_a) {
79
80
  var id = _a.id, parentOnChange = _a.onChange, value = _a.value, files = _a.files, readOnly = _a.readOnly, invert = _a.invert, isInRTE = _a.isInRTE, props = __rest(_a, ["id", "onChange", "value", "files", "readOnly", "invert", "isInRTE"]);
@@ -111,6 +112,9 @@ function PDFInput(_a) {
111
112
  if (files) {
112
113
  handleUpload({ files: files });
113
114
  }
115
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
116
+ //
117
+ });
114
118
  }, []);
115
119
  return (react_1.default.createElement(react_3.Fragment, null,
116
120
  react_1.default.createElement(BlockLabel_1.BlockLabel, __assign({}, (0, getBlockLabelProps_1.getBlockLabelProps)(props), { invert: invert })),
@@ -80,6 +80,7 @@ var DropdownSingle_1 = require("../Dropdowns/DropdownSingle");
80
80
  var TextInputs_1 = require("../TextInputs");
81
81
  var icons_1 = require("../../icons");
82
82
  var Typo2_1 = require("../../v2/components/Typo2");
83
+ var createSafeCleanup_1 = require("../../v2/themes/utils/createSafeCleanup");
83
84
  var ArrowDown = icons_1.icons.ArrowDown;
84
85
  var greyColor100 = themes_1.colors.greyColor100;
85
86
  /**
@@ -138,10 +139,10 @@ function SimpleTable(_a) {
138
139
  (0, react_1.useEffect)(function () {
139
140
  window.addEventListener("mouseup", resetColResizeState);
140
141
  window.addEventListener("mousemove", handleResizeColumn);
141
- return function () {
142
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
142
143
  window.removeEventListener("mousemove", handleResizeColumn);
143
144
  window.removeEventListener("mouseup", resetColResizeState);
144
- };
145
+ });
145
146
  }, [colResizeState]);
146
147
  var CellContentBlocks = {
147
148
  RichTextEditor: RichTextEditor,
@@ -10,42 +10,12 @@ var __assign = (this && this.__assign) || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
- if (k2 === undefined) k2 = k;
15
- var desc = Object.getOwnPropertyDescriptor(m, k);
16
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
- desc = { enumerable: true, get: function() { return m[k]; } };
18
- }
19
- Object.defineProperty(o, k2, desc);
20
- }) : (function(o, m, k, k2) {
21
- if (k2 === undefined) k2 = k;
22
- o[k2] = m[k];
23
- }));
24
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
- Object.defineProperty(o, "default", { enumerable: true, value: v });
26
- }) : function(o, v) {
27
- o["default"] = v;
28
- });
29
- var __importStar = (this && this.__importStar) || (function () {
30
- var ownKeys = function(o) {
31
- ownKeys = Object.getOwnPropertyNames || function (o) {
32
- var ar = [];
33
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
34
- return ar;
35
- };
36
- return ownKeys(o);
37
- };
38
- return function (mod) {
39
- if (mod && mod.__esModule) return mod;
40
- var result = {};
41
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
42
- __setModuleDefault(result, mod);
43
- return result;
44
- };
45
- })();
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
46
16
  Object.defineProperty(exports, "__esModule", { value: true });
47
17
  exports.TabBarStyle2 = exports.TabBarStyle1 = void 0;
48
- var react_1 = __importStar(require("react"));
18
+ var react_1 = __importDefault(require("react"));
49
19
  var useScrollBar_1 = require("../../utils/customHooks/useScrollBar");
50
20
  var Buttons_1 = require("../Buttons");
51
21
  var index_styled_1 = require("./index.styled");
@@ -62,6 +62,7 @@ var VideoActionMenu_1 = require("./comps/VideoActionMenu");
62
62
  var FileUploadWrapper_1 = require("../FileUploadWrapper");
63
63
  var getBlockLabelProps_1 = require("../../utils/getBlockLabelProps");
64
64
  var utils_1 = require("./utils");
65
+ var createSafeCleanup_1 = require("../../v2/themes/utils/createSafeCleanup");
65
66
  function VideoInput(_a) {
66
67
  var id = _a.id, label = _a.label, sublabel = _a.sublabel, isRequired = _a.isRequired, _value = _a.value, onChange = _a.onChange, readOnly = _a.readOnly, lightPlayer = _a.light, _b = _a.enableVideoUpload, enableVideoUpload = _b === void 0 ? false : _b, isInRTE = _a.isInRTE, invert = _a.invert, files = _a.files, // //used by RTEVideoInput
67
68
  width = _a.width, height = _a.height;
@@ -108,6 +109,9 @@ function VideoInput(_a) {
108
109
  if (files) {
109
110
  handleUpload({ files: files });
110
111
  }
112
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
113
+ //cleanup
114
+ });
111
115
  }, []);
112
116
  var createVideoPreview = function (_a) {
113
117
  var _b;
@@ -65,6 +65,7 @@ var Paddings_1 = require("../../../components/Paddings");
65
65
  var themes_1 = require("../../../themes");
66
66
  var Dropdowns_mdx_1 = __importDefault(require("./Dropdowns.mdx"));
67
67
  var icons_1 = require("../../../icons");
68
+ var createSafeCleanup_1 = require("../../../v2/themes/utils/createSafeCleanup");
68
69
  // import { faker } from '@faker-js/faker';
69
70
  // const generateRandomCountry = () => ({
70
71
  // display: faker.address.country(),
@@ -249,7 +250,7 @@ var Dropdowns = function (args) {
249
250
  setOptions(newOptions);
250
251
  }, 2000);
251
252
  // Cleanup the timeout on component unmount
252
- return function () { return clearTimeout(delayOptions); };
253
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () { return clearTimeout(delayOptions); });
253
254
  }, [args.optionDescription, args.optionImage, args.optionIcon, args.colors]);
254
255
  var Comp = args.selection === "single" ? DropdownSingle_1.DropdownSingle : DropdownMulti_1.DropdownMulti;
255
256
  return (react_1.default.createElement("div", { style: { background: args.invert && themes_1.colors.greyColor100 } },
@@ -115,9 +115,9 @@ var SimpleTable = function (args) {
115
115
  value: val,
116
116
  onChange: function (k, v) { return setVal(v); }
117
117
  };
118
- (0, react_1.useEffect)(function () {
119
- console.log({ data: props });
120
- }, [props]);
118
+ // useEffect(() => {
119
+ // console.log({data: props})
120
+ // }, [props])
121
121
  return (react_1.default.createElement("div", { style: { backgroundColor: themes_1.colors.greyColor10 } },
122
122
  react_1.default.createElement(Wrappers_1.Wrapper700, { style: { backgroundColor: 'white' } },
123
123
  react_1.default.createElement(Paddings_1.PaddingTopBottom40, null,
@@ -10,46 +10,15 @@ var __assign = (this && this.__assign) || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
- if (k2 === undefined) k2 = k;
15
- var desc = Object.getOwnPropertyDescriptor(m, k);
16
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
- desc = { enumerable: true, get: function() { return m[k]; } };
18
- }
19
- Object.defineProperty(o, k2, desc);
20
- }) : (function(o, m, k, k2) {
21
- if (k2 === undefined) k2 = k;
22
- o[k2] = m[k];
23
- }));
24
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
- Object.defineProperty(o, "default", { enumerable: true, value: v });
26
- }) : function(o, v) {
27
- o["default"] = v;
28
- });
29
- var __importStar = (this && this.__importStar) || (function () {
30
- var ownKeys = function(o) {
31
- ownKeys = Object.getOwnPropertyNames || function (o) {
32
- var ar = [];
33
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
34
- return ar;
35
- };
36
- return ownKeys(o);
37
- };
38
- return function (mod) {
39
- if (mod && mod.__esModule) return mod;
40
- var result = {};
41
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
42
- __setModuleDefault(result, mod);
43
- return result;
44
- };
45
- })();
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
46
16
  Object.defineProperty(exports, "__esModule", { value: true });
47
17
  exports.Tooltip = void 0;
48
- var react_1 = __importStar(require("react"));
18
+ var react_1 = __importDefault(require("react"));
49
19
  var Tooltip_1 = require("../../../components/Tooltip");
50
20
  // import { ButtonPrimary } from '../components/Buttons';
51
21
  var phosphor_react_1 = require("phosphor-react");
52
- var lodash_1 = require("lodash");
53
22
  var themes_1 = require("../../../themes");
54
23
  exports.default = {
55
24
  title: 'Components/Tooltip',
@@ -61,6 +61,7 @@ var themes_1 = require("../../../themes");
61
61
  var icons_1 = require("../../../icons");
62
62
  var DropdownMulti_1 = require("../../../v2/components/Dropdowns/DropdownMulti");
63
63
  var DropdownSingle_1 = require("../../../v2/components/Dropdowns/DropdownSingle");
64
+ var createSafeCleanup_1 = require("../../../v2/themes/utils/createSafeCleanup");
64
65
  // import { faker } from '@faker-js/faker';
65
66
  // const generateRandomCountry = () => ({
66
67
  // display: faker.address.country(),
@@ -240,7 +241,7 @@ var Dropdowns = function (args) {
240
241
  setOptions(newOptions);
241
242
  }, 2000);
242
243
  // Cleanup the timeout on component unmount
243
- return function () { return clearTimeout(delayOptions); };
244
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () { return clearTimeout(delayOptions); });
244
245
  }, [args.optionDescription, args.optionImage, args.optionIcon, args.colors]);
245
246
  var Comp = args.selection === "single" ? DropdownSingle_1.DropdownSingle : DropdownMulti_1.DropdownMulti;
246
247
  return (react_1.default.createElement("div", { style: { background: args.invert && themes_1.colors.greyColor100 } },
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useContainerQuery = void 0;
4
4
  var mixins_1 = require("../../themes/mixins");
5
5
  var react_1 = require("react");
6
+ var createSafeCleanup_1 = require("../../v2/themes/utils/createSafeCleanup");
6
7
  var useContainerQuery = function (options) {
7
8
  if (options === void 0) { options = {}; }
8
9
  var enabled = options.enabled;
@@ -19,11 +20,11 @@ var useContainerQuery = function (options) {
19
20
  if (ref.current) {
20
21
  resizeObserver.observe(ref.current);
21
22
  }
22
- return function () {
23
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
23
24
  if (ref.current) {
24
25
  resizeObserver.unobserve(ref.current);
25
26
  }
26
- };
27
+ });
27
28
  }, [ref]);
28
29
  //if container queries are written for multiple breakpoints
29
30
  //then they must be written in the order of small to big.
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useHandleClickOutside = void 0;
4
4
  var react_1 = require("react");
5
5
  var toArray_1 = require("../toArray");
6
+ var createSafeCleanup_1 = require("../../v2/themes/utils/createSafeCleanup");
6
7
  /**
7
8
  *
8
9
  * @param {*} ref can be a ref or an array of refs
@@ -22,7 +23,7 @@ var useHandleClickOutside = function (ref, setShowOptions, options) {
22
23
  };
23
24
  (0, react_1.useEffect)(function () {
24
25
  document.addEventListener('mousedown', handleClickOutside); //its very important for this to be mousedown. 'click' acts unpredictable
25
- return function () { return document.removeEventListener('mousedown', handleClickOutside); };
26
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () { return document.removeEventListener('mousedown', handleClickOutside); });
26
27
  }, [enabled]);
27
28
  };
28
29
  exports.useHandleClickOutside = useHandleClickOutside;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useScreenWidth = void 0;
4
4
  var lodash_1 = require("lodash");
5
5
  var react_1 = require("react");
6
+ var createSafeCleanup_1 = require("../../v2/themes/utils/createSafeCleanup");
6
7
  /**
7
8
  * Custom hook that tracks the screen width and invokes a resize function if provided.
8
9
  *
@@ -19,9 +20,9 @@ var useScreenWidth = function (options) {
19
20
  }, 500);
20
21
  (0, react_1.useEffect)(function () {
21
22
  window.addEventListener('resize', handleResize);
22
- return function () {
23
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
23
24
  window.removeEventListener('resize', handleResize);
24
- };
25
+ });
25
26
  }, [handleResize]);
26
27
  return screenWidth;
27
28
  };
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useStyleUpdateAfterToggleTransition = void 0;
4
4
  var react_1 = require("react");
5
+ var createSafeCleanup_1 = require("../v2/themes/utils/createSafeCleanup");
5
6
  var useStyleUpdateAfterToggleTransition = function (_a) {
6
7
  var styleOptions = _a.styleOptions, // ['hidden', 'visible']
7
8
  _initStyle = _a.initStyle, //hidden
@@ -28,11 +29,11 @@ var useStyleUpdateAfterToggleTransition = function (_a) {
28
29
  setStyle(initStyle.current);
29
30
  }
30
31
  // Cleanup function to clear timeout if component updates/unmounts
31
- return function () {
32
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
32
33
  if (timeoutId) {
33
34
  clearTimeout(timeoutId);
34
35
  }
35
- };
36
+ });
36
37
  }, [toggleState, transitionDuration]);
37
38
  return ({
38
39
  style: style
@@ -64,6 +64,7 @@ var getTotalCount_1 = require("../../../utils/getTotalCount");
64
64
  var CustomizedLabel_1 = require("./comps/CustomizedLabel");
65
65
  var colors_1 = require("../../themes/colors");
66
66
  var CustomTooltip_1 = __importDefault(require("./comps/CustomTooltip"));
67
+ var createSafeCleanup_1 = require("../../themes/utils/createSafeCleanup");
67
68
  var usePrepareData = function (_a) {
68
69
  var _data = _a._data, labelPath = _a.labelPath, valuePath = _a.valuePath, tooltipLabelsMapping = _a.tooltipLabelsMapping, tooltipLabelsPath = _a.tooltipLabelsPath, isBreakdown = _a.isBreakdown, showPercent = _a.showPercent;
69
70
  return (0, react_1.useMemo)(function () {
@@ -214,9 +215,9 @@ var BarChart = function (_a) {
214
215
  };
215
216
  window.addEventListener('mousemove', handleMouseMove);
216
217
  // Clean up
217
- return function () {
218
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
218
219
  window.removeEventListener('mousemove', handleMouseMove);
219
- };
220
+ });
220
221
  }, []);
221
222
  // menu options for grouped and stacked
222
223
  var renderBar = function (stackIndex, lastIndex) {
@@ -13,6 +13,7 @@ var __assign = (this && this.__assign) || function () {
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.useDatePickerState = void 0;
15
15
  var react_1 = require("react");
16
+ var createSafeCleanup_1 = require("../../../themes/utils/createSafeCleanup");
16
17
  var useDatePickerState = function (_a) {
17
18
  var _b = _a.withPortal, withPortal = _b === void 0 ? false : _b, portalId = _a.portalId, onDateSelect = _a.onDateSelect;
18
19
  var _c = (0, react_1.useState)(false), isOpen = _c[0], setIsOpen = _c[1];
@@ -78,17 +79,17 @@ var useDatePickerState = function (_a) {
78
79
  (0, react_1.useEffect)(function () {
79
80
  if (withPortal && portalOpen) {
80
81
  document.addEventListener('mousedown', handleClickOutside);
81
- return function () {
82
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
82
83
  document.removeEventListener('mousedown', handleClickOutside);
83
- };
84
+ });
84
85
  }
85
86
  }, [withPortal, portalOpen, handleClickOutside]);
86
87
  (0, react_1.useEffect)(function () {
87
- return function () {
88
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
88
89
  if (withPortal) {
89
90
  cleanupPortalBackdrop(portalId);
90
91
  }
91
- };
92
+ });
92
93
  }, [withPortal, portalId, cleanupPortalBackdrop]);
93
94
  var datePickerProps = __assign({ open: withPortal ? portalOpen : isOpen, onInputClick: handleInputClick, onChange: handleDateChange }, (withPortal ? {
94
95
  withPortal: true,
@@ -14,7 +14,7 @@ var useHideShowOptions = function (options) {
14
14
  (0, react_1.useEffect)(function () {
15
15
  !isFirstMount.current && broadcastShowOptions && broadcastShowOptions(showOptions);
16
16
  }, [showOptions]);
17
- (0, react_1.useEffect)(function () { return isFirstMount.current = false; }, []);
17
+ (0, react_1.useEffect)(function () { isFirstMount.current = false; }, []);
18
18
  return { showOptions: showOptions, handleHideOptions: handleHideOptions, handleShowOptions: handleShowOptions };
19
19
  };
20
20
  exports.useHideShowOptions = useHideShowOptions;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useKeyboardControl = void 0;
4
4
  var react_1 = require("react");
5
5
  var getKeyCode_1 = require("../../../../utils/getKeyCode");
6
+ var createSafeCleanup_1 = require("../../../themes/utils/createSafeCleanup");
6
7
  var useKeyboardControl = function (_a) {
7
8
  var showOptions = _a.showOptions, handleHideOptions = _a.handleHideOptions, optionsWrapperRef = _a.optionsWrapperRef, handleSelect = _a.handleSelect, options = _a.options, searchString = _a.searchString, id = _a.id;
8
9
  var _b = (0, react_1.useState)(-1), focussedOp = _b[0], setFocussedOp = _b[1];
@@ -47,7 +48,7 @@ var useKeyboardControl = function (_a) {
47
48
  }
48
49
  };
49
50
  window.addEventListener('keydown', handleKeyDown);
50
- return function () { return window.removeEventListener('keydown', handleKeyDown); };
51
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () { return window.removeEventListener('keydown', handleKeyDown); });
51
52
  });
52
53
  var scrollFocussedOpIntoView = function (el) {
53
54
  var _a = el.getBoundingClientRect(), elBottom = _a.bottom, elTop = _a.top;
@@ -47,6 +47,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
47
47
  exports.ImageSwitcher = void 0;
48
48
  var react_1 = __importStar(require("react"));
49
49
  var styled_1 = require("./styled");
50
+ var createSafeCleanup_1 = require("../../../../themes/utils/createSafeCleanup");
50
51
  var ImageSwitcher = function (_a) {
51
52
  var images = _a.images, _b = _a.isDesktop, isDesktop = _b === void 0 ? true : _b, theme = _a.theme;
52
53
  // Common state structure for both desktop and mobile
@@ -76,10 +77,10 @@ var ImageSwitcher = function (_a) {
76
77
  }, 800); // Match transition duration
77
78
  }, 3000);
78
79
  }
79
- return function () {
80
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
80
81
  clearTimeout(timeout);
81
82
  clearInterval(interval);
82
- };
83
+ });
83
84
  }, [isDesktop, images.length]);
84
85
  if (isDesktop) {
85
86
  return (react_1.default.createElement(react_1.default.Fragment, null,
@@ -40,6 +40,7 @@ exports.ImagePlaceholder = void 0;
40
40
  var react_1 = __importStar(require("react"));
41
41
  var gradient_background_jpg_1 = __importDefault(require("../../../assets/images/gradient_background.jpg"));
42
42
  var styled_1 = require("./styled");
43
+ var createSafeCleanup_1 = require("../../themes/utils/createSafeCleanup");
43
44
  var ImagePlaceholder = function (_a) {
44
45
  var title = _a.title, height = _a.height, fontWeight = _a.fontWeight, _b = _a.aspectRatio, aspectRatio = _b === void 0 ? "5/3" : _b, _c = _a.letterSizeMultiplier, letterSizeMultiplier = _c === void 0 ? 1.8 : _c, _d = _a.strechToFullHeight, strechToFullHeight = _d === void 0 ? false : _d, _e = _a.style, style = _e === void 0 ? {} : _e;
45
46
  var containerRef = (0, react_1.useRef)(null);
@@ -55,9 +56,9 @@ var ImagePlaceholder = function (_a) {
55
56
  calculateLetterSize();
56
57
  window.addEventListener('resize', calculateLetterSize);
57
58
  // Cleanup listener
58
- return function () {
59
+ return (0, createSafeCleanup_1.createSafeCleanup)(function () {
59
60
  window.removeEventListener('resize', calculateLetterSize);
60
- };
61
+ });
61
62
  }, []);
62
63
  var colors = [
63
64
  '#9EE4F1',
@@ -0,0 +1 @@
1
+ export function createSafeCleanup(cleanupFn: any): () => void;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createSafeCleanup = void 0;
4
+ var createSafeCleanup = function (cleanupFn) {
5
+ // Return a function that will be called by React when unmounting
6
+ return function () {
7
+ try {
8
+ // Only call the cleanup if it's a function
9
+ if (typeof cleanupFn === 'function') {
10
+ cleanupFn();
11
+ }
12
+ }
13
+ catch (err) {
14
+ console.warn('Error in cleanup function:', err);
15
+ }
16
+ };
17
+ };
18
+ exports.createSafeCleanup = createSafeCleanup;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oolib",
3
- "version": "2.187.9",
3
+ "version": "2.187.11",
4
4
  "description": " OKE Component Library",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",