@ozen-ui/kit 0.57.0 → 0.58.1

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 (232) hide show
  1. package/AutocompleteNext/package.json +5 -0
  2. package/__inner__/cjs/components/Autocomplete/Autocomplete.d.ts +3 -0
  3. package/__inner__/cjs/components/Autocomplete/Autocomplete.js +7 -0
  4. package/__inner__/cjs/components/Autocomplete/helper.d.ts +2 -10
  5. package/__inner__/cjs/components/AutocompleteNext/Autocomplete.css +226 -0
  6. package/__inner__/cjs/components/AutocompleteNext/Autocomplete.d.ts +4 -0
  7. package/__inner__/cjs/components/AutocompleteNext/Autocomplete.js +216 -0
  8. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/AutocompleteDropdown.d.ts +2 -0
  9. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/AutocompleteDropdown.js +156 -0
  10. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownCheckIcon/AutocompleteDropdownCheckIcon.css +7 -0
  11. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownCheckIcon/AutocompleteDropdownCheckIcon.d.ts +6 -0
  12. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownCheckIcon/AutocompleteDropdownCheckIcon.js +18 -0
  13. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownCheckIcon/index.d.ts +1 -0
  14. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownCheckIcon/index.js +4 -0
  15. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownLoading/AutocompleteDropdownLoading.d.ts +6 -0
  16. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownLoading/AutocompleteDropdownLoading.js +23 -0
  17. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownLoading/index.d.ts +1 -0
  18. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownLoading/index.js +4 -0
  19. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownNoOptions/AutocompleteDropdownNoOptions.d.ts +6 -0
  20. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownNoOptions/AutocompleteDropdownNoOptions.js +17 -0
  21. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownNoOptions/index.d.ts +1 -0
  22. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownNoOptions/index.js +4 -0
  23. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/index.d.ts +3 -0
  24. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/components/index.js +6 -0
  25. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/constants.d.ts +3 -0
  26. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/constants.js +6 -0
  27. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/helpers.d.ts +17 -0
  28. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/helpers.js +36 -0
  29. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/index.d.ts +3 -0
  30. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/index.js +6 -0
  31. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/types.d.ts +45 -0
  32. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/types.js +2 -0
  33. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/utils/index.d.ts +2 -0
  34. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/utils/index.js +5 -0
  35. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/utils/useDataListNavigation.d.ts +20 -0
  36. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/utils/useDataListNavigation.js +71 -0
  37. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/utils/useScrollContainerToElement.d.ts +3 -0
  38. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteDropdown/utils/useScrollContainerToElement.js +15 -0
  39. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/AutocompleteInput.d.ts +2 -0
  40. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/AutocompleteInput.js +38 -0
  41. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/components/AutocompleteInputMultiple.d.ts +2 -0
  42. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/components/AutocompleteInputMultiple.js +112 -0
  43. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/components/helpers.d.ts +5 -0
  44. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/components/helpers.js +36 -0
  45. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/components/index.d.ts +1 -0
  46. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/components/index.js +4 -0
  47. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/components/types.d.ts +17 -0
  48. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/components/types.js +2 -0
  49. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/helpers.d.ts +3 -0
  50. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/index.d.ts +2 -0
  51. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/index.js +5 -0
  52. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/types.d.ts +26 -0
  53. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteInput/types.js +2 -0
  54. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteRenderRight/AutocompleteRenderRight.d.ts +8 -0
  55. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteRenderRight/AutocompleteRenderRight.js +28 -0
  56. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteRenderRight/index.d.ts +1 -0
  57. package/__inner__/cjs/components/AutocompleteNext/components/AutocompleteRenderRight/index.js +4 -0
  58. package/__inner__/cjs/components/AutocompleteNext/components/index.d.ts +3 -0
  59. package/__inner__/cjs/components/AutocompleteNext/components/index.js +6 -0
  60. package/__inner__/cjs/components/AutocompleteNext/constants.d.ts +10 -0
  61. package/__inner__/cjs/components/AutocompleteNext/constants.js +13 -0
  62. package/__inner__/cjs/components/AutocompleteNext/helpers.d.ts +152 -0
  63. package/__inner__/cjs/components/AutocompleteNext/helpers.js +18 -0
  64. package/__inner__/cjs/components/AutocompleteNext/index.d.ts +2 -0
  65. package/__inner__/cjs/components/AutocompleteNext/index.js +5 -0
  66. package/__inner__/cjs/components/AutocompleteNext/types.d.ts +133 -0
  67. package/__inner__/cjs/components/AutocompleteNext/types.js +2 -0
  68. package/__inner__/cjs/components/DataList/DataList.js +18 -25
  69. package/__inner__/cjs/components/DataList/helpers.d.ts +3 -0
  70. package/__inner__/cjs/components/DataList/helpers.js +7 -0
  71. package/__inner__/cjs/components/DataList/{helpers → utils}/index.d.ts +0 -1
  72. package/__inner__/cjs/components/DataList/{helpers → utils}/index.js +0 -1
  73. package/__inner__/cjs/components/DatePicker/DatePicker.d.ts +2 -2
  74. package/__inner__/cjs/components/DatePicker/DatePicker.js +1 -1
  75. package/__inner__/cjs/components/FieldControl/FieldControl.css +4 -0
  76. package/__inner__/cjs/components/FieldInput/FieldInput.d.ts +1 -9
  77. package/__inner__/cjs/components/FieldInput/FieldInput.js +9 -4
  78. package/__inner__/cjs/components/FieldInput/constants.d.ts +1 -0
  79. package/__inner__/cjs/components/FieldInput/constants.js +4 -0
  80. package/__inner__/cjs/components/FieldInput/index.d.ts +1 -0
  81. package/__inner__/cjs/components/FieldInput/index.js +1 -0
  82. package/__inner__/cjs/components/FieldInput/types.d.ts +11 -0
  83. package/__inner__/cjs/components/FieldInput/types.js +2 -0
  84. package/__inner__/cjs/components/FieldLabel/FieldLabel.css +1 -0
  85. package/__inner__/cjs/components/Grid/Grid.css +2 -0
  86. package/__inner__/cjs/components/Input/Input.css +6 -9
  87. package/__inner__/cjs/components/Input/types.d.ts +2 -3
  88. package/__inner__/cjs/components/InputNumber/InputNumber.css +0 -5
  89. package/__inner__/cjs/components/Tag/Tag.css +1 -0
  90. package/__inner__/cjs/components/TagNext/Tag.css +11 -4
  91. package/__inner__/cjs/components/TagNext/Tag.js +1 -1
  92. package/__inner__/cjs/components/TagNext/constants.d.ts +1 -1
  93. package/__inner__/cjs/components/TagNext/constants.js +2 -2
  94. package/__inner__/cjs/components/TagNext/types.d.ts +6 -3
  95. package/__inner__/cjs/components/Textarea/Textarea.css +0 -5
  96. package/__inner__/cjs/components/ThemeProvider/types.d.ts +2 -0
  97. package/__inner__/cjs/hooks/useElementSize/index.d.ts +1 -0
  98. package/__inner__/cjs/hooks/useElementSize/index.js +4 -0
  99. package/__inner__/cjs/hooks/useElementSize/useElementSize.d.ts +6 -0
  100. package/__inner__/cjs/hooks/useElementSize/useElementSize.js +11 -0
  101. package/__inner__/cjs/hooks/useResizeObserver/index.d.ts +1 -0
  102. package/__inner__/cjs/hooks/useResizeObserver/index.js +4 -0
  103. package/__inner__/cjs/hooks/useResizeObserver/useResizeObserver.d.ts +4 -0
  104. package/__inner__/cjs/hooks/useResizeObserver/useResizeObserver.js +50 -0
  105. package/__inner__/cjs/locale/locale.js +21 -0
  106. package/__inner__/cjs/utils/isNotNil.d.ts +1 -0
  107. package/__inner__/cjs/utils/isNotNil.js +7 -0
  108. package/__inner__/esm/components/Autocomplete/Autocomplete.d.ts +3 -0
  109. package/__inner__/esm/components/Autocomplete/Autocomplete.js +7 -0
  110. package/__inner__/esm/components/Autocomplete/helper.d.ts +2 -10
  111. package/__inner__/esm/components/AutocompleteNext/Autocomplete.css +226 -0
  112. package/__inner__/esm/components/AutocompleteNext/Autocomplete.d.ts +4 -0
  113. package/__inner__/esm/components/AutocompleteNext/Autocomplete.js +213 -0
  114. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/AutocompleteDropdown.d.ts +2 -0
  115. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/AutocompleteDropdown.js +153 -0
  116. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownCheckIcon/AutocompleteDropdownCheckIcon.css +7 -0
  117. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownCheckIcon/AutocompleteDropdownCheckIcon.d.ts +6 -0
  118. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownCheckIcon/AutocompleteDropdownCheckIcon.js +13 -0
  119. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownCheckIcon/index.d.ts +1 -0
  120. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownCheckIcon/index.js +1 -0
  121. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownLoading/AutocompleteDropdownLoading.d.ts +6 -0
  122. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownLoading/AutocompleteDropdownLoading.js +18 -0
  123. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownLoading/index.d.ts +1 -0
  124. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownLoading/index.js +1 -0
  125. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownNoOptions/AutocompleteDropdownNoOptions.d.ts +6 -0
  126. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownNoOptions/AutocompleteDropdownNoOptions.js +12 -0
  127. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownNoOptions/index.d.ts +1 -0
  128. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/AutocompleteDropdownNoOptions/index.js +1 -0
  129. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/index.d.ts +3 -0
  130. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/components/index.js +3 -0
  131. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/constants.d.ts +3 -0
  132. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/constants.js +3 -0
  133. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/helpers.d.ts +17 -0
  134. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/helpers.js +30 -0
  135. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/index.d.ts +3 -0
  136. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/index.js +3 -0
  137. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/types.d.ts +45 -0
  138. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/types.js +1 -0
  139. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/utils/index.d.ts +2 -0
  140. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/utils/index.js +2 -0
  141. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/utils/useDataListNavigation.d.ts +20 -0
  142. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/utils/useDataListNavigation.js +67 -0
  143. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/utils/useScrollContainerToElement.d.ts +3 -0
  144. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteDropdown/utils/useScrollContainerToElement.js +11 -0
  145. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/AutocompleteInput.d.ts +2 -0
  146. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/AutocompleteInput.js +35 -0
  147. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/components/AutocompleteInputMultiple.d.ts +2 -0
  148. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/components/AutocompleteInputMultiple.js +109 -0
  149. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/components/helpers.d.ts +5 -0
  150. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/components/helpers.js +29 -0
  151. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/components/index.d.ts +1 -0
  152. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/components/index.js +1 -0
  153. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/components/types.d.ts +17 -0
  154. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/components/types.js +1 -0
  155. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/helpers.d.ts +3 -0
  156. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/index.d.ts +2 -0
  157. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/index.js +2 -0
  158. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/types.d.ts +26 -0
  159. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteInput/types.js +1 -0
  160. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteRenderRight/AutocompleteRenderRight.d.ts +8 -0
  161. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteRenderRight/AutocompleteRenderRight.js +24 -0
  162. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteRenderRight/index.d.ts +1 -0
  163. package/__inner__/esm/components/AutocompleteNext/components/AutocompleteRenderRight/index.js +1 -0
  164. package/__inner__/esm/components/AutocompleteNext/components/index.d.ts +3 -0
  165. package/__inner__/esm/components/AutocompleteNext/components/index.js +3 -0
  166. package/__inner__/esm/components/AutocompleteNext/constants.d.ts +10 -0
  167. package/__inner__/esm/components/AutocompleteNext/constants.js +10 -0
  168. package/__inner__/esm/components/AutocompleteNext/helpers.d.ts +152 -0
  169. package/__inner__/esm/components/AutocompleteNext/helpers.js +9 -0
  170. package/__inner__/esm/components/AutocompleteNext/index.d.ts +2 -0
  171. package/__inner__/esm/components/AutocompleteNext/index.js +2 -0
  172. package/__inner__/esm/components/AutocompleteNext/types.d.ts +133 -0
  173. package/__inner__/esm/components/AutocompleteNext/types.js +1 -0
  174. package/__inner__/esm/components/DataList/DataList.js +17 -24
  175. package/__inner__/esm/components/DataList/helpers.d.ts +3 -0
  176. package/__inner__/esm/components/DataList/helpers.js +2 -0
  177. package/__inner__/esm/components/DataList/{helpers → utils}/index.d.ts +0 -1
  178. package/__inner__/esm/components/DataList/{helpers → utils}/index.js +0 -1
  179. package/__inner__/esm/components/DatePicker/DatePicker.d.ts +2 -2
  180. package/__inner__/esm/components/DatePicker/DatePicker.js +1 -1
  181. package/__inner__/esm/components/FieldControl/FieldControl.css +4 -0
  182. package/__inner__/esm/components/FieldInput/FieldInput.d.ts +1 -9
  183. package/__inner__/esm/components/FieldInput/FieldInput.js +8 -3
  184. package/__inner__/esm/components/FieldInput/constants.d.ts +1 -0
  185. package/__inner__/esm/components/FieldInput/constants.js +1 -0
  186. package/__inner__/esm/components/FieldInput/index.d.ts +1 -0
  187. package/__inner__/esm/components/FieldInput/index.js +1 -0
  188. package/__inner__/esm/components/FieldInput/types.d.ts +11 -0
  189. package/__inner__/esm/components/FieldInput/types.js +1 -0
  190. package/__inner__/esm/components/FieldLabel/FieldLabel.css +1 -0
  191. package/__inner__/esm/components/Grid/Grid.css +2 -0
  192. package/__inner__/esm/components/Input/Input.css +6 -9
  193. package/__inner__/esm/components/Input/types.d.ts +2 -3
  194. package/__inner__/esm/components/InputNumber/InputNumber.css +0 -5
  195. package/__inner__/esm/components/Tag/Tag.css +1 -0
  196. package/__inner__/esm/components/TagNext/Tag.css +11 -4
  197. package/__inner__/esm/components/TagNext/Tag.js +2 -2
  198. package/__inner__/esm/components/TagNext/constants.d.ts +1 -1
  199. package/__inner__/esm/components/TagNext/constants.js +1 -1
  200. package/__inner__/esm/components/TagNext/types.d.ts +6 -3
  201. package/__inner__/esm/components/Textarea/Textarea.css +0 -5
  202. package/__inner__/esm/components/ThemeProvider/types.d.ts +2 -0
  203. package/__inner__/esm/hooks/useElementSize/index.d.ts +1 -0
  204. package/__inner__/esm/hooks/useElementSize/index.js +1 -0
  205. package/__inner__/esm/hooks/useElementSize/useElementSize.d.ts +6 -0
  206. package/__inner__/esm/hooks/useElementSize/useElementSize.js +7 -0
  207. package/__inner__/esm/hooks/useResizeObserver/index.d.ts +1 -0
  208. package/__inner__/esm/hooks/useResizeObserver/index.js +1 -0
  209. package/__inner__/esm/hooks/useResizeObserver/useResizeObserver.d.ts +4 -0
  210. package/__inner__/esm/hooks/useResizeObserver/useResizeObserver.js +46 -0
  211. package/__inner__/esm/locale/locale.js +21 -0
  212. package/__inner__/esm/utils/isNotNil.d.ts +1 -0
  213. package/__inner__/esm/utils/isNotNil.js +3 -0
  214. package/package.json +4 -4
  215. package/useElementSize/package.json +5 -0
  216. package/useResizeObserver/package.json +5 -0
  217. package/__inner__/cjs/components/DataList/helpers/types.d.ts +0 -10
  218. package/__inner__/esm/components/DataList/helpers/types.d.ts +0 -10
  219. /package/__inner__/cjs/components/{DataList/helpers/types.js → AutocompleteNext/components/AutocompleteInput/helpers.js} +0 -0
  220. /package/__inner__/cjs/components/DataList/{helpers → utils}/lastSelectedValue.d.ts +0 -0
  221. /package/__inner__/cjs/components/DataList/{helpers → utils}/lastSelectedValue.js +0 -0
  222. /package/__inner__/cjs/components/DataList/{helpers → utils}/useDataListNavigation.d.ts +0 -0
  223. /package/__inner__/cjs/components/DataList/{helpers → utils}/useDataListNavigation.js +0 -0
  224. /package/__inner__/cjs/components/DataList/{helpers → utils}/useScrollContainerToElement.d.ts +0 -0
  225. /package/__inner__/cjs/components/DataList/{helpers → utils}/useScrollContainerToElement.js +0 -0
  226. /package/__inner__/esm/components/{DataList/helpers/types.js → AutocompleteNext/components/AutocompleteInput/helpers.js} +0 -0
  227. /package/__inner__/esm/components/DataList/{helpers → utils}/lastSelectedValue.d.ts +0 -0
  228. /package/__inner__/esm/components/DataList/{helpers → utils}/lastSelectedValue.js +0 -0
  229. /package/__inner__/esm/components/DataList/{helpers → utils}/useDataListNavigation.d.ts +0 -0
  230. /package/__inner__/esm/components/DataList/{helpers → utils}/useDataListNavigation.js +0 -0
  231. /package/__inner__/esm/components/DataList/{helpers → utils}/useScrollContainerToElement.d.ts +0 -0
  232. /package/__inner__/esm/components/DataList/{helpers → utils}/useScrollContainerToElement.js +0 -0
@@ -0,0 +1,5 @@
1
+ {
2
+ "main": "../__inner__/cjs/components/AutocompleteNext/index.js",
3
+ "module": "../__inner__/esm/components/AutocompleteNext/index.js",
4
+ "types": "../__inner__/esm/components/AutocompleteNext/index.d.ts"
5
+ }
@@ -1,4 +1,7 @@
1
1
  import './Autocomplete.css';
2
2
  import type { AutocompleteComponent } from './types';
3
3
  export declare const cnAutocomplete: import("@bem-react/classname").ClassNameFormatter;
4
+ /**
5
+ * @deprecated Компонент устарел. Для замены используйте компонент AutocompleteNext
6
+ */
4
7
  export declare const Autocomplete: AutocompleteComponent;
@@ -4,6 +4,7 @@ exports.Autocomplete = exports.cnAutocomplete = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  require("./Autocomplete.css");
6
6
  var react_1 = tslib_1.__importStar(require("react"));
7
+ var logger_1 = require("@ozen-ui/logger");
7
8
  var useControlled_1 = require("../../hooks/useControlled");
8
9
  var useMultiRef_1 = require("../../hooks/useMultiRef");
9
10
  var useMutableRef_1 = require("../../hooks/useMutableRef");
@@ -22,6 +23,9 @@ function AutocompleteRender(inProps, ref) {
22
23
  name: 'Autocomplete',
23
24
  });
24
25
  var _a = (0, helper_1.withDefaultGetters)(props), _b = _a.disabled, disabled = _b === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_DISABLED : _b, _c = _a.required, required = _c === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_REQUIRED : _c, _d = _a.autoFocus, autoFocus = _d === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_AUTOFOCUS : _d, _e = _a.fullWidth, fullWidth = _e === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_FULLWIDTH : _e, _f = _a.size, size = _f === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_SIZE : _f, _g = _a.allowCustomValue, allowCustomValue = _g === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_ALLOW_CUSTOM_VALUE : _g, _h = _a.disableShowChevron, disableShowChevron = _h === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_DISABLE_SHOW_CHEVRON : _h, _j = _a.disableClearButton, disableClearButton = _j === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_DISABLE_CLEAR_BUTTON : _j, _k = _a.disableShowEmptyOptionsList, disableShowEmptyOptionsList = _k === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_DISABLE_SHOW_EMPTY_OPTIONS_LIST : _k, _l = _a.disableCloseOnSelect, disableCloseOnSelect = _l === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_DISABLE_CLOSE_ON_SELECT : _l, _m = _a.renderInput, renderInput = _m === void 0 ? function (props) { return react_1.default.createElement(Input_1.Input, tslib_1.__assign({}, props, { ref: ref })); } : _m, searchFunctionProp = _a.searchFunction, renderOptionProp = _a.renderOption, inputValueProp = _a.inputValue, className = _a.className, valueProp = _a.value, options = _a.options, defaultValue = _a.defaultValue, error = _a.error, onChange = _a.onChange, onInputChange = _a.onInputChange, label = _a.label, placeholder = _a.placeholder, renderLeft = _a.renderLeft, renderRight = _a.renderRight, hint = _a.hint, getOptionKey = _a.getOptionKey, getOptionLabel = _a.getOptionLabel, getOptionDisabled = _a.getOptionDisabled, dataListProps = _a.dataListProps, onCloseProp = _a.onClose, onOpenProp = _a.onOpen, openProp = _a.open, defaultOpen = _a.defaultOpen, loading = _a.loading, inputProps = _a.inputProps, bodyProps = _a.bodyProps, onKeyDown = _a.onKeyDown, noOptionsText = _a.noOptionsText, clearText = _a.clearText, openText = _a.openText, loadingText = _a.loadingText, closeText = _a.closeText, other = tslib_1.__rest(_a, ["disabled", "required", "autoFocus", "fullWidth", "size", "allowCustomValue", "disableShowChevron", "disableClearButton", "disableShowEmptyOptionsList", "disableCloseOnSelect", "renderInput", "searchFunction", "renderOption", "inputValue", "className", "value", "options", "defaultValue", "error", "onChange", "onInputChange", "label", "placeholder", "renderLeft", "renderRight", "hint", "getOptionKey", "getOptionLabel", "getOptionDisabled", "dataListProps", "onClose", "onOpen", "open", "defaultOpen", "loading", "inputProps", "bodyProps", "onKeyDown", "noOptionsText", "clearText", "openText", "loadingText", "closeText"]);
26
+ if (process.env.NODE_ENV !== 'production') {
27
+ (0, logger_1.deprecate)('Компонент «Autocomplete» устарел. Для замены используйте компонент «AutocompleteNext».');
28
+ }
25
29
  var anchorRef = (0, react_1.useRef)(null);
26
30
  var lastInputValue = (0, react_1.useRef)('');
27
31
  var inputBodyRef = (0, useMultiRef_1.useMultiRef)([anchorRef, bodyProps === null || bodyProps === void 0 ? void 0 : bodyProps.ref]);
@@ -193,4 +197,7 @@ function AutocompleteRender(inProps, ref) {
193
197
  !disableShowEmptyOptionsList && (react_1.default.createElement(components_1.AutocompleteNoOptions, { showNoOptions: showNoOptions, noOptionsText: noOptionsText })),
194
198
  react_1.default.createElement(components_1.AutocompleteLoading, { showLoading: showLoading, loadingText: loadingText, size: size }))));
195
199
  }
200
+ /**
201
+ * @deprecated Компонент устарел. Для замены используйте компонент AutocompleteNext
202
+ */
196
203
  exports.Autocomplete = (0, react_1.forwardRef)(AutocompleteRender);
@@ -46,11 +46,7 @@ export declare function withDefaultGetters<OPTION>(props: AutocompleteProps<OPTI
46
46
  hint?: string | null | undefined;
47
47
  renderLeft?: string | number | import("react").FC<import("@ozen-ui/icons").IconProps> | import("react").ReactElement<import("@ozen-ui/icons").IconProps, string | import("react").JSXElementConstructor<any>> | (() => import("react").ReactElement<import("@ozen-ui/icons").IconProps, string | import("react").JSXElementConstructor<any>>) | undefined;
48
48
  renderRight?: string | number | import("react").FC<import("@ozen-ui/icons").IconProps> | import("react").ReactElement<import("@ozen-ui/icons").IconProps, string | import("react").JSXElementConstructor<any>> | (() => import("react").ReactElement<import("@ozen-ui/icons").IconProps, string | import("react").JSXElementConstructor<any>>) | undefined;
49
- inputProps?: (Omit<import("react").DetailedHTMLProps<import("react").InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref"> & {
50
- ref?: ((instance: HTMLInputElement | null) => void) | import("react").RefObject<HTMLInputElement> | null | undefined;
51
- } & {
52
- 'data-testid'?: string | undefined;
53
- }) | undefined;
49
+ inputProps?: import("../FieldInput").FieldInputProps | undefined;
54
50
  bodyProps?: (Omit<import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, "ref"> & {
55
51
  ref?: ((instance: HTMLLabelElement | null) => void) | import("react").RefObject<HTMLLabelElement> | null | undefined;
56
52
  }) | undefined;
@@ -117,11 +113,7 @@ export declare function withDefaultGetters<OPTION>(props: AutocompleteProps<OPTI
117
113
  hint?: string | null | undefined;
118
114
  renderLeft?: string | number | import("react").FC<import("@ozen-ui/icons").IconProps> | import("react").ReactElement<import("@ozen-ui/icons").IconProps, string | import("react").JSXElementConstructor<any>> | (() => import("react").ReactElement<import("@ozen-ui/icons").IconProps, string | import("react").JSXElementConstructor<any>>) | undefined;
119
115
  renderRight?: string | number | import("react").FC<import("@ozen-ui/icons").IconProps> | import("react").ReactElement<import("@ozen-ui/icons").IconProps, string | import("react").JSXElementConstructor<any>> | (() => import("react").ReactElement<import("@ozen-ui/icons").IconProps, string | import("react").JSXElementConstructor<any>>) | undefined;
120
- inputProps?: (Omit<import("react").DetailedHTMLProps<import("react").InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref"> & {
121
- ref?: ((instance: HTMLInputElement | null) => void) | import("react").RefObject<HTMLInputElement> | null | undefined;
122
- } & {
123
- 'data-testid'?: string | undefined;
124
- }) | undefined;
116
+ inputProps?: import("../FieldInput").FieldInputProps | undefined;
125
117
  bodyProps?: (Omit<import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, "ref"> & {
126
118
  ref?: ((instance: HTMLLabelElement | null) => void) | import("react").RefObject<HTMLLabelElement> | null | undefined;
127
119
  }) | undefined;
@@ -0,0 +1,226 @@
1
+ .AutocompleteNext {
2
+ --autocomplete-gutter-x: 0 var(--textfield-gutter-x);
3
+ }
4
+
5
+ .AutocompleteNext_hasChevron.AutocompleteNext_size_2xs {
6
+ --autocomplete-gutter-x: 0 var(--control-padding-2xs) 0
7
+ var(--control-padding-xs);
8
+ }
9
+
10
+ .AutocompleteNext_hasChevron.AutocompleteNext_size_xs {
11
+ --autocomplete-gutter-x: 0 var(--control-padding-2xs) 0
12
+ var(--control-padding-xs);
13
+ }
14
+
15
+ .AutocompleteNext_hasChevron.AutocompleteNext_size_s {
16
+ --autocomplete-gutter-x: 0 var(--control-padding-2xs) 0
17
+ var(--control-padding-s);
18
+ }
19
+
20
+ .AutocompleteNext_hasChevron.AutocompleteNext_size_m {
21
+ --autocomplete-gutter-x: 0 var(--control-padding-2xs) 0
22
+ var(--control-padding-m);
23
+ }
24
+
25
+ .AutocompleteNext_hasChevron.AutocompleteNext_size_l {
26
+ --autocomplete-gutter-x: 0 var(--control-padding-2xs) 0
27
+ var(--control-padding-l);
28
+ }
29
+
30
+ .AutocompleteNext-RenderRight {
31
+ display: flex;
32
+ gap: var(--spacing-2xs);
33
+ }
34
+
35
+ .AutocompleteNext-ClearButton {
36
+ visibility: hidden;
37
+ transition: visibility var(--transition-default);
38
+ }
39
+
40
+ .AutocompleteNext-ClearButton_visibility {
41
+ visibility: visible;
42
+ }
43
+
44
+ .AutocompleteNext .Input-Body {
45
+ padding: var(--autocomplete-gutter-x);
46
+ align-items: flex-start;
47
+ }
48
+
49
+ .AutocompleteNext .FieldIcon {
50
+ block-size: var(--textfield-input-height);
51
+ }
52
+
53
+ .AutocompleteNext-Option {
54
+ cursor: pointer;
55
+ transition: background-color var(--transition-default);
56
+ }
57
+
58
+ .AutocompleteNext-Option:hover {
59
+ background-color: var(--color-background-main-hover);
60
+ }
61
+
62
+ .AutocompleteNext-Option:active {
63
+ background-color: var(--color-background-main-pressed);
64
+ }
65
+
66
+ .AutocompleteNext-Option_focused {
67
+ box-shadow: inset var(--shadow-outline-focused);
68
+ }
69
+
70
+ .AutocompleteNext-Option_disabled,
71
+ .AutocompleteNext-Option_disabled:hover,
72
+ .AutocompleteNext-Option_disabled:active {
73
+ cursor: not-allowed;
74
+ background-color: unset;
75
+ }
76
+
77
+ .AutocompleteNext-Option_disabled .ListItemText-TextPrimary,
78
+ .AutocompleteNext-Option_disabled .ListItemText-TextSecondary,
79
+ .AutocompleteNext-Option_disabled:hover .ListItemText-TextPrimary,
80
+ .AutocompleteNext-Option_disabled:hover .ListItemText-TextSecondary,
81
+ .AutocompleteNext-Option_disabled:active .ListItemText-TextPrimary,
82
+ .AutocompleteNext-Option_disabled:active .ListItemText-TextSecondary {
83
+ color: var(--color-content-tertiary);
84
+ }
85
+
86
+ .AutocompleteNext-Input_multiple {
87
+ display: flex;
88
+ flex-wrap: wrap;
89
+ overflow: hidden;
90
+ inline-size: 100%;
91
+ align-items: center;
92
+ box-sizing: border-box;
93
+ padding: var(--textfield-input-padding);
94
+ min-block-size: var(--textfield-input-height);
95
+ gap: var(--spacing-3xs);
96
+ }
97
+
98
+ .AutocompleteNext-Input_multiple input {
99
+ padding: 0;
100
+ border: none;
101
+ outline: none;
102
+ font: inherit;
103
+ background: none;
104
+ box-sizing: border-box;
105
+ color: var(--textfield-color);
106
+ }
107
+
108
+ .AutocompleteNext-Input_multiple input::placeholder {
109
+ opacity: 0;
110
+ }
111
+
112
+ .AutocompleteNext-Input_multiple * + input::placeholder, .AutocompleteNext-Input_multiple input:focus::placeholder {
113
+ opacity: 1;
114
+ }
115
+
116
+ .AutocompleteNext-Input_responsive {
117
+ flex-wrap: nowrap;
118
+ gap: unset;
119
+ }
120
+
121
+ .AutocompleteNext-Input_responsive .AutocompleteNext-Tag {
122
+ margin-inline-end: var(--spacing-3xs);
123
+ }
124
+
125
+ .AutocompleteNext-HelperInput {
126
+ inset-block-start: 0;
127
+ block-size: 0;
128
+ overflow: hidden;
129
+ position: absolute;
130
+ visibility: hidden;
131
+ white-space: nowrap;
132
+ }
133
+
134
+ .AutocompleteNext-Tag_hidden {
135
+ inset-block-start: 0;
136
+ block-size: 0;
137
+ visibility: hidden;
138
+ position: absolute;
139
+ }
140
+
141
+ .AutocompleteNext-Tag_disabled {
142
+ pointer-events: none;
143
+ opacity: 0.6;
144
+ }
145
+
146
+ .AutocompleteNext-ClearTag {
147
+ cursor: pointer;
148
+ display: inline-flex;
149
+ align-items: center;
150
+ block-size: inherit;
151
+ }
152
+
153
+ .AutocompleteNext-Dropdown {
154
+ --scroll-bar-size: 12px;
155
+ }
156
+
157
+ .AutocompleteNext-Dropdown::-webkit-scrollbar {
158
+ inline-size: var(--scroll-bar-size);
159
+ }
160
+
161
+ .AutocompleteNext-Dropdown::-webkit-scrollbar-thumb {
162
+ background-color: var(--color-background-secondary);
163
+ border-radius: calc(var(--scroll-bar-size) / 2);
164
+ border: calc(var(--scroll-bar-size) / 4) solid transparent;
165
+ background-clip: padding-box;
166
+ border-image: initial;
167
+ min-block-size: 24px;
168
+ }
169
+
170
+ .AutocompleteNext-Dropdown::-webkit-scrollbar-thumb:hover,
171
+ .AutocompleteNext-Dropdown::-webkit-scrollbar-thumb:active {
172
+ border: calc(var(--scroll-bar-size) / 4) solid transparent;
173
+ background-clip: padding-box;
174
+ }
175
+
176
+ .AutocompleteNext-Dropdown::-webkit-scrollbar-thumb:hover {
177
+ background-color: var(--color-background-secondary-hover);
178
+ }
179
+
180
+ .AutocompleteNext-Dropdown::-webkit-scrollbar-thumb:active {
181
+ background-color: var(--color-background-secondary-pressed);
182
+ }
183
+
184
+ .AutocompleteNext-Dropdown::-webkit-scrollbar-corner {
185
+ background: transparent;
186
+ }
187
+
188
+ .AutocompleteNext-Dropdown {
189
+ overflow: hidden auto;
190
+ max-block-size: 40vb;
191
+ }
192
+ .AutocompleteNext-Dropdown-animation-enter {
193
+ opacity: 0;
194
+ transform: translate(0, calc(var(--spacing-2xs) * -1));
195
+ pointer-events: none;
196
+ }
197
+ .AutocompleteNext-Dropdown-animation-enter-active {
198
+ opacity: 1;
199
+ transition:
200
+ opacity var(--transition-default),
201
+ transform var(--transition-default);
202
+ transform: translate(0);
203
+ pointer-events: none;
204
+ }
205
+ .AutocompleteNext-Dropdown-animation-enter-done {
206
+ opacity: 1;
207
+ transform: translate(0);
208
+ }
209
+ .AutocompleteNext-Dropdown-animation-exit {
210
+ opacity: 1;
211
+ transform: translate(0);
212
+ pointer-events: none;
213
+ }
214
+ .AutocompleteNext-Dropdown-animation-exit-active {
215
+ opacity: 0;
216
+ transition:
217
+ opacity var(--transition-default),
218
+ transform var(--transition-default);
219
+ transform: translate(0, calc(var(--spacing-2xs) * -1));
220
+ pointer-events: none;
221
+ }
222
+ .AutocompleteNext-Dropdown-animation-exit-done {
223
+ opacity: 0;
224
+ transform: translate(0, calc(var(--spacing-2xs) * -1));
225
+ pointer-events: none;
226
+ }
@@ -0,0 +1,4 @@
1
+ import './Autocomplete.css';
2
+ import type { AutocompleteComponent } from './types';
3
+ export declare const cnAutocomplete: import("@bem-react/classname").ClassNameFormatter;
4
+ export declare const Autocomplete: AutocompleteComponent;
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Autocomplete = exports.cnAutocomplete = void 0;
4
+ var tslib_1 = require("tslib");
5
+ require("./Autocomplete.css");
6
+ var react_1 = tslib_1.__importStar(require("react"));
7
+ var useControlled_1 = require("../../hooks/useControlled");
8
+ var useElementSize_1 = require("../../hooks/useElementSize");
9
+ var useMultiRef_1 = require("../../hooks/useMultiRef");
10
+ var useMutableRef_1 = require("../../hooks/useMutableRef");
11
+ var useThemeProps_1 = require("../../hooks/useThemeProps");
12
+ var classname_1 = require("../../utils/classname");
13
+ var isKeys_1 = require("../../utils/isKeys");
14
+ var components_1 = require("./components");
15
+ var constants_1 = require("./constants");
16
+ var helpers_1 = require("./helpers");
17
+ exports.cnAutocomplete = (0, classname_1.cn)('AutocompleteNext');
18
+ function AutocompleteRender(inProps, ref) {
19
+ var props = (0, useThemeProps_1.useThemeProps)({
20
+ props: inProps,
21
+ name: 'AutocompleteNext',
22
+ });
23
+ var _a = (0, helpers_1.withDefaultGetters)(props), _b = _a.disabled, disabled = _b === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_DISABLED : _b, _c = _a.required, required = _c === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_REQUIRED : _c, _d = _a.autoFocus, autoFocus = _d === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_AUTOFOCUS : _d, _e = _a.fullWidth, fullWidth = _e === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_FULLWIDTH : _e, _f = _a.size, size = _f === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_SIZE : _f, _g = _a.allowCustomValue, allowCustomValue = _g === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_ALLOW_CUSTOM_VALUE : _g, _h = _a.disableShowChevron, disableShowChevron = _h === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_DISABLE_SHOW_CHEVRON : _h, _j = _a.disableClearButton, disableClearButton = _j === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_DISABLE_CLEAR_BUTTON : _j, _k = _a.disableCloseOnSelect, disableCloseOnSelect = _k === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_DISABLE_CLOSE_ON_SELECT : _k, _l = _a.disableShowEmptyOptionsList, disableShowEmptyOptionsList = _l === void 0 ? constants_1.AUTOCOMPLETE_DEFAULT_DISABLE_SHOW_EMPTY_OPTIONS_LIST : _l, limitTags = _a.limitTags, renderInput = _a.renderInput, multiple = _a.multiple, searchFunctionProp = _a.searchFunction, inputValueProp = _a.inputValue, valueProp = _a.value, options = _a.options, defaultValue = _a.defaultValue, onInputChange = _a.onInputChange, getOptionKey = _a.getOptionKey, getOptionLabel = _a.getOptionLabel, getOptionDisabled = _a.getOptionDisabled, onCloseProp = _a.onClose, onOpenProp = _a.onOpen, openProp = _a.open, defaultOpen = _a.defaultOpen, loading = _a.loading, inputProps = _a.inputProps, bodyProps = _a.bodyProps, onKeyDown = _a.onKeyDown, noOptionsText = _a.noOptionsText, clearText = _a.clearText, openText = _a.openText, renderOption = _a.renderOption, loadingText = _a.loadingText, closeText = _a.closeText, listProps = _a.listProps, popoverProps = _a.popoverProps, onChangeProp = _a.onChange, other = tslib_1.__rest(_a, ["disabled", "required", "autoFocus", "fullWidth", "size", "allowCustomValue", "disableShowChevron", "disableClearButton", "disableCloseOnSelect", "disableShowEmptyOptionsList", "limitTags", "renderInput", "multiple", "searchFunction", "inputValue", "value", "options", "defaultValue", "onInputChange", "getOptionKey", "getOptionLabel", "getOptionDisabled", "onClose", "onOpen", "open", "defaultOpen", "loading", "inputProps", "bodyProps", "onKeyDown", "noOptionsText", "clearText", "openText", "renderOption", "loadingText", "closeText", "listProps", "popoverProps", "onChange"]);
24
+ var _m = (0, useElementSize_1.useElementSize)(), inputRef = _m.ref, height = _m.height;
25
+ var lastInputValue = (0, react_1.useRef)('');
26
+ var anchorRef = (0, react_1.useRef)(null);
27
+ var inputBodyRef = (0, useMultiRef_1.useMultiRef)([anchorRef, bodyProps === null || bodyProps === void 0 ? void 0 : bodyProps.ref]);
28
+ var rootRef = (0, useMultiRef_1.useMultiRef)([ref, inputRef]);
29
+ var _o = tslib_1.__read((0, useControlled_1.useControlled)({
30
+ value: inputValueProp,
31
+ defaultValue: '',
32
+ name: 'AutocompleteNext',
33
+ state: 'inputValue',
34
+ }), 2), inputValue = _o[0], setInputValue = _o[1];
35
+ var _p = tslib_1.__read((0, useControlled_1.useControlled)({
36
+ value: valueProp,
37
+ defaultValue: defaultValue,
38
+ name: 'AutocompleteNext',
39
+ state: 'value',
40
+ }), 2), valueState = _p[0], setValueState = _p[1];
41
+ var _q = tslib_1.__read((0, useControlled_1.useControlled)({
42
+ value: openProp,
43
+ defaultValue: defaultOpen,
44
+ name: 'AutocompleteNext',
45
+ state: 'open',
46
+ }), 2), open = _q[0], setOpen = _q[1];
47
+ var searchFunctionDefault = function (options, searchValue) {
48
+ return options === null || options === void 0 ? void 0 : options.filter(function (option) {
49
+ return getOptionLabel(option).toLowerCase().includes(searchValue.toLowerCase());
50
+ });
51
+ };
52
+ var savedOnInputChange = (0, useMutableRef_1.useMutableRef)(onInputChange);
53
+ var savedGetOptionLabel = (0, useMutableRef_1.useMutableRef)(getOptionLabel);
54
+ var _r = tslib_1.__read((0, react_1.useState)(tslib_1.__spreadArray([], tslib_1.__read(options), false)), 2), filteredOptions = _r[0], setFilteredOptions = _r[1];
55
+ var searchFunction = searchFunctionProp || searchFunctionDefault;
56
+ var hasOptions = !!(filteredOptions === null || filteredOptions === void 0 ? void 0 : filteredOptions.length);
57
+ var _s = tslib_1.__read((0, react_1.useState)(undefined), 2), search = _s[0], setSearch = _s[1];
58
+ var changeInputValue = function (e, value) {
59
+ var _a;
60
+ setInputValue(value);
61
+ (_a = savedOnInputChange.current) === null || _a === void 0 ? void 0 : _a.call(savedOnInputChange, e, value);
62
+ };
63
+ var callOnChange = function (e, option) {
64
+ var _a, _b, _c;
65
+ var inputValue = '';
66
+ var onChange = function (e, option) {
67
+ setValueState(option);
68
+ onChangeProp === null || onChangeProp === void 0 ? void 0 : onChangeProp(e, option);
69
+ };
70
+ var params = tslib_1.__assign(tslib_1.__assign({}, inProps), { onChange: onChange, value: valueState });
71
+ if ((0, helpers_1.isNotMultipleParams)(params)) {
72
+ inputValue = option ? getOptionLabel(option) : '';
73
+ (_a = params.onChange) === null || _a === void 0 ? void 0 : _a.call(params, e, option);
74
+ }
75
+ if ((0, helpers_1.isMultipleParams)(params)) {
76
+ if (option === null) {
77
+ (_b = params.onChange) === null || _b === void 0 ? void 0 : _b.call(params, e, null);
78
+ }
79
+ else {
80
+ var value = params.value || [];
81
+ var optionKey_1 = option && getOptionKey(option);
82
+ var optionIsSelected = value.find(function (item) { return getOptionKey(item) === optionKey_1; });
83
+ // eslint-disable-next-line no-nested-ternary
84
+ var res = optionIsSelected
85
+ ? value.filter(function (option) { return getOptionKey(option) !== optionKey_1; })
86
+ : option
87
+ ? tslib_1.__spreadArray(tslib_1.__spreadArray([], tslib_1.__read(value), false), [option], false) : value;
88
+ (_c = params.onChange) === null || _c === void 0 ? void 0 : _c.call(params, e, res);
89
+ }
90
+ setSearch(undefined);
91
+ }
92
+ changeInputValue(null, inputValue);
93
+ };
94
+ /** Эффект — фильтрация списка при изменении опций */
95
+ (0, react_1.useEffect)(function () {
96
+ if (!open)
97
+ return;
98
+ setFilteredOptions(search ? search(options) : tslib_1.__spreadArray([], tslib_1.__read(options), false));
99
+ }, [search, options, open, searchFunctionProp]);
100
+ /** Эффект — синхронизируем значение текстового поля со значением в списке */
101
+ (0, react_1.useEffect)(function () {
102
+ var _a;
103
+ if (allowCustomValue || multiple)
104
+ return;
105
+ var value = valueState || '';
106
+ var params = tslib_1.__assign(tslib_1.__assign({}, inProps), { value: value });
107
+ if ((0, helpers_1.isNotMultipleParams)(params)) {
108
+ lastInputValue.current = (_a = savedGetOptionLabel.current) === null || _a === void 0 ? void 0 : _a.call(savedGetOptionLabel, params.value);
109
+ if (lastInputValue.current !== inputValue)
110
+ changeInputValue(null, lastInputValue.current);
111
+ }
112
+ }, [valueState, allowCustomValue]);
113
+ /** Эффект — автофокусировка в текстовом поле */
114
+ (0, react_1.useEffect)(function () {
115
+ var _a;
116
+ if (autoFocus)
117
+ (_a = anchorRef.current) === null || _a === void 0 ? void 0 : _a.focus();
118
+ }, [autoFocus]);
119
+ /** Ждём выполнения анимации на закрытие и делаем сброс функции фильтрации */
120
+ var handleExited = function () {
121
+ var _a;
122
+ setSearch(undefined);
123
+ (_a = popoverProps === null || popoverProps === void 0 ? void 0 : popoverProps.onExited) === null || _a === void 0 ? void 0 : _a.call(popoverProps);
124
+ };
125
+ /** Закрытие */
126
+ var handleClose = function () {
127
+ setOpen(false);
128
+ onCloseProp === null || onCloseProp === void 0 ? void 0 : onCloseProp();
129
+ };
130
+ /** Открытие */
131
+ var handleOpen = function () {
132
+ setOpen(true);
133
+ onOpenProp === null || onOpenProp === void 0 ? void 0 : onOpenProp();
134
+ };
135
+ /** Переключатель открытия и закрытия */
136
+ var handleToggle = function () {
137
+ if (disabled)
138
+ return;
139
+ if (open)
140
+ handleClose();
141
+ else
142
+ handleOpen();
143
+ };
144
+ /** Очистка поля */
145
+ var handleClear = function (e) {
146
+ callOnChange(e, null);
147
+ setSearch(undefined);
148
+ };
149
+ /** Актуализация значения текстового поля после его покидания */
150
+ var handleBlur = function (e) {
151
+ var _a;
152
+ (_a = inputProps === null || inputProps === void 0 ? void 0 : inputProps.onBlur) === null || _a === void 0 ? void 0 : _a.call(inputProps, e);
153
+ if (allowCustomValue)
154
+ return;
155
+ if (inputValue !== lastInputValue.current) {
156
+ changeInputValue(null, lastInputValue.current);
157
+ }
158
+ };
159
+ /** Открытие списка по клику на текстовом поле */
160
+ var handleClickOnInput = function (e) {
161
+ var _a;
162
+ handleToggle();
163
+ (_a = inputProps === null || inputProps === void 0 ? void 0 : inputProps.onClick) === null || _a === void 0 ? void 0 : _a.call(inputProps, e);
164
+ };
165
+ /** Управление элементом контроля через клавиатуру */
166
+ var handleKeyDown = function (e) {
167
+ if ((0, isKeys_1.isKeys)(e, ['ArrowDown', 'ArrowUp']) && !open) {
168
+ e.preventDefault();
169
+ handleToggle();
170
+ }
171
+ var params = tslib_1.__assign(tslib_1.__assign({}, inProps), { value: valueState });
172
+ if ((0, helpers_1.isMultipleParams)(params) && (0, isKeys_1.isKeys)(e, ['Backspace']) && !inputValue) {
173
+ var value = params.value;
174
+ if (value)
175
+ callOnChange(e, value[value.length - 1] || null);
176
+ }
177
+ onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);
178
+ };
179
+ /** Событие ввода значения в текстовом поле */
180
+ var handleChangeInput = function (e) {
181
+ var value = e.target.value;
182
+ // Открываем список при вводе первого символа (при условии, что список еще не открыт)
183
+ if (value.length && !open)
184
+ handleOpen();
185
+ if (multiple)
186
+ changeInputValue(e, value);
187
+ if (value && !multiple)
188
+ changeInputValue(e, value);
189
+ if (!value && !multiple)
190
+ callOnChange(e, null);
191
+ // Задаем функцию фильтрации
192
+ setSearch(function () { return function (options) { return searchFunction(tslib_1.__spreadArray([], tslib_1.__read(options), false), value); }; });
193
+ };
194
+ /** Событие выбора значения из раскрывающегося списка */
195
+ var handleChangeDropdown = function (e, option) {
196
+ callOnChange(e, option);
197
+ // Закрываем список после выбора
198
+ if (!disableCloseOnSelect)
199
+ handleClose();
200
+ };
201
+ var autocompleteInputProps = tslib_1.__assign({ open: open, size: size, limitTags: limitTags, disabled: disabled, multiple: multiple, required: required, fullWidth: fullWidth, clearText: clearText, closeText: closeText, openText: openText, inputProps: tslib_1.__assign(tslib_1.__assign({}, inputProps), { onBlur: handleBlur, onClick: handleClickOnInput }), bodyProps: tslib_1.__assign(tslib_1.__assign({}, bodyProps), { ref: inputBodyRef }), renderInput: renderInput, getOptionKey: getOptionKey, getOptionLabel: getOptionLabel, getOptionDisabled: getOptionDisabled, value: inputValue, disableShowChevron: disableShowChevron, disableClearButton: disableClearButton, onClear: handleClear, onOpen: handleToggle, onRemoveTag: callOnChange, onKeyDown: handleKeyDown, onChange: handleChangeInput, selectedOptions: valueState }, other);
202
+ var update = (0, react_1.useRef)();
203
+ var setUpdate = function (func) {
204
+ if (func) {
205
+ update.current = func;
206
+ }
207
+ };
208
+ (0, react_1.useEffect)(function () {
209
+ var _a;
210
+ (_a = update.current) === null || _a === void 0 ? void 0 : _a.call(update);
211
+ }, [height]);
212
+ return (react_1.default.createElement(react_1.default.Fragment, null,
213
+ react_1.default.createElement(components_1.AutocompleteInput, tslib_1.__assign({}, autocompleteInputProps, { ref: rootRef })),
214
+ react_1.default.createElement(components_1.AutocompleteDropdown, { open: open, size: size, loading: loading, setUpdate: setUpdate, value: valueState, multiple: multiple, onClose: handleClose, listProps: listProps, anchorRef: anchorRef, hasOptions: hasOptions, options: filteredOptions, loadingText: loadingText, renderOption: renderOption, getOptionKey: getOptionKey, noOptionsText: noOptionsText, onChange: handleChangeDropdown, getOptionLabel: getOptionLabel, getOptionDisabled: getOptionDisabled, disableShowEmptyOptionsList: disableShowEmptyOptionsList, popoverProps: tslib_1.__assign(tslib_1.__assign({}, popoverProps), { onExited: handleExited }) })));
215
+ }
216
+ exports.Autocomplete = (0, react_1.forwardRef)(AutocompleteRender);
@@ -0,0 +1,2 @@
1
+ import type { AutocompleteDropdownComponent } from './index';
2
+ export declare const AutocompleteDropdown: AutocompleteDropdownComponent;