react-restyle-components 0.2.89 → 0.2.91

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 (200) hide show
  1. package/lib/src/core-components/__mocks__/styleMock.d.ts +2 -0
  2. package/lib/src/core-components/__mocks__/styleMock.d.ts.map +1 -0
  3. package/lib/src/core-components/__mocks__/styleMock.js +1 -0
  4. package/lib/src/core-components/index.d.ts +34 -0
  5. package/lib/src/core-components/index.d.ts.map +1 -0
  6. package/lib/src/core-components/index.js +33 -0
  7. package/lib/src/core-components/jest.config.d.ts +12 -0
  8. package/lib/src/core-components/jest.config.d.ts.map +1 -0
  9. package/lib/src/core-components/jest.config.js +10 -0
  10. package/lib/src/core-components/src/App.css +45 -0
  11. package/lib/src/core-components/src/App.d.ts +4 -0
  12. package/lib/src/core-components/src/App.d.ts.map +1 -0
  13. package/lib/src/core-components/src/App.js +9 -0
  14. package/lib/src/core-components/src/assets/styles/colors.css +217 -0
  15. package/lib/src/core-components/src/assets/styles/decorations.css +15 -0
  16. package/lib/src/core-components/src/assets/styles/fontface.css +17 -0
  17. package/lib/src/core-components/src/assets/styles/scrollbars.css +70 -0
  18. package/lib/src/core-components/src/assets/styles/typography.css +3 -0
  19. package/lib/src/core-components/src/atoms/button/Button.test.d.ts +2 -0
  20. package/lib/src/core-components/src/atoms/button/Button.test.d.ts.map +1 -0
  21. package/lib/src/core-components/src/atoms/button/Button.test.js +27 -0
  22. package/lib/src/core-components/src/atoms/button/Button.types.d.ts +26 -0
  23. package/lib/src/core-components/src/atoms/button/Button.types.d.ts.map +1 -0
  24. package/lib/src/core-components/src/atoms/button/Button.types.js +1 -0
  25. package/lib/src/core-components/src/atoms/button/button.component.d.ts +4 -0
  26. package/lib/src/core-components/src/atoms/button/button.component.d.ts.map +1 -0
  27. package/lib/src/core-components/src/atoms/button/button.component.js +18 -0
  28. package/lib/src/core-components/src/atoms/button/buttonGroup/buttonGroup.component.d.ts +7 -0
  29. package/lib/src/core-components/src/atoms/button/buttonGroup/buttonGroup.component.d.ts.map +1 -0
  30. package/lib/src/core-components/src/atoms/button/buttonGroup/buttonGroup.component.js +4 -0
  31. package/lib/src/core-components/src/atoms/check-box/checkBox.component.d.ts +10 -0
  32. package/lib/src/core-components/src/atoms/check-box/checkBox.component.d.ts.map +1 -0
  33. package/lib/src/core-components/src/atoms/check-box/checkBox.component.js +20 -0
  34. package/lib/src/core-components/src/atoms/check-box/checkBox.spec.d.ts +2 -0
  35. package/lib/src/core-components/src/atoms/check-box/checkBox.spec.d.ts.map +1 -0
  36. package/lib/src/core-components/src/atoms/check-box/checkBox.spec.js +32 -0
  37. package/lib/src/core-components/src/atoms/date-picker/date-picker.component.d.ts +12 -0
  38. package/lib/src/core-components/src/atoms/date-picker/date-picker.component.d.ts.map +1 -0
  39. package/lib/src/core-components/src/atoms/date-picker/date-picker.component.js +20 -0
  40. package/lib/src/core-components/src/atoms/form/form.component.d.ts +105 -0
  41. package/lib/src/core-components/src/atoms/form/form.component.d.ts.map +1 -0
  42. package/lib/src/core-components/src/atoms/form/form.component.js +87 -0
  43. package/lib/src/core-components/src/atoms/icons/icons.component.d.ts +11 -0
  44. package/lib/src/core-components/src/atoms/icons/icons.component.d.ts.map +1 -0
  45. package/lib/src/core-components/src/atoms/icons/icons.component.js +71 -0
  46. package/lib/src/core-components/src/atoms/input/input-otp.component.d.ts +14 -0
  47. package/lib/src/core-components/src/atoms/input/input-otp.component.d.ts.map +1 -0
  48. package/lib/src/core-components/src/atoms/input/input-otp.component.js +61 -0
  49. package/lib/src/core-components/src/atoms/input/input-otp.styles.css +35 -0
  50. package/lib/src/core-components/src/atoms/input/input-pin.component.d.ts +16 -0
  51. package/lib/src/core-components/src/atoms/input/input-pin.component.d.ts.map +1 -0
  52. package/lib/src/core-components/src/atoms/input/input-pin.component.js +76 -0
  53. package/lib/src/core-components/src/atoms/input/input.component.d.ts +18 -0
  54. package/lib/src/core-components/src/atoms/input/input.component.d.ts.map +1 -0
  55. package/lib/src/core-components/src/atoms/input/input.component.js +16 -0
  56. package/lib/src/core-components/src/atoms/input/input.styles.css +35 -0
  57. package/lib/src/core-components/src/atoms/input-dropdown/input-dropdown.component.d.ts +10 -0
  58. package/lib/src/core-components/src/atoms/input-dropdown/input-dropdown.component.d.ts.map +1 -0
  59. package/lib/src/core-components/src/atoms/input-dropdown/input-dropdown.component.js +44 -0
  60. package/lib/src/core-components/src/atoms/loader/loader.component.d.ts +6 -0
  61. package/lib/src/core-components/src/atoms/loader/loader.component.d.ts.map +1 -0
  62. package/lib/src/core-components/src/atoms/loader/loader.component.js +6 -0
  63. package/lib/src/core-components/src/atoms/pdf/pdf-images.components.d.ts +9 -0
  64. package/lib/src/core-components/src/atoms/pdf/pdf-images.components.d.ts.map +1 -0
  65. package/lib/src/core-components/src/atoms/pdf/pdf-images.components.js +7 -0
  66. package/lib/src/core-components/src/atoms/pdf/pdf-table.components.d.ts +11 -0
  67. package/lib/src/core-components/src/atoms/pdf/pdf-table.components.d.ts.map +1 -0
  68. package/lib/src/core-components/src/atoms/pdf/pdf-table.components.js +48 -0
  69. package/lib/src/core-components/src/atoms/pdf/pdf-typography.components.d.ts +21 -0
  70. package/lib/src/core-components/src/atoms/pdf/pdf-typography.components.d.ts.map +1 -0
  71. package/lib/src/core-components/src/atoms/pdf/pdf-typography.components.js +70 -0
  72. package/lib/src/core-components/src/atoms/pdf/pdf-wrapped-view.components.d.ts +53 -0
  73. package/lib/src/core-components/src/atoms/pdf/pdf-wrapped-view.components.d.ts.map +1 -0
  74. package/lib/src/core-components/src/atoms/pdf/pdf-wrapped-view.components.js +50 -0
  75. package/lib/src/core-components/src/atoms/radio/radio.component.d.ts +9 -0
  76. package/lib/src/core-components/src/atoms/radio/radio.component.d.ts.map +1 -0
  77. package/lib/src/core-components/src/atoms/radio/radio.component.js +20 -0
  78. package/lib/src/core-components/src/atoms/stepper/stepper.component.d.ts +9 -0
  79. package/lib/src/core-components/src/atoms/stepper/stepper.component.d.ts.map +1 -0
  80. package/lib/src/core-components/src/atoms/stepper/stepper.component.js +26 -0
  81. package/lib/src/core-components/src/atoms/tabs/tabs.component.d.ts +18 -0
  82. package/lib/src/core-components/src/atoms/tabs/tabs.component.d.ts.map +1 -0
  83. package/lib/src/core-components/src/atoms/tabs/tabs.component.js +19 -0
  84. package/lib/src/core-components/src/atoms/tabs/tabs.module.css +238 -0
  85. package/lib/src/core-components/src/atoms/timer/timer.component.d.ts +7 -0
  86. package/lib/src/core-components/src/atoms/timer/timer.component.d.ts.map +1 -0
  87. package/lib/src/core-components/src/atoms/timer/timer.component.js +76 -0
  88. package/lib/src/core-components/src/atoms/tooltip/Tooltip.types.d.ts +22 -0
  89. package/lib/src/core-components/src/atoms/tooltip/Tooltip.types.d.ts.map +1 -0
  90. package/lib/src/core-components/src/atoms/tooltip/Tooltip.types.js +1 -0
  91. package/lib/src/core-components/src/atoms/tooltip/tooltip.component.d.ts +10 -0
  92. package/lib/src/core-components/src/atoms/tooltip/tooltip.component.d.ts.map +1 -0
  93. package/lib/src/core-components/src/atoms/tooltip/tooltip.component.js +10 -0
  94. package/lib/src/core-components/src/helpers/constants.d.ts +4 -0
  95. package/lib/src/core-components/src/helpers/constants.d.ts.map +1 -0
  96. package/lib/src/core-components/src/helpers/constants.js +11 -0
  97. package/lib/src/core-components/src/hooks/index.d.ts +2 -0
  98. package/lib/src/core-components/src/hooks/index.d.ts.map +1 -0
  99. package/lib/src/core-components/src/hooks/index.js +1 -0
  100. package/lib/src/core-components/src/hooks/outside.hook.d.ts +2 -0
  101. package/lib/src/core-components/src/hooks/outside.hook.d.ts.map +1 -0
  102. package/lib/src/core-components/src/hooks/outside.hook.js +28 -0
  103. package/lib/src/core-components/src/index.css +118 -0
  104. package/lib/src/core-components/src/index.d.ts +2 -0
  105. package/lib/src/core-components/src/index.d.ts.map +1 -0
  106. package/lib/src/core-components/src/index.js +12 -0
  107. package/lib/src/core-components/src/library/assets/fonts/arima/arima-bold.ttf +0 -0
  108. package/lib/src/core-components/src/library/assets/fonts/arima/arima-regular.ttf +0 -0
  109. package/lib/src/core-components/src/library/assets/svg/CheckedBox.svg +14 -0
  110. package/lib/src/core-components/src/library/assets/svg/DownArrow.svg +14 -0
  111. package/lib/src/core-components/src/library/assets/svg/UnCheckbox.svg +3 -0
  112. package/lib/src/core-components/src/library/assets/svg/UpArrow.svg +14 -0
  113. package/lib/src/core-components/src/library/assets/svg/checkedRadio.svg +13 -0
  114. package/lib/src/core-components/src/library/assets/svg/datePicker.svg +3 -0
  115. package/lib/src/core-components/src/library/assets/svg/index.d.ts +10 -0
  116. package/lib/src/core-components/src/library/assets/svg/index.d.ts.map +1 -0
  117. package/lib/src/core-components/src/library/assets/svg/index.js +27 -0
  118. package/lib/src/core-components/src/library/assets/svg/timer copy.svg +3 -0
  119. package/lib/src/core-components/src/library/assets/svg/timer.svg +3 -0
  120. package/lib/src/core-components/src/library/assets/svg/uncheckRadio.svg +3 -0
  121. package/lib/src/core-components/src/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.component.d.ts +17 -0
  122. package/lib/src/core-components/src/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.component.d.ts.map +1 -0
  123. package/lib/src/core-components/src/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.component.js +101 -0
  124. package/lib/src/core-components/src/molecules/auto-complete-filter-single-select/auto-complete-filter-single-select.component.d.ts +13 -0
  125. package/lib/src/core-components/src/molecules/auto-complete-filter-single-select/auto-complete-filter-single-select.component.d.ts.map +1 -0
  126. package/lib/src/core-components/src/molecules/auto-complete-filter-single-select/auto-complete-filter-single-select.component.js +59 -0
  127. package/lib/src/core-components/src/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.component.d.ts +18 -0
  128. package/lib/src/core-components/src/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.component.d.ts.map +1 -0
  129. package/lib/src/core-components/src/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.component.js +109 -0
  130. package/lib/src/core-components/src/molecules/auto-complete-group-by/auto-complete-group-by.component.d.ts +10 -0
  131. package/lib/src/core-components/src/molecules/auto-complete-group-by/auto-complete-group-by.component.d.ts.map +1 -0
  132. package/lib/src/core-components/src/molecules/auto-complete-group-by/auto-complete-group-by.component.js +128 -0
  133. package/lib/src/core-components/src/molecules/auto-complete-group-by/auto-complete-group-by.component.test.d.ts +2 -0
  134. package/lib/src/core-components/src/molecules/auto-complete-group-by/auto-complete-group-by.component.test.d.ts.map +1 -0
  135. package/lib/src/core-components/src/molecules/auto-complete-group-by/auto-complete-group-by.component.test.js +9 -0
  136. package/lib/src/core-components/src/molecules/autocomplete/autocomplete.css +37 -0
  137. package/lib/src/core-components/src/molecules/autocomplete/autocomplete.d.ts +8 -0
  138. package/lib/src/core-components/src/molecules/autocomplete/autocomplete.d.ts.map +1 -0
  139. package/lib/src/core-components/src/molecules/autocomplete/autocomplete.js +108 -0
  140. package/lib/src/core-components/src/molecules/autocomplete/autocomplete.spec.d.ts +2 -0
  141. package/lib/src/core-components/src/molecules/autocomplete/autocomplete.spec.d.ts.map +1 -0
  142. package/lib/src/core-components/src/molecules/autocomplete/autocomplete.spec.js +79 -0
  143. package/lib/src/core-components/src/molecules/color-picker/color-picker.component.d.ts +6 -0
  144. package/lib/src/core-components/src/molecules/color-picker/color-picker.component.d.ts.map +1 -0
  145. package/lib/src/core-components/src/molecules/color-picker/color-picker.component.js +12 -0
  146. package/lib/src/core-components/src/molecules/color-picker/color-picker.css +24 -0
  147. package/lib/src/core-components/src/molecules/color-picker/color-picker.spec.d.ts +2 -0
  148. package/lib/src/core-components/src/molecules/color-picker/color-picker.spec.d.ts.map +1 -0
  149. package/lib/src/core-components/src/molecules/color-picker/color-picker.spec.js +7 -0
  150. package/lib/src/core-components/src/molecules/color-picker-modal/color-picker-modal.component.d.ts +15 -0
  151. package/lib/src/core-components/src/molecules/color-picker-modal/color-picker-modal.component.d.ts.map +1 -0
  152. package/lib/src/core-components/src/molecules/color-picker-modal/color-picker-modal.component.js +41 -0
  153. package/lib/src/core-components/src/molecules/color-picker-modal/color-picker-modal.css +45 -0
  154. package/lib/src/core-components/src/molecules/color-picker-modal/color-picker-modal.spec.d.ts +2 -0
  155. package/lib/src/core-components/src/molecules/color-picker-modal/color-picker-modal.spec.d.ts.map +1 -0
  156. package/lib/src/core-components/src/molecules/color-picker-modal/color-picker-modal.spec.js +7 -0
  157. package/lib/src/core-components/src/molecules/css-multiline-input/css-multiline-input.component.d.ts +11 -0
  158. package/lib/src/core-components/src/molecules/css-multiline-input/css-multiline-input.component.d.ts.map +1 -0
  159. package/lib/src/core-components/src/molecules/css-multiline-input/css-multiline-input.component.js +91 -0
  160. package/lib/src/core-components/src/molecules/css-multiline-input/css-properties.d.ts +8932 -0
  161. package/lib/src/core-components/src/molecules/css-multiline-input/css-properties.d.ts.map +1 -0
  162. package/lib/src/core-components/src/molecules/css-multiline-input/css-properties.js +161 -0
  163. package/lib/src/core-components/src/molecules/modal/modal.component.d.ts +10 -0
  164. package/lib/src/core-components/src/molecules/modal/modal.component.d.ts.map +1 -0
  165. package/lib/src/core-components/src/molecules/modal/modal.component.js +19 -0
  166. package/lib/src/core-components/src/molecules/modal-confirm/modal-confirm.component.d.ts +14 -0
  167. package/lib/src/core-components/src/molecules/modal-confirm/modal-confirm.component.d.ts.map +1 -0
  168. package/lib/src/core-components/src/molecules/modal-confirm/modal-confirm.component.js +21 -0
  169. package/lib/src/core-components/src/molecules/multi-select/multi-select.component.d.ts +9 -0
  170. package/lib/src/core-components/src/molecules/multi-select/multi-select.component.d.ts.map +1 -0
  171. package/lib/src/core-components/src/molecules/multi-select/multi-select.component.js +49 -0
  172. package/lib/src/core-components/src/molecules/multi-select-with-field/multi-select-with-field.component.d.ts +10 -0
  173. package/lib/src/core-components/src/molecules/multi-select-with-field/multi-select-with-field.component.d.ts.map +1 -0
  174. package/lib/src/core-components/src/molecules/multi-select-with-field/multi-select-with-field.component.js +58 -0
  175. package/lib/src/core-components/src/molecules/multi-selection-dropdown/multi-selection-dropdown.component.d.ts +9 -0
  176. package/lib/src/core-components/src/molecules/multi-selection-dropdown/multi-selection-dropdown.component.d.ts.map +1 -0
  177. package/lib/src/core-components/src/molecules/multi-selection-dropdown/multi-selection-dropdown.component.js +43 -0
  178. package/lib/src/core-components/src/reportWebVitals.d.ts +4 -0
  179. package/lib/src/core-components/src/reportWebVitals.d.ts.map +1 -0
  180. package/lib/src/core-components/src/reportWebVitals.js +12 -0
  181. package/lib/src/core-components/src/setupTests.d.ts +2 -0
  182. package/lib/src/core-components/src/setupTests.d.ts.map +1 -0
  183. package/lib/src/core-components/src/setupTests.js +5 -0
  184. package/lib/src/core-components/src/tc.module.css +1 -0
  185. package/lib/src/core-components/src/utils/index.d.ts +2 -0
  186. package/lib/src/core-components/src/utils/index.d.ts.map +1 -0
  187. package/lib/src/core-components/src/utils/index.js +1 -0
  188. package/lib/src/core-components/src/utils/utility.util.d.ts +3 -0
  189. package/lib/src/core-components/src/utils/utility.util.d.ts.map +1 -0
  190. package/lib/src/core-components/src/utils/utility.util.js +5 -0
  191. package/lib/src/core-utils/jest.config.d.ts +11 -0
  192. package/lib/src/core-utils/jest.config.d.ts.map +1 -0
  193. package/lib/src/core-utils/jest.config.js +9 -0
  194. package/lib/src/core-utils/src/calculation/calculation.spec.d.ts +2 -0
  195. package/lib/src/core-utils/src/calculation/calculation.spec.d.ts.map +1 -0
  196. package/lib/src/core-utils/src/calculation/calculation.spec.js +52 -0
  197. package/lib/src/core-utils/src/index.d.ts +8 -0
  198. package/lib/src/core-utils/src/index.d.ts.map +1 -0
  199. package/lib/src/core-utils/src/index.js +7 -0
  200. package/package.json +2 -2
@@ -0,0 +1,10 @@
1
+ import UnCheckbox from './UnCheckbox.svg?react';
2
+ import CheckedBox from './CheckedBox.svg?react';
3
+ import DatePickerSvg from './datePicker.svg?react';
4
+ import CheckedRadio from './checkedRadio.svg?react';
5
+ import UncheckRadio from './uncheckRadio.svg?react';
6
+ import TimerSVG from './timer.svg?react';
7
+ import UpArrow from './UpArrow.svg?react';
8
+ import DownArrow from './DownArrow.svg?react';
9
+ export { UnCheckbox, CheckedBox, DatePickerSvg, CheckedRadio, UncheckRadio, TimerSVG, UpArrow, DownArrow, };
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/core-components/src/library/assets/svg/index.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAChD,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAChD,OAAO,aAAa,MAAM,wBAAwB,CAAC;AACnD,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,QAAQ,MAAM,mBAAmB,CAAC;AACzC,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,SAAS,MAAM,uBAAuB,CAAC;AAE9C,OAAO,EACL,UAAU,EACV,UAAU,EACV,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,SAAS,GACV,CAAC"}
@@ -0,0 +1,27 @@
1
+ import UnCheckbox from './UnCheckbox.svg?react';
2
+ import CheckedBox from './CheckedBox.svg?react';
3
+ import DatePickerSvg from './datePicker.svg?react';
4
+ import CheckedRadio from './checkedRadio.svg?react';
5
+ import UncheckRadio from './uncheckRadio.svg?react';
6
+ import TimerSVG from './timer.svg?react';
7
+ import UpArrow from './UpArrow.svg?react';
8
+ import DownArrow from './DownArrow.svg?react';
9
+ export { UnCheckbox, CheckedBox, DatePickerSvg, CheckedRadio, UncheckRadio, TimerSVG, UpArrow, DownArrow, };
10
+ // import {ReactComponent as UnCheckbox} from '../../../library/assets/svg/unCheckbox.svg';
11
+ // import {ReactComponent as CheckedBox} from '../../../library/assets/svg/checkedBox.svg';
12
+ // import {ReactComponent as DatePickerSvg} from '../../../library/assets/svg/datePicker.svg';
13
+ // import {ReactComponent as CheckedRadio} from '../../../library/assets/svg/checkedRadio.svg';
14
+ // import {ReactComponent as UncheckRadio} from '../../../library/assets/svg/uncheckRadio.svg';
15
+ // import {ReactComponent as TimerSVG} from '../../../library/assets/svg/timer.svg';
16
+ // import {ReactComponent as UpArrow} from '../../../library/assets/svg/UpArrow.svg';
17
+ // import {ReactComponent as DownArrow} from '../../../library/assets/svg/DownArrow.svg';
18
+ // export {
19
+ // UnCheckbox,
20
+ // CheckedBox,
21
+ // DatePickerSvg,
22
+ // CheckedRadio,
23
+ // UncheckRadio,
24
+ // TimerSVG,
25
+ // UpArrow,
26
+ // DownArrow,
27
+ // };
@@ -0,0 +1,3 @@
1
+ <svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M16.0001 8.50005C16.0001 9.73343 15.6959 10.9478 15.1145 12.0355C14.533 13.1233 13.6923 14.0508 12.6668 14.736C11.6413 15.4213 10.4626 15.843 9.23515 15.9639C8.0077 16.0848 6.76939 15.9011 5.62989 15.4291C4.49039 14.9571 3.48489 14.2114 2.70244 13.2579C1.91999 12.3045 1.38474 11.1728 1.14412 9.96316C0.903492 8.75348 0.964912 7.50312 1.32294 6.32285C1.68096 5.14257 2.32454 4.06881 3.19667 3.19667C3.25817 3.13727 3.34054 3.1044 3.42604 3.10514C3.51154 3.10588 3.59332 3.14018 3.65378 3.20064C3.71424 3.2611 3.74854 3.34289 3.74928 3.42838C3.75002 3.51388 3.71716 3.59625 3.65776 3.65776C2.54364 4.76703 1.84472 6.22559 1.67816 7.78893C1.51161 9.35226 1.88754 10.9253 2.74293 12.2444C3.59833 13.5635 4.8812 14.5485 6.37648 15.0342C7.87176 15.5199 9.48855 15.4768 10.9558 14.9121C12.4231 14.3474 13.6517 13.2955 14.4356 11.9327C15.2195 10.5699 15.511 8.97903 15.2614 7.42679C15.0118 5.87456 14.2362 4.45531 13.0645 3.40697C11.8929 2.35863 10.3965 1.74493 8.82614 1.66874V4.58698C8.82614 4.67346 8.79178 4.75641 8.73063 4.81756C8.66947 4.87871 8.58653 4.91307 8.50005 4.91307C8.41356 4.91307 8.33062 4.87871 8.26947 4.81756C8.20831 4.75641 8.17396 4.67346 8.17396 4.58698V1.32609C8.17396 1.23961 8.20831 1.15666 8.26947 1.09551C8.33062 1.03436 8.41356 1 8.50005 1C10.4885 1.00226 12.3948 1.79317 13.8009 3.19921C15.2069 4.60525 15.9978 6.5116 16.0001 8.50005ZM8.26944 8.80977C8.29966 8.84027 8.33562 8.8645 8.37524 8.88107C8.41485 8.89764 8.45735 8.90622 8.5003 8.90632C8.54324 8.90642 8.58578 8.89804 8.62547 8.88165C8.66517 8.86527 8.70123 8.8412 8.7316 8.81084C8.76197 8.78048 8.78605 8.74442 8.80244 8.70473C8.81884 8.66504 8.82723 8.62251 8.82714 8.57956C8.82706 8.53662 8.81849 8.49412 8.80193 8.4545C8.78537 8.41487 8.76115 8.37891 8.73066 8.34868L5.39059 5.00861C5.32919 4.94873 5.24666 4.91546 5.16089 4.916C5.07513 4.91653 4.99303 4.95084 4.93237 5.01148C4.87172 5.07213 4.8374 5.15422 4.83685 5.23999C4.8363 5.32576 4.86957 5.40829 4.92944 5.4697L8.26944 8.80977ZM1.65218 2.30436C1.78117 2.30436 1.90726 2.26611 2.01451 2.19444C2.12176 2.12278 2.20535 2.02093 2.25471 1.90176C2.30407 1.78259 2.31699 1.65145 2.29182 1.52494C2.26666 1.39843 2.20455 1.28223 2.11334 1.19102C2.02213 1.09981 1.90592 1.0377 1.77941 1.01253C1.6529 0.987367 1.52177 1.00028 1.4026 1.04964C1.28343 1.09901 1.18157 1.1826 1.10991 1.28985C1.03825 1.3971 1 1.52319 1 1.65218C1 1.82515 1.06871 1.99103 1.19102 2.11334C1.31333 2.23564 1.47921 2.30436 1.65218 2.30436Z" fill="#212721" stroke="#E7503D"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M16.0001 8.50005C16.0001 9.73343 15.6959 10.9478 15.1145 12.0355C14.533 13.1233 13.6923 14.0508 12.6668 14.736C11.6413 15.4213 10.4626 15.843 9.23515 15.9639C8.0077 16.0848 6.76939 15.9011 5.62989 15.4291C4.49039 14.9571 3.48489 14.2114 2.70244 13.2579C1.91999 12.3045 1.38474 11.1728 1.14412 9.96316C0.903492 8.75348 0.964912 7.50312 1.32294 6.32285C1.68096 5.14257 2.32454 4.06881 3.19667 3.19667C3.25817 3.13727 3.34054 3.1044 3.42604 3.10514C3.51154 3.10588 3.59332 3.14018 3.65378 3.20064C3.71424 3.2611 3.74854 3.34289 3.74928 3.42838C3.75002 3.51388 3.71716 3.59625 3.65776 3.65776C2.54364 4.76703 1.84472 6.22559 1.67816 7.78893C1.51161 9.35226 1.88754 10.9253 2.74293 12.2444C3.59833 13.5635 4.8812 14.5485 6.37648 15.0342C7.87176 15.5199 9.48855 15.4768 10.9558 14.9121C12.4231 14.3474 13.6517 13.2955 14.4356 11.9327C15.2195 10.5699 15.511 8.97903 15.2614 7.42679C15.0118 5.87456 14.2362 4.45531 13.0645 3.40697C11.8929 2.35863 10.3965 1.74493 8.82614 1.66874V4.58698C8.82614 4.67346 8.79178 4.75641 8.73063 4.81756C8.66947 4.87871 8.58653 4.91307 8.50005 4.91307C8.41356 4.91307 8.33062 4.87871 8.26947 4.81756C8.20831 4.75641 8.17396 4.67346 8.17396 4.58698V1.32609C8.17396 1.23961 8.20831 1.15666 8.26947 1.09551C8.33062 1.03436 8.41356 1 8.50005 1C10.4885 1.00226 12.3948 1.79317 13.8009 3.19921C15.2069 4.60525 15.9978 6.5116 16.0001 8.50005ZM8.26944 8.80977C8.29966 8.84027 8.33562 8.8645 8.37524 8.88107C8.41485 8.89764 8.45735 8.90622 8.5003 8.90632C8.54324 8.90642 8.58578 8.89804 8.62547 8.88165C8.66517 8.86527 8.70123 8.8412 8.7316 8.81084C8.76197 8.78048 8.78605 8.74442 8.80244 8.70473C8.81884 8.66504 8.82723 8.62251 8.82714 8.57956C8.82706 8.53662 8.81849 8.49412 8.80193 8.4545C8.78537 8.41487 8.76115 8.37891 8.73066 8.34868L5.39059 5.00861C5.32919 4.94873 5.24666 4.91546 5.16089 4.916C5.07513 4.91653 4.99303 4.95084 4.93237 5.01148C4.87172 5.07213 4.8374 5.15422 4.83685 5.23999C4.8363 5.32576 4.86957 5.40829 4.92944 5.4697L8.26944 8.80977ZM1.65218 2.30436C1.78117 2.30436 1.90726 2.26611 2.01451 2.19444C2.12176 2.12278 2.20535 2.02093 2.25471 1.90176C2.30407 1.78259 2.31699 1.65145 2.29182 1.52494C2.26666 1.39843 2.20455 1.28223 2.11334 1.19102C2.02213 1.09981 1.90592 1.0377 1.77941 1.01253C1.6529 0.987367 1.52177 1.00028 1.4026 1.04964C1.28343 1.09901 1.18157 1.1826 1.10991 1.28985C1.03825 1.3971 1 1.52319 1 1.65218C1 1.82515 1.06871 1.99103 1.19102 2.11334C1.31333 2.23564 1.47921 2.30436 1.65218 2.30436Z" fill="#212721" stroke="#E7503D"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <circle cx="10" cy="10" r="9.5" stroke="#212721"/>
3
+ </svg>
@@ -0,0 +1,17 @@
1
+ export interface AutoCompleteFilterMultipleSelectMultipleFieldsDisplayProps {
2
+ uniqueField?: string;
3
+ isSelectedStringArray?: boolean;
4
+ loader?: boolean;
5
+ placeholder?: string;
6
+ data: any;
7
+ hasError?: boolean;
8
+ disable?: boolean;
9
+ isUpperCase?: boolean;
10
+ name?: string;
11
+ onFilter?: (value: string) => void;
12
+ onUpdate: (item: any) => void;
13
+ onSelect: (item: any) => any;
14
+ onBlur?: (e: any) => void;
15
+ }
16
+ export declare const AutoCompleteFilterMultipleSelectMultipleFieldsDisplay: ({ uniqueField, isSelectedStringArray, loader, placeholder, data, hasError, disable, isUpperCase, name, onFilter, onUpdate, onSelect, onBlur, }: AutoCompleteFilterMultipleSelectMultipleFieldsDisplayProps) => import("react/jsx-runtime").JSX.Element;
17
+ //# sourceMappingURL=auto-complete-filter-multiple-select-multiple-fields-display.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-complete-filter-multiple-select-multiple-fields-display.component.d.ts","sourceRoot":"","sources":["../../../../../../src/core-components/src/molecules/auto-complete-filter-multiple-select-multiple-fields-display/auto-complete-filter-multiple-select-multiple-fields-display.component.tsx"],"names":[],"mappings":"AAOA,MAAM,WAAW,0DAA0D;IACzE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,GAAG,CAAC;IACV,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC9B,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;IAC7B,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;CAC3B;AAED,eAAO,MAAM,qDAAqD,mJAc/D,0DAA0D,4CAkM5D,CAAC"}
@@ -0,0 +1,101 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /* eslint-disable */
3
+ import { useState, useEffect, useRef } from 'react';
4
+ import { Icon } from '../../atoms/icons/icons.component';
5
+ import s from '../../tc.module.css';
6
+ import { cn } from '../../utils';
7
+ import { debounce } from '@techabl/core-utils';
8
+ export const AutoCompleteFilterMultipleSelectMultipleFieldsDisplay = ({ uniqueField = '_id', isSelectedStringArray = false, loader = false, placeholder = 'Search...', data, hasError = false, disable = false, isUpperCase = false, name, onFilter, onUpdate, onSelect, onBlur, }) => {
9
+ const [value, setValue] = useState('');
10
+ const [options, setOptions] = useState();
11
+ const [originalOptions, setOriginalOptions] = useState();
12
+ const [isListOpen, setIsListOpen] = useState(false);
13
+ const useOutsideAlerter = (ref) => {
14
+ useEffect(() => {
15
+ function handleClickOutside(event) {
16
+ if (ref.current && !ref.current.contains(event.target) && isListOpen) {
17
+ if (originalOptions && options) {
18
+ if (isListOpen) {
19
+ onUpdate && onUpdate(data.selected);
20
+ }
21
+ }
22
+ setIsListOpen(false);
23
+ setValue('');
24
+ }
25
+ }
26
+ document.addEventListener('mousedown', handleClickOutside);
27
+ return () => {
28
+ document.removeEventListener('mousedown', handleClickOutside);
29
+ };
30
+ }, [ref, isListOpen]);
31
+ };
32
+ const wrapperRef = useRef(null);
33
+ useOutsideAlerter(wrapperRef);
34
+ let count = 0;
35
+ const getSelectedItem = (selectedItem, list) => {
36
+ if (count === 0) {
37
+ const finalList = list?.filter((item, index) => {
38
+ item.selected = false;
39
+ selectedItem && selectedItem.length > 0
40
+ ? selectedItem.find((sItem, index) => {
41
+ if (isSelectedStringArray) {
42
+ if (sItem === item[uniqueField]) {
43
+ item.selected = true;
44
+ }
45
+ }
46
+ else {
47
+ if (sItem[uniqueField] === item[uniqueField]) {
48
+ item.selected = true;
49
+ }
50
+ }
51
+ })
52
+ : (item.selected = false);
53
+ count++;
54
+ return item;
55
+ });
56
+ list = finalList;
57
+ }
58
+ return list;
59
+ };
60
+ useEffect(() => {
61
+ setOriginalOptions(getSelectedItem(data.selected, data.list));
62
+ setOptions(getSelectedItem(data.selected, data.list));
63
+ }, [data, data.selected]);
64
+ const onChange = (e) => {
65
+ const search = e.target.value;
66
+ setValue(search);
67
+ debounce(() => {
68
+ onFilter && onFilter(search);
69
+ });
70
+ };
71
+ const onKeyUp = (e) => {
72
+ const charCode = e.which ? e.which : e.keyCode;
73
+ if (charCode === 8) {
74
+ const search = e.target.value;
75
+ debounce(() => {
76
+ onFilter && onFilter(search);
77
+ });
78
+ }
79
+ };
80
+ return (_jsx(_Fragment, { children: _jsxs("div", { ref: wrapperRef, className: cn(s['w-full'], s['relative']), children: [_jsxs("div", { className: cn(s['flex'], s['items-center'], s['leading-4'], s['p-2'], s['focus:outline-none'], s['focus:ring'], s['w-full'], s['shadow-sm'], s['sm:text-base'], s['border'], s['rounded-md'], {
81
+ [s['border-red']]: hasError,
82
+ [s['border-gray-300']]: !hasError,
83
+ }), children: [_jsx("input", { placeholder: placeholder, disabled: disable, name: name, value: !isListOpen
84
+ ? data?.selected?.length > 0
85
+ ? `${(data.selected && data.selected.length) || 0} Items`
86
+ : value
87
+ : isUpperCase
88
+ ? value?.toUpperCase()
89
+ : value, className: cn(s['w-full'], s['focus:outline-none'], s['bg-none']), onKeyUp: onKeyUp, onChange: onChange, onClick: () => setIsListOpen(true), onBlur: (e) => onBlur && onBlur(e) }), isListOpen ? (_jsx(Icon, { nameIcon: "FaChevronUp", propsIcon: {
90
+ color: '#000000',
91
+ size: 22,
92
+ } })) : (_jsx(Icon, { nameIcon: "FaChevronDown", propsIcon: {
93
+ color: '#000000',
94
+ size: 22,
95
+ } }))] }), options && isListOpen
96
+ ? options?.length > 0 && (_jsx("div", { className: cn(s['flex'], s['mt-1'], s['absolute'], s['rounded-sm'], s['z-500'], s['w-full']), style: { zIndex: 80 }, children: _jsx("ul", { className: cn(s['flex'], s['flex-col'], s['gap-2'], s['bg-gray-200'], s['p-2'], s['w-full']), children: options?.map((item, index) => (_jsx(_Fragment, { children: _jsx("li", { className: cn(s['flex'], s['gap-4'], s['p-2']), children: _jsxs("label", { className: cn(s['flex']), children: [_jsx("input", { id: index?.toString(), className: cn(s['flex'], s['h-4'], s['w-4']), type: "checkbox", checked: item.selected, onChange: () => onSelect(item) }), ' ', _jsx("span", { className: cn(s['flex'], s['h-4'], s['ml-2']), children: data.displayKey
97
+ .map((key) => `${item[key]}
98
+ `)
99
+ .join(' - ') })] }) }, index) }))) }) }))
100
+ : null] }) }));
101
+ };
@@ -0,0 +1,13 @@
1
+ interface AutoCompleteFilterSingleSelectProps {
2
+ loader?: boolean;
3
+ disable?: boolean;
4
+ displayValue?: string;
5
+ placeholder?: string;
6
+ data: any;
7
+ hasError?: boolean;
8
+ onFilter: (item: any) => void;
9
+ onSelect: (item: any) => any;
10
+ }
11
+ export declare const AutoCompleteFilterSingleSelect: ({ disable, loader, displayValue, placeholder, data, hasError, onFilter, onSelect, }: AutoCompleteFilterSingleSelectProps) => import("react/jsx-runtime").JSX.Element;
12
+ export {};
13
+ //# sourceMappingURL=auto-complete-filter-single-select.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-complete-filter-single-select.component.d.ts","sourceRoot":"","sources":["../../../../../../src/core-components/src/molecules/auto-complete-filter-single-select/auto-complete-filter-single-select.component.tsx"],"names":[],"mappings":"AAOA,UAAU,mCAAmC;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,GAAG,CAAC;IACV,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC9B,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;CAC9B;AAED,eAAO,MAAM,8BAA8B,wFASxC,mCAAmC,4CAuIrC,CAAC"}
@@ -0,0 +1,59 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /* eslint-disable */
3
+ import { useState, useEffect, useRef } from 'react';
4
+ import { Icon } from '../../atoms/icons/icons.component';
5
+ import { debounce } from '@techabl/core-utils';
6
+ import s from '../../tc.module.css';
7
+ import { cn } from '../../utils';
8
+ export const AutoCompleteFilterSingleSelect = ({ disable = false, loader = false, displayValue = '', placeholder = 'Search...', data, hasError = false, onFilter, onSelect, }) => {
9
+ const [value, setValue] = useState(displayValue);
10
+ const [options, setOptions] = useState();
11
+ const [isListOpen, setIsListOpen] = useState(false);
12
+ const useOutsideAlerter = (ref) => {
13
+ useEffect(() => {
14
+ function handleClickOutside(event) {
15
+ if (ref.current && !ref.current.contains(event.target) && isListOpen) {
16
+ setIsListOpen(false);
17
+ setValue('');
18
+ }
19
+ }
20
+ document.addEventListener('mousedown', handleClickOutside);
21
+ return () => {
22
+ document.removeEventListener('mousedown', handleClickOutside);
23
+ };
24
+ }, [ref, isListOpen]);
25
+ };
26
+ const wrapperRef = useRef(null);
27
+ useOutsideAlerter(wrapperRef);
28
+ useEffect(() => {
29
+ setOptions(data.list);
30
+ }, [data]);
31
+ useEffect(() => {
32
+ setValue(displayValue);
33
+ }, [displayValue]);
34
+ const handleInputChange = (e) => {
35
+ const search = e.target.value;
36
+ setValue(search);
37
+ const filteredOptions = data.list.filter((item) => item[data.displayKey].toLowerCase().includes(search.toLowerCase()));
38
+ setOptions(filteredOptions);
39
+ debounce(() => {
40
+ onFilter(search);
41
+ });
42
+ };
43
+ return (_jsx(_Fragment, { children: _jsxs("div", { ref: wrapperRef, children: [_jsxs("div", { className: cn(s['flex'], s['items-center'], s['leading-4'], s['p-2'], s['focus:outline-none'], s['focus:ring'], s['w-full'], s['shadow-sm'], s['sm:text-base'], s['border'], s['rounded-md'], {
44
+ [s['border-red']]: hasError,
45
+ [s['border-gray-300']]: !hasError,
46
+ }), children: [_jsx("input", { placeholder: placeholder, value: !isListOpen ? value : value, className: cn(s['w-full'], s['focus:outline-none'], s['bg-none']), onChange: handleInputChange, onClick: () => setIsListOpen(true), disabled: disable }), isListOpen ? (_jsx(Icon, { nameIcon: "FaChevronUp", propsIcon: {
47
+ color: '#000000',
48
+ size: 22,
49
+ } })) : (_jsx(Icon, { nameIcon: "FaChevronDown", propsIcon: {
50
+ color: '#000000',
51
+ size: 22,
52
+ } }))] }), options && isListOpen
53
+ ? options.length > 0 && (_jsx("div", { className: cn(s['mt-1'], s['absolute'], s['bg-gray-100'], s['p-2'], s['rounded-sm'], s['z-50']), children: _jsx("ul", { children: options?.map((item, index) => (_jsx(_Fragment, { children: _jsx("li", { className: cn(s['text-gray-400'], s['flex'], s['items-center']), onClick: () => {
54
+ setValue(item[data.displayKey]);
55
+ setIsListOpen(false);
56
+ onSelect(item);
57
+ }, children: _jsx("label", { className: cn(s['ml-2'], s['mt-1'], s['text-black']), children: item[data.displayKey] }) }, index) }))) }) }))
58
+ : null] }) }));
59
+ };
@@ -0,0 +1,18 @@
1
+ import '../../../tc.module.css';
2
+ interface AutoCompleteFilterSingleSelectMultiFieldsDisplayProps {
3
+ loader?: boolean;
4
+ disable?: boolean;
5
+ displayValue?: string;
6
+ placeholder?: string;
7
+ data: any;
8
+ hasError?: boolean;
9
+ className?: string;
10
+ posstion?: string;
11
+ keyboard?: string;
12
+ onFilter?: (item: any) => void;
13
+ onSelect?: (item: any) => any;
14
+ onBlur?: (item: any) => any;
15
+ }
16
+ export declare const AutoCompleteFilterSingleSelectMultiFieldsDisplay: ({ disable, loader, displayValue, placeholder, data, hasError, className, posstion, keyboard, onFilter, onSelect, onBlur, }: AutoCompleteFilterSingleSelectMultiFieldsDisplayProps) => import("react/jsx-runtime").JSX.Element;
17
+ export {};
18
+ //# sourceMappingURL=auto-complete-filter-single-select-multiple-fields-display.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-complete-filter-single-select-multiple-fields-display.component.d.ts","sourceRoot":"","sources":["../../../../../../src/core-components/src/molecules/auto-complete-filter-single-select-multiple-fields-display/auto-complete-filter-single-select-multiple-fields-display.component.tsx"],"names":[],"mappings":"AAIA,OAAO,wBAAwB,CAAC;AAKhC,UAAU,qDAAqD;IAC7D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,GAAG,CAAC;IACV,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;IAC9B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,CAAC;CAC7B;AAED,eAAO,MAAM,gDAAgD,+HAa1D,qDAAqD,4CAiNvD,CAAC"}
@@ -0,0 +1,109 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /* eslint-disable */
3
+ import { useState, useEffect, useRef } from 'react';
4
+ import { Icon } from '../../atoms/icons/icons.component';
5
+ import '../../../tc.module.css';
6
+ import s from '../../tc.module.css';
7
+ import { cn } from '../../utils';
8
+ import { debounce } from '@techabl/core-utils';
9
+ export const AutoCompleteFilterSingleSelectMultiFieldsDisplay = ({ disable = false, loader = false, displayValue = '', placeholder = 'Search...', data, hasError = false, className, posstion = 'absolute', keyboard = 'text', onFilter, onSelect, onBlur, }) => {
10
+ const [value, setValue] = useState(displayValue);
11
+ const [options, setOptions] = useState(data.list);
12
+ const [isListOpen, setIsListOpen] = useState(false);
13
+ const [filterValue, setFilterValue] = useState();
14
+ const useOutsideAlerter = (ref) => {
15
+ useEffect(() => {
16
+ function handleClickOutside(event) {
17
+ if (ref.current && !ref.current.contains(event.target) && isListOpen) {
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 inputRef = useRef(null);
29
+ const wrapperRef = useRef(null);
30
+ useOutsideAlerter(wrapperRef);
31
+ useEffect(() => {
32
+ setOptions(data.list);
33
+ }, [data]);
34
+ useEffect(() => {
35
+ setValue(displayValue);
36
+ }, [displayValue]);
37
+ const onChange = (e) => {
38
+ const search = e.target.value;
39
+ setValue(search);
40
+ setFilterValue(search);
41
+ const filteredOptions = data.list.filter((item) => data.displayKey.some((key) => item[key]?.toString().toLowerCase().includes(search.toLowerCase())));
42
+ setOptions(filteredOptions);
43
+ debounce(() => {
44
+ onFilter && onFilter(search);
45
+ });
46
+ };
47
+ const onKeyUp = (e) => {
48
+ const charCode = e.which ? e.which : e.keyCode;
49
+ if (charCode === 8) {
50
+ const search = e.target.value;
51
+ debounce(() => {
52
+ onFilter && onFilter(search);
53
+ });
54
+ }
55
+ };
56
+ const onKeyDown = (e) => {
57
+ if (e.key === 'Enter' || e.key === 'Tab') {
58
+ if (options.length > 0) {
59
+ const selectedItem = options.find((item) => item.labId === Number(value));
60
+ if (selectedItem) {
61
+ setValue(data.displayKey.map((key) => `${selectedItem[key]}`).join(' - '));
62
+ setIsListOpen(false);
63
+ onSelect && onSelect(selectedItem);
64
+ }
65
+ }
66
+ }
67
+ };
68
+ const calculateMaxHeight = () => {
69
+ if (inputRef.current) {
70
+ const inputRect = inputRef.current.getBoundingClientRect();
71
+ const availableHeight = window.innerHeight - inputRect.bottom - 20; // 10px padding
72
+ return availableHeight;
73
+ }
74
+ return 'calc(100vh - 140px)';
75
+ };
76
+ return (_jsx(_Fragment, { children: _jsxs("div", { ref: wrapperRef, className: "w-full relative", children: [_jsxs("div", { className: cn(s['flex'], s['p-2'], s['leading-4'], s['focus:outline-none'], s['focus:ring'], s['w-full'], s['shadow-sm'], s['sm:text-base'], s['border'], s['rounded-md'], {
77
+ [s['border-red']]: hasError,
78
+ [s['border-gray-300']]: !hasError,
79
+ [s['dark:text-black']]: true,
80
+ }), children: [_jsx("input", { ref: inputRef, placeholder: placeholder, type: keyboard, value: value, className: cn(s['w-full'], s['focus:outline-none'], s['bg-none'], s['dark:text-black'], className), onKeyUp: onKeyUp, onChange: onChange, onClick: () => setIsListOpen(true), disabled: disable, onMouseDown: () => setValue(''), onBlur: (e) => onBlur && onBlur(e), onKeyDown: onKeyDown }), isListOpen ? (_jsx(Icon, { nameIcon: "FaChevronUp", propsIcon: {
81
+ color: '#000000',
82
+ size: 22,
83
+ } })) : (_jsx(Icon, { nameIcon: "FaChevronDown", propsIcon: {
84
+ color: '#000000',
85
+ size: 22,
86
+ } }))] }), options && isListOpen
87
+ ? options.length > 0 && (_jsx("div", { className: cn(s['absolute'], s['w-full'], s['bg-gray-100'], s['p-2'], s['rounded-sm'], s['overflow-y-auto']), style: {
88
+ zIndex: 500,
89
+ maxHeight: `${calculateMaxHeight()}px`,
90
+ }, children: _jsx("ul", { children: options?.map((item, index) => (_jsx("li", { className: cn(s['text-gray-400'], s['flex'], s['items-center']), onClick: () => {
91
+ setValue(data.displayKey
92
+ .map((key) => item[key])
93
+ .filter((value) => value !== null && value !== undefined)
94
+ .join(' - '));
95
+ setIsListOpen(false);
96
+ onSelect && onSelect(item);
97
+ }, children: _jsx("label", { className: cn(s['ml-2'], s['mt-1'], s['text-black']), style: {
98
+ textOverflow: 'ellipsis',
99
+ minWidth: 0,
100
+ overflow: 'hidden',
101
+ whiteSpace: 'nowrap',
102
+ }, title: data.displayKey
103
+ .map((key) => item[key])
104
+ .join(' - '), children: data.displayKey
105
+ .map((key) => item[key])
106
+ .filter((value) => value !== null && value !== undefined)
107
+ .join(' - ') }) }, index))) }) }))
108
+ : null] }) }));
109
+ };
@@ -0,0 +1,10 @@
1
+ interface AutocompleteGroupByProps {
2
+ data: any[];
3
+ hasError?: boolean;
4
+ displayValue?: string;
5
+ onChange?: (item: any, children: any) => void;
6
+ onClose?: () => void;
7
+ }
8
+ export declare const AutocompleteGroupBy: ({ data, hasError, displayValue, onChange, onClose, }: AutocompleteGroupByProps) => import("react/jsx-runtime").JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=auto-complete-group-by.component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-complete-group-by.component.d.ts","sourceRoot":"","sources":["../../../../../../src/core-components/src/molecules/auto-complete-group-by/auto-complete-group-by.component.tsx"],"names":[],"mappings":"AAMA,UAAU,wBAAwB;IAChC,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;IAC9C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,eAAO,MAAM,mBAAmB,yDAM7B,wBAAwB,4CAiP1B,CAAC"}
@@ -0,0 +1,128 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /* eslint-disable */
3
+ import { useState, useEffect, useRef } from 'react';
4
+ import { Icon } from '../../atoms/icons/icons.component';
5
+ import s from '../../tc.module.css';
6
+ import { cn } from '../../utils';
7
+ export const AutocompleteGroupBy = ({ data = [], hasError = false, displayValue = '', onChange, onClose, }) => {
8
+ //const [userRouter, setUserRouter] = useState<any>()
9
+ const [value, setValue] = useState(displayValue);
10
+ const [options, setOptions] = useState();
11
+ const [isListOpen, setIsListOpen] = useState(false);
12
+ const useOutsideAlerter = (ref) => {
13
+ useEffect(() => {
14
+ /**
15
+ * Alert if clicked on outside of element
16
+ */
17
+ function handleClickOutside(event) {
18
+ if (ref.current && !ref.current.contains(event.target) && isListOpen) {
19
+ setIsListOpen(false);
20
+ setValue('');
21
+ }
22
+ }
23
+ // Bind the event listener
24
+ document.addEventListener('mousedown', handleClickOutside);
25
+ return () => {
26
+ // Unbind the event listener on clean up
27
+ document.removeEventListener('mousedown', handleClickOutside);
28
+ };
29
+ }, [ref, isListOpen]);
30
+ };
31
+ const wrapperRef = useRef(null);
32
+ useOutsideAlerter(wrapperRef);
33
+ useEffect(() => {
34
+ setValue(displayValue);
35
+ }, [displayValue]);
36
+ useEffect(() => {
37
+ setOptions(data || []);
38
+ }, [data]);
39
+ const uniqByKeepFirst = (a, key) => {
40
+ const seen = new Set();
41
+ return a.filter((item) => {
42
+ const k = key(item);
43
+ return seen.has(k) ? false : seen.add(k);
44
+ });
45
+ };
46
+ const filter = (search, data) => {
47
+ if (search !== '') {
48
+ let filterArray = [];
49
+ data.filter((item) => {
50
+ item.children.filter((children) => {
51
+ const childrenItem = children.title &&
52
+ children.title.toLowerCase().indexOf(search.toLowerCase()) > -1;
53
+ if (childrenItem) {
54
+ const isSameArray = filterArray.filter((filterItem, index) => {
55
+ if (filterItem.name === item.name) {
56
+ const newChildren = filterArray[index].children.concat(children);
57
+ filterArray[index] = {
58
+ ...filterArray[index],
59
+ children: newChildren,
60
+ };
61
+ }
62
+ });
63
+ if (isSameArray.length < 1) {
64
+ filterArray.push({ ...item, children: [children] });
65
+ }
66
+ const uniqueChars = uniqByKeepFirst(filterArray, (it) => it.name);
67
+ filterArray = uniqueChars;
68
+ }
69
+ });
70
+ });
71
+ setOptions(filterArray);
72
+ }
73
+ else {
74
+ setOptions(data);
75
+ }
76
+ };
77
+ const onChangeValue = (e) => {
78
+ const search = e.target.value;
79
+ setValue(search);
80
+ filter(search, data);
81
+ };
82
+ return (_jsx(_Fragment, { children: _jsxs("div", { ref: wrapperRef, className: s['w-full'] + ' ' + s['relative'], children: [_jsxs("div", { className: cn(s['flex'], s['items-center'], s['leading-4'], s['p-2'], s['bg-white'], s['focus:outline-none'], s['focus:ring'], s['w-full'], s['shadow-sm'], s['sm:text-base'], s['border'], s['rounded-md'], {
83
+ [s['border-red']]: hasError,
84
+ [s['border-gray-300']]: !hasError,
85
+ }), children: [_jsx("input", { placeholder: "Search...", value: !isListOpen ? value : value, className: cn(s['w-full'] + ' ' + s['focus:outline-none']),
86
+ // onKeyUp={onKeyUp}
87
+ onChange: onChangeValue, onClick: () => setIsListOpen(true), onKeyDown: (e) => {
88
+ if (e.key === 'Enter') {
89
+ e.preventDefault();
90
+ // Find the selected item and children
91
+ let selectedItem = null;
92
+ let selectedChildren = null;
93
+ for (const item of options) {
94
+ for (const children of item.children) {
95
+ if (children.title.toLowerCase() === value.toLowerCase() ||
96
+ item.title.toLowerCase() === value.toLowerCase()) {
97
+ selectedItem = item;
98
+ selectedChildren = children;
99
+ break;
100
+ }
101
+ }
102
+ if (selectedItem) {
103
+ break;
104
+ }
105
+ }
106
+ // Call props.onChange with the selected item and children
107
+ if (onChange && selectedItem && selectedChildren) {
108
+ onChange(selectedItem, selectedChildren);
109
+ }
110
+ setIsListOpen(false);
111
+ setValue(value); // Set the value to what the user entered
112
+ setOptions([]);
113
+ }
114
+ } }), isListOpen ? (_jsx(Icon, { nameIcon: "FaChevronUp", propsIcon: {
115
+ color: '#000000',
116
+ size: 22,
117
+ } })) : (_jsx(Icon, { nameIcon: "FaChevronDown", propsIcon: {
118
+ color: '#000000',
119
+ size: 22,
120
+ } }))] }), options && isListOpen
121
+ ? options?.length > 0 && (_jsx("div", { className: cn(s['flex'], s['mt-1'], s['absolute'], s['z-50'], s['rounded-md'], s['bg-gray-200'], s['w-100'], s['w-full']), children: _jsx("ul", { className: cn(s['flex'], s['p-2'], s['rounded-sm'], s['w-full']), children: _jsx("div", { className: cn(s['flex'], s['flex-col'], s['w-full'], s['overflow-scroll']), style: { height: 'auto', maxHeight: '350px' }, children: options?.map((item, index) => (_jsxs(_Fragment, { children: [_jsx("li", { className: cn(s['flex'] + ' ' + s['text-gray-400']), children: item.title }, index), _jsx("ul", { className: cn(s['flex'], s['flex-col'], s['ml-4'], s['w-full']), children: item?.children?.map((children, childrenIndex) => (_jsx("li", { className: cn(s['flex'], s['hover:bg-gray-200'], s['focus:outline-none'], s['cursor-pointer'], s['w-full']), onClick: async () => {
122
+ onChange && onChange(item, children);
123
+ setIsListOpen(false);
124
+ setValue(children.title);
125
+ setOptions([]);
126
+ }, children: children.title }, childrenIndex))) })] }))) }) }) }))
127
+ : null] }) }));
128
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=auto-complete-group-by.component.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-complete-group-by.component.test.d.ts","sourceRoot":"","sources":["../../../../../../src/core-components/src/molecules/auto-complete-group-by/auto-complete-group-by.component.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { render } from '@testing-library/react';
3
+ import { AutocompleteGroupBy } from './auto-complete-group-by.component';
4
+ describe('AutocompleteGroupBy component', () => {
5
+ it('render autocompleteGroupBy correctly', () => {
6
+ const autocompleteGroupBy = render(_jsx(AutocompleteGroupBy, { data: [] }));
7
+ expect(autocompleteGroupBy).toMatchSnapshot();
8
+ });
9
+ });
@@ -0,0 +1,37 @@
1
+ .no-options {
2
+ position: relative;
3
+ padding: 0 10px 0px 10px;
4
+ /* background: white; */
5
+ background-color: #f3f6f4;
6
+ color: black;
7
+ }
8
+
9
+ .autocomplete-list {
10
+ list-style: none;
11
+ position: relative;
12
+ margin-top: 0;
13
+ padding: 0 10px 0px 10px;
14
+ min-height: auto;
15
+ max-height: 86vh;
16
+ overflow-y: auto;
17
+ /* background: white; */
18
+ background-color: #f3f6f4;
19
+ z-index: 1;
20
+ }
21
+
22
+ .autocomplete-list li {
23
+ /* padding: 4px; */
24
+ color: var(--input-autocomplete-item-text, #000);
25
+ }
26
+
27
+ .autocomplete-list li.active-option {
28
+ background-color: #f3f6f4;
29
+ background: var(--multiselect-item-hover);
30
+ cursor: pointer;
31
+ font-weight: bold;
32
+ }
33
+ .autocomplete-list li:hover {
34
+ background-color: #f3f6f4;
35
+ background: var(--multiselect-item-hover);
36
+ cursor: pointer;
37
+ }
@@ -0,0 +1,8 @@
1
+ interface AutocompleteProps {
2
+ value: string;
3
+ onValueChange: (value: string) => void;
4
+ options?: string[];
5
+ }
6
+ export declare const Autocomplete: ({ value, onValueChange, options, }: AutocompleteProps) => import("react/jsx-runtime").JSX.Element;
7
+ export {};
8
+ //# sourceMappingURL=autocomplete.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autocomplete.d.ts","sourceRoot":"","sources":["../../../../../../src/core-components/src/molecules/autocomplete/autocomplete.tsx"],"names":[],"mappings":"AAMA,UAAU,iBAAiB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,eAAO,MAAM,YAAY,uCAItB,iBAAiB,4CAgNnB,CAAC"}