@weavix/tracker-components 0.0.3 → 0.1.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 (277) hide show
  1. package/README.md +191 -19
  2. package/build/cjs/assets/icons/keyResult.d.ts +4 -0
  3. package/build/cjs/assets/icons/keyResult.js +21 -0
  4. package/build/cjs/assets/icons/keyResult.js.map +1 -0
  5. package/build/cjs/components/FieldsSelect/FieldsSelect.classname.js +1 -1
  6. package/build/cjs/components/FieldsSelect/FieldsSelect.classname.js.map +1 -1
  7. package/build/cjs/components/Icon/EntityIcon/EntityIcon.classname.js +1 -1
  8. package/build/cjs/components/Icon/EntityIcon/EntityIcon.classname.js.map +1 -1
  9. package/build/cjs/components/Icon/GoalIcon/GoalIcon.d.ts +6 -0
  10. package/build/cjs/components/Icon/GoalIcon/GoalIcon.js +24 -0
  11. package/build/cjs/components/Icon/GoalIcon/GoalIcon.js.map +1 -0
  12. package/build/cjs/components/Icon/GoalIcon/README.md +123 -0
  13. package/build/cjs/components/Icon/GoalIcon/index.d.ts +1 -0
  14. package/build/cjs/components/Icon/GoalIcon/index.js +13 -0
  15. package/build/cjs/components/Icon/GoalIcon/index.js.map +1 -0
  16. package/build/cjs/components/Icon/Icon.classname.js +1 -1
  17. package/build/cjs/components/Icon/Icon.classname.js.map +1 -1
  18. package/build/cjs/components/Icon/IconRefuge/IconRefuge.classname.js +1 -1
  19. package/build/cjs/components/Icon/IconRefuge/IconRefuge.classname.js.map +1 -1
  20. package/build/cjs/components/Icon/IssueTypeIcon/IssueTypeIcon.classname.js +1 -1
  21. package/build/cjs/components/Icon/IssueTypeIcon/IssueTypeIcon.classname.js.map +1 -1
  22. package/build/cjs/components/Icon/IssueTypeIcon/README.md +105 -23
  23. package/build/cjs/components/Icon/KeyResultIcon/KeyResultIcon.d.ts +4 -0
  24. package/build/cjs/components/Icon/KeyResultIcon/KeyResultIcon.js +35 -0
  25. package/build/cjs/components/Icon/KeyResultIcon/KeyResultIcon.js.map +1 -0
  26. package/build/cjs/components/Icon/KeyResultIcon/README.md +73 -0
  27. package/build/cjs/components/Icon/KeyResultIcon/i18n.d.ts +6 -0
  28. package/build/cjs/components/Icon/KeyResultIcon/i18n.js +13 -0
  29. package/build/cjs/components/Icon/KeyResultIcon/i18n.js.map +1 -0
  30. package/build/cjs/components/Icon/KeyResultIcon/index.d.ts +2 -0
  31. package/build/cjs/components/Icon/KeyResultIcon/index.js +13 -0
  32. package/build/cjs/components/Icon/KeyResultIcon/index.js.map +1 -0
  33. package/build/cjs/components/Icon/MetaEntityIcon/MetaEntityIcon.d.ts +7 -0
  34. package/build/cjs/components/Icon/MetaEntityIcon/MetaEntityIcon.js +46 -0
  35. package/build/cjs/components/Icon/MetaEntityIcon/MetaEntityIcon.js.map +1 -0
  36. package/build/cjs/components/Icon/MetaEntityIcon/README.md +126 -0
  37. package/build/cjs/components/Icon/MetaEntityIcon/index.d.ts +2 -0
  38. package/build/cjs/components/Icon/MetaEntityIcon/index.js +13 -0
  39. package/build/cjs/components/Icon/MetaEntityIcon/index.js.map +1 -0
  40. package/build/cjs/components/Icon/PortfolioIcon/README.md +87 -9
  41. package/build/cjs/components/Icon/PortfolioIcon/index.d.ts +2 -0
  42. package/build/cjs/components/Icon/PortfolioIcon/index.js +13 -0
  43. package/build/cjs/components/Icon/PortfolioIcon/index.js.map +1 -0
  44. package/build/cjs/components/Icon/ProjectIcon/README.md +133 -9
  45. package/build/cjs/components/Icon/ProjectIcon/index.d.ts +2 -0
  46. package/build/cjs/components/Icon/ProjectIcon/index.js +13 -0
  47. package/build/cjs/components/Icon/ProjectIcon/index.js.map +1 -0
  48. package/build/cjs/components/Icon/index.d.ts +7 -2
  49. package/build/cjs/components/Icon/index.js +57 -2
  50. package/build/cjs/components/Icon/index.js.map +1 -1
  51. package/build/cjs/components/MetaEntitiesSelect/MetaEntitiesSelect.classname.d.ts +1 -0
  52. package/build/cjs/components/MetaEntitiesSelect/MetaEntitiesSelect.classname.js +9 -0
  53. package/build/cjs/components/MetaEntitiesSelect/MetaEntitiesSelect.classname.js.map +1 -0
  54. package/build/cjs/components/MetaEntitiesSelect/MetaEntitiesSelect.d.ts +10 -0
  55. package/build/cjs/components/MetaEntitiesSelect/MetaEntitiesSelect.js +65 -0
  56. package/build/cjs/components/MetaEntitiesSelect/MetaEntitiesSelect.js.map +1 -0
  57. package/build/cjs/components/MetaEntitiesSelect/README.md +183 -0
  58. package/build/cjs/components/MetaEntitiesSelect/components/EntitiesSuggest/EntitiesSuggest.d.ts +15 -0
  59. package/build/cjs/components/MetaEntitiesSelect/components/EntitiesSuggest/EntitiesSuggest.js +69 -0
  60. package/build/cjs/components/MetaEntitiesSelect/components/EntitiesSuggest/EntitiesSuggest.js.map +1 -0
  61. package/build/cjs/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.classname.d.ts +1 -0
  62. package/build/cjs/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.classname.js +9 -0
  63. package/build/cjs/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.classname.js.map +1 -0
  64. package/build/cjs/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.css +18 -0
  65. package/build/cjs/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.css.map +1 -0
  66. package/build/cjs/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.d.ts +10 -0
  67. package/build/cjs/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.js +33 -0
  68. package/build/cjs/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.js.map +1 -0
  69. package/build/cjs/components/MetaEntitiesSelect/i18n.d.ts +6 -0
  70. package/build/cjs/components/MetaEntitiesSelect/i18n.js +13 -0
  71. package/build/cjs/components/MetaEntitiesSelect/i18n.js.map +1 -0
  72. package/build/cjs/components/MetaEntitiesSelect/index.d.ts +2 -0
  73. package/build/cjs/components/MetaEntitiesSelect/index.js +13 -0
  74. package/build/cjs/components/MetaEntitiesSelect/index.js.map +1 -0
  75. package/build/cjs/components/MetaEntitiesSelect/utils/getMetaEntityDisplay.d.ts +2 -0
  76. package/build/cjs/components/MetaEntitiesSelect/utils/getMetaEntityDisplay.js +11 -0
  77. package/build/cjs/components/MetaEntitiesSelect/utils/getMetaEntityDisplay.js.map +1 -0
  78. package/build/cjs/components/MetaEntitiesSelect/utils/getMetaEntityId.d.ts +2 -0
  79. package/build/cjs/components/MetaEntitiesSelect/utils/getMetaEntityId.js +10 -0
  80. package/build/cjs/components/MetaEntitiesSelect/utils/getMetaEntityId.js.map +1 -0
  81. package/build/cjs/components/PluginFieldsSelect/PluginFieldsSelect.d.ts +1 -1
  82. package/build/cjs/components/PluginFieldsSelect/PluginFieldsSelect.js.map +1 -1
  83. package/build/cjs/components/QueueIcon/QueueIcon.classname.js +1 -1
  84. package/build/cjs/components/QueueIcon/QueueIcon.classname.js.map +1 -1
  85. package/build/cjs/components/QueueSelect/QueueSelect.classname.js +1 -1
  86. package/build/cjs/components/QueueSelect/QueueSelect.classname.js.map +1 -1
  87. package/build/cjs/components/QueueSelect/QueueSelect.css.map +1 -1
  88. package/build/cjs/components/Select/Autocomplete.d.ts +1 -1
  89. package/build/cjs/components/Select/MultiAutocomplete.d.ts +1 -1
  90. package/build/cjs/components/Select/Select.classname.js +1 -1
  91. package/build/cjs/components/Select/Select.classname.js.map +1 -1
  92. package/build/cjs/components/Select/Select.css.map +1 -1
  93. package/build/cjs/components/Select/Select.d.ts +1 -1
  94. package/build/cjs/components/Select/SelectSearch/SelectSearch.classname.js +1 -1
  95. package/build/cjs/components/Select/SelectSearch/SelectSearch.classname.js.map +1 -1
  96. package/build/cjs/components/Select/SelectSearch/SelectSearch.d.ts +1 -1
  97. package/build/cjs/components/Select/SelectSearch/SelectSearch.js +2 -2
  98. package/build/cjs/components/Select/SelectSearch/SelectSearch.js.map +1 -1
  99. package/build/cjs/components/Select/SelectSearch/hooks/useSelectSearch.d.ts +2 -2
  100. package/build/cjs/components/Select/SelectSearch/hooks/useSelectSearch.js.map +1 -1
  101. package/build/cjs/components/Select/TagsSelect/TagsSelect.classname.js +1 -1
  102. package/build/cjs/components/Select/TagsSelect/TagsSelect.classname.js.map +1 -1
  103. package/build/cjs/components/Suggest/Suggest.classname.d.ts +1 -0
  104. package/build/cjs/components/Suggest/Suggest.classname.js +9 -0
  105. package/build/cjs/components/Suggest/Suggest.classname.js.map +1 -0
  106. package/build/cjs/components/Suggest/Suggest.css +24 -0
  107. package/build/cjs/components/Suggest/Suggest.css.map +1 -0
  108. package/build/cjs/components/Suggest/Suggest.d.ts +147 -0
  109. package/build/cjs/components/Suggest/Suggest.js +621 -0
  110. package/build/cjs/components/Suggest/Suggest.js.map +1 -0
  111. package/build/cjs/components/Suggest/i18n.d.ts +22 -0
  112. package/build/cjs/components/Suggest/i18n.js +29 -0
  113. package/build/cjs/components/Suggest/i18n.js.map +1 -0
  114. package/build/cjs/components/Suggest/index.d.ts +1 -0
  115. package/build/cjs/components/Suggest/index.js +17 -0
  116. package/build/cjs/components/Suggest/index.js.map +1 -0
  117. package/build/cjs/components/TrackerDisclosure/README.md +205 -0
  118. package/build/cjs/components/TrackerDisclosure/TrackerDisclosure.classname.js +1 -1
  119. package/build/cjs/components/TrackerDisclosure/TrackerDisclosure.classname.js.map +1 -1
  120. package/build/cjs/components/TrackerSelect/TrackerSelect.classname.js +1 -1
  121. package/build/cjs/components/TrackerSelect/TrackerSelect.classname.js.map +1 -1
  122. package/build/cjs/components/TrackerSelect/TrackerSelect.css.map +1 -1
  123. package/build/cjs/components/useOnFocusOutside/OutsideFocusHandlerContainer.d.ts +9 -0
  124. package/build/cjs/components/useOnFocusOutside/OutsideFocusHandlerContainer.js +31 -0
  125. package/build/cjs/components/useOnFocusOutside/OutsideFocusHandlerContainer.js.map +1 -0
  126. package/build/cjs/components/useOnFocusOutside/useOnFocusOutside.d.ts +1 -0
  127. package/build/cjs/components/useOnFocusOutside/useOnFocusOutside.js +38 -0
  128. package/build/cjs/components/useOnFocusOutside/useOnFocusOutside.js.map +1 -0
  129. package/build/cjs/hooks/useConditionallyControlledState.d.ts +1 -0
  130. package/build/cjs/hooks/useConditionallyControlledState.js +15 -0
  131. package/build/cjs/hooks/useConditionallyControlledState.js.map +1 -0
  132. package/build/cjs/hooks/useLocalizedString.d.ts +1 -1
  133. package/build/cjs/hooks/useLocalizedString.js.map +1 -1
  134. package/build/cjs/index.d.ts +1 -0
  135. package/build/cjs/index.js +12 -0
  136. package/build/cjs/index.js.map +1 -1
  137. package/build/esm/assets/icons/keyResult.d.ts +4 -0
  138. package/build/esm/assets/icons/keyResult.js +13 -0
  139. package/build/esm/components/FieldsSelect/FieldsSelect.classname.js +1 -1
  140. package/build/esm/components/FieldsSelect/FieldsSelect.classname.js.map +1 -1
  141. package/build/esm/components/Icon/EntityIcon/EntityIcon.classname.js +1 -1
  142. package/build/esm/components/Icon/EntityIcon/EntityIcon.classname.js.map +1 -1
  143. package/build/esm/components/Icon/GoalIcon/GoalIcon.d.ts +6 -0
  144. package/build/esm/components/Icon/GoalIcon/GoalIcon.js +17 -0
  145. package/build/esm/components/Icon/GoalIcon/GoalIcon.js.map +1 -0
  146. package/build/esm/components/Icon/GoalIcon/README.md +123 -0
  147. package/build/esm/components/Icon/GoalIcon/index.d.ts +1 -0
  148. package/build/esm/components/Icon/GoalIcon/index.js +2 -0
  149. package/build/esm/components/Icon/GoalIcon/index.js.map +1 -0
  150. package/build/esm/components/Icon/Icon.classname.js +1 -1
  151. package/build/esm/components/Icon/Icon.classname.js.map +1 -1
  152. package/build/esm/components/Icon/IconRefuge/IconRefuge.classname.js +1 -1
  153. package/build/esm/components/Icon/IconRefuge/IconRefuge.classname.js.map +1 -1
  154. package/build/esm/components/Icon/IssueTypeIcon/IssueTypeIcon.classname.js +1 -1
  155. package/build/esm/components/Icon/IssueTypeIcon/IssueTypeIcon.classname.js.map +1 -1
  156. package/build/esm/components/Icon/IssueTypeIcon/README.md +105 -23
  157. package/build/esm/components/Icon/KeyResultIcon/KeyResultIcon.d.ts +4 -0
  158. package/build/esm/components/Icon/KeyResultIcon/KeyResultIcon.js +28 -0
  159. package/build/esm/components/Icon/KeyResultIcon/KeyResultIcon.js.map +1 -0
  160. package/build/esm/components/Icon/KeyResultIcon/README.md +73 -0
  161. package/build/esm/components/Icon/KeyResultIcon/i18n.d.ts +6 -0
  162. package/build/esm/components/Icon/KeyResultIcon/i18n.js +7 -0
  163. package/build/esm/components/Icon/KeyResultIcon/i18n.js.map +1 -0
  164. package/build/esm/components/Icon/KeyResultIcon/index.d.ts +2 -0
  165. package/build/esm/components/Icon/KeyResultIcon/index.js +2 -0
  166. package/build/esm/components/Icon/KeyResultIcon/index.js.map +1 -0
  167. package/build/esm/components/Icon/MetaEntityIcon/MetaEntityIcon.d.ts +7 -0
  168. package/build/esm/components/Icon/MetaEntityIcon/MetaEntityIcon.js +39 -0
  169. package/build/esm/components/Icon/MetaEntityIcon/MetaEntityIcon.js.map +1 -0
  170. package/build/esm/components/Icon/MetaEntityIcon/README.md +126 -0
  171. package/build/esm/components/Icon/MetaEntityIcon/index.d.ts +2 -0
  172. package/build/esm/components/Icon/MetaEntityIcon/index.js +2 -0
  173. package/build/esm/components/Icon/MetaEntityIcon/index.js.map +1 -0
  174. package/build/esm/components/Icon/PortfolioIcon/README.md +87 -9
  175. package/build/esm/components/Icon/PortfolioIcon/index.d.ts +2 -0
  176. package/build/esm/components/Icon/PortfolioIcon/index.js +2 -0
  177. package/build/esm/components/Icon/PortfolioIcon/index.js.map +1 -0
  178. package/build/esm/components/Icon/ProjectIcon/README.md +133 -9
  179. package/build/esm/components/Icon/ProjectIcon/index.d.ts +2 -0
  180. package/build/esm/components/Icon/ProjectIcon/index.js +2 -0
  181. package/build/esm/components/Icon/ProjectIcon/index.js.map +1 -0
  182. package/build/esm/components/Icon/index.d.ts +7 -2
  183. package/build/esm/components/Icon/index.js +7 -2
  184. package/build/esm/components/Icon/index.js.map +1 -1
  185. package/build/esm/components/MetaEntitiesSelect/MetaEntitiesSelect.classname.d.ts +1 -0
  186. package/build/esm/components/MetaEntitiesSelect/MetaEntitiesSelect.classname.js +3 -0
  187. package/build/esm/components/MetaEntitiesSelect/MetaEntitiesSelect.classname.js.map +1 -0
  188. package/build/esm/components/MetaEntitiesSelect/MetaEntitiesSelect.d.ts +10 -0
  189. package/build/esm/components/MetaEntitiesSelect/MetaEntitiesSelect.js +57 -0
  190. package/build/esm/components/MetaEntitiesSelect/MetaEntitiesSelect.js.map +1 -0
  191. package/build/esm/components/MetaEntitiesSelect/README.md +183 -0
  192. package/build/esm/components/MetaEntitiesSelect/components/EntitiesSuggest/EntitiesSuggest.d.ts +15 -0
  193. package/build/esm/components/MetaEntitiesSelect/components/EntitiesSuggest/EntitiesSuggest.js +61 -0
  194. package/build/esm/components/MetaEntitiesSelect/components/EntitiesSuggest/EntitiesSuggest.js.map +1 -0
  195. package/build/esm/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.classname.d.ts +1 -0
  196. package/build/esm/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.classname.js +3 -0
  197. package/build/esm/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.classname.js.map +1 -0
  198. package/build/esm/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.css +18 -0
  199. package/build/esm/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.css.map +1 -0
  200. package/build/esm/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.d.ts +10 -0
  201. package/build/esm/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.js +26 -0
  202. package/build/esm/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.js.map +1 -0
  203. package/build/esm/components/MetaEntitiesSelect/components/EntitiesSuggestItem/EntitiesSuggestItem.scss +24 -0
  204. package/build/esm/components/MetaEntitiesSelect/i18n.d.ts +6 -0
  205. package/build/esm/components/MetaEntitiesSelect/i18n.js +7 -0
  206. package/build/esm/components/MetaEntitiesSelect/i18n.js.map +1 -0
  207. package/build/esm/components/MetaEntitiesSelect/index.d.ts +2 -0
  208. package/build/esm/components/MetaEntitiesSelect/index.js +2 -0
  209. package/build/esm/components/MetaEntitiesSelect/index.js.map +1 -0
  210. package/build/esm/components/MetaEntitiesSelect/utils/getMetaEntityDisplay.d.ts +2 -0
  211. package/build/esm/components/MetaEntitiesSelect/utils/getMetaEntityDisplay.js +5 -0
  212. package/build/esm/components/MetaEntitiesSelect/utils/getMetaEntityDisplay.js.map +1 -0
  213. package/build/esm/components/MetaEntitiesSelect/utils/getMetaEntityId.d.ts +2 -0
  214. package/build/esm/components/MetaEntitiesSelect/utils/getMetaEntityId.js +4 -0
  215. package/build/esm/components/MetaEntitiesSelect/utils/getMetaEntityId.js.map +1 -0
  216. package/build/esm/components/PluginFieldsSelect/PluginFieldsSelect.d.ts +1 -1
  217. package/build/esm/components/PluginFieldsSelect/PluginFieldsSelect.js.map +1 -1
  218. package/build/esm/components/QueueIcon/QueueIcon.classname.js +1 -1
  219. package/build/esm/components/QueueIcon/QueueIcon.classname.js.map +1 -1
  220. package/build/esm/components/QueueSelect/QueueSelect.classname.js +1 -1
  221. package/build/esm/components/QueueSelect/QueueSelect.classname.js.map +1 -1
  222. package/build/esm/components/QueueSelect/QueueSelect.css.map +1 -1
  223. package/build/esm/components/QueueSelect/QueueSelect.scss +4 -8
  224. package/build/esm/components/Select/Autocomplete.d.ts +1 -1
  225. package/build/esm/components/Select/MultiAutocomplete.d.ts +1 -1
  226. package/build/esm/components/Select/Select.classname.js +1 -1
  227. package/build/esm/components/Select/Select.classname.js.map +1 -1
  228. package/build/esm/components/Select/Select.css.map +1 -1
  229. package/build/esm/components/Select/Select.d.ts +1 -1
  230. package/build/esm/components/Select/Select.scss +3 -4
  231. package/build/esm/components/Select/SelectSearch/SelectSearch.classname.js +1 -1
  232. package/build/esm/components/Select/SelectSearch/SelectSearch.classname.js.map +1 -1
  233. package/build/esm/components/Select/SelectSearch/SelectSearch.d.ts +1 -1
  234. package/build/esm/components/Select/SelectSearch/SelectSearch.js +1 -1
  235. package/build/esm/components/Select/SelectSearch/SelectSearch.js.map +1 -1
  236. package/build/esm/components/Select/SelectSearch/hooks/useSelectSearch.d.ts +2 -2
  237. package/build/esm/components/Select/SelectSearch/hooks/useSelectSearch.js.map +1 -1
  238. package/build/esm/components/Select/TagsSelect/TagsSelect.classname.js +1 -1
  239. package/build/esm/components/Select/TagsSelect/TagsSelect.classname.js.map +1 -1
  240. package/build/esm/components/Suggest/Suggest.classname.d.ts +1 -0
  241. package/build/esm/components/Suggest/Suggest.classname.js +3 -0
  242. package/build/esm/components/Suggest/Suggest.classname.js.map +1 -0
  243. package/build/esm/components/Suggest/Suggest.css +24 -0
  244. package/build/esm/components/Suggest/Suggest.css.map +1 -0
  245. package/build/esm/components/Suggest/Suggest.d.ts +147 -0
  246. package/build/esm/components/Suggest/Suggest.js +613 -0
  247. package/build/esm/components/Suggest/Suggest.js.map +1 -0
  248. package/build/esm/components/Suggest/Suggest.scss +30 -0
  249. package/build/esm/components/Suggest/i18n.d.ts +22 -0
  250. package/build/esm/components/Suggest/i18n.js +23 -0
  251. package/build/esm/components/Suggest/i18n.js.map +1 -0
  252. package/build/esm/components/Suggest/index.d.ts +1 -0
  253. package/build/esm/components/Suggest/index.js +2 -0
  254. package/build/esm/components/Suggest/index.js.map +1 -0
  255. package/build/esm/components/TrackerDisclosure/README.md +205 -0
  256. package/build/esm/components/TrackerDisclosure/TrackerDisclosure.classname.js +1 -1
  257. package/build/esm/components/TrackerDisclosure/TrackerDisclosure.classname.js.map +1 -1
  258. package/build/esm/components/TrackerSelect/TrackerSelect.classname.js +1 -1
  259. package/build/esm/components/TrackerSelect/TrackerSelect.classname.js.map +1 -1
  260. package/build/esm/components/TrackerSelect/TrackerSelect.css.map +1 -1
  261. package/build/esm/components/TrackerSelect/TrackerSelect.scss +3 -5
  262. package/build/esm/components/useOnFocusOutside/OutsideFocusHandlerContainer.d.ts +9 -0
  263. package/build/esm/components/useOnFocusOutside/OutsideFocusHandlerContainer.js +24 -0
  264. package/build/esm/components/useOnFocusOutside/OutsideFocusHandlerContainer.js.map +1 -0
  265. package/build/esm/components/useOnFocusOutside/useOnFocusOutside.d.ts +1 -0
  266. package/build/esm/components/useOnFocusOutside/useOnFocusOutside.js +31 -0
  267. package/build/esm/components/useOnFocusOutside/useOnFocusOutside.js.map +1 -0
  268. package/build/esm/hooks/useConditionallyControlledState.d.ts +1 -0
  269. package/build/esm/hooks/useConditionallyControlledState.js +9 -0
  270. package/build/esm/hooks/useConditionallyControlledState.js.map +1 -0
  271. package/build/esm/hooks/useLocalizedString.d.ts +1 -1
  272. package/build/esm/hooks/useLocalizedString.js.map +1 -1
  273. package/build/esm/index.d.ts +1 -0
  274. package/build/esm/index.js +1 -0
  275. package/build/esm/index.js.map +1 -1
  276. package/build/esm/styles/mixins.scss +8 -0
  277. package/package.json +3 -4
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_illustrations","_uikit","_debounce","_interopRequireDefault","_noop","_sortBy4","_throttle","_uniqueId","_useLocalizedString2","_OutsideFocusHandlerContainer","_Suggest","_i18n","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","PopupWrapper","_ref","open","_ref$onOpenChange","onOpenChange","noop","children","isFirstRender","useRef","useEffect","current","SuggestView","exports","_React$PureComponent","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","concat","state","progress","focused","items","progressTimerId","fetchError","showEmptyMessage","throttledForceUpdate","throttle","forceUpdate","textInputRef","React","createRef","inputRef","listRef","latestPromise","_getItems","debounce","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","text","_items","result","index","keyDownEvent","_t","wrap","_context","prev","next","props","getItems","Promise","sent","setState","abrupt","clearProgress","applicableInputValue","getInitialActiveItemIndex","activeIndex","KeyboardEvent","key","onKeyDown","stop","_x","apply","handleClosePopup","renderItem","item","_active","_jsx","className","cnSuggest","onItemClick","fromKeyboard","Boolean","onChangeActive","onUpdate","_this$props","showItemsOnNoText","onInputKeyDown","event","onTabKeyDown","_this$listRef$current","activeItemIndex","getActiveItem","undefined","activeItem","onInputEnterKeyDown","preventDefault","moveCursorToEdge","shiftKey","updateTextInputRef","element","setRef","controlRef","_inherits","_createClass","value","componentDidMount","_this$props2","getItemsOnMount","syncPopupOnResize","window","addEventListener","componentDidUpdate","prevProps","_this$props3","componentWillUnmount","removeEventListener","render","_this2","_this$props4","size","popupClassName","popupPlacement","popupDisablePortal","disabled","autoComplete","autoFocus","placeholder","onBlur","pin","id","renderStyle","hasClear","inputClassName","error","errorPlacement","popupOffset","controlProps","startContent","endContent","style","qa","_this$state","input","TextInput","ref","onFocus","_objectSpread","role","isPopupHasContent","createElement","Fragment","_jsxs","OutsideFocusHandlerContainer","as","enable","onFocusOutside","renderPopupContent","Popup","width","offsetWidth","anchorElement","placement","onOutsideClick","onEscapeKeyDown","returnFocus","disablePortal","offset","renderIllustration","type","NotFound","InternalError","setProgressWithDelay","_this3","setTimeout","clearTimeout","renderDefaultPopupFallback","_ref3","_this4","RenderFallbackContent","renderFallbackContent","title","description","buttonText","empty","actions","view","onClick","PlaceholderContainer","direction","align","image","Icon","data","getRenderFallbackContent","_this$props5","renderEmptyResult","getNoItemsMessage","_ref4","_this$props6","virtualized","itemHeight","renderFetchItemsError","_this$state2","Loader","height","forEach","List","filterable","_this$state3","_this$props7","_this$props7$showNoIt","showNoItemsMessage","moveToStart","selectMode","end","selectionStart","selStart","Number","start","_sortBy2","_sortBy","_sortBy3","_slicedToArray","b","setSelectionRange","getDerivedStateFromProps","nextProps","PureComponent","defaultProps","SuggestWithLocalization","config","getConfig","_useLocalizedString","useLocalizedString","defaultMessages","lang","_props$id","uniqueId","restProps","_objectWithoutProperties","_excluded","Suggest","forwardRef"],"sources":["Suggest.tsx"],"sourcesContent":["import React, {CSSProperties, FC, ReactNode, forwardRef, useEffect, useRef} from 'react';\n\nimport {InternalError, NotFound} from '@gravity-ui/illustrations';\nimport {\n Icon,\n List,\n ListItemData,\n Loader,\n PlaceholderContainer,\n PlaceholderContainerActionProps,\n Popup,\n PopupPlacement,\n PopupProps,\n TextInput,\n TextInputPin,\n TextInputProps,\n TextInputSize,\n getConfig,\n setRef,\n} from '@gravity-ui/uikit';\nimport type {DOMProps, QAProps} from '@gravity-ui/uikit';\nimport debounce from 'lodash/debounce';\nimport noop from 'lodash/noop';\nimport _sortBy from 'lodash/sortBy';\nimport throttle from 'lodash/throttle';\nimport uniqueId from 'lodash/uniqueId';\n\nimport {useLocalizedString} from '~/src/hooks/useLocalizedString';\n\nimport {OutsideFocusHandlerContainer} from '../useOnFocusOutside/OutsideFocusHandlerContainer';\n\nimport {cnSuggest} from './Suggest.classname';\nimport {defaultMessages} from './i18n';\n\nimport './Suggest.scss';\n\nexport type RenderStyle = 'popup' | 'inline';\n\nexport type RenderFallbackContentProps = {\n text: string;\n error?: Error | null;\n};\n\nexport interface SuggestProps<T = any> extends DOMProps, QAProps {\n /** Текст в поле ввода */\n text: string;\n /** Функция, реагирующая на изменения текста `text` в поле ввода */\n onUpdate: (item: string) => void;\n /** Функция, принимающая текст из поля ввода и возвращающая новый список элементов саджеста или `Promise` */\n getItems: (text: string) => ListItemData<T>[] | Promise<ListItemData<T>[]>;\n /** Обработчик клика по элементу саджеста */\n onItemClick?: (item: T, index?: number, fromKeyboard?: boolean) => boolean | void;\n /** Функция для кастомного лейаута саджеста. */\n children?: (input: ReactNode, items: ListItemData<T>[], loading: boolean) => ReactNode;\n /** Placeholder поля ввода */\n placeholder?: string;\n /** Сделать поле ввода неактивным */\n disabled?: boolean;\n /** Атрибут `autocomplete` поля ввода */\n autoComplete?: TextInputProps['autoComplete'];\n /** Включить автофокус поля ввода */\n autoFocus?: boolean;\n popupPlacement?: PopupPlacement;\n /** Микс для имени класса попапа */\n popupClassName?: string;\n /** Отключает floating-ui портал попапа */\n popupDisablePortal?: boolean;\n /** Микс для имени класса импута */\n inputClassName?: string;\n /** Высота элемента саджеста в `px` или функция, возвращающая значение высоты для элемента саджеста: `(item: any) => number`. Используется только при `virtualized: true`. */\n itemHeight?: number | ((item: ListItemData<T>) => number);\n /** Флаг, указывающий, что значение из поля ввода должно быть обработано, и не обязательно должен быть выбран элемент из саджеста. Должен быть указан `onInputEnterKeyDown`. */\n applicableInputValue?: boolean;\n /** Запрашивать список элементов саджеста при начальной отрисовке компонента */\n getItemsOnMount?: boolean;\n /** Показывать элементы саджеста при пустом поле ввода */\n showItemsOnNoText?: boolean;\n /** Обработчик нажатия Tab в поле ввода или на элемент списка. Используется только при открытом попапе саджеста */\n onTabKeyDown?: (\n text: string,\n event: React.KeyboardEvent,\n extra: {\n items: ListItemData<T>[];\n activeItem: number | undefined;\n },\n ) => boolean | undefined;\n /** Обработчик нажатия Enter в поле ввода. Если не указан, то по Enter будет срабатывать `onItemClick` на активном элементе саджеста. Используется только при `applicableInputValue: true`. */\n onInputEnterKeyDown?: (text: string, event: React.KeyboardEvent) => void;\n /** Обработчик нажатия любой клавиши в поле ввода */\n onInputKeyDown?: (text: string, event: React.KeyboardEvent) => void;\n /** Функция, которая будет вызвана на блюр текстового инпута */\n onBlur?: () => void;\n /** Функция, которая будет вызвана при открытии или закрытии попапа */\n onOpenChange?: (isOpen: boolean) => void;\n /** Включить синхронизацию ширины поля ввода и попапа саджеста при ресайзе окна */\n syncPopupOnResize?: boolean;\n /** Выключить показ сообщение об отсутствии совпадений */\n showNoItemsMessage?: boolean;\n /** Размер поля ввода */\n size?: TextInputSize;\n /** Включить виртуализацию. При выключенном флаге будут отрисованы все элементы саджеста разом. */\n virtualized?: boolean;\n /** Функция рендера, получающая на вход элемент саджеста и возвращающая React-ноду */\n renderItem?: (item: T) => ReactNode;\n /** Время в мс для отложенного вызова `getItems` после `onUpdate` */\n debounce?: number;\n /** Значение пробрасывается в TextInput.props.pin */\n pin?: TextInputPin;\n id?: string;\n renderStyle?: RenderStyle;\n /** Кнопка очистки инпута */\n hasClear?: boolean;\n /** Функция, высчитывающая какой Item сделать активным после резолва getItems */\n getInitialActiveItemIndex?: (items: ListItemData<T>[]) => number;\n /** Значение пробрасывается в TextInput.props.error */\n error?: TextInputProps['error'];\n /** Значение пробрасывается в TextInput.props.errorPlacement */\n errorPlacement?: TextInputProps['errorPlacement'];\n /** Значение пробрасывается в Popup.props.offset */\n popupOffset?: PopupProps['offset'];\n /** Генератор кастомного сообщения о пустом списке элементов на основе текущего значения поля ввода */\n /**\n * @deprecated use renderEmptyResultFallbackContent\n */\n getNoItemsMessage?: (text: string) => ReactNode;\n /** Генератор кастомного сообщения о пустом списке элементов на основе текущего значения поля ввода */\n renderEmptyResult?: FC<RenderFallbackContentProps>;\n /** Генератор кастомного сообщения об ошибке загрузки данных */\n renderFetchItemsError?: FC<RenderFallbackContentProps>;\n /** Дополнительные пропсы для контрола */\n controlProps?: React.InputHTMLAttributes<HTMLInputElement>;\n /** Нода, которая рендерится перед инпутом внутри TextInput */\n startContent?: ReactNode;\n /** Нода, которая рендерится после инпута и кнопки очистки внутри TextInput */\n endContent?: ReactNode;\n /** Ссылка для доступа к TextInput */\n controlRef?: TextInputProps['controlRef'];\n}\n\ninterface SuggestState<T> {\n progress: boolean;\n focused: boolean;\n items: ListItemData<T>[];\n progressTimerId: ReturnType<typeof setTimeout> | null;\n activeIndex?: number;\n fetchError: Error | null;\n showEmptyMessage: boolean;\n}\n\ninterface SuggestLocalizationProps {\n t: (key: string, params?: Record<string, unknown>) => string;\n}\n\ninterface PopupWrapperProps {\n open: boolean;\n /** Функция, которая будет вызвана при открытии или закрытии попапа */\n onOpenChange?: (isOpen: boolean) => void;\n /** Контент попапа */\n children?: React.ReactNode;\n}\n\nconst PopupWrapper: React.FC<PopupWrapperProps> = ({open, onOpenChange = noop, children}) => {\n const isFirstRender = useRef(true);\n\n useEffect(() => {\n if (isFirstRender.current) {\n isFirstRender.current = false;\n } else {\n onOpenChange(open);\n }\n }, [onOpenChange, open]);\n\n return children;\n};\n\nexport class SuggestView<T = any> extends React.PureComponent<\n SuggestProps<T> & SuggestLocalizationProps,\n SuggestState<T>\n> {\n static defaultProps: Partial<SuggestProps> = {\n virtualized: false,\n renderItem: (item) => item,\n debounce: 0,\n renderStyle: 'popup',\n };\n\n static getDerivedStateFromProps<Props extends SuggestProps>(nextProps: Props) {\n if (!nextProps.showItemsOnNoText && !nextProps.text) {\n return {\n items: [],\n };\n }\n\n return null;\n }\n\n state: SuggestState<T> = {\n progress: false,\n focused: false,\n items: [],\n progressTimerId: null,\n fetchError: null,\n showEmptyMessage: false,\n };\n\n throttledForceUpdate = throttle(() => this.forceUpdate(), 300);\n\n textInputRef = React.createRef<HTMLInputElement>();\n inputRef = React.createRef<HTMLDivElement>();\n\n listRef = React.createRef<List<T>>();\n\n latestPromise?: Promise<T[]>;\n\n _getItems = debounce(async (text: string) => {\n let items: ListItemData<T>[] = [];\n const result = this.props.getItems(text);\n if (result instanceof Promise) {\n this.latestPromise = result;\n }\n\n try {\n items = await result;\n this.setState({fetchError: null});\n } catch (error) {\n this.setState({fetchError: error as Error});\n }\n\n if (result instanceof Promise) {\n // Exit if this promise is different of the latest one\n if (result !== this.latestPromise) {\n return;\n }\n\n delete this.latestPromise;\n }\n\n this.setState({\n items,\n showEmptyMessage: !items?.length,\n });\n this.clearProgress();\n if (items.length && !this.props.applicableInputValue) {\n if (this.props.getInitialActiveItemIndex) {\n const index = this.props.getInitialActiveItemIndex(items) || 0;\n this.setState({activeIndex: index});\n } else if (this.listRef.current) {\n const keyDownEvent = new KeyboardEvent('keydown', {key: 'ArrowDown'});\n this.listRef.current.onKeyDown(\n keyDownEvent as unknown as React.KeyboardEvent<HTMLDivElement>,\n );\n }\n }\n }, this.props.debounce);\n\n componentDidMount() {\n const {getItemsOnMount, text} = this.props;\n if (this.props.syncPopupOnResize) {\n window.addEventListener('resize', this.throttledForceUpdate);\n }\n if (getItemsOnMount) {\n this.getItems(text);\n }\n }\n\n componentDidUpdate(prevProps: SuggestProps): void {\n const {text, showItemsOnNoText} = this.props;\n if (text !== prevProps.text && (text || showItemsOnNoText)) {\n this.getItems(text);\n }\n }\n\n componentWillUnmount() {\n window.removeEventListener('resize', this.throttledForceUpdate);\n this.clearProgress();\n }\n\n render() {\n const {\n text,\n size,\n className,\n popupClassName,\n popupPlacement,\n popupDisablePortal,\n disabled,\n autoComplete,\n autoFocus,\n placeholder,\n onBlur,\n onOpenChange,\n pin,\n id,\n renderStyle,\n hasClear,\n children,\n inputClassName,\n error,\n errorPlacement,\n popupOffset,\n applicableInputValue,\n controlProps,\n startContent,\n endContent,\n style,\n qa,\n } = this.props;\n const {progress, items, focused} = this.state;\n\n const input = (\n <TextInput\n size={size}\n value={text}\n placeholder={placeholder}\n disabled={disabled}\n autoComplete={autoComplete}\n autoFocus={autoFocus}\n ref={this.inputRef}\n controlRef={this.updateTextInputRef}\n onBlur={onBlur}\n onUpdate={this.onUpdate}\n onFocus={() => this.setState({focused: true})}\n onKeyDown={this.onInputKeyDown}\n className={cnSuggest('input', inputClassName)}\n pin={pin}\n id={id}\n hasClear={hasClear}\n error={error}\n errorPlacement={errorPlacement}\n qa={qa}\n style={style}\n controlProps={{\n role: 'combobox',\n 'aria-controls': `popup-${id}`,\n 'aria-autocomplete': applicableInputValue ? 'both' : 'list',\n 'aria-expanded': this.isPopupHasContent() && this.state.focused,\n 'aria-activedescendant':\n this.state.activeIndex === undefined\n ? undefined\n : `${id}-list-item-${this.state.activeIndex}`,\n ...controlProps,\n }}\n startContent={startContent}\n endContent={endContent}\n />\n );\n\n if (children) {\n return React.createElement(React.Fragment, undefined, children(input, items, progress));\n }\n\n return (\n <OutsideFocusHandlerContainer\n as=\"div\"\n className={cnSuggest(null, className)}\n enable={focused}\n onFocusOutside={this.handleClosePopup}\n >\n {input}\n <PopupWrapper\n open={renderStyle === 'popup' && this.isPopupHasContent() && this.state.focused}\n onOpenChange={onOpenChange}\n >\n {this.isPopupHasContent() &&\n (renderStyle === 'inline' ? (\n <div className={cnSuggest('inline-content')}>\n {this.renderPopupContent()}\n </div>\n ) : (\n <Popup\n key={items?.length}\n open={this.isPopupHasContent() && this.state.focused}\n className={cnSuggest(\n 'popup',\n {\n 'has-fallback':\n Boolean(this.state.fetchError) || !items.length,\n },\n popupClassName,\n )}\n style={\n this.inputRef.current\n ? {width: this.inputRef.current.offsetWidth}\n : {}\n }\n anchorElement={this.inputRef.current}\n placement={popupPlacement}\n id={`popup-${id}`}\n onOutsideClick={this.handleClosePopup}\n onEscapeKeyDown={this.handleClosePopup}\n returnFocus={false}\n disablePortal={popupDisablePortal}\n offset={popupOffset}\n >\n {this.renderPopupContent()}\n </Popup>\n ))}\n </PopupWrapper>\n </OutsideFocusHandlerContainer>\n );\n }\n\n renderIllustration(type: '404' | '500') {\n switch (type) {\n case '404':\n return NotFound;\n case '500':\n default:\n return InternalError;\n }\n }\n\n getItems(text: string) {\n this.setProgressWithDelay();\n this.setState({activeIndex: undefined, fetchError: null, showEmptyMessage: false});\n this._getItems(text);\n }\n\n private setProgressWithDelay() {\n if (!this.state.progressTimerId) {\n this.setState({\n progressTimerId: setTimeout(() => this.setState({progress: true}), 300),\n });\n }\n }\n\n private clearProgress() {\n const {progressTimerId} = this.state;\n\n this.setState({progress: false});\n if (progressTimerId) {\n clearTimeout(progressTimerId);\n this.setState({progressTimerId: null});\n }\n }\n\n private handleClosePopup = () => {\n this.setState((state) => {\n return state.focused ? {focused: false} : null;\n });\n };\n\n private renderItem = (item: T, _active: boolean, index: number) => (\n <div key={index} className={cnSuggest('item')}>\n {this.props.renderItem!(item)}\n </div>\n );\n\n private onItemClick = (item: T, index?: number, fromKeyboard?: boolean) => {\n let focused = false;\n if (this.props.onItemClick) {\n focused = Boolean(this.props.onItemClick(item, index, fromKeyboard));\n }\n this.setState({focused});\n };\n\n private onChangeActive = (index?: number) => {\n this.setState({activeIndex: index});\n };\n\n private renderDefaultPopupFallback({\n type,\n renderFallbackContent: RenderFallbackContent,\n title,\n description,\n buttonText,\n }: {\n type: '404' | '500';\n renderFallbackContent?: FC<RenderFallbackContentProps> | null;\n title?: string;\n description?: string;\n buttonText?: string;\n }) {\n const {text} = this.props;\n const {fetchError} = this.state;\n\n if (typeof RenderFallbackContent === 'function') {\n return (\n <div className={cnSuggest('list', {empty: true})}>\n <RenderFallbackContent text={text} error={fetchError} />\n </div>\n );\n }\n\n const actions: PlaceholderContainerActionProps[] = buttonText\n ? [\n {\n text: buttonText,\n view: 'action',\n onClick: () => this.getItems(text),\n },\n ]\n : [];\n\n return (\n <PlaceholderContainer\n title={title}\n description={description}\n direction=\"row\"\n size=\"s\"\n align=\"center\"\n image={<Icon data={this.renderIllustration(type)} size={100} />}\n actions={actions}\n />\n );\n }\n\n private getRenderFallbackContent() {\n const {renderEmptyResult, getNoItemsMessage} = this.props;\n if (renderEmptyResult) {\n return renderEmptyResult;\n }\n\n if (getNoItemsMessage) {\n return ({text}: RenderFallbackContentProps) => getNoItemsMessage?.(text);\n }\n\n return null;\n }\n\n private renderPopupContent() {\n const {text, virtualized, itemHeight, id, renderFetchItemsError} = this.props;\n const {progress, items, fetchError, showEmptyMessage} = this.state;\n const {t} = this.props;\n\n if (progress) {\n return (\n <div className={cnSuggest('loader')}>\n <Loader />\n </div>\n );\n }\n\n if (fetchError) {\n return this.renderDefaultPopupFallback({\n type: '500',\n renderFallbackContent: renderFetchItemsError,\n title: t('fetch_error_title'),\n description: t('fetch_error_description'),\n buttonText: t('retry'),\n });\n }\n\n if (items.length) {\n const style: CSSProperties = {};\n\n if (virtualized) {\n let height = 0;\n\n if (typeof itemHeight === 'function') {\n items.forEach((item) => {\n height += itemHeight(item);\n });\n }\n\n if (typeof itemHeight === 'number') {\n height = items.length * itemHeight;\n }\n\n if (height) {\n style.height = height;\n }\n }\n\n return (\n <div className={cnSuggest('list')} style={style}>\n <List\n filterable={false}\n items={items}\n renderItem={this.renderItem}\n onItemClick={this.onItemClick}\n virtualized={virtualized}\n itemHeight={itemHeight}\n ref={this.listRef}\n id={`${id}-list`}\n role={'listbox'}\n onChangeActive={this.onChangeActive}\n activeItemIndex={this.state.activeIndex}\n />\n </div>\n );\n }\n\n if (showEmptyMessage && text) {\n return this.renderDefaultPopupFallback({\n type: '404',\n renderFallbackContent: this.getRenderFallbackContent(),\n title: t('items_not_found_title'),\n description: t('items_not_found', {text}),\n });\n }\n\n return null;\n }\n\n private onUpdate = (text: string) => {\n const {onUpdate, showItemsOnNoText} = this.props;\n onUpdate(text);\n\n if (text && !this.state.focused) {\n this.setState({focused: true});\n }\n\n if (showItemsOnNoText || text) {\n this.getItems(text);\n }\n };\n\n private isPopupHasContent() {\n const {progress, items, fetchError, showEmptyMessage} = this.state;\n const {text, showNoItemsMessage = true} = this.props;\n\n return Boolean(\n progress ||\n items.length ||\n fetchError ||\n (text && showEmptyMessage && showNoItemsMessage),\n );\n }\n\n private onInputKeyDown = (event: React.KeyboardEvent) => {\n if (\n typeof this.props.onTabKeyDown === 'function' &&\n event.key === 'Tab' &&\n this.listRef.current\n ) {\n const activeItemIndex = this.listRef.current.getActiveItem() ?? undefined;\n\n const focused = this.props.onTabKeyDown(this.props.text, event, {\n items: this.state.items,\n activeItem: activeItemIndex,\n });\n if (this.state.focused !== focused && typeof focused === 'boolean') {\n this.setState({focused});\n }\n }\n if (\n typeof this.props.onInputKeyDown === 'function' &&\n (!this.listRef.current || typeof this.listRef.current.getActiveItem() !== 'number')\n ) {\n this.props.onInputKeyDown(this.props.text, event);\n }\n\n if (\n event.key === 'Enter' &&\n this.props.applicableInputValue &&\n typeof this.props.onInputEnterKeyDown === 'function' &&\n (!this.listRef.current || typeof this.listRef.current.getActiveItem() !== 'number')\n ) {\n this.props.onInputEnterKeyDown(this.props.text, event);\n } else if (this.listRef.current) {\n this.listRef.current.onKeyDown(event as React.KeyboardEvent<HTMLDivElement>);\n }\n // Prevent outside form submission on Enter if Popup is opened. In order to submit the form, User has\n // to press Enter twice - first to select item and close the Popup, then to submit.\n if (event.key === 'Enter' && this.state.focused) {\n event.preventDefault();\n }\n\n if (event.key === 'Home' || event.key === 'End') {\n // List component calls event.preventDefault() as result TextInput ignores Home/End hits\n // and cursor is not moved appropriately, so we have to manage it manually\n this.moveCursorToEdge(event.key === 'Home', event.shiftKey);\n event.preventDefault();\n }\n };\n\n private moveCursorToEdge(moveToStart: boolean, selectMode: boolean) {\n if (!this.textInputRef.current) {\n return;\n }\n\n const input = this.textInputRef.current;\n const end = moveToStart ? 0 : input.value.length;\n if (end == input.selectionStart) {\n return;\n }\n const selStart = input.selectionStart! >= 0 ? Number(input.selectionStart) : end;\n const start = selectMode ? selStart : end;\n const [b, e] = _sortBy([start, end]);\n input.setSelectionRange(b, e, start > end ? 'backward' : 'forward');\n }\n\n private updateTextInputRef = (element: HTMLInputElement | null) => {\n setRef(this.textInputRef, element);\n setRef(this.props.controlRef, element);\n };\n}\n\nconst SuggestWithLocalization = <T = any,>(\n props: SuggestProps<T>,\n ref: React.ForwardedRef<SuggestView<T>>,\n) => {\n const config = getConfig();\n const {t} = useLocalizedString(defaultMessages, config.lang);\n const {id = uniqueId('suggest-'), ...restProps} = props;\n\n return <SuggestView id={id} {...restProps} ref={ref} t={t} />;\n};\n\nexport const Suggest = forwardRef(SuggestWithLocalization) as <T = any>(\n props: SuggestProps<T> & React.RefAttributes<SuggestView<T>>,\n) => React.ReactElement;\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,22 @@
1
+ export declare const defaultMessages: {
2
+ items_not_found: {
3
+ en: string;
4
+ ru: string;
5
+ };
6
+ items_not_found_title: {
7
+ en: string;
8
+ ru: string;
9
+ };
10
+ fetch_error_title: {
11
+ en: string;
12
+ ru: string;
13
+ };
14
+ fetch_error_description: {
15
+ en: string;
16
+ ru: string;
17
+ };
18
+ retry: {
19
+ en: string;
20
+ ru: string;
21
+ };
22
+ };
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.defaultMessages = void 0;
7
+ var defaultMessages = exports.defaultMessages = {
8
+ items_not_found: {
9
+ en: 'No matches for the search string «{text}»',
10
+ ru: 'По запросу «{text}» ничего не найдено'
11
+ },
12
+ items_not_found_title: {
13
+ en: 'Nothing found',
14
+ ru: 'Ничего не найдено'
15
+ },
16
+ fetch_error_title: {
17
+ en: 'Error occured',
18
+ ru: 'Произошла ошибка'
19
+ },
20
+ fetch_error_description: {
21
+ en: 'Unable to load data. Please try again',
22
+ ru: 'Не удалось загрузить данные. Попробуйте повторить'
23
+ },
24
+ retry: {
25
+ en: 'Retry',
26
+ ru: 'Повторить'
27
+ }
28
+ };
29
+ // #sourceMappingURL=i18n.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defaultMessages","exports","items_not_found","en","ru","items_not_found_title","fetch_error_title","fetch_error_description","retry"],"sources":["i18n.ts"],"sourcesContent":["export const defaultMessages = {\n items_not_found: {\n en: 'No matches for the search string «{text}»',\n ru: 'По запросу «{text}» ничего не найдено',\n },\n items_not_found_title: {en: 'Nothing found', ru: 'Ничего не найдено'},\n fetch_error_title: {en: 'Error occured', ru: 'Произошла ошибка'},\n fetch_error_description: {\n en: 'Unable to load data. Please try again',\n ru: 'Не удалось загрузить данные. Попробуйте повторить',\n },\n retry: {en: 'Retry', ru: 'Повторить'},\n};\n"],"mappings":";;;;;;AAAO,IAAMA,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG;EAC3BE,eAAe,EAAE;IACbC,EAAE,EAAE,2CAA2C;IAC/CC,EAAE,EAAE;EACR,CAAC;EACDC,qBAAqB,EAAE;IAACF,EAAE,EAAE,eAAe;IAAEC,EAAE,EAAE;EAAmB,CAAC;EACrEE,iBAAiB,EAAE;IAACH,EAAE,EAAE,eAAe;IAAEC,EAAE,EAAE;EAAkB,CAAC;EAChEG,uBAAuB,EAAE;IACrBJ,EAAE,EAAE,uCAAuC;IAC3CC,EAAE,EAAE;EACR,CAAC;EACDI,KAAK,EAAE;IAACL,EAAE,EAAE,OAAO;IAAEC,EAAE,EAAE;EAAW;AACxC,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export * from './Suggest';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _Suggest = require("./Suggest");
7
+ Object.keys(_Suggest).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _Suggest[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _Suggest[key];
14
+ }
15
+ });
16
+ });
17
+ // #sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_Suggest","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["index.ts"],"sourcesContent":["export * from './Suggest';\n"],"mappings":";;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,QAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,QAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,QAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -0,0 +1,205 @@
1
+ # TrackerDisclosure
2
+
3
+ <!-- description:start -->
4
+ A collapsible section component with Tracker-specific styling. Extends Gravity UI [`Disclosure`](https://gravity-ui.com/components/disclosure) with a configurable chevron arrow (position and size), an optional toolbar slot rendered alongside the summary, and BEM class name hooks for fine-grained styling.
5
+ <!-- description:end -->
6
+
7
+ ## Usage
8
+
9
+ ```tsx
10
+ import {TrackerDisclosure} from '@weavix/tracker-components';
11
+
12
+ <TrackerDisclosure summary="Section title" defaultExpanded>
13
+ Content goes here
14
+ </TrackerDisclosure>
15
+ ```
16
+
17
+ ## Component props
18
+
19
+ <!-- props:start -->
20
+ ```ts
21
+ {
22
+ /**
23
+ * Content shown in the clickable summary / header row.
24
+ * Accepts a string or any ReactNode.
25
+ */
26
+ summary?: ReactNode;
27
+
28
+ /**
29
+ * Content rendered inside the collapsible body.
30
+ */
31
+ children?: ReactNode;
32
+
33
+ /**
34
+ * Whether the section is expanded on first render (uncontrolled).
35
+ * @default false
36
+ */
37
+ defaultExpanded?: boolean;
38
+
39
+ /**
40
+ * Controlled expanded state. When provided, you must also handle onUpdate.
41
+ */
42
+ expanded?: boolean;
43
+
44
+ /**
45
+ * Callback fired when the expanded state changes.
46
+ */
47
+ onUpdate?: (expanded: boolean) => void;
48
+
49
+ /**
50
+ * Whether the disclosure is disabled (non-interactive).
51
+ * @default false
52
+ */
53
+ disabled?: boolean;
54
+
55
+ /**
56
+ * Position of the chevron arrow relative to the summary text.
57
+ * @default 'end'
58
+ */
59
+ arrowPosition?: 'start' | 'end';
60
+
61
+ /**
62
+ * Size of the chevron arrow icon in pixels.
63
+ * @default 20
64
+ */
65
+ arrowSize?: number;
66
+
67
+ /**
68
+ * Optional ReactNode rendered to the right of the toggle button inside the
69
+ * summary row. Useful for action buttons (edit, delete, add, …).
70
+ */
71
+ toolbar?: ReactNode;
72
+
73
+ /**
74
+ * Additional CSS class applied to the root element.
75
+ */
76
+ className?: string;
77
+
78
+ /**
79
+ * Additional CSS class applied to the summary row wrapper.
80
+ */
81
+ summaryClassName?: string;
82
+
83
+ /**
84
+ * Additional CSS class applied to the toggle `<button>` element.
85
+ */
86
+ toggleClassName?: string;
87
+
88
+ /**
89
+ * Additional CSS class applied to the chevron arrow icon.
90
+ */
91
+ arrowClassName?: string;
92
+ }
93
+ ```
94
+ <!-- props:end -->
95
+
96
+ > **Note:** `TrackerDisclosure` accepts all props from Gravity UI [`DisclosureProps`](https://gravity-ui.com/components/disclosure) in addition to the Tracker-specific ones listed above.
97
+
98
+ ---
99
+
100
+ ## Examples
101
+
102
+ ### Basic (uncontrolled)
103
+
104
+ ```tsx
105
+ import {TrackerDisclosure} from '@weavix/tracker-components';
106
+
107
+ <TrackerDisclosure summary="Sprint details" defaultExpanded>
108
+ <p>Sprint 42 — 14 issues, 3 in progress.</p>
109
+ </TrackerDisclosure>
110
+ ```
111
+
112
+ ---
113
+
114
+ ### Controlled
115
+
116
+ ```tsx
117
+ import React, {useState} from 'react';
118
+ import {TrackerDisclosure} from '@weavix/tracker-components';
119
+
120
+ export const ControlledExample = () => {
121
+ const [expanded, setExpanded] = useState(false);
122
+
123
+ return (
124
+ <TrackerDisclosure
125
+ summary="Filters"
126
+ expanded={expanded}
127
+ onUpdate={setExpanded}
128
+ >
129
+ <p>Filter content here.</p>
130
+ </TrackerDisclosure>
131
+ );
132
+ };
133
+ ```
134
+
135
+ ---
136
+
137
+ ### Arrow at start
138
+
139
+ ```tsx
140
+ <TrackerDisclosure summary="Description" arrowPosition="start">
141
+ <p>Content with the chevron on the left.</p>
142
+ </TrackerDisclosure>
143
+ ```
144
+
145
+ ---
146
+
147
+ ### With toolbar
148
+
149
+ The `toolbar` prop renders additional content (e.g. action buttons) to the right of the toggle button, inside the summary row but outside the toggle click area.
150
+
151
+ ```tsx
152
+ import {Button} from '@gravity-ui/uikit';
153
+ import {TrackerDisclosure} from '@weavix/tracker-components';
154
+
155
+ <TrackerDisclosure
156
+ summary="Attachments"
157
+ toolbar={
158
+ <Button size="s" view="flat" onClick={() => openUploadDialog()}>
159
+ Add file
160
+ </Button>
161
+ }
162
+ >
163
+ <AttachmentList />
164
+ </TrackerDisclosure>
165
+ ```
166
+
167
+ ---
168
+
169
+ ### Disabled
170
+
171
+ ```tsx
172
+ <TrackerDisclosure summary="Locked section" disabled defaultExpanded>
173
+ <p>This section cannot be collapsed by the user.</p>
174
+ </TrackerDisclosure>
175
+ ```
176
+
177
+ ---
178
+
179
+ ### Multiple sections (accordion-like)
180
+
181
+ ```tsx
182
+ import React, {useState} from 'react';
183
+ import {TrackerDisclosure} from '@weavix/tracker-components';
184
+
185
+ const SECTIONS = ['Details', 'Attachments', 'Comments'];
186
+
187
+ export const AccordionExample = () => {
188
+ const [openIndex, setOpenIndex] = useState<number | null>(0);
189
+
190
+ return (
191
+ <>
192
+ {SECTIONS.map((title, i) => (
193
+ <TrackerDisclosure
194
+ key={title}
195
+ summary={title}
196
+ expanded={openIndex === i}
197
+ onUpdate={(open) => setOpenIndex(open ? i : null)}
198
+ >
199
+ <p>Content for {title}</p>
200
+ </TrackerDisclosure>
201
+ ))}
202
+ </>
203
+ );
204
+ };
205
+ ```
@@ -4,6 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.cnTrackerDisclosure = void 0;
7
- var _cn = require("../cn");
7
+ var _cn = require("./../cn");
8
8
  var cnTrackerDisclosure = exports.cnTrackerDisclosure = (0, _cn.block)('disclosure');
9
9
  // #sourceMappingURL=TrackerDisclosure.classname.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_cn","require","cnTrackerDisclosure","exports","block"],"sources":["TrackerDisclosure.classname.ts"],"sourcesContent":["import {block} from '../cn';\n\nexport const cnTrackerDisclosure = block('disclosure');\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAEO,IAAMC,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,IAAAE,SAAK,EAAC,YAAY,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_cn","require","cnTrackerDisclosure","exports","block"],"sources":["TrackerDisclosure.classname.ts"],"sourcesContent":["import {block} from '~/src/components/cn';\n\nexport const cnTrackerDisclosure = block('disclosure');\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAEO,IAAMC,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,IAAAE,SAAK,EAAC,YAAY,CAAC","ignoreList":[]}
@@ -4,6 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.cnTrackerSelect = void 0;
7
- var _cn = require("../cn");
7
+ var _cn = require("./../cn");
8
8
  var cnTrackerSelect = exports.cnTrackerSelect = (0, _cn.block)('tracker-select');
9
9
  // #sourceMappingURL=TrackerSelect.classname.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_cn","require","cnTrackerSelect","exports","block"],"sources":["TrackerSelect.classname.ts"],"sourcesContent":["import {block} from '../cn';\n\nexport const cnTrackerSelect = block('tracker-select');\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAEO,IAAMC,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG,IAAAE,SAAK,EAAC,gBAAgB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_cn","require","cnTrackerSelect","exports","block"],"sources":["TrackerSelect.classname.ts"],"sourcesContent":["import {block} from '~/src/components/cn';\n\nexport const cnTrackerSelect = block('tracker-select');\n"],"mappings":";;;;;;AAAA,IAAAA,GAAA,GAAAC,OAAA;AAEO,IAAMC,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG,IAAAE,SAAK,EAAC,gBAAgB,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["TrackerSelect.scss"],"names":[],"mappings":"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","file":"TrackerSelect.css","sourcesContent":[".tpc-tracker-select {\n --popup-max-height: 450px;\n\n display: flex;\n flex-direction: column;\n overflow: hidden;\n\n width: 320px;\n height: inherit;\n\n max-height: var(--popup-max-height);\n\n transform: translateZ(0);\n\n &__actions {\n padding: var(--g-spacing-1);\n }\n\n &__body {\n display: flex;\n justify-content: center;\n\n overflow-y: auto;\n\n height: max-content;\n min-height: 80px;\n max-height: var(--popup-max-height);\n }\n\n &__search {\n box-sizing: border-box;\n padding: 0 var(--g-spacing-4);\n\n border-bottom: 1px solid var(--g-color-line-generic-solid);\n\n &.g-text-input_has-right-content {\n padding-right: var(--g-spacing-1);\n }\n }\n\n &__loader {\n padding: var(--g-spacing-4) 0;\n }\n\n &__empty-text {\n padding: var(--g-spacing-4);\n margin: 0;\n\n font-size: var(--g-text-body-1-font-size);\n line-height: var(--g-text-body-1-line-height-rel);\n\n color: var(--g-color-text-secondary);\n }\n\n &__list {\n flex: auto;\n\n width: 100%;\n height: max-content;\n\n padding: var(--g-spacing-1) 0;\n\n .tpc-disclosure__toggle {\n background: none;\n }\n }\n\n &__checkbox-icon_type_checkbox {\n color: var(--g-color-text-info);\n }\n\n &__checkbox-spacer {\n display: inline-block;\n }\n\n &__checkbox-icon,\n &__checkbox-spacer {\n flex: none;\n width: 18px;\n margin-right: var(--g-spacing-1);\n margin-bottom: var(--g-spacing-half);\n }\n\n &__list-item_info &__list-item-info {\n visibility: hidden;\n }\n\n &__list-item-actions {\n display: flex;\n\n gap: var(--g-spacing-1);\n align-items: center;\n\n overflow: hidden;\n\n width: 0;\n\n height: 100%;\n\n margin-left: auto;\n\n opacity: 0;\n }\n\n &__list-item-actions:has(.tpc-fields-select__help-tooltip[aria-expanded='true']) {\n overflow: visible;\n\n width: auto;\n\n margin-right: var(--g-spacing-4);\n\n opacity: 1;\n }\n\n &__list-item-action {\n z-index: 2;\n\n display: inline-flex;\n align-items: center;\n justify-content: center;\n\n color: var(--g-color-text-hint);\n }\n\n &__list-item {\n display: flex;\n align-items: center;\n\n width: 100%;\n min-width: 0;\n height: 100%;\n\n cursor: pointer;\n\n &_disabled {\n cursor: default;\n\n opacity: 0.3;\n }\n\n &_required {\n cursor: default;\n\n .tpc-tracker-select__checkbox-icon {\n opacity: 0.3;\n }\n }\n\n &_system {\n font-weight: 800;\n }\n\n &-action_type_sort {\n display: inline-flex;\n\n cursor: grab;\n }\n\n &_sorting {\n cursor: grabbing;\n }\n\n &:hover,\n &:focus-within {\n .tpc-tracker-select__list-item-actions {\n overflow: visible;\n\n width: auto;\n\n margin-right: var(--g-spacing-4);\n\n opacity: 1;\n }\n }\n\n &_active,\n &:not(.tpc-tracker-select__list-item_sorting):hover {\n /* required for keyboard navigation */\n &::after {\n position: absolute;\n z-index: -1; /* without it tooltips which attached to this list item are disappeared */\n\n content: '';\n\n background: var(--g-color-base-simple-hover);\n inset: 0;\n }\n\n .tpc-tracker-select__list-item-info {\n /* above '&::after' */\n z-index: 2;\n\n visibility: visible;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */\n .tpc-tracker-select__list-item-action {\n /* above '&::after' */\n z-index: 2;\n }\n }\n\n &_pinned {\n .tpc-tracker-select__list-item-action_type_pin {\n display: inline-flex;\n }\n }\n }\n\n &__list-item-actions + &__checkbox-icon,\n &__list-item-actions + &__checkbox-spacer {\n margin-left: var(--g-spacing-2);\n }\n\n &__list-item-wrapper {\n display: flex;\n align-items: center;\n overflow: hidden;\n\n flex-grow: 1;\n\n width: 100%;\n min-width: 0;\n height: 100%;\n\n padding: 0 var(--g-spacing-4);\n }\n\n &__list-item-content {\n display: inline-flex;\n flex-direction: column;\n\n min-width: 0;\n }\n\n &__list-item_info &__list-item-content {\n display: flex;\n flex-direction: row;\n\n flex: auto;\n }\n\n &__list-item-text {\n overflow: hidden;\n\n white-space: nowrap;\n\n text-overflow: ellipsis;\n }\n\n &__list-item_info &__list-item-text {\n flex: auto;\n }\n\n &__list-item-meta {\n color: var(--g-color-text-secondary);\n }\n\n &__group {\n border-bottom: 1px solid var(--g-color-line-generic-solid);\n\n &_active .tpc-disclosure__summary {\n background: var(--g-color-base-simple-hover);\n }\n }\n\n &__select-items {\n .g-list__item {\n position: relative;\n\n padding: 0;\n\n &,\n &-content {\n overflow: visible;\n\n min-width: 0;\n }\n\n &_active {\n background: inherit;\n }\n }\n\n &_single-select[class] {\n .g-list__item .tpc-tracker-select__list-item {\n &_selected {\n background: var(--g-color-base-selection);\n }\n }\n }\n }\n\n &__group-title {\n padding: var(--g-spacing-3) var(--g-spacing-4);\n margin: 0;\n\n color: var(--g-color-text-hint);\n\n + .tpc-tracker-select__select-items {\n &__list-item-content:first-child {\n margin-left: calc(var(--g-spacing-5) + var(--g-spacing-half));\n }\n }\n }\n\n &__collapse {\n .g-arrow-toggle {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .g-arrow-toggle svg {\n width: 16px;\n height: 16px;\n }\n }\n\n &__collapse-header[class][class] {\n box-sizing: border-box;\n padding-top: var(--g-spacing-2);\n padding-bottom: var(--g-spacing-2);\n padding-left: var(--g-spacing-4);\n margin-bottom: 0;\n\n font-family: var(--g-text-subheader-font-family);\n\n font-size: var(--g-text-subheader-1-font-size);\n font-weight: var(--g-text-subheader-font-weight);\n line-height: var(--g-text-subheader-1-line-height-rel);\n }\n\n &__collapse-header-icon {\n color: var(--g-color-text-secondary);\n }\n\n &__collapse:first-child,\n &__group:first-child {\n padding-top: 0;\n }\n\n &__collapse:last-child,\n &__group:last-child {\n padding-bottom: 0;\n\n border-bottom: none;\n }\n\n &__named-section {\n box-sizing: border-box;\n width: 100%;\n padding: var(--g-spacing-2) var(--g-spacing-4);\n\n font-family: var(--g-text-subheader-font-family);\n\n font-size: var(--g-text-subheader-2-font-size);\n font-weight: normal;\n line-height: 1.25em;\n\n color: var(--g-color-text-complementary);\n background-color: var(--g-color-base-generic);\n }\n\n &__collapse-group-title {\n display: flex;\n gap: var(--g-spacing-2);\n align-items: center;\n }\n\n &__list-item_view_meta-primary {\n .tpc-tracker-select__list-item-text {\n margin-bottom: var(--g-spacing-half);\n\n color: var(--g-color-text-secondary);\n }\n\n .tpc-tracker-select__list-item-meta {\n color: inherit;\n }\n }\n\n &__submit {\n width: 100%;\n }\n\n &__search-container {\n padding: var(--g-spacing-2) var(--g-spacing-3);\n }\n}\n\n.g-tooltip__content {\n max-width: 320px;\n}\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["TrackerSelect.scss","../../styles/mixins.scss"],"names":[],"mappings":"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","file":"TrackerSelect.css","sourcesContent":["@use '../../styles/mixins.scss';\n\n.tpc-tracker-select {\n --popup-max-height: 450px;\n\n display: flex;\n flex-direction: column;\n overflow: hidden;\n\n width: 320px;\n height: inherit;\n\n max-height: var(--popup-max-height);\n\n transform: translateZ(0);\n\n &__actions {\n padding: var(--g-spacing-1);\n }\n\n &__body {\n display: flex;\n justify-content: center;\n\n overflow-y: auto;\n\n height: max-content;\n min-height: 80px;\n max-height: var(--popup-max-height);\n }\n\n &__search {\n box-sizing: border-box;\n padding: 0 var(--g-spacing-4);\n\n border-bottom: 1px solid var(--g-color-line-generic-solid);\n\n &.g-text-input_has-right-content {\n padding-right: var(--g-spacing-1);\n }\n }\n\n &__loader {\n padding: var(--g-spacing-4) 0;\n }\n\n &__empty-text {\n padding: var(--g-spacing-4);\n margin: 0;\n\n font-size: var(--g-text-body-1-font-size);\n line-height: var(--g-text-body-1-line-height-rel);\n\n color: var(--g-color-text-secondary);\n }\n\n &__list {\n flex: auto;\n\n width: 100%;\n height: max-content;\n\n padding: var(--g-spacing-1) 0;\n\n .tpc-disclosure__toggle {\n background: none;\n }\n }\n\n &__checkbox-icon_type_checkbox {\n color: var(--g-color-text-info);\n }\n\n &__checkbox-spacer {\n display: inline-block;\n }\n\n &__checkbox-icon,\n &__checkbox-spacer {\n flex: none;\n width: 18px;\n margin-right: var(--g-spacing-1);\n margin-bottom: var(--g-spacing-half);\n }\n\n &__list-item_info &__list-item-info {\n visibility: hidden;\n }\n\n &__list-item-actions {\n display: flex;\n\n gap: var(--g-spacing-1);\n align-items: center;\n\n overflow: hidden;\n\n width: 0;\n\n height: 100%;\n\n margin-left: auto;\n\n opacity: 0;\n }\n\n &__list-item-actions:has(.tpc-fields-select__help-tooltip[aria-expanded='true']) {\n overflow: visible;\n\n width: auto;\n\n margin-right: var(--g-spacing-4);\n\n opacity: 1;\n }\n\n &__list-item-action {\n z-index: 2;\n\n display: inline-flex;\n align-items: center;\n justify-content: center;\n\n color: var(--g-color-text-hint);\n }\n\n &__list-item {\n display: flex;\n align-items: center;\n\n width: 100%;\n min-width: 0;\n height: 100%;\n\n cursor: pointer;\n\n &_disabled {\n cursor: default;\n\n opacity: 0.3;\n }\n\n &_required {\n cursor: default;\n\n .tpc-tracker-select__checkbox-icon {\n opacity: 0.3;\n }\n }\n\n &_system {\n font-weight: 800;\n }\n\n &-action_type_sort {\n display: inline-flex;\n\n cursor: grab;\n }\n\n &_sorting {\n cursor: grabbing;\n }\n\n &:hover,\n &:focus-within {\n .tpc-tracker-select__list-item-actions {\n overflow: visible;\n\n width: auto;\n\n margin-right: var(--g-spacing-4);\n\n opacity: 1;\n }\n }\n\n &_active,\n &:not(.tpc-tracker-select__list-item_sorting):hover {\n /* required for keyboard navigation */\n &::after {\n position: absolute;\n z-index: -1; /* without it tooltips which attached to this list item are disappeared */\n\n content: '';\n\n background: var(--g-color-base-simple-hover);\n inset: 0;\n }\n\n .tpc-tracker-select__list-item-info {\n /* above '&::after' */\n z-index: 2;\n\n visibility: visible;\n }\n\n /* stylelint-disable-next-line no-descending-specificity */\n .tpc-tracker-select__list-item-action {\n /* above '&::after' */\n z-index: 2;\n }\n }\n\n &_pinned {\n .tpc-tracker-select__list-item-action_type_pin {\n display: inline-flex;\n }\n }\n }\n\n &__list-item-actions + &__checkbox-icon,\n &__list-item-actions + &__checkbox-spacer {\n margin-left: var(--g-spacing-2);\n }\n\n &__list-item-wrapper {\n display: flex;\n align-items: center;\n overflow: hidden;\n\n flex-grow: 1;\n\n width: 100%;\n min-width: 0;\n height: 100%;\n\n padding: 0 var(--g-spacing-4);\n }\n\n &__list-item-content {\n display: inline-flex;\n flex-direction: column;\n\n min-width: 0;\n }\n\n &__list-item_info &__list-item-content {\n display: flex;\n flex-direction: row;\n\n flex: auto;\n }\n\n &__list-item-text {\n @include mixins.text-overflow();\n }\n\n &__list-item_info &__list-item-text {\n flex: auto;\n }\n\n &__list-item-meta {\n color: var(--g-color-text-secondary);\n }\n\n &__group {\n border-bottom: 1px solid var(--g-color-line-generic-solid);\n\n &_active .tpc-disclosure__summary {\n background: var(--g-color-base-simple-hover);\n }\n }\n\n &__select-items {\n .g-list__item {\n position: relative;\n\n padding: 0;\n\n &,\n &-content {\n overflow: visible;\n\n min-width: 0;\n }\n\n &_active {\n background: inherit;\n }\n }\n\n &_single-select[class] {\n .g-list__item .tpc-tracker-select__list-item {\n &_selected {\n background: var(--g-color-base-selection);\n }\n }\n }\n }\n\n &__group-title {\n padding: var(--g-spacing-3) var(--g-spacing-4);\n margin: 0;\n\n color: var(--g-color-text-hint);\n\n + .tpc-tracker-select__select-items {\n &__list-item-content:first-child {\n margin-left: calc(var(--g-spacing-5) + var(--g-spacing-half));\n }\n }\n }\n\n &__collapse {\n .g-arrow-toggle {\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .g-arrow-toggle svg {\n width: 16px;\n height: 16px;\n }\n }\n\n &__collapse-header[class][class] {\n box-sizing: border-box;\n padding-top: var(--g-spacing-2);\n padding-bottom: var(--g-spacing-2);\n padding-left: var(--g-spacing-4);\n margin-bottom: 0;\n\n font-family: var(--g-text-subheader-font-family);\n\n font-size: var(--g-text-subheader-1-font-size);\n font-weight: var(--g-text-subheader-font-weight);\n line-height: var(--g-text-subheader-1-line-height-rel);\n }\n\n &__collapse-header-icon {\n color: var(--g-color-text-secondary);\n }\n\n &__collapse:first-child,\n &__group:first-child {\n padding-top: 0;\n }\n\n &__collapse:last-child,\n &__group:last-child {\n padding-bottom: 0;\n\n border-bottom: none;\n }\n\n &__named-section {\n box-sizing: border-box;\n width: 100%;\n padding: var(--g-spacing-2) var(--g-spacing-4);\n\n font-family: var(--g-text-subheader-font-family);\n\n font-size: var(--g-text-subheader-2-font-size);\n font-weight: normal;\n line-height: 1.25em;\n\n color: var(--g-color-text-complementary);\n background-color: var(--g-color-base-generic);\n }\n\n &__collapse-group-title {\n display: flex;\n gap: var(--g-spacing-2);\n align-items: center;\n }\n\n &__list-item_view_meta-primary {\n .tpc-tracker-select__list-item-text {\n margin-bottom: var(--g-spacing-half);\n\n color: var(--g-color-text-secondary);\n }\n\n .tpc-tracker-select__list-item-meta {\n color: inherit;\n }\n }\n\n &__submit {\n width: 100%;\n }\n\n &__search-container {\n padding: var(--g-spacing-2) var(--g-spacing-3);\n }\n}\n\n.g-tooltip__content {\n max-width: 320px;\n}\n","@forward '~@gravity-ui/uikit/styles/mixins';\n\n@mixin text-overflow {\n overflow: hidden;\n\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n"],"sourceRoot":""}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ type OwnProps<C extends React.ElementType> = {
3
+ as?: C;
4
+ enable?: boolean;
5
+ onFocusOutside: () => void;
6
+ };
7
+ type OutsideFocusHandlerContainerProps<C extends React.ElementType> = OwnProps<C> & Omit<React.ComponentPropsWithoutRef<C>, keyof OwnProps<C>>;
8
+ export declare function OutsideFocusHandlerContainer<C extends React.ElementType = 'span'>({ as, enable, onFocusOutside, onFocus, ...props }: OutsideFocusHandlerContainerProps<C>): React.JSX.Element;
9
+ export {};
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.OutsideFocusHandlerContainer = OutsideFocusHandlerContainer;
7
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
8
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _useOnFocusOutside = require("./useOnFocusOutside");
11
+ var _jsxRuntime = require("react/jsx-runtime");
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ var _excluded = ["as", "enable", "onFocusOutside", "onFocus"];
14
+ function OutsideFocusHandlerContainer(_ref) {
15
+ var as = _ref.as,
16
+ enable = _ref.enable,
17
+ onFocusOutside = _ref.onFocusOutside,
18
+ _onFocus = _ref.onFocus,
19
+ props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
20
+ var handleFocus = (0, _useOnFocusOutside.useOnFocusOutside)(onFocusOutside, enable);
21
+ var Component = as || 'span';
22
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(Component, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props), {}, {
23
+ onFocus: function onFocus(e) {
24
+ handleFocus();
25
+ if (typeof _onFocus === 'function') {
26
+ _onFocus(e);
27
+ }
28
+ }
29
+ }));
30
+ }
31
+ // #sourceMappingURL=OutsideFocusHandlerContainer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_useOnFocusOutside","_jsxRuntime","e","__esModule","default","OutsideFocusHandlerContainer","_ref","as","enable","onFocusOutside","_onFocus","onFocus","props","_objectWithoutProperties","_excluded","handleFocus","useOnFocusOutside","Component","_jsx","_objectSpread"],"sources":["OutsideFocusHandlerContainer.tsx"],"sourcesContent":["import React from 'react';\n\nimport {useOnFocusOutside} from './useOnFocusOutside';\n\ntype OwnProps<C extends React.ElementType> = {\n as?: C;\n enable?: boolean;\n onFocusOutside: () => void;\n};\n\ntype OutsideFocusHandlerContainerProps<C extends React.ElementType> = OwnProps<C> &\n Omit<React.ComponentPropsWithoutRef<C>, keyof OwnProps<C>>;\n\nexport function OutsideFocusHandlerContainer<C extends React.ElementType = 'span'>({\n as,\n enable,\n onFocusOutside,\n onFocus,\n ...props\n}: OutsideFocusHandlerContainerProps<C>) {\n const handleFocus = useOnFocusOutside(onFocusOutside, enable);\n const Component = as || 'span';\n return (\n <Component\n {...props}\n onFocus={(e) => {\n handleFocus();\n if (typeof onFocus === 'function') {\n onFocus(e);\n }\n }}\n />\n );\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,kBAAA,GAAAD,OAAA;AAAsD,IAAAE,WAAA,GAAAF,OAAA;AAAA,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;;AAW/C,SAASG,4BAA4BA,CAAAC,IAAA,EAMH;EAAA,IALrCC,EAAE,GAAAD,IAAA,CAAFC,EAAE;IACFC,MAAM,GAAAF,IAAA,CAANE,MAAM;IACNC,cAAc,GAAAH,IAAA,CAAdG,cAAc;IACdC,QAAO,GAAAJ,IAAA,CAAPK,OAAO;IACJC,KAAK,OAAAC,iCAAA,EAAAP,IAAA,EAAAQ,SAAA;EAER,IAAMC,WAAW,GAAG,IAAAC,oCAAiB,EAACP,cAAc,EAAED,MAAM,CAAC;EAC7D,IAAMS,SAAS,GAAGV,EAAE,IAAI,MAAM;EAC9B,oBACI,IAAAW,eAAA,EAACD,SAAS,MAAAE,sBAAA,MAAAA,sBAAA,MACFP,KAAK;IACTD,OAAO,EAAE,SAATA,OAAOA,CAAGT,CAAC,EAAK;MACZa,WAAW,CAAC,CAAC;MACb,IAAI,OAAOL,QAAO,KAAK,UAAU,EAAE;QAC/BA,QAAO,CAACR,CAAC,CAAC;MACd;IACJ;EAAE,EACL,CAAC;AAEV","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare function useOnFocusOutside(onFocusOutside: () => void, enable?: boolean): () => void;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useOnFocusOutside = useOnFocusOutside;
7
+ require("core-js/modules/web.timers.js");
8
+ var _react = _interopRequireDefault(require("react"));
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
+ function useOnFocusOutside(onFocusOutside) {
11
+ var enable = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
12
+ var capturedRef = _react.default.useRef(false);
13
+ _react.default.useEffect(function () {
14
+ if (enable) {
15
+ var handleFocus = function handleFocus() {
16
+ capturedRef.current = false;
17
+ window.setTimeout(function () {
18
+ if (!capturedRef.current) {
19
+ onFocusOutside();
20
+ }
21
+ }, 0);
22
+ };
23
+ window.addEventListener('focus', handleFocus, {
24
+ capture: true
25
+ });
26
+ return function () {
27
+ window.removeEventListener('focus', handleFocus, {
28
+ capture: true
29
+ });
30
+ };
31
+ }
32
+ return undefined;
33
+ }, [enable, onFocusOutside]);
34
+ return _react.default.useCallback(function () {
35
+ capturedRef.current = true;
36
+ }, []);
37
+ }
38
+ // #sourceMappingURL=useOnFocusOutside.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","e","__esModule","default","useOnFocusOutside","onFocusOutside","enable","arguments","length","undefined","capturedRef","React","useRef","useEffect","handleFocus","current","window","setTimeout","addEventListener","capture","removeEventListener","useCallback"],"sources":["useOnFocusOutside.ts"],"sourcesContent":["import React from 'react';\n\nexport function useOnFocusOutside(onFocusOutside: () => void, enable = true) {\n const capturedRef = React.useRef(false);\n\n React.useEffect(() => {\n if (enable) {\n const handleFocus = function () {\n capturedRef.current = false;\n window.setTimeout(() => {\n if (!capturedRef.current) {\n onFocusOutside();\n }\n }, 0);\n };\n\n window.addEventListener('focus', handleFocus, {capture: true});\n\n return () => {\n window.removeEventListener('focus', handleFocus, {capture: true});\n };\n }\n\n return undefined;\n }, [enable, onFocusOutside]);\n\n return React.useCallback(() => {\n capturedRef.current = true;\n }, []);\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAyB,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAElB,SAASG,iBAAiBA,CAACC,cAA0B,EAAiB;EAAA,IAAfC,MAAM,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI;EACvE,IAAMG,WAAW,GAAGC,cAAK,CAACC,MAAM,CAAC,KAAK,CAAC;EAEvCD,cAAK,CAACE,SAAS,CAAC,YAAM;IAClB,IAAIP,MAAM,EAAE;MACR,IAAMQ,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAe;QAC5BJ,WAAW,CAACK,OAAO,GAAG,KAAK;QAC3BC,MAAM,CAACC,UAAU,CAAC,YAAM;UACpB,IAAI,CAACP,WAAW,CAACK,OAAO,EAAE;YACtBV,cAAc,CAAC,CAAC;UACpB;QACJ,CAAC,EAAE,CAAC,CAAC;MACT,CAAC;MAEDW,MAAM,CAACE,gBAAgB,CAAC,OAAO,EAAEJ,WAAW,EAAE;QAACK,OAAO,EAAE;MAAI,CAAC,CAAC;MAE9D,OAAO,YAAM;QACTH,MAAM,CAACI,mBAAmB,CAAC,OAAO,EAAEN,WAAW,EAAE;UAACK,OAAO,EAAE;QAAI,CAAC,CAAC;MACrE,CAAC;IACL;IAEA,OAAOV,SAAS;EACpB,CAAC,EAAE,CAACH,MAAM,EAAED,cAAc,CAAC,CAAC;EAE5B,OAAOM,cAAK,CAACU,WAAW,CAAC,YAAM;IAC3BX,WAAW,CAACK,OAAO,GAAG,IAAI;EAC9B,CAAC,EAAE,EAAE,CAAC;AACV","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const useConditionallyControlledState: <T extends unknown>(property?: T, setProperty?: (value: T) => void, initialState?: T) => [T, (value: T) => void];
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useConditionallyControlledState = void 0;
7
+ var _react = require("react");
8
+ var useConditionallyControlledState = exports.useConditionallyControlledState = function useConditionallyControlledState(property, setProperty, initialState) {
9
+ var state = (0, _react.useState)(property !== null && property !== void 0 ? property : initialState);
10
+ if (setProperty !== undefined) {
11
+ return [property, setProperty];
12
+ }
13
+ return state;
14
+ };
15
+ // #sourceMappingURL=useConditionallyControlledState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","useConditionallyControlledState","exports","property","setProperty","initialState","state","useState","undefined"],"sources":["useConditionallyControlledState.ts"],"sourcesContent":["import {useState} from 'react';\n\nexport const useConditionallyControlledState = <T extends unknown>(\n property?: T,\n setProperty?: (value: T) => void,\n initialState?: T,\n) => {\n const state = useState<T | undefined>(property ?? initialState);\n\n if (setProperty !== undefined) {\n return [property, setProperty] as [T, (value: T) => void];\n }\n\n return state as [T, (value: T) => void];\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEO,IAAMC,+BAA+B,GAAAC,OAAA,CAAAD,+BAAA,GAAG,SAAlCA,+BAA+BA,CACxCE,QAAY,EACZC,WAAgC,EAChCC,YAAgB,EACf;EACD,IAAMC,KAAK,GAAG,IAAAC,eAAQ,EAAgBJ,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAIE,YAAY,CAAC;EAE/D,IAAID,WAAW,KAAKI,SAAS,EAAE;IAC3B,OAAO,CAACL,QAAQ,EAAEC,WAAW,CAAC;EAClC;EAEA,OAAOE,KAAK;AAChB,CAAC","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import type { LocalizedString } from '@yandex-data-ui/tracker-pub-api-types';
1
+ import type { LocalizedString } from '@weavix/tracker-api-types';
2
2
  export declare function useLocalizedString(messages: Record<string, LocalizedString>, language?: string): {
3
3
  t: (key: string, params?: Record<string, unknown>) => string;
4
4
  };