react-restyle-components 0.1.44 → 0.1.45

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 (127) hide show
  1. package/lib/cjs/App.js +36 -12
  2. package/lib/cjs/App.test.js +10 -8
  3. package/lib/cjs/core-components/atoms/buttons/button.stories.js +26 -24
  4. package/lib/cjs/core-components/atoms/buttons/buttons.component.js +27 -9
  5. package/lib/cjs/core-components/atoms/buttons/buttons.test.js +15 -7
  6. package/lib/cjs/core-components/atoms/check-box/checkBox.component.js +102 -35
  7. package/lib/cjs/core-components/atoms/check-box/checkBox.stories.js +17 -17
  8. package/lib/cjs/core-components/atoms/check-box/checkBox.test.js +15 -7
  9. package/lib/cjs/core-components/atoms/date-picker/date-picker.component.js +98 -37
  10. package/lib/cjs/core-components/atoms/date-picker/date-picker.stories.js +17 -15
  11. package/lib/cjs/core-components/atoms/date-picker/date-picker.test.js +16 -7
  12. package/lib/cjs/core-components/atoms/form/form.component.js +571 -159
  13. package/lib/cjs/core-components/atoms/form/form.test.js +87 -59
  14. package/lib/cjs/core-components/atoms/icons/icons.component.js +40 -26
  15. package/lib/cjs/core-components/atoms/input/input-otp.component.js +118 -76
  16. package/lib/cjs/core-components/atoms/input/input-pin.component.js +180 -98
  17. package/lib/cjs/core-components/atoms/input/input-pin.stories.js +14 -14
  18. package/lib/cjs/core-components/atoms/input/input-pin.test.js +28 -10
  19. package/lib/cjs/core-components/atoms/input/input.component.js +104 -33
  20. package/lib/cjs/core-components/atoms/input/input.stories.js +15 -15
  21. package/lib/cjs/core-components/atoms/input/input.test.js +30 -10
  22. package/lib/cjs/core-components/atoms/input-dropdown/input-dropdown.component.js +127 -53
  23. package/lib/cjs/core-components/atoms/input-dropdown/input-dropdown.stories.js +12 -12
  24. package/lib/cjs/core-components/atoms/input-dropdown/input-dropdown.test.js +16 -7
  25. package/lib/cjs/core-components/atoms/loader/loader.component.js +83 -21
  26. package/lib/cjs/core-components/atoms/loader/loader.stories.js +8 -8
  27. package/lib/cjs/core-components/atoms/loader/loader.test.js +11 -7
  28. package/lib/cjs/core-components/atoms/radio/radio.component.js +102 -37
  29. package/lib/cjs/core-components/atoms/radio/radio.stories.js +16 -16
  30. package/lib/cjs/core-components/atoms/radio/radio.test.js +15 -7
  31. package/lib/cjs/core-components/atoms/stepper/stepper.component.js +77 -34
  32. package/lib/cjs/core-components/atoms/stepper/stepper.stories.js +13 -13
  33. package/lib/cjs/core-components/atoms/stepper/stepper.test.js +16 -7
  34. package/lib/cjs/core-components/atoms/stepper/stepper.test.js.map +1 -1
  35. package/lib/cjs/core-components/atoms/tabs/tabs.component.js +95 -0
  36. package/lib/cjs/core-components/atoms/tabs/tabs.component.js.map +1 -0
  37. package/lib/cjs/core-components/atoms/tabs/tabs.stories.js +26 -0
  38. package/lib/cjs/core-components/atoms/tabs/tabs.stories.js.map +1 -0
  39. package/lib/cjs/core-components/atoms/tabs/tabs.test.js +26 -0
  40. package/lib/cjs/core-components/atoms/tabs/tabs.test.js.map +1 -0
  41. package/lib/cjs/core-components/atoms/timer/timer.component.js +119 -92
  42. package/lib/cjs/core-components/atoms/timer/timer.test.js +20 -10
  43. package/lib/cjs/core-components/atoms/tooltip/tooltip.component.js +85 -45
  44. package/lib/cjs/core-components/atoms/tooltip/tooltip.component.test.js +13 -9
  45. package/lib/cjs/core-components/atoms/tooltip/tooltip.stories.js +8 -8
  46. package/lib/cjs/core-components/index.js +65 -27
  47. package/lib/cjs/core-components/index.js.map +1 -1
  48. package/lib/cjs/core-components/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.component.js +210 -106
  49. package/lib/cjs/core-components/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.component.test.js +23 -9
  50. package/lib/cjs/core-components/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.stories.js +38 -36
  51. package/lib/cjs/core-components/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.component.js +209 -104
  52. package/lib/cjs/core-components/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.component.test.js +28 -16
  53. package/lib/cjs/core-components/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.stories.js +24 -22
  54. package/lib/cjs/core-components/molecules/css-multiline-input/css-multiline-input.component.js +203 -106
  55. package/lib/cjs/core-components/molecules/css-multiline-input/css-multiline-input.stories.js +8 -8
  56. package/lib/cjs/core-components/molecules/css-multiline-input/css-multiline-input.test.js +14 -7
  57. package/lib/cjs/core-components/molecules/css-multiline-input/css-properties.js +159 -159
  58. package/lib/cjs/core-utils/index.js +31 -15
  59. package/lib/cjs/core-utils/unit-test.utils.js +8 -6
  60. package/lib/cjs/index.js +31 -15
  61. package/lib/cjs/library/assets/svg/index.js +39 -13
  62. package/lib/cjs/reportWebVitals.js +1 -1
  63. package/lib/cjs/setupTests.js +1 -1
  64. package/lib/esm/App.js +34 -12
  65. package/lib/esm/App.test.js +8 -8
  66. package/lib/esm/core-components/atoms/buttons/button.stories.js +24 -24
  67. package/lib/esm/core-components/atoms/buttons/buttons.component.js +23 -7
  68. package/lib/esm/core-components/atoms/buttons/buttons.test.js +13 -7
  69. package/lib/esm/core-components/atoms/check-box/checkBox.component.js +65 -19
  70. package/lib/esm/core-components/atoms/check-box/checkBox.stories.js +18 -18
  71. package/lib/esm/core-components/atoms/check-box/checkBox.test.js +13 -7
  72. package/lib/esm/core-components/atoms/date-picker/date-picker.component.js +54 -21
  73. package/lib/esm/core-components/atoms/date-picker/date-picker.stories.js +14 -14
  74. package/lib/esm/core-components/atoms/date-picker/date-picker.test.js +15 -8
  75. package/lib/esm/core-components/atoms/form/form.component.js +513 -138
  76. package/lib/esm/core-components/atoms/form/form.test.js +78 -60
  77. package/lib/esm/core-components/atoms/icons/icons.component.js +36 -24
  78. package/lib/esm/core-components/atoms/input/input-otp.component.js +80 -59
  79. package/lib/esm/core-components/atoms/input/input-pin.component.js +142 -81
  80. package/lib/esm/core-components/atoms/input/input-pin.stories.js +15 -15
  81. package/lib/esm/core-components/atoms/input/input-pin.test.js +26 -10
  82. package/lib/esm/core-components/atoms/input/input.component.js +66 -16
  83. package/lib/esm/core-components/atoms/input/input.stories.js +16 -16
  84. package/lib/esm/core-components/atoms/input/input.test.js +28 -10
  85. package/lib/esm/core-components/atoms/input-dropdown/input-dropdown.component.js +95 -36
  86. package/lib/esm/core-components/atoms/input-dropdown/input-dropdown.stories.js +13 -13
  87. package/lib/esm/core-components/atoms/input-dropdown/input-dropdown.test.js +14 -7
  88. package/lib/esm/core-components/atoms/loader/loader.component.js +80 -20
  89. package/lib/esm/core-components/atoms/loader/loader.stories.js +9 -9
  90. package/lib/esm/core-components/atoms/loader/loader.test.js +7 -7
  91. package/lib/esm/core-components/atoms/radio/radio.component.js +65 -21
  92. package/lib/esm/core-components/atoms/radio/radio.stories.js +17 -17
  93. package/lib/esm/core-components/atoms/radio/radio.test.js +13 -7
  94. package/lib/esm/core-components/atoms/stepper/stepper.component.js +74 -32
  95. package/lib/esm/core-components/atoms/stepper/stepper.stories.js +14 -14
  96. package/lib/esm/core-components/atoms/stepper/stepper.test.js +14 -7
  97. package/lib/esm/core-components/atoms/stepper/stepper.test.js.map +1 -1
  98. package/lib/esm/core-components/atoms/tabs/tabs.component.js +47 -0
  99. package/lib/esm/core-components/atoms/tabs/tabs.component.js.map +1 -0
  100. package/lib/esm/core-components/atoms/tabs/tabs.stories.js +23 -0
  101. package/lib/esm/core-components/atoms/tabs/tabs.stories.js.map +1 -0
  102. package/lib/esm/core-components/atoms/tabs/tabs.test.js +19 -0
  103. package/lib/esm/core-components/atoms/tabs/tabs.test.js.map +1 -0
  104. package/lib/esm/core-components/atoms/timer/timer.component.js +81 -75
  105. package/lib/esm/core-components/atoms/timer/timer.test.js +10 -10
  106. package/lib/esm/core-components/atoms/tooltip/tooltip.component.js +46 -25
  107. package/lib/esm/core-components/atoms/tooltip/tooltip.component.test.js +9 -9
  108. package/lib/esm/core-components/atoms/tooltip/tooltip.stories.js +9 -9
  109. package/lib/esm/core-components/index.js +19 -18
  110. package/lib/esm/core-components/index.js.map +1 -1
  111. package/lib/esm/core-components/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.component.js +170 -88
  112. package/lib/esm/core-components/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.component.test.js +17 -9
  113. package/lib/esm/core-components/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.stories.js +38 -37
  114. package/lib/esm/core-components/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.component.js +169 -86
  115. package/lib/esm/core-components/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.component.test.js +22 -16
  116. package/lib/esm/core-components/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.stories.js +24 -23
  117. package/lib/esm/core-components/molecules/css-multiline-input/css-multiline-input.component.js +166 -90
  118. package/lib/esm/core-components/molecules/css-multiline-input/css-multiline-input.stories.js +9 -9
  119. package/lib/esm/core-components/molecules/css-multiline-input/css-multiline-input.test.js +9 -7
  120. package/lib/esm/core-components/molecules/css-multiline-input/css-properties.js +159 -159
  121. package/lib/esm/core-utils/index.js +2 -2
  122. package/lib/esm/core-utils/unit-test.utils.js +5 -5
  123. package/lib/esm/index.js +2 -2
  124. package/lib/esm/library/assets/svg/index.js +19 -10
  125. package/lib/esm/reportWebVitals.js +1 -1
  126. package/lib/esm/setupTests.js +2 -2
  127. package/package.json +3 -1
@@ -1,14 +1,14 @@
1
- import { Tooltip } from './tooltip.component';
1
+ import { Tooltip } from "./tooltip.component";
2
2
  const meta = {
3
- title: 'Design System/Atoms/Tooltip',
4
- component: Tooltip,
5
- tags: ['autodocs'],
6
- parameters: {
7
- componentSubtitle: `import { Tooltip } from 'react-restyle-components'`,
8
- },
3
+ title: "Design System/Atoms/Tooltip",
4
+ component: Tooltip,
5
+ tags: ["autodocs"],
6
+ parameters: {
7
+ componentSubtitle: `import { Tooltip } from 'react-restyle-components'`,
8
+ },
9
9
  };
10
10
  export default meta;
11
11
  export const Primary = {
12
- args: {},
12
+ args: {},
13
13
  };
14
- //# sourceMappingURL=tooltip.stories.js.map
14
+ //# sourceMappingURL=tooltip.stories.js.map
@@ -1,19 +1,20 @@
1
- import * as Form from './atoms/form/form.component';
2
- export * from './atoms/buttons/buttons.component';
3
- export * from './atoms/check-box/checkBox.component';
4
- export * from './atoms/date-picker/date-picker.component';
5
- export * from './atoms/input/input-otp.component';
6
- export * from './atoms/input/input-pin.component';
7
- export * from './atoms/input/input.component';
8
- export * from './atoms/input-dropdown/input-dropdown.component';
9
- export * from './atoms/loader/loader.component';
10
- export * from './atoms/radio/radio.component';
11
- export * from './atoms/stepper/stepper.component';
12
- export * from './atoms/timer/timer.component';
13
- export * from './atoms/tooltip/tooltip.component';
14
- export * from './atoms/icons/icons.component';
15
- export * from './molecules/css-multiline-input/css-multiline-input.component';
16
- export * from './molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.component';
17
- export * from './molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.component';
1
+ import * as Form from "./atoms/form/form.component";
2
+ export * from "./atoms/buttons/buttons.component";
3
+ export * from "./atoms/check-box/checkBox.component";
4
+ export * from "./atoms/date-picker/date-picker.component";
5
+ export * from "./atoms/input/input-otp.component";
6
+ export * from "./atoms/input/input-pin.component";
7
+ export * from "./atoms/input/input.component";
8
+ export * from "./atoms/input-dropdown/input-dropdown.component";
9
+ export * from "./atoms/loader/loader.component";
10
+ export * from "./atoms/radio/radio.component";
11
+ export * from "./atoms/stepper/stepper.component";
12
+ export * from "./atoms/timer/timer.component";
13
+ export * from "./atoms/tooltip/tooltip.component";
14
+ export * from "./atoms/icons/icons.component";
15
+ export * from "./atoms/tabs/tabs.component";
16
+ export * from "./molecules/css-multiline-input/css-multiline-input.component";
17
+ export * from "./molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.component";
18
+ export * from "./molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.component";
18
19
  export { Form };
19
- //# sourceMappingURL=index.js.map
20
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core-components/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,6BAA6B,CAAC;AACpD,cAAc,mCAAmC,CAAC;AAClD,cAAc,sCAAsC,CAAC;AACrD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iDAAiD,CAAC;AAChE,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAE9C,cAAc,+DAA+D,CAAC;AAC9E,cAAc,iJAAiJ,CAAC;AAChK,cAAc,6IAA6I,CAAC;AAE5J,OAAO,EAAC,IAAI,EAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core-components/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,6BAA6B,CAAC;AACpD,cAAc,mCAAmC,CAAC;AAClD,cAAc,sCAAsC,CAAC;AACrD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iDAAiD,CAAC;AAChE,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAE5C,cAAc,+DAA+D,CAAC;AAC9E,cAAc,iJAAiJ,CAAC;AAChK,cAAc,6IAA6I,CAAC;AAE5J,OAAO,EAAC,IAAI,EAAC,CAAC"}
@@ -1,92 +1,174 @@
1
1
  /* eslint-disable */
2
- import React, { useState, useEffect, useRef } from 'react';
3
- import { Icon } from '../..';
4
- export const AutoCompleteFilterMultipleSelectMultipleFieldsDisplay = ({ uniqueField = '_id', loader = false, placeholder = 'Search...', data, hasError = false, disable = false, isUpperCase = false, name, onFilter, onUpdate, onSelect, onBlur, }) => {
5
- const [value, setValue] = useState('');
6
- const [options, setOptions] = useState();
7
- const [originalOptions, setOriginalOptions] = useState();
8
- const [isListOpen, setIsListOpen] = useState(false);
9
- const useOutsideAlerter = (ref) => {
10
- useEffect(() => {
11
- function handleClickOutside(event) {
12
- if (ref.current && !ref.current.contains(event.target) && isListOpen) {
13
- if (originalOptions && options) {
14
- if (isListOpen) {
15
- onUpdate && onUpdate(data.selected);
16
- }
17
- }
18
- setIsListOpen(false);
19
- setValue('');
20
- }
21
- }
22
- document.addEventListener('mousedown', handleClickOutside);
23
- return () => {
24
- document.removeEventListener('mousedown', handleClickOutside);
25
- };
26
- }, [ref, isListOpen]);
27
- };
28
- const wrapperRef = useRef(null);
29
- useOutsideAlerter(wrapperRef);
30
- let count = 0;
31
- const getSelectedItem = (selectedItem, list) => {
32
- if (count === 0) {
33
- const finalList = list === null || list === void 0 ? void 0 : list.filter((item, index) => {
34
- item.selected = false;
35
- selectedItem && selectedItem.length > 0
36
- ? selectedItem.find((sItem, index) => {
37
- if (sItem[uniqueField] === item[uniqueField]) {
38
- item.selected = true;
39
- }
40
- })
41
- : (item.selected = false);
42
- count++;
43
- return item;
44
- });
45
- list = finalList;
46
- }
47
- return list;
48
- };
2
+ import React, { useState, useEffect, useRef } from "react";
3
+ import { Icon } from "../..";
4
+ export const AutoCompleteFilterMultipleSelectMultipleFieldsDisplay = ({
5
+ uniqueField = "_id",
6
+ loader = false,
7
+ placeholder = "Search...",
8
+ data,
9
+ hasError = false,
10
+ disable = false,
11
+ isUpperCase = false,
12
+ name,
13
+ onFilter,
14
+ onUpdate,
15
+ onSelect,
16
+ onBlur,
17
+ }) => {
18
+ const [value, setValue] = useState("");
19
+ const [options, setOptions] = useState();
20
+ const [originalOptions, setOriginalOptions] = useState();
21
+ const [isListOpen, setIsListOpen] = useState(false);
22
+ const useOutsideAlerter = (ref) => {
49
23
  useEffect(() => {
50
- setOriginalOptions(getSelectedItem(data.selected, data.list));
51
- setOptions(getSelectedItem(data.selected, data.list));
52
- }, [data, data.selected]);
53
- const onChange = (e) => {
54
- const search = e.target.value;
55
- setValue(search);
56
- onFilter && onFilter(search);
57
- };
58
- const onKeyUp = (e) => {
59
- const charCode = e.which ? e.which : e.keyCode;
60
- if (charCode === 8) {
61
- const search = e.target.value;
62
- onFilter && onFilter(search);
24
+ function handleClickOutside(event) {
25
+ if (ref.current && !ref.current.contains(event.target) && isListOpen) {
26
+ if (originalOptions && options) {
27
+ if (isListOpen) {
28
+ onUpdate && onUpdate(data.selected);
29
+ }
30
+ }
31
+ setIsListOpen(false);
32
+ setValue("");
63
33
  }
64
- };
65
- return (React.createElement(React.Fragment, null,
66
- React.createElement("div", { ref: wrapperRef, className: "w-full relative" },
67
- React.createElement("div", { className: `flex items-center leading-4 p-2 focus:outline-none focus:ring w-full shadow-sm sm:text-base border-2 ${hasError ? 'border-red' : 'border-gray-300'} rounded-md` },
68
- React.createElement("input", { placeholder: placeholder, disabled: disable, name: name, value: !isListOpen
69
- ? `${(data.selected && data.selected.length) || 0} Items`
70
- : isUpperCase
71
- ? value === null || value === void 0 ? void 0 : value.toUpperCase()
72
- : value, className: `w-full focus:outline-none bg-none`, onKeyUp: onKeyUp, onChange: onChange, onClick: () => setIsListOpen(true), onBlur: (e) => onBlur && onBlur(e) }),
73
- isListOpen ? (React.createElement(Icon, { nameIcon: "FaChevronUp", propsIcon: {
74
- color: '#000000',
75
- size: 22,
76
- } })) : (React.createElement(Icon, { nameIcon: "FaChevronDown", propsIcon: {
77
- color: '#000000',
78
- size: 22,
79
- } }))),
80
- options && isListOpen
81
- ? (options === null || options === void 0 ? void 0 : options.length) > 0 && (React.createElement("div", { className: "mt-1 absolute bg-gray-100 p-2 rounded-sm z-500", style: { zIndex: 80 } },
82
- React.createElement("ul", null, options === null || options === void 0 ? void 0 : options.map((item, index) => (React.createElement(React.Fragment, null,
83
- React.createElement("li", { key: index, className: "text-gray-400 flex items-center" },
84
- React.createElement("input", { type: "checkbox", checked: item.selected, onChange: () => onSelect(item) }),
85
- ' ',
86
- React.createElement("label", { className: "ml-2 mt-1 text-black" }, data.displayKey
87
- .map((key) => `${item[key]}
88
- `)
89
- .join(' - ')))))))))
90
- : null)));
34
+ }
35
+ document.addEventListener("mousedown", handleClickOutside);
36
+ return () => {
37
+ document.removeEventListener("mousedown", handleClickOutside);
38
+ };
39
+ }, [ref, isListOpen]);
40
+ };
41
+ const wrapperRef = useRef(null);
42
+ useOutsideAlerter(wrapperRef);
43
+ let count = 0;
44
+ const getSelectedItem = (selectedItem, list) => {
45
+ if (count === 0) {
46
+ const finalList =
47
+ list === null || list === void 0
48
+ ? void 0
49
+ : list.filter((item, index) => {
50
+ item.selected = false;
51
+ selectedItem && selectedItem.length > 0
52
+ ? selectedItem.find((sItem, index) => {
53
+ if (sItem[uniqueField] === item[uniqueField]) {
54
+ item.selected = true;
55
+ }
56
+ })
57
+ : (item.selected = false);
58
+ count++;
59
+ return item;
60
+ });
61
+ list = finalList;
62
+ }
63
+ return list;
64
+ };
65
+ useEffect(() => {
66
+ setOriginalOptions(getSelectedItem(data.selected, data.list));
67
+ setOptions(getSelectedItem(data.selected, data.list));
68
+ }, [data, data.selected]);
69
+ const onChange = (e) => {
70
+ const search = e.target.value;
71
+ setValue(search);
72
+ onFilter && onFilter(search);
73
+ };
74
+ const onKeyUp = (e) => {
75
+ const charCode = e.which ? e.which : e.keyCode;
76
+ if (charCode === 8) {
77
+ const search = e.target.value;
78
+ onFilter && onFilter(search);
79
+ }
80
+ };
81
+ return React.createElement(
82
+ React.Fragment,
83
+ null,
84
+ React.createElement(
85
+ "div",
86
+ { ref: wrapperRef, className: "w-full relative" },
87
+ React.createElement(
88
+ "div",
89
+ {
90
+ className: `flex items-center leading-4 p-2 focus:outline-none focus:ring w-full shadow-sm sm:text-base border-2 ${hasError ? "border-red" : "border-gray-300"} rounded-md`,
91
+ },
92
+ React.createElement("input", {
93
+ placeholder: placeholder,
94
+ disabled: disable,
95
+ name: name,
96
+ value: !isListOpen
97
+ ? `${(data.selected && data.selected.length) || 0} Items`
98
+ : isUpperCase
99
+ ? value === null || value === void 0
100
+ ? void 0
101
+ : value.toUpperCase()
102
+ : value,
103
+ className: `w-full focus:outline-none bg-none`,
104
+ onKeyUp: onKeyUp,
105
+ onChange: onChange,
106
+ onClick: () => setIsListOpen(true),
107
+ onBlur: (e) => onBlur && onBlur(e),
108
+ }),
109
+ isListOpen
110
+ ? React.createElement(Icon, {
111
+ nameIcon: "FaChevronUp",
112
+ propsIcon: {
113
+ color: "#000000",
114
+ size: 22,
115
+ },
116
+ })
117
+ : React.createElement(Icon, {
118
+ nameIcon: "FaChevronDown",
119
+ propsIcon: {
120
+ color: "#000000",
121
+ size: 22,
122
+ },
123
+ }),
124
+ ),
125
+ options && isListOpen
126
+ ? (options === null || options === void 0 ? void 0 : options.length) >
127
+ 0 &&
128
+ React.createElement(
129
+ "div",
130
+ {
131
+ className: "mt-1 absolute bg-gray-100 p-2 rounded-sm z-500",
132
+ style: { zIndex: 80 },
133
+ },
134
+ React.createElement(
135
+ "ul",
136
+ null,
137
+ options === null || options === void 0
138
+ ? void 0
139
+ : options.map((item, index) =>
140
+ React.createElement(
141
+ React.Fragment,
142
+ null,
143
+ React.createElement(
144
+ "li",
145
+ {
146
+ key: index,
147
+ className: "text-gray-400 flex items-center",
148
+ },
149
+ React.createElement("input", {
150
+ type: "checkbox",
151
+ checked: item.selected,
152
+ onChange: () => onSelect(item),
153
+ }),
154
+ " ",
155
+ React.createElement(
156
+ "label",
157
+ { className: "ml-2 mt-1 text-black" },
158
+ data.displayKey
159
+ .map(
160
+ (key) => `${item[key]}
161
+ `,
162
+ )
163
+ .join(" - "),
164
+ ),
165
+ ),
166
+ ),
167
+ ),
168
+ ),
169
+ )
170
+ : null,
171
+ ),
172
+ );
91
173
  };
92
- //# sourceMappingURL=auto-complete-filter-multiple-select-multiple-fields-display.component.js.map
174
+ //# sourceMappingURL=auto-complete-filter-multiple-select-multiple-fields-display.component.js.map
@@ -1,10 +1,18 @@
1
- import React from 'react';
2
- import { render } from '@core-utils';
3
- import { AutoCompleteFilterMultipleSelectMultipleFieldsDisplay } from './auto-complete-filter-multiple-select-multiple-fields-display.component';
4
- it('render AutoCompleteFilterMultipleSelectMultipleFieldsDisplay correctly', () => {
5
- const autoCompleteFilterMultipleSelectMultipleFieldsDisplay = render(React.createElement(AutoCompleteFilterMultipleSelectMultipleFieldsDisplay, { data: [], onUpdate: (item) => {
6
- console.log({ item });
7
- }, onSelect: (item) => { } }));
8
- expect(autoCompleteFilterMultipleSelectMultipleFieldsDisplay).toMatchSnapshot();
1
+ import React from "react";
2
+ import { render } from "@core-utils";
3
+ import { AutoCompleteFilterMultipleSelectMultipleFieldsDisplay } from "./auto-complete-filter-multiple-select-multiple-fields-display.component";
4
+ it("render AutoCompleteFilterMultipleSelectMultipleFieldsDisplay correctly", () => {
5
+ const autoCompleteFilterMultipleSelectMultipleFieldsDisplay = render(
6
+ React.createElement(AutoCompleteFilterMultipleSelectMultipleFieldsDisplay, {
7
+ data: [],
8
+ onUpdate: (item) => {
9
+ console.log({ item });
10
+ },
11
+ onSelect: (item) => {},
12
+ }),
13
+ );
14
+ expect(
15
+ autoCompleteFilterMultipleSelectMultipleFieldsDisplay,
16
+ ).toMatchSnapshot();
9
17
  });
10
- //# sourceMappingURL=auto-complete-filter-multiple-select-multiple-fields-display.component.test.js.map
18
+ //# sourceMappingURL=auto-complete-filter-multiple-select-multiple-fields-display.component.test.js.map
@@ -1,46 +1,47 @@
1
- import { AutoCompleteFilterMultipleSelectMultipleFieldsDisplay } from './auto-complete-filter-multiple-select-multiple-fields-display.component';
1
+ import { AutoCompleteFilterMultipleSelectMultipleFieldsDisplay } from "./auto-complete-filter-multiple-select-multiple-fields-display.component";
2
2
  const meta = {
3
- title: 'Design System/Molecules/AutoCompleteFilterMultipleSelectMultipleFieldsDisplay',
4
- component: AutoCompleteFilterMultipleSelectMultipleFieldsDisplay,
5
- tags: ['autodocs'],
6
- parameters: {
7
- componentSubtitle: `import { AutoCompleteFilterMultipleSelectMultipleFieldsDisplay } from 'react-restyle-components'`,
8
- },
3
+ title:
4
+ "Design System/Molecules/AutoCompleteFilterMultipleSelectMultipleFieldsDisplay",
5
+ component: AutoCompleteFilterMultipleSelectMultipleFieldsDisplay,
6
+ tags: ["autodocs"],
7
+ parameters: {
8
+ componentSubtitle: `import { AutoCompleteFilterMultipleSelectMultipleFieldsDisplay } from 'react-restyle-components'`,
9
+ },
9
10
  };
10
11
  export default meta;
11
12
  export const Primary = {
12
- args: {
13
- data: {
14
- list: [
15
- {
16
- _id: '66532a99bbfed4eea86eae23',
17
- code: 82,
18
- description: 'TEST1',
19
- libraryCode: 'ABCD',
20
- },
21
- {
22
- _id: '6652b6d8bcef7f713cb547d4',
23
- code: 81,
24
- description: 'TEST New',
25
- libraryCode: 'TEST',
26
- },
27
- ],
28
- selected: [
29
- {
30
- _id: '66532a99bbfed4eea86eae23',
31
- code: 82,
32
- description: 'TEST1',
33
- libraryCode: 'ABCD',
34
- },
35
- ],
36
- displayKey: ['libraryCode', 'description'],
13
+ args: {
14
+ data: {
15
+ list: [
16
+ {
17
+ _id: "66532a99bbfed4eea86eae23",
18
+ code: 82,
19
+ description: "TEST1",
20
+ libraryCode: "ABCD",
37
21
  },
38
- onUpdate: (item) => {
39
- console.log({ item });
22
+ {
23
+ _id: "6652b6d8bcef7f713cb547d4",
24
+ code: 81,
25
+ description: "TEST New",
26
+ libraryCode: "TEST",
40
27
  },
41
- onSelect: (item) => {
42
- console.log({ item });
28
+ ],
29
+ selected: [
30
+ {
31
+ _id: "66532a99bbfed4eea86eae23",
32
+ code: 82,
33
+ description: "TEST1",
34
+ libraryCode: "ABCD",
43
35
  },
36
+ ],
37
+ displayKey: ["libraryCode", "description"],
38
+ },
39
+ onUpdate: (item) => {
40
+ console.log({ item });
41
+ },
42
+ onSelect: (item) => {
43
+ console.log({ item });
44
44
  },
45
+ },
45
46
  };
46
- //# sourceMappingURL=auto-complete-filter-multiple-select-multiple-fields-display.stories.js.map
47
+ //# sourceMappingURL=auto-complete-filter-multiple-select-multiple-fields-display.stories.js.map