inconel 0.1.6 → 0.1.7

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 (423) hide show
  1. package/README.md +44 -0
  2. package/dist/adapters/InconelProvider.js +21 -0
  3. package/dist/adapters/InconelProvider.js.map +1 -0
  4. package/dist/adapters/context.js +15 -0
  5. package/dist/adapters/context.js.map +1 -0
  6. package/dist/assets/icons/close-2.svg.js +5 -0
  7. package/dist/assets/icons/close-2.svg.js.map +1 -0
  8. package/dist/assets/icons/cog.svg.js +5 -0
  9. package/dist/assets/icons/cog.svg.js.map +1 -0
  10. package/dist/assets/icons/export.svg.js +5 -0
  11. package/dist/assets/icons/export.svg.js.map +1 -0
  12. package/dist/assets/icons/filter.svg.js +5 -0
  13. package/dist/assets/icons/filter.svg.js.map +1 -0
  14. package/dist/assets/icons/minus.svg.js +5 -0
  15. package/dist/assets/icons/minus.svg.js.map +1 -0
  16. package/dist/assets/icons/plus.svg.js +5 -0
  17. package/dist/assets/icons/plus.svg.js.map +1 -0
  18. package/dist/assets/icons/sort.svg.js +5 -0
  19. package/dist/assets/icons/sort.svg.js.map +1 -0
  20. package/dist/assets/icons/table.svg.js +5 -0
  21. package/dist/assets/icons/table.svg.js.map +1 -0
  22. package/dist/cjs/adapters/InconelProvider.cjs +2 -0
  23. package/dist/cjs/adapters/InconelProvider.cjs.map +1 -0
  24. package/dist/cjs/adapters/context.cjs +2 -0
  25. package/dist/cjs/adapters/context.cjs.map +1 -0
  26. package/dist/cjs/assets/icons/close-2.svg.cjs +2 -0
  27. package/dist/cjs/assets/icons/close-2.svg.cjs.map +1 -0
  28. package/dist/cjs/assets/icons/cog.svg.cjs +2 -0
  29. package/dist/cjs/assets/icons/cog.svg.cjs.map +1 -0
  30. package/dist/cjs/assets/icons/export.svg.cjs +2 -0
  31. package/dist/cjs/assets/icons/export.svg.cjs.map +1 -0
  32. package/dist/cjs/assets/icons/filter.svg.cjs +2 -0
  33. package/dist/cjs/assets/icons/filter.svg.cjs.map +1 -0
  34. package/dist/cjs/assets/icons/minus.svg.cjs +2 -0
  35. package/dist/cjs/assets/icons/minus.svg.cjs.map +1 -0
  36. package/dist/cjs/assets/icons/plus.svg.cjs +2 -0
  37. package/dist/cjs/assets/icons/plus.svg.cjs.map +1 -0
  38. package/dist/cjs/assets/icons/sort.svg.cjs +2 -0
  39. package/dist/cjs/assets/icons/sort.svg.cjs.map +1 -0
  40. package/dist/cjs/assets/icons/table.svg.cjs +2 -0
  41. package/dist/cjs/assets/icons/table.svg.cjs.map +1 -0
  42. package/dist/cjs/components/Button/Button.cjs +2 -0
  43. package/dist/cjs/components/Button/Button.cjs.map +1 -0
  44. package/dist/cjs/components/Button/constants.cjs +2 -0
  45. package/dist/cjs/components/Button/constants.cjs.map +1 -0
  46. package/dist/cjs/components/Button/utils.cjs +2 -0
  47. package/dist/cjs/components/Button/utils.cjs.map +1 -0
  48. package/dist/cjs/components/Checkbox/Checkbox.cjs +2 -0
  49. package/dist/cjs/components/Checkbox/Checkbox.cjs.map +1 -0
  50. package/dist/cjs/components/CheckboxGroup/CheckboxGroup.cjs +2 -0
  51. package/dist/cjs/components/CheckboxGroup/CheckboxGroup.cjs.map +1 -0
  52. package/dist/cjs/components/CheckboxGroup/utils.cjs +2 -0
  53. package/dist/cjs/components/CheckboxGroup/utils.cjs.map +1 -0
  54. package/dist/cjs/components/CurrencyInput/CurrencyInput.cjs +2 -0
  55. package/dist/cjs/components/CurrencyInput/CurrencyInput.cjs.map +1 -0
  56. package/dist/cjs/components/CustomizableSwitch/CustomizableSwitch.cjs +2 -0
  57. package/dist/cjs/components/CustomizableSwitch/CustomizableSwitch.cjs.map +1 -0
  58. package/dist/cjs/components/DataGrid/DataGrid.cjs +2 -0
  59. package/dist/cjs/components/DataGrid/DataGrid.cjs.map +1 -0
  60. package/dist/cjs/components/DataGrid/utils.cjs +2 -0
  61. package/dist/cjs/components/DataGrid/utils.cjs.map +1 -0
  62. package/dist/cjs/components/DatePicker/DatePicker.cjs +2 -0
  63. package/dist/cjs/components/DatePicker/DatePicker.cjs.map +1 -0
  64. package/dist/cjs/components/DatePicker/utils.cjs +2 -0
  65. package/dist/cjs/components/DatePicker/utils.cjs.map +1 -0
  66. package/dist/cjs/components/DndFileUpload/DndFileUpload.cjs +2 -0
  67. package/dist/cjs/components/DndFileUpload/DndFileUpload.cjs.map +1 -0
  68. package/dist/cjs/components/DotLoader/DotLoader.cjs +2 -0
  69. package/dist/cjs/components/DotLoader/DotLoader.cjs.map +1 -0
  70. package/dist/cjs/components/DotLoader/constants.cjs +2 -0
  71. package/dist/cjs/components/DotLoader/constants.cjs.map +1 -0
  72. package/dist/cjs/components/DragDropUpload/DragDropUpload.cjs +2 -0
  73. package/dist/cjs/components/DragDropUpload/DragDropUpload.cjs.map +1 -0
  74. package/dist/cjs/components/DragDropUpload/utils.cjs +2 -0
  75. package/dist/cjs/components/DragDropUpload/utils.cjs.map +1 -0
  76. package/dist/cjs/components/ExcelTable/ExcelTable.cjs +2 -0
  77. package/dist/cjs/components/ExcelTable/ExcelTable.cjs.map +1 -0
  78. package/dist/cjs/components/ExcelTable/legacy/constants.cjs +2 -0
  79. package/dist/cjs/components/ExcelTable/legacy/constants.cjs.map +1 -0
  80. package/dist/cjs/components/ExcelTable/legacy/index.cjs +2 -0
  81. package/dist/cjs/components/ExcelTable/legacy/index.cjs.map +1 -0
  82. package/dist/cjs/components/ExcelTable/legacy/subComponents/previewTooltip/index.cjs +2 -0
  83. package/dist/cjs/components/ExcelTable/legacy/subComponents/previewTooltip/index.cjs.map +1 -0
  84. package/dist/cjs/components/ExcelTable/legacy/subComponents/tableBody.cjs +2 -0
  85. package/dist/cjs/components/ExcelTable/legacy/subComponents/tableBody.cjs.map +1 -0
  86. package/dist/cjs/components/ExcelTable/legacy/subComponents/tableCell/index.cjs +2 -0
  87. package/dist/cjs/components/ExcelTable/legacy/subComponents/tableCell/index.cjs.map +1 -0
  88. package/dist/cjs/components/ExcelTable/legacy/subComponents/tableHeaderItem/index.cjs +2 -0
  89. package/dist/cjs/components/ExcelTable/legacy/subComponents/tableHeaderItem/index.cjs.map +1 -0
  90. package/dist/cjs/components/ExcelTable/legacy/utils.cjs +2 -0
  91. package/dist/cjs/components/ExcelTable/legacy/utils.cjs.map +1 -0
  92. package/dist/cjs/components/FieldFeedback/FieldFeedback.cjs +2 -0
  93. package/dist/cjs/components/FieldFeedback/FieldFeedback.cjs.map +1 -0
  94. package/dist/cjs/components/FileUpload/FileUpload.cjs +2 -0
  95. package/dist/cjs/components/FileUpload/FileUpload.cjs.map +1 -0
  96. package/dist/cjs/components/FileUploadText/FileUploadText.cjs +2 -0
  97. package/dist/cjs/components/FileUploadText/FileUploadText.cjs.map +1 -0
  98. package/dist/cjs/components/Filter/Filter.cjs +2 -0
  99. package/dist/cjs/components/Filter/Filter.cjs.map +1 -0
  100. package/dist/cjs/components/HTMLTable/HTMLTable.cjs +2 -0
  101. package/dist/cjs/components/HTMLTable/HTMLTable.cjs.map +1 -0
  102. package/dist/cjs/components/HTMLTable/legacy/index.cjs +2 -0
  103. package/dist/cjs/components/HTMLTable/legacy/index.cjs.map +1 -0
  104. package/dist/cjs/components/HtmlEditor/HtmlEditor.cjs +2 -0
  105. package/dist/cjs/components/HtmlEditor/HtmlEditor.cjs.map +1 -0
  106. package/dist/cjs/components/Input/Input.cjs +2 -0
  107. package/dist/cjs/components/Input/Input.cjs.map +1 -0
  108. package/dist/cjs/components/Input/constants.cjs +2 -0
  109. package/dist/cjs/components/Input/constants.cjs.map +1 -0
  110. package/dist/cjs/components/Input/utils.cjs +2 -0
  111. package/dist/cjs/components/Input/utils.cjs.map +1 -0
  112. package/dist/cjs/components/InputText/InputText.cjs +2 -0
  113. package/dist/cjs/components/InputText/InputText.cjs.map +1 -0
  114. package/dist/cjs/components/Loader/Loader.cjs +2 -0
  115. package/dist/cjs/components/Loader/Loader.cjs.map +1 -0
  116. package/dist/cjs/components/Loader/constants.cjs +2 -0
  117. package/dist/cjs/components/Loader/constants.cjs.map +1 -0
  118. package/dist/cjs/components/LoaderMini/LoaderMini.cjs +2 -0
  119. package/dist/cjs/components/LoaderMini/LoaderMini.cjs.map +1 -0
  120. package/dist/cjs/components/Modal/Modal.cjs +2 -0
  121. package/dist/cjs/components/Modal/Modal.cjs.map +1 -0
  122. package/dist/cjs/components/Modal/constants.cjs +2 -0
  123. package/dist/cjs/components/Modal/constants.cjs.map +1 -0
  124. package/dist/cjs/components/MultiSelect/MultiSelect.cjs +2 -0
  125. package/dist/cjs/components/MultiSelect/MultiSelect.cjs.map +1 -0
  126. package/dist/cjs/components/MultiSelectWithCheckbox/MultiSelectWithCheckbox.cjs +2 -0
  127. package/dist/cjs/components/MultiSelectWithCheckbox/MultiSelectWithCheckbox.cjs.map +1 -0
  128. package/dist/cjs/components/Option/Option.cjs +2 -0
  129. package/dist/cjs/components/Option/Option.cjs.map +1 -0
  130. package/dist/cjs/components/OptionWithIcon/OptionWithIcon.cjs +2 -0
  131. package/dist/cjs/components/OptionWithIcon/OptionWithIcon.cjs.map +1 -0
  132. package/dist/cjs/components/RadioGroup/RadioGroup.cjs +2 -0
  133. package/dist/cjs/components/RadioGroup/RadioGroup.cjs.map +1 -0
  134. package/dist/cjs/components/ReadOnly/ReadOnly.cjs +2 -0
  135. package/dist/cjs/components/ReadOnly/ReadOnly.cjs.map +1 -0
  136. package/dist/cjs/components/ReadOnly/constants.cjs +2 -0
  137. package/dist/cjs/components/ReadOnly/constants.cjs.map +1 -0
  138. package/dist/cjs/components/Select/Select.cjs +2 -0
  139. package/dist/cjs/components/Select/Select.cjs.map +1 -0
  140. package/dist/cjs/components/SlideTabs/SlideTabs.cjs +2 -0
  141. package/dist/cjs/components/SlideTabs/SlideTabs.cjs.map +1 -0
  142. package/dist/cjs/components/SocketStatus/SocketStatus.cjs +2 -0
  143. package/dist/cjs/components/SocketStatus/SocketStatus.cjs.map +1 -0
  144. package/dist/cjs/components/Svg/Svg.cjs +2 -0
  145. package/dist/cjs/components/Svg/Svg.cjs.map +1 -0
  146. package/dist/cjs/components/Switch/Switch.cjs +2 -0
  147. package/dist/cjs/components/Switch/Switch.cjs.map +1 -0
  148. package/dist/cjs/components/Table/Table.cjs +2 -0
  149. package/dist/cjs/components/Table/Table.cjs.map +1 -0
  150. package/dist/cjs/components/Table/legacy/defaultProps.cjs +2 -0
  151. package/dist/cjs/components/Table/legacy/defaultProps.cjs.map +1 -0
  152. package/dist/cjs/components/Table/legacy/index.cjs +2 -0
  153. package/dist/cjs/components/Table/legacy/index.cjs.map +1 -0
  154. package/dist/cjs/components/Table/legacy/subComponents/constants.cjs +2 -0
  155. package/dist/cjs/components/Table/legacy/subComponents/constants.cjs.map +1 -0
  156. package/dist/cjs/components/Table/legacy/subComponents/contexts/InconelTablePropsContext.cjs +2 -0
  157. package/dist/cjs/components/Table/legacy/subComponents/contexts/InconelTablePropsContext.cjs.map +1 -0
  158. package/dist/cjs/components/Table/legacy/subComponents/hooks/useInconelEffect.cjs +2 -0
  159. package/dist/cjs/components/Table/legacy/subComponents/hooks/useInconelEffect.cjs.map +1 -0
  160. package/dist/cjs/components/Table/legacy/subComponents/hooks/useInconelMemo.cjs +2 -0
  161. package/dist/cjs/components/Table/legacy/subComponents/hooks/useInconelMemo.cjs.map +1 -0
  162. package/dist/cjs/components/Table/legacy/subComponents/hooks/useInconelTableStorage.cjs +2 -0
  163. package/dist/cjs/components/Table/legacy/subComponents/hooks/useInconelTableStorage.cjs.map +1 -0
  164. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/cellSection/index.cjs +2 -0
  165. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/cellSection/index.cjs.map +1 -0
  166. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/customContextMenu/index.cjs +2 -0
  167. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/customContextMenu/index.cjs.map +1 -0
  168. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/filterWindow/index.cjs +2 -0
  169. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/filterWindow/index.cjs.map +1 -0
  170. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/headerItem/index.cjs +2 -0
  171. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/headerItem/index.cjs.map +1 -0
  172. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/index.cjs +2 -0
  173. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/index.cjs.map +1 -0
  174. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/pinContextMenu/index.cjs +2 -0
  175. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/pinContextMenu/index.cjs.map +1 -0
  176. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/rowItem/index.cjs +2 -0
  177. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/rowItem/index.cjs.map +1 -0
  178. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/rowItem/rowWrapper.cjs +2 -0
  179. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/rowItem/rowWrapper.cjs.map +1 -0
  180. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/tableCalculations.cjs +2 -0
  181. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/tableCalculations.cjs.map +1 -0
  182. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/tableFooter/index.cjs +2 -0
  183. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/tableFooter/index.cjs.map +1 -0
  184. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/tableHeader/headerWrapper.cjs +2 -0
  185. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/tableHeader/headerWrapper.cjs.map +1 -0
  186. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/tableHeader/index.cjs +2 -0
  187. package/dist/cjs/components/Table/legacy/subComponents/inconelTableBody/tableHeader/index.cjs.map +1 -0
  188. package/dist/cjs/components/Table/legacy/subComponents/inconelTablePagination/index.cjs +2 -0
  189. package/dist/cjs/components/Table/legacy/subComponents/inconelTablePagination/index.cjs.map +1 -0
  190. package/dist/cjs/components/Table/legacy/subComponents/inconelTableScroll/index.cjs +2 -0
  191. package/dist/cjs/components/Table/legacy/subComponents/inconelTableScroll/index.cjs.map +1 -0
  192. package/dist/cjs/components/Table/legacy/subComponents/inconelTableToolbar/exportPanel/index.cjs +2 -0
  193. package/dist/cjs/components/Table/legacy/subComponents/inconelTableToolbar/exportPanel/index.cjs.map +1 -0
  194. package/dist/cjs/components/Table/legacy/subComponents/inconelTableToolbar/hidePanel/index.cjs +2 -0
  195. package/dist/cjs/components/Table/legacy/subComponents/inconelTableToolbar/hidePanel/index.cjs.map +1 -0
  196. package/dist/cjs/components/Table/legacy/subComponents/inconelTableToolbar/index.cjs +2 -0
  197. package/dist/cjs/components/Table/legacy/subComponents/inconelTableToolbar/index.cjs.map +1 -0
  198. package/dist/cjs/components/Table/legacy/subComponents/inconelTableToolbar/settingsPanel/index.cjs +2 -0
  199. package/dist/cjs/components/Table/legacy/subComponents/inconelTableToolbar/settingsPanel/index.cjs.map +1 -0
  200. package/dist/cjs/components/Table/legacy/subComponents/lang.cjs +2 -0
  201. package/dist/cjs/components/Table/legacy/subComponents/lang.cjs.map +1 -0
  202. package/dist/cjs/components/Table/legacy/subComponents/utils.cjs +2 -0
  203. package/dist/cjs/components/Table/legacy/subComponents/utils.cjs.map +1 -0
  204. package/dist/cjs/components/Tabs/Tabs.cjs +2 -0
  205. package/dist/cjs/components/Tabs/Tabs.cjs.map +1 -0
  206. package/dist/cjs/components/TextEditor/TextEditor.cjs +2 -0
  207. package/dist/cjs/components/TextEditor/TextEditor.cjs.map +1 -0
  208. package/dist/cjs/components/TextEditor/utils.cjs +2 -0
  209. package/dist/cjs/components/TextEditor/utils.cjs.map +1 -0
  210. package/dist/cjs/components/TextInput/TextInput.cjs +2 -0
  211. package/dist/cjs/components/TextInput/TextInput.cjs.map +1 -0
  212. package/dist/cjs/components/Textarea/Textarea.cjs +2 -0
  213. package/dist/cjs/components/Textarea/Textarea.cjs.map +1 -0
  214. package/dist/cjs/components/Tooltip/Tooltip.cjs +2 -0
  215. package/dist/cjs/components/Tooltip/Tooltip.cjs.map +1 -0
  216. package/dist/cjs/components/shared/classNames.cjs +2 -0
  217. package/dist/cjs/components/shared/classNames.cjs.map +1 -0
  218. package/dist/cjs/hooks/useOnClickOutside.cjs +2 -0
  219. package/dist/cjs/hooks/useOnClickOutside.cjs.map +1 -0
  220. package/dist/cjs/index.cjs +2 -0
  221. package/dist/cjs/index.cjs.map +1 -0
  222. package/dist/cjs/styles.css +1 -0
  223. package/dist/cjs/utils/helpers.cjs +2 -0
  224. package/dist/cjs/utils/helpers.cjs.map +1 -0
  225. package/dist/components/Button/Button.d.ts +4 -2
  226. package/dist/components/Button/Button.d.ts.map +1 -1
  227. package/dist/components/Button/Button.js +85 -0
  228. package/dist/components/Button/Button.js.map +1 -0
  229. package/dist/components/Button/constants.js +37 -0
  230. package/dist/components/Button/constants.js.map +1 -0
  231. package/dist/components/Button/utils.js +13 -0
  232. package/dist/components/Button/utils.js.map +1 -0
  233. package/dist/components/Checkbox/Checkbox.js +66 -0
  234. package/dist/components/Checkbox/Checkbox.js.map +1 -0
  235. package/dist/components/CheckboxGroup/CheckboxGroup.js +30 -0
  236. package/dist/components/CheckboxGroup/CheckboxGroup.js.map +1 -0
  237. package/dist/components/CheckboxGroup/utils.js +7 -0
  238. package/dist/components/CheckboxGroup/utils.js.map +1 -0
  239. package/dist/components/CurrencyInput/CurrencyInput.js +9 -0
  240. package/dist/components/CurrencyInput/CurrencyInput.js.map +1 -0
  241. package/dist/components/CustomizableSwitch/CustomizableSwitch.js +52 -0
  242. package/dist/components/CustomizableSwitch/CustomizableSwitch.js.map +1 -0
  243. package/dist/components/DataGrid/DataGrid.js +77 -0
  244. package/dist/components/DataGrid/DataGrid.js.map +1 -0
  245. package/dist/components/DataGrid/utils.js +7 -0
  246. package/dist/components/DataGrid/utils.js.map +1 -0
  247. package/dist/components/DatePicker/DatePicker.d.ts +2 -1
  248. package/dist/components/DatePicker/DatePicker.d.ts.map +1 -1
  249. package/dist/components/DatePicker/DatePicker.js +191 -0
  250. package/dist/components/DatePicker/DatePicker.js.map +1 -0
  251. package/dist/components/DatePicker/utils.js +13 -0
  252. package/dist/components/DatePicker/utils.js.map +1 -0
  253. package/dist/components/DndFileUpload/DndFileUpload.js +6 -0
  254. package/dist/components/DndFileUpload/DndFileUpload.js.map +1 -0
  255. package/dist/components/DotLoader/DotLoader.js +28 -0
  256. package/dist/components/DotLoader/DotLoader.js.map +1 -0
  257. package/dist/components/DotLoader/constants.js +5 -0
  258. package/dist/components/DotLoader/constants.js.map +1 -0
  259. package/dist/components/DragDropUpload/DragDropUpload.js +125 -0
  260. package/dist/components/DragDropUpload/DragDropUpload.js.map +1 -0
  261. package/dist/components/DragDropUpload/utils.js +18 -0
  262. package/dist/components/DragDropUpload/utils.js.map +1 -0
  263. package/dist/components/ExcelTable/ExcelTable.js +9 -0
  264. package/dist/components/ExcelTable/ExcelTable.js.map +1 -0
  265. package/dist/components/ExcelTable/legacy/constants.js +28 -0
  266. package/dist/components/ExcelTable/legacy/constants.js.map +1 -0
  267. package/dist/components/ExcelTable/legacy/index.js +96 -0
  268. package/dist/components/ExcelTable/legacy/index.js.map +1 -0
  269. package/dist/components/ExcelTable/legacy/subComponents/previewTooltip/index.js +18 -0
  270. package/dist/components/ExcelTable/legacy/subComponents/previewTooltip/index.js.map +1 -0
  271. package/dist/components/ExcelTable/legacy/subComponents/tableBody.js +306 -0
  272. package/dist/components/ExcelTable/legacy/subComponents/tableBody.js.map +1 -0
  273. package/dist/components/ExcelTable/legacy/subComponents/tableCell/index.js +112 -0
  274. package/dist/components/ExcelTable/legacy/subComponents/tableCell/index.js.map +1 -0
  275. package/dist/components/ExcelTable/legacy/subComponents/tableHeaderItem/index.js +44 -0
  276. package/dist/components/ExcelTable/legacy/subComponents/tableHeaderItem/index.js.map +1 -0
  277. package/dist/components/ExcelTable/legacy/utils.js +344 -0
  278. package/dist/components/ExcelTable/legacy/utils.js.map +1 -0
  279. package/dist/components/FieldFeedback/FieldFeedback.js +38 -0
  280. package/dist/components/FieldFeedback/FieldFeedback.js.map +1 -0
  281. package/dist/components/FileUpload/FileUpload.js +75 -0
  282. package/dist/components/FileUpload/FileUpload.js.map +1 -0
  283. package/dist/components/FileUploadText/FileUploadText.js +10 -0
  284. package/dist/components/FileUploadText/FileUploadText.js.map +1 -0
  285. package/dist/components/Filter/Filter.js +20 -0
  286. package/dist/components/Filter/Filter.js.map +1 -0
  287. package/dist/components/HTMLTable/HTMLTable.js +9 -0
  288. package/dist/components/HTMLTable/HTMLTable.js.map +1 -0
  289. package/dist/components/HTMLTable/legacy/index.js +186 -0
  290. package/dist/components/HTMLTable/legacy/index.js.map +1 -0
  291. package/dist/components/HtmlEditor/HtmlEditor.js +39 -0
  292. package/dist/components/HtmlEditor/HtmlEditor.js.map +1 -0
  293. package/dist/components/Input/Input.d.ts +2 -0
  294. package/dist/components/Input/Input.d.ts.map +1 -1
  295. package/dist/components/Input/Input.js +184 -0
  296. package/dist/components/Input/Input.js.map +1 -0
  297. package/dist/components/Input/constants.js +14 -0
  298. package/dist/components/Input/constants.js.map +1 -0
  299. package/dist/components/Input/utils.js +86 -0
  300. package/dist/components/Input/utils.js.map +1 -0
  301. package/dist/components/InputText/InputText.js +6 -0
  302. package/dist/components/InputText/InputText.js.map +1 -0
  303. package/dist/components/Loader/Loader.js +44 -0
  304. package/dist/components/Loader/Loader.js.map +1 -0
  305. package/dist/components/Loader/constants.js +5 -0
  306. package/dist/components/Loader/constants.js.map +1 -0
  307. package/dist/components/LoaderMini/LoaderMini.js +22 -0
  308. package/dist/components/LoaderMini/LoaderMini.js.map +1 -0
  309. package/dist/components/Modal/Modal.js +150 -0
  310. package/dist/components/Modal/Modal.js.map +1 -0
  311. package/dist/components/Modal/constants.js +5 -0
  312. package/dist/components/Modal/constants.js.map +1 -0
  313. package/dist/components/MultiSelect/MultiSelect.js +20 -0
  314. package/dist/components/MultiSelect/MultiSelect.js.map +1 -0
  315. package/dist/components/MultiSelectWithCheckbox/MultiSelectWithCheckbox.js +6 -0
  316. package/dist/components/MultiSelectWithCheckbox/MultiSelectWithCheckbox.js.map +1 -0
  317. package/dist/components/Option/Option.js +35 -0
  318. package/dist/components/Option/Option.js.map +1 -0
  319. package/dist/components/OptionWithIcon/OptionWithIcon.js +6 -0
  320. package/dist/components/OptionWithIcon/OptionWithIcon.js.map +1 -0
  321. package/dist/components/RadioGroup/RadioGroup.js +30 -0
  322. package/dist/components/RadioGroup/RadioGroup.js.map +1 -0
  323. package/dist/components/ReadOnly/ReadOnly.js +20 -0
  324. package/dist/components/ReadOnly/ReadOnly.js.map +1 -0
  325. package/dist/components/ReadOnly/constants.js +5 -0
  326. package/dist/components/ReadOnly/constants.js.map +1 -0
  327. package/dist/components/Select/Select.d.ts +2 -1
  328. package/dist/components/Select/Select.d.ts.map +1 -1
  329. package/dist/components/Select/Select.js +455 -0
  330. package/dist/components/Select/Select.js.map +1 -0
  331. package/dist/components/SlideTabs/SlideTabs.js +54 -0
  332. package/dist/components/SlideTabs/SlideTabs.js.map +1 -0
  333. package/dist/components/SocketStatus/SocketStatus.js +31 -0
  334. package/dist/components/SocketStatus/SocketStatus.js.map +1 -0
  335. package/dist/components/Svg/Svg.js +28 -0
  336. package/dist/components/Svg/Svg.js.map +1 -0
  337. package/dist/components/Switch/Switch.d.ts.map +1 -1
  338. package/dist/components/Switch/Switch.js +63 -0
  339. package/dist/components/Switch/Switch.js.map +1 -0
  340. package/dist/components/Table/Table.js +28 -0
  341. package/dist/components/Table/Table.js.map +1 -0
  342. package/dist/components/Table/legacy/defaultProps.js +158 -0
  343. package/dist/components/Table/legacy/defaultProps.js.map +1 -0
  344. package/dist/components/Table/legacy/index.js +876 -0
  345. package/dist/components/Table/legacy/index.js.map +1 -0
  346. package/dist/components/Table/legacy/subComponents/constants.js +36 -0
  347. package/dist/components/Table/legacy/subComponents/constants.js.map +1 -0
  348. package/dist/components/Table/legacy/subComponents/contexts/InconelTablePropsContext.js +6 -0
  349. package/dist/components/Table/legacy/subComponents/contexts/InconelTablePropsContext.js.map +1 -0
  350. package/dist/components/Table/legacy/subComponents/hooks/useInconelEffect.js +15 -0
  351. package/dist/components/Table/legacy/subComponents/hooks/useInconelEffect.js.map +1 -0
  352. package/dist/components/Table/legacy/subComponents/hooks/useInconelMemo.js +19 -0
  353. package/dist/components/Table/legacy/subComponents/hooks/useInconelMemo.js.map +1 -0
  354. package/dist/components/Table/legacy/subComponents/hooks/useInconelTableStorage.js +37 -0
  355. package/dist/components/Table/legacy/subComponents/hooks/useInconelTableStorage.js.map +1 -0
  356. package/dist/components/Table/legacy/subComponents/inconelTableBody/cellSection/index.js +145 -0
  357. package/dist/components/Table/legacy/subComponents/inconelTableBody/cellSection/index.js.map +1 -0
  358. package/dist/components/Table/legacy/subComponents/inconelTableBody/customContextMenu/index.js +32 -0
  359. package/dist/components/Table/legacy/subComponents/inconelTableBody/customContextMenu/index.js.map +1 -0
  360. package/dist/components/Table/legacy/subComponents/inconelTableBody/filterWindow/index.js +122 -0
  361. package/dist/components/Table/legacy/subComponents/inconelTableBody/filterWindow/index.js.map +1 -0
  362. package/dist/components/Table/legacy/subComponents/inconelTableBody/headerItem/index.js +90 -0
  363. package/dist/components/Table/legacy/subComponents/inconelTableBody/headerItem/index.js.map +1 -0
  364. package/dist/components/Table/legacy/subComponents/inconelTableBody/index.js +441 -0
  365. package/dist/components/Table/legacy/subComponents/inconelTableBody/index.js.map +1 -0
  366. package/dist/components/Table/legacy/subComponents/inconelTableBody/pinContextMenu/index.js +65 -0
  367. package/dist/components/Table/legacy/subComponents/inconelTableBody/pinContextMenu/index.js.map +1 -0
  368. package/dist/components/Table/legacy/subComponents/inconelTableBody/rowItem/index.js +191 -0
  369. package/dist/components/Table/legacy/subComponents/inconelTableBody/rowItem/index.js.map +1 -0
  370. package/dist/components/Table/legacy/subComponents/inconelTableBody/rowItem/rowWrapper.js +51 -0
  371. package/dist/components/Table/legacy/subComponents/inconelTableBody/rowItem/rowWrapper.js.map +1 -0
  372. package/dist/components/Table/legacy/subComponents/inconelTableBody/tableCalculations.js +286 -0
  373. package/dist/components/Table/legacy/subComponents/inconelTableBody/tableCalculations.js.map +1 -0
  374. package/dist/components/Table/legacy/subComponents/inconelTableBody/tableFooter/index.js +79 -0
  375. package/dist/components/Table/legacy/subComponents/inconelTableBody/tableFooter/index.js.map +1 -0
  376. package/dist/components/Table/legacy/subComponents/inconelTableBody/tableHeader/headerWrapper.js +63 -0
  377. package/dist/components/Table/legacy/subComponents/inconelTableBody/tableHeader/headerWrapper.js.map +1 -0
  378. package/dist/components/Table/legacy/subComponents/inconelTableBody/tableHeader/index.js +142 -0
  379. package/dist/components/Table/legacy/subComponents/inconelTableBody/tableHeader/index.js.map +1 -0
  380. package/dist/components/Table/legacy/subComponents/inconelTablePagination/index.js +93 -0
  381. package/dist/components/Table/legacy/subComponents/inconelTablePagination/index.js.map +1 -0
  382. package/dist/components/Table/legacy/subComponents/inconelTableScroll/index.js +136 -0
  383. package/dist/components/Table/legacy/subComponents/inconelTableScroll/index.js.map +1 -0
  384. package/dist/components/Table/legacy/subComponents/inconelTableToolbar/exportPanel/index.js +21 -0
  385. package/dist/components/Table/legacy/subComponents/inconelTableToolbar/exportPanel/index.js.map +1 -0
  386. package/dist/components/Table/legacy/subComponents/inconelTableToolbar/hidePanel/index.js +85 -0
  387. package/dist/components/Table/legacy/subComponents/inconelTableToolbar/hidePanel/index.js.map +1 -0
  388. package/dist/components/Table/legacy/subComponents/inconelTableToolbar/index.js +157 -0
  389. package/dist/components/Table/legacy/subComponents/inconelTableToolbar/index.js.map +1 -0
  390. package/dist/components/Table/legacy/subComponents/inconelTableToolbar/settingsPanel/index.js +66 -0
  391. package/dist/components/Table/legacy/subComponents/inconelTableToolbar/settingsPanel/index.js.map +1 -0
  392. package/dist/components/Table/legacy/subComponents/lang.js +64 -0
  393. package/dist/components/Table/legacy/subComponents/lang.js.map +1 -0
  394. package/dist/components/Table/legacy/subComponents/utils.js +346 -0
  395. package/dist/components/Table/legacy/subComponents/utils.js.map +1 -0
  396. package/dist/components/Tabs/Tabs.js +45 -0
  397. package/dist/components/Tabs/Tabs.js.map +1 -0
  398. package/dist/components/TextEditor/TextEditor.js +71 -0
  399. package/dist/components/TextEditor/TextEditor.js.map +1 -0
  400. package/dist/components/TextEditor/utils.js +15 -0
  401. package/dist/components/TextEditor/utils.js.map +1 -0
  402. package/dist/components/TextInput/TextInput.js +6 -0
  403. package/dist/components/TextInput/TextInput.js.map +1 -0
  404. package/dist/components/Textarea/Textarea.d.ts +2 -0
  405. package/dist/components/Textarea/Textarea.d.ts.map +1 -1
  406. package/dist/components/Textarea/Textarea.js +77 -0
  407. package/dist/components/Textarea/Textarea.js.map +1 -0
  408. package/dist/components/Tooltip/Tooltip.js +28 -0
  409. package/dist/components/Tooltip/Tooltip.js.map +1 -0
  410. package/dist/components/shared/classNames.js +7 -0
  411. package/dist/components/shared/classNames.js.map +1 -0
  412. package/dist/components/shared/types.d.ts +2 -0
  413. package/dist/components/shared/types.d.ts.map +1 -0
  414. package/dist/hooks/useOnClickOutside.js +15 -0
  415. package/dist/hooks/useOnClickOutside.js.map +1 -0
  416. package/dist/index.js +83 -51590
  417. package/dist/index.js.map +1 -1
  418. package/dist/styles.css +1 -1
  419. package/dist/utils/helpers.js +5 -0
  420. package/dist/utils/helpers.js.map +1 -0
  421. package/package.json +27 -5
  422. package/dist/index.cjs +0 -45
  423. package/dist/index.cjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sources":["../../../src/components/ReadOnly/constants.ts"],"sourcesContent":["export const DEFAULT_READ_ONLY_EMPTY_VALUE = '—'\n"],"names":["DEFAULT_READ_ONLY_EMPTY_VALUE"],"mappings":"AAAO,MAAMA,IAAgC;"}
@@ -1,4 +1,5 @@
1
1
  import { CSSProperties, ForwardedRef, ReactNode } from 'react';
2
+ import { ControlSize } from '../shared/types';
2
3
  import { FieldFeedbackContentProps } from '../FieldFeedback/FieldFeedback';
3
4
  export type OptionValue = string | number;
4
5
  export interface SelectHandle {
@@ -62,7 +63,7 @@ export interface SelectProps<T extends object> extends FieldFeedbackContentProps
62
63
  maxMenuHeight?: number;
63
64
  inputClassName?: string;
64
65
  labelClassName?: string;
65
- size?: string;
66
+ size?: ControlSize;
66
67
  required?: boolean;
67
68
  components?: Record<string, unknown>;
68
69
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/components/Select/Select.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/components/Select/Select.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,455 @@
1
+ import { jsxs as z, jsx as o } from "react/jsx-runtime";
2
+ import { forwardRef as vt, useId as kt, useRef as te, useState as S, useEffect as B, useCallback as x, useMemo as xe, useImperativeHandle as wt } from "react";
3
+ import { useFloating as St, autoUpdate as xt, offset as It, flip as Lt, shift as At, size as Et } from "@floating-ui/react";
4
+ import { useVirtualizer as zt } from "@tanstack/react-virtual";
5
+ import { createPortal as Bt } from "react-dom";
6
+ import { classNames as c } from "../shared/classNames.js";
7
+ /* empty css */
8
+ /* empty css */
9
+ /* empty css */
10
+ /* empty css */
11
+ import Dt from "../FieldFeedback/FieldFeedback.js";
12
+ import { useInconelAdapters as Ot } from "../../adapters/context.js";
13
+ function Vt({
14
+ id: Ie,
15
+ name: ne,
16
+ label: H,
17
+ options: M = [],
18
+ value: Le,
19
+ onChange: D,
20
+ optionLabel: O = "label",
21
+ optionValue: V = "value",
22
+ getOptionSearchText: U,
23
+ isOptionDisabled: C = () => !1,
24
+ placeholder: Ae,
25
+ isClearable: le = !1,
26
+ isDisabled: Ee = !1,
27
+ isReadOnly: ze = !1,
28
+ isRequired: oe = !1,
29
+ isLoading: Be = !1,
30
+ loadOptions: b,
31
+ loadOptionsDebounceMs: re = 250,
32
+ hint: ie,
33
+ errorMessage: h,
34
+ asyncErrorMessage: De,
35
+ loadingMessage: Oe,
36
+ noOptionsMessage: Ve,
37
+ clearButtonLabel: Ce,
38
+ openMenuButtonLabel: Fe,
39
+ closeMenuButtonLabel: Ne,
40
+ searchLocale: $,
41
+ menuPortalTarget: F,
42
+ virtualize: je = !1,
43
+ virtualizationThreshold: Re = 100,
44
+ optionHeight: qe = 44,
45
+ className: He,
46
+ classNames: i = {},
47
+ styles: s = {},
48
+ onInputChange: I,
49
+ onMenuOpen: Me,
50
+ onMenuClose: se,
51
+ autoFocus: Ue,
52
+ selectClassName: ae,
53
+ disabled: $e,
54
+ isSearchable: Te = !0,
55
+ readOnly: Ye,
56
+ defaultValue: Ke,
57
+ errorPlace: T,
58
+ onBlur: We,
59
+ setFieldValue: Ge,
60
+ render: Je = !0,
61
+ singleValue: Qe,
62
+ sortByUppercase: Xe,
63
+ inputClassName: Ze,
64
+ labelClassName: _e,
65
+ size: ce = "md",
66
+ required: Pe
67
+ }, et) {
68
+ const f = Ot(), de = Qe !== void 0 || ae !== void 0 || T !== void 0, N = Le ?? Ge ?? Ke ?? null, tt = kt(), d = Ie ?? `inconel-select-${tt.replace(/:/g, "")}`, ue = `${d}-label`, fe = `${d}-listbox`, me = `${d}-message`, pe = `${d}-hint`, ge = te(null), L = te(null), Y = te(null), [n, be] = S(!1), [m, K] = S(""), [a, u] = S(0), [nt, lt] = S(null), [ot, he] = S(!1), [rt, ye] = S(!1);
69
+ B(() => {
70
+ if (!b) return;
71
+ const e = new AbortController(), t = window.setTimeout(async () => {
72
+ he(!0), ye(!1);
73
+ try {
74
+ const r = await b(
75
+ m,
76
+ e.signal
77
+ );
78
+ e.signal.aborted || lt(r);
79
+ } catch {
80
+ e.signal.aborted || ye(!0);
81
+ } finally {
82
+ e.signal.aborted || he(!1);
83
+ }
84
+ }, re);
85
+ return () => {
86
+ window.clearTimeout(t), e.abort();
87
+ };
88
+ }, [m, b, re]);
89
+ const y = b ? nt ?? M : M, W = Be || ot, p = Ee || !!$e, A = ze || !!Ye, G = oe || !!Pe, it = (T === "in" && h ? String(h) : Ae) ?? String(f.translate?.("select", "Seçim yapın...") ?? "Seçim yapın..."), st = Ve ?? f.translate?.("noData", "Sonuç bulunamadı.") ?? "Sonuç bulunamadı.", at = Oe ?? f.translate?.("loading", "Yükleniyor...") ?? "Yükleniyor...", ct = Ce ?? String(f.translate?.("clearSelection", "Seçimi temizle") ?? "Seçimi temizle"), dt = Fe ?? String(f.translate?.("openOptions", "Seçenekleri aç") ?? "Seçenekleri aç"), ut = Ne ?? String(f.translate?.("closeOptions", "Seçenekleri kapat") ?? "Seçenekleri kapat"), J = x(
90
+ (e) => typeof O == "function" ? O(e) : String(e[O]),
91
+ [O]
92
+ ), Q = x(
93
+ (e) => {
94
+ if (U) return U(e);
95
+ const t = J(e);
96
+ return typeof t == "string" || typeof t == "number" ? String(t) : "";
97
+ },
98
+ [J, U]
99
+ ), v = x(
100
+ (e) => {
101
+ const t = typeof V == "function" ? V(e) : e[V];
102
+ if (typeof t != "string" && typeof t != "number")
103
+ throw new TypeError("optionValue must resolve to a string or number.");
104
+ return t;
105
+ },
106
+ [V]
107
+ ), g = N && typeof N == "object" ? v(N) : N, X = x(
108
+ (e, t) => {
109
+ D && (de ? D(t) : D(e, t));
110
+ },
111
+ [de, D]
112
+ ), Z = xe(() => {
113
+ const e = /* @__PURE__ */ new Set();
114
+ return y.map(v).filter((t) => e.has(t) ? !0 : (e.add(t), !1));
115
+ }, [y, v]);
116
+ B(() => {
117
+ Z.length && console.warn(
118
+ `Duplicate optionValue found in Select "${H}":`,
119
+ Z
120
+ );
121
+ }, [Z, H]);
122
+ const _ = [...M, ...y].find(
123
+ (e) => v(e) === g
124
+ ), ft = _ ? Q(_) : "", l = xe(() => {
125
+ const e = m.trim().toLocaleLowerCase($);
126
+ return !e || b ? y : y.filter(
127
+ (t) => Q(t).toLocaleLowerCase($).includes(e)
128
+ );
129
+ }, [y, Q, m, b, $]), { refs: ve, floatingStyles: mt } = St({
130
+ open: n,
131
+ placement: "bottom-start",
132
+ strategy: F ? "fixed" : "absolute",
133
+ whileElementsMounted: xt,
134
+ middleware: [
135
+ It(8),
136
+ Lt({ padding: 12 }),
137
+ At({ padding: 12 }),
138
+ Et({
139
+ padding: 12,
140
+ apply({ availableHeight: e, rects: t, elements: r }) {
141
+ Object.assign(r.floating.style, {
142
+ maxHeight: `${Math.min(230, e)}px`,
143
+ width: `${t.reference.width}px`
144
+ });
145
+ }
146
+ })
147
+ ]
148
+ }), j = je || l.length >= Re, R = zt({
149
+ count: l.length,
150
+ getScrollElement: () => Y.current,
151
+ estimateSize: () => qe,
152
+ overscan: 5,
153
+ enabled: j && n
154
+ }), k = x(() => {
155
+ be(!1), K(""), I?.(""), se?.();
156
+ }, [I, se]), E = () => {
157
+ p || A || (n || Me?.(), be(!0));
158
+ }, q = x(() => {
159
+ p || A || (X(null, null), K(""), u(0), I?.(""), L.current?.focus());
160
+ }, [p, A, X, I]);
161
+ wt(
162
+ et,
163
+ () => ({
164
+ focus: () => L.current?.focus(),
165
+ blur: () => L.current?.blur(),
166
+ clear: q
167
+ }),
168
+ [q]
169
+ ), B(() => {
170
+ const e = (t) => {
171
+ const r = t.target;
172
+ !ge.current?.contains(r) && !Y.current?.contains(r) && k();
173
+ };
174
+ return document.addEventListener("mousedown", e), () => document.removeEventListener("mousedown", e);
175
+ }, [k]), B(() => {
176
+ a >= l.length && u(0);
177
+ }, [a, l.length]), B(() => {
178
+ j && n && l[a] && R.scrollToIndex(a, { align: "auto" });
179
+ }, [
180
+ a,
181
+ l,
182
+ n,
183
+ j,
184
+ R
185
+ ]);
186
+ const ke = (e) => {
187
+ C(e) || (X(v(e), e), k(), L.current?.focus());
188
+ }, pt = (e) => {
189
+ if (!l.length) return;
190
+ let t = a;
191
+ do
192
+ t = (t + e + l.length) % l.length;
193
+ while (C(l[t]) && t !== a);
194
+ u(t);
195
+ }, P = (e = !1) => {
196
+ const t = l.map((r, w) => ({ option: r, index: w }));
197
+ return e && t.reverse(), t.find(({ option: r }) => !C(r))?.index ?? 0;
198
+ }, gt = (e) => {
199
+ if (e.key === "Backspace" && !m && g !== null && le) {
200
+ e.preventDefault(), q();
201
+ return;
202
+ }
203
+ if (e.key === "ArrowDown" || e.key === "ArrowUp")
204
+ e.preventDefault(), n ? pt(e.key === "ArrowDown" ? 1 : -1) : (E(), u(P(e.key === "ArrowUp")));
205
+ else if (e.key === "Home" && n)
206
+ e.preventDefault(), u(P());
207
+ else if (e.key === "End" && n)
208
+ e.preventDefault(), u(P(!0));
209
+ else if (e.key === "Enter" && n) {
210
+ e.preventDefault();
211
+ const t = l[a];
212
+ t && ke(t);
213
+ } else e.key === "Escape" && n ? (e.preventDefault(), k()) : e.key === "Tab" && k();
214
+ }, we = (e, t, r) => {
215
+ const w = v(e), Se = C(e);
216
+ return /* @__PURE__ */ z(
217
+ "div",
218
+ {
219
+ id: `${d}-option-${t}`,
220
+ role: "option",
221
+ "aria-selected": w === g,
222
+ "aria-disabled": Se,
223
+ "aria-posinset": t + 1,
224
+ "aria-setsize": l.length,
225
+ className: c(
226
+ "inconel-select-option",
227
+ t === a && "inconel-is-active",
228
+ w === g && "inconel-is-selected",
229
+ Se && "inconel-is-disabled",
230
+ i.option
231
+ ),
232
+ style: { ...r, ...s.option },
233
+ onMouseEnter: () => u(t),
234
+ onMouseDown: (yt) => yt.preventDefault(),
235
+ onClick: () => ke(e),
236
+ children: [
237
+ /* @__PURE__ */ o("span", { children: J(e) }),
238
+ w === g && /* @__PURE__ */ o("span", { "aria-hidden": "true", children: "✓" })
239
+ ]
240
+ },
241
+ w
242
+ );
243
+ }, bt = W ? /* @__PURE__ */ z(
244
+ "div",
245
+ {
246
+ role: "status",
247
+ className: c("inconel-select-message", i.message),
248
+ style: s.message,
249
+ children: [
250
+ /* @__PURE__ */ o("span", { className: "inconel-select-spinner", "aria-hidden": "true" }),
251
+ at
252
+ ]
253
+ }
254
+ ) : rt ? /* @__PURE__ */ o(
255
+ "div",
256
+ {
257
+ role: "alert",
258
+ className: c("inconel-select-message inconel-select-message-error", i.message),
259
+ style: s.message,
260
+ children: De
261
+ }
262
+ ) : l.length === 0 ? /* @__PURE__ */ o(
263
+ "div",
264
+ {
265
+ className: c("inconel-select-message", i.message),
266
+ style: s.message,
267
+ children: st
268
+ }
269
+ ) : j ? /* @__PURE__ */ o(
270
+ "div",
271
+ {
272
+ role: "presentation",
273
+ className: "inconel-select-virtual-content",
274
+ style: { height: R.getTotalSize() },
275
+ children: R.getVirtualItems().map(
276
+ (e) => we(l[e.index], e.index, {
277
+ position: "absolute",
278
+ top: 0,
279
+ left: 0,
280
+ width: "100%",
281
+ height: e.size,
282
+ transform: `translateY(${e.start}px)`
283
+ })
284
+ )
285
+ }
286
+ ) : l.map((e, t) => we(e, t)), ee = n ? /* @__PURE__ */ o(
287
+ "div",
288
+ {
289
+ ref: (e) => {
290
+ Y.current = e, ve.setFloating(e);
291
+ },
292
+ id: fe,
293
+ role: "listbox",
294
+ "aria-labelledby": ue,
295
+ className: c(
296
+ "inconel-select-menu",
297
+ F && "inconel-select-menu-portal",
298
+ i.menu
299
+ ),
300
+ style: { ...mt, ...s.menu },
301
+ children: bt
302
+ }
303
+ ) : null, ht = h ? me : ie ? pe : void 0;
304
+ return Je ? /* @__PURE__ */ z(
305
+ "div",
306
+ {
307
+ ref: ge,
308
+ className: c(
309
+ "inconel-select-field",
310
+ `inconel-size-${ce}`,
311
+ `inconel-select-field--${ce}`,
312
+ He,
313
+ i.root
314
+ ),
315
+ style: s.root,
316
+ children: [
317
+ /* @__PURE__ */ z(
318
+ "label",
319
+ {
320
+ id: ue,
321
+ htmlFor: d,
322
+ className: c(i.label, _e),
323
+ style: s.label,
324
+ children: [
325
+ H,
326
+ G && /* @__PURE__ */ o("span", { "aria-hidden": "true", children: " *" })
327
+ ]
328
+ }
329
+ ),
330
+ /* @__PURE__ */ z(
331
+ "div",
332
+ {
333
+ ref: ve.setReference,
334
+ className: c(
335
+ "inconel-select-control",
336
+ n && "inconel-is-open",
337
+ p && "inconel-is-disabled",
338
+ !!h && "inconel-has-error",
339
+ i.control
340
+ ),
341
+ style: s.control,
342
+ children: [
343
+ /* @__PURE__ */ o(
344
+ "input",
345
+ {
346
+ ref: L,
347
+ id: d,
348
+ role: "combobox",
349
+ "aria-expanded": n,
350
+ "aria-controls": fe,
351
+ "aria-autocomplete": "list",
352
+ "aria-activedescendant": n && l[a] ? `${d}-option-${a}` : void 0,
353
+ "aria-describedby": ht,
354
+ "aria-invalid": !!h,
355
+ "aria-required": oe,
356
+ "aria-busy": W,
357
+ required: G,
358
+ disabled: p,
359
+ readOnly: A || !Te,
360
+ autoFocus: Ue,
361
+ autoComplete: "off",
362
+ placeholder: it,
363
+ value: m || ft,
364
+ className: c(i.input, Ze, ae),
365
+ style: s.input,
366
+ onChange: (e) => {
367
+ const t = Xe ? e.target.value.toLocaleUpperCase(
368
+ f.locale ?? "tr-TR"
369
+ ) : e.target.value;
370
+ K(t), u(0), I?.(t), E();
371
+ },
372
+ onClick: E,
373
+ onFocus: (e) => {
374
+ E(), _ && !m && e.currentTarget.select();
375
+ },
376
+ onBlur: We,
377
+ onKeyDown: gt
378
+ }
379
+ ),
380
+ W && /* @__PURE__ */ o("span", { className: "inconel-select-spinner", "aria-hidden": "true" }),
381
+ le && g !== null && !p && !A && /* @__PURE__ */ o(
382
+ "button",
383
+ {
384
+ type: "button",
385
+ className: c("inconel-select-clear", i.clearButton),
386
+ style: s.clearButton,
387
+ "aria-label": ct,
388
+ onClick: q,
389
+ children: "×"
390
+ }
391
+ ),
392
+ /* @__PURE__ */ o(
393
+ "button",
394
+ {
395
+ type: "button",
396
+ className: c("inconel-select-toggle", i.toggleButton),
397
+ style: s.toggleButton,
398
+ "aria-label": n ? ut : dt,
399
+ "aria-expanded": n,
400
+ disabled: p,
401
+ tabIndex: -1,
402
+ onClick: () => n ? k() : E(),
403
+ children: /* @__PURE__ */ o(
404
+ "svg",
405
+ {
406
+ "aria-hidden": "true",
407
+ viewBox: "0 0 20 20",
408
+ width: "20",
409
+ height: "20",
410
+ fill: "none",
411
+ children: /* @__PURE__ */ o(
412
+ "path",
413
+ {
414
+ d: "m5 7.5 5 5 5-5",
415
+ stroke: "currentColor",
416
+ strokeWidth: "1.75",
417
+ strokeLinecap: "round",
418
+ strokeLinejoin: "round"
419
+ }
420
+ )
421
+ }
422
+ )
423
+ }
424
+ )
425
+ ]
426
+ }
427
+ ),
428
+ ne && /* @__PURE__ */ o(
429
+ "input",
430
+ {
431
+ type: "hidden",
432
+ name: ne,
433
+ value: g ?? "",
434
+ required: G
435
+ }
436
+ ),
437
+ /* @__PURE__ */ o(
438
+ Dt,
439
+ {
440
+ hint: ie,
441
+ errorMessage: T === "in" ? void 0 : h,
442
+ hintId: pe,
443
+ errorId: me
444
+ }
445
+ ),
446
+ F && ee ? Bt(ee, F) : ee
447
+ ]
448
+ }
449
+ ) : null;
450
+ }
451
+ const Kt = vt(Vt);
452
+ export {
453
+ Kt as default
454
+ };
455
+ //# sourceMappingURL=Select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import {\n forwardRef,\n useCallback,\n useEffect,\n useId,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n type CSSProperties,\n type ForwardedRef,\n type KeyboardEvent,\n type ReactNode,\n} from 'react'\nimport {\n autoUpdate,\n flip,\n offset,\n shift,\n size as floatingSize,\n useFloating,\n} from '@floating-ui/react'\nimport { useVirtualizer } from '@tanstack/react-virtual'\nimport { createPortal } from 'react-dom'\nimport { useInconelAdapters } from '../../adapters'\nimport { classNames as mergeClassNames } from '../shared/classNames'\nimport '../shared/field.css'\nimport '../shared/field-controls.css'\nimport '../shared/sizes.css'\nimport type { ControlSize } from '../shared/types'\nimport './styles.css'\n\nimport FieldFeedback from '../FieldFeedback/FieldFeedback'\nimport type { FieldFeedbackContentProps } from '../FieldFeedback/FieldFeedback'\n\nexport type OptionValue = string | number\n\nexport interface SelectHandle {\n focus: () => void\n blur: () => void\n clear: () => void\n}\n\ntype SelectPart =\n | 'root'\n | 'label'\n | 'control'\n | 'input'\n | 'clearButton'\n | 'toggleButton'\n | 'menu'\n | 'option'\n | 'message'\n\nexport type SelectClassNames = Partial<Record<SelectPart, string>>\nexport type SelectStyles = Partial<Record<SelectPart, CSSProperties>>\n\nexport interface SelectProps<T extends object> extends FieldFeedbackContentProps {\n id?: string\n name?: string\n label?: ReactNode\n options?: T[]\n value?: OptionValue | T | null\n onChange?:\n | ((value: OptionValue | null, option: T | null) => void)\n | ((option: T | null) => void)\n optionLabel?: keyof T | ((option: T) => ReactNode)\n optionValue?: keyof T | ((option: T) => OptionValue)\n getOptionSearchText?: (option: T) => string\n isOptionDisabled?: (option: T) => boolean\n placeholder?: string\n isClearable?: boolean\n isDisabled?: boolean\n isReadOnly?: boolean\n isRequired?: boolean\n isLoading?: boolean\n loadOptions?: (inputValue: string, signal: AbortSignal) => Promise<T[]>\n loadOptionsDebounceMs?: number\n asyncErrorMessage?: ReactNode\n loadingMessage?: ReactNode\n noOptionsMessage?: ReactNode\n clearButtonLabel?: string\n openMenuButtonLabel?: string\n closeMenuButtonLabel?: string\n searchLocale?: string\n menuPortalTarget?: HTMLElement | null\n virtualize?: boolean\n virtualizationThreshold?: number\n optionHeight?: number\n className?: string\n classNames?: SelectClassNames\n styles?: SelectStyles\n onInputChange?: (value: string) => void\n onMenuOpen?: () => void\n onMenuClose?: () => void\n autoFocus?: boolean\n selectClassName?: string\n disabled?: boolean\n isSearchable?: boolean\n readOnly?: boolean\n defaultValue?: OptionValue | T | null\n errorPlace?: 'in' | 'out' | string\n onBlur?: () => void\n setFieldValue?: OptionValue | string | null\n render?: boolean\n singleValue?: boolean\n sortByUppercase?: boolean\n selectClassNamePrefix?: string\n menuPlacement?: 'auto' | 'bottom' | 'top'\n maxMenuHeight?: number\n inputClassName?: string\n labelClassName?: string\n size?: ControlSize\n required?: boolean\n components?: Record<string, unknown>\n}\n\nfunction SelectInner<T extends object>(\n {\n id,\n name,\n label,\n options = [],\n value,\n onChange,\n optionLabel = 'label' as keyof T,\n optionValue = 'value' as keyof T,\n getOptionSearchText,\n isOptionDisabled = () => false,\n placeholder,\n isClearable = false,\n isDisabled = false,\n isReadOnly = false,\n isRequired = false,\n isLoading = false,\n loadOptions,\n loadOptionsDebounceMs = 250,\n hint,\n errorMessage,\n asyncErrorMessage,\n loadingMessage,\n noOptionsMessage,\n clearButtonLabel,\n openMenuButtonLabel,\n closeMenuButtonLabel,\n searchLocale,\n menuPortalTarget,\n virtualize = false,\n virtualizationThreshold = 100,\n optionHeight = 44,\n className,\n classNames = {},\n styles = {},\n onInputChange,\n onMenuOpen,\n onMenuClose,\n autoFocus,\n selectClassName,\n disabled,\n isSearchable = true,\n readOnly,\n defaultValue,\n errorPlace,\n onBlur,\n setFieldValue,\n render = true,\n singleValue,\n sortByUppercase,\n inputClassName,\n labelClassName,\n size = 'md',\n required,\n }: SelectProps<T>,\n forwardedRef: ForwardedRef<SelectHandle>,\n) {\n const adapters = useInconelAdapters()\n const legacyMode =\n singleValue !== undefined ||\n selectClassName !== undefined ||\n errorPlace !== undefined\n const controlledValue = value ?? setFieldValue ?? defaultValue ?? null\n const generatedId = useId()\n const inputId = id ?? `inconel-select-${generatedId.replace(/:/g, '')}`\n const labelId = `${inputId}-label`\n const listboxId = `${inputId}-listbox`\n const messageId = `${inputId}-message`\n const hintId = `${inputId}-hint`\n const rootRef = useRef<HTMLDivElement>(null)\n const inputRef = useRef<HTMLInputElement>(null)\n const menuRef = useRef<HTMLDivElement>(null)\n const [isOpen, setIsOpen] = useState(false)\n const [inputValue, setInputValue] = useState('')\n const [activeIndex, setActiveIndex] = useState(0)\n const [asyncOptions, setAsyncOptions] = useState<T[] | null>(null)\n const [isAsyncLoading, setIsAsyncLoading] = useState(false)\n const [hasAsyncError, setHasAsyncError] = useState(false)\n\n useEffect(() => {\n if (!loadOptions) return\n const controller = new AbortController()\n const timeout = window.setTimeout(async () => {\n setIsAsyncLoading(true)\n setHasAsyncError(false)\n try {\n const loadedOptions = await loadOptions(\n inputValue,\n controller.signal,\n )\n if (!controller.signal.aborted) setAsyncOptions(loadedOptions)\n } catch {\n if (!controller.signal.aborted) setHasAsyncError(true)\n } finally {\n if (!controller.signal.aborted) setIsAsyncLoading(false)\n }\n }, loadOptionsDebounceMs)\n\n return () => {\n window.clearTimeout(timeout)\n controller.abort()\n }\n }, [inputValue, loadOptions, loadOptionsDebounceMs])\n\n const availableOptions = loadOptions\n ? (asyncOptions ?? options)\n : options\n const loading = isLoading || isAsyncLoading\n const componentDisabled = isDisabled || Boolean(disabled)\n const componentReadOnly = isReadOnly || Boolean(readOnly)\n const componentRequired = isRequired || Boolean(required)\n const resolvedPlaceholder =\n (errorPlace === 'in' && errorMessage\n ? String(errorMessage)\n : placeholder) ??\n String(adapters.translate?.('select', 'Seçim yapın...') ?? 'Seçim yapın...')\n const resolvedNoOptionsMessage =\n noOptionsMessage ??\n adapters.translate?.('noData', 'Sonuç bulunamadı.') ??\n 'Sonuç bulunamadı.'\n const resolvedLoadingMessage =\n loadingMessage ??\n adapters.translate?.('loading', 'Yükleniyor...') ??\n 'Yükleniyor...'\n const resolvedClearLabel =\n clearButtonLabel ??\n String(adapters.translate?.('clearSelection', 'Seçimi temizle') ?? 'Seçimi temizle')\n const resolvedOpenLabel =\n openMenuButtonLabel ??\n String(adapters.translate?.('openOptions', 'Seçenekleri aç') ?? 'Seçenekleri aç')\n const resolvedCloseLabel =\n closeMenuButtonLabel ??\n String(adapters.translate?.('closeOptions', 'Seçenekleri kapat') ?? 'Seçenekleri kapat')\n\n const getLabel = useCallback(\n (option: T): ReactNode =>\n typeof optionLabel === 'function'\n ? optionLabel(option)\n : String(option[optionLabel]),\n [optionLabel],\n )\n\n const getSearchLabel = useCallback(\n (option: T) => {\n if (getOptionSearchText) return getOptionSearchText(option)\n const renderedLabel = getLabel(option)\n return typeof renderedLabel === 'string' ||\n typeof renderedLabel === 'number'\n ? String(renderedLabel)\n : ''\n },\n [getLabel, getOptionSearchText],\n )\n\n const getValue = useCallback(\n (option: T): OptionValue => {\n const resolvedValue =\n typeof optionValue === 'function'\n ? optionValue(option)\n : option[optionValue]\n\n if (\n typeof resolvedValue !== 'string' &&\n typeof resolvedValue !== 'number'\n ) {\n throw new TypeError('optionValue must resolve to a string or number.')\n }\n return resolvedValue\n },\n [optionValue],\n )\n\n const normalizedValue =\n controlledValue && typeof controlledValue === 'object'\n ? getValue(controlledValue as T)\n : (controlledValue as OptionValue | null)\n\n const emitChange = useCallback(\n (nextValue: OptionValue | null, option: T | null) => {\n if (!onChange) return\n if (legacyMode) {\n ;(onChange as (selected: T | null) => void)(option)\n } else {\n ;(\n onChange as (\n value: OptionValue | null,\n selected: T | null,\n ) => void\n )(nextValue, option)\n }\n },\n [legacyMode, onChange],\n )\n\n const duplicateValues = useMemo(() => {\n const seen = new Set<OptionValue>()\n return availableOptions\n .map(getValue)\n .filter((optionId) => {\n if (seen.has(optionId)) return true\n seen.add(optionId)\n return false\n })\n }, [availableOptions, getValue])\n\n useEffect(() => {\n if (duplicateValues.length) {\n console.warn(\n `Duplicate optionValue found in Select \"${label}\":`,\n duplicateValues,\n )\n }\n }, [duplicateValues, label])\n\n const selectedOption = [...options, ...availableOptions].find(\n (option) => getValue(option) === normalizedValue,\n )\n const selectedLabel = selectedOption ? getSearchLabel(selectedOption) : ''\n\n const filteredOptions = useMemo(() => {\n const query = inputValue.trim().toLocaleLowerCase(searchLocale)\n if (!query || loadOptions) return availableOptions\n return availableOptions.filter((option) =>\n getSearchLabel(option).toLocaleLowerCase(searchLocale).includes(query),\n )\n }, [availableOptions, getSearchLabel, inputValue, loadOptions, searchLocale])\n\n const { refs, floatingStyles } = useFloating({\n open: isOpen,\n placement: 'bottom-start',\n strategy: menuPortalTarget ? 'fixed' : 'absolute',\n whileElementsMounted: autoUpdate,\n middleware: [\n offset(8),\n flip({ padding: 12 }),\n shift({ padding: 12 }),\n floatingSize({\n padding: 12,\n apply({ availableHeight, rects, elements }) {\n Object.assign(elements.floating.style, {\n maxHeight: `${Math.min(230, availableHeight)}px`,\n width: `${rects.reference.width}px`,\n })\n },\n }),\n ],\n })\n\n const shouldVirtualize =\n virtualize || filteredOptions.length >= virtualizationThreshold\n const virtualizer = useVirtualizer({\n count: filteredOptions.length,\n getScrollElement: () => menuRef.current,\n estimateSize: () => optionHeight,\n overscan: 5,\n enabled: shouldVirtualize && isOpen,\n })\n\n const closeMenu = useCallback(() => {\n setIsOpen(false)\n setInputValue('')\n onInputChange?.('')\n onMenuClose?.()\n }, [onInputChange, onMenuClose])\n\n const openMenu = () => {\n if (componentDisabled || componentReadOnly) return\n if (!isOpen) onMenuOpen?.()\n setIsOpen(true)\n }\n\n const clearSelection = useCallback(() => {\n if (componentDisabled || componentReadOnly) return\n emitChange(null, null)\n setInputValue('')\n setActiveIndex(0)\n onInputChange?.('')\n inputRef.current?.focus()\n }, [componentDisabled, componentReadOnly, emitChange, onInputChange])\n\n useImperativeHandle(\n forwardedRef,\n () => ({\n focus: () => inputRef.current?.focus(),\n blur: () => inputRef.current?.blur(),\n clear: clearSelection,\n }),\n [clearSelection],\n )\n\n useEffect(() => {\n const closeOnOutsideClick = (event: MouseEvent) => {\n const target = event.target as Node\n if (\n !rootRef.current?.contains(target) &&\n !menuRef.current?.contains(target)\n ) {\n closeMenu()\n }\n }\n\n document.addEventListener('mousedown', closeOnOutsideClick)\n return () => document.removeEventListener('mousedown', closeOnOutsideClick)\n }, [closeMenu])\n\n useEffect(() => {\n if (activeIndex >= filteredOptions.length) setActiveIndex(0)\n }, [activeIndex, filteredOptions.length])\n\n useEffect(() => {\n if (shouldVirtualize && isOpen && filteredOptions[activeIndex]) {\n virtualizer.scrollToIndex(activeIndex, { align: 'auto' })\n }\n }, [\n activeIndex,\n filteredOptions,\n isOpen,\n shouldVirtualize,\n virtualizer,\n ])\n\n const selectOption = (option: T) => {\n if (isOptionDisabled(option)) return\n emitChange(getValue(option), option)\n closeMenu()\n inputRef.current?.focus()\n }\n\n const moveActiveOption = (direction: 1 | -1) => {\n if (!filteredOptions.length) return\n let nextIndex = activeIndex\n do {\n nextIndex =\n (nextIndex + direction + filteredOptions.length) %\n filteredOptions.length\n } while (\n isOptionDisabled(filteredOptions[nextIndex]) &&\n nextIndex !== activeIndex\n )\n setActiveIndex(nextIndex)\n }\n\n const findEnabledIndex = (fromEnd = false) => {\n const entries = filteredOptions.map((option, index) => ({ option, index }))\n if (fromEnd) entries.reverse()\n return entries.find(({ option }) => !isOptionDisabled(option))?.index ?? 0\n }\n\n const handleKeyDown = (event: KeyboardEvent<HTMLInputElement>) => {\n if (\n event.key === 'Backspace' &&\n !inputValue &&\n normalizedValue !== null &&\n isClearable\n ) {\n event.preventDefault()\n clearSelection()\n return\n }\n\n if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {\n event.preventDefault()\n if (!isOpen) {\n openMenu()\n setActiveIndex(findEnabledIndex(event.key === 'ArrowUp'))\n } else {\n moveActiveOption(event.key === 'ArrowDown' ? 1 : -1)\n }\n } else if (event.key === 'Home' && isOpen) {\n event.preventDefault()\n setActiveIndex(findEnabledIndex())\n } else if (event.key === 'End' && isOpen) {\n event.preventDefault()\n setActiveIndex(findEnabledIndex(true))\n } else if (event.key === 'Enter' && isOpen) {\n event.preventDefault()\n const activeOption = filteredOptions[activeIndex]\n if (activeOption) selectOption(activeOption)\n } else if (event.key === 'Escape' && isOpen) {\n event.preventDefault()\n closeMenu()\n } else if (event.key === 'Tab') {\n closeMenu()\n }\n }\n\n const renderOption = (option: T, index: number, style?: CSSProperties) => {\n const optionId = getValue(option)\n const disabled = isOptionDisabled(option)\n return (\n <div\n id={`${inputId}-option-${index}`}\n key={optionId}\n role=\"option\"\n aria-selected={optionId === normalizedValue}\n aria-disabled={disabled}\n aria-posinset={index + 1}\n aria-setsize={filteredOptions.length}\n className={mergeClassNames(\n 'inconel-select-option',\n index === activeIndex && 'inconel-is-active',\n optionId === normalizedValue && 'inconel-is-selected',\n disabled && 'inconel-is-disabled',\n classNames.option,\n )}\n style={{ ...style, ...styles.option }}\n onMouseEnter={() => setActiveIndex(index)}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => selectOption(option)}\n >\n <span>{getLabel(option)}</span>\n {optionId === normalizedValue && <span aria-hidden=\"true\">✓</span>}\n </div>\n )\n }\n\n const menuContent = loading ? (\n <div\n role=\"status\"\n className={mergeClassNames('inconel-select-message', classNames.message)}\n style={styles.message}\n >\n <span className=\"inconel-select-spinner\" aria-hidden=\"true\" />\n {resolvedLoadingMessage}\n </div>\n ) : hasAsyncError ? (\n <div\n role=\"alert\"\n className={mergeClassNames('inconel-select-message inconel-select-message-error', classNames.message)}\n style={styles.message}\n >\n {asyncErrorMessage}\n </div>\n ) : filteredOptions.length === 0 ? (\n <div\n className={mergeClassNames('inconel-select-message', classNames.message)}\n style={styles.message}\n >\n {resolvedNoOptionsMessage}\n </div>\n ) : shouldVirtualize ? (\n <div\n role=\"presentation\"\n className=\"inconel-select-virtual-content\"\n style={{ height: virtualizer.getTotalSize() }}\n >\n {virtualizer.getVirtualItems().map((virtualRow) =>\n renderOption(filteredOptions[virtualRow.index], virtualRow.index, {\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: virtualRow.size,\n transform: `translateY(${virtualRow.start}px)`,\n }),\n )}\n </div>\n ) : (\n filteredOptions.map((option, index) => renderOption(option, index))\n )\n\n const menu = isOpen ? (\n <div\n ref={(node) => {\n menuRef.current = node\n refs.setFloating(node)\n }}\n id={listboxId}\n role=\"listbox\"\n aria-labelledby={labelId}\n className={mergeClassNames(\n 'inconel-select-menu',\n menuPortalTarget && 'inconel-select-menu-portal',\n classNames.menu,\n )}\n style={{ ...floatingStyles, ...styles.menu }}\n >\n {menuContent}\n </div>\n ) : null\n\n const describedBy = errorMessage ? messageId : hint ? hintId : undefined\n\n if (!render) return null\n\n return (\n <div\n ref={rootRef}\n className={mergeClassNames(\n 'inconel-select-field',\n `inconel-size-${size}`,\n `inconel-select-field--${size}`,\n className,\n classNames.root,\n )}\n style={styles.root}\n >\n <label\n id={labelId}\n htmlFor={inputId}\n className={mergeClassNames(classNames.label, labelClassName)}\n style={styles.label}\n >\n {label}\n {componentRequired && <span aria-hidden=\"true\"> *</span>}\n </label>\n <div\n ref={refs.setReference}\n className={mergeClassNames(\n 'inconel-select-control',\n isOpen && 'inconel-is-open',\n componentDisabled && 'inconel-is-disabled',\n Boolean(errorMessage) && 'inconel-has-error',\n classNames.control,\n )}\n style={styles.control}\n >\n <input\n ref={inputRef}\n id={inputId}\n role=\"combobox\"\n aria-expanded={isOpen}\n aria-controls={listboxId}\n aria-autocomplete=\"list\"\n aria-activedescendant={\n isOpen && filteredOptions[activeIndex]\n ? `${inputId}-option-${activeIndex}`\n : undefined\n }\n aria-describedby={describedBy}\n aria-invalid={Boolean(errorMessage)}\n aria-required={isRequired}\n aria-busy={loading}\n required={componentRequired}\n disabled={componentDisabled}\n readOnly={componentReadOnly || !isSearchable}\n autoFocus={autoFocus}\n autoComplete=\"off\"\n placeholder={resolvedPlaceholder}\n value={inputValue || selectedLabel}\n className={mergeClassNames(classNames.input, inputClassName, selectClassName)}\n style={styles.input}\n onChange={(event) => {\n const nextInput = sortByUppercase\n ? event.target.value.toLocaleUpperCase(\n adapters.locale ?? 'tr-TR',\n )\n : event.target.value\n setInputValue(nextInput)\n setActiveIndex(0)\n onInputChange?.(nextInput)\n openMenu()\n }}\n onClick={openMenu}\n onFocus={(event) => {\n openMenu()\n if (selectedOption && !inputValue) event.currentTarget.select()\n }}\n onBlur={onBlur}\n onKeyDown={handleKeyDown}\n />\n {loading && <span className=\"inconel-select-spinner\" aria-hidden=\"true\" />}\n {isClearable && normalizedValue !== null && !componentDisabled && !componentReadOnly && (\n <button\n type=\"button\"\n className={mergeClassNames('inconel-select-clear', classNames.clearButton)}\n style={styles.clearButton}\n aria-label={resolvedClearLabel}\n onClick={clearSelection}\n >\n ×\n </button>\n )}\n <button\n type=\"button\"\n className={mergeClassNames('inconel-select-toggle', classNames.toggleButton)}\n style={styles.toggleButton}\n aria-label={isOpen ? resolvedCloseLabel : resolvedOpenLabel}\n aria-expanded={isOpen}\n disabled={componentDisabled}\n tabIndex={-1}\n onClick={() => (isOpen ? closeMenu() : openMenu())}\n >\n <svg\n aria-hidden=\"true\"\n viewBox=\"0 0 20 20\"\n width=\"20\"\n height=\"20\"\n fill=\"none\"\n >\n <path\n d=\"m5 7.5 5 5 5-5\"\n stroke=\"currentColor\"\n strokeWidth=\"1.75\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </button>\n </div>\n\n {name && (\n <input\n type=\"hidden\"\n name={name}\n value={normalizedValue ?? ''}\n required={componentRequired}\n />\n )}\n <FieldFeedback\n hint={hint}\n errorMessage={errorPlace === 'in' ? undefined : errorMessage}\n hintId={hintId}\n errorId={messageId}\n />\n\n {menuPortalTarget && menu\n ? createPortal(menu, menuPortalTarget)\n : menu}\n </div>\n )\n}\n\nconst Select = forwardRef(SelectInner) as <T extends object>(\n props: SelectProps<T> & { ref?: ForwardedRef<SelectHandle> },\n) => ReactNode\n\nexport default Select\n"],"names":["SelectInner","id","name","label","options","value","onChange","optionLabel","optionValue","getOptionSearchText","isOptionDisabled","placeholder","isClearable","isDisabled","isReadOnly","isRequired","isLoading","loadOptions","loadOptionsDebounceMs","hint","errorMessage","asyncErrorMessage","loadingMessage","noOptionsMessage","clearButtonLabel","openMenuButtonLabel","closeMenuButtonLabel","searchLocale","menuPortalTarget","virtualize","virtualizationThreshold","optionHeight","className","classNames","styles","onInputChange","onMenuOpen","onMenuClose","autoFocus","selectClassName","disabled","isSearchable","readOnly","defaultValue","errorPlace","onBlur","setFieldValue","render","singleValue","sortByUppercase","inputClassName","labelClassName","size","required","forwardedRef","adapters","useInconelAdapters","legacyMode","controlledValue","generatedId","useId","inputId","labelId","listboxId","messageId","hintId","rootRef","useRef","inputRef","menuRef","isOpen","setIsOpen","useState","inputValue","setInputValue","activeIndex","setActiveIndex","asyncOptions","setAsyncOptions","isAsyncLoading","setIsAsyncLoading","hasAsyncError","setHasAsyncError","useEffect","controller","timeout","loadedOptions","availableOptions","loading","componentDisabled","componentReadOnly","componentRequired","resolvedPlaceholder","resolvedNoOptionsMessage","resolvedLoadingMessage","resolvedClearLabel","resolvedOpenLabel","resolvedCloseLabel","getLabel","useCallback","option","getSearchLabel","renderedLabel","getValue","resolvedValue","normalizedValue","emitChange","nextValue","duplicateValues","useMemo","seen","optionId","selectedOption","selectedLabel","filteredOptions","query","refs","floatingStyles","useFloating","autoUpdate","offset","flip","shift","floatingSize","availableHeight","rects","elements","shouldVirtualize","virtualizer","useVirtualizer","closeMenu","openMenu","clearSelection","useImperativeHandle","closeOnOutsideClick","event","target","selectOption","moveActiveOption","direction","nextIndex","findEnabledIndex","fromEnd","entries","index","handleKeyDown","activeOption","renderOption","style","jsxs","mergeClassNames","jsx","menuContent","virtualRow","menu","node","describedBy","nextInput","FieldFeedback","createPortal","Select","forwardRef"],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ import { jsxs as l, jsx as r } from "react/jsx-runtime";
2
+ import { useRef as h, useState as p, useMemo as y, useEffect as k } from "react";
3
+ import { classNames as c } from "../shared/classNames.js";
4
+ /* empty css */
5
+ function x({
6
+ tabs: i = [],
7
+ activeKey: f,
8
+ onChange: a,
9
+ className: d
10
+ }) {
11
+ const s = h({}), [o, m] = p({ left: 0, width: 0 }), t = y(
12
+ () => i.filter((e) => e.show !== !1),
13
+ [i]
14
+ ), n = t.find((e) => e.key === f) ?? t[0];
15
+ return k(() => {
16
+ if (!n) return;
17
+ const e = s.current[String(n.key)];
18
+ e && m({ left: e.offsetLeft, width: e.offsetWidth });
19
+ }, [n, t]), t.length ? /* @__PURE__ */ l("div", { className: c("inconel-slide-tabs", d), children: [
20
+ /* @__PURE__ */ r(
21
+ "div",
22
+ {
23
+ className: "inconel-slide-tabs__indicator",
24
+ style: {
25
+ width: o.width,
26
+ transform: `translateX(${o.left}px)`
27
+ }
28
+ }
29
+ ),
30
+ t.map((e) => /* @__PURE__ */ l(
31
+ "button",
32
+ {
33
+ ref: (u) => {
34
+ s.current[String(e.key)] = u;
35
+ },
36
+ type: "button",
37
+ className: c(
38
+ "inconel-slide-tabs__item",
39
+ n.key === e.key && "inconel-is-active"
40
+ ),
41
+ onClick: () => a?.(e.key),
42
+ children: [
43
+ e.label,
44
+ typeof e.count == "number" && e.count > 0 && /* @__PURE__ */ r("span", { className: "inconel-slide-tabs__count", children: e.count })
45
+ ]
46
+ },
47
+ e.key
48
+ ))
49
+ ] }) : null;
50
+ }
51
+ export {
52
+ x as SlideTabs
53
+ };
54
+ //# sourceMappingURL=SlideTabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlideTabs.js","sources":["../../../src/components/SlideTabs/SlideTabs.tsx"],"sourcesContent":["import {\n useEffect,\n useMemo,\n useRef,\n useState,\n type ReactNode,\n} from 'react'\n\nimport { classNames } from '../shared/classNames'\nimport './styles.css'\n\nexport interface SlideTab {\n key: string | number\n label: ReactNode\n count?: ReactNode\n show?: boolean\n}\n\nexport interface SlideTabsProps {\n tabs?: SlideTab[]\n activeKey?: string | number | null\n onChange?: (key: string | number) => void\n className?: string | null\n}\n\nexport function SlideTabs({\n tabs = [],\n activeKey,\n onChange,\n className,\n}: SlideTabsProps) {\n const refs = useRef<Record<string, HTMLButtonElement | null>>({})\n const [indicator, setIndicator] = useState({ left: 0, width: 0 })\n const visibleTabs = useMemo(\n () => tabs.filter((tab) => tab.show !== false),\n [tabs],\n )\n const active =\n visibleTabs.find((tab) => tab.key === activeKey) ?? visibleTabs[0]\n\n useEffect(() => {\n if (!active) return\n const element = refs.current[String(active.key)]\n if (element) {\n setIndicator({ left: element.offsetLeft, width: element.offsetWidth })\n }\n }, [active, visibleTabs])\n\n if (!visibleTabs.length) return null\n\n return (\n <div className={classNames('inconel-slide-tabs', className)}>\n <div\n className=\"inconel-slide-tabs__indicator\"\n style={{\n width: indicator.width,\n transform: `translateX(${indicator.left}px)`,\n }}\n />\n {visibleTabs.map((tab) => (\n <button\n key={tab.key}\n ref={(element) => {\n refs.current[String(tab.key)] = element\n }}\n type=\"button\"\n className={classNames(\n 'inconel-slide-tabs__item',\n active.key === tab.key && 'inconel-is-active',\n )}\n onClick={() => onChange?.(tab.key)}\n >\n {tab.label}\n {typeof tab.count === 'number' && tab.count > 0 && (\n <span className=\"inconel-slide-tabs__count\">{tab.count}</span>\n )}\n </button>\n ))}\n </div>\n )\n}\n"],"names":["SlideTabs","tabs","activeKey","onChange","className","refs","useRef","indicator","setIndicator","useState","visibleTabs","useMemo","tab","active","useEffect","element","classNames","jsx","jsxs"],"mappings":";;;;AAyBO,SAASA,EAAU;AAAA,EACxB,MAAAC,IAAO,CAAA;AAAA,EACP,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AACF,GAAmB;AACjB,QAAMC,IAAOC,EAAiD,EAAE,GAC1D,CAACC,GAAWC,CAAY,IAAIC,EAAS,EAAE,MAAM,GAAG,OAAO,GAAG,GAC1DC,IAAcC;AAAA,IAClB,MAAMV,EAAK,OAAO,CAACW,MAAQA,EAAI,SAAS,EAAK;AAAA,IAC7C,CAACX,CAAI;AAAA,EAAA,GAEDY,IACJH,EAAY,KAAK,CAACE,MAAQA,EAAI,QAAQV,CAAS,KAAKQ,EAAY,CAAC;AAUnE,SARAI,EAAU,MAAM;AACd,QAAI,CAACD,EAAQ;AACb,UAAME,IAAUV,EAAK,QAAQ,OAAOQ,EAAO,GAAG,CAAC;AAC/C,IAAIE,KACFP,EAAa,EAAE,MAAMO,EAAQ,YAAY,OAAOA,EAAQ,aAAa;AAAA,EAEzE,GAAG,CAACF,GAAQH,CAAW,CAAC,GAEnBA,EAAY,2BAGd,OAAA,EAAI,WAAWM,EAAW,sBAAsBZ,CAAS,GACxD,UAAA;AAAA,IAAA,gBAAAa;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAU;AAAA,QACV,OAAO;AAAA,UACL,OAAOV,EAAU;AAAA,UACjB,WAAW,cAAcA,EAAU,IAAI;AAAA,QAAA;AAAA,MACzC;AAAA,IAAA;AAAA,IAEDG,EAAY,IAAI,CAACE,MAChB,gBAAAM;AAAA,MAAC;AAAA,MAAA;AAAA,QAEC,KAAK,CAACH,MAAY;AAChB,UAAAV,EAAK,QAAQ,OAAOO,EAAI,GAAG,CAAC,IAAIG;AAAA,QAClC;AAAA,QACA,MAAK;AAAA,QACL,WAAWC;AAAA,UACT;AAAA,UACAH,EAAO,QAAQD,EAAI,OAAO;AAAA,QAAA;AAAA,QAE5B,SAAS,MAAMT,IAAWS,EAAI,GAAG;AAAA,QAEhC,UAAA;AAAA,UAAAA,EAAI;AAAA,UACJ,OAAOA,EAAI,SAAU,YAAYA,EAAI,QAAQ,KAC5C,gBAAAK,EAAC,QAAA,EAAK,WAAU,6BAA6B,UAAAL,EAAI,MAAA,CAAM;AAAA,QAAA;AAAA,MAAA;AAAA,MAbpDA,EAAI;AAAA,IAAA,CAgBZ;AAAA,EAAA,GACH,IA9B8B;AAgClC;"}