@ozen-ui/kit 0.57.0 → 0.58.0

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 +4 -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 +4 -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,133 @@
1
+ import type { ChangeEvent, HTMLAttributes, ReactElement, ReactNode, Ref, SyntheticEvent } from 'react';
2
+ import type { TagProps, TagRef } from '../../components/TagNext';
3
+ import type { FormElementSizeVariant } from '../../types/FormElementSizeVariant';
4
+ import type { InputProps, InputRef } from '../Input';
5
+ import type { AutocompleteDropdownProps } from './components';
6
+ export type AutocompleteRenderOptionProps<OPTION> = {
7
+ option: OPTION;
8
+ state: {
9
+ key?: string | number;
10
+ selected?: boolean;
11
+ disabled?: boolean;
12
+ focused?: boolean;
13
+ };
14
+ props: HTMLAttributes<HTMLElement> & {
15
+ key?: string | number;
16
+ };
17
+ };
18
+ export type AutocompletePropValue<OPTION, MULTIPLE extends boolean> = (MULTIPLE extends true ? OPTION[] : OPTION) | null | undefined;
19
+ export type AutocompletePropGetOptionLabel<OPTION> = (option: OPTION) => string;
20
+ export type AutocompletePropGetOptionKey<OPTION> = (option: OPTION) => string | number;
21
+ export type AutocompletePropRenderValue<OPTION> = (value: OPTION) => ReactNode | null;
22
+ export type AutocompletePropGetOptionDisabled<OPTION> = (option: OPTION) => boolean | undefined;
23
+ export type AutocompletePropRenderOption<OPTION> = (props: AutocompleteRenderOptionProps<OPTION>) => ReactElement | null;
24
+ export type AutocompleteDefaultOption = {
25
+ id: string | number;
26
+ label: string;
27
+ disabled?: boolean;
28
+ };
29
+ export type AutocompletePropSearchFunction<OPTION> = (options: OPTION[], searchValue: string) => OPTION[];
30
+ export type AutocompletePropRenderInput = (props: InputProps, ref?: Ref<InputRef>) => ReactNode;
31
+ export type AutocompletePropRenderTag = (props: TagProps, ref?: Ref<TagRef>) => ReactNode;
32
+ export type AutocompleteRenderMoreTagProps<OPTION> = {
33
+ props: TagProps;
34
+ omittedValues?: AutocompletePropValue<OPTION, true>;
35
+ };
36
+ export type AutocompletePropRenderMoreTag<OPTION> = (props: AutocompleteRenderMoreTagProps<OPTION>, ref?: Ref<TagRef>) => ReactNode;
37
+ type AutocompleteOpenControlledProps = {
38
+ /** Текущее состояние списка. Если `true`, список отображается. */
39
+ open?: boolean;
40
+ /** Состояние открытие по умолчанию (неконтролируемый компонент) */
41
+ defaultOpen?: never;
42
+ };
43
+ type AutocompleteOpenUncontrolledProps = {
44
+ /** Текущее состояние списка. Если `true`, список отображается. */
45
+ open?: never;
46
+ /** Состояние открытие по умолчанию (неконтролируемый компонент) */
47
+ defaultOpen?: boolean;
48
+ };
49
+ type AutocompleteInputProps = Pick<InputProps, 'hint' | 'style' | 'error' | 'label' | 'disabled' | 'required' | 'autoFocus' | 'fullWidth' | 'className' | 'hintProps' | 'bodyProps' | 'onKeyDown' | 'inputProps' | 'renderLeft' | 'renderRight' | 'placeholder' | 'disableStroke'>;
50
+ export type AutocompleteOnChange<OPTION, MULTIPLE extends boolean> = (e: SyntheticEvent | KeyboardEvent, value: (MULTIPLE extends true ? OPTION[] : OPTION) | null) => void;
51
+ export type AutocompleteOnInputChange = (e: ChangeEvent<HTMLInputElement> | null, value: string) => void;
52
+ export type AutocompleteRef = InputRef;
53
+ export type AutocompletePropSize = FormElementSizeVariant;
54
+ export type AutocompleteProps<OPTION = AutocompleteDefaultOption, MULTIPLE extends boolean = false> = {
55
+ /** Если {true} из списка можно выбрать несколько вариантов */
56
+ multiple?: MULTIPLE;
57
+ /** Задает максимальное количество отображаемых тегов в компоненте с множественным выбором */
58
+ limitTags?: number | 'responsive';
59
+ /** Функция для кастомизации тега выбранного значения в компоненте с множественным выбором */
60
+ renderTag?: AutocompletePropRenderTag;
61
+ /** Функция для кастомизации тега «more», который отображается в случае скрытия элементов в компоненте с множественным выбором */
62
+ renderMoreTag?: AutocompletePropRenderMoreTag<OPTION>;
63
+ /** Список вариантов выбора (опции) */
64
+ options: OPTION[];
65
+ /** Размер */
66
+ size?: AutocompletePropSize;
67
+ /** Выбранное значение опции */
68
+ value?: AutocompletePropValue<OPTION, MULTIPLE>;
69
+ /** Выбранное значение опции по умолчанию */
70
+ defaultValue?: AutocompletePropValue<OPTION, MULTIPLE>;
71
+ /** Функция обратного вызова, которая будет вызвана при выборе значения */
72
+ onChange?: AutocompleteOnChange<OPTION, MULTIPLE>;
73
+ /** Введённое значение в текстовом поле */
74
+ inputValue?: string;
75
+ /** Функция обратного вызова, которая будет вызвана при вводе значения с клавиатуры */
76
+ onInputChange?: AutocompleteOnInputChange;
77
+ /** Функция для кастомизации текстового поля */
78
+ renderInput?: AutocompletePropRenderInput;
79
+ /** Функция для кастомизации отображения опции */
80
+ renderOption?: AutocompletePropRenderOption<OPTION>;
81
+ /** Функция для определения названия элемента */
82
+ getOptionLabel?: AutocompletePropGetOptionLabel<OPTION>;
83
+ /** Функция для определения уникального ключа элемента */
84
+ getOptionKey?: AutocompletePropGetOptionKey<OPTION>;
85
+ /** Функция для определения заблокированного элемента */
86
+ getOptionDisabled?: AutocompletePropGetOptionDisabled<OPTION>;
87
+ /** Если {true} не закрывает выпадающий список при выборе опции */
88
+ disableCloseOnSelect?: boolean;
89
+ /** Если {true} позволяет вводить кастомное значение в текстовом поле */
90
+ allowCustomValue?: boolean;
91
+ /** Если {true} отображает статус загрузки (при условии отсутствующих опций) */
92
+ loading?: boolean;
93
+ /** Текст компонента при отсутствующих опций */
94
+ noOptionsText?: ReactNode;
95
+ /** Текст для кнопки очистки поля */
96
+ clearText?: string;
97
+ /** Текст для кнопки открытия выпадающего списка */
98
+ openText?: string;
99
+ /** Текст для кнопки закрытия выпадающего списка */
100
+ closeText?: string;
101
+ /** Текст компонента в состоянии загрузки */
102
+ loadingText?: ReactNode;
103
+ /** Функция обратного вызова, которая будет вызвана когда компонент запрашивает закрытие */
104
+ onClose?(): void;
105
+ /** Функция обратного вызова, которая будет вызвана когда компонент запрашивает открытие */
106
+ onOpen?(): void;
107
+ /** Если {true}, то не отображает кнопку закрытия */
108
+ disableClearButton?: boolean;
109
+ /** Функция поиска */
110
+ searchFunction?: AutocompletePropSearchFunction<OPTION>;
111
+ /** Если {true} не показывает список с отсутствующими опциями */
112
+ disableShowEmptyOptionsList?: boolean;
113
+ /** Если {true} скрывает кнопку раскрытия/скрытия списка */
114
+ disableShowChevron?: boolean;
115
+ /** Свойства компонента Popover */
116
+ popoverProps?: AutocompleteDropdownProps['popoverProps'];
117
+ /** Свойства компонента List */
118
+ listProps?: AutocompleteDropdownProps['listProps'];
119
+ } & AutocompleteInputProps & (AutocompleteOpenControlledProps | AutocompleteOpenUncontrolledProps) & (OPTION extends {
120
+ label: AutocompleteDefaultOption['label'];
121
+ } ? Record<string, unknown> : {
122
+ getOptionLabel?: AutocompletePropGetOptionLabel<OPTION>;
123
+ }) & (OPTION extends {
124
+ id: AutocompleteDefaultOption['id'];
125
+ } ? Record<string, unknown> : {
126
+ getOptionKey?: AutocompletePropGetOptionKey<OPTION>;
127
+ }) & (OPTION extends {
128
+ disabled: AutocompleteDefaultOption['disabled'];
129
+ } ? Record<string, unknown> : {
130
+ getOptionDisabled?: AutocompletePropGetOptionDisabled<OPTION>;
131
+ });
132
+ export type AutocompleteComponent = <OPTION = AutocompleteDefaultOption, MULTIPLE extends boolean = false>(props: AutocompleteProps<OPTION, MULTIPLE>) => ReactElement | null;
133
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -15,11 +15,12 @@ import { scrollContainerToElement } from '../../utils/scrollContainerToElement';
15
15
  import { List } from '../List';
16
16
  import { Popover } from '../Popover';
17
17
  import { DATA_LIST_DEFAULT_SIZE, DATA_LIST_DEFAULT_OPEN, DATA_LIST_DEFAULT_TAG, } from './constants';
18
- import { lastSelectedValue, isMultipleParams, isNotMultipleParams, useDataListNavigation, } from './helpers';
18
+ import { isMultipleParams, isNotMultipleParams } from './helpers';
19
19
  import { DataListOption } from './index';
20
+ import { lastSelectedValue, useDataListNavigation } from './utils';
20
21
  export var cnDataList = cn('DataList');
21
22
  var DataListRender = function (inProps, ref) {
22
- var _a = useThemeProps({ props: inProps, name: 'DataList' }), _b = _a.open, open = _b === void 0 ? DATA_LIST_DEFAULT_OPEN : _b, _c = _a.size, size = _c === void 0 ? DATA_LIST_DEFAULT_SIZE : _c, _d = _a.as, as = _d === void 0 ? DATA_LIST_DEFAULT_TAG : _d, name = _a.name, children = _a.children, anchorRef = _a.anchorRef, selectedProp = _a.selected, defaultSelected = _a.defaultSelected, onClose = _a.onClose, listProps = _a.listProps, className = _a.className, other = __rest(_a, ["open", "size", "as", "name", "children", "anchorRef", "selected", "defaultSelected", "onClose", "listProps", "className"]);
23
+ var _a = useThemeProps({ props: inProps, name: 'DataList' }), _b = _a.as, as = _b === void 0 ? DATA_LIST_DEFAULT_TAG : _b, _c = _a.open, open = _c === void 0 ? DATA_LIST_DEFAULT_OPEN : _c, _d = _a.size, size = _d === void 0 ? DATA_LIST_DEFAULT_SIZE : _d, name = _a.name, onClose = _a.onClose, children = _a.children, listProps = _a.listProps, anchorRef = _a.anchorRef, className = _a.className, defaultSelected = _a.defaultSelected, onSelectProp = _a.onSelect, selectedProp = _a.selected, other = __rest(_a, ["as", "open", "size", "name", "onClose", "children", "listProps", "anchorRef", "className", "defaultSelected", "onSelect", "selected"]);
23
24
  var dataListRef = useRef(null);
24
25
  var listRef = useRef(null);
25
26
  var radius = getPaperSizeToFormElement(size);
@@ -48,24 +49,21 @@ var DataListRender = function (inProps, ref) {
48
49
  });
49
50
  }, [children]);
50
51
  var handleSelect = function (event, value) {
51
- var params = {
52
- multiple: inProps.multiple,
53
- onSelect: inProps.onSelect,
54
- selected: selectedState,
55
- setSelected: setSelected,
52
+ var onSelect = function (e, payload) {
53
+ setSelected(payload.value);
54
+ onSelectProp === null || onSelectProp === void 0 ? void 0 : onSelectProp(e, payload);
56
55
  };
56
+ var params = __assign(__assign({}, inProps), { onSelect: onSelect, selected: selectedState });
57
+ if (isNotMultipleParams(params)) {
58
+ var onSelect_1 = params.onSelect;
59
+ onSelect_1 === null || onSelect_1 === void 0 ? void 0 : onSelect_1(event, { name: name, value: value });
60
+ }
57
61
  if (isMultipleParams(params)) {
58
- var selected = params.selected, onSelect = params.onSelect, setSelected_1 = params.setSelected;
62
+ var selected = params.selected, onSelect_2 = params.onSelect;
59
63
  var res = (selected === null || selected === void 0 ? void 0 : selected.includes(value || ''))
60
64
  ? selected.filter(function (item) { return item !== value; })
61
65
  : __spreadArray(__spreadArray([], __read((selected || [])), false), [value], false);
62
- onSelect === null || onSelect === void 0 ? void 0 : onSelect(event, { name: name, value: res });
63
- setSelected_1(res);
64
- }
65
- if (isNotMultipleParams(params)) {
66
- var onSelect = params.onSelect, setSelected_2 = params.setSelected;
67
- onSelect === null || onSelect === void 0 ? void 0 : onSelect(event, { name: name, value: value });
68
- setSelected_2(value);
66
+ onSelect_2 === null || onSelect_2 === void 0 ? void 0 : onSelect_2(event, { name: name, value: res });
69
67
  }
70
68
  };
71
69
  var handleOnMouseDownList = function (e) {
@@ -75,8 +73,8 @@ var DataListRender = function (inProps, ref) {
75
73
  };
76
74
  // Навигация по списку
77
75
  var _f = useDataListNavigation({
78
- active: open,
79
76
  items: items,
77
+ active: open,
80
78
  selected: lastSelectedValue(selectedState),
81
79
  onSelect: function (event, item) {
82
80
  handleSelect(event, item !== null && item !== void 0 ? item : '');
@@ -108,9 +106,7 @@ var DataListRender = function (inProps, ref) {
108
106
  useEventListener({
109
107
  eventName: 'keydown',
110
108
  element: anchorRef,
111
- handler: function (event) {
112
- onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);
113
- },
109
+ handler: function (event) { return onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event); },
114
110
  });
115
111
  // Закрывает список по нажатию на клавишу {Tab}
116
112
  useEventListener({
@@ -118,9 +114,8 @@ var DataListRender = function (inProps, ref) {
118
114
  eventName: 'keydown',
119
115
  element: anchorRef,
120
116
  handler: function (event) {
121
- if (isKey(event, 'Tab')) {
117
+ if (isKey(event, 'Tab'))
122
118
  onClose === null || onClose === void 0 ? void 0 : onClose();
123
- }
124
119
  },
125
120
  });
126
121
  // Представление раскрывающегося списка
@@ -145,9 +140,7 @@ var DataListRender = function (inProps, ref) {
145
140
  return cloneElement(elementChild, props);
146
141
  });
147
142
  }, [resolvedChildren, selectedState, focused, onClick]);
148
- return (React.createElement(Popover, __assign({ as: as, open: open, placement: "bottom-start", strategy: "absolute", disableReturnFocus: true, disableEnforceFocus: true, offset: [0, 4], onClose: onClose, anchorRef: anchorRef, radius: radius, className: cnDataList('', [className]), transitionProps: {
149
- classNames: 'DataList-animation',
150
- } }, other, { ref: useMultiRef([ref, dataListRef]) }),
143
+ return (React.createElement(Popover, __assign({ open: open, offset: [0, 4], radius: radius, onClose: onClose, strategy: "absolute", anchorRef: anchorRef, as: as, placement: "bottom-start", transitionProps: { classNames: 'DataList-animation' }, className: cnDataList('', [className]), disableReturnFocus: true, disableEnforceFocus: true }, other, { ref: useMultiRef([ref, dataListRef]) }),
151
144
  React.createElement(List, __assign({ as: "ul", size: size }, listProps, { onMouseDown: handleOnMouseDownList, ref: useMultiRef([listRef, listProps === null || listProps === void 0 ? void 0 : listProps.ref]) }), renderChildren)));
152
145
  };
153
146
  export var DataList = polymorphicComponentWithRef(DataListRender);
@@ -0,0 +1,3 @@
1
+ import type { DataListBaseProps } from './index';
2
+ export declare const isMultipleParams: (params: DataListBaseProps<boolean>) => params is DataListBaseProps<true>;
3
+ export declare const isNotMultipleParams: (params: DataListBaseProps<boolean>) => params is DataListBaseProps<false>;
@@ -0,0 +1,2 @@
1
+ export var isMultipleParams = function (params) { return !!params.multiple; };
2
+ export var isNotMultipleParams = function (params) { return !params.multiple; };
@@ -1,4 +1,3 @@
1
1
  export * from './lastSelectedValue';
2
- export * from './types';
3
2
  export * from './useDataListNavigation';
4
3
  export * from './useScrollContainerToElement';
@@ -1,4 +1,3 @@
1
1
  export * from './lastSelectedValue';
2
- export * from './types';
3
2
  export * from './useDataListNavigation';
4
3
  export * from './useScrollContainerToElement';
@@ -19,7 +19,7 @@ export declare const DatePicker: React.ForwardRefExoticComponent<(Omit<{
19
19
  defaultOpen?: undefined;
20
20
  } & Omit<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
21
21
  ref?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined;
22
- }, "value" | "defaultValue" | "error" | "label" | "onChange" | "onError" | "onKeyDown" | "disabled" | "open" | "onClose" | "placeholder" | "required" | "size" | "exclude" | "fullWidth" | "disableStroke" | "hint" | "renderLeft" | "renderRight" | "inputProps" | "hintProps" | "clearText" | "disableClearButton" | "onInputChange" | "onOpen" | "defaultOpen" | "offsetDate" | "minDate" | "maxDate" | "calendarProps" | "popoverProps">, "ref"> | Omit<{
22
+ }, "value" | "defaultValue" | "error" | "label" | "onChange" | "onError" | "onKeyDown" | "disabled" | "open" | "onClose" | "placeholder" | "required" | "size" | "exclude" | "fullWidth" | "disableStroke" | "hint" | "renderLeft" | "renderRight" | "inputProps" | "hintProps" | "clearText" | "disableClearButton" | "onInputChange" | "onOpen" | "defaultOpen" | "popoverProps" | "offsetDate" | "minDate" | "maxDate" | "calendarProps">, "ref"> | Omit<{
23
23
  value?: Date | null | undefined;
24
24
  defaultValue?: Date | null | undefined;
25
25
  onChange?: DatePickerOnChange | undefined;
@@ -36,4 +36,4 @@ export declare const DatePicker: React.ForwardRefExoticComponent<(Omit<{
36
36
  defaultOpen?: boolean | undefined;
37
37
  } & Omit<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
38
38
  ref?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined;
39
- }, "value" | "defaultValue" | "error" | "label" | "onChange" | "onError" | "onKeyDown" | "disabled" | "open" | "onClose" | "placeholder" | "required" | "size" | "exclude" | "fullWidth" | "disableStroke" | "hint" | "renderLeft" | "renderRight" | "inputProps" | "hintProps" | "clearText" | "disableClearButton" | "onInputChange" | "onOpen" | "defaultOpen" | "offsetDate" | "minDate" | "maxDate" | "calendarProps" | "popoverProps">, "ref">) & React.RefAttributes<HTMLDivElement>>;
39
+ }, "value" | "defaultValue" | "error" | "label" | "onChange" | "onError" | "onKeyDown" | "disabled" | "open" | "onClose" | "placeholder" | "required" | "size" | "exclude" | "fullWidth" | "disableStroke" | "hint" | "renderLeft" | "renderRight" | "inputProps" | "hintProps" | "clearText" | "disableClearButton" | "onInputChange" | "onOpen" | "defaultOpen" | "popoverProps" | "offsetDate" | "minDate" | "maxDate" | "calendarProps">, "ref">) & React.RefAttributes<HTMLDivElement>>;
@@ -150,7 +150,7 @@ export var DatePicker = forwardRef(function (inProps, ref) {
150
150
  e.preventDefault();
151
151
  };
152
152
  return (React.createElement(React.Fragment, null,
153
- React.createElement(DateInput, __assign({ size: size, hint: hint, error: error, label: label, required: required, disabled: disabled, fullWidth: fullWidth, placeholder: placeholder }, other, { renderRight: React.createElement(DatePickerRenderRight, { size: size, open: open, onClear: handleClear, clearText: clearText, hasValue: !!inputValue, renderRight: renderRight, disableClearButton: disableClearButton }), value: inputValue, inputProps: __assign(__assign({ autoComplete: 'off' }, inputProps), { onBlur: handleBlur, onClick: handleClickOnInput, onInput: handleChangeInput }), bodyProps: { ref: anchorRef, 'aria-expanded': open }, className: cnDatePicker('', [className]), onKeyDown: handleKeyDown, ref: ref })),
153
+ React.createElement(DateInput, __assign({ size: size, hint: hint, error: error, label: label, required: required, disabled: disabled, fullWidth: fullWidth, placeholder: placeholder }, other, { renderRight: React.createElement(DatePickerRenderRight, { size: size, open: open, onClear: handleClear, clearText: clearText, hasValue: !!value, renderRight: renderRight, disableClearButton: disableClearButton }), value: inputValue, inputProps: __assign(__assign({ autoComplete: 'off' }, inputProps), { onBlur: handleBlur, onClick: handleClickOnInput, onInput: handleChangeInput }), bodyProps: { ref: anchorRef, 'aria-expanded': open }, className: cnDatePicker({ size: size }, [className]), onKeyDown: handleKeyDown, ref: ref })),
154
154
  React.createElement(Popover, __assign({ as: Paper, open: open, offset: [0, 4], radius: radius, anchorRef: anchorRef, onClose: handleClose, placement: "bottom-start", disableReturnFocus: true, disableEnforceFocus: true }, popoverProps),
155
155
  React.createElement(Calendar, __assign({ minDate: minDate, maxDate: maxDate, exclude: exclude, size: calendarSize, offsetDate: offsetDate, onMouseDown: handleMouseDownCalendar }, calendarProps, { value: value || null, onChange: handleChangeCalendar })))));
156
156
  });
@@ -95,10 +95,14 @@
95
95
  }
96
96
  .FieldControl_hasLabel .FieldInput::placeholder {
97
97
  opacity: 0;
98
+ color: var(--textfield-placeholder-color);
98
99
  }
99
100
  .FieldControl_hasLabel .FieldInput:focus::placeholder {
100
101
  opacity: 1;
101
102
  }
103
+ .FieldControl .FieldLabel_shrink + .FieldInput::placeholder {
104
+ opacity: 1;
105
+ }
102
106
  .FieldControl_fullWidth {
103
107
  inline-size: 100%;
104
108
  }
@@ -1,11 +1,3 @@
1
- import type { ComponentRef, ElementType } from 'react';
2
- import type { PolymorphicComponentPropsWithoutRef } from '../../utils/polymorphicComponentWithRef';
3
- export declare const FIELD_INPUT_DEFAULT_TAG = "input";
4
- export type FieldInputRef = ComponentRef<typeof FIELD_INPUT_DEFAULT_TAG>;
5
- type FieldInputBaseProps = {
6
- 'data-testid'?: string;
7
- };
8
- export type FieldInputProps<As extends ElementType = typeof FIELD_INPUT_DEFAULT_TAG> = PolymorphicComponentPropsWithoutRef<FieldInputBaseProps, As>;
1
+ import type { FieldInputBaseProps } from './types';
9
2
  export declare const cnFieldInput: import("@bem-react/classname").ClassNameFormatter;
10
3
  export declare const FieldInput: import("../../utils/polymorphicComponentWithRef").PolymorphicComponentWithRef<FieldInputBaseProps, "div">;
11
- export {};
@@ -5,10 +5,10 @@ import { useIsomorphicEffect } from '../../hooks/useIsomorphicEffect';
5
5
  import { cn } from '../../utils/classname';
6
6
  import { polymorphicComponentWithRef } from '../../utils/polymorphicComponentWithRef';
7
7
  import { useFieldControl } from '../FieldControl';
8
- export var FIELD_INPUT_DEFAULT_TAG = 'input';
8
+ import { FIELD_INPUT_DEFAULT_TAG } from './constants';
9
9
  export var cnFieldInput = cn('FieldInput');
10
10
  export var FieldInput = polymorphicComponentWithRef(function (_a, ref) {
11
- var _b = _a.as, Tag = _b === void 0 ? FIELD_INPUT_DEFAULT_TAG : _b, className = _a.className, requiredProp = _a.required, disabledProp = _a.disabled, valueProp = _a.value, onChange = _a.onChange, defaultValue = _a.defaultValue, children = _a.children, onFocus = _a.onFocus, onBlur = _a.onBlur, other = __rest(_a, ["as", "className", "required", "disabled", "value", "onChange", "defaultValue", "children", "onFocus", "onBlur"]);
11
+ var _b = _a.as, Tag = _b === void 0 ? FIELD_INPUT_DEFAULT_TAG : _b, className = _a.className, requiredProp = _a.required, disabledProp = _a.disabled, valueProp = _a.value, renderComponentProp = _a.renderComponent, onChange = _a.onChange, defaultValue = _a.defaultValue, children = _a.children, onFocus = _a.onFocus, onBlur = _a.onBlur, other = __rest(_a, ["as", "className", "required", "disabled", "value", "renderComponent", "onChange", "defaultValue", "children", "onFocus", "onBlur"]);
12
12
  var _c = __read(useState(), 2), focused = _c[0], setFocused = _c[1];
13
13
  var context = useFieldControl();
14
14
  var _d = __read(context, 2), fieldControl = _d[0], setFieldControl = _d[1];
@@ -47,6 +47,11 @@ export var FieldInput = polymorphicComponentWithRef(function (_a, ref) {
47
47
  setFocused(false);
48
48
  onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);
49
49
  }, [onBlur]);
50
- return (React.createElement(Tag, __assign({ className: cnFieldInput({}, [className]), required: required, disabled: disabled, onFocus: handleFocus, onBlur: handleBlur, onChange: handleChange }, (isControlled ? { value: valueState } : { defaultValue: defaultValue }), other, { ref: ref }), children));
50
+ var renderComponentDefault = function (props, ref) { return (React.createElement(Tag, __assign({}, props, { ref: ref }), children)); };
51
+ var renderComponent = renderComponentProp || renderComponentDefault;
52
+ var render = function () {
53
+ return renderComponent(__assign(__assign({ className: cnFieldInput({}, [className]), required: required, disabled: disabled, onBlur: handleBlur, onFocus: handleFocus, onChange: handleChange }, (isControlled ? { value: valueState } : { defaultValue: defaultValue })), other), ref);
54
+ };
55
+ return render();
51
56
  });
52
57
  FieldInput.displayName = 'FieldInput';
@@ -0,0 +1 @@
1
+ export declare const FIELD_INPUT_DEFAULT_TAG = "input";
@@ -0,0 +1 @@
1
+ export var FIELD_INPUT_DEFAULT_TAG = 'input';
@@ -1 +1,2 @@
1
1
  export * from './FieldInput';
2
+ export * from './types';
@@ -1 +1,2 @@
1
1
  export * from './FieldInput';
2
+ export * from './types';
@@ -0,0 +1,11 @@
1
+ import type { ElementType, HTMLAttributes, ReactElement, Ref } from 'react';
2
+ import type { PolymorphicComponentPropsWithRef } from '../../utils/polymorphicComponentWithRef';
3
+ import type { FIELD_INPUT_DEFAULT_TAG } from './constants';
4
+ export type FieldInputPropRenderComponent<T extends HTMLElement = any> = (props: HTMLAttributes<T> & {
5
+ 'data-testid'?: string;
6
+ }, ref?: Ref<T>) => ReactElement | null;
7
+ export type FieldInputBaseProps = {
8
+ 'data-testid'?: string;
9
+ renderComponent?: FieldInputPropRenderComponent;
10
+ };
11
+ export type FieldInputProps<As extends ElementType = typeof FIELD_INPUT_DEFAULT_TAG> = PolymorphicComponentPropsWithRef<FieldInputBaseProps, As>;
@@ -0,0 +1 @@
1
+ export {};
@@ -26,6 +26,7 @@
26
26
  transform: translateY(var(--field-label-translate_y)) scale(1);
27
27
  }
28
28
 
29
+ .FieldLabel_shrink.FieldLabel_size_2xs,
29
30
  .FieldLabel_filled.FieldLabel_size_2xs,
30
31
  .FieldLabel_focused.FieldLabel_size_2xs {
31
32
  opacity: 0;
@@ -4,6 +4,8 @@
4
4
  /* l >= 1280px */
5
5
  .Grid {
6
6
  display: grid;
7
+ min-block-size: 0;
8
+ min-inline-size: 0;
7
9
  }
8
10
  .Grid_cols_1 {
9
11
  grid-template-columns: repeat(1, 1fr);
@@ -801,6 +803,8 @@
801
803
  --grid-col-end: auto;
802
804
  --grid-row-start: auto;
803
805
  --grid-row-end: auto;
806
+ min-inline-size: 0;
807
+ overflow: hidden;
804
808
  grid-column: var(--grid-col-start) / var(--grid-col-end);
805
809
  grid-row: var(--grid-row-start) / var(--grid-row-end);
806
810
  }
@@ -14,23 +14,20 @@
14
14
  .Input-FieldContainer {
15
15
  inline-size: 100%;
16
16
  position: relative;
17
+ overflow: hidden;
17
18
  }
18
19
  .Input-Field {
19
20
  border: none;
20
21
  outline: none;
21
- display: flex;
22
- inline-size: 100%;
23
- padding: var(--textfield-input-padding);
22
+ font: inherit;
23
+ display: block;
24
24
  background: none;
25
- color: var(--textfield-color);
25
+ inline-size: 100%;
26
26
  box-sizing: border-box;
27
+ color: var(--textfield-color);
28
+ padding: var(--textfield-input-padding);
27
29
  block-size: var(--textfield-input-height);
28
- font: inherit;
29
30
  }
30
- .Input-Field::placeholder {
31
- opacity: 1;
32
- color: var(--textfield-placeholder-color);
33
- }
34
31
  .Input-Field:-webkit-autofill,
35
32
  .Input-Field:-webkit-autofill:hover,
36
33
  .Input-Field:-webkit-autofill:focus {
@@ -4,6 +4,7 @@ import type { FormElementSizeVariant } from '../../types/FormElementSizeVariant'
4
4
  import type { FIELD_CONTROL_DEFAULT_TAG } from '../FieldControl';
5
5
  import type { FieldHintProps } from '../FieldHint';
6
6
  import type { FieldIconProps } from '../FieldIcon';
7
+ import type { FieldInputProps } from '../FieldInput';
7
8
  import type { FieldLabelProps } from '../FieldLabel';
8
9
  export declare const inputTypeVariant: readonly ["number", "date", "datetime-local", "time", "text", "tel", "password", "email"];
9
10
  export type InputTypeVariant = (typeof inputTypeVariant)[number];
@@ -65,9 +66,7 @@ export type InputProps = ExtendableComponentPropsWithRef<{
65
66
  /** Обработчик события на изменение значения поля */
66
67
  onChange?: InputOnChange;
67
68
  /** Свойства элемента input */
68
- inputProps?: InputElement & {
69
- 'data-testid'?: string;
70
- };
69
+ inputProps?: FieldInputProps;
71
70
  /** Свойства FieldLabel */
72
71
  labelProps?: FieldLabelProps;
73
72
  /** Cвойства Body */
@@ -68,11 +68,6 @@
68
68
  block-size: var(--textfield-input-height);
69
69
  }
70
70
 
71
- .InputNumber-Field::placeholder {
72
- opacity: 1;
73
- color: var(--textfield-placeholder-color);
74
- }
75
-
76
71
  .InputNumber-Field:-webkit-autofill,
77
72
  .InputNumber-Field:-webkit-autofill:hover,
78
73
  .InputNumber-Field:-webkit-autofill:focus {
@@ -7,6 +7,7 @@
7
7
  text-decoration: none;
8
8
  white-space: nowrap;
9
9
  max-inline-size: 100%;
10
+ box-sizing: border-box;
10
11
  gap: var(--spacing-3xs);
11
12
  padding: var(--tag-padding);
12
13
  border-radius: var(--tag-border-radius);
@@ -7,7 +7,9 @@
7
7
  text-decoration: none;
8
8
  white-space: nowrap;
9
9
  max-inline-size: 100%;
10
+ box-sizing: border-box;
10
11
  gap: var(--tag-gap);
12
+ block-size: var(--tag-height);
11
13
  padding: var(--tag-padding);
12
14
  border-radius: var(--tag-border-radius);
13
15
  transition:
@@ -24,6 +26,7 @@
24
26
  text-transform: var(--typography-text-3xs-text_transform, none);
25
27
 
26
28
  --tag-padding: 0 4px;
29
+ --tag-height: 16px;
27
30
  --tag-gap: var(--spacing-3xs);
28
31
  --tag-border-radius: var(--border-radius-s);
29
32
  }
@@ -32,7 +35,8 @@
32
35
  letter-spacing: var(--typography-text-xs-letter_spacing, 0);
33
36
  text-transform: var(--typography-text-xs-text_transform, none);
34
37
 
35
- --tag-padding: 4px 8px;
38
+ --tag-padding: 0 8px;
39
+ --tag-height: 24px;
36
40
  --tag-gap: var(--spacing-3xs);
37
41
  --tag-border-radius: var(--border-radius-s);
38
42
  }
@@ -41,7 +45,8 @@
41
45
  letter-spacing: var(--typography-text-s-letter_spacing, 0);
42
46
  text-transform: var(--typography-text-s-text_transform, none);
43
47
 
44
- --tag-padding: 6px 12px;
48
+ --tag-padding: 0 12px;
49
+ --tag-height: 32px;
45
50
  --tag-gap: var(--spacing-3xs);
46
51
  --tag-border-radius: var(--border-radius-m);
47
52
  }
@@ -50,7 +55,8 @@
50
55
  letter-spacing: var(--typography-text-m-letter_spacing, 0);
51
56
  text-transform: var(--typography-text-m-text_transform, none);
52
57
 
53
- --tag-padding: 6px 12px;
58
+ --tag-padding: 0 12px;
59
+ --tag-height: 36px;
54
60
  --tag-gap: var(--spacing-2xs);
55
61
  --tag-border-radius: var(--border-radius-m);
56
62
  }
@@ -59,7 +65,8 @@
59
65
  letter-spacing: var(--typography-text-l-letter_spacing, 0);
60
66
  text-transform: var(--typography-text-l-text_transform, none);
61
67
 
62
- --tag-padding: 6px 12px;
68
+ --tag-padding: 0 12px;
69
+ --tag-height: 40px;
63
70
  --tag-gap: var(--spacing-2xs);
64
71
  --tag-border-radius: var(--border-radius-m);
65
72
  }
@@ -6,11 +6,11 @@ import { cn } from '../../utils/classname';
6
6
  import { getIconSizeToFormElement } from '../../utils/getIconSizeToFormElement';
7
7
  import { polymorphicComponentWithRef } from '../../utils/polymorphicComponentWithRef';
8
8
  import { renderContent } from '../../utils/renderContent';
9
- import { TAG_DEFAULT_AS, TAG_DEFAULT_COLOR, TAG_DEFAULT_SIZE, TAG_DEFAULT_VARIANT, } from './constants';
9
+ import { TAG_DEFAULT_COLOR, TAG_DEFAULT_SIZE, TAG_DEFAULT_TAG, TAG_DEFAULT_VARIANT, } from './constants';
10
10
  export var cnTag = cn('TagNext');
11
11
  export var Tag = polymorphicComponentWithRef(function (inProps, ref) {
12
12
  var props = useThemeProps({ props: inProps, name: 'TagNext' });
13
- var _a = props.color, color = _a === void 0 ? TAG_DEFAULT_COLOR : _a, _b = props.variant, variant = _b === void 0 ? TAG_DEFAULT_VARIANT : _b, _c = props.size, size = _c === void 0 ? TAG_DEFAULT_SIZE : _c, _d = props.as, Tag = _d === void 0 ? TAG_DEFAULT_AS : _d, interactive = props.interactive, iconLeft = props.iconLeft, iconRight = props.iconRight, label = props.label, className = props.className, other = __rest(props, ["color", "variant", "size", "as", "interactive", "iconLeft", "iconRight", "label", "className"]);
13
+ var _a = props.color, color = _a === void 0 ? TAG_DEFAULT_COLOR : _a, _b = props.variant, variant = _b === void 0 ? TAG_DEFAULT_VARIANT : _b, _c = props.size, size = _c === void 0 ? TAG_DEFAULT_SIZE : _c, _d = props.as, Tag = _d === void 0 ? TAG_DEFAULT_TAG : _d, interactive = props.interactive, iconLeft = props.iconLeft, iconRight = props.iconRight, label = props.label, className = props.className, other = __rest(props, ["color", "variant", "size", "as", "interactive", "iconLeft", "iconRight", "label", "className"]);
14
14
  var renderIcon = function (content) {
15
15
  return renderContent({
16
16
  content: content,
@@ -1,4 +1,4 @@
1
- export declare const TAG_DEFAULT_AS = "div";
1
+ export declare const TAG_DEFAULT_TAG = "div";
2
2
  export declare const TAG_DEFAULT_VARIANT = "secondary";
3
3
  export declare const TAG_DEFAULT_COLOR = "action";
4
4
  export declare const TAG_DEFAULT_SIZE = "m";
@@ -1,4 +1,4 @@
1
- export var TAG_DEFAULT_AS = 'div';
1
+ export var TAG_DEFAULT_TAG = 'div';
2
2
  export var TAG_DEFAULT_VARIANT = 'secondary';
3
3
  export var TAG_DEFAULT_COLOR = 'action';
4
4
  export var TAG_DEFAULT_SIZE = 'm';
@@ -1,18 +1,20 @@
1
- import type { ElementType } from 'react';
1
+ import type { ComponentRef, ElementType } from 'react';
2
2
  import type { IconProps } from '@ozen-ui/icons';
3
3
  import type { FormElementSizeVariant } from '../../types/FormElementSizeVariant';
4
4
  import type { PolymorphicComponentPropsWithoutRef } from '../../utils/polymorphicComponentWithRef';
5
5
  import type { RenderContentType } from '../../utils/renderContent';
6
+ import type { TAG_DEFAULT_TAG } from './constants';
6
7
  export declare const tagVariant: readonly ["primary", "secondary"];
7
8
  export declare const tagColorVariant: readonly ["neutral", "action", "error", "warning", "success", "info"];
8
9
  export type TagVariant = (typeof tagVariant)[number];
9
10
  export type TagColor = (typeof tagColorVariant)[number];
10
11
  export type TagIcon = RenderContentType<IconProps>['content'];
12
+ export type TagSizeVariant = FormElementSizeVariant;
11
13
  export type TagBaseProps = {
12
14
  /** Текст лейбла внутри тега */
13
15
  label: string;
14
16
  /** Размер */
15
- size?: FormElementSizeVariant;
17
+ size?: TagSizeVariant;
16
18
  /** Вариант компонента */
17
19
  variant?: TagVariant;
18
20
  /** Цвет компонента */
@@ -24,4 +26,5 @@ export type TagBaseProps = {
24
26
  /** Иконка справа */
25
27
  iconRight?: TagIcon;
26
28
  };
27
- export type TagProps<As extends ElementType = 'div'> = PolymorphicComponentPropsWithoutRef<TagBaseProps, As>;
29
+ export type TagProps<As extends ElementType = typeof TAG_DEFAULT_TAG> = PolymorphicComponentPropsWithoutRef<TagBaseProps, As>;
30
+ export type TagRef = ComponentRef<typeof TAG_DEFAULT_TAG>;
@@ -76,11 +76,6 @@
76
76
  resize: none;
77
77
  }
78
78
 
79
- .Textarea-Field::placeholder {
80
- opacity: 1;
81
- color: var(--textfield-placeholder-color);
82
- }
83
-
84
79
  .Textarea-Counter {
85
80
  float: right;
86
81
  margin-inline-start: var(--spacing-s);
@@ -4,6 +4,7 @@ import type { PolymorphicComponentPropsWithoutRef } from '../../utils/polymorphi
4
4
  import type { AccordionProps, AccordionSummaryProps } from '../Accordion';
5
5
  import type { AlertProps } from '../Alert';
6
6
  import type { AutocompleteProps } from '../Autocomplete';
7
+ import type { AutocompleteProps as AutocompletePropsNext } from '../AutocompleteNext';
7
8
  import type { AvatarProps } from '../Avatar';
8
9
  import type { BackdropProps } from '../Backdrop';
9
10
  import type { BadgeProps } from '../Badge';
@@ -78,6 +79,7 @@ export type Theme = {
78
79
  AccordionSummary?: Partial<AccordionSummaryProps>;
79
80
  Alert?: Partial<AlertProps>;
80
81
  Autocomplete?: Partial<AutocompleteProps>;
82
+ AutocompleteNext?: Partial<AutocompletePropsNext>;
81
83
  Avatar?: Partial<AvatarProps>;
82
84
  Backdrop?: Partial<BackdropProps>;
83
85
  Badge?: Partial<BadgeProps>;
@@ -0,0 +1 @@
1
+ export * from './useElementSize';