@weavix/tracker-components 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (734) hide show
  1. package/README.md +54 -0
  2. package/build/cjs/assets/icons/issue-type/bug.d.ts +4 -0
  3. package/build/cjs/assets/icons/issue-type/bug.js +23 -0
  4. package/build/cjs/assets/icons/issue-type/bug.js.map +1 -0
  5. package/build/cjs/assets/icons/issue-type/design.d.ts +4 -0
  6. package/build/cjs/assets/icons/issue-type/design.js +23 -0
  7. package/build/cjs/assets/icons/issue-type/design.js.map +1 -0
  8. package/build/cjs/assets/icons/issue-type/epic.d.ts +4 -0
  9. package/build/cjs/assets/icons/issue-type/epic.js +23 -0
  10. package/build/cjs/assets/icons/issue-type/epic.js.map +1 -0
  11. package/build/cjs/assets/icons/issue-type/improvement.d.ts +4 -0
  12. package/build/cjs/assets/icons/issue-type/improvement.js +23 -0
  13. package/build/cjs/assets/icons/issue-type/improvement.js.map +1 -0
  14. package/build/cjs/assets/icons/issue-type/incident.d.ts +4 -0
  15. package/build/cjs/assets/icons/issue-type/incident.js +23 -0
  16. package/build/cjs/assets/icons/issue-type/incident.js.map +1 -0
  17. package/build/cjs/assets/icons/issue-type/info.d.ts +4 -0
  18. package/build/cjs/assets/icons/issue-type/info.js +23 -0
  19. package/build/cjs/assets/icons/issue-type/info.js.map +1 -0
  20. package/build/cjs/assets/icons/issue-type/milestone.d.ts +4 -0
  21. package/build/cjs/assets/icons/issue-type/milestone.js +27 -0
  22. package/build/cjs/assets/icons/issue-type/milestone.js.map +1 -0
  23. package/build/cjs/assets/icons/issue-type/new-feature.d.ts +4 -0
  24. package/build/cjs/assets/icons/issue-type/new-feature.js +23 -0
  25. package/build/cjs/assets/icons/issue-type/new-feature.js.map +1 -0
  26. package/build/cjs/assets/icons/issue-type/query.d.ts +4 -0
  27. package/build/cjs/assets/icons/issue-type/query.js +23 -0
  28. package/build/cjs/assets/icons/issue-type/query.js.map +1 -0
  29. package/build/cjs/assets/icons/issue-type/refactoring.d.ts +4 -0
  30. package/build/cjs/assets/icons/issue-type/refactoring.js +23 -0
  31. package/build/cjs/assets/icons/issue-type/refactoring.js.map +1 -0
  32. package/build/cjs/assets/icons/issue-type/release.d.ts +4 -0
  33. package/build/cjs/assets/icons/issue-type/release.js +23 -0
  34. package/build/cjs/assets/icons/issue-type/release.js.map +1 -0
  35. package/build/cjs/assets/icons/issue-type/research.d.ts +4 -0
  36. package/build/cjs/assets/icons/issue-type/research.js +23 -0
  37. package/build/cjs/assets/icons/issue-type/research.js.map +1 -0
  38. package/build/cjs/assets/icons/issue-type/service-request.d.ts +4 -0
  39. package/build/cjs/assets/icons/issue-type/service-request.js +23 -0
  40. package/build/cjs/assets/icons/issue-type/service-request.js.map +1 -0
  41. package/build/cjs/assets/icons/issue-type/story.d.ts +4 -0
  42. package/build/cjs/assets/icons/issue-type/story.js +23 -0
  43. package/build/cjs/assets/icons/issue-type/story.js.map +1 -0
  44. package/build/cjs/assets/icons/issue-type/subbug.d.ts +4 -0
  45. package/build/cjs/assets/icons/issue-type/subbug.js +23 -0
  46. package/build/cjs/assets/icons/issue-type/subbug.js.map +1 -0
  47. package/build/cjs/assets/icons/issue-type/subtask.d.ts +4 -0
  48. package/build/cjs/assets/icons/issue-type/subtask.js +23 -0
  49. package/build/cjs/assets/icons/issue-type/subtask.js.map +1 -0
  50. package/build/cjs/assets/icons/issue-type/task.d.ts +4 -0
  51. package/build/cjs/assets/icons/issue-type/task.js +23 -0
  52. package/build/cjs/assets/icons/issue-type/task.js.map +1 -0
  53. package/build/cjs/assets/icons/issue-type/technical-debt.d.ts +4 -0
  54. package/build/cjs/assets/icons/issue-type/technical-debt.js +23 -0
  55. package/build/cjs/assets/icons/issue-type/technical-debt.js.map +1 -0
  56. package/build/cjs/assets/icons/portfolio.d.ts +4 -0
  57. package/build/cjs/assets/icons/portfolio.js +27 -0
  58. package/build/cjs/assets/icons/portfolio.js.map +1 -0
  59. package/build/cjs/components/FieldsSelect/FieldsSelect.classname.d.ts +1 -0
  60. package/build/cjs/components/FieldsSelect/FieldsSelect.classname.js +9 -0
  61. package/build/cjs/components/FieldsSelect/FieldsSelect.classname.js.map +1 -0
  62. package/build/cjs/components/FieldsSelect/FieldsSelect.css +41 -0
  63. package/build/cjs/components/FieldsSelect/FieldsSelect.css.map +1 -0
  64. package/build/cjs/components/FieldsSelect/FieldsSelect.d.ts +29 -0
  65. package/build/cjs/components/FieldsSelect/FieldsSelect.js +281 -0
  66. package/build/cjs/components/FieldsSelect/FieldsSelect.js.map +1 -0
  67. package/build/cjs/components/FieldsSelect/components/FieldsActions/FieldsActions.d.ts +7 -0
  68. package/build/cjs/components/FieldsSelect/components/FieldsActions/FieldsActions.js +38 -0
  69. package/build/cjs/components/FieldsSelect/components/FieldsActions/FieldsActions.js.map +1 -0
  70. package/build/cjs/components/FieldsSelect/components/FieldsActions/constants.d.ts +2 -0
  71. package/build/cjs/components/FieldsSelect/components/FieldsActions/constants.js +8 -0
  72. package/build/cjs/components/FieldsSelect/components/FieldsActions/constants.js.map +1 -0
  73. package/build/cjs/components/FieldsSelect/components/FieldsActions/i18n.d.ts +244 -0
  74. package/build/cjs/components/FieldsSelect/components/FieldsActions/i18n.js +251 -0
  75. package/build/cjs/components/FieldsSelect/components/FieldsActions/i18n.js.map +1 -0
  76. package/build/cjs/components/FieldsSelect/hooks/useSearch.d.ts +8 -0
  77. package/build/cjs/components/FieldsSelect/hooks/useSearch.js +34 -0
  78. package/build/cjs/components/FieldsSelect/hooks/useSearch.js.map +1 -0
  79. package/build/cjs/components/FieldsSelect/i18n.d.ts +14 -0
  80. package/build/cjs/components/FieldsSelect/i18n.js +21 -0
  81. package/build/cjs/components/FieldsSelect/i18n.js.map +1 -0
  82. package/build/cjs/components/FieldsSelect/index.d.ts +2 -0
  83. package/build/cjs/components/FieldsSelect/index.js +13 -0
  84. package/build/cjs/components/FieldsSelect/index.js.map +1 -0
  85. package/build/cjs/components/FieldsSelect/utils/filterGroups.d.ts +6 -0
  86. package/build/cjs/components/FieldsSelect/utils/filterGroups.js +48 -0
  87. package/build/cjs/components/FieldsSelect/utils/filterGroups.js.map +1 -0
  88. package/build/cjs/components/FieldsSelect/utils/getGroupId.d.ts +5 -0
  89. package/build/cjs/components/FieldsSelect/utils/getGroupId.js +15 -0
  90. package/build/cjs/components/FieldsSelect/utils/getGroupId.js.map +1 -0
  91. package/build/cjs/components/FieldsSelect/utils/getGroupName.d.ts +5 -0
  92. package/build/cjs/components/FieldsSelect/utils/getGroupName.js +16 -0
  93. package/build/cjs/components/FieldsSelect/utils/getGroupName.js.map +1 -0
  94. package/build/cjs/components/FieldsSelect/utils/splitGroupsByTags.d.ts +7 -0
  95. package/build/cjs/components/FieldsSelect/utils/splitGroupsByTags.js +116 -0
  96. package/build/cjs/components/FieldsSelect/utils/splitGroupsByTags.js.map +1 -0
  97. package/build/cjs/components/Icon/EntityIcon/EntityIcon.classname.d.ts +1 -0
  98. package/build/cjs/components/Icon/EntityIcon/EntityIcon.classname.js +9 -0
  99. package/build/cjs/components/Icon/EntityIcon/EntityIcon.classname.js.map +1 -0
  100. package/build/cjs/components/Icon/EntityIcon/EntityIcon.css +7 -0
  101. package/build/cjs/components/Icon/EntityIcon/EntityIcon.css.map +1 -0
  102. package/build/cjs/components/Icon/EntityIcon/EntityIcon.d.ts +16 -0
  103. package/build/cjs/components/Icon/EntityIcon/EntityIcon.js +59 -0
  104. package/build/cjs/components/Icon/EntityIcon/EntityIcon.js.map +1 -0
  105. package/build/cjs/components/Icon/EntityIcon/index.d.ts +2 -0
  106. package/build/cjs/components/Icon/EntityIcon/index.js +13 -0
  107. package/build/cjs/components/Icon/EntityIcon/index.js.map +1 -0
  108. package/build/cjs/components/Icon/Icon.classname.d.ts +1 -0
  109. package/build/cjs/components/Icon/Icon.classname.js +9 -0
  110. package/build/cjs/components/Icon/Icon.classname.js.map +1 -0
  111. package/build/cjs/components/Icon/Icon.css +33 -0
  112. package/build/cjs/components/Icon/Icon.css.map +1 -0
  113. package/build/cjs/components/Icon/IconRefuge/IconRefuge.classname.d.ts +1 -0
  114. package/build/cjs/components/Icon/IconRefuge/IconRefuge.classname.js +9 -0
  115. package/build/cjs/components/Icon/IconRefuge/IconRefuge.classname.js.map +1 -0
  116. package/build/cjs/components/Icon/IconRefuge/IconRefuge.css +19 -0
  117. package/build/cjs/components/Icon/IconRefuge/IconRefuge.css.map +1 -0
  118. package/build/cjs/components/Icon/IconRefuge/IconRefuge.d.ts +9 -0
  119. package/build/cjs/components/Icon/IconRefuge/IconRefuge.js +55 -0
  120. package/build/cjs/components/Icon/IconRefuge/IconRefuge.js.map +1 -0
  121. package/build/cjs/components/Icon/IconRefuge/index.d.ts +2 -0
  122. package/build/cjs/components/Icon/IconRefuge/index.js +13 -0
  123. package/build/cjs/components/Icon/IconRefuge/index.js.map +1 -0
  124. package/build/cjs/components/Icon/IconRefuge/types.d.ts +11 -0
  125. package/build/cjs/components/Icon/IconRefuge/types.js +6 -0
  126. package/build/cjs/components/Icon/IconRefuge/types.js.map +1 -0
  127. package/build/cjs/components/Icon/IssueTypeIcon/IssueTypeIcon.classname.d.ts +1 -0
  128. package/build/cjs/components/Icon/IssueTypeIcon/IssueTypeIcon.classname.js +9 -0
  129. package/build/cjs/components/Icon/IssueTypeIcon/IssueTypeIcon.classname.js.map +1 -0
  130. package/build/cjs/components/Icon/IssueTypeIcon/IssueTypeIcon.css +4 -0
  131. package/build/cjs/components/Icon/IssueTypeIcon/IssueTypeIcon.css.map +1 -0
  132. package/build/cjs/components/Icon/IssueTypeIcon/IssueTypeIcon.d.ts +10 -0
  133. package/build/cjs/components/Icon/IssueTypeIcon/IssueTypeIcon.js +102 -0
  134. package/build/cjs/components/Icon/IssueTypeIcon/IssueTypeIcon.js.map +1 -0
  135. package/build/cjs/components/Icon/IssueTypeIcon/README.md +40 -0
  136. package/build/cjs/components/Icon/IssueTypeIcon/i18n.d.ts +6 -0
  137. package/build/cjs/components/Icon/IssueTypeIcon/i18n.js +13 -0
  138. package/build/cjs/components/Icon/IssueTypeIcon/i18n.js.map +1 -0
  139. package/build/cjs/components/Icon/IssueTypeIcon/index.d.ts +3 -0
  140. package/build/cjs/components/Icon/IssueTypeIcon/index.js +13 -0
  141. package/build/cjs/components/Icon/IssueTypeIcon/index.js.map +1 -0
  142. package/build/cjs/components/Icon/IssueTypeIcon/types.d.ts +1 -0
  143. package/build/cjs/components/Icon/IssueTypeIcon/types.js +6 -0
  144. package/build/cjs/components/Icon/IssueTypeIcon/types.js.map +1 -0
  145. package/build/cjs/components/Icon/PortfolioIcon/PortfolioIcon.d.ts +6 -0
  146. package/build/cjs/components/Icon/PortfolioIcon/PortfolioIcon.js +26 -0
  147. package/build/cjs/components/Icon/PortfolioIcon/PortfolioIcon.js.map +1 -0
  148. package/build/cjs/components/Icon/PortfolioIcon/README.md +51 -0
  149. package/build/cjs/components/Icon/ProjectIcon/ProjectIcon.d.ts +6 -0
  150. package/build/cjs/components/Icon/ProjectIcon/ProjectIcon.js +24 -0
  151. package/build/cjs/components/Icon/ProjectIcon/ProjectIcon.js.map +1 -0
  152. package/build/cjs/components/Icon/ProjectIcon/README.md +51 -0
  153. package/build/cjs/components/Icon/index.d.ts +3 -0
  154. package/build/cjs/components/Icon/index.js +39 -0
  155. package/build/cjs/components/Icon/index.js.map +1 -0
  156. package/build/cjs/components/PluginFieldsSelect/PluginFieldsSelect.d.ts +13 -0
  157. package/build/cjs/components/PluginFieldsSelect/PluginFieldsSelect.js +50 -0
  158. package/build/cjs/components/PluginFieldsSelect/PluginFieldsSelect.js.map +1 -0
  159. package/build/cjs/components/PluginFieldsSelect/README.md +486 -0
  160. package/build/cjs/components/PluginFieldsSelect/index.d.ts +2 -0
  161. package/build/cjs/components/PluginFieldsSelect/index.js +13 -0
  162. package/build/cjs/components/PluginFieldsSelect/index.js.map +1 -0
  163. package/build/cjs/components/QueueIcon/QueueIcon.classname.d.ts +1 -0
  164. package/build/cjs/components/QueueIcon/QueueIcon.classname.js +9 -0
  165. package/build/cjs/components/QueueIcon/QueueIcon.classname.js.map +1 -0
  166. package/build/cjs/components/QueueIcon/QueueIcon.css +8 -0
  167. package/build/cjs/components/QueueIcon/QueueIcon.css.map +1 -0
  168. package/build/cjs/components/QueueIcon/QueueIcon.d.ts +9 -0
  169. package/build/cjs/components/QueueIcon/QueueIcon.js +44 -0
  170. package/build/cjs/components/QueueIcon/QueueIcon.js.map +1 -0
  171. package/build/cjs/components/QueueIcon/index.d.ts +2 -0
  172. package/build/cjs/components/QueueIcon/index.js +13 -0
  173. package/build/cjs/components/QueueIcon/index.js.map +1 -0
  174. package/build/cjs/components/QueueSelect/QueueSelect.classname.d.ts +1 -0
  175. package/build/cjs/components/QueueSelect/QueueSelect.classname.js +9 -0
  176. package/build/cjs/components/QueueSelect/QueueSelect.classname.js.map +1 -0
  177. package/build/cjs/components/QueueSelect/QueueSelect.css +113 -0
  178. package/build/cjs/components/QueueSelect/QueueSelect.css.map +1 -0
  179. package/build/cjs/components/QueueSelect/QueueSelect.d.ts +32 -0
  180. package/build/cjs/components/QueueSelect/QueueSelect.js +254 -0
  181. package/build/cjs/components/QueueSelect/QueueSelect.js.map +1 -0
  182. package/build/cjs/components/QueueSelect/README.md +249 -0
  183. package/build/cjs/components/QueueSelect/constants.d.ts +2 -0
  184. package/build/cjs/components/QueueSelect/constants.js +14 -0
  185. package/build/cjs/components/QueueSelect/constants.js.map +1 -0
  186. package/build/cjs/components/QueueSelect/i18n.d.ts +34 -0
  187. package/build/cjs/components/QueueSelect/i18n.js +41 -0
  188. package/build/cjs/components/QueueSelect/i18n.js.map +1 -0
  189. package/build/cjs/components/QueueSelect/index.d.ts +3 -0
  190. package/build/cjs/components/QueueSelect/index.js +13 -0
  191. package/build/cjs/components/QueueSelect/index.js.map +1 -0
  192. package/build/cjs/components/QueueSelect/types.d.ts +12 -0
  193. package/build/cjs/components/QueueSelect/types.js +6 -0
  194. package/build/cjs/components/QueueSelect/types.js.map +1 -0
  195. package/build/cjs/components/QueueSelect/utils/filterQueues.d.ts +2 -0
  196. package/build/cjs/components/QueueSelect/utils/filterQueues.js +22 -0
  197. package/build/cjs/components/QueueSelect/utils/filterQueues.js.map +1 -0
  198. package/build/cjs/components/QueueSelect/utils/mapQueueToSelectItem.d.ts +8 -0
  199. package/build/cjs/components/QueueSelect/utils/mapQueueToSelectItem.js +42 -0
  200. package/build/cjs/components/QueueSelect/utils/mapQueueToSelectItem.js.map +1 -0
  201. package/build/cjs/components/QueueSelect/utils/normalizeQueue.d.ts +2 -0
  202. package/build/cjs/components/QueueSelect/utils/normalizeQueue.js +15 -0
  203. package/build/cjs/components/QueueSelect/utils/normalizeQueue.js.map +1 -0
  204. package/build/cjs/components/QueueSelect/utils/renderDisplayValue.d.ts +5 -0
  205. package/build/cjs/components/QueueSelect/utils/renderDisplayValue.js +42 -0
  206. package/build/cjs/components/QueueSelect/utils/renderDisplayValue.js.map +1 -0
  207. package/build/cjs/components/Select/Autocomplete.d.ts +11 -0
  208. package/build/cjs/components/Select/Autocomplete.js +36 -0
  209. package/build/cjs/components/Select/Autocomplete.js.map +1 -0
  210. package/build/cjs/components/Select/MultiAutocomplete.d.ts +13 -0
  211. package/build/cjs/components/Select/MultiAutocomplete.js +69 -0
  212. package/build/cjs/components/Select/MultiAutocomplete.js.map +1 -0
  213. package/build/cjs/components/Select/MultiSelect.d.ts +22 -0
  214. package/build/cjs/components/Select/MultiSelect.js +279 -0
  215. package/build/cjs/components/Select/MultiSelect.js.map +1 -0
  216. package/build/cjs/components/Select/Select.classname.d.ts +1 -0
  217. package/build/cjs/components/Select/Select.classname.js +9 -0
  218. package/build/cjs/components/Select/Select.classname.js.map +1 -0
  219. package/build/cjs/components/Select/Select.css +121 -0
  220. package/build/cjs/components/Select/Select.css.map +1 -0
  221. package/build/cjs/components/Select/Select.d.ts +10 -0
  222. package/build/cjs/components/Select/Select.js +33 -0
  223. package/build/cjs/components/Select/Select.js.map +1 -0
  224. package/build/cjs/components/Select/SelectSearch/SelectSearch.classname.d.ts +1 -0
  225. package/build/cjs/components/Select/SelectSearch/SelectSearch.classname.js +9 -0
  226. package/build/cjs/components/Select/SelectSearch/SelectSearch.classname.js.map +1 -0
  227. package/build/cjs/components/Select/SelectSearch/SelectSearch.css +50 -0
  228. package/build/cjs/components/Select/SelectSearch/SelectSearch.css.map +1 -0
  229. package/build/cjs/components/Select/SelectSearch/SelectSearch.d.ts +20 -0
  230. package/build/cjs/components/Select/SelectSearch/SelectSearch.js +63 -0
  231. package/build/cjs/components/Select/SelectSearch/SelectSearch.js.map +1 -0
  232. package/build/cjs/components/Select/SelectSearch/hooks/useSelectSearch.d.ts +11 -0
  233. package/build/cjs/components/Select/SelectSearch/hooks/useSelectSearch.js +50 -0
  234. package/build/cjs/components/Select/SelectSearch/hooks/useSelectSearch.js.map +1 -0
  235. package/build/cjs/components/Select/SelectSearch/types.d.ts +5 -0
  236. package/build/cjs/components/Select/SelectSearch/types.js +6 -0
  237. package/build/cjs/components/Select/SelectSearch/types.js.map +1 -0
  238. package/build/cjs/components/Select/TagsList/TagsList.d.ts +17 -0
  239. package/build/cjs/components/Select/TagsList/TagsList.js +65 -0
  240. package/build/cjs/components/Select/TagsList/TagsList.js.map +1 -0
  241. package/build/cjs/components/Select/TagsList/types.d.ts +4 -0
  242. package/build/cjs/components/Select/TagsList/types.js +6 -0
  243. package/build/cjs/components/Select/TagsList/types.js.map +1 -0
  244. package/build/cjs/components/Select/TagsList/utils/getRemainingTagsOption.d.ts +8 -0
  245. package/build/cjs/components/Select/TagsList/utils/getRemainingTagsOption.js +32 -0
  246. package/build/cjs/components/Select/TagsList/utils/getRemainingTagsOption.js.map +1 -0
  247. package/build/cjs/components/Select/TagsSelect/TagsSelect.classname.d.ts +1 -0
  248. package/build/cjs/components/Select/TagsSelect/TagsSelect.classname.js +9 -0
  249. package/build/cjs/components/Select/TagsSelect/TagsSelect.classname.js.map +1 -0
  250. package/build/cjs/components/Select/TagsSelect/TagsSelect.css +11 -0
  251. package/build/cjs/components/Select/TagsSelect/TagsSelect.css.map +1 -0
  252. package/build/cjs/components/Select/TagsSelect/TagsSelect.d.ts +6 -0
  253. package/build/cjs/components/Select/TagsSelect/TagsSelect.js +133 -0
  254. package/build/cjs/components/Select/TagsSelect/TagsSelect.js.map +1 -0
  255. package/build/cjs/components/Select/TagsSelect/i18n.d.ts +6 -0
  256. package/build/cjs/components/Select/TagsSelect/i18n.js +13 -0
  257. package/build/cjs/components/Select/TagsSelect/i18n.js.map +1 -0
  258. package/build/cjs/components/Select/hooks/useAutocomplete.d.ts +9 -0
  259. package/build/cjs/components/Select/hooks/useAutocomplete.js +90 -0
  260. package/build/cjs/components/Select/hooks/useAutocomplete.js.map +1 -0
  261. package/build/cjs/components/Select/i18n.d.ts +22 -0
  262. package/build/cjs/components/Select/i18n.js +29 -0
  263. package/build/cjs/components/Select/i18n.js.map +1 -0
  264. package/build/cjs/components/Select/index.d.ts +8 -0
  265. package/build/cjs/components/Select/index.js +34 -0
  266. package/build/cjs/components/Select/index.js.map +1 -0
  267. package/build/cjs/components/Select/utils/filterAutocompleteOption.d.ts +1 -0
  268. package/build/cjs/components/Select/utils/filterAutocompleteOption.js +10 -0
  269. package/build/cjs/components/Select/utils/filterAutocompleteOption.js.map +1 -0
  270. package/build/cjs/components/Select/utils/filterOption.d.ts +2 -0
  271. package/build/cjs/components/Select/utils/filterOption.js +13 -0
  272. package/build/cjs/components/Select/utils/filterOption.js.map +1 -0
  273. package/build/cjs/components/Select/utils/getValueOption.d.ts +2 -0
  274. package/build/cjs/components/Select/utils/getValueOption.js +32 -0
  275. package/build/cjs/components/Select/utils/getValueOption.js.map +1 -0
  276. package/build/cjs/components/Select/utils/isGroupOption.d.ts +2 -0
  277. package/build/cjs/components/Select/utils/isGroupOption.js +10 -0
  278. package/build/cjs/components/Select/utils/isGroupOption.js.map +1 -0
  279. package/build/cjs/components/Select/utils/renderOption.d.ts +3 -0
  280. package/build/cjs/components/Select/utils/renderOption.js +22 -0
  281. package/build/cjs/components/Select/utils/renderOption.js.map +1 -0
  282. package/build/cjs/components/TrackerDisclosure/TrackerDisclosure.classname.d.ts +1 -0
  283. package/build/cjs/components/TrackerDisclosure/TrackerDisclosure.classname.js +9 -0
  284. package/build/cjs/components/TrackerDisclosure/TrackerDisclosure.classname.js.map +1 -0
  285. package/build/cjs/components/TrackerDisclosure/TrackerDisclosure.css +31 -0
  286. package/build/cjs/components/TrackerDisclosure/TrackerDisclosure.css.map +1 -0
  287. package/build/cjs/components/TrackerDisclosure/TrackerDisclosure.d.ts +11 -0
  288. package/build/cjs/components/TrackerDisclosure/TrackerDisclosure.js +64 -0
  289. package/build/cjs/components/TrackerDisclosure/TrackerDisclosure.js.map +1 -0
  290. package/build/cjs/components/TrackerDisclosure/index.d.ts +2 -0
  291. package/build/cjs/components/TrackerDisclosure/index.js +13 -0
  292. package/build/cjs/components/TrackerDisclosure/index.js.map +1 -0
  293. package/build/cjs/components/TrackerSelect/TrackerSelect.classname.d.ts +1 -0
  294. package/build/cjs/components/TrackerSelect/TrackerSelect.classname.js +9 -0
  295. package/build/cjs/components/TrackerSelect/TrackerSelect.classname.js.map +1 -0
  296. package/build/cjs/components/TrackerSelect/TrackerSelect.css +277 -0
  297. package/build/cjs/components/TrackerSelect/TrackerSelect.css.map +1 -0
  298. package/build/cjs/components/TrackerSelect/TrackerSelect.d.ts +25 -0
  299. package/build/cjs/components/TrackerSelect/TrackerSelect.js +170 -0
  300. package/build/cjs/components/TrackerSelect/TrackerSelect.js.map +1 -0
  301. package/build/cjs/components/TrackerSelect/components/ItemsList.d.ts +23 -0
  302. package/build/cjs/components/TrackerSelect/components/ItemsList.js +239 -0
  303. package/build/cjs/components/TrackerSelect/components/ItemsList.js.map +1 -0
  304. package/build/cjs/components/TrackerSelect/components/Search.d.ts +14 -0
  305. package/build/cjs/components/TrackerSelect/components/Search.js +44 -0
  306. package/build/cjs/components/TrackerSelect/components/Search.js.map +1 -0
  307. package/build/cjs/components/TrackerSelect/components/SelectGroup.d.ts +20 -0
  308. package/build/cjs/components/TrackerSelect/components/SelectGroup.js +108 -0
  309. package/build/cjs/components/TrackerSelect/components/SelectGroup.js.map +1 -0
  310. package/build/cjs/components/TrackerSelect/components/SelectItem.d.ts +27 -0
  311. package/build/cjs/components/TrackerSelect/components/SelectItem.js +150 -0
  312. package/build/cjs/components/TrackerSelect/components/SelectItem.js.map +1 -0
  313. package/build/cjs/components/TrackerSelect/components/SelectItems.d.ts +18 -0
  314. package/build/cjs/components/TrackerSelect/components/SelectItems.js +92 -0
  315. package/build/cjs/components/TrackerSelect/components/SelectItems.js.map +1 -0
  316. package/build/cjs/components/TrackerSelect/constants.d.ts +2 -0
  317. package/build/cjs/components/TrackerSelect/constants.js +9 -0
  318. package/build/cjs/components/TrackerSelect/constants.js.map +1 -0
  319. package/build/cjs/components/TrackerSelect/hooks/useExpandedGroups.d.ts +6 -0
  320. package/build/cjs/components/TrackerSelect/hooks/useExpandedGroups.js +58 -0
  321. package/build/cjs/components/TrackerSelect/hooks/useExpandedGroups.js.map +1 -0
  322. package/build/cjs/components/TrackerSelect/hooks/useHint.d.ts +4 -0
  323. package/build/cjs/components/TrackerSelect/hooks/useHint.js +25 -0
  324. package/build/cjs/components/TrackerSelect/hooks/useHint.js.map +1 -0
  325. package/build/cjs/components/TrackerSelect/hooks/useListActiveElementScroll.d.ts +7 -0
  326. package/build/cjs/components/TrackerSelect/hooks/useListActiveElementScroll.js +39 -0
  327. package/build/cjs/components/TrackerSelect/hooks/useListActiveElementScroll.js.map +1 -0
  328. package/build/cjs/components/TrackerSelect/hooks/usePopupHeight.d.ts +3 -0
  329. package/build/cjs/components/TrackerSelect/hooks/usePopupHeight.js +61 -0
  330. package/build/cjs/components/TrackerSelect/hooks/usePopupHeight.js.map +1 -0
  331. package/build/cjs/components/TrackerSelect/hooks/useSelectedItemsIds.d.ts +2 -0
  332. package/build/cjs/components/TrackerSelect/hooks/useSelectedItemsIds.js +19 -0
  333. package/build/cjs/components/TrackerSelect/hooks/useSelectedItemsIds.js.map +1 -0
  334. package/build/cjs/components/TrackerSelect/hooks/useSubmitHotkey.d.ts +1 -0
  335. package/build/cjs/components/TrackerSelect/hooks/useSubmitHotkey.js +28 -0
  336. package/build/cjs/components/TrackerSelect/hooks/useSubmitHotkey.js.map +1 -0
  337. package/build/cjs/components/TrackerSelect/i18n.d.ts +70 -0
  338. package/build/cjs/components/TrackerSelect/i18n.js +77 -0
  339. package/build/cjs/components/TrackerSelect/i18n.js.map +1 -0
  340. package/build/cjs/components/TrackerSelect/index.d.ts +4 -0
  341. package/build/cjs/components/TrackerSelect/index.js +20 -0
  342. package/build/cjs/components/TrackerSelect/index.js.map +1 -0
  343. package/build/cjs/components/TrackerSelect/types.d.ts +36 -0
  344. package/build/cjs/components/TrackerSelect/types.js +6 -0
  345. package/build/cjs/components/TrackerSelect/types.js.map +1 -0
  346. package/build/cjs/components/TrackerSelect/utils/getElementId.d.ts +1 -0
  347. package/build/cjs/components/TrackerSelect/utils/getElementId.js +20 -0
  348. package/build/cjs/components/TrackerSelect/utils/getElementId.js.map +1 -0
  349. package/build/cjs/components/TrackerSelect/utils/keyboard.d.ts +17 -0
  350. package/build/cjs/components/TrackerSelect/utils/keyboard.js +48 -0
  351. package/build/cjs/components/TrackerSelect/utils/keyboard.js.map +1 -0
  352. package/build/cjs/components/TrackerSelect/utils/moveItemInArray.d.ts +1 -0
  353. package/build/cjs/components/TrackerSelect/utils/moveItemInArray.js +21 -0
  354. package/build/cjs/components/TrackerSelect/utils/moveItemInArray.js.map +1 -0
  355. package/build/cjs/components/cn.d.ts +4 -0
  356. package/build/cjs/components/cn.js +18 -0
  357. package/build/cjs/components/cn.js.map +1 -0
  358. package/build/cjs/hooks/useAutoFocus.d.ts +7 -0
  359. package/build/cjs/hooks/useAutoFocus.js +26 -0
  360. package/build/cjs/hooks/useAutoFocus.js.map +1 -0
  361. package/build/cjs/hooks/useLocalizedString.d.ts +4 -0
  362. package/build/cjs/hooks/useLocalizedString.js +38 -0
  363. package/build/cjs/hooks/useLocalizedString.js.map +1 -0
  364. package/build/cjs/index.d.ts +6 -0
  365. package/build/cjs/index.js +78 -0
  366. package/build/cjs/index.js.map +1 -0
  367. package/build/cjs/typings/assets.svg.d.ts +7 -0
  368. package/build/cjs/utils/focusWithoutScroll.d.ts +1 -0
  369. package/build/cjs/utils/focusWithoutScroll.js +15 -0
  370. package/build/cjs/utils/focusWithoutScroll.js.map +1 -0
  371. package/build/esm/assets/icons/issue-type/bug.d.ts +4 -0
  372. package/build/esm/assets/icons/issue-type/bug.js +15 -0
  373. package/build/esm/assets/icons/issue-type/design.d.ts +4 -0
  374. package/build/esm/assets/icons/issue-type/design.js +15 -0
  375. package/build/esm/assets/icons/issue-type/epic.d.ts +4 -0
  376. package/build/esm/assets/icons/issue-type/epic.js +15 -0
  377. package/build/esm/assets/icons/issue-type/improvement.d.ts +4 -0
  378. package/build/esm/assets/icons/issue-type/improvement.js +15 -0
  379. package/build/esm/assets/icons/issue-type/incident.d.ts +4 -0
  380. package/build/esm/assets/icons/issue-type/incident.js +15 -0
  381. package/build/esm/assets/icons/issue-type/info.d.ts +4 -0
  382. package/build/esm/assets/icons/issue-type/info.js +15 -0
  383. package/build/esm/assets/icons/issue-type/milestone.d.ts +4 -0
  384. package/build/esm/assets/icons/issue-type/milestone.js +19 -0
  385. package/build/esm/assets/icons/issue-type/new-feature.d.ts +4 -0
  386. package/build/esm/assets/icons/issue-type/new-feature.js +15 -0
  387. package/build/esm/assets/icons/issue-type/query.d.ts +4 -0
  388. package/build/esm/assets/icons/issue-type/query.js +15 -0
  389. package/build/esm/assets/icons/issue-type/refactoring.d.ts +4 -0
  390. package/build/esm/assets/icons/issue-type/refactoring.js +15 -0
  391. package/build/esm/assets/icons/issue-type/release.d.ts +4 -0
  392. package/build/esm/assets/icons/issue-type/release.js +15 -0
  393. package/build/esm/assets/icons/issue-type/research.d.ts +4 -0
  394. package/build/esm/assets/icons/issue-type/research.js +15 -0
  395. package/build/esm/assets/icons/issue-type/service-request.d.ts +4 -0
  396. package/build/esm/assets/icons/issue-type/service-request.js +15 -0
  397. package/build/esm/assets/icons/issue-type/story.d.ts +4 -0
  398. package/build/esm/assets/icons/issue-type/story.js +15 -0
  399. package/build/esm/assets/icons/issue-type/subbug.d.ts +4 -0
  400. package/build/esm/assets/icons/issue-type/subbug.js +15 -0
  401. package/build/esm/assets/icons/issue-type/subtask.d.ts +4 -0
  402. package/build/esm/assets/icons/issue-type/subtask.js +15 -0
  403. package/build/esm/assets/icons/issue-type/task.d.ts +4 -0
  404. package/build/esm/assets/icons/issue-type/task.js +15 -0
  405. package/build/esm/assets/icons/issue-type/technical-debt.d.ts +4 -0
  406. package/build/esm/assets/icons/issue-type/technical-debt.js +15 -0
  407. package/build/esm/assets/icons/portfolio.d.ts +4 -0
  408. package/build/esm/assets/icons/portfolio.js +19 -0
  409. package/build/esm/components/FieldsSelect/FieldsSelect.classname.d.ts +1 -0
  410. package/build/esm/components/FieldsSelect/FieldsSelect.classname.js +3 -0
  411. package/build/esm/components/FieldsSelect/FieldsSelect.classname.js.map +1 -0
  412. package/build/esm/components/FieldsSelect/FieldsSelect.css +41 -0
  413. package/build/esm/components/FieldsSelect/FieldsSelect.css.map +1 -0
  414. package/build/esm/components/FieldsSelect/FieldsSelect.d.ts +29 -0
  415. package/build/esm/components/FieldsSelect/FieldsSelect.js +273 -0
  416. package/build/esm/components/FieldsSelect/FieldsSelect.js.map +1 -0
  417. package/build/esm/components/FieldsSelect/FieldsSelect.scss +54 -0
  418. package/build/esm/components/FieldsSelect/components/FieldsActions/FieldsActions.d.ts +7 -0
  419. package/build/esm/components/FieldsSelect/components/FieldsActions/FieldsActions.js +31 -0
  420. package/build/esm/components/FieldsSelect/components/FieldsActions/FieldsActions.js.map +1 -0
  421. package/build/esm/components/FieldsSelect/components/FieldsActions/constants.d.ts +2 -0
  422. package/build/esm/components/FieldsSelect/components/FieldsActions/constants.js +2 -0
  423. package/build/esm/components/FieldsSelect/components/FieldsActions/constants.js.map +1 -0
  424. package/build/esm/components/FieldsSelect/components/FieldsActions/i18n.d.ts +244 -0
  425. package/build/esm/components/FieldsSelect/components/FieldsActions/i18n.js +245 -0
  426. package/build/esm/components/FieldsSelect/components/FieldsActions/i18n.js.map +1 -0
  427. package/build/esm/components/FieldsSelect/hooks/useSearch.d.ts +8 -0
  428. package/build/esm/components/FieldsSelect/hooks/useSearch.js +27 -0
  429. package/build/esm/components/FieldsSelect/hooks/useSearch.js.map +1 -0
  430. package/build/esm/components/FieldsSelect/i18n.d.ts +14 -0
  431. package/build/esm/components/FieldsSelect/i18n.js +15 -0
  432. package/build/esm/components/FieldsSelect/i18n.js.map +1 -0
  433. package/build/esm/components/FieldsSelect/index.d.ts +2 -0
  434. package/build/esm/components/FieldsSelect/index.js +2 -0
  435. package/build/esm/components/FieldsSelect/index.js.map +1 -0
  436. package/build/esm/components/FieldsSelect/utils/filterGroups.d.ts +6 -0
  437. package/build/esm/components/FieldsSelect/utils/filterGroups.js +41 -0
  438. package/build/esm/components/FieldsSelect/utils/filterGroups.js.map +1 -0
  439. package/build/esm/components/FieldsSelect/utils/getGroupId.d.ts +5 -0
  440. package/build/esm/components/FieldsSelect/utils/getGroupId.js +9 -0
  441. package/build/esm/components/FieldsSelect/utils/getGroupId.js.map +1 -0
  442. package/build/esm/components/FieldsSelect/utils/getGroupName.d.ts +5 -0
  443. package/build/esm/components/FieldsSelect/utils/getGroupName.js +10 -0
  444. package/build/esm/components/FieldsSelect/utils/getGroupName.js.map +1 -0
  445. package/build/esm/components/FieldsSelect/utils/splitGroupsByTags.d.ts +7 -0
  446. package/build/esm/components/FieldsSelect/utils/splitGroupsByTags.js +109 -0
  447. package/build/esm/components/FieldsSelect/utils/splitGroupsByTags.js.map +1 -0
  448. package/build/esm/components/Icon/EntityIcon/EntityIcon.classname.d.ts +1 -0
  449. package/build/esm/components/Icon/EntityIcon/EntityIcon.classname.js +3 -0
  450. package/build/esm/components/Icon/EntityIcon/EntityIcon.classname.js.map +1 -0
  451. package/build/esm/components/Icon/EntityIcon/EntityIcon.css +7 -0
  452. package/build/esm/components/Icon/EntityIcon/EntityIcon.css.map +1 -0
  453. package/build/esm/components/Icon/EntityIcon/EntityIcon.d.ts +16 -0
  454. package/build/esm/components/Icon/EntityIcon/EntityIcon.js +52 -0
  455. package/build/esm/components/Icon/EntityIcon/EntityIcon.js.map +1 -0
  456. package/build/esm/components/Icon/EntityIcon/EntityIcon.scss +9 -0
  457. package/build/esm/components/Icon/EntityIcon/index.d.ts +2 -0
  458. package/build/esm/components/Icon/EntityIcon/index.js +2 -0
  459. package/build/esm/components/Icon/EntityIcon/index.js.map +1 -0
  460. package/build/esm/components/Icon/Icon.classname.d.ts +1 -0
  461. package/build/esm/components/Icon/Icon.classname.js +3 -0
  462. package/build/esm/components/Icon/Icon.classname.js.map +1 -0
  463. package/build/esm/components/Icon/Icon.css +33 -0
  464. package/build/esm/components/Icon/Icon.css.map +1 -0
  465. package/build/esm/components/Icon/Icon.scss +46 -0
  466. package/build/esm/components/Icon/IconRefuge/IconRefuge.classname.d.ts +1 -0
  467. package/build/esm/components/Icon/IconRefuge/IconRefuge.classname.js +3 -0
  468. package/build/esm/components/Icon/IconRefuge/IconRefuge.classname.js.map +1 -0
  469. package/build/esm/components/Icon/IconRefuge/IconRefuge.css +19 -0
  470. package/build/esm/components/Icon/IconRefuge/IconRefuge.css.map +1 -0
  471. package/build/esm/components/Icon/IconRefuge/IconRefuge.d.ts +9 -0
  472. package/build/esm/components/Icon/IconRefuge/IconRefuge.js +47 -0
  473. package/build/esm/components/Icon/IconRefuge/IconRefuge.js.map +1 -0
  474. package/build/esm/components/Icon/IconRefuge/IconRefuge.scss +23 -0
  475. package/build/esm/components/Icon/IconRefuge/index.d.ts +2 -0
  476. package/build/esm/components/Icon/IconRefuge/index.js +2 -0
  477. package/build/esm/components/Icon/IconRefuge/index.js.map +1 -0
  478. package/build/esm/components/Icon/IconRefuge/types.d.ts +11 -0
  479. package/build/esm/components/Icon/IconRefuge/types.js +2 -0
  480. package/build/esm/components/Icon/IconRefuge/types.js.map +1 -0
  481. package/build/esm/components/Icon/IssueTypeIcon/IssueTypeIcon.classname.d.ts +1 -0
  482. package/build/esm/components/Icon/IssueTypeIcon/IssueTypeIcon.classname.js +3 -0
  483. package/build/esm/components/Icon/IssueTypeIcon/IssueTypeIcon.classname.js.map +1 -0
  484. package/build/esm/components/Icon/IssueTypeIcon/IssueTypeIcon.css +4 -0
  485. package/build/esm/components/Icon/IssueTypeIcon/IssueTypeIcon.css.map +1 -0
  486. package/build/esm/components/Icon/IssueTypeIcon/IssueTypeIcon.d.ts +10 -0
  487. package/build/esm/components/Icon/IssueTypeIcon/IssueTypeIcon.js +95 -0
  488. package/build/esm/components/Icon/IssueTypeIcon/IssueTypeIcon.js.map +1 -0
  489. package/build/esm/components/Icon/IssueTypeIcon/IssueTypeIcon.scss +3 -0
  490. package/build/esm/components/Icon/IssueTypeIcon/README.md +40 -0
  491. package/build/esm/components/Icon/IssueTypeIcon/i18n.d.ts +6 -0
  492. package/build/esm/components/Icon/IssueTypeIcon/i18n.js +7 -0
  493. package/build/esm/components/Icon/IssueTypeIcon/i18n.js.map +1 -0
  494. package/build/esm/components/Icon/IssueTypeIcon/index.d.ts +3 -0
  495. package/build/esm/components/Icon/IssueTypeIcon/index.js +2 -0
  496. package/build/esm/components/Icon/IssueTypeIcon/index.js.map +1 -0
  497. package/build/esm/components/Icon/IssueTypeIcon/types.d.ts +1 -0
  498. package/build/esm/components/Icon/IssueTypeIcon/types.js +2 -0
  499. package/build/esm/components/Icon/IssueTypeIcon/types.js.map +1 -0
  500. package/build/esm/components/Icon/PortfolioIcon/PortfolioIcon.d.ts +6 -0
  501. package/build/esm/components/Icon/PortfolioIcon/PortfolioIcon.js +19 -0
  502. package/build/esm/components/Icon/PortfolioIcon/PortfolioIcon.js.map +1 -0
  503. package/build/esm/components/Icon/PortfolioIcon/README.md +51 -0
  504. package/build/esm/components/Icon/ProjectIcon/ProjectIcon.d.ts +6 -0
  505. package/build/esm/components/Icon/ProjectIcon/ProjectIcon.js +17 -0
  506. package/build/esm/components/Icon/ProjectIcon/ProjectIcon.js.map +1 -0
  507. package/build/esm/components/Icon/ProjectIcon/README.md +51 -0
  508. package/build/esm/components/Icon/index.d.ts +3 -0
  509. package/build/esm/components/Icon/index.js +4 -0
  510. package/build/esm/components/Icon/index.js.map +1 -0
  511. package/build/esm/components/PluginFieldsSelect/PluginFieldsSelect.d.ts +13 -0
  512. package/build/esm/components/PluginFieldsSelect/PluginFieldsSelect.js +42 -0
  513. package/build/esm/components/PluginFieldsSelect/PluginFieldsSelect.js.map +1 -0
  514. package/build/esm/components/PluginFieldsSelect/README.md +486 -0
  515. package/build/esm/components/PluginFieldsSelect/index.d.ts +2 -0
  516. package/build/esm/components/PluginFieldsSelect/index.js +2 -0
  517. package/build/esm/components/PluginFieldsSelect/index.js.map +1 -0
  518. package/build/esm/components/QueueIcon/QueueIcon.classname.d.ts +1 -0
  519. package/build/esm/components/QueueIcon/QueueIcon.classname.js +3 -0
  520. package/build/esm/components/QueueIcon/QueueIcon.classname.js.map +1 -0
  521. package/build/esm/components/QueueIcon/QueueIcon.css +8 -0
  522. package/build/esm/components/QueueIcon/QueueIcon.css.map +1 -0
  523. package/build/esm/components/QueueIcon/QueueIcon.d.ts +9 -0
  524. package/build/esm/components/QueueIcon/QueueIcon.js +37 -0
  525. package/build/esm/components/QueueIcon/QueueIcon.js.map +1 -0
  526. package/build/esm/components/QueueIcon/QueueIcon.scss +9 -0
  527. package/build/esm/components/QueueIcon/index.d.ts +2 -0
  528. package/build/esm/components/QueueIcon/index.js +2 -0
  529. package/build/esm/components/QueueIcon/index.js.map +1 -0
  530. package/build/esm/components/QueueSelect/QueueSelect.classname.d.ts +1 -0
  531. package/build/esm/components/QueueSelect/QueueSelect.classname.js +3 -0
  532. package/build/esm/components/QueueSelect/QueueSelect.classname.js.map +1 -0
  533. package/build/esm/components/QueueSelect/QueueSelect.css +113 -0
  534. package/build/esm/components/QueueSelect/QueueSelect.css.map +1 -0
  535. package/build/esm/components/QueueSelect/QueueSelect.d.ts +32 -0
  536. package/build/esm/components/QueueSelect/QueueSelect.js +246 -0
  537. package/build/esm/components/QueueSelect/QueueSelect.js.map +1 -0
  538. package/build/esm/components/QueueSelect/QueueSelect.scss +142 -0
  539. package/build/esm/components/QueueSelect/README.md +249 -0
  540. package/build/esm/components/QueueSelect/constants.d.ts +2 -0
  541. package/build/esm/components/QueueSelect/constants.js +8 -0
  542. package/build/esm/components/QueueSelect/constants.js.map +1 -0
  543. package/build/esm/components/QueueSelect/i18n.d.ts +34 -0
  544. package/build/esm/components/QueueSelect/i18n.js +35 -0
  545. package/build/esm/components/QueueSelect/i18n.js.map +1 -0
  546. package/build/esm/components/QueueSelect/index.d.ts +3 -0
  547. package/build/esm/components/QueueSelect/index.js +2 -0
  548. package/build/esm/components/QueueSelect/index.js.map +1 -0
  549. package/build/esm/components/QueueSelect/types.d.ts +12 -0
  550. package/build/esm/components/QueueSelect/types.js +2 -0
  551. package/build/esm/components/QueueSelect/types.js.map +1 -0
  552. package/build/esm/components/QueueSelect/utils/filterQueues.d.ts +2 -0
  553. package/build/esm/components/QueueSelect/utils/filterQueues.js +16 -0
  554. package/build/esm/components/QueueSelect/utils/filterQueues.js.map +1 -0
  555. package/build/esm/components/QueueSelect/utils/mapQueueToSelectItem.d.ts +8 -0
  556. package/build/esm/components/QueueSelect/utils/mapQueueToSelectItem.js +35 -0
  557. package/build/esm/components/QueueSelect/utils/mapQueueToSelectItem.js.map +1 -0
  558. package/build/esm/components/QueueSelect/utils/normalizeQueue.d.ts +2 -0
  559. package/build/esm/components/QueueSelect/utils/normalizeQueue.js +9 -0
  560. package/build/esm/components/QueueSelect/utils/normalizeQueue.js.map +1 -0
  561. package/build/esm/components/QueueSelect/utils/renderDisplayValue.d.ts +5 -0
  562. package/build/esm/components/QueueSelect/utils/renderDisplayValue.js +35 -0
  563. package/build/esm/components/QueueSelect/utils/renderDisplayValue.js.map +1 -0
  564. package/build/esm/components/Select/Autocomplete.d.ts +11 -0
  565. package/build/esm/components/Select/Autocomplete.js +27 -0
  566. package/build/esm/components/Select/Autocomplete.js.map +1 -0
  567. package/build/esm/components/Select/MultiAutocomplete.d.ts +13 -0
  568. package/build/esm/components/Select/MultiAutocomplete.js +61 -0
  569. package/build/esm/components/Select/MultiAutocomplete.js.map +1 -0
  570. package/build/esm/components/Select/MultiSelect.d.ts +22 -0
  571. package/build/esm/components/Select/MultiSelect.js +271 -0
  572. package/build/esm/components/Select/MultiSelect.js.map +1 -0
  573. package/build/esm/components/Select/Select.classname.d.ts +1 -0
  574. package/build/esm/components/Select/Select.classname.js +3 -0
  575. package/build/esm/components/Select/Select.classname.js.map +1 -0
  576. package/build/esm/components/Select/Select.css +121 -0
  577. package/build/esm/components/Select/Select.css.map +1 -0
  578. package/build/esm/components/Select/Select.d.ts +10 -0
  579. package/build/esm/components/Select/Select.js +25 -0
  580. package/build/esm/components/Select/Select.js.map +1 -0
  581. package/build/esm/components/Select/Select.scss +180 -0
  582. package/build/esm/components/Select/SelectSearch/SelectSearch.classname.d.ts +1 -0
  583. package/build/esm/components/Select/SelectSearch/SelectSearch.classname.js +3 -0
  584. package/build/esm/components/Select/SelectSearch/SelectSearch.classname.js.map +1 -0
  585. package/build/esm/components/Select/SelectSearch/SelectSearch.css +50 -0
  586. package/build/esm/components/Select/SelectSearch/SelectSearch.css.map +1 -0
  587. package/build/esm/components/Select/SelectSearch/SelectSearch.d.ts +20 -0
  588. package/build/esm/components/Select/SelectSearch/SelectSearch.js +55 -0
  589. package/build/esm/components/Select/SelectSearch/SelectSearch.js.map +1 -0
  590. package/build/esm/components/Select/SelectSearch/SelectSearch.scss +67 -0
  591. package/build/esm/components/Select/SelectSearch/hooks/useSelectSearch.d.ts +11 -0
  592. package/build/esm/components/Select/SelectSearch/hooks/useSelectSearch.js +43 -0
  593. package/build/esm/components/Select/SelectSearch/hooks/useSelectSearch.js.map +1 -0
  594. package/build/esm/components/Select/SelectSearch/types.d.ts +5 -0
  595. package/build/esm/components/Select/SelectSearch/types.js +2 -0
  596. package/build/esm/components/Select/SelectSearch/types.js.map +1 -0
  597. package/build/esm/components/Select/TagsList/TagsList.d.ts +17 -0
  598. package/build/esm/components/Select/TagsList/TagsList.js +58 -0
  599. package/build/esm/components/Select/TagsList/TagsList.js.map +1 -0
  600. package/build/esm/components/Select/TagsList/types.d.ts +4 -0
  601. package/build/esm/components/Select/TagsList/types.js +2 -0
  602. package/build/esm/components/Select/TagsList/types.js.map +1 -0
  603. package/build/esm/components/Select/TagsList/utils/getRemainingTagsOption.d.ts +8 -0
  604. package/build/esm/components/Select/TagsList/utils/getRemainingTagsOption.js +26 -0
  605. package/build/esm/components/Select/TagsList/utils/getRemainingTagsOption.js.map +1 -0
  606. package/build/esm/components/Select/TagsSelect/TagsSelect.classname.d.ts +1 -0
  607. package/build/esm/components/Select/TagsSelect/TagsSelect.classname.js +3 -0
  608. package/build/esm/components/Select/TagsSelect/TagsSelect.classname.js.map +1 -0
  609. package/build/esm/components/Select/TagsSelect/TagsSelect.css +11 -0
  610. package/build/esm/components/Select/TagsSelect/TagsSelect.css.map +1 -0
  611. package/build/esm/components/Select/TagsSelect/TagsSelect.d.ts +6 -0
  612. package/build/esm/components/Select/TagsSelect/TagsSelect.js +125 -0
  613. package/build/esm/components/Select/TagsSelect/TagsSelect.js.map +1 -0
  614. package/build/esm/components/Select/TagsSelect/TagsSelect.scss +11 -0
  615. package/build/esm/components/Select/TagsSelect/i18n.d.ts +6 -0
  616. package/build/esm/components/Select/TagsSelect/i18n.js +7 -0
  617. package/build/esm/components/Select/TagsSelect/i18n.js.map +1 -0
  618. package/build/esm/components/Select/hooks/useAutocomplete.d.ts +9 -0
  619. package/build/esm/components/Select/hooks/useAutocomplete.js +83 -0
  620. package/build/esm/components/Select/hooks/useAutocomplete.js.map +1 -0
  621. package/build/esm/components/Select/i18n.d.ts +22 -0
  622. package/build/esm/components/Select/i18n.js +23 -0
  623. package/build/esm/components/Select/i18n.js.map +1 -0
  624. package/build/esm/components/Select/index.d.ts +8 -0
  625. package/build/esm/components/Select/index.js +5 -0
  626. package/build/esm/components/Select/index.js.map +1 -0
  627. package/build/esm/components/Select/utils/filterAutocompleteOption.d.ts +1 -0
  628. package/build/esm/components/Select/utils/filterAutocompleteOption.js +4 -0
  629. package/build/esm/components/Select/utils/filterAutocompleteOption.js.map +1 -0
  630. package/build/esm/components/Select/utils/filterOption.d.ts +2 -0
  631. package/build/esm/components/Select/utils/filterOption.js +7 -0
  632. package/build/esm/components/Select/utils/filterOption.js.map +1 -0
  633. package/build/esm/components/Select/utils/getValueOption.d.ts +2 -0
  634. package/build/esm/components/Select/utils/getValueOption.js +25 -0
  635. package/build/esm/components/Select/utils/getValueOption.js.map +1 -0
  636. package/build/esm/components/Select/utils/isGroupOption.d.ts +2 -0
  637. package/build/esm/components/Select/utils/isGroupOption.js +4 -0
  638. package/build/esm/components/Select/utils/isGroupOption.js.map +1 -0
  639. package/build/esm/components/Select/utils/renderOption.d.ts +3 -0
  640. package/build/esm/components/Select/utils/renderOption.js +15 -0
  641. package/build/esm/components/Select/utils/renderOption.js.map +1 -0
  642. package/build/esm/components/TrackerDisclosure/TrackerDisclosure.classname.d.ts +1 -0
  643. package/build/esm/components/TrackerDisclosure/TrackerDisclosure.classname.js +3 -0
  644. package/build/esm/components/TrackerDisclosure/TrackerDisclosure.classname.js.map +1 -0
  645. package/build/esm/components/TrackerDisclosure/TrackerDisclosure.css +31 -0
  646. package/build/esm/components/TrackerDisclosure/TrackerDisclosure.css.map +1 -0
  647. package/build/esm/components/TrackerDisclosure/TrackerDisclosure.d.ts +11 -0
  648. package/build/esm/components/TrackerDisclosure/TrackerDisclosure.js +57 -0
  649. package/build/esm/components/TrackerDisclosure/TrackerDisclosure.js.map +1 -0
  650. package/build/esm/components/TrackerDisclosure/TrackerDisclosure.scss +43 -0
  651. package/build/esm/components/TrackerDisclosure/index.d.ts +2 -0
  652. package/build/esm/components/TrackerDisclosure/index.js +2 -0
  653. package/build/esm/components/TrackerDisclosure/index.js.map +1 -0
  654. package/build/esm/components/TrackerSelect/TrackerSelect.classname.d.ts +1 -0
  655. package/build/esm/components/TrackerSelect/TrackerSelect.classname.js +3 -0
  656. package/build/esm/components/TrackerSelect/TrackerSelect.classname.js.map +1 -0
  657. package/build/esm/components/TrackerSelect/TrackerSelect.css +277 -0
  658. package/build/esm/components/TrackerSelect/TrackerSelect.css.map +1 -0
  659. package/build/esm/components/TrackerSelect/TrackerSelect.d.ts +25 -0
  660. package/build/esm/components/TrackerSelect/TrackerSelect.js +162 -0
  661. package/build/esm/components/TrackerSelect/TrackerSelect.js.map +1 -0
  662. package/build/esm/components/TrackerSelect/TrackerSelect.scss +394 -0
  663. package/build/esm/components/TrackerSelect/components/ItemsList.d.ts +23 -0
  664. package/build/esm/components/TrackerSelect/components/ItemsList.js +231 -0
  665. package/build/esm/components/TrackerSelect/components/ItemsList.js.map +1 -0
  666. package/build/esm/components/TrackerSelect/components/Search.d.ts +14 -0
  667. package/build/esm/components/TrackerSelect/components/Search.js +36 -0
  668. package/build/esm/components/TrackerSelect/components/Search.js.map +1 -0
  669. package/build/esm/components/TrackerSelect/components/SelectGroup.d.ts +20 -0
  670. package/build/esm/components/TrackerSelect/components/SelectGroup.js +101 -0
  671. package/build/esm/components/TrackerSelect/components/SelectGroup.js.map +1 -0
  672. package/build/esm/components/TrackerSelect/components/SelectItem.d.ts +27 -0
  673. package/build/esm/components/TrackerSelect/components/SelectItem.js +143 -0
  674. package/build/esm/components/TrackerSelect/components/SelectItem.js.map +1 -0
  675. package/build/esm/components/TrackerSelect/components/SelectItems.d.ts +18 -0
  676. package/build/esm/components/TrackerSelect/components/SelectItems.js +85 -0
  677. package/build/esm/components/TrackerSelect/components/SelectItems.js.map +1 -0
  678. package/build/esm/components/TrackerSelect/constants.d.ts +2 -0
  679. package/build/esm/components/TrackerSelect/constants.js +3 -0
  680. package/build/esm/components/TrackerSelect/constants.js.map +1 -0
  681. package/build/esm/components/TrackerSelect/hooks/useExpandedGroups.d.ts +6 -0
  682. package/build/esm/components/TrackerSelect/hooks/useExpandedGroups.js +51 -0
  683. package/build/esm/components/TrackerSelect/hooks/useExpandedGroups.js.map +1 -0
  684. package/build/esm/components/TrackerSelect/hooks/useHint.d.ts +4 -0
  685. package/build/esm/components/TrackerSelect/hooks/useHint.js +18 -0
  686. package/build/esm/components/TrackerSelect/hooks/useHint.js.map +1 -0
  687. package/build/esm/components/TrackerSelect/hooks/useListActiveElementScroll.d.ts +7 -0
  688. package/build/esm/components/TrackerSelect/hooks/useListActiveElementScroll.js +33 -0
  689. package/build/esm/components/TrackerSelect/hooks/useListActiveElementScroll.js.map +1 -0
  690. package/build/esm/components/TrackerSelect/hooks/usePopupHeight.d.ts +3 -0
  691. package/build/esm/components/TrackerSelect/hooks/usePopupHeight.js +54 -0
  692. package/build/esm/components/TrackerSelect/hooks/usePopupHeight.js.map +1 -0
  693. package/build/esm/components/TrackerSelect/hooks/useSelectedItemsIds.d.ts +2 -0
  694. package/build/esm/components/TrackerSelect/hooks/useSelectedItemsIds.js +13 -0
  695. package/build/esm/components/TrackerSelect/hooks/useSelectedItemsIds.js.map +1 -0
  696. package/build/esm/components/TrackerSelect/hooks/useSubmitHotkey.d.ts +1 -0
  697. package/build/esm/components/TrackerSelect/hooks/useSubmitHotkey.js +22 -0
  698. package/build/esm/components/TrackerSelect/hooks/useSubmitHotkey.js.map +1 -0
  699. package/build/esm/components/TrackerSelect/i18n.d.ts +70 -0
  700. package/build/esm/components/TrackerSelect/i18n.js +71 -0
  701. package/build/esm/components/TrackerSelect/i18n.js.map +1 -0
  702. package/build/esm/components/TrackerSelect/index.d.ts +4 -0
  703. package/build/esm/components/TrackerSelect/index.js +3 -0
  704. package/build/esm/components/TrackerSelect/index.js.map +1 -0
  705. package/build/esm/components/TrackerSelect/types.d.ts +36 -0
  706. package/build/esm/components/TrackerSelect/types.js +2 -0
  707. package/build/esm/components/TrackerSelect/types.js.map +1 -0
  708. package/build/esm/components/TrackerSelect/utils/getElementId.d.ts +1 -0
  709. package/build/esm/components/TrackerSelect/utils/getElementId.js +14 -0
  710. package/build/esm/components/TrackerSelect/utils/getElementId.js.map +1 -0
  711. package/build/esm/components/TrackerSelect/utils/keyboard.d.ts +17 -0
  712. package/build/esm/components/TrackerSelect/utils/keyboard.js +42 -0
  713. package/build/esm/components/TrackerSelect/utils/keyboard.js.map +1 -0
  714. package/build/esm/components/TrackerSelect/utils/moveItemInArray.d.ts +1 -0
  715. package/build/esm/components/TrackerSelect/utils/moveItemInArray.js +14 -0
  716. package/build/esm/components/TrackerSelect/utils/moveItemInArray.js.map +1 -0
  717. package/build/esm/components/cn.d.ts +4 -0
  718. package/build/esm/components/cn.js +12 -0
  719. package/build/esm/components/cn.js.map +1 -0
  720. package/build/esm/hooks/useAutoFocus.d.ts +7 -0
  721. package/build/esm/hooks/useAutoFocus.js +20 -0
  722. package/build/esm/hooks/useAutoFocus.js.map +1 -0
  723. package/build/esm/hooks/useLocalizedString.d.ts +4 -0
  724. package/build/esm/hooks/useLocalizedString.js +31 -0
  725. package/build/esm/hooks/useLocalizedString.js.map +1 -0
  726. package/build/esm/index.d.ts +6 -0
  727. package/build/esm/index.js +6 -0
  728. package/build/esm/index.js.map +1 -0
  729. package/build/esm/styles/variables.scss +1 -0
  730. package/build/esm/typings/assets.svg.d.ts +7 -0
  731. package/build/esm/utils/focusWithoutScroll.d.ts +1 -0
  732. package/build/esm/utils/focusWithoutScroll.js +9 -0
  733. package/build/esm/utils/focusWithoutScroll.js.map +1 -0
  734. package/package.json +123 -0
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import type { SelectOption } from '@gravity-ui/uikit';
3
+ import type { MultiSelectProps } from './MultiSelect';
4
+ export type MultiAutocompleteProps = Omit<MultiSelectProps, 'filterable' | 'value' | 'onUpdate'> & {
5
+ value?: SelectOption[];
6
+ onUpdate: (value: SelectOption[]) => void;
7
+ searchDelay?: number;
8
+ };
9
+ export declare const MultiAutocomplete: React.ForwardRefExoticComponent<Omit<MultiSelectProps, "onUpdate" | "value" | "filterable"> & {
10
+ value?: SelectOption[];
11
+ onUpdate: (value: SelectOption[]) => void;
12
+ searchDelay?: number;
13
+ } & React.RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MultiAutocomplete = void 0;
7
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
8
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ require("core-js/modules/es.array.concat.js");
11
+ require("core-js/modules/es.array.filter.js");
12
+ require("core-js/modules/es.array.find.js");
13
+ require("core-js/modules/es.array.map.js");
14
+ require("core-js/modules/es.array.some.js");
15
+ require("core-js/modules/es.iterator.constructor.js");
16
+ require("core-js/modules/es.iterator.filter.js");
17
+ require("core-js/modules/es.iterator.find.js");
18
+ require("core-js/modules/es.iterator.map.js");
19
+ require("core-js/modules/es.iterator.some.js");
20
+ require("core-js/modules/es.object.to-string.js");
21
+ var _react = _interopRequireWildcard(require("react"));
22
+ var _debounce = _interopRequireDefault(require("lodash/debounce"));
23
+ var _MultiSelect = require("./MultiSelect");
24
+ var _filterAutocompleteOption = require("./utils/filterAutocompleteOption");
25
+ var _jsxRuntime = require("react/jsx-runtime");
26
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
27
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
28
+ var _excluded = ["options", "value", "onUpdate", "onFilterChange", "searchDelay"];
29
+ var MultiAutocomplete = exports.MultiAutocomplete = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
30
+ var options = _ref.options,
31
+ value = _ref.value,
32
+ onUpdate = _ref.onUpdate,
33
+ onFilterChange = _ref.onFilterChange,
34
+ searchDelay = _ref.searchDelay,
35
+ props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
36
+ var handleFilterChange = (0, _react.useMemo)(function () {
37
+ return onFilterChange ? (0, _debounce.default)(onFilterChange, searchDelay) : undefined;
38
+ }, [onFilterChange, searchDelay]);
39
+ var optionsWithValue = (0, _react.useMemo)(function () {
40
+ return [].concat((0, _toConsumableArray2.default)(value !== null && value !== void 0 ? value : []), (0, _toConsumableArray2.default)((options !== null && options !== void 0 ? options : []).filter(function (option) {
41
+ return !(value !== null && value !== void 0 && value.some(function (valueItem) {
42
+ return 'value' in option && option.value === valueItem.value;
43
+ }));
44
+ })));
45
+ }, [options, value]);
46
+ var handleUpdate = (0, _react.useCallback)(function (newValue) {
47
+ onUpdate(newValue.map(function (valueItem) {
48
+ return optionsWithValue.find(function (option) {
49
+ return 'value' in option && option.value === valueItem;
50
+ });
51
+ }));
52
+ }, [onUpdate, optionsWithValue]);
53
+ var selectValue = (0, _react.useMemo)(function () {
54
+ return value === null || value === void 0 ? void 0 : value.map(function (valueItem) {
55
+ return valueItem.value;
56
+ });
57
+ }, [value]);
58
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_MultiSelect.MultiSelect, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {
59
+ ref: ref,
60
+ onUpdate: handleUpdate,
61
+ value: selectValue,
62
+ options: optionsWithValue,
63
+ onFilterChange: handleFilterChange,
64
+ filterable: true,
65
+ filterOption: _filterAutocompleteOption.filterAutocompleteOption
66
+ }));
67
+ });
68
+ MultiAutocomplete.displayName = 'MultiAutocomplete';
69
+ // #sourceMappingURL=MultiAutocomplete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_debounce","_interopRequireDefault","_MultiSelect","_filterAutocompleteOption","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","MultiAutocomplete","exports","forwardRef","_ref","ref","options","value","onUpdate","onFilterChange","searchDelay","props","_objectWithoutProperties","_excluded","handleFilterChange","useMemo","debounce","undefined","optionsWithValue","concat","_toConsumableArray","filter","option","some","valueItem","handleUpdate","useCallback","newValue","map","find","selectValue","_jsx","MultiSelect","_objectSpread","filterable","filterOption","filterAutocompleteOption","displayName"],"sources":["MultiAutocomplete.tsx"],"sourcesContent":["import React, {forwardRef, useCallback, useMemo} from 'react';\n\nimport type {SelectOption} from '@gravity-ui/uikit';\nimport debounce from 'lodash/debounce';\n\nimport type {MultiSelectProps} from './MultiSelect';\nimport {MultiSelect} from './MultiSelect';\nimport {filterAutocompleteOption} from './utils/filterAutocompleteOption';\n\nexport type MultiAutocompleteProps = Omit<MultiSelectProps, 'filterable' | 'value' | 'onUpdate'> & {\n value?: SelectOption[];\n onUpdate: (value: SelectOption[]) => void;\n searchDelay?: number;\n};\n\nexport const MultiAutocomplete = forwardRef<HTMLButtonElement, MultiAutocompleteProps>(\n ({options, value, onUpdate, onFilterChange, searchDelay, ...props}, ref) => {\n const handleFilterChange = useMemo(\n () => (onFilterChange ? debounce(onFilterChange, searchDelay) : undefined),\n [onFilterChange, searchDelay],\n );\n\n const optionsWithValue = useMemo(() => {\n return [\n ...(value ?? []),\n ...(options ?? []).filter(\n (option) =>\n !value?.some(\n (valueItem) => 'value' in option && option.value === valueItem.value,\n ),\n ),\n ];\n }, [options, value]);\n\n const handleUpdate = useCallback(\n (newValue: string[]) => {\n onUpdate(\n newValue.map(\n (valueItem) =>\n optionsWithValue.find(\n (option) => 'value' in option && option.value === valueItem,\n ) as SelectOption,\n ),\n );\n },\n [onUpdate, optionsWithValue],\n );\n\n const selectValue = useMemo(() => value?.map((valueItem) => valueItem.value), [value]);\n\n return (\n <MultiSelect\n {...props}\n ref={ref}\n onUpdate={handleUpdate}\n value={selectValue}\n options={optionsWithValue}\n onFilterChange={handleFilterChange}\n filterable\n filterOption={filterAutocompleteOption}\n />\n );\n },\n);\n\nMultiAutocomplete.displayName = 'MultiAutocomplete';\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,22 @@
1
+ import type { ReactNode } from 'react';
2
+ import React from 'react';
3
+ import type { ButtonButtonProps, SelectProps as CommonSelectProps, SelectOption } from '@gravity-ui/uikit';
4
+ import './Select.scss';
5
+ export type MultiSelectProps = CommonSelectProps & {
6
+ id?: string;
7
+ loading?: boolean;
8
+ loadingItems?: boolean;
9
+ controlProps?: ButtonButtonProps;
10
+ withArrow?: boolean;
11
+ title?: string;
12
+ icon?: ReactNode;
13
+ selectSize?: CommonSelectProps['size'];
14
+ renderDisplayValue?: (value: SelectOption[]) => ReactNode;
15
+ chevronView?: 'desktop' | 'touch';
16
+ autoFocus?: boolean;
17
+ withSpecialNoOptions?: boolean;
18
+ disablePortal?: boolean;
19
+ disableTooltip?: boolean;
20
+ filterOption?: (option: SelectOption, filter: string) => boolean;
21
+ };
22
+ export declare const MultiSelect: React.ForwardRefExoticComponent<MultiSelectProps & React.RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,279 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MultiSelect = void 0;
7
+ var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/createForOfIteratorHelper"));
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ require("core-js/modules/es.array.map.js");
11
+ require("core-js/modules/es.array.push.js");
12
+ require("core-js/modules/es.array.some.js");
13
+ require("core-js/modules/es.function.name.js");
14
+ require("core-js/modules/es.iterator.constructor.js");
15
+ require("core-js/modules/es.iterator.some.js");
16
+ require("core-js/modules/es.object.to-string.js");
17
+ require("core-js/modules/web.timers.js");
18
+ var _react = _interopRequireWildcard(require("react"));
19
+ var _icons = require("@gravity-ui/icons");
20
+ var _uikit = require("@gravity-ui/uikit");
21
+ var _useLocalizedString2 = require("./../../hooks/useLocalizedString");
22
+ var _Select = require("./Select.classname");
23
+ var _i18n = require("./i18n");
24
+ var _filterOption = require("./utils/filterOption");
25
+ var _getValueOption = require("./utils/getValueOption");
26
+ var _isGroupOption = require("./utils/isGroupOption");
27
+ var _renderOption = require("./utils/renderOption");
28
+ require("./Select.css");
29
+ var _jsxRuntime = require("react/jsx-runtime");
30
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
31
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
32
+ var _excluded = ["id", "loading", "loadingItems", "disabled", "renderControl", "className", "options", "value", "width", "size", "name", "placeholder", "popupClassName", "renderOption", "renderSelectedOption", "renderDisplayValue", "controlProps", "controlClassName", "withArrow", "title", "icon", "validationState", "selectSize", "chevronView", "open", "filterable", "disablePortal", "filterOption", "renderFilter", "autoFocus", "filterPlaceholder", "withSpecialNoOptions", "onOpenChange", "disableTooltip"];
33
+ var MultiSelect = exports.MultiSelect = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
34
+ var id = _ref.id,
35
+ loading = _ref.loading,
36
+ loadingItems = _ref.loadingItems,
37
+ disabled = _ref.disabled,
38
+ providedRenderControl = _ref.renderControl,
39
+ className = _ref.className,
40
+ options = _ref.options,
41
+ value = _ref.value,
42
+ width = _ref.width,
43
+ size = _ref.size,
44
+ name = _ref.name,
45
+ placeholder = _ref.placeholder,
46
+ popupClassName = _ref.popupClassName,
47
+ _ref$renderOption = _ref.renderOption,
48
+ providedRenderOption = _ref$renderOption === void 0 ? _renderOption.renderOption : _ref$renderOption,
49
+ renderSelectedOption = _ref.renderSelectedOption,
50
+ renderDisplayValue = _ref.renderDisplayValue,
51
+ controlProps = _ref.controlProps,
52
+ controlClassName = _ref.controlClassName,
53
+ _ref$withArrow = _ref.withArrow,
54
+ withArrow = _ref$withArrow === void 0 ? true : _ref$withArrow,
55
+ title = _ref.title,
56
+ icon = _ref.icon,
57
+ validationState = _ref.validationState,
58
+ selectSize = _ref.selectSize,
59
+ _ref$chevronView = _ref.chevronView,
60
+ chevronView = _ref$chevronView === void 0 ? 'desktop' : _ref$chevronView,
61
+ open = _ref.open,
62
+ filterable = _ref.filterable,
63
+ disablePortal = _ref.disablePortal,
64
+ providedFilterOption = _ref.filterOption,
65
+ providedRenderFilter = _ref.renderFilter,
66
+ autoFocus = _ref.autoFocus,
67
+ filterPlaceholder = _ref.filterPlaceholder,
68
+ withSpecialNoOptions = _ref.withSpecialNoOptions,
69
+ onOpenChange = _ref.onOpenChange,
70
+ disableTooltip = _ref.disableTooltip,
71
+ props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
72
+ var config = (0, _uikit.getConfig)();
73
+ var _useLocalizedString = (0, _useLocalizedString2.useLocalizedString)(_i18n.defaultMessages, config.lang),
74
+ t = _useLocalizedString.t;
75
+ var inputRef = (0, _react.useRef)(null);
76
+ var renderControl = (0, _react.useCallback)(function (renderControlProps, config) {
77
+ var triggerProps = renderControlProps.triggerProps,
78
+ ref = renderControlProps.ref,
79
+ open = renderControlProps.open;
80
+ var hasError = validationState === 'invalid';
81
+ if (loading) {
82
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
83
+ ref: ref,
84
+ className: (0, _Select.cnSelect)('button-wrapper'),
85
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikit.ActionTooltip, {
86
+ title: title !== null && title !== void 0 ? title : '',
87
+ disabled: disableTooltip || !title,
88
+ placement: "bottom",
89
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_uikit.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)({
90
+ view: "outlined",
91
+ size: size,
92
+ disabled: true,
93
+ width: "max",
94
+ name: name,
95
+ className: (0, _Select.cnSelect)('button', {
96
+ loading: true,
97
+ error: hasError,
98
+ platform: 'desktop'
99
+ }, controlClassName)
100
+ }, controlProps), {}, {
101
+ id: id,
102
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_uikit.Loader, {
103
+ className: (0, _Select.cnSelect)('loader')
104
+ }), withArrow && /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikit.Icon, {
105
+ data: chevronView === 'touch' ? _icons.ChevronRight : _icons.ChevronDown
106
+ })]
107
+ }))
108
+ })
109
+ });
110
+ }
111
+ if (providedRenderControl) {
112
+ return providedRenderControl(renderControlProps, config);
113
+ }
114
+ var valueOptions = [];
115
+ if (value && value.length) {
116
+ var _iterator = (0, _createForOfIteratorHelper2.default)(value),
117
+ _step;
118
+ try {
119
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
120
+ var valueItem = _step.value;
121
+ var valueOption = (0, _getValueOption.getValueOption)(options !== null && options !== void 0 ? options : [], valueItem);
122
+ if (valueOption) {
123
+ valueOptions.push(valueOption);
124
+ }
125
+ }
126
+ } catch (err) {
127
+ _iterator.e(err);
128
+ } finally {
129
+ _iterator.f();
130
+ }
131
+ }
132
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
133
+ ref: ref,
134
+ className: (0, _Select.cnSelect)('button-wrapper'),
135
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikit.ActionTooltip, {
136
+ title: title !== null && title !== void 0 ? title : '',
137
+ disabled: disableTooltip || !title,
138
+ placement: "bottom",
139
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_uikit.Button, (0, _objectSpread2.default)((0, _objectSpread2.default)((0, _objectSpread2.default)({
140
+ view: "outlined",
141
+ size: size
142
+ }, triggerProps), {}, {
143
+ name: name,
144
+ "aria-haspopup": "listbox",
145
+ width: "max",
146
+ disabled: disabled,
147
+ className: (0, _Select.cnSelect)('button', {
148
+ empty: valueOptions.length === 0,
149
+ 'with-icon': Boolean(icon),
150
+ error: hasError,
151
+ platform: 'desktop'
152
+ }, controlClassName)
153
+ }, controlProps), {}, {
154
+ id: id,
155
+ children: [icon, renderDisplayValue ? renderDisplayValue(valueOptions) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
156
+ children: [valueOptions.length === 0 && (placeholder || '—'), valueOptions.map(function (item, index) {
157
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.Fragment, {
158
+ children: [renderSelectedOption ? renderSelectedOption(item, index) : item.text || item.content, index < valueOptions.length - 1 && ', ']
159
+ }, item.value);
160
+ })]
161
+ }), withArrow && /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikit.Icon, {
162
+ size: chevronView === 'touch' ? 24 : 16,
163
+ data: chevronView === 'touch' ? _icons.ChevronRight : _icons.ChevronDown,
164
+ className: (0, _Select.cnSelect)('chevron', {
165
+ open: open
166
+ })
167
+ })]
168
+ }))
169
+ })
170
+ });
171
+ }, [validationState, loading, providedRenderControl, value, title, disableTooltip, id, size, name, disabled, icon, controlClassName, controlProps, renderDisplayValue, placeholder, withArrow, chevronView, options, renderSelectedOption]);
172
+ var renderPopup = (0, _react.useCallback)(function (_ref2) {
173
+ var renderFilter = _ref2.renderFilter,
174
+ renderList = _ref2.renderList;
175
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
176
+ children: [renderFilter(), renderList()]
177
+ });
178
+ }, []);
179
+ var renderFilter = (0, _react.useCallback)(function (_ref3) {
180
+ var _props$defaultValue$l, _props$defaultValue;
181
+ var inputProps = _ref3.inputProps;
182
+ var hasDefaultValue = ((_props$defaultValue$l = (_props$defaultValue = props.defaultValue) === null || _props$defaultValue === void 0 ? void 0 : _props$defaultValue.length) !== null && _props$defaultValue$l !== void 0 ? _props$defaultValue$l : 0) > 0;
183
+ var controlProps = {
184
+ role: 'combobox',
185
+ 'aria-activedescendant': inputProps['aria-activedescendant'],
186
+ 'aria-controls': inputProps['aria-controls'],
187
+ 'aria-label': inputProps['aria-label']
188
+ };
189
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikit.TextInput, (0, _objectSpread2.default)((0, _objectSpread2.default)({
190
+ autoFocus: autoFocus && !hasDefaultValue,
191
+ className: (0, _Select.cnSelect)('filter')
192
+ }, inputProps), {}, {
193
+ controlProps: controlProps,
194
+ controlRef: inputRef,
195
+ size: selectSize,
196
+ name: name
197
+ }));
198
+ }, [autoFocus, props.defaultValue, selectSize, name]);
199
+ var optionsWithLoading = (0, _react.useMemo)(function () {
200
+ if (!loadingItems) {
201
+ if (!(options !== null && options !== void 0 && options.length)) {
202
+ return [{
203
+ value: '',
204
+ disabled: true,
205
+ content: withSpecialNoOptions ? /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
206
+ className: (0, _Select.cnSelect)('no-options'),
207
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_uikit.Text, {
208
+ color: "primary",
209
+ variant: "subheader-3",
210
+ children: t('no-options-title')
211
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikit.Text, {
212
+ variant: "body-2",
213
+ children: t('no-options-description')
214
+ })]
215
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
216
+ className: (0, _Select.cnSelect)('no-options'),
217
+ children: t('no-options')
218
+ })
219
+ }];
220
+ }
221
+ return options;
222
+ }
223
+ return [{
224
+ value: '',
225
+ disabled: true,
226
+ content: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
227
+ className: (0, _Select.cnSelect)('items-loader'),
228
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikit.Loader, {
229
+ size: "m"
230
+ })
231
+ })
232
+ }];
233
+ }, [loadingItems, options, t, withSpecialNoOptions]);
234
+ var withGroups = options === null || options === void 0 ? void 0 : options.some(_isGroupOption.isGroupOption);
235
+ (0, _react.useEffect)(function () {
236
+ var timer;
237
+ if (open && inputRef.current) {
238
+ timer = setTimeout(function () {
239
+ var _inputRef$current;
240
+ return (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus({
241
+ preventScroll: true
242
+ });
243
+ }, 0);
244
+ }
245
+ return function () {
246
+ if (timer) {
247
+ clearTimeout(timer);
248
+ }
249
+ };
250
+ // eslint-disable-next-line react-hooks/exhaustive-deps -- inputRef.current must be in list
251
+ }, [open && inputRef.current]);
252
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikit.Select, (0, _objectSpread2.default)({
253
+ disablePortal: disablePortal,
254
+ disabled: disabled || loading,
255
+ options: optionsWithLoading,
256
+ value: value,
257
+ renderControl: renderControl,
258
+ multiple: true,
259
+ renderOption: loadingItems || !(options !== null && options !== void 0 && options.length) ? _renderOption.renderOption : providedRenderOption,
260
+ ref: ref,
261
+ filterPlaceholder: filterPlaceholder !== null && filterPlaceholder !== void 0 ? filterPlaceholder : t('search'),
262
+ popupClassName: (0, _Select.cnSelect)('popup', {
263
+ 'with-groups': withGroups,
264
+ filterable: filterable
265
+ }, popupClassName),
266
+ filterOption: providedFilterOption !== null && providedFilterOption !== void 0 ? providedFilterOption : _filterOption.filterOption,
267
+ width: width,
268
+ className: (0, _Select.cnSelect)(null, className),
269
+ size: size,
270
+ validationState: validationState,
271
+ renderPopup: renderPopup,
272
+ open: open,
273
+ renderFilter: providedRenderFilter !== null && providedRenderFilter !== void 0 ? providedRenderFilter : renderFilter,
274
+ filterable: filterable,
275
+ onOpenChange: onOpenChange
276
+ }, props));
277
+ });
278
+ MultiSelect.displayName = 'MultiSelect';
279
+ // #sourceMappingURL=MultiSelect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_icons","_uikit","_useLocalizedString2","_Select","_i18n","_filterOption","_getValueOption","_isGroupOption","_renderOption","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_interopRequireDefault","MultiSelect","exports","forwardRef","_ref","ref","id","loading","loadingItems","disabled","providedRenderControl","renderControl","className","options","value","width","size","name","placeholder","popupClassName","_ref$renderOption","renderOption","providedRenderOption","renderSelectedOption","renderDisplayValue","controlProps","controlClassName","_ref$withArrow","withArrow","title","icon","validationState","selectSize","_ref$chevronView","chevronView","open","filterable","disablePortal","providedFilterOption","filterOption","providedRenderFilter","renderFilter","autoFocus","filterPlaceholder","withSpecialNoOptions","onOpenChange","disableTooltip","props","_objectWithoutProperties","_excluded","config","getConfig","_useLocalizedString","useLocalizedString","defaultMessages","lang","inputRef","useRef","useCallback","renderControlProps","triggerProps","hasError","_jsx","cnSelect","children","ActionTooltip","placement","_jsxs","Button","_objectSpread","view","error","platform","Loader","Icon","data","ChevronRight","ChevronDown","valueOptions","length","_iterator","_createForOfIteratorHelper","_step","s","done","valueItem","valueOption","getValueOption","push","err","empty","Boolean","_Fragment","map","item","index","Fragment","text","content","renderPopup","_ref2","renderList","_ref3","_props$defaultValue$l","_props$defaultValue","inputProps","hasDefaultValue","defaultValue","role","TextInput","controlRef","optionsWithLoading","useMemo","Text","color","variant","withGroups","some","isGroupOption","useEffect","timer","current","setTimeout","_inputRef$current","focus","preventScroll","clearTimeout","CommonSelect","multiple","displayName"],"sources":["MultiSelect.tsx"],"sourcesContent":["import type {ReactNode, Ref} from 'react';\nimport React, {Fragment, forwardRef, useCallback, useEffect, useMemo, useRef} from 'react';\n\nimport {ChevronDown, ChevronRight} from '@gravity-ui/icons';\nimport type {\n ButtonButtonProps,\n SelectProps as CommonSelectProps,\n SelectOption,\n} from '@gravity-ui/uikit';\nimport {\n ActionTooltip,\n Button,\n Select as CommonSelect,\n Icon,\n Loader,\n Text,\n TextInput,\n getConfig,\n} from '@gravity-ui/uikit';\n\nimport {useLocalizedString} from '~/src/hooks/useLocalizedString';\n\nimport {cnSelect} from './Select.classname';\nimport {defaultMessages} from './i18n';\nimport {filterOption} from './utils/filterOption';\nimport {getValueOption} from './utils/getValueOption';\nimport {isGroupOption} from './utils/isGroupOption';\nimport {renderOption} from './utils/renderOption';\n\nimport './Select.scss';\n\nexport type MultiSelectProps = CommonSelectProps & {\n id?: string;\n loading?: boolean;\n loadingItems?: boolean;\n controlProps?: ButtonButtonProps;\n withArrow?: boolean;\n title?: string;\n icon?: ReactNode;\n selectSize?: CommonSelectProps['size'];\n renderDisplayValue?: (value: SelectOption[]) => ReactNode;\n chevronView?: 'desktop' | 'touch';\n autoFocus?: boolean;\n withSpecialNoOptions?: boolean;\n disablePortal?: boolean;\n disableTooltip?: boolean;\n filterOption?: (option: SelectOption, filter: string) => boolean;\n};\n\nexport const MultiSelect: React.ForwardRefExoticComponent<\n MultiSelectProps & React.RefAttributes<HTMLButtonElement>\n> = forwardRef<HTMLButtonElement, MultiSelectProps>(\n (\n {\n id,\n loading,\n loadingItems,\n disabled,\n renderControl: providedRenderControl,\n className,\n options,\n value,\n width,\n size,\n name,\n placeholder,\n popupClassName,\n renderOption: providedRenderOption = renderOption,\n renderSelectedOption,\n renderDisplayValue,\n controlProps,\n controlClassName,\n withArrow = true,\n title,\n icon,\n validationState,\n selectSize,\n chevronView = 'desktop',\n open,\n filterable,\n disablePortal,\n filterOption: providedFilterOption,\n renderFilter: providedRenderFilter,\n autoFocus,\n filterPlaceholder,\n withSpecialNoOptions,\n onOpenChange,\n disableTooltip,\n ...props\n },\n ref,\n ) => {\n const config = getConfig();\n const {t} = useLocalizedString(defaultMessages, config.lang);\n\n const inputRef = useRef<HTMLInputElement | null>(null);\n\n const renderControl = useCallback<NonNullable<CommonSelectProps['renderControl']>>(\n (renderControlProps, config) => {\n const {triggerProps, ref, open} = renderControlProps;\n const hasError = validationState === 'invalid';\n\n if (loading) {\n return (\n <div\n ref={ref as Ref<HTMLDivElement>}\n className={cnSelect('button-wrapper')}\n >\n <ActionTooltip\n title={title ?? ''}\n disabled={disableTooltip || !title}\n placement=\"bottom\"\n >\n <Button\n view=\"outlined\"\n size={size}\n disabled\n width=\"max\"\n name={name}\n className={cnSelect(\n 'button',\n {\n loading: true,\n error: hasError,\n platform: 'desktop',\n },\n controlClassName,\n )}\n {...controlProps}\n id={id}\n >\n <Loader className={cnSelect('loader')} />\n {withArrow && (\n <Icon\n data={\n chevronView === 'touch' ? ChevronRight : ChevronDown\n }\n />\n )}\n </Button>\n </ActionTooltip>\n </div>\n );\n }\n\n if (providedRenderControl) {\n return providedRenderControl(renderControlProps, config);\n }\n\n const valueOptions: SelectOption[] = [];\n\n if (value && value.length) {\n for (const valueItem of value) {\n const valueOption = getValueOption(options ?? [], valueItem);\n\n if (valueOption) {\n valueOptions.push(valueOption);\n }\n }\n }\n\n return (\n <div ref={ref as Ref<HTMLDivElement>} className={cnSelect('button-wrapper')}>\n <ActionTooltip\n title={title ?? ''}\n disabled={disableTooltip || !title}\n placement=\"bottom\"\n >\n <Button\n view=\"outlined\"\n size={size}\n {...triggerProps}\n name={name}\n aria-haspopup=\"listbox\"\n width=\"max\"\n disabled={disabled}\n className={cnSelect(\n 'button',\n {\n empty: valueOptions.length === 0,\n 'with-icon': Boolean(icon),\n error: hasError,\n platform: 'desktop',\n },\n controlClassName,\n )}\n {...controlProps}\n id={id}\n >\n {icon}\n {renderDisplayValue ? (\n renderDisplayValue(valueOptions)\n ) : (\n <>\n {valueOptions.length === 0 && (placeholder || '—')}\n {valueOptions.map((item, index) => (\n <Fragment key={item.value}>\n {renderSelectedOption\n ? renderSelectedOption(item, index)\n : item.text || item.content}\n {index < valueOptions.length - 1 && ', '}\n </Fragment>\n ))}\n </>\n )}\n {withArrow && (\n <Icon\n size={chevronView === 'touch' ? 24 : 16}\n data={chevronView === 'touch' ? ChevronRight : ChevronDown}\n className={cnSelect('chevron', {\n open,\n })}\n />\n )}\n </Button>\n </ActionTooltip>\n </div>\n );\n },\n [\n validationState,\n loading,\n providedRenderControl,\n value,\n title,\n disableTooltip,\n id,\n size,\n name,\n disabled,\n icon,\n controlClassName,\n controlProps,\n renderDisplayValue,\n placeholder,\n withArrow,\n chevronView,\n options,\n renderSelectedOption,\n ],\n );\n\n const renderPopup = useCallback<NonNullable<CommonSelectProps['renderPopup']>>(\n ({renderFilter, renderList}) => (\n <>\n {renderFilter()}\n {renderList()}\n </>\n ),\n [],\n );\n\n const renderFilter = useCallback<NonNullable<CommonSelectProps['renderFilter']>>(\n ({inputProps}) => {\n const hasDefaultValue = (props.defaultValue?.length ?? 0) > 0;\n\n const controlProps = {\n role: 'combobox',\n 'aria-activedescendant': inputProps['aria-activedescendant'],\n 'aria-controls': inputProps['aria-controls'],\n 'aria-label': inputProps['aria-label'],\n };\n\n return (\n <TextInput\n autoFocus={autoFocus && !hasDefaultValue}\n className={cnSelect('filter')}\n {...inputProps}\n controlProps={controlProps}\n controlRef={inputRef}\n size={selectSize}\n name={name}\n />\n );\n },\n [autoFocus, props.defaultValue, selectSize, name],\n );\n\n const optionsWithLoading = useMemo(() => {\n if (!loadingItems) {\n if (!options?.length) {\n return [\n {\n value: '',\n disabled: true,\n content: withSpecialNoOptions ? (\n <div className={cnSelect('no-options')}>\n <Text color=\"primary\" variant=\"subheader-3\">\n {t('no-options-title')}\n </Text>\n <Text variant=\"body-2\">{t('no-options-description')}</Text>\n </div>\n ) : (\n <div className={cnSelect('no-options')}>{t('no-options')}</div>\n ),\n },\n ];\n }\n\n return options;\n }\n\n return [\n {\n value: '',\n disabled: true,\n content: (\n <div className={cnSelect('items-loader')}>\n <Loader size=\"m\" />\n </div>\n ),\n },\n ];\n }, [loadingItems, options, t, withSpecialNoOptions]);\n\n const withGroups = options?.some(isGroupOption);\n\n useEffect(() => {\n let timer: NodeJS.Timeout | undefined;\n\n if (open && inputRef.current) {\n timer = setTimeout(() => inputRef.current?.focus({preventScroll: true}), 0);\n }\n\n return () => {\n if (timer) {\n clearTimeout(timer);\n }\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- inputRef.current must be in list\n }, [open && inputRef.current]);\n\n return (\n <CommonSelect\n disablePortal={disablePortal}\n disabled={disabled || loading}\n options={optionsWithLoading}\n value={value}\n renderControl={renderControl}\n multiple\n renderOption={\n loadingItems || !options?.length ? renderOption : providedRenderOption\n }\n ref={ref}\n filterPlaceholder={filterPlaceholder ?? t('search')}\n popupClassName={cnSelect(\n 'popup',\n {\n 'with-groups': withGroups,\n filterable,\n },\n popupClassName,\n )}\n filterOption={providedFilterOption ?? filterOption}\n width={width}\n className={cnSelect(null, className)}\n size={size}\n validationState={validationState}\n renderPopup={renderPopup}\n open={open}\n renderFilter={providedRenderFilter ?? renderFilter}\n filterable={filterable}\n onOpenChange={onOpenChange}\n {...props}\n />\n );\n },\n);\n\nMultiSelect.displayName = 'MultiSelect';\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const cnSelect: import("@bem-react/classname").ClassNameFormatter;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.cnSelect = void 0;
7
+ var _cn = require("../cn");
8
+ var cnSelect = exports.cnSelect = (0, _cn.block)('select');
9
+ // #sourceMappingURL=Select.classname.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_cn","require","cnSelect","exports","block"],"sources":["Select.classname.ts"],"sourcesContent":["import {block} from '../cn';\n\nexport const cnSelect = block('select');\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAEO,IAAMC,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAG,IAAAE,SAAK,EAAC,QAAQ,CAAC","ignoreList":[]}
@@ -0,0 +1,121 @@
1
+ .tpc-select__button {
2
+ vertical-align: text-bottom;
3
+ }
4
+ .tpc-select__button_error::before {
5
+ --_--focus-outline-color: var(--g-color-line-danger);
6
+ border-color: var(--g-color-line-danger);
7
+ }
8
+ .tpc-select__button:not(.tpc-select__button_with-icon).tpc-select__button_empty {
9
+ color: var(--g-color-text-hint);
10
+ }
11
+ .tpc-select__button:not(.tpc-select__button_loading) {
12
+ justify-content: space-between;
13
+ }
14
+ .tpc-select__button:disabled {
15
+ color: var(--g-color-text-hint);
16
+ }
17
+ .tpc-select__button_clear {
18
+ padding: 0;
19
+ }
20
+ .tpc-select__button_clear .g-button__icon_side_end {
21
+ margin: 0;
22
+ }
23
+ .tpc-select__button_loading.g-button_width_max {
24
+ justify-content: space-between;
25
+ }
26
+ .tpc-select__button_loading.g-button_width_max .g-button__text {
27
+ margin: auto;
28
+ }
29
+ .tpc-select__button_platform_desktop .tpc-select__chevron_open {
30
+ transform: rotate(180deg);
31
+ }
32
+ .tpc-select__loader {
33
+ vertical-align: middle;
34
+ }
35
+ .tpc-select__items-loader {
36
+ display: flex;
37
+ justify-content: center;
38
+ }
39
+ .tpc-select__option {
40
+ display: inline-block;
41
+ width: 100%;
42
+ overflow: hidden;
43
+ white-space: nowrap;
44
+ text-overflow: ellipsis;
45
+ }
46
+ .tpc-select__option_disabled {
47
+ cursor: default;
48
+ color: var(--g-color-text-secondary);
49
+ }
50
+ .tpc-select__no-options {
51
+ justify-content: center;
52
+ }
53
+ .tpc-select__popup .g-select-list__group-label-content {
54
+ color: var(--g-color-text-hint);
55
+ }
56
+ .tpc-select__popup .tpc-select__filter {
57
+ width: auto;
58
+ padding: var(--g-spacing-1) var(--g-spacing-1) 0;
59
+ }
60
+ .tpc-select__button-wrapper {
61
+ width: 100%;
62
+ }
63
+ .tpc-select__popup_mobile {
64
+ --suggest-offset: 230px;
65
+ }
66
+ .tpc-select__popup_mobile .tpc-select__filter {
67
+ width: auto;
68
+ padding: 0 var(--g-spacing-5);
69
+ margin-bottom: var(--g-spacing-2);
70
+ }
71
+ .tpc-select__popup_mobile .g-sheet__sheet-content {
72
+ display: flex;
73
+ flex-direction: column;
74
+ padding: 0;
75
+ }
76
+ .tpc-select__popup_mobile .g-sheet__sheet-content > div:not([class]) {
77
+ display: flex;
78
+ flex-direction: column;
79
+ flex: auto;
80
+ width: 100%;
81
+ min-height: 0;
82
+ }
83
+ .tpc-select__popup_mobile .g-sheet__sheet-content .g-select-filter {
84
+ flex: none;
85
+ }
86
+ .tpc-select__popup_mobile .g-sheet__sheet-content .g-select-list_mobile {
87
+ flex: auto;
88
+ }
89
+ .tpc-select__popup_mobile .g-select-list__option {
90
+ padding: var(--g-spacing-2) var(--g-spacing-4);
91
+ }
92
+ .tpc-select__popup_mobile .g-select-list__group-label-content {
93
+ font-weight: inherit;
94
+ }
95
+ .tpc-select__popup_mobile .g-select-list_mobile .g-select-list__group-label:not(.g-select-list__group-label_empty) {
96
+ height: auto;
97
+ }
98
+ .tpc-select__popup_mobile .g-select-list__item:has(.g-select-list__group-label) {
99
+ margin-top: var(--g-spacing-2);
100
+ }
101
+ .tpc-select__popup_mobile .g-select-list__item:not(:first-child) .g-select-list__group-label::before {
102
+ right: var(--g-spacing-3);
103
+ left: var(--g-spacing-3);
104
+ width: auto;
105
+ }
106
+ .tpc-select__popup_mobile.tpc-select__popup_filterable .g-sheet__sheet-content {
107
+ height: calc(100dvh - var(--suggest-offset));
108
+ }
109
+ .tpc-select__popup:not(.tpc-select__popup_mobile).tpc-select__popup_with-groups .g-select-list__option {
110
+ padding-left: var(--g-spacing-4);
111
+ }
112
+ .tpc-select__popup:not(.tpc-select__popup_mobile) .g-select-list {
113
+ /* stylelint-disable-next-line declaration-no-important */
114
+ max-height: 40vh !important;
115
+ }
116
+ .tpc-select__title_platform_touch {
117
+ padding-top: var(--g-spacing-3);
118
+ padding-bottom: var(--g-spacing-3);
119
+ margin: auto;
120
+ }
121
+ /*# sourceMappingURL=Select.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Select.scss"],"names":[],"mappings":"AAGI;EACI,2BAAA;AAFR;AAIQ;EACI,oDAAA;EACA,wCAAA;AAFZ;AAMY;EACI,+BAAA;AAJhB;AAQQ;EACI,8BAAA;AANZ;AASQ;EACI,+BAAA;AAPZ;AAUQ;EACI,UAAA;AARZ;AAUY;EACI,SAAA;AARhB;AAYQ;EACI,8BAAA;AAVZ;AAYY;EACI,YAAA;AAVhB;AAgBgB;EACI,yBAAA;AAdpB;AAoBI;EACI,sBAAA;AAlBR;AAqBI;EACI,aAAA;EACA,uBAAA;AAnBR;AAsBI;EACI,qBAAA;EAEA,WAAA;EAEA,gBAAA;EAEA,mBAAA;EACA,uBAAA;AAvBR;AAyBQ;EACI,eAAA;EAEA,oCAAA;AAxBZ;AA4BI;EACI,uBAAA;AA1BR;AA8BQ;EACI,+BAAA;AA5BZ;AA+BQ;EACI,WAAA;EACA,gDAAA;AA7BZ;AAiCI;EACI,WAAA;AA/BR;AAkCI;EACI,uBAAA;AAhCR;AAkCQ;EACI,WAAA;EACA,6BAAA;EACA,iCAAA;AAhCZ;AAmCQ;EACI,aAAA;EACA,sBAAA;EAEA,UAAA;AAlCZ;AAoCY;EACI,aAAA;EACA,sBAAA;EAEA,UAAA;EACA,WAAA;EACA,aAAA;AAnChB;AAsCY;EACI,UAAA;AApChB;AAuCY;EACI,UAAA;AArChB;AAyCQ;EACI,8CAAA;AAvCZ;AA0CQ;EACI,oBAAA;AAxCZ;AA2CQ;EACI,YAAA;AAzCZ;AA4CQ;EACI,8BAAA;AA1CZ;AA6CQ;EACI,yBAAA;EACA,wBAAA;EAEA,WAAA;AA5CZ;AAgDY;EACI,4CAAA;AA9ChB;AAqDY;EACI,gCAAA;AAnDhB;AAuDQ;EAEI,yDAAA;EACA,2BAAA;AAtDZ;AA2DQ;EACI,+BAAA;EACA,kCAAA;EACA,YAAA;AAzDZ","file":"Select.css","sourcesContent":["$arrowIconSpace: 25px;\n\n.tpc-select {\n &__button {\n vertical-align: text-bottom;\n\n &_error::before {\n --_--focus-outline-color: var(--g-color-line-danger);\n border-color: var(--g-color-line-danger);\n }\n\n &:not(.tpc-select__button_with-icon) {\n &.tpc-select__button_empty {\n color: var(--g-color-text-hint);\n }\n }\n\n &:not(.tpc-select__button_loading) {\n justify-content: space-between;\n }\n\n &:disabled {\n color: var(--g-color-text-hint);\n }\n\n &_clear {\n padding: 0;\n\n .g-button__icon_side_end {\n margin: 0;\n }\n }\n\n &_loading.g-button_width_max {\n justify-content: space-between;\n\n .g-button__text {\n margin: auto;\n }\n }\n\n &_platform {\n &_desktop {\n .tpc-select__chevron_open {\n transform: rotate(180deg);\n }\n }\n }\n }\n\n &__loader {\n vertical-align: middle;\n }\n\n &__items-loader {\n display: flex;\n justify-content: center;\n }\n\n &__option {\n display: inline-block;\n\n width: 100%;\n\n overflow: hidden;\n\n white-space: nowrap;\n text-overflow: ellipsis;\n\n &_disabled {\n cursor: default;\n\n color: var(--g-color-text-secondary);\n }\n }\n\n &__no-options {\n justify-content: center;\n }\n\n &__popup {\n .g-select-list__group-label-content {\n color: var(--g-color-text-hint);\n }\n\n .tpc-select__filter {\n width: auto;\n padding: var(--g-spacing-1) var(--g-spacing-1) 0;\n }\n }\n\n &__button-wrapper {\n width: 100%;\n }\n\n &__popup_mobile {\n --suggest-offset: 230px;\n\n .tpc-select__filter {\n width: auto;\n padding: 0 var(--g-spacing-5);\n margin-bottom: var(--g-spacing-2);\n }\n\n .g-sheet__sheet-content {\n display: flex;\n flex-direction: column;\n\n padding: 0;\n\n > div:not([class]) {\n display: flex;\n flex-direction: column;\n\n flex: auto;\n width: 100%;\n min-height: 0;\n }\n\n .g-select-filter {\n flex: none;\n }\n\n .g-select-list_mobile {\n flex: auto;\n }\n }\n\n .g-select-list__option {\n padding: var(--g-spacing-2) var(--g-spacing-4);\n }\n\n .g-select-list__group-label-content {\n font-weight: inherit;\n }\n\n .g-select-list_mobile .g-select-list__group-label:not(.g-select-list__group-label_empty) {\n height: auto;\n }\n\n .g-select-list__item:has(.g-select-list__group-label) {\n margin-top: var(--g-spacing-2);\n }\n\n .g-select-list__item:not(:first-child) .g-select-list__group-label::before {\n right: var(--g-spacing-3);\n left: var(--g-spacing-3);\n\n width: auto;\n }\n\n &.tpc-select__popup_filterable {\n .g-sheet__sheet-content {\n height: calc(100dvh - var(--suggest-offset));\n }\n }\n }\n\n &__popup:not(.tpc-select__popup_mobile) {\n &.tpc-select__popup_with-groups {\n .g-select-list__option {\n padding-left: var(--g-spacing-4);\n }\n }\n\n .g-select-list {\n // override Select styles\n /* stylelint-disable-next-line declaration-no-important */\n max-height: 40vh !important;\n }\n }\n\n &__title {\n &_platform_touch {\n padding-top: var(--g-spacing-3);\n padding-bottom: var(--g-spacing-3);\n margin: auto;\n }\n }\n}\n"],"sourceRoot":""}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import type { MultiSelectProps } from './MultiSelect';
3
+ export type SelectProps = Omit<MultiSelectProps, 'multiple' | 'value' | 'onUpdate' | 'onFocus' | 'onBlur'> & {
4
+ value?: string;
5
+ onUpdate: (value: string) => void;
6
+ };
7
+ export declare const Select: React.ForwardRefExoticComponent<Omit<MultiSelectProps, "multiple" | "onUpdate" | "value" | "onFocus" | "onBlur"> & {
8
+ value?: string;
9
+ onUpdate: (value: string) => void;
10
+ } & React.RefAttributes<HTMLButtonElement>>;