farm-react 1.0.8 → 1.0.9

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 (142) hide show
  1. package/dist/assets/styles/style.css +3762 -4669
  2. package/dist/assets/styles/style.css.map +1 -1
  3. package/dist/cjs/components/Button.d.ts +3 -3
  4. package/dist/cjs/components/Button.js +7 -4
  5. package/dist/cjs/components/Button.js.map +1 -1
  6. package/dist/cjs/components/Popover.d.ts +56 -0
  7. package/dist/cjs/components/Popover.js +34 -0
  8. package/dist/cjs/components/Popover.js.map +1 -0
  9. package/dist/cjs/components/RadioButtonGroup.d.ts +67 -0
  10. package/dist/cjs/components/RadioButtonGroup.js +141 -0
  11. package/dist/cjs/components/RadioButtonGroup.js.map +1 -0
  12. package/dist/cjs/components/Search.d.ts +6 -0
  13. package/dist/cjs/components/Search.js +11 -0
  14. package/dist/cjs/components/Search.js.map +1 -0
  15. package/dist/cjs/components/Slider/useSlider.js +0 -1
  16. package/dist/cjs/components/Slider/useSlider.js.map +1 -1
  17. package/dist/cjs/components/TextInput.d.ts +10 -7
  18. package/dist/cjs/components/TextInput.js +75 -8
  19. package/dist/cjs/components/TextInput.js.map +1 -1
  20. package/dist/cjs/components/Tooltip.d.ts +32 -0
  21. package/dist/cjs/components/Tooltip.js +35 -0
  22. package/dist/cjs/components/Tooltip.js.map +1 -0
  23. package/dist/cjs/constants/icons.d.ts +3 -0
  24. package/dist/cjs/constants/icons.js +3 -0
  25. package/dist/cjs/constants/icons.js.map +1 -1
  26. package/dist/cjs/helpers/app.d.ts +1 -1
  27. package/dist/cjs/helpers/app.js.map +1 -1
  28. package/dist/cjs/index.d.ts +3 -0
  29. package/dist/cjs/index.js +7 -1
  30. package/dist/cjs/index.js.map +1 -1
  31. package/dist/cjs/subComponent/DateRange.js +2 -0
  32. package/dist/cjs/subComponent/DateRange.js.map +1 -0
  33. package/dist/cjs/subComponent/ToggleButton.d.ts +9 -0
  34. package/dist/cjs/subComponent/ToggleButton.js +19 -0
  35. package/dist/cjs/subComponent/ToggleButton.js.map +1 -0
  36. package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtn.d.ts +43 -0
  37. package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtn.js +43 -0
  38. package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtn.js.map +1 -0
  39. package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtnGroup.d.ts +43 -0
  40. package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtnGroup.js +53 -0
  41. package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtnGroup.js.map +1 -0
  42. package/dist/esm/components/Button.d.ts +3 -3
  43. package/dist/esm/components/Button.js +8 -5
  44. package/dist/esm/components/Button.js.map +1 -1
  45. package/dist/esm/components/Popover.d.ts +56 -0
  46. package/dist/esm/components/Popover.js +32 -0
  47. package/dist/esm/components/Popover.js.map +1 -0
  48. package/dist/esm/components/RadioButtonGroup.d.ts +67 -0
  49. package/dist/esm/components/RadioButtonGroup.js +139 -0
  50. package/dist/esm/components/RadioButtonGroup.js.map +1 -0
  51. package/dist/esm/components/Search.d.ts +6 -0
  52. package/dist/esm/components/Search.js +8 -0
  53. package/dist/esm/components/Search.js.map +1 -0
  54. package/dist/esm/components/Slider/useSlider.js +0 -1
  55. package/dist/esm/components/Slider/useSlider.js.map +1 -1
  56. package/dist/esm/components/TextInput.d.ts +10 -7
  57. package/dist/esm/components/TextInput.js +75 -8
  58. package/dist/esm/components/TextInput.js.map +1 -1
  59. package/dist/esm/components/Tooltip.d.ts +32 -0
  60. package/dist/esm/components/Tooltip.js +33 -0
  61. package/dist/esm/components/Tooltip.js.map +1 -0
  62. package/dist/esm/constants/icons.d.ts +3 -0
  63. package/dist/esm/constants/icons.js +3 -0
  64. package/dist/esm/constants/icons.js.map +1 -1
  65. package/dist/esm/helpers/app.d.ts +1 -1
  66. package/dist/esm/helpers/app.js.map +1 -1
  67. package/dist/esm/index.d.ts +3 -0
  68. package/dist/esm/index.js +3 -0
  69. package/dist/esm/index.js.map +1 -1
  70. package/dist/esm/subComponent/DateRange.js +2 -0
  71. package/dist/esm/subComponent/DateRange.js.map +1 -0
  72. package/dist/esm/subComponent/ToggleButton.d.ts +9 -0
  73. package/dist/esm/subComponent/ToggleButton.js +17 -0
  74. package/dist/esm/subComponent/ToggleButton.js.map +1 -0
  75. package/dist/esm/subComponent/toggleBtnGroup/ToggleBtn.d.ts +43 -0
  76. package/dist/esm/subComponent/toggleBtnGroup/ToggleBtn.js +41 -0
  77. package/dist/esm/subComponent/toggleBtnGroup/ToggleBtn.js.map +1 -0
  78. package/dist/esm/subComponent/toggleBtnGroup/ToggleBtnGroup.d.ts +43 -0
  79. package/dist/esm/subComponent/toggleBtnGroup/ToggleBtnGroup.js +51 -0
  80. package/dist/esm/subComponent/toggleBtnGroup/ToggleBtnGroup.js.map +1 -0
  81. package/dist/package.json +1 -1
  82. package/package.json +2 -1
  83. package/dist/cjs/components/Slider/Slider/SlickSlider.d.ts +0 -74
  84. package/dist/cjs/components/Slider/Slider/SlickSlider.js +0 -212
  85. package/dist/cjs/components/Slider/Slider/SlickSlider.js.map +0 -1
  86. package/dist/cjs/components/Slider/Slider/useCenterMode.d.ts +0 -24
  87. package/dist/cjs/components/Slider/Slider/useCenterMode.js +0 -40
  88. package/dist/cjs/components/Slider/Slider/useCenterMode.js.map +0 -1
  89. package/dist/cjs/components/Slider/Slider/useSlider.d.ts +0 -65
  90. package/dist/cjs/components/Slider/Slider/useSlider.js +0 -164
  91. package/dist/cjs/components/Slider/Slider/useSlider.js.map +0 -1
  92. package/dist/cjs/components/Slider/Slider/useSliderAutoPlay.d.ts +0 -33
  93. package/dist/cjs/components/Slider/Slider/useSliderAutoPlay.js +0 -73
  94. package/dist/cjs/components/Slider/Slider/useSliderAutoPlay.js.map +0 -1
  95. package/dist/cjs/components/Slider/Slider/useSliderBreakpoint.d.ts +0 -38
  96. package/dist/cjs/components/Slider/Slider/useSliderBreakpoint.js +0 -53
  97. package/dist/cjs/components/Slider/Slider/useSliderBreakpoint.js.map +0 -1
  98. package/dist/cjs/components/Slider/Slider/useSliderDimension.d.ts +0 -41
  99. package/dist/cjs/components/Slider/Slider/useSliderDimension.js +0 -91
  100. package/dist/cjs/components/Slider/Slider/useSliderDimension.js.map +0 -1
  101. package/dist/cjs/components/Slider/Slider/useSliderDraggable.d.ts +0 -43
  102. package/dist/cjs/components/Slider/Slider/useSliderDraggable.js +0 -146
  103. package/dist/cjs/components/Slider/Slider/useSliderDraggable.js.map +0 -1
  104. package/dist/cjs/components/Slider/Slider/useSliderNavigation.d.ts +0 -41
  105. package/dist/cjs/components/Slider/Slider/useSliderNavigation.js +0 -136
  106. package/dist/cjs/components/Slider/Slider/useSliderNavigation.js.map +0 -1
  107. package/dist/cjs/components/Slider/Slider/useSliderTransform.d.ts +0 -17
  108. package/dist/cjs/components/Slider/Slider/useSliderTransform.js +0 -71
  109. package/dist/cjs/components/Slider/Slider/useSliderTransform.js.map +0 -1
  110. package/dist/cjs/strings/index.js +0 -2
  111. package/dist/cjs/strings/index.js.map +0 -1
  112. package/dist/esm/components/Slider/Slider/SlickSlider.d.ts +0 -74
  113. package/dist/esm/components/Slider/Slider/SlickSlider.js +0 -209
  114. package/dist/esm/components/Slider/Slider/SlickSlider.js.map +0 -1
  115. package/dist/esm/components/Slider/Slider/useCenterMode.d.ts +0 -24
  116. package/dist/esm/components/Slider/Slider/useCenterMode.js +0 -38
  117. package/dist/esm/components/Slider/Slider/useCenterMode.js.map +0 -1
  118. package/dist/esm/components/Slider/Slider/useSlider.d.ts +0 -65
  119. package/dist/esm/components/Slider/Slider/useSlider.js +0 -162
  120. package/dist/esm/components/Slider/Slider/useSlider.js.map +0 -1
  121. package/dist/esm/components/Slider/Slider/useSliderAutoPlay.d.ts +0 -33
  122. package/dist/esm/components/Slider/Slider/useSliderAutoPlay.js +0 -71
  123. package/dist/esm/components/Slider/Slider/useSliderAutoPlay.js.map +0 -1
  124. package/dist/esm/components/Slider/Slider/useSliderBreakpoint.d.ts +0 -38
  125. package/dist/esm/components/Slider/Slider/useSliderBreakpoint.js +0 -51
  126. package/dist/esm/components/Slider/Slider/useSliderBreakpoint.js.map +0 -1
  127. package/dist/esm/components/Slider/Slider/useSliderDimension.d.ts +0 -41
  128. package/dist/esm/components/Slider/Slider/useSliderDimension.js +0 -89
  129. package/dist/esm/components/Slider/Slider/useSliderDimension.js.map +0 -1
  130. package/dist/esm/components/Slider/Slider/useSliderDraggable.d.ts +0 -43
  131. package/dist/esm/components/Slider/Slider/useSliderDraggable.js +0 -144
  132. package/dist/esm/components/Slider/Slider/useSliderDraggable.js.map +0 -1
  133. package/dist/esm/components/Slider/Slider/useSliderNavigation.d.ts +0 -41
  134. package/dist/esm/components/Slider/Slider/useSliderNavigation.js +0 -134
  135. package/dist/esm/components/Slider/Slider/useSliderNavigation.js.map +0 -1
  136. package/dist/esm/components/Slider/Slider/useSliderTransform.d.ts +0 -17
  137. package/dist/esm/components/Slider/Slider/useSliderTransform.js +0 -69
  138. package/dist/esm/components/Slider/Slider/useSliderTransform.js.map +0 -1
  139. package/dist/esm/strings/index.js +0 -2
  140. package/dist/esm/strings/index.js.map +0 -1
  141. /package/dist/cjs/{strings/index.d.ts → subComponent/DateRange.d.ts} +0 -0
  142. /package/dist/esm/{strings/index.d.ts → subComponent/DateRange.d.ts} +0 -0
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ /**
3
+ * Reusable Popover Component using React Bootstrap
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var tslib_1 = require("tslib");
7
+ var react_1 = tslib_1.__importDefault(require("react"));
8
+ var clsx_1 = require("clsx");
9
+ var react_bootstrap_1 = require("react-bootstrap");
10
+ var helpers_1 = require("../helpers");
11
+ var sizeClasses = {
12
+ sm: 'popover-sm',
13
+ lg: 'popover-lg',
14
+ xl: 'popover-xl',
15
+ };
16
+ function Popover(_a) {
17
+ var classnames = _a.classnames, style = _a.style, attributes = _a.attributes, _b = _a.trigger, trigger = _b === void 0 ? 'click' : _b, _c = _a.placement, placement = _c === void 0 ? 'auto' : _c, title = _a.title, description = _a.description, children = _a.children, _d = _a.show, show = _d === void 0 ? false : _d, overlay = _a.overlay, _e = _a.closeBtn, closeBtn = _e === void 0 ? false : _e, customHeader = _a.customHeader, customFooter = _a.customFooter, _f = _a.rootClose, rootClose = _f === void 0 ? false : _f, _g = _a.backdrop, backdrop = _g === void 0 ? false : _g, handleBackdrop = _a.handleBackdrop, onToggle = _a.onToggle, _h = _a.size, size = _h === void 0 ? 'lg' : _h, rest = _a.rest;
18
+ var _j = (0, helpers_1.destructObj)(classnames), wrapper = _j.wrapper, header = _j.header, descriptionClass = _j.description, titleClass = _j.title, body = _j.body, closeBtnClass = _j.closeBtn, closeBtnIcon = _j.closeBtnIcon, footer = _j.footer;
19
+ var _k = (0, helpers_1.destructObj)(attributes), wrapperAttr = _k.wrapper, headerAttr = _k.header, bodyAttr = _k.body, footerAttr = _k.footer, descriptionAttr = _k.description;
20
+ var _l = (0, helpers_1.destructObj)(style), wrapperStyle = _l.wrapper, headerStyle = _l.header, bodyStyle = _l.body, footerStyle = _l.footer;
21
+ var renderPopover = function (props) { return (react_1.default.createElement(react_bootstrap_1.Popover, tslib_1.__assign({}, props, { className: (0, clsx_1.clsx)(sizeClasses[size], wrapper), style: wrapperStyle }, wrapperAttr),
22
+ (title || description || closeBtn || customHeader) && (react_1.default.createElement("div", tslib_1.__assign({ className: (0, clsx_1.clsx)('popover-header', header), style: headerStyle }, headerAttr), customHeader ? (customHeader) : (react_1.default.createElement(react_1.default.Fragment, null,
23
+ title && react_1.default.createElement("div", { className: (0, clsx_1.clsx)('popover-title', titleClass) }, title),
24
+ description && (react_1.default.createElement("div", tslib_1.__assign({ className: (0, clsx_1.clsx)('popover-description', descriptionClass) }, descriptionAttr), description)),
25
+ closeBtn && (react_1.default.createElement("button", { type: 'button', className: (0, clsx_1.clsx)('popover-close', closeBtnClass), onClick: function () { return onToggle === null || onToggle === void 0 ? void 0 : onToggle(false); } },
26
+ react_1.default.createElement("i", { className: (0, clsx_1.clsx)('bi-x', closeBtnIcon) }))))))),
27
+ react_1.default.createElement("div", tslib_1.__assign({ className: (0, clsx_1.clsx)('popover-body', body), style: bodyStyle }, bodyAttr), typeof overlay === 'function' ? overlay(props) : overlay),
28
+ customFooter && (react_1.default.createElement("div", tslib_1.__assign({ className: (0, clsx_1.clsx)('popover-footer', footer), style: footerStyle }, footerAttr), customFooter)))); };
29
+ return (react_1.default.createElement(react_1.default.Fragment, null,
30
+ backdrop && show && react_1.default.createElement("div", { className: 'popover-backdrop', onClick: handleBackdrop }),
31
+ react_1.default.createElement(react_bootstrap_1.OverlayTrigger, tslib_1.__assign({ trigger: trigger, placement: placement, overlay: renderPopover, show: show, rootClose: rootClose, onToggle: onToggle }, rest), children)));
32
+ }
33
+ exports.default = Popover;
34
+ //# sourceMappingURL=Popover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Popover.js","sourceRoot":"","sources":["../../../src/components/Popover.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,67 @@
1
+ /**
2
+ * -----------------------------------------------------------------------------
3
+ * @component RadioButtonGroup
4
+ * -----------------------------------------------------------------------------
5
+ *
6
+ * @description This component is responsible for rendering group of radio buttons, radio buttons can be rendered using the radioBtns prop.
7
+ * The radioBtns is an array which consists of objects, each object representing a radio button with respective properties.
8
+ * React-Hook-Form can be bind to this component.
9
+ *
10
+ * -----------------------------------------------------------------------------
11
+ * Copyright © 2017-present BookingKoala. All rights reserved.
12
+ * -----------------------------------------------------------------------------
13
+ */
14
+ import { type ChangeEvent, type ReactElement } from 'react';
15
+ import { type ToggleButtonProps } from 'react-bootstrap/ToggleButton';
16
+ import { type Control, type FieldValues, type UseFormReturn } from 'react-hook-form';
17
+ import { type TooltipProps } from 'react-bootstrap';
18
+ import { LabelProps } from './Label';
19
+ interface IconProps {
20
+ icon?: string;
21
+ position?: 'start' | 'end';
22
+ }
23
+ export interface RadioBtn extends ToggleButtonProps {
24
+ label?: string;
25
+ iconProps?: IconProps;
26
+ tooltip?: TooltipProps;
27
+ descProps?: {
28
+ description?: string;
29
+ classname?: string;
30
+ };
31
+ }
32
+ interface Classnames {
33
+ wrapper?: string;
34
+ btnGroup?: string;
35
+ button?: string;
36
+ icon?: string;
37
+ description?: string;
38
+ }
39
+ interface Attributes {
40
+ wrapper?: object;
41
+ btnGroup?: object;
42
+ button?: object;
43
+ description?: object;
44
+ }
45
+ export interface Methods extends Partial<UseFormReturn<FieldValues>> {
46
+ control: Control<FieldValues, unknown>;
47
+ }
48
+ export interface RadioButtonGroupProps {
49
+ disabled?: boolean;
50
+ isSpaced?: boolean;
51
+ vertical?: boolean;
52
+ description?: string;
53
+ gap?: string;
54
+ name?: string;
55
+ size?: 'sm' | 'lg';
56
+ variant?: string;
57
+ value?: string | number;
58
+ attributes?: Attributes;
59
+ classnames?: Classnames;
60
+ labelProps?: LabelProps;
61
+ methods?: Methods;
62
+ radioBtns?: RadioBtn[];
63
+ onChange?: (value: string | number, event?: ChangeEvent<HTMLInputElement>) => void;
64
+ renderOptions?: (btnContent: RadioBtn) => null | ReactElement;
65
+ }
66
+ declare function RadioButtonGroup({ disabled, isSpaced, vertical, description, gap, name, size, variant, value, attributes, classnames, labelProps, methods, radioBtns, onChange, renderOptions, }: RadioButtonGroupProps): ReactElement;
67
+ export default RadioButtonGroup;
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ /**
5
+ * -----------------------------------------------------------------------------
6
+ * @component RadioButtonGroup
7
+ * -----------------------------------------------------------------------------
8
+ *
9
+ * @description This component is responsible for rendering group of radio buttons, radio buttons can be rendered using the radioBtns prop.
10
+ * The radioBtns is an array which consists of objects, each object representing a radio button with respective properties.
11
+ * React-Hook-Form can be bind to this component.
12
+ *
13
+ * -----------------------------------------------------------------------------
14
+ * Copyright © 2017-present BookingKoala. All rights reserved.
15
+ * -----------------------------------------------------------------------------
16
+ */
17
+ var react_1 = tslib_1.__importStar(require("react"));
18
+ var clsx_1 = require("clsx");
19
+ var FormText_1 = tslib_1.__importDefault(require("react-bootstrap/FormText"));
20
+ var react_hook_form_1 = require("react-hook-form");
21
+ var react_bootstrap_1 = require("react-bootstrap");
22
+ var Label_1 = tslib_1.__importDefault(require("./Label"));
23
+ var helpers_1 = require("../helpers");
24
+ var ToggleBtn_1 = tslib_1.__importDefault(require("../subComponent/toggleBtnGroup/ToggleBtn"));
25
+ var ToggleBtnGroup_1 = tslib_1.__importDefault(require("../subComponent/toggleBtnGroup/ToggleBtnGroup"));
26
+ /** Component to add wrapper on the children based on the presence of the label and description. */
27
+ function Wrapper(_a) {
28
+ var show = _a.show, _b = _a.className, className = _b === void 0 ? '' : _b, _c = _a.attributes, attributes = _c === void 0 ? {} : _c, children = _a.children;
29
+ return show ? (react_1.default.createElement("div", tslib_1.__assign({}, attributes, { className: className }), children)) : (children);
30
+ }
31
+ function RadioButtonGroup(_a) {
32
+ var _b = _a.disabled, disabled = _b === void 0 ? false : _b, _c = _a.isSpaced, isSpaced = _c === void 0 ? false : _c, _d = _a.vertical, vertical = _d === void 0 ? false : _d, _e = _a.description, description = _e === void 0 ? '' : _e, _f = _a.gap, gap = _f === void 0 ? '1rem' : _f, _g = _a.name, name = _g === void 0 ? 'radio-btn' : _g, _h = _a.size, size = _h === void 0 ? undefined : _h, _j = _a.variant, variant = _j === void 0 ? 'outline-light' : _j, _k = _a.value, value = _k === void 0 ? '' : _k, _l = _a.attributes, attributes = _l === void 0 ? undefined : _l, _m = _a.classnames, classnames = _m === void 0 ? undefined : _m, _o = _a.labelProps, labelProps = _o === void 0 ? {} : _o, _p = _a.methods, methods = _p === void 0 ? undefined : _p, _q = _a.radioBtns, radioBtns = _q === void 0 ? [] : _q, _r = _a.onChange, onChange = _r === void 0 ? undefined : _r, _s = _a.renderOptions, renderOptions = _s === void 0 ? undefined : _s;
33
+ var control = (0, helpers_1.destructObj)(methods).control;
34
+ // Stateless variables.
35
+ var hasDesc = (0, helpers_1.isStrNotEmpty)(description);
36
+ var hasLabel = (0, helpers_1.isStrNotEmpty)(labelProps === null || labelProps === void 0 ? void 0 : labelProps.label);
37
+ var hasRadioBtns = (0, helpers_1.isArrayNotEmpty)(radioBtns);
38
+ var hasHookFormBind = (0, helpers_1.isObjectNotEmpty)(methods);
39
+ // Destruct classes and attributes.
40
+ var _t = (0, helpers_1.destructObj)(classnames), wrapperClass = _t.wrapper, btnGroupClass = _t.btnGroup, btnClass = _t.button, iconClass = _t.icon, descClass = _t.description;
41
+ var _u = (0, helpers_1.destructObj)(attributes), wrapperAttr = _u.wrapper, btnGroupAttr = _u.btnGroup, btnAttr = _u.button, descAttr = _u.description;
42
+ // This state variable 'radioBtnVal' is used to manage the selected radio button value internally.
43
+ var _v = (0, react_1.useState)(value), radioBtnVal = _v[0], setRadioBtnVal = _v[1];
44
+ /** Lifecycle method to update the value incase user has changed the value programmatically(dynamically). */
45
+ (0, react_1.useEffect)(function () {
46
+ if (!hasHookFormBind) {
47
+ setRadioBtnVal(value);
48
+ }
49
+ }, [value]);
50
+ function isWrapperPresent() {
51
+ return hasLabel || hasDesc;
52
+ }
53
+ function renderLabel() {
54
+ return hasLabel ? react_1.default.createElement(Label_1.default, tslib_1.__assign({}, labelProps)) : null;
55
+ }
56
+ function getToggleBtnGrpCommonProps() {
57
+ var toggleBtnGrpCommonProps = tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, btnGroupAttr), { vertical: vertical, name: name, size: size, type: 'radio', className: (0, clsx_1.clsx)(isSpaced ? 'spaced-btn-group flex-wrap' : 'd-flex', btnGroupClass) }), (isSpaced ? { style: { '--radio-btns-gap': gap } } : {}));
58
+ return toggleBtnGrpCommonProps;
59
+ }
60
+ function getIcon(isLabelPresent, iconProps, tooltip) {
61
+ var _a;
62
+ var _b = (0, helpers_1.destructObj)(iconProps), icon = _b.icon, position = _b.position;
63
+ var iconMargin = position === 'start' ? 'me-5' : 'ms-5';
64
+ var iconElement = react_1.default.createElement("i", { className: (0, clsx_1.clsx)(icon, (_a = {}, _a[iconMargin] = isLabelPresent, _a), iconClass) });
65
+ return isSpaced ? react_1.default.createElement(react_bootstrap_1.Tooltip, tslib_1.__assign({}, tooltip), iconElement) : iconElement;
66
+ }
67
+ function getRadioBtnContent(radioBtnContentProps) {
68
+ var _a = (0, helpers_1.destructObj)(radioBtnContentProps), iconProps = _a.iconProps, label = _a.label, className = _a.className, tooltip = _a.tooltip;
69
+ var isLabelPresent = (0, helpers_1.isStrNotEmpty)(label);
70
+ var isIconPresent = (0, helpers_1.isStrNotEmpty)(iconProps === null || iconProps === void 0 ? void 0 : iconProps.icon);
71
+ var isIconPositionStart = (iconProps === null || iconProps === void 0 ? void 0 : iconProps.position) === 'start';
72
+ var iconElement = getIcon(isLabelPresent, iconProps, tooltip);
73
+ // Note - Adding button classes to button's content wrapper to fix tooltip issue.
74
+ return (react_1.default.createElement("div", { className: (0, clsx_1.clsx)(className, 'p-10 px-20') },
75
+ isIconPresent && isIconPositionStart ? iconElement : null,
76
+ isLabelPresent ? label : null,
77
+ isIconPresent && !isIconPositionStart ? iconElement : null));
78
+ }
79
+ function handleOnChange(event) {
80
+ var _a;
81
+ var selectedVal = (_a = event === null || event === void 0 ? void 0 : event.target) === null || _a === void 0 ? void 0 : _a.value;
82
+ onChange === null || onChange === void 0 ? void 0 : onChange(selectedVal, event);
83
+ setRadioBtnVal(selectedVal);
84
+ }
85
+ function renderBtnContent(_a) {
86
+ var radioBtn = _a.radioBtn, isTooltipPresent = _a.isTooltipPresent, tooltip = _a.tooltip, btnContent = _a.btnContent;
87
+ if (renderOptions) {
88
+ return renderOptions === null || renderOptions === void 0 ? void 0 : renderOptions(radioBtn);
89
+ }
90
+ if (isTooltipPresent && !isSpaced) {
91
+ return react_1.default.createElement(react_bootstrap_1.Tooltip, tslib_1.__assign({}, tooltip), btnContent);
92
+ }
93
+ return btnContent;
94
+ }
95
+ function renderRadioBtns() {
96
+ return radioBtns.map(function (radioBtn, index) {
97
+ var _a = (0, helpers_1.destructObj)(radioBtn), radioBtnDescProps = _a.descProps, label = _a.label, _b = _a.value, btnVal = _b === void 0 ? '' : _b, iconProps = _a.iconProps, className = _a.className, tooltip = _a.tooltip, disabledBtn = _a.disabled, restRadioBtnProps = tslib_1.__rest(_a, ["descProps", "label", "value", "iconProps", "className", "tooltip", "disabled"]);
98
+ if ((0, helpers_1.isStrEmpty)(label) && (0, helpers_1.isStrEmpty)(iconProps === null || iconProps === void 0 ? void 0 : iconProps.icon))
99
+ return null;
100
+ var isTooltipPresent = (0, helpers_1.isStrNotEmpty)(tooltip === null || tooltip === void 0 ? void 0 : tooltip.content);
101
+ var btnContent = getRadioBtnContent({ label: label, iconProps: iconProps, className: className, tooltip: tooltip });
102
+ var isBtnDisabled = disabled || disabledBtn;
103
+ var toggleBtnProps = tslib_1.__assign(tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({ isSpaced: isSpaced, descProps: radioBtnDescProps, name: name }, btnAttr), { disabled: isBtnDisabled }), restRadioBtnProps), { type: 'radio', variant: variant, value: btnVal, 'aria-label': label, className: (0, clsx_1.clsx)(btnClass, 'p-0') });
104
+ return (react_1.default.createElement(ToggleBtn_1.default, tslib_1.__assign({ key: (0, helpers_1.getKeyString)(btnVal.toString(), index) }, toggleBtnProps, { children: renderBtnContent({ radioBtn: radioBtn, isTooltipPresent: isTooltipPresent, tooltip: tooltip, btnContent: btnContent }) })));
105
+ });
106
+ }
107
+ function handleRHFChange(fieldOnChange) {
108
+ return function (event) {
109
+ var value = event.target.value;
110
+ fieldOnChange(value);
111
+ onChange === null || onChange === void 0 ? void 0 : onChange(value, event);
112
+ };
113
+ }
114
+ function renderToggleBtnGroup(_a) {
115
+ var _b = _a.field, controllerOnChange = _b.onChange, fieldVal = _b.value;
116
+ return (react_1.default.createElement(ToggleBtnGroup_1.default, tslib_1.__assign({}, getToggleBtnGrpCommonProps(), { value: fieldVal, onChange: handleRHFChange(controllerOnChange) }), renderRadioBtns()));
117
+ }
118
+ function renderRadioBtnGrpWithRhf() {
119
+ return react_1.default.createElement(react_hook_form_1.Controller, { name: name, control: control, defaultValue: value, render: renderToggleBtnGroup });
120
+ }
121
+ function renderRadioBtnGrpWithoutRfh() {
122
+ return (react_1.default.createElement(ToggleBtnGroup_1.default, tslib_1.__assign({}, getToggleBtnGrpCommonProps(), { value: radioBtnVal, onChange: handleOnChange }), renderRadioBtns()));
123
+ }
124
+ /** This function determines whether radio button group should be rendered with or without react-hook-form. */
125
+ function renderRadioBtnGrp() {
126
+ if (!hasRadioBtns) {
127
+ return null;
128
+ }
129
+ return hasHookFormBind ? renderRadioBtnGrpWithRhf() : renderRadioBtnGrpWithoutRfh();
130
+ }
131
+ function renderDesc() {
132
+ return hasDesc ? (react_1.default.createElement(FormText_1.default, tslib_1.__assign({}, descAttr, { className: (0, clsx_1.clsx)(descClass, 'fs-12') }), description)) : null;
133
+ }
134
+ return (react_1.default.createElement(Wrapper, { attributes: wrapperAttr, className: (0, clsx_1.clsx)(wrapperClass, isSpaced && 'd-flex flex-column'), show: isWrapperPresent() },
135
+ react_1.default.createElement(react_1.default.Fragment, null,
136
+ renderLabel(),
137
+ renderRadioBtnGrp(),
138
+ renderDesc())));
139
+ }
140
+ exports.default = RadioButtonGroup;
141
+ //# sourceMappingURL=RadioButtonGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RadioButtonGroup.js","sourceRoot":"","sources":["../../../src/components/RadioButtonGroup.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { ReactElement } from 'react';
2
+ export interface SearchProps {
3
+ value?: string;
4
+ }
5
+ declare function Search({ value }: SearchProps): ReactElement;
6
+ export default Search;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ var react_1 = tslib_1.__importDefault(require("react"));
5
+ function Search(_a) {
6
+ var value = _a.value;
7
+ console.log(value);
8
+ return react_1.default.createElement("div", null, "Search");
9
+ }
10
+ exports.default = Search;
11
+ //# sourceMappingURL=Search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Search.js","sourceRoot":"","sources":["../../../src/components/Search.tsx"],"names":[],"mappings":";;;AAAA,wDAA2C;AAM3C,SAAS,MAAM,CAAC,EAAsB;QAApB,KAAK,WAAA;IACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAClB,OAAO,oDAAiB,CAAA;AAC1B,CAAC;AAED,kBAAe,MAAM,CAAA"}
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- /*eslint-disable*/
3
2
  /**
4
3
  * -----------------------------------------------------------------------------
5
4
  * @file useSlider
@@ -1 +1 @@
1
- {"version":3,"file":"useSlider.js","sourceRoot":"","sources":["../../../../src/components/Slider/useSlider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSlider.js","sourceRoot":"","sources":["../../../../src/components/Slider/useSlider.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
- import React from 'react';
2
- import { type ReactElement } from 'react';
1
+ import React, { type ChangeEvent, type FocusEvent, type MouseEvent, type ReactElement } from 'react';
3
2
  import { type LabelProps } from './Label';
4
3
  interface Classnames {
5
4
  wrapper?: string;
@@ -12,7 +11,8 @@ interface Attributes {
12
11
  description?: object;
13
12
  }
14
13
  type TextInputVariant = 'normal' | 'floating';
15
- export interface TextInputProps {
14
+ type TextInputReturnType = 'value' | 'event';
15
+ export interface TextInputProps<RType extends TextInputReturnType = 'value'> {
16
16
  labelProps?: LabelProps;
17
17
  placeholder?: string;
18
18
  description?: string;
@@ -26,12 +26,15 @@ export interface TextInputProps {
26
26
  classnames?: Classnames;
27
27
  attributes?: Attributes;
28
28
  variant?: TextInputVariant;
29
- onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
30
- onBlur?: (e: React.FocusEvent<HTMLInputElement>) => void;
31
- onFocus?: (e: React.FocusEvent<HTMLInputElement>) => void;
29
+ returnType?: RType;
30
+ onChange?: RType extends 'value' ? (data: string) => void : (event: ChangeEvent<HTMLInputElement>) => void;
31
+ onBlur?: RType extends 'value' ? (data: string) => void : (event: FocusEvent<HTMLInputElement>) => void;
32
+ onFocus?: RType extends 'value' ? (data: string) => void : (event: FocusEvent<HTMLInputElement>) => void;
33
+ onClear?: (event: MouseEvent<HTMLButtonElement>) => void;
32
34
  inputRef?: React.RefObject<HTMLInputElement>;
33
35
  readonly?: boolean;
36
+ showClearBtn?: boolean;
34
37
  disabled?: boolean;
35
38
  }
36
- declare function TextInput({ labelProps, description, type, placeholder, size, value, onChange, onBlur, onFocus, variant, inputRef, id, defaultValue, classnames, attributes, name, maxLength, readonly, disabled, ...rest }: TextInputProps): ReactElement;
39
+ declare function TextInput<Rtype extends TextInputReturnType = 'value'>({ labelProps, description, type, placeholder, size, value, onChange, onBlur, onFocus, onClear, variant, inputRef, id, returnType, defaultValue, classnames, attributes, name, maxLength, readonly, disabled, showClearBtn, ...rest }: TextInputProps<Rtype>): ReactElement;
37
40
  export default TextInput;
@@ -1,17 +1,26 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  var tslib_1 = require("tslib");
4
- var react_1 = tslib_1.__importDefault(require("react"));
4
+ var react_1 = tslib_1.__importStar(require("react"));
5
+ var clsx_1 = tslib_1.__importDefault(require("clsx"));
5
6
  var react_bootstrap_1 = require("react-bootstrap");
6
- var Label_1 = tslib_1.__importDefault(require("./Label"));
7
7
  var app_1 = require("../helpers/app");
8
- var clsx_1 = tslib_1.__importDefault(require("clsx"));
8
+ var icons_1 = tslib_1.__importDefault(require("../constants/icons"));
9
+ var Label_1 = tslib_1.__importDefault(require("./Label"));
10
+ var ToggleButton_1 = tslib_1.__importDefault(require("../subComponent/ToggleButton"));
11
+ // Destuct Iocns
12
+ var cancelCircle = icons_1.default.cancelCircle;
9
13
  function TextInput(_a) {
10
- var labelProps = _a.labelProps, description = _a.description, _b = _a.type, type = _b === void 0 ? 'text' : _b, placeholder = _a.placeholder, size = _a.size, value = _a.value, onChange = _a.onChange, onBlur = _a.onBlur, onFocus = _a.onFocus, _c = _a.variant, variant = _c === void 0 ? 'normal' : _c, inputRef = _a.inputRef, id = _a.id, defaultValue = _a.defaultValue, classnames = _a.classnames, attributes = _a.attributes, name = _a.name, _d = _a.maxLength, maxLength = _d === void 0 ? 200 : _d, _e = _a.readonly, readonly = _e === void 0 ? false : _e, _f = _a.disabled, disabled = _f === void 0 ? false : _f, rest = tslib_1.__rest(_a, ["labelProps", "description", "type", "placeholder", "size", "value", "onChange", "onBlur", "onFocus", "variant", "inputRef", "id", "defaultValue", "classnames", "attributes", "name", "maxLength", "readonly", "disabled"]);
14
+ var labelProps = _a.labelProps, description = _a.description, _b = _a.type, type = _b === void 0 ? 'text' : _b, placeholder = _a.placeholder, size = _a.size, value = _a.value, onChange = _a.onChange, onBlur = _a.onBlur, onFocus = _a.onFocus, onClear = _a.onClear, _c = _a.variant, variant = _c === void 0 ? 'normal' : _c, inputRef = _a.inputRef, id = _a.id, returnType = _a.returnType, defaultValue = _a.defaultValue, classnames = _a.classnames, attributes = _a.attributes, name = _a.name, _d = _a.maxLength, maxLength = _d === void 0 ? 200 : _d, _e = _a.readonly, readonly = _e === void 0 ? false : _e, _f = _a.disabled, disabled = _f === void 0 ? false : _f, _g = _a.showClearBtn, showClearBtn = _g === void 0 ? false : _g, rest = tslib_1.__rest(_a, ["labelProps", "description", "type", "placeholder", "size", "value", "onChange", "onBlur", "onFocus", "onClear", "variant", "inputRef", "id", "returnType", "defaultValue", "classnames", "attributes", "name", "maxLength", "readonly", "disabled", "showClearBtn"]);
11
15
  // Destruct props
12
- var _g = (0, app_1.destructObj)(classnames), inputClass = _g.input, wrapperClass = _g.wrapper, descClass = _g.description;
13
- var _h = (0, app_1.destructObj)(attributes), inputAttr = _h.input, wrapperAttr = _h.wrapper, descAttr = _h.description;
16
+ var _h = (0, app_1.destructObj)(classnames), inputClass = _h.input, wrapperClass = _h.wrapper, descClass = _h.description;
17
+ var _j = (0, app_1.destructObj)(attributes), inputAttr = _j.input, wrapperAttr = _j.wrapper, descAttr = _j.description;
14
18
  var isFloatingVariantEnable = variant === 'floating';
19
+ var checkInputType = type === 'password' || showClearBtn;
20
+ // Ensure a runtime default for returnType
21
+ var effectiveReturnType = returnType !== null && returnType !== void 0 ? returnType : 'value';
22
+ // State initialization.
23
+ var _k = (0, react_1.useState)(false), isPwdVisible = _k[0], setIsPwdVisible = _k[1];
15
24
  /** Render the label */
16
25
  function renderLabel() {
17
26
  if ((0, app_1.isObjEmpty)(labelProps)) {
@@ -19,9 +28,64 @@ function TextInput(_a) {
19
28
  }
20
29
  return react_1.default.createElement(Label_1.default, tslib_1.__assign({}, labelProps));
21
30
  }
31
+ /**
32
+ * Normalizes input events (onChange, onBlur, onFocus) to either return the
33
+ * raw event or just the input value, based on `returnType`.
34
+ */
35
+ var dispatchInputEvent = (0, react_1.useCallback)(function (event, handler) {
36
+ var _a, _b;
37
+ if (!handler)
38
+ return;
39
+ if (effectiveReturnType === 'value') {
40
+ handler((_b = (_a = event.target) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : '');
41
+ }
42
+ else {
43
+ handler(event);
44
+ }
45
+ }, [effectiveReturnType]);
46
+ var handleOnChangeInput = (0, react_1.useCallback)(function (event) {
47
+ dispatchInputEvent(event, onChange);
48
+ }, [dispatchInputEvent, onChange]);
49
+ /** Function handle onblur event, by default it returns value. */
50
+ var handleOnBlurInput = (0, react_1.useCallback)(function (event) {
51
+ dispatchInputEvent(event, onBlur);
52
+ }, [dispatchInputEvent, onBlur]);
53
+ /** Function handle onFocus event, by default it returns value. */
54
+ var handleOnFocusInput = (0, react_1.useCallback)(function (event) {
55
+ dispatchInputEvent(event, onFocus);
56
+ }, [dispatchInputEvent, onFocus]);
22
57
  /** Render the input */
23
58
  function renderInput() {
24
- return (react_1.default.createElement(react_bootstrap_1.Form.Control, tslib_1.__assign({ type: type, placeholder: placeholder, value: value, onChange: onChange, onBlur: onBlur, onFocus: onFocus, ref: inputRef, id: id, name: name, disabled: disabled, readOnly: readonly, defaultValue: defaultValue, size: size, maxLength: maxLength, className: (0, clsx_1.default)(inputClass) }, inputAttr, rest)));
59
+ return (react_1.default.createElement(react_bootstrap_1.Form.Control, tslib_1.__assign({ type: isPwdVisible ? 'text' : type, placeholder: placeholder, value: value, onChange: handleOnChangeInput, onBlur: handleOnBlurInput, onFocus: handleOnFocusInput, ref: inputRef, id: id, name: name, disabled: disabled, readOnly: readonly, defaultValue: defaultValue, size: size, maxLength: maxLength, className: (0, clsx_1.default)(inputClass) }, inputAttr, rest)));
60
+ }
61
+ /** Function responsible for handling the toggle showPassword btn. */
62
+ function handlePwdVisibility() {
63
+ setIsPwdVisible(!isPwdVisible);
64
+ }
65
+ /** Function responsible for rendering toggle button when input type is password. */
66
+ function renderPwdBtn() {
67
+ if (type === 'password') {
68
+ return react_1.default.createElement(ToggleButton_1.default, { show: isPwdVisible, onClick: handlePwdVisibility });
69
+ }
70
+ return null;
71
+ }
72
+ /**
73
+ * It returns the event of the reset button.
74
+ * @param event button event.
75
+ */
76
+ function handleResetEvent(event) {
77
+ onClear === null || onClear === void 0 ? void 0 : onClear(event);
78
+ }
79
+ /**
80
+ * Returns a reset button when the `clearInput` prop is enabled.
81
+ * The button triggers an event to clear the input field.
82
+ */
83
+ function renderResetBtn() {
84
+ var shouldShowResetBtn = type !== 'password' && showClearBtn;
85
+ if (shouldShowResetBtn) {
86
+ return react_1.default.createElement(ToggleButton_1.default, { icon: (0, clsx_1.default)(cancelCircle, 'fs-16 text-body'), onClick: handleResetEvent });
87
+ }
88
+ return null;
25
89
  }
26
90
  /** Render the description */
27
91
  function renderDescription() {
@@ -32,7 +96,10 @@ function TextInput(_a) {
32
96
  }
33
97
  return (react_1.default.createElement("div", tslib_1.__assign({ className: (0, clsx_1.default)(wrapperClass, { 'form-floating': isFloatingVariantEnable }) }, wrapperAttr),
34
98
  !isFloatingVariantEnable && renderLabel(),
35
- renderInput(),
99
+ checkInputType ? (react_1.default.createElement("div", { className: (0, clsx_1.default)('position-relative w-100') },
100
+ renderInput(),
101
+ renderPwdBtn(),
102
+ renderResetBtn())) : (renderInput()),
36
103
  isFloatingVariantEnable && renderLabel(),
37
104
  renderDescription()));
38
105
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TextInput.js","sourceRoot":"","sources":["../../../src/components/TextInput.tsx"],"names":[],"mappings":";;;AAAA,wDAAyB;AAEzB,mDAAsC;AACtC,0DAAgD;AAChD,sCAAoE;AACpE,sDAAuB;AAoCvB,SAAS,SAAS,CAAC,EAqBF;IApBf,IAAA,UAAU,gBAAA,EACV,WAAW,iBAAA,EACX,YAAa,EAAb,IAAI,mBAAG,MAAM,KAAA,EACb,WAAW,iBAAA,EACX,IAAI,UAAA,EACJ,KAAK,WAAA,EACL,QAAQ,cAAA,EACR,MAAM,YAAA,EACN,OAAO,aAAA,EACP,eAAkB,EAAlB,OAAO,mBAAG,QAAQ,KAAA,EAClB,QAAQ,cAAA,EACR,EAAE,QAAA,EACF,YAAY,kBAAA,EACZ,UAAU,gBAAA,EACV,UAAU,gBAAA,EACV,IAAI,UAAA,EACJ,iBAAe,EAAf,SAAS,mBAAG,GAAG,KAAA,EACf,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EACb,IAAI,sBApBU,4NAqBlB,CADQ;IAEP,iBAAiB;IACX,IAAA,KAAuE,IAAA,iBAAW,EAAC,UAAU,CAAC,EAArF,UAAU,WAAA,EAAW,YAAY,aAAA,EAAe,SAAS,iBAA4B,CAAA;IAC9F,IAAA,KAAoE,IAAA,iBAAW,EAAC,UAAU,CAAC,EAAlF,SAAS,WAAA,EAAW,WAAW,aAAA,EAAe,QAAQ,iBAA4B,CAAA;IAEjG,IAAM,uBAAuB,GAAY,OAAO,KAAK,UAAU,CAAA;IAE/D,uBAAuB;IACvB,SAAS,WAAW;QAClB,IAAI,IAAA,gBAAU,EAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAA;QACb,CAAC;QACD,OAAO,8BAAC,eAAK,uBAAK,UAAU,EAAI,CAAA;IAClC,CAAC;IAED,uBAAuB;IACvB,SAAS,WAAW;QAClB,OAAO,CACL,8BAAC,sBAAI,CAAC,OAAO,qBACX,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,QAAQ,EACb,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,IAAA,cAAI,EAAC,UAAU,CAAC,IACvB,SAAS,EACT,IAAI,EACR,CACH,CAAA;IACH,CAAC;IAED,6BAA6B;IAC7B,SAAS,iBAAiB;QACxB,IAAI,IAAA,gBAAU,EAAC,WAAW,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAA;QACb,CAAC;QACD,OAAO,CACL,8BAAC,sBAAI,CAAC,IAAI,qBAAC,SAAS,EAAE,IAAA,cAAI,EAAC,YAAY,EAAE,SAAS,CAAC,IAAM,QAAQ,GAC9D,WAAW,CACF,CACb,CAAA;IACH,CAAC;IAED,OAAO,CACL,wDAAK,SAAS,EAAE,IAAA,cAAI,EAAC,YAAY,EAAE,EAAE,eAAe,EAAE,uBAAuB,EAAE,CAAC,IAAM,WAAW;QAC9F,CAAC,uBAAuB,IAAI,WAAW,EAAE;QACzC,WAAW,EAAE;QACb,uBAAuB,IAAI,WAAW,EAAE;QACxC,iBAAiB,EAAE,CAChB,CACP,CAAA;AACH,CAAC;AAED,kBAAe,SAAS,CAAA"}
1
+ {"version":3,"file":"TextInput.js","sourceRoot":"","sources":["../../../src/components/TextInput.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Reusable Tooltip Component using React Bootstrap
3
+ * Supports multiple placements, sizes, trigger types, and content types
4
+ */
5
+ import React, { type ReactElement } from 'react';
6
+ import type { Placement } from 'react-bootstrap/types';
7
+ export type TooltipSize = 'sm' | 'lg' | 'xl';
8
+ export type TooltipTrigger = 'hover' | 'click' | 'focus' | ['hover', 'focus'];
9
+ export type TooltipAlign = 'start' | 'center' | 'end' | 'left' | 'right';
10
+ interface Classnames {
11
+ wrapper?: string;
12
+ icon?: string;
13
+ body?: string;
14
+ }
15
+ interface Attribultes {
16
+ wrapper?: object;
17
+ icon?: object;
18
+ body?: object;
19
+ }
20
+ export interface TooltipProps {
21
+ content?: string;
22
+ children?: ReactElement;
23
+ placement?: Placement;
24
+ size?: TooltipSize;
25
+ trigger?: TooltipTrigger;
26
+ align?: TooltipAlign;
27
+ show?: boolean;
28
+ attributes?: Attribultes;
29
+ classname?: Classnames;
30
+ }
31
+ declare function Tooltip({ content, children, placement, size, trigger, align, classname, attributes, }: TooltipProps): React.JSX.Element;
32
+ export default Tooltip;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ /**
5
+ * Reusable Tooltip Component using React Bootstrap
6
+ * Supports multiple placements, sizes, trigger types, and content types
7
+ */
8
+ var react_1 = tslib_1.__importDefault(require("react"));
9
+ var clsx_1 = require("clsx");
10
+ var react_bootstrap_1 = require("react-bootstrap");
11
+ var helpers_1 = require("../helpers");
12
+ // Size classes
13
+ var sizeClasses = {
14
+ sm: 'tooltip-sm',
15
+ lg: 'tooltip-lg',
16
+ xl: 'tooltip-xl',
17
+ };
18
+ // Alignment classes
19
+ var alignClasses = {
20
+ start: 'text-start',
21
+ center: 'text-center',
22
+ end: 'text-end',
23
+ left: 'text-start',
24
+ right: 'text-end',
25
+ };
26
+ function Tooltip(_a) {
27
+ var content = _a.content, children = _a.children, _b = _a.placement, placement = _b === void 0 ? 'top' : _b, _c = _a.size, size = _c === void 0 ? 'lg' : _c, trigger = _a.trigger, _d = _a.align, align = _d === void 0 ? 'start' : _d, _e = _a.classname, classname = _e === void 0 ? undefined : _e, _f = _a.attributes, attributes = _f === void 0 ? undefined : _f;
28
+ var _g = (0, helpers_1.destructObj)(classname), bodyClass = _g.body, wrapperClass = _g.wrapper, iconClass = _g.icon;
29
+ var _h = (0, helpers_1.destructObj)(attributes), bodyAttr = _h.body, wrapperAttr = _h.wrapper, iconAttr = _h.icon;
30
+ var renderTooltip = function (props) { return (react_1.default.createElement(react_bootstrap_1.Tooltip, tslib_1.__assign({ id: "tooltip-".concat(placement, "-").concat(size) }, props, { className: (0, clsx_1.clsx)(sizeClasses[size], wrapperClass) }, wrapperAttr),
31
+ react_1.default.createElement("div", tslib_1.__assign({ className: (0, clsx_1.clsx)('tooltip-content', alignClasses[align], bodyClass) }, bodyAttr), content))); };
32
+ return (react_1.default.createElement(react_bootstrap_1.OverlayTrigger, { placement: placement, overlay: renderTooltip, trigger: trigger }, children !== null && children !== void 0 ? children : react_1.default.createElement("i", tslib_1.__assign({ className: (0, clsx_1.clsx)('bi-info-circle', iconClass) }, iconAttr))));
33
+ }
34
+ exports.default = Tooltip;
35
+ //# sourceMappingURL=Tooltip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../../../src/components/Tooltip.tsx"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,wDAAgD;AAChD,6BAA2B;AAC3B,mDAAsE;AAEtE,sCAAwC;AAmCxC,eAAe;AACf,IAAM,WAAW,GAAG;IAClB,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,YAAY;CACjB,CAAA;AAED,oBAAoB;AACpB,IAAM,YAAY,GAAG;IACnB,KAAK,EAAE,YAAY;IACnB,MAAM,EAAE,aAAa;IACrB,GAAG,EAAE,UAAU;IACf,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,UAAU;CAClB,CAAA;AAED,SAAS,OAAO,CAAC,EASF;QARb,OAAO,aAAA,EACP,QAAQ,cAAA,EACR,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,YAAW,EAAX,IAAI,mBAAG,IAAI,KAAA,EACX,OAAO,aAAA,EACP,aAAe,EAAf,KAAK,mBAAG,OAAO,KAAA,EACf,iBAAqB,EAArB,SAAS,mBAAG,SAAS,KAAA,EACrB,kBAAsB,EAAtB,UAAU,mBAAG,SAAS,KAAA;IAEhB,IAAA,KAA8D,IAAA,qBAAW,EAAC,SAAS,CAAC,EAA5E,SAAS,UAAA,EAAW,YAAY,aAAA,EAAQ,SAAS,UAA2B,CAAA;IAEpF,IAAA,KAA2D,IAAA,qBAAW,EAAC,UAAU,CAAC,EAA1E,QAAQ,UAAA,EAAW,WAAW,aAAA,EAAQ,QAAQ,UAA4B,CAAA;IAExF,IAAM,aAAa,GAAG,UAAC,KAAU,IAAK,OAAA,CACpC,8BAAC,yBAAS,qBACR,EAAE,EAAE,kBAAW,SAAS,cAAI,IAAI,CAAE,IAC9B,KAAK,IACT,SAAS,EAAE,IAAA,WAAI,EAAC,WAAW,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,IAC5C,WAAW;QAEf,wDAAK,SAAS,EAAE,IAAA,WAAI,EAAC,iBAAiB,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,IAAM,QAAQ,GAClF,OAAO,CACJ,CACI,CACb,EAXqC,CAWrC,CAAA;IAED,OAAO,CACL,8BAAC,gCAAc,IAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,IAC3E,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,sDAAG,SAAS,EAAE,IAAA,WAAI,EAAC,gBAAgB,EAAE,SAAS,CAAC,IAAM,QAAQ,EAAI,CAC/D,CAClB,CAAA;AACH,CAAC;AACD,kBAAe,OAAO,CAAA"}
@@ -3,5 +3,8 @@ declare const ICONS: {
3
3
  angleRight: string;
4
4
  circle: string;
5
5
  dotCircle: string;
6
+ preview: string;
7
+ previewOff: string;
8
+ cancelCircle: string;
6
9
  };
7
10
  export default ICONS;
@@ -6,6 +6,9 @@ var ICONS = {
6
6
  angleRight: 'bi-chevron-right',
7
7
  circle: 'bi-circle',
8
8
  dotCircle: 'bi-circle-fill',
9
+ preview: 'bi-eye',
10
+ previewOff: 'bi-eye-slash',
11
+ cancelCircle: 'bi-x-circle',
9
12
  };
10
13
  exports.default = ICONS;
11
14
  //# sourceMappingURL=icons.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"icons.js","sourceRoot":"","sources":["../../../src/constants/icons.ts"],"names":[],"mappings":";;AAAA,kBAAkB;AAClB,IAAM,KAAK,GAAG;IACZ,SAAS,EAAE,iBAAiB;IAC5B,UAAU,EAAE,kBAAkB;IAC9B,MAAM,EAAE,WAAW;IACnB,SAAS,EAAE,gBAAgB;CAC5B,CAAA;AAED,kBAAe,KAAK,CAAA"}
1
+ {"version":3,"file":"icons.js","sourceRoot":"","sources":["../../../src/constants/icons.ts"],"names":[],"mappings":";;AAAA,kBAAkB;AAClB,IAAM,KAAK,GAAG;IACZ,SAAS,EAAE,iBAAiB;IAC5B,UAAU,EAAE,kBAAkB;IAC9B,MAAM,EAAE,WAAW;IACnB,SAAS,EAAE,gBAAgB;IAC3B,OAAO,EAAE,QAAQ;IACjB,UAAU,EAAE,cAAc;IAC1B,YAAY,EAAE,aAAa;CAC5B,CAAA;AAED,kBAAe,KAAK,CAAA"}
@@ -94,7 +94,7 @@ export declare function isNullOrUndefined(value: any): value is null | undefined
94
94
  /**
95
95
  * Prevents default behavior of an event.
96
96
  */
97
- export declare function preventDefault(event: Event): void;
97
+ export declare function preventDefault(event: Event | React.SyntheticEvent): void;
98
98
  /**
99
99
  * Deep compares two objects.
100
100
  */