farm-react 1.0.7 → 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.
- package/dist/assets/styles/style.css +25347 -0
- package/dist/assets/styles/style.css.map +1 -0
- package/dist/cjs/Utils/index.d.ts +4 -0
- package/dist/cjs/Utils/index.js +8 -0
- package/dist/cjs/Utils/index.js.map +1 -0
- package/dist/cjs/components/Accordion.js +7 -6
- package/dist/cjs/components/Accordion.js.map +1 -1
- package/dist/cjs/components/Alert.d.ts +32 -0
- package/dist/cjs/components/Alert.js +50 -0
- package/dist/cjs/components/Alert.js.map +1 -0
- package/dist/cjs/components/Badge.d.ts +22 -0
- package/dist/cjs/components/Badge.js +36 -0
- package/dist/cjs/components/Badge.js.map +1 -0
- package/dist/cjs/components/BrokenPage.d.ts +35 -0
- package/dist/cjs/components/BrokenPage.js +59 -0
- package/dist/cjs/components/BrokenPage.js.map +1 -0
- package/dist/cjs/components/Button.d.ts +29 -2
- package/dist/cjs/components/Button.js +56 -4
- package/dist/cjs/components/Button.js.map +1 -1
- package/dist/cjs/components/Card.d.ts +77 -0
- package/dist/cjs/components/Card.js +77 -0
- package/dist/cjs/components/Card.js.map +1 -0
- package/dist/cjs/components/Checkbox.d.ts +25 -0
- package/dist/cjs/components/Checkbox.js +23 -0
- package/dist/cjs/components/Checkbox.js.map +1 -0
- package/dist/cjs/components/ConfirmPoup.d.ts +21 -0
- package/dist/cjs/components/ConfirmPoup.js +47 -0
- package/dist/cjs/components/ConfirmPoup.js.map +1 -0
- package/dist/cjs/components/Dropdown.d.ts +35 -0
- package/dist/cjs/components/Dropdown.js +54 -0
- package/dist/cjs/components/Dropdown.js.map +1 -0
- package/dist/cjs/components/Label.d.ts +1 -1
- package/dist/cjs/components/Label.js +8 -6
- package/dist/cjs/components/Label.js.map +1 -1
- package/dist/cjs/components/Layout/Footer.js +11 -2
- package/dist/cjs/components/Layout/Footer.js.map +1 -1
- package/dist/cjs/components/Layout/Header.d.ts +2 -1
- package/dist/cjs/components/Layout/Header.js +15 -4
- package/dist/cjs/components/Layout/Header.js.map +1 -1
- package/dist/cjs/components/Layout/Sidebar.d.ts +2 -1
- package/dist/cjs/components/Layout/Sidebar.js +5 -3
- package/dist/cjs/components/Layout/Sidebar.js.map +1 -1
- package/dist/cjs/components/MultiCheckbox.d.ts +39 -0
- package/dist/cjs/components/MultiCheckbox.js +56 -0
- package/dist/cjs/components/MultiCheckbox.js.map +1 -0
- package/dist/cjs/components/MultiRadio.d.ts +30 -0
- package/dist/cjs/components/MultiRadio.js +41 -0
- package/dist/cjs/components/MultiRadio.js.map +1 -0
- package/dist/cjs/components/NumberInput.d.ts +38 -0
- package/dist/cjs/components/NumberInput.js +34 -0
- package/dist/cjs/components/NumberInput.js.map +1 -0
- package/dist/cjs/components/Popover.d.ts +56 -0
- package/dist/cjs/components/Popover.js +34 -0
- package/dist/cjs/components/Popover.js.map +1 -0
- package/dist/cjs/components/Radio.d.ts +24 -0
- package/dist/cjs/components/Radio.js +24 -0
- package/dist/cjs/components/Radio.js.map +1 -0
- package/dist/cjs/components/RadioButtonGroup.d.ts +67 -0
- package/dist/cjs/components/RadioButtonGroup.js +141 -0
- package/dist/cjs/components/RadioButtonGroup.js.map +1 -0
- package/dist/cjs/components/RangeSlider.d.ts +30 -0
- package/dist/cjs/components/RangeSlider.js +48 -0
- package/dist/cjs/components/RangeSlider.js.map +1 -0
- package/dist/cjs/components/RatingDisplay.js +7 -4
- package/dist/cjs/components/RatingDisplay.js.map +1 -1
- package/dist/cjs/components/Search.d.ts +6 -0
- package/dist/cjs/components/Search.js +11 -0
- package/dist/cjs/components/Search.js.map +1 -0
- package/dist/cjs/components/Select.d.ts +41 -0
- package/dist/cjs/components/Select.js +48 -0
- package/dist/cjs/components/Select.js.map +1 -0
- package/dist/cjs/components/SkeletonLoader.d.ts +39 -0
- package/dist/cjs/components/SkeletonLoader.js +76 -0
- package/dist/cjs/components/SkeletonLoader.js.map +1 -0
- package/dist/cjs/components/Slider/SlickSlider.d.ts +74 -0
- package/dist/cjs/components/Slider/SlickSlider.js +211 -0
- package/dist/cjs/components/Slider/SlickSlider.js.map +1 -0
- package/dist/cjs/components/Slider/useCenterMode.d.ts +24 -0
- package/dist/cjs/components/Slider/useCenterMode.js +40 -0
- package/dist/cjs/components/Slider/useCenterMode.js.map +1 -0
- package/dist/cjs/components/Slider/useSlider.d.ts +65 -0
- package/dist/cjs/components/Slider/useSlider.js +158 -0
- package/dist/cjs/components/Slider/useSlider.js.map +1 -0
- package/dist/cjs/components/Slider/useSliderAutoPlay.d.ts +33 -0
- package/dist/cjs/components/Slider/useSliderAutoPlay.js +73 -0
- package/dist/cjs/components/Slider/useSliderAutoPlay.js.map +1 -0
- package/dist/cjs/components/Slider/useSliderBreakpoint.d.ts +23 -0
- package/dist/cjs/components/Slider/useSliderBreakpoint.js +92 -0
- package/dist/cjs/components/Slider/useSliderBreakpoint.js.map +1 -0
- package/dist/cjs/components/Slider/useSliderDimension.d.ts +41 -0
- package/dist/cjs/components/Slider/useSliderDimension.js +92 -0
- package/dist/cjs/components/Slider/useSliderDimension.js.map +1 -0
- package/dist/cjs/components/Slider/useSliderDraggable.d.ts +43 -0
- package/dist/cjs/components/Slider/useSliderDraggable.js +146 -0
- package/dist/cjs/components/Slider/useSliderDraggable.js.map +1 -0
- package/dist/cjs/components/Slider/useSliderNavigation.d.ts +41 -0
- package/dist/cjs/components/Slider/useSliderNavigation.js +136 -0
- package/dist/cjs/components/Slider/useSliderNavigation.js.map +1 -0
- package/dist/cjs/components/Slider/useSliderTransform.d.ts +17 -0
- package/dist/cjs/components/Slider/useSliderTransform.js +71 -0
- package/dist/cjs/components/Slider/useSliderTransform.js.map +1 -0
- package/dist/cjs/components/TextInput.d.ts +35 -4
- package/dist/cjs/components/TextInput.js +97 -11
- package/dist/cjs/components/TextInput.js.map +1 -1
- package/dist/cjs/components/ThreeDotsLoader.d.ts +24 -0
- package/dist/cjs/components/ThreeDotsLoader.js +25 -0
- package/dist/cjs/components/ThreeDotsLoader.js.map +1 -0
- package/dist/cjs/components/Tooltip.d.ts +32 -0
- package/dist/cjs/components/Tooltip.js +35 -0
- package/dist/cjs/components/Tooltip.js.map +1 -0
- package/dist/cjs/constants/app.d.ts +2 -0
- package/dist/cjs/constants/app.js +3 -1
- package/dist/cjs/constants/app.js.map +1 -1
- package/dist/cjs/constants/icons.d.ts +10 -0
- package/dist/cjs/constants/icons.js +14 -0
- package/dist/cjs/constants/icons.js.map +1 -0
- package/dist/cjs/helpers/app.d.ts +39 -2
- package/dist/cjs/helpers/app.js +83 -5
- package/dist/cjs/helpers/app.js.map +1 -1
- package/dist/cjs/helpers/index.d.ts +1 -0
- package/dist/cjs/helpers/index.js +3 -0
- package/dist/cjs/helpers/index.js.map +1 -1
- package/dist/cjs/hooks/index.d.ts +1 -0
- package/dist/cjs/hooks/index.js +4 -0
- package/dist/cjs/hooks/index.js.map +1 -1
- package/dist/cjs/hooks/useLocalStorage.d.ts +7 -0
- package/dist/cjs/hooks/useLocalStorage.js +57 -0
- package/dist/cjs/hooks/useLocalStorage.js.map +1 -0
- package/dist/cjs/index.d.ts +23 -5
- package/dist/cjs/index.js +47 -9
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/strings/en.d.ts +3 -1
- package/dist/cjs/strings/en.js +5 -3
- package/dist/cjs/strings/en.js.map +1 -1
- package/dist/cjs/subComponent/DateRange.js +2 -0
- package/dist/cjs/subComponent/DateRange.js.map +1 -0
- package/dist/cjs/subComponent/ToggleButton.d.ts +9 -0
- package/dist/cjs/subComponent/ToggleButton.js +19 -0
- package/dist/cjs/subComponent/ToggleButton.js.map +1 -0
- package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtn.d.ts +43 -0
- package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtn.js +43 -0
- package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtn.js.map +1 -0
- package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtnGroup.d.ts +43 -0
- package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtnGroup.js +53 -0
- package/dist/cjs/subComponent/toggleBtnGroup/ToggleBtnGroup.js.map +1 -0
- package/dist/esm/Utils/index.d.ts +4 -0
- package/dist/esm/Utils/index.js +5 -0
- package/dist/esm/Utils/index.js.map +1 -0
- package/dist/esm/components/Accordion.js +7 -6
- package/dist/esm/components/Accordion.js.map +1 -1
- package/dist/esm/components/Alert.d.ts +32 -0
- package/dist/esm/components/Alert.js +48 -0
- package/dist/esm/components/Alert.js.map +1 -0
- package/dist/esm/components/Badge.d.ts +22 -0
- package/dist/esm/components/Badge.js +34 -0
- package/dist/esm/components/Badge.js.map +1 -0
- package/dist/esm/components/BrokenPage.d.ts +35 -0
- package/dist/esm/components/BrokenPage.js +57 -0
- package/dist/esm/components/BrokenPage.js.map +1 -0
- package/dist/esm/components/Button.d.ts +29 -2
- package/dist/esm/components/Button.js +56 -3
- package/dist/esm/components/Button.js.map +1 -1
- package/dist/esm/components/Card.d.ts +77 -0
- package/dist/esm/components/Card.js +75 -0
- package/dist/esm/components/Card.js.map +1 -0
- package/dist/esm/components/Checkbox.d.ts +25 -0
- package/dist/esm/components/Checkbox.js +21 -0
- package/dist/esm/components/Checkbox.js.map +1 -0
- package/dist/esm/components/ConfirmPoup.d.ts +21 -0
- package/dist/esm/components/ConfirmPoup.js +45 -0
- package/dist/esm/components/ConfirmPoup.js.map +1 -0
- package/dist/esm/components/Dropdown.d.ts +35 -0
- package/dist/esm/components/Dropdown.js +52 -0
- package/dist/esm/components/Dropdown.js.map +1 -0
- package/dist/esm/components/Label.d.ts +1 -1
- package/dist/esm/components/Label.js +9 -7
- package/dist/esm/components/Label.js.map +1 -1
- package/dist/esm/components/Layout/Footer.js +10 -2
- package/dist/esm/components/Layout/Footer.js.map +1 -1
- package/dist/esm/components/Layout/Header.d.ts +2 -1
- package/dist/esm/components/Layout/Header.js +14 -3
- package/dist/esm/components/Layout/Header.js.map +1 -1
- package/dist/esm/components/Layout/Sidebar.d.ts +2 -1
- package/dist/esm/components/Layout/Sidebar.js +4 -3
- package/dist/esm/components/Layout/Sidebar.js.map +1 -1
- package/dist/esm/components/MultiCheckbox.d.ts +39 -0
- package/dist/esm/components/MultiCheckbox.js +54 -0
- package/dist/esm/components/MultiCheckbox.js.map +1 -0
- package/dist/esm/components/MultiRadio.d.ts +30 -0
- package/dist/esm/components/MultiRadio.js +39 -0
- package/dist/esm/components/MultiRadio.js.map +1 -0
- package/dist/esm/components/NumberInput.d.ts +38 -0
- package/dist/esm/components/NumberInput.js +32 -0
- package/dist/esm/components/NumberInput.js.map +1 -0
- package/dist/esm/components/Popover.d.ts +56 -0
- package/dist/esm/components/Popover.js +32 -0
- package/dist/esm/components/Popover.js.map +1 -0
- package/dist/esm/components/Radio.d.ts +24 -0
- package/dist/esm/components/Radio.js +22 -0
- package/dist/esm/components/Radio.js.map +1 -0
- package/dist/esm/components/RadioButtonGroup.d.ts +67 -0
- package/dist/esm/components/RadioButtonGroup.js +139 -0
- package/dist/esm/components/RadioButtonGroup.js.map +1 -0
- package/dist/esm/components/RangeSlider.d.ts +30 -0
- package/dist/esm/components/RangeSlider.js +46 -0
- package/dist/esm/components/RangeSlider.js.map +1 -0
- package/dist/esm/components/RatingDisplay.js +7 -4
- package/dist/esm/components/RatingDisplay.js.map +1 -1
- package/dist/esm/components/Search.d.ts +6 -0
- package/dist/esm/components/Search.js +8 -0
- package/dist/esm/components/Search.js.map +1 -0
- package/dist/esm/components/Select.d.ts +41 -0
- package/dist/esm/components/Select.js +46 -0
- package/dist/esm/components/Select.js.map +1 -0
- package/dist/esm/components/SkeletonLoader.d.ts +39 -0
- package/dist/esm/components/SkeletonLoader.js +74 -0
- package/dist/esm/components/SkeletonLoader.js.map +1 -0
- package/dist/esm/components/Slider/SlickSlider.d.ts +74 -0
- package/dist/esm/components/Slider/SlickSlider.js +208 -0
- package/dist/esm/components/Slider/SlickSlider.js.map +1 -0
- package/dist/esm/components/Slider/useCenterMode.d.ts +24 -0
- package/dist/esm/components/Slider/useCenterMode.js +38 -0
- package/dist/esm/components/Slider/useCenterMode.js.map +1 -0
- package/dist/esm/components/Slider/useSlider.d.ts +65 -0
- package/dist/esm/components/Slider/useSlider.js +156 -0
- package/dist/esm/components/Slider/useSlider.js.map +1 -0
- package/dist/esm/components/Slider/useSliderAutoPlay.d.ts +33 -0
- package/dist/esm/components/Slider/useSliderAutoPlay.js +71 -0
- package/dist/esm/components/Slider/useSliderAutoPlay.js.map +1 -0
- package/dist/esm/components/Slider/useSliderBreakpoint.d.ts +23 -0
- package/dist/esm/components/Slider/useSliderBreakpoint.js +90 -0
- package/dist/esm/components/Slider/useSliderBreakpoint.js.map +1 -0
- package/dist/esm/components/Slider/useSliderDimension.d.ts +41 -0
- package/dist/esm/components/Slider/useSliderDimension.js +90 -0
- package/dist/esm/components/Slider/useSliderDimension.js.map +1 -0
- package/dist/esm/components/Slider/useSliderDraggable.d.ts +43 -0
- package/dist/esm/components/Slider/useSliderDraggable.js +144 -0
- package/dist/esm/components/Slider/useSliderDraggable.js.map +1 -0
- package/dist/esm/components/Slider/useSliderNavigation.d.ts +41 -0
- package/dist/esm/components/Slider/useSliderNavigation.js +134 -0
- package/dist/esm/components/Slider/useSliderNavigation.js.map +1 -0
- package/dist/esm/components/Slider/useSliderTransform.d.ts +17 -0
- package/dist/esm/components/Slider/useSliderTransform.js +69 -0
- package/dist/esm/components/Slider/useSliderTransform.js.map +1 -0
- package/dist/esm/components/TextInput.d.ts +35 -4
- package/dist/esm/components/TextInput.js +99 -12
- package/dist/esm/components/TextInput.js.map +1 -1
- package/dist/esm/components/ThreeDotsLoader.d.ts +24 -0
- package/dist/esm/components/ThreeDotsLoader.js +23 -0
- package/dist/esm/components/ThreeDotsLoader.js.map +1 -0
- package/dist/esm/components/Tooltip.d.ts +32 -0
- package/dist/esm/components/Tooltip.js +33 -0
- package/dist/esm/components/Tooltip.js.map +1 -0
- package/dist/esm/constants/app.d.ts +2 -0
- package/dist/esm/constants/app.js +2 -0
- package/dist/esm/constants/app.js.map +1 -1
- package/dist/esm/constants/icons.d.ts +10 -0
- package/dist/esm/constants/icons.js +12 -0
- package/dist/esm/constants/icons.js.map +1 -0
- package/dist/esm/helpers/app.d.ts +39 -2
- package/dist/esm/helpers/app.js +73 -3
- package/dist/esm/helpers/app.js.map +1 -1
- package/dist/esm/helpers/index.d.ts +1 -0
- package/dist/esm/helpers/index.js +1 -1
- package/dist/esm/helpers/index.js.map +1 -1
- package/dist/esm/hooks/index.d.ts +1 -0
- package/dist/esm/hooks/index.js +1 -1
- package/dist/esm/hooks/index.js.map +1 -1
- package/dist/esm/hooks/useLocalStorage.d.ts +7 -0
- package/dist/esm/hooks/useLocalStorage.js +54 -0
- package/dist/esm/hooks/useLocalStorage.js.map +1 -0
- package/dist/esm/index.d.ts +23 -5
- package/dist/esm/index.js +23 -5
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/strings/en.d.ts +3 -1
- package/dist/esm/strings/en.js +4 -2
- package/dist/esm/strings/en.js.map +1 -1
- package/dist/esm/subComponent/DateRange.js +2 -0
- package/dist/esm/subComponent/DateRange.js.map +1 -0
- package/dist/esm/subComponent/ToggleButton.d.ts +9 -0
- package/dist/esm/subComponent/ToggleButton.js +17 -0
- package/dist/esm/subComponent/ToggleButton.js.map +1 -0
- package/dist/esm/subComponent/toggleBtnGroup/ToggleBtn.d.ts +43 -0
- package/dist/esm/subComponent/toggleBtnGroup/ToggleBtn.js +41 -0
- package/dist/esm/subComponent/toggleBtnGroup/ToggleBtn.js.map +1 -0
- package/dist/esm/subComponent/toggleBtnGroup/ToggleBtnGroup.d.ts +43 -0
- package/dist/esm/subComponent/toggleBtnGroup/ToggleBtnGroup.js +51 -0
- package/dist/esm/subComponent/toggleBtnGroup/ToggleBtnGroup.js.map +1 -0
- package/dist/package.json +1 -1
- package/package.json +6 -4
- package/dist/cjs/strings/index.js +0 -2
- package/dist/cjs/strings/index.js.map +0 -1
- package/dist/esm/strings/index.js +0 -2
- package/dist/esm/strings/index.js.map +0 -1
- /package/dist/cjs/{strings/index.d.ts → subComponent/DateRange.d.ts} +0 -0
- /package/dist/esm/{strings/index.d.ts → subComponent/DateRange.d.ts} +0 -0
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var react_1 = tslib_1.__importDefault(require("react"));
|
|
5
|
+
var Offcanvas_1 = tslib_1.__importDefault(require("react-bootstrap/Offcanvas"));
|
|
5
6
|
function Sidebar() {
|
|
6
|
-
return (
|
|
7
|
+
return (react_1.default.createElement(Offcanvas_1.default, { show: true, className: 'top-60', backdrop: false, scroll: true },
|
|
8
|
+
react_1.default.createElement(Offcanvas_1.default.Body, null, "Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.")));
|
|
7
9
|
}
|
|
8
10
|
exports.default = Sidebar;
|
|
9
11
|
//# sourceMappingURL=Sidebar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sidebar.js","sourceRoot":"","sources":["../../../../src/components/Layout/Sidebar.tsx"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"Sidebar.js","sourceRoot":"","sources":["../../../../src/components/Layout/Sidebar.tsx"],"names":[],"mappings":";;;AAAA,wDAAyB;AACzB,gFAAiD;AAEjD,SAAS,OAAO;IACd,OAAO,CACL,8BAAC,mBAAS,IAAC,IAAI,QAAC,SAAS,EAAC,QAAQ,EAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI;QAC9D,8BAAC,mBAAS,CAAC,IAAI,4HAGE,CACP,CACb,CAAA;AACH,CAAC;AAED,kBAAe,OAAO,CAAA"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import React, { type ReactElement } from 'react';
|
|
2
|
+
import Checkbox from './Checkbox';
|
|
3
|
+
import { type LabelProps } from './Label';
|
|
4
|
+
export type ReturnTypeOption = 'value' | 'object';
|
|
5
|
+
export interface MultiCheckboxClassnames {
|
|
6
|
+
checkboxLabel?: string;
|
|
7
|
+
description?: string;
|
|
8
|
+
errorMessage?: string;
|
|
9
|
+
wrapper?: string;
|
|
10
|
+
input?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface MultiCheckboxAttributes {
|
|
13
|
+
wrapper?: object;
|
|
14
|
+
checkbox?: object;
|
|
15
|
+
}
|
|
16
|
+
export interface MultiCheckboxProps<T = any> extends Omit<React.ComponentProps<typeof Checkbox>, 'onChange'> {
|
|
17
|
+
classnames?: MultiCheckboxClassnames;
|
|
18
|
+
inline?: boolean;
|
|
19
|
+
rtl?: boolean;
|
|
20
|
+
labelProps?: LabelProps;
|
|
21
|
+
onChange?: (value: T[] | Array<string | number> | null) => void;
|
|
22
|
+
returnType?: ReturnTypeOption;
|
|
23
|
+
checkedValues?: Array<string | number>;
|
|
24
|
+
idKey?: string;
|
|
25
|
+
valueKey?: string;
|
|
26
|
+
labelKey?: string;
|
|
27
|
+
name: string;
|
|
28
|
+
data: T[];
|
|
29
|
+
description?: string;
|
|
30
|
+
keyExtractor?: (dataItem: T, index: number) => React.Key;
|
|
31
|
+
attributes?: MultiCheckboxAttributes;
|
|
32
|
+
validations?: object;
|
|
33
|
+
requiredFields?: string[];
|
|
34
|
+
stripDescHTML?: boolean;
|
|
35
|
+
disabledValues?: Array<string | number>;
|
|
36
|
+
renderLabel?: (dataItem: T, label: string | number) => string;
|
|
37
|
+
}
|
|
38
|
+
declare function MultiCheckbox<T = object[]>({ classnames, inline, rtl, labelProps, onChange, returnType, checkedValues, idKey, valueKey, labelKey, name, data, description, keyExtractor, attributes, validations, requiredFields, stripDescHTML, disabledValues, renderLabel, ...rest }: MultiCheckboxProps<T>): ReactElement;
|
|
39
|
+
export default MultiCheckbox;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
var react_1 = tslib_1.__importStar(require("react"));
|
|
5
|
+
var clsx_1 = tslib_1.__importDefault(require("clsx"));
|
|
6
|
+
var Checkbox_1 = tslib_1.__importDefault(require("./Checkbox"));
|
|
7
|
+
var Label_1 = tslib_1.__importDefault(require("./Label"));
|
|
8
|
+
function MultiCheckbox(_a) {
|
|
9
|
+
var _b = _a.classnames, classnames = _b === void 0 ? {} : _b, _c = _a.inline, inline = _c === void 0 ? true : _c, _d = _a.rtl, rtl = _d === void 0 ? false : _d, labelProps = _a.labelProps, onChange = _a.onChange, _e = _a.returnType, returnType = _e === void 0 ? 'value' : _e, _f = _a.checkedValues, checkedValues = _f === void 0 ? [] : _f, _g = _a.idKey, idKey = _g === void 0 ? 'id' : _g, _h = _a.valueKey, valueKey = _h === void 0 ? 'value' : _h, _j = _a.labelKey, labelKey = _j === void 0 ? 'label' : _j, name = _a.name, data = _a.data, description = _a.description, keyExtractor = _a.keyExtractor, _k = _a.attributes, attributes = _k === void 0 ? {} : _k, validations = _a.validations, _l = _a.requiredFields, requiredFields = _l === void 0 ? [] : _l, _m = _a.stripDescHTML, stripDescHTML = _m === void 0 ? false : _m, _o = _a.disabledValues, disabledValues = _o === void 0 ? [] : _o, renderLabel = _a.renderLabel, rest = tslib_1.__rest(_a, ["classnames", "inline", "rtl", "labelProps", "onChange", "returnType", "checkedValues", "idKey", "valueKey", "labelKey", "name", "data", "description", "keyExtractor", "attributes", "validations", "requiredFields", "stripDescHTML", "disabledValues", "renderLabel"]);
|
|
10
|
+
var _p = (0, react_1.useState)(checkedValues), selected = _p[0], setSelected = _p[1];
|
|
11
|
+
/* Sync external checkedValues */
|
|
12
|
+
(0, react_1.useEffect)(function () {
|
|
13
|
+
setSelected(checkedValues);
|
|
14
|
+
}, [checkedValues]);
|
|
15
|
+
/* Handle Change */
|
|
16
|
+
function handleChange(value, checked) {
|
|
17
|
+
var updated;
|
|
18
|
+
if (checked) {
|
|
19
|
+
updated = tslib_1.__spreadArray(tslib_1.__spreadArray([], selected, true), [value], false);
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
updated = selected.filter(function (v) { return v !== value; });
|
|
23
|
+
}
|
|
24
|
+
setSelected(updated);
|
|
25
|
+
if (returnType === 'object') {
|
|
26
|
+
var selectedObjects = data.filter(function (d) { return updated.includes(d[valueKey]); });
|
|
27
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(selectedObjects.length ? selectedObjects : null);
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(updated.length ? updated : null);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
/* Render Description */
|
|
34
|
+
function renderDescription() {
|
|
35
|
+
if (!description)
|
|
36
|
+
return null;
|
|
37
|
+
return react_1.default.createElement("p", { className: classnames.description }, description);
|
|
38
|
+
}
|
|
39
|
+
/* Render Checkboxes */
|
|
40
|
+
function renderCheckboxes() {
|
|
41
|
+
return data.map(function (item, index) {
|
|
42
|
+
var itemId = item[idKey];
|
|
43
|
+
var itemValue = item[valueKey];
|
|
44
|
+
var label = renderLabel ? renderLabel(item, item[labelKey]) : item[labelKey];
|
|
45
|
+
var key = keyExtractor ? keyExtractor(item, index) : (itemId !== null && itemId !== void 0 ? itemId : index);
|
|
46
|
+
var isDisabled = disabledValues.includes(itemValue) || (requiredFields.length > 0 && requiredFields.includes(itemValue));
|
|
47
|
+
return (react_1.default.createElement(Checkbox_1.default, tslib_1.__assign({ id: itemId, key: key, name: name, inline: inline, disable: isDisabled, labelProps: { label: label }, classnames: { input: classnames.input }, attributes: { wrapper: attributes.checkbox }, onChange: function (e) { return handleChange(itemValue, e.target.checked); } }, rest)));
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return (react_1.default.createElement("div", tslib_1.__assign({ className: (0, clsx_1.default)(classnames.wrapper, { rtl: rtl }) }, attributes.wrapper),
|
|
51
|
+
labelProps && react_1.default.createElement(Label_1.default, tslib_1.__assign({}, labelProps)),
|
|
52
|
+
renderDescription(),
|
|
53
|
+
renderCheckboxes()));
|
|
54
|
+
}
|
|
55
|
+
exports.default = MultiCheckbox;
|
|
56
|
+
//# sourceMappingURL=MultiCheckbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MultiCheckbox.js","sourceRoot":"","sources":["../../../src/components/MultiCheckbox.tsx"],"names":[],"mappings":";;;AAAA,qDAAqE;AACrE,sDAAuB;AACvB,gEAAiC;AACjC,0DAAgD;AAwChD,SAAS,aAAa,CAAe,EAsBb;IArBtB,IAAA,kBAAe,EAAf,UAAU,mBAAG,EAAE,KAAA,EACf,cAAa,EAAb,MAAM,mBAAG,IAAI,KAAA,EACb,WAAW,EAAX,GAAG,mBAAG,KAAK,KAAA,EACX,UAAU,gBAAA,EACV,QAAQ,cAAA,EACR,kBAAoB,EAApB,UAAU,mBAAG,OAAO,KAAA,EACpB,qBAAkB,EAAlB,aAAa,mBAAG,EAAE,KAAA,EAClB,aAAY,EAAZ,KAAK,mBAAG,IAAI,KAAA,EACZ,gBAAkB,EAAlB,QAAQ,mBAAG,OAAO,KAAA,EAClB,gBAAkB,EAAlB,QAAQ,mBAAG,OAAO,KAAA,EAClB,IAAI,UAAA,EACJ,IAAI,UAAA,EACJ,WAAW,iBAAA,EACX,YAAY,kBAAA,EACZ,kBAAe,EAAf,UAAU,mBAAG,EAAE,KAAA,EACf,WAAW,iBAAA,EACX,sBAAmB,EAAnB,cAAc,mBAAG,EAAE,KAAA,EACnB,qBAAqB,EAArB,aAAa,mBAAG,KAAK,KAAA,EACrB,sBAAmB,EAAnB,cAAc,mBAAG,EAAE,KAAA,EACnB,WAAW,iBAAA,EACR,IAAI,sBArB4B,yQAsBpC,CADQ;IAED,IAAA,KAA0B,IAAA,gBAAQ,EAAyB,aAAa,CAAC,EAAxE,QAAQ,QAAA,EAAE,WAAW,QAAmD,CAAA;IAC/E,iCAAiC;IACjC,IAAA,iBAAS,EAAC;QACR,WAAW,CAAC,aAAa,CAAC,CAAA;IAC5B,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAA;IAEnB,mBAAmB;IACnB,SAAS,YAAY,CAAC,KAAsB,EAAE,OAAgB;QAC5D,IAAI,OAA+B,CAAA;QAEnC,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,mDAAO,QAAQ,UAAE,KAAK,SAAC,CAAA;QAChC,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,KAAK,KAAK,EAAX,CAAW,CAAC,CAAA;QAC/C,CAAC;QAED,WAAW,CAAC,OAAO,CAAC,CAAA;QAEpB,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,UAAC,CAAM,IAAK,OAAA,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAA7B,CAA6B,CAAC,CAAA;YAC9E,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAC7D,CAAC;aAAM,CAAC;YACN,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAC7C,CAAC;IACH,CAAC;IAED,wBAAwB;IACxB,SAAS,iBAAiB;QACxB,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAA;QAE7B,OAAO,qCAAG,SAAS,EAAE,UAAU,CAAC,WAAW,IAAG,WAAW,CAAK,CAAA;IAChE,CAAC;IAED,uBAAuB;IACvB,SAAS,gBAAgB;QACvB,OAAO,IAAI,CAAC,GAAG,CAAC,UAAC,IAAS,EAAE,KAAa;YACvC,IAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;YAC1B,IAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;YAChC,IAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC9E,IAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,KAAK,CAAC,CAAA;YACxE,IAAM,UAAU,GACd,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAA;YACzG,OAAO,CACL,8BAAC,kBAAQ,qBACP,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,UAAU,EACnB,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAC5B,UAAU,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,EACvC,UAAU,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,QAAQ,EAAE,EAC5C,QAAQ,EAAE,UAAC,CAAC,IAAK,OAAA,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAzC,CAAyC,IACtD,IAAI,EACR,CACH,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,CACL,wDAAK,SAAS,EAAE,IAAA,cAAI,EAAC,UAAU,CAAC,OAAO,EAAE,EAAE,GAAG,KAAA,EAAE,CAAC,IAAM,UAAU,CAAC,OAAO;QACtE,UAAU,IAAI,8BAAC,eAAK,uBAAK,UAAU,EAAI;QACvC,iBAAiB,EAAE;QACnB,gBAAgB,EAAE,CACf,CACP,CAAA;AACH,CAAC;AAED,kBAAe,aAAa,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import React, { type ReactElement } from 'react';
|
|
2
|
+
import { type LabelProps } from './Label';
|
|
3
|
+
export interface MultiRadioClassnames {
|
|
4
|
+
description?: string;
|
|
5
|
+
wrapper?: string;
|
|
6
|
+
input?: string;
|
|
7
|
+
radioLabel?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface MultiRadioAttributes {
|
|
10
|
+
wrapper?: object;
|
|
11
|
+
radio?: object;
|
|
12
|
+
}
|
|
13
|
+
export interface MultiRadioProps<T = any> {
|
|
14
|
+
classnames?: MultiRadioClassnames;
|
|
15
|
+
inline?: boolean;
|
|
16
|
+
labelProps?: LabelProps;
|
|
17
|
+
renderLabel?: () => null | ReactElement;
|
|
18
|
+
onChange?: (value: string | number) => void;
|
|
19
|
+
checkedValue?: string | number;
|
|
20
|
+
idKey?: string;
|
|
21
|
+
valueKey?: string;
|
|
22
|
+
labelKey?: string;
|
|
23
|
+
name: string;
|
|
24
|
+
data: T[];
|
|
25
|
+
description?: string;
|
|
26
|
+
keyExtractor?: (dataItem: T, index: number) => React.Key;
|
|
27
|
+
attributes?: MultiRadioAttributes;
|
|
28
|
+
}
|
|
29
|
+
declare function MultiRadio<T = any>({ classnames, inline, labelProps, renderLabel, onChange, checkedValue, idKey, valueKey, labelKey, name, data, description, keyExtractor, attributes, ...rest }: MultiRadioProps<T>): ReactElement;
|
|
30
|
+
export default MultiRadio;
|
|
@@ -0,0 +1,41 @@
|
|
|
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
|
+
var clsx_1 = tslib_1.__importDefault(require("clsx"));
|
|
6
|
+
var Label_1 = tslib_1.__importDefault(require("./Label"));
|
|
7
|
+
var Radio_1 = tslib_1.__importDefault(require("./Radio"));
|
|
8
|
+
var helpers_1 = require("../helpers");
|
|
9
|
+
function MultiRadio(_a) {
|
|
10
|
+
var _b = _a.classnames, classnames = _b === void 0 ? {} : _b, _c = _a.inline, inline = _c === void 0 ? true : _c, labelProps = _a.labelProps, renderLabel = _a.renderLabel, onChange = _a.onChange, checkedValue = _a.checkedValue, _d = _a.idKey, idKey = _d === void 0 ? 'id' : _d, _e = _a.valueKey, valueKey = _e === void 0 ? 'value' : _e, _f = _a.labelKey, labelKey = _f === void 0 ? 'label' : _f, name = _a.name, data = _a.data, description = _a.description, keyExtractor = _a.keyExtractor, _g = _a.attributes, attributes = _g === void 0 ? {} : _g, rest = tslib_1.__rest(_a, ["classnames", "inline", "labelProps", "renderLabel", "onChange", "checkedValue", "idKey", "valueKey", "labelKey", "name", "data", "description", "keyExtractor", "attributes"]);
|
|
11
|
+
/* Destruct props */
|
|
12
|
+
var _h = (0, helpers_1.destructObj)(classnames), wrapperClass = _h.wrapper, inputClass = _h.input, descriptionClass = _h.description;
|
|
13
|
+
var _j = (0, helpers_1.destructObj)(attributes), wrapperAttr = _j.wrapper, radioAttr = _j.radio;
|
|
14
|
+
/* Handle Change */
|
|
15
|
+
function handleChange(value) {
|
|
16
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(value);
|
|
17
|
+
}
|
|
18
|
+
/* Render Description */
|
|
19
|
+
function renderDescription() {
|
|
20
|
+
if ((0, helpers_1.isStrEmpty)(description))
|
|
21
|
+
return null;
|
|
22
|
+
return react_1.default.createElement("div", { className: descriptionClass }, description);
|
|
23
|
+
}
|
|
24
|
+
/* Render Radios */
|
|
25
|
+
function renderRadios() {
|
|
26
|
+
return data.map(function (item, index) {
|
|
27
|
+
var itemId = item[idKey];
|
|
28
|
+
var itemValue = item[valueKey];
|
|
29
|
+
var label = item[labelKey];
|
|
30
|
+
var key = keyExtractor ? keyExtractor(item, index) : (itemId !== null && itemId !== void 0 ? itemId : index);
|
|
31
|
+
return (react_1.default.createElement(Radio_1.default, tslib_1.__assign({ key: key, id: itemId, name: name, inline: inline, checked: checkedValue === itemValue, labelProps: { label: label }, onChange: function () { return handleChange(itemValue); }, classnames: { input: inputClass }, attributes: { wrapper: radioAttr } }, rest)));
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
return (react_1.default.createElement("div", tslib_1.__assign({ className: (0, clsx_1.default)(wrapperClass) }, wrapperAttr),
|
|
35
|
+
(0, helpers_1.isObjNotEmpty)(labelProps) && react_1.default.createElement(Label_1.default, tslib_1.__assign({}, labelProps)), renderLabel === null || renderLabel === void 0 ? void 0 :
|
|
36
|
+
renderLabel(),
|
|
37
|
+
renderDescription(),
|
|
38
|
+
renderRadios()));
|
|
39
|
+
}
|
|
40
|
+
exports.default = MultiRadio;
|
|
41
|
+
//# sourceMappingURL=MultiRadio.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MultiRadio.js","sourceRoot":"","sources":["../../../src/components/MultiRadio.tsx"],"names":[],"mappings":";;;AAAA,wDAAgD;AAChD,sDAAuB;AACvB,0DAAgD;AAChD,0DAA2B;AAC3B,sCAAmE;AA+BnE,SAAS,UAAU,CAAU,EAgBR;IAfnB,IAAA,kBAAe,EAAf,UAAU,mBAAG,EAAE,KAAA,EACf,cAAa,EAAb,MAAM,mBAAG,IAAI,KAAA,EACb,UAAU,gBAAA,EACV,WAAW,iBAAA,EACX,QAAQ,cAAA,EACR,YAAY,kBAAA,EACZ,aAAY,EAAZ,KAAK,mBAAG,IAAI,KAAA,EACZ,gBAAkB,EAAlB,QAAQ,mBAAG,OAAO,KAAA,EAClB,gBAAkB,EAAlB,QAAQ,mBAAG,OAAO,KAAA,EAClB,IAAI,UAAA,EACJ,IAAI,UAAA,EACJ,WAAW,iBAAA,EACX,YAAY,kBAAA,EACZ,kBAAe,EAAf,UAAU,mBAAG,EAAE,KAAA,EACZ,IAAI,sBAfoB,+KAgB5B,CADQ;IAEP,oBAAoB;IACd,IAAA,KAA8E,IAAA,qBAAW,EAAC,UAAU,CAAC,EAA1F,YAAY,aAAA,EAAS,UAAU,WAAA,EAAe,gBAAgB,iBAA4B,CAAA;IAErG,IAAA,KAA6C,IAAA,qBAAW,EAAC,UAAU,CAAC,EAAzD,WAAW,aAAA,EAAS,SAAS,WAA4B,CAAA;IAE1E,mBAAmB;IACnB,SAAS,YAAY,CAAC,KAAsB;QAC1C,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,KAAK,CAAC,CAAA;IACnB,CAAC;IAED,wBAAwB;IACxB,SAAS,iBAAiB;QACxB,IAAI,IAAA,oBAAU,EAAC,WAAW,CAAC;YAAE,OAAO,IAAI,CAAA;QAExC,OAAO,uCAAK,SAAS,EAAE,gBAAgB,IAAG,WAAW,CAAO,CAAA;IAC9D,CAAC;IAED,mBAAmB;IACnB,SAAS,YAAY;QACnB,OAAO,IAAI,CAAC,GAAG,CAAC,UAAC,IAAS,EAAE,KAAa;YACvC,IAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;YAC1B,IAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;YAChC,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;YAE5B,IAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,KAAK,CAAC,CAAA;YAExE,OAAO,CACL,8BAAC,eAAK,qBACJ,GAAG,EAAE,GAAG,EACR,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,YAAY,KAAK,SAAS,EACnC,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAC5B,QAAQ,EAAE,cAAM,OAAA,YAAY,CAAC,SAAS,CAAC,EAAvB,CAAuB,EACvC,UAAU,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,EACjC,UAAU,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,IAC9B,IAAI,EACR,CACH,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,CACL,wDAAK,SAAS,EAAE,IAAA,cAAI,EAAC,YAAY,CAAC,IAAM,WAAW;QAChD,IAAA,uBAAa,EAAC,UAAU,CAAC,IAAI,8BAAC,eAAK,uBAAK,UAAU,EAAI,EACtD,WAAW,aAAX,WAAW;QAAX,WAAW,EAAI;QACf,iBAAiB,EAAE;QACnB,YAAY,EAAE,CACX,CACP,CAAA;AACH,CAAC;AAED,kBAAe,UAAU,CAAA"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import React, { type ReactElement } from 'react';
|
|
2
|
+
import { type LabelProps } from './Label';
|
|
3
|
+
interface Classnames {
|
|
4
|
+
wrapper?: string;
|
|
5
|
+
input?: string;
|
|
6
|
+
description?: string;
|
|
7
|
+
}
|
|
8
|
+
interface Attributes {
|
|
9
|
+
input?: object;
|
|
10
|
+
wrapper?: object;
|
|
11
|
+
description?: object;
|
|
12
|
+
}
|
|
13
|
+
type NumberInputVariant = 'normal' | 'floating';
|
|
14
|
+
export interface NumberInputProps {
|
|
15
|
+
labelProps?: LabelProps;
|
|
16
|
+
placeholder?: string;
|
|
17
|
+
description?: string;
|
|
18
|
+
size?: 'sm' | 'lg';
|
|
19
|
+
value?: string;
|
|
20
|
+
id?: string;
|
|
21
|
+
defaultValue?: string;
|
|
22
|
+
name?: string;
|
|
23
|
+
maxLength?: number;
|
|
24
|
+
classnames?: Classnames;
|
|
25
|
+
attributes?: Attributes;
|
|
26
|
+
variant?: NumberInputVariant;
|
|
27
|
+
/** NEW PROPS */
|
|
28
|
+
min?: number;
|
|
29
|
+
max?: number;
|
|
30
|
+
onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
|
|
31
|
+
onBlur?: (e: React.FocusEvent<HTMLInputElement>) => void;
|
|
32
|
+
onFocus?: (e: React.FocusEvent<HTMLInputElement>) => void;
|
|
33
|
+
inputRef?: React.RefObject<HTMLInputElement>;
|
|
34
|
+
readonly?: boolean;
|
|
35
|
+
disabled?: boolean;
|
|
36
|
+
}
|
|
37
|
+
declare function NumberInput({ labelProps, description, placeholder, size, value, onChange, onBlur, onFocus, variant, inputRef, id, defaultValue, classnames, attributes, name, maxLength, readonly, disabled, min, max, ...rest }: NumberInputProps): ReactElement;
|
|
38
|
+
export default NumberInput;
|
|
@@ -0,0 +1,34 @@
|
|
|
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
|
+
var clsx_1 = tslib_1.__importDefault(require("clsx"));
|
|
6
|
+
var react_bootstrap_1 = require("react-bootstrap");
|
|
7
|
+
var Label_1 = tslib_1.__importDefault(require("./Label"));
|
|
8
|
+
var app_1 = require("../helpers/app");
|
|
9
|
+
function NumberInput(_a) {
|
|
10
|
+
var labelProps = _a.labelProps, description = _a.description, placeholder = _a.placeholder, size = _a.size, value = _a.value, onChange = _a.onChange, onBlur = _a.onBlur, onFocus = _a.onFocus, _b = _a.variant, variant = _b === void 0 ? 'normal' : _b, inputRef = _a.inputRef, id = _a.id, defaultValue = _a.defaultValue, classnames = _a.classnames, attributes = _a.attributes, name = _a.name, _c = _a.maxLength, maxLength = _c === void 0 ? 200 : _c, _d = _a.readonly, readonly = _d === void 0 ? false : _d, _e = _a.disabled, disabled = _e === void 0 ? false : _e, min = _a.min, max = _a.max, rest = tslib_1.__rest(_a, ["labelProps", "description", "placeholder", "size", "value", "onChange", "onBlur", "onFocus", "variant", "inputRef", "id", "defaultValue", "classnames", "attributes", "name", "maxLength", "readonly", "disabled", "min", "max"]);
|
|
11
|
+
var _f = (0, app_1.destructObj)(classnames), inputClass = _f.input, wrapperClass = _f.wrapper, descClass = _f.description;
|
|
12
|
+
var _g = (0, app_1.destructObj)(attributes), inputAttr = _g.input, wrapperAttr = _g.wrapper, descAttr = _g.description;
|
|
13
|
+
var isFloatingVariantEnable = variant === 'floating';
|
|
14
|
+
function renderLabel() {
|
|
15
|
+
if ((0, app_1.isObjEmpty)(labelProps))
|
|
16
|
+
return null;
|
|
17
|
+
return react_1.default.createElement(Label_1.default, tslib_1.__assign({}, labelProps));
|
|
18
|
+
}
|
|
19
|
+
function renderInput() {
|
|
20
|
+
return (react_1.default.createElement(react_bootstrap_1.Form.Control, tslib_1.__assign({ type: 'number', 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, min: min, max: max, className: (0, clsx_1.default)(inputClass) }, inputAttr, rest)));
|
|
21
|
+
}
|
|
22
|
+
function renderDescription() {
|
|
23
|
+
if ((0, app_1.isStrEmpty)(description))
|
|
24
|
+
return null;
|
|
25
|
+
return (react_1.default.createElement(react_bootstrap_1.Form.Text, tslib_1.__assign({ className: (0, clsx_1.default)('text-muted', descClass) }, descAttr), description));
|
|
26
|
+
}
|
|
27
|
+
return (react_1.default.createElement("div", tslib_1.__assign({ className: (0, clsx_1.default)(wrapperClass, { 'form-floating': isFloatingVariantEnable }) }, wrapperAttr),
|
|
28
|
+
!isFloatingVariantEnable && renderLabel(),
|
|
29
|
+
renderInput(),
|
|
30
|
+
isFloatingVariantEnable && renderLabel(),
|
|
31
|
+
renderDescription()));
|
|
32
|
+
}
|
|
33
|
+
exports.default = NumberInput;
|
|
34
|
+
//# sourceMappingURL=NumberInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NumberInput.js","sourceRoot":"","sources":["../../../src/components/NumberInput.tsx"],"names":[],"mappings":";;;AAAA,wDAAgD;AAChD,sDAAuB;AACvB,mDAAsC;AACtC,0DAAgD;AAChD,sCAAoE;AAyCpE,SAAS,WAAW,CAAC,EAsBF;IArBjB,IAAA,UAAU,gBAAA,EACV,WAAW,iBAAA,EACX,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,EAChB,GAAG,SAAA,EACH,GAAG,SAAA,EACA,IAAI,sBArBY,kOAsBpB,CADQ;IAED,IAAA,KAAuE,IAAA,iBAAW,EAAC,UAAU,CAAC,EAArF,UAAU,WAAA,EAAW,YAAY,aAAA,EAAe,SAAS,iBAA4B,CAAA;IAE9F,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,SAAS,WAAW;QAClB,IAAI,IAAA,gBAAU,EAAC,UAAU,CAAC;YAAE,OAAO,IAAI,CAAA;QACvC,OAAO,8BAAC,eAAK,uBAAK,UAAU,EAAI,CAAA;IAClC,CAAC;IAED,SAAS,WAAW;QAClB,OAAO,CACL,8BAAC,sBAAI,CAAC,OAAO,qBACX,IAAI,EAAC,QAAQ,EACb,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,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAA,cAAI,EAAC,UAAU,CAAC,IACvB,SAAS,EACT,IAAI,EACR,CACH,CAAA;IACH,CAAC;IAED,SAAS,iBAAiB;QACxB,IAAI,IAAA,gBAAU,EAAC,WAAW,CAAC;YAAE,OAAO,IAAI,CAAA;QACxC,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,WAAW,CAAA"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reusable Popover Component using React Bootstrap
|
|
3
|
+
*/
|
|
4
|
+
import React, { ReactElement, ReactNode } from 'react';
|
|
5
|
+
import type { OverlayInjectedProps } from 'react-bootstrap/esm/Overlay';
|
|
6
|
+
import type { OverlayTriggerRenderProps } from 'react-bootstrap/esm/OverlayTrigger';
|
|
7
|
+
import type { Placement } from 'react-bootstrap/types';
|
|
8
|
+
export type PopoverSize = 'sm' | 'lg' | 'xl';
|
|
9
|
+
export type PopoverTrigger = 'hover' | 'click' | 'focus';
|
|
10
|
+
interface Classnames {
|
|
11
|
+
wrapper?: string;
|
|
12
|
+
header?: string;
|
|
13
|
+
icon?: string;
|
|
14
|
+
description?: string;
|
|
15
|
+
title?: string;
|
|
16
|
+
body?: string;
|
|
17
|
+
closeBtn?: string;
|
|
18
|
+
closeBtnIcon?: string;
|
|
19
|
+
footer?: string;
|
|
20
|
+
}
|
|
21
|
+
interface Style {
|
|
22
|
+
wrapper?: object;
|
|
23
|
+
header?: object;
|
|
24
|
+
body?: object;
|
|
25
|
+
footer?: object;
|
|
26
|
+
}
|
|
27
|
+
interface Attributes {
|
|
28
|
+
wrapper?: object;
|
|
29
|
+
header?: object;
|
|
30
|
+
body?: object;
|
|
31
|
+
footer?: object;
|
|
32
|
+
description?: object;
|
|
33
|
+
}
|
|
34
|
+
export interface PopoverProps {
|
|
35
|
+
classnames?: Classnames;
|
|
36
|
+
style?: Style;
|
|
37
|
+
attributes?: Attributes;
|
|
38
|
+
trigger?: PopoverTrigger;
|
|
39
|
+
placement?: Placement;
|
|
40
|
+
title?: string;
|
|
41
|
+
description?: string;
|
|
42
|
+
children?: ReactElement | ((props: OverlayTriggerRenderProps) => ReactNode);
|
|
43
|
+
show?: boolean;
|
|
44
|
+
overlay?: ReactNode | ((injected: OverlayInjectedProps) => ReactNode);
|
|
45
|
+
closeBtn?: boolean;
|
|
46
|
+
customHeader?: ReactNode;
|
|
47
|
+
customFooter?: ReactNode;
|
|
48
|
+
rootClose?: boolean;
|
|
49
|
+
backdrop?: boolean;
|
|
50
|
+
handleBackdrop?: () => void;
|
|
51
|
+
onToggle?: (value: boolean) => void;
|
|
52
|
+
size?: PopoverSize;
|
|
53
|
+
rest?: object;
|
|
54
|
+
}
|
|
55
|
+
declare function Popover({ classnames, style, attributes, trigger, placement, title, description, children, show, overlay, closeBtn, customHeader, customFooter, rootClose, backdrop, handleBackdrop, onToggle, size, rest, }: PopoverProps): React.JSX.Element;
|
|
56
|
+
export default Popover;
|
|
@@ -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,24 @@
|
|
|
1
|
+
import { type ChangeEvent, type ReactElement } from 'react';
|
|
2
|
+
import { type LabelProps } from './Label';
|
|
3
|
+
interface Classnames {
|
|
4
|
+
wrapper?: string;
|
|
5
|
+
input?: string;
|
|
6
|
+
}
|
|
7
|
+
interface Attributes {
|
|
8
|
+
wrapper?: object;
|
|
9
|
+
input?: object;
|
|
10
|
+
}
|
|
11
|
+
export interface RadioProps {
|
|
12
|
+
id?: string;
|
|
13
|
+
name?: string;
|
|
14
|
+
disable?: boolean;
|
|
15
|
+
inline?: boolean;
|
|
16
|
+
classnames?: Classnames;
|
|
17
|
+
attributes?: Attributes;
|
|
18
|
+
labelProps?: LabelProps;
|
|
19
|
+
checked?: boolean;
|
|
20
|
+
onChange?: (event: ChangeEvent<HTMLInputElement>) => void;
|
|
21
|
+
onBlur?: (event: ChangeEvent<HTMLInputElement>) => void;
|
|
22
|
+
}
|
|
23
|
+
declare function Radio({ id, name, disable, inline, labelProps, classnames, attributes, checked, onChange, onBlur, }: RadioProps): ReactElement;
|
|
24
|
+
export default Radio;
|
|
@@ -0,0 +1,24 @@
|
|
|
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
|
+
var clsx_1 = tslib_1.__importDefault(require("clsx"));
|
|
6
|
+
var react_bootstrap_1 = require("react-bootstrap");
|
|
7
|
+
var Label_1 = tslib_1.__importDefault(require("./Label"));
|
|
8
|
+
var app_1 = require("../helpers/app");
|
|
9
|
+
function Radio(_a) {
|
|
10
|
+
var id = _a.id, name = _a.name, _b = _a.disable, disable = _b === void 0 ? false : _b, _c = _a.inline, inline = _c === void 0 ? false : _c, labelProps = _a.labelProps, classnames = _a.classnames, attributes = _a.attributes, checked = _a.checked, onChange = _a.onChange, onBlur = _a.onBlur;
|
|
11
|
+
var _d = (0, app_1.destructObj)(classnames), wrapperClass = _d.wrapper, inputClass = _d.input;
|
|
12
|
+
var _e = (0, app_1.destructObj)(attributes), wrapperAttr = _e.wrapper, inputAttr = _e.input;
|
|
13
|
+
/** Label */
|
|
14
|
+
function renderLabel() {
|
|
15
|
+
if ((0, app_1.isStrEmpty)(labelProps === null || labelProps === void 0 ? void 0 : labelProps.label))
|
|
16
|
+
return null;
|
|
17
|
+
return react_1.default.createElement(Label_1.default, tslib_1.__assign({ id: id }, labelProps));
|
|
18
|
+
}
|
|
19
|
+
return (react_1.default.createElement(react_bootstrap_1.Form.Check, tslib_1.__assign({ id: id, name: name, disabled: disable, inline: inline, className: (0, clsx_1.default)(wrapperClass) }, wrapperAttr),
|
|
20
|
+
react_1.default.createElement(react_bootstrap_1.Form.Check.Input, tslib_1.__assign({ type: 'radio', checked: checked, className: (0, clsx_1.default)('me-2', inputClass), onChange: onChange, onBlur: onBlur }, inputAttr)),
|
|
21
|
+
renderLabel()));
|
|
22
|
+
}
|
|
23
|
+
exports.default = Radio;
|
|
24
|
+
//# sourceMappingURL=Radio.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Radio.js","sourceRoot":"","sources":["../../../src/components/Radio.tsx"],"names":[],"mappings":";;;AAAA,wDAAkE;AAClE,sDAAuB;AACvB,mDAAsC;AACtC,0DAAgD;AAChD,sCAAwD;AA0BxD,SAAS,KAAK,CAAC,EAWF;QAVX,EAAE,QAAA,EACF,IAAI,UAAA,EACJ,eAAe,EAAf,OAAO,mBAAG,KAAK,KAAA,EACf,cAAc,EAAd,MAAM,mBAAG,KAAK,KAAA,EACd,UAAU,gBAAA,EACV,UAAU,gBAAA,EACV,UAAU,gBAAA,EACV,OAAO,aAAA,EACP,QAAQ,cAAA,EACR,MAAM,YAAA;IAEA,IAAA,KAA+C,IAAA,iBAAW,EAAC,UAAU,CAAC,EAA3D,YAAY,aAAA,EAAS,UAAU,WAA4B,CAAA;IAEtE,IAAA,KAA6C,IAAA,iBAAW,EAAC,UAAU,CAAC,EAAzD,WAAW,aAAA,EAAS,SAAS,WAA4B,CAAA;IAE1E,YAAY;IACZ,SAAS,WAAW;QAClB,IAAI,IAAA,gBAAU,EAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QAC9C,OAAO,8BAAC,eAAK,qBAAC,EAAE,EAAE,EAAE,IAAM,UAAU,EAAI,CAAA;IAC1C,CAAC;IAED,OAAO,CACL,8BAAC,sBAAI,CAAC,KAAK,qBAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAA,cAAI,EAAC,YAAY,CAAC,IAAM,WAAW;QAC/G,8BAAC,sBAAI,CAAC,KAAK,CAAC,KAAK,qBACf,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,IAAA,cAAI,EAAC,MAAM,EAAE,UAAU,CAAC,EACnC,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,IACV,SAAS,EACb;QACD,WAAW,EAAE,CACH,CACd,CAAA;AACH,CAAC;AAED,kBAAe,KAAK,CAAA"}
|
|
@@ -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;
|