react-restyle-components 0.1.45 → 0.1.47

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 (140) hide show
  1. package/lib/cjs/App.js +12 -36
  2. package/lib/cjs/App.test.js +8 -10
  3. package/lib/cjs/core-components/atoms/buttons/button.stories.js +24 -26
  4. package/lib/cjs/core-components/atoms/buttons/buttons.component.js +9 -27
  5. package/lib/cjs/core-components/atoms/buttons/buttons.test.js +7 -15
  6. package/lib/cjs/core-components/atoms/check-box/checkBox.component.js +35 -102
  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 +7 -15
  9. package/lib/cjs/core-components/atoms/date-picker/date-picker.component.js +37 -98
  10. package/lib/cjs/core-components/atoms/date-picker/date-picker.stories.js +15 -17
  11. package/lib/cjs/core-components/atoms/date-picker/date-picker.test.js +7 -16
  12. package/lib/cjs/core-components/atoms/form/form.component.js +159 -571
  13. package/lib/cjs/core-components/atoms/form/form.test.js +59 -87
  14. package/lib/cjs/core-components/atoms/icons/icons.component.js +58 -41
  15. package/lib/cjs/core-components/atoms/icons/icons.component.js.map +1 -1
  16. package/lib/cjs/core-components/atoms/icons/icons.stories.js +23 -0
  17. package/lib/cjs/core-components/atoms/icons/icons.stories.js.map +1 -0
  18. package/lib/cjs/core-components/atoms/icons/icons.test.js +16 -0
  19. package/lib/cjs/core-components/atoms/icons/icons.test.js.map +1 -0
  20. package/lib/cjs/core-components/atoms/input/input-otp.component.js +76 -118
  21. package/lib/cjs/core-components/atoms/input/input-pin.component.js +98 -180
  22. package/lib/cjs/core-components/atoms/input/input-pin.stories.js +14 -14
  23. package/lib/cjs/core-components/atoms/input/input-pin.test.js +10 -28
  24. package/lib/cjs/core-components/atoms/input/input.component.js +33 -104
  25. package/lib/cjs/core-components/atoms/input/input.stories.js +15 -15
  26. package/lib/cjs/core-components/atoms/input/input.test.js +10 -30
  27. package/lib/cjs/core-components/atoms/input-dropdown/input-dropdown.component.js +53 -127
  28. package/lib/cjs/core-components/atoms/input-dropdown/input-dropdown.stories.js +12 -12
  29. package/lib/cjs/core-components/atoms/input-dropdown/input-dropdown.test.js +7 -16
  30. package/lib/cjs/core-components/atoms/loader/loader.component.js +21 -83
  31. package/lib/cjs/core-components/atoms/loader/loader.stories.js +8 -8
  32. package/lib/cjs/core-components/atoms/loader/loader.test.js +7 -11
  33. package/lib/cjs/core-components/atoms/radio/radio.component.js +37 -102
  34. package/lib/cjs/core-components/atoms/radio/radio.stories.js +16 -16
  35. package/lib/cjs/core-components/atoms/radio/radio.test.js +7 -15
  36. package/lib/cjs/core-components/atoms/stepper/stepper.component.js +34 -77
  37. package/lib/cjs/core-components/atoms/stepper/stepper.stories.js +13 -13
  38. package/lib/cjs/core-components/atoms/stepper/stepper.test.js +7 -16
  39. package/lib/cjs/core-components/atoms/tabs/tabs.component.js +32 -81
  40. package/lib/cjs/core-components/atoms/tabs/tabs.stories.js +16 -16
  41. package/lib/cjs/core-components/atoms/tabs/tabs.stories.js.map +1 -1
  42. package/lib/cjs/core-components/atoms/tabs/tabs.test.js +13 -20
  43. package/lib/cjs/core-components/atoms/timer/timer.component.js +92 -119
  44. package/lib/cjs/core-components/atoms/timer/timer.test.js +10 -20
  45. package/lib/cjs/core-components/atoms/tooltip/tooltip.component.js +45 -85
  46. package/lib/cjs/core-components/atoms/tooltip/tooltip.component.test.js +9 -13
  47. package/lib/cjs/core-components/atoms/tooltip/tooltip.stories.js +8 -8
  48. package/lib/cjs/core-components/index.js +27 -64
  49. package/lib/cjs/core-components/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.component.js +106 -210
  50. 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 +9 -23
  51. package/lib/cjs/core-components/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.stories.js +36 -38
  52. package/lib/cjs/core-components/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.component.js +104 -209
  53. 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 +16 -28
  54. package/lib/cjs/core-components/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.stories.js +22 -24
  55. package/lib/cjs/core-components/molecules/css-multiline-input/css-multiline-input.component.js +106 -203
  56. package/lib/cjs/core-components/molecules/css-multiline-input/css-multiline-input.stories.js +8 -8
  57. package/lib/cjs/core-components/molecules/css-multiline-input/css-multiline-input.test.js +7 -14
  58. package/lib/cjs/core-components/molecules/css-multiline-input/css-properties.js +159 -159
  59. package/lib/cjs/core-utils/index.js +15 -31
  60. package/lib/cjs/core-utils/unit-test.utils.js +6 -8
  61. package/lib/cjs/index.js +15 -31
  62. package/lib/cjs/library/assets/svg/DownArrow.svg +14 -0
  63. package/lib/cjs/library/assets/svg/UpArrow.svg +14 -0
  64. package/lib/cjs/library/assets/svg/checkedBox.svg +14 -0
  65. package/lib/cjs/library/assets/svg/checkedRadio.svg +13 -0
  66. package/lib/cjs/library/assets/svg/datePicker.svg +3 -0
  67. package/lib/cjs/library/assets/svg/index.js +13 -39
  68. package/lib/cjs/library/assets/svg/index.ts +38 -0
  69. package/lib/cjs/library/assets/svg/timer copy.svg +3 -0
  70. package/lib/cjs/library/assets/svg/timer.svg +3 -0
  71. package/lib/cjs/library/assets/svg/unCheckbox.svg +3 -0
  72. package/lib/cjs/library/assets/svg/uncheckRadio.svg +3 -0
  73. package/lib/cjs/reportWebVitals.js +1 -1
  74. package/lib/cjs/setupTests.js +1 -1
  75. package/lib/esm/App.js +12 -34
  76. package/lib/esm/App.test.js +8 -8
  77. package/lib/esm/core-components/atoms/buttons/button.stories.js +24 -24
  78. package/lib/esm/core-components/atoms/buttons/buttons.component.js +7 -23
  79. package/lib/esm/core-components/atoms/buttons/buttons.test.js +7 -13
  80. package/lib/esm/core-components/atoms/check-box/checkBox.component.js +19 -65
  81. package/lib/esm/core-components/atoms/check-box/checkBox.stories.js +18 -18
  82. package/lib/esm/core-components/atoms/check-box/checkBox.test.js +7 -13
  83. package/lib/esm/core-components/atoms/date-picker/date-picker.component.js +21 -54
  84. package/lib/esm/core-components/atoms/date-picker/date-picker.stories.js +14 -14
  85. package/lib/esm/core-components/atoms/date-picker/date-picker.test.js +8 -15
  86. package/lib/esm/core-components/atoms/form/form.component.js +138 -513
  87. package/lib/esm/core-components/atoms/form/form.test.js +60 -78
  88. package/lib/esm/core-components/atoms/icons/icons.component.js +32 -36
  89. package/lib/esm/core-components/atoms/icons/icons.component.js.map +1 -1
  90. package/lib/esm/core-components/atoms/icons/icons.stories.js +20 -0
  91. package/lib/esm/core-components/atoms/icons/icons.stories.js.map +1 -0
  92. package/lib/esm/core-components/atoms/icons/icons.test.js +11 -0
  93. package/lib/esm/core-components/atoms/icons/icons.test.js.map +1 -0
  94. package/lib/esm/core-components/atoms/input/input-otp.component.js +59 -80
  95. package/lib/esm/core-components/atoms/input/input-pin.component.js +81 -142
  96. package/lib/esm/core-components/atoms/input/input-pin.stories.js +15 -15
  97. package/lib/esm/core-components/atoms/input/input-pin.test.js +10 -26
  98. package/lib/esm/core-components/atoms/input/input.component.js +16 -66
  99. package/lib/esm/core-components/atoms/input/input.stories.js +16 -16
  100. package/lib/esm/core-components/atoms/input/input.test.js +10 -28
  101. package/lib/esm/core-components/atoms/input-dropdown/input-dropdown.component.js +36 -95
  102. package/lib/esm/core-components/atoms/input-dropdown/input-dropdown.stories.js +13 -13
  103. package/lib/esm/core-components/atoms/input-dropdown/input-dropdown.test.js +7 -14
  104. package/lib/esm/core-components/atoms/loader/loader.component.js +20 -80
  105. package/lib/esm/core-components/atoms/loader/loader.stories.js +9 -9
  106. package/lib/esm/core-components/atoms/loader/loader.test.js +7 -7
  107. package/lib/esm/core-components/atoms/radio/radio.component.js +21 -65
  108. package/lib/esm/core-components/atoms/radio/radio.stories.js +17 -17
  109. package/lib/esm/core-components/atoms/radio/radio.test.js +7 -13
  110. package/lib/esm/core-components/atoms/stepper/stepper.component.js +32 -74
  111. package/lib/esm/core-components/atoms/stepper/stepper.stories.js +14 -14
  112. package/lib/esm/core-components/atoms/stepper/stepper.test.js +7 -14
  113. package/lib/esm/core-components/atoms/tabs/tabs.component.js +15 -43
  114. package/lib/esm/core-components/atoms/tabs/tabs.stories.js +17 -17
  115. package/lib/esm/core-components/atoms/tabs/tabs.stories.js.map +1 -1
  116. package/lib/esm/core-components/atoms/tabs/tabs.test.js +13 -18
  117. package/lib/esm/core-components/atoms/timer/timer.component.js +75 -81
  118. package/lib/esm/core-components/atoms/timer/timer.test.js +10 -10
  119. package/lib/esm/core-components/atoms/tooltip/tooltip.component.js +25 -46
  120. package/lib/esm/core-components/atoms/tooltip/tooltip.component.test.js +9 -9
  121. package/lib/esm/core-components/atoms/tooltip/tooltip.stories.js +9 -9
  122. package/lib/esm/core-components/index.js +19 -19
  123. package/lib/esm/core-components/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.component.js +88 -170
  124. 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 +9 -17
  125. package/lib/esm/core-components/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.stories.js +37 -38
  126. package/lib/esm/core-components/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.component.js +86 -169
  127. 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 +16 -22
  128. package/lib/esm/core-components/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.stories.js +23 -24
  129. package/lib/esm/core-components/molecules/css-multiline-input/css-multiline-input.component.js +90 -166
  130. package/lib/esm/core-components/molecules/css-multiline-input/css-multiline-input.stories.js +9 -9
  131. package/lib/esm/core-components/molecules/css-multiline-input/css-multiline-input.test.js +7 -9
  132. package/lib/esm/core-components/molecules/css-multiline-input/css-properties.js +159 -159
  133. package/lib/esm/core-utils/index.js +2 -2
  134. package/lib/esm/core-utils/unit-test.utils.js +5 -5
  135. package/lib/esm/index.js +2 -2
  136. package/lib/esm/library/assets/svg/index.js +10 -19
  137. package/lib/esm/reportWebVitals.js +1 -1
  138. package/lib/esm/setupTests.js +2 -2
  139. package/lib/package.json +124 -0
  140. package/package.json +4 -4
@@ -1,174 +1,92 @@
1
1
  /* eslint-disable */
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) => {
23
- useEffect(() => {
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("");
33
- }
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;
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
+ }
55
17
  }
56
- })
57
- : (item.selected = false);
58
- count++;
59
- return item;
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;
60
44
  });
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
- );
45
+ list = finalList;
46
+ }
47
+ return list;
48
+ };
49
+ 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);
63
+ }
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)));
173
91
  };
174
- //# sourceMappingURL=auto-complete-filter-multiple-select-multiple-fields-display.component.js.map
92
+ //# sourceMappingURL=auto-complete-filter-multiple-select-multiple-fields-display.component.js.map
@@ -1,18 +1,10 @@
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();
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();
17
9
  });
18
- //# sourceMappingURL=auto-complete-filter-multiple-select-multiple-fields-display.component.test.js.map
10
+ //# sourceMappingURL=auto-complete-filter-multiple-select-multiple-fields-display.component.test.js.map
@@ -1,47 +1,46 @@
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:
4
- "Design System/Molecules/AutoCompleteFilterMultipleSelectMultipleFieldsDisplay",
5
- component: AutoCompleteFilterMultipleSelectMultipleFieldsDisplay,
6
- tags: ["autodocs"],
7
- parameters: {
8
- componentSubtitle: `import { AutoCompleteFilterMultipleSelectMultipleFieldsDisplay } from 'react-restyle-components'`,
9
- },
3
+ title: 'Design System/Molecules/AutoCompleteFilterMultipleSelectMultipleFieldsDisplay',
4
+ component: AutoCompleteFilterMultipleSelectMultipleFieldsDisplay,
5
+ tags: ['autodocs'],
6
+ parameters: {
7
+ componentSubtitle: `import { AutoCompleteFilterMultipleSelectMultipleFieldsDisplay } from 'react-restyle-components'`,
8
+ },
10
9
  };
11
10
  export default meta;
12
11
  export const Primary = {
13
- args: {
14
- data: {
15
- list: [
16
- {
17
- _id: "66532a99bbfed4eea86eae23",
18
- code: 82,
19
- description: "TEST1",
20
- libraryCode: "ABCD",
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'],
21
37
  },
22
- {
23
- _id: "6652b6d8bcef7f713cb547d4",
24
- code: 81,
25
- description: "TEST New",
26
- libraryCode: "TEST",
38
+ onUpdate: (item) => {
39
+ console.log({ item });
27
40
  },
28
- ],
29
- selected: [
30
- {
31
- _id: "66532a99bbfed4eea86eae23",
32
- code: 82,
33
- description: "TEST1",
34
- libraryCode: "ABCD",
41
+ onSelect: (item) => {
42
+ console.log({ item });
35
43
  },
36
- ],
37
- displayKey: ["libraryCode", "description"],
38
- },
39
- onUpdate: (item) => {
40
- console.log({ item });
41
- },
42
- onSelect: (item) => {
43
- console.log({ item });
44
44
  },
45
- },
46
45
  };
47
- //# sourceMappingURL=auto-complete-filter-multiple-select-multiple-fields-display.stories.js.map
46
+ //# sourceMappingURL=auto-complete-filter-multiple-select-multiple-fields-display.stories.js.map
@@ -1,177 +1,94 @@
1
1
  /* eslint-disable */
2
- import React, { useState, useEffect, useRef } from "react";
3
- import { Icon } from "../..";
4
- export const AutoCompleteFilterSingleSelectMultiFieldsDisplay = ({
5
- disable = false,
6
- loader = false,
7
- displayValue = "",
8
- placeholder = "Search...",
9
- data,
10
- hasError = false,
11
- className,
12
- posstion = "absolute",
13
- onFilter,
14
- onSelect,
15
- onBlur,
16
- }) => {
17
- const [value, setValue] = useState(displayValue);
18
- const [options, setOptions] = useState(data.list);
19
- const [isListOpen, setIsListOpen] = useState(false);
20
- const [filterValue, setFilterValue] = useState();
21
- const useOutsideAlerter = (ref) => {
2
+ import React, { useState, useEffect, useRef } from 'react';
3
+ import { Icon } from '../..';
4
+ export const AutoCompleteFilterSingleSelectMultiFieldsDisplay = ({ disable = false, loader = false, displayValue = '', placeholder = 'Search...', data, hasError = false, className, posstion = 'absolute', onFilter, onSelect, onBlur, }) => {
5
+ const [value, setValue] = useState(displayValue);
6
+ const [options, setOptions] = useState(data.list);
7
+ const [isListOpen, setIsListOpen] = useState(false);
8
+ const [filterValue, setFilterValue] = useState();
9
+ const useOutsideAlerter = (ref) => {
10
+ useEffect(() => {
11
+ function handleClickOutside(event) {
12
+ if (ref.current && !ref.current.contains(event.target) && isListOpen) {
13
+ setIsListOpen(false);
14
+ //setValue('');
15
+ }
16
+ }
17
+ document.addEventListener('mousedown', handleClickOutside);
18
+ return () => {
19
+ document.removeEventListener('mousedown', handleClickOutside);
20
+ };
21
+ }, [ref, isListOpen]);
22
+ };
23
+ const wrapperRef = useRef(null);
24
+ useOutsideAlerter(wrapperRef);
22
25
  useEffect(() => {
23
- function handleClickOutside(event) {
24
- if (ref.current && !ref.current.contains(event.target) && isListOpen) {
25
- setIsListOpen(false);
26
- //setValue('');
26
+ setOptions(data.list);
27
+ }, [data]);
28
+ useEffect(() => {
29
+ setValue(displayValue);
30
+ }, [displayValue]);
31
+ const onChange = (e) => {
32
+ var _a;
33
+ const search = (_a = e.target.value) === null || _a === void 0 ? void 0 : _a.toUpperCase();
34
+ setValue(search);
35
+ setFilterValue(search);
36
+ onFilter && onFilter(search);
37
+ };
38
+ const onKeyUp = (e) => {
39
+ const charCode = e.which ? e.which : e.keyCode;
40
+ if (charCode === 8) {
41
+ const search = e.target.value;
42
+ onFilter && onFilter(search);
27
43
  }
28
- }
29
- document.addEventListener("mousedown", handleClickOutside);
30
- return () => {
31
- document.removeEventListener("mousedown", handleClickOutside);
32
- };
33
- }, [ref, isListOpen]);
34
- };
35
- const wrapperRef = useRef(null);
36
- useOutsideAlerter(wrapperRef);
37
- useEffect(() => {
38
- setOptions(data.list);
39
- }, [data]);
40
- useEffect(() => {
41
- setValue(displayValue);
42
- }, [displayValue]);
43
- const onChange = (e) => {
44
- var _a;
45
- const search =
46
- (_a = e.target.value) === null || _a === void 0
47
- ? void 0
48
- : _a.toUpperCase();
49
- setValue(search);
50
- setFilterValue(search);
51
- onFilter && onFilter(search);
52
- };
53
- const onKeyUp = (e) => {
54
- const charCode = e.which ? e.which : e.keyCode;
55
- if (charCode === 8) {
56
- const search = e.target.value;
57
- onFilter && onFilter(search);
58
- }
59
- };
60
- const onKeyDown = (e) => {
61
- if (e.key === "Enter" || e.key === "Tab") {
62
- if (options.length > 0) {
63
- const selectedItem = options.find(
64
- (item) => item.labId === Number(value),
65
- );
66
- if (selectedItem) {
67
- setValue(
68
- data.displayKey.map((key) => `${selectedItem[key]}`).join(" - "),
69
- );
70
- setIsListOpen(false);
71
- onSelect && onSelect(selectedItem);
44
+ };
45
+ const onKeyDown = (e) => {
46
+ if (e.key === 'Enter' || e.key === 'Tab') {
47
+ if (options.length > 0) {
48
+ const selectedItem = options.find((item) => item.labId === Number(value));
49
+ if (selectedItem) {
50
+ setValue(data.displayKey.map((key) => `${selectedItem[key]}`).join(' - '));
51
+ setIsListOpen(false);
52
+ onSelect && onSelect(selectedItem);
53
+ }
54
+ }
72
55
  }
73
- }
74
- }
75
- };
76
- return React.createElement(
77
- React.Fragment,
78
- null,
79
- React.createElement(
80
- "div",
81
- { ref: wrapperRef, className: "w-full relative" },
82
- React.createElement(
83
- "div",
84
- {
85
- 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 dark:text-black`,
86
- },
87
- React.createElement("input", {
88
- placeholder: placeholder,
89
- value: value,
90
- className: `${className} w-full focus:outline-none bg-none dark:text-black`,
91
- onKeyUp: onKeyUp,
92
- onChange: onChange,
93
- onClick: () => setIsListOpen(true),
94
- disabled: disable,
95
- onMouseDown: () => setValue(""),
96
- onBlur: (e) => onBlur && onBlur(e),
97
- onKeyDown: onKeyDown,
98
- }),
99
- isListOpen
100
- ? React.createElement(Icon, {
101
- nameIcon: "FaChevronUp",
102
- propsIcon: {
103
- color: "#000000",
104
- size: 22,
105
- },
106
- })
107
- : React.createElement(Icon, {
108
- nameIcon: "FaChevronDown",
109
- propsIcon: {
110
- color: "#000000",
111
- size: 22,
112
- },
113
- }),
114
- ),
115
- options && isListOpen
116
- ? options.length > 0 &&
117
- React.createElement(
118
- "div",
119
- {
120
- className: `mt-1 absolute w-full bg-gray-100 p-2 rounded-sm `,
121
- style: {
122
- zIndex: 500,
123
- },
124
- },
125
- React.createElement(
126
- "ul",
127
- null,
128
- options === null || options === void 0
129
- ? void 0
130
- : options.map((item, index) =>
131
- React.createElement(
132
- "li",
133
- {
134
- key: index,
135
- className: "text-gray-400 flex items-center",
136
- onClick: () => {
137
- setValue(
138
- data.displayKey
56
+ };
57
+ return (React.createElement(React.Fragment, null,
58
+ React.createElement("div", { ref: wrapperRef, className: "w-full relative" },
59
+ 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 dark:text-black` },
60
+ React.createElement("input", { placeholder: placeholder, value: value, className: `${className} w-full focus:outline-none bg-none dark:text-black`, onKeyUp: onKeyUp, onChange: onChange, onClick: () => setIsListOpen(true), disabled: disable, onMouseDown: () => setValue(''), onBlur: (e) => onBlur && onBlur(e), onKeyDown: onKeyDown }),
61
+ isListOpen ? (React.createElement(Icon, { nameIcon: "FaChevronUp", propsIcon: {
62
+ color: '#000000',
63
+ size: 22,
64
+ } })) : (React.createElement(Icon, { nameIcon: "FaChevronDown", propsIcon: {
65
+ color: '#000000',
66
+ size: 22,
67
+ } }))),
68
+ options && isListOpen
69
+ ? options.length > 0 && (React.createElement("div", { className: `mt-1 absolute w-full bg-gray-100 p-2 rounded-sm `, style: {
70
+ zIndex: 500,
71
+ } },
72
+ React.createElement("ul", null, options === null || options === void 0 ? void 0 : options.map((item, index) => (React.createElement("li", { key: index, className: "text-gray-400 flex items-center", onClick: () => {
73
+ setValue(data.displayKey
139
74
  .map((key) => `${item[key]}`)
140
- .join(" - "),
141
- );
75
+ .join(' - '));
142
76
  setIsListOpen(false);
143
77
  onSelect && onSelect(item);
144
- },
145
- },
146
- " ",
147
- React.createElement(
148
- "label",
149
- {
150
- className: "ml-2 mt-1 text-black",
151
- style: {
152
- textOverflow: "ellipsis",
153
- minWidth: 0,
154
- overflow: "hidden",
155
- maxWidth: "334px",
156
- whiteSpace: "nowrap",
157
- },
158
- title: data.displayKey
159
- .map((key) => item[key])
160
- .join(" - "),
161
- },
162
- data.displayKey
163
- .map(
164
- (key) => `${item[key]}
165
- `,
166
- )
167
- .join(" - "),
168
- ),
169
- ),
170
- ),
171
- ),
172
- )
173
- : null,
174
- ),
175
- );
78
+ } },
79
+ ' ',
80
+ React.createElement("label", { className: "ml-2 mt-1 text-black", style: {
81
+ textOverflow: 'ellipsis',
82
+ minWidth: 0,
83
+ overflow: 'hidden',
84
+ maxWidth: '334px',
85
+ whiteSpace: 'nowrap',
86
+ }, title: data.displayKey
87
+ .map((key) => item[key])
88
+ .join(' - ') }, data.displayKey
89
+ .map((key) => `${item[key]}
90
+ `)
91
+ .join(' - '))))))))
92
+ : null)));
176
93
  };
177
- //# sourceMappingURL=auto-complete-filter-single-select-multiple-fields-display.component.js.map
94
+ //# sourceMappingURL=auto-complete-filter-single-select-multiple-fields-display.component.js.map