intergalactic 15.119.0 → 15.120.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (255) hide show
  1. package/CHANGELOG.md +95 -0
  2. package/accordion/lib/cjs/Accordion.js +11 -12
  3. package/accordion/lib/cjs/Accordion.js.map +1 -1
  4. package/accordion/lib/es6/Accordion.js +11 -12
  5. package/accordion/lib/es6/Accordion.js.map +1 -1
  6. package/accordion/package.json +1 -1
  7. package/base-trigger/lib/cjs/BaseTrigger.js +20 -18
  8. package/base-trigger/lib/cjs/BaseTrigger.js.map +1 -1
  9. package/base-trigger/lib/cjs/ButtonTrigger.js +4 -7
  10. package/base-trigger/lib/cjs/ButtonTrigger.js.map +1 -1
  11. package/base-trigger/lib/cjs/FilterTrigger.js +7 -11
  12. package/base-trigger/lib/cjs/FilterTrigger.js.map +1 -1
  13. package/base-trigger/lib/cjs/LinkTrigger.js +12 -12
  14. package/base-trigger/lib/es6/BaseTrigger.js +20 -18
  15. package/base-trigger/lib/es6/BaseTrigger.js.map +1 -1
  16. package/base-trigger/lib/es6/ButtonTrigger.js +4 -7
  17. package/base-trigger/lib/es6/ButtonTrigger.js.map +1 -1
  18. package/base-trigger/lib/es6/FilterTrigger.js +7 -11
  19. package/base-trigger/lib/es6/FilterTrigger.js.map +1 -1
  20. package/base-trigger/lib/es6/LinkTrigger.js +12 -12
  21. package/base-trigger/package.json +1 -1
  22. package/button/lib/cjs/component/AbstractButton/AbstractButton.js +0 -1
  23. package/button/lib/cjs/component/AbstractButton/AbstractButton.js.map +1 -1
  24. package/button/lib/cjs/component/Button/Button.js +27 -27
  25. package/button/lib/cjs/component/ButtonLink/ButtonLink.js +20 -20
  26. package/button/lib/es6/component/AbstractButton/AbstractButton.js +0 -1
  27. package/button/lib/es6/component/AbstractButton/AbstractButton.js.map +1 -1
  28. package/button/lib/es6/component/Button/Button.js +27 -27
  29. package/button/lib/es6/component/ButtonLink/ButtonLink.js +20 -20
  30. package/button/package.json +1 -1
  31. package/card/lib/cjs/Card.js +6 -6
  32. package/card/lib/es6/Card.js +6 -6
  33. package/card/package.json +1 -1
  34. package/carousel/lib/cjs/Carousel.js +21 -21
  35. package/carousel/lib/es6/Carousel.js +21 -21
  36. package/carousel/package.json +1 -1
  37. package/color-picker/lib/cjs/ColorPicker.js +24 -24
  38. package/color-picker/lib/cjs/PaletteManager.js +24 -24
  39. package/color-picker/lib/cjs/components/InputColor.js +24 -24
  40. package/color-picker/lib/es6/ColorPicker.js +24 -24
  41. package/color-picker/lib/es6/PaletteManager.js +24 -24
  42. package/color-picker/lib/es6/components/InputColor.js +24 -24
  43. package/color-picker/package.json +1 -1
  44. package/components.json +23 -23
  45. package/d3-chart/component/ChartLegend/LegendItem/LegendItem.type.d.ts +1 -0
  46. package/d3-chart/component/StackGroupBar/StackGroupBar.d.ts +3 -0
  47. package/d3-chart/component/StackGroupBar/StackGroupBar.type.d.ts +29 -0
  48. package/d3-chart/index.d.ts +2 -0
  49. package/d3-chart/lib/cjs/Area.js +11 -11
  50. package/d3-chart/lib/cjs/Axis.js +14 -14
  51. package/d3-chart/lib/cjs/Bar.js +16 -16
  52. package/d3-chart/lib/cjs/Bubble.js +12 -12
  53. package/d3-chart/lib/cjs/CompactHorizontalBar.js +16 -16
  54. package/d3-chart/lib/cjs/Donut.js +9 -9
  55. package/d3-chart/lib/cjs/Dots.js +8 -8
  56. package/d3-chart/lib/cjs/HorizontalBar.js +16 -16
  57. package/d3-chart/lib/cjs/Hover.js +3 -3
  58. package/d3-chart/lib/cjs/Line.js +9 -9
  59. package/d3-chart/lib/cjs/Plot.js +3 -3
  60. package/d3-chart/lib/cjs/Radar.js +19 -19
  61. package/d3-chart/lib/cjs/RadialTree.js +12 -12
  62. package/d3-chart/lib/cjs/Reference.js +12 -12
  63. package/d3-chart/lib/cjs/ScatterPlot.js +9 -9
  64. package/d3-chart/lib/cjs/Tooltip.js +9 -9
  65. package/d3-chart/lib/cjs/Venn.js +9 -9
  66. package/d3-chart/lib/cjs/a11y/PlotA11yModule.js +2 -2
  67. package/d3-chart/lib/cjs/a11y/PlotA11yView.js +2 -2
  68. package/d3-chart/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  69. package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +19 -19
  70. package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  71. package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  72. package/d3-chart/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  73. package/d3-chart/lib/cjs/component/StackGroupBar/StackGroupBar.js +173 -0
  74. package/d3-chart/lib/cjs/component/StackGroupBar/StackGroupBar.js.map +1 -0
  75. package/d3-chart/lib/cjs/component/StackGroupBar/StackGroupBar.type.js +2 -0
  76. package/d3-chart/lib/cjs/component/StackGroupBar/StackGroupBar.type.js.map +1 -0
  77. package/d3-chart/lib/cjs/index.js +7 -0
  78. package/d3-chart/lib/cjs/index.js.map +1 -1
  79. package/d3-chart/lib/cjs/types/index.d.js +9 -1
  80. package/d3-chart/lib/cjs/types/index.d.js.map +1 -1
  81. package/d3-chart/lib/es6/Area.js +11 -11
  82. package/d3-chart/lib/es6/Axis.js +14 -14
  83. package/d3-chart/lib/es6/Bar.js +16 -16
  84. package/d3-chart/lib/es6/Bubble.js +12 -12
  85. package/d3-chart/lib/es6/CompactHorizontalBar.js +16 -16
  86. package/d3-chart/lib/es6/Donut.js +9 -9
  87. package/d3-chart/lib/es6/Dots.js +8 -8
  88. package/d3-chart/lib/es6/HorizontalBar.js +16 -16
  89. package/d3-chart/lib/es6/Hover.js +3 -3
  90. package/d3-chart/lib/es6/Line.js +9 -9
  91. package/d3-chart/lib/es6/Plot.js +3 -3
  92. package/d3-chart/lib/es6/Radar.js +19 -19
  93. package/d3-chart/lib/es6/RadialTree.js +12 -12
  94. package/d3-chart/lib/es6/Reference.js +12 -12
  95. package/d3-chart/lib/es6/ScatterPlot.js +9 -9
  96. package/d3-chart/lib/es6/Tooltip.js +9 -9
  97. package/d3-chart/lib/es6/Venn.js +9 -9
  98. package/d3-chart/lib/es6/a11y/PlotA11yModule.js +2 -2
  99. package/d3-chart/lib/es6/a11y/PlotA11yView.js +2 -2
  100. package/d3-chart/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
  101. package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +19 -19
  102. package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
  103. package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
  104. package/d3-chart/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
  105. package/d3-chart/lib/es6/component/StackGroupBar/StackGroupBar.js +163 -0
  106. package/d3-chart/lib/es6/component/StackGroupBar/StackGroupBar.js.map +1 -0
  107. package/d3-chart/lib/es6/component/StackGroupBar/StackGroupBar.type.js +2 -0
  108. package/d3-chart/lib/es6/component/StackGroupBar/StackGroupBar.type.js.map +1 -0
  109. package/d3-chart/lib/es6/index.js +1 -0
  110. package/d3-chart/lib/es6/index.js.map +1 -1
  111. package/d3-chart/lib/es6/types/index.d.js +1 -0
  112. package/d3-chart/lib/es6/types/index.d.js.map +1 -1
  113. package/d3-chart/lib/types/component/ChartLegend/LegendItem/LegendItem.type.d.ts +1 -0
  114. package/d3-chart/lib/types/component/StackGroupBar/StackGroupBar.d.ts +3 -0
  115. package/d3-chart/lib/types/component/StackGroupBar/StackGroupBar.type.d.ts +29 -0
  116. package/d3-chart/lib/types/index.d.ts +2 -0
  117. package/d3-chart/package.json +1 -1
  118. package/date-picker/lib/cjs/components/Calendar.js +21 -21
  119. package/date-picker/lib/cjs/components/DateRangeComparatorAbstract.js +29 -29
  120. package/date-picker/lib/cjs/components/InputTrigger.js +29 -29
  121. package/date-picker/lib/cjs/components/PickerAbstract.js +29 -29
  122. package/date-picker/lib/cjs/components/RangePickerAbstract.js +29 -29
  123. package/date-picker/lib/es6/components/Calendar.js +21 -21
  124. package/date-picker/lib/es6/components/DateRangeComparatorAbstract.js +29 -29
  125. package/date-picker/lib/es6/components/InputTrigger.js +29 -29
  126. package/date-picker/lib/es6/components/PickerAbstract.js +29 -29
  127. package/date-picker/lib/es6/components/RangePickerAbstract.js +29 -29
  128. package/date-picker/package.json +1 -1
  129. package/drag-and-drop/lib/cjs/DragAndDrop.js +16 -16
  130. package/drag-and-drop/lib/es6/DragAndDrop.js +16 -16
  131. package/drag-and-drop/package.json +1 -1
  132. package/dropdown/lib/cjs/AbstractDropdown.js +52 -43
  133. package/dropdown/lib/cjs/AbstractDropdown.js.map +1 -1
  134. package/dropdown/lib/cjs/Dropdown.js +16 -16
  135. package/dropdown/lib/cjs/Dropdown.js.map +1 -1
  136. package/dropdown/lib/es6/AbstractDropdown.js +52 -43
  137. package/dropdown/lib/es6/AbstractDropdown.js.map +1 -1
  138. package/dropdown/lib/es6/Dropdown.js +16 -16
  139. package/dropdown/lib/es6/Dropdown.js.map +1 -1
  140. package/dropdown/package.json +1 -1
  141. package/dropdown-menu/index.d.ts +2 -0
  142. package/dropdown-menu/lib/cjs/DropdownMenu.js +29 -18
  143. package/dropdown-menu/lib/cjs/DropdownMenu.js.map +1 -1
  144. package/dropdown-menu/lib/cjs/index.d.js.map +1 -1
  145. package/dropdown-menu/lib/es6/DropdownMenu.js +29 -18
  146. package/dropdown-menu/lib/es6/DropdownMenu.js.map +1 -1
  147. package/dropdown-menu/lib/es6/index.d.js.map +1 -1
  148. package/dropdown-menu/lib/types/index.d.ts +2 -0
  149. package/dropdown-menu/package.json +1 -1
  150. package/errors/lib/cjs/Error.js +9 -9
  151. package/errors/lib/es6/Error.js +9 -9
  152. package/errors/package.json +1 -1
  153. package/feedback-form/lib/cjs/FeedbackForm.js +7 -7
  154. package/feedback-form/lib/cjs/component/checkbox-button/CheckboxButton.js +3 -3
  155. package/feedback-form/lib/cjs/component/feedback-item/FeedbackItem.js +1 -1
  156. package/feedback-form/lib/cjs/component/feedback-item/FeedbackItem.js.map +1 -1
  157. package/feedback-form/lib/cjs/component/feedback-rating/FeedbackRating.js +2 -2
  158. package/feedback-form/lib/cjs/component/slider-rating/SliderRating.js +6 -6
  159. package/feedback-form/lib/es6/FeedbackForm.js +7 -7
  160. package/feedback-form/lib/es6/component/checkbox-button/CheckboxButton.js +3 -3
  161. package/feedback-form/lib/es6/component/feedback-item/FeedbackItem.js +1 -1
  162. package/feedback-form/lib/es6/component/feedback-item/FeedbackItem.js.map +1 -1
  163. package/feedback-form/lib/es6/component/feedback-rating/FeedbackRating.js +2 -2
  164. package/feedback-form/lib/es6/component/slider-rating/SliderRating.js +6 -6
  165. package/feedback-form/package.json +1 -1
  166. package/fullscreen-modal/lib/cjs/FullscreenModal.js +13 -13
  167. package/fullscreen-modal/lib/es6/FullscreenModal.js +13 -13
  168. package/fullscreen-modal/package.json +1 -1
  169. package/inline-edit/lib/cjs/InlineEdit.js +16 -4
  170. package/inline-edit/lib/cjs/InlineEdit.js.map +1 -1
  171. package/inline-edit/lib/es6/InlineEdit.js +16 -4
  172. package/inline-edit/lib/es6/InlineEdit.js.map +1 -1
  173. package/inline-edit/package.json +1 -1
  174. package/inline-input/lib/cjs/InlineInput.js +14 -14
  175. package/inline-input/lib/es6/InlineInput.js +14 -14
  176. package/inline-input/package.json +1 -1
  177. package/input-number/lib/cjs/InputNumber.js +10 -21
  178. package/input-number/lib/cjs/InputNumber.js.map +1 -1
  179. package/input-number/lib/es6/InputNumber.js +10 -21
  180. package/input-number/lib/es6/InputNumber.js.map +1 -1
  181. package/input-number/package.json +1 -1
  182. package/input-tags/InputTags.d.ts +4 -2
  183. package/input-tags/lib/cjs/InputTags.js +51 -37
  184. package/input-tags/lib/cjs/InputTags.js.map +1 -1
  185. package/input-tags/lib/es6/InputTags.js +52 -37
  186. package/input-tags/lib/es6/InputTags.js.map +1 -1
  187. package/input-tags/lib/types/InputTags.d.ts +4 -2
  188. package/input-tags/package.json +1 -1
  189. package/mini-chart/lib/cjs/component/score/Donut.js +19 -13
  190. package/mini-chart/lib/cjs/component/score/Donut.js.map +1 -1
  191. package/mini-chart/lib/cjs/component/score/Line.js +18 -18
  192. package/mini-chart/lib/cjs/component/trend/Bar.js +17 -11
  193. package/mini-chart/lib/cjs/component/trend/Bar.js.map +1 -1
  194. package/mini-chart/lib/cjs/component/trend/Line.js +17 -11
  195. package/mini-chart/lib/cjs/component/trend/Line.js.map +1 -1
  196. package/mini-chart/lib/es6/component/score/Donut.js +19 -13
  197. package/mini-chart/lib/es6/component/score/Donut.js.map +1 -1
  198. package/mini-chart/lib/es6/component/score/Line.js +18 -18
  199. package/mini-chart/lib/es6/component/trend/Bar.js +17 -11
  200. package/mini-chart/lib/es6/component/trend/Bar.js.map +1 -1
  201. package/mini-chart/lib/es6/component/trend/Line.js +17 -11
  202. package/mini-chart/lib/es6/component/trend/Line.js.map +1 -1
  203. package/mini-chart/package.json +1 -1
  204. package/notice/lib/cjs/Notice.js +14 -14
  205. package/notice/lib/es6/Notice.js +14 -14
  206. package/notice/package.json +1 -1
  207. package/package.json +1 -1
  208. package/pagination/lib/cjs/Pagination.js +10 -10
  209. package/pagination/lib/es6/Pagination.js +10 -10
  210. package/pagination/package.json +1 -1
  211. package/select/lib/cjs/InputSearch.js +20 -16
  212. package/select/lib/cjs/InputSearch.js.map +1 -1
  213. package/select/lib/cjs/Select.js +28 -13
  214. package/select/lib/cjs/Select.js.map +1 -1
  215. package/select/lib/cjs/translations/de.json +2 -2
  216. package/select/lib/cjs/translations/en.json +3 -1
  217. package/select/lib/cjs/translations/es.json +2 -2
  218. package/select/lib/cjs/translations/fr.json +2 -2
  219. package/select/lib/cjs/translations/it.json +2 -2
  220. package/select/lib/cjs/translations/ja.json +2 -2
  221. package/select/lib/cjs/translations/ko.json +2 -2
  222. package/select/lib/cjs/translations/nl.json +2 -2
  223. package/select/lib/cjs/translations/pl.json +2 -2
  224. package/select/lib/cjs/translations/pt.json +2 -2
  225. package/select/lib/cjs/translations/sv.json +2 -2
  226. package/select/lib/cjs/translations/tr.json +2 -2
  227. package/select/lib/cjs/translations/vi.json +2 -2
  228. package/select/lib/cjs/translations/zh.json +2 -2
  229. package/select/lib/es6/InputSearch.js +20 -16
  230. package/select/lib/es6/InputSearch.js.map +1 -1
  231. package/select/lib/es6/Select.js +28 -13
  232. package/select/lib/es6/Select.js.map +1 -1
  233. package/select/lib/es6/translations/de.json +2 -2
  234. package/select/lib/es6/translations/en.json +3 -1
  235. package/select/lib/es6/translations/es.json +2 -2
  236. package/select/lib/es6/translations/fr.json +2 -2
  237. package/select/lib/es6/translations/it.json +2 -2
  238. package/select/lib/es6/translations/ja.json +2 -2
  239. package/select/lib/es6/translations/ko.json +2 -2
  240. package/select/lib/es6/translations/nl.json +2 -2
  241. package/select/lib/es6/translations/pl.json +2 -2
  242. package/select/lib/es6/translations/pt.json +2 -2
  243. package/select/lib/es6/translations/sv.json +2 -2
  244. package/select/lib/es6/translations/tr.json +2 -2
  245. package/select/lib/es6/translations/vi.json +2 -2
  246. package/select/lib/es6/translations/zh.json +2 -2
  247. package/select/package.json +1 -1
  248. package/time-picker/lib/cjs/TimePicker.js +12 -12
  249. package/time-picker/lib/es6/TimePicker.js +12 -12
  250. package/time-picker/package.json +1 -1
  251. package/utils/lib/ariaProps.d.ts +12 -0
  252. package/utils/lib/ariaProps.js +22 -0
  253. package/utils/lib/ariaProps.js.map +1 -0
  254. package/utils/lib/ariaProps.mjs +16 -0
  255. package/utils/lib/ariaProps.mjs.map +1 -0
@@ -17,15 +17,15 @@ import { IncrementIcon, DecrementIcon } from './buttons';
17
17
  import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
18
18
  import i18nEnhance from 'intergalactic/utils/lib/enhances/i18nEnhance';
19
19
  /*__reshadow-styles__:"./style/input-number.shadow.css"*/
20
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SValue_1wt58_gg_:focus~.___SControls_1wt58_gg_{display:flex}.___SControls_1wt58_gg_{display:none;flex-flow:column;justify-content:center;height:100%;box-sizing:border-box}.___SControls_1wt58_gg_.__showControls_1wt58_gg_{display:flex}.___SDown_1wt58_gg_,.___SUp_1wt58_gg_{padding:0;width:16px;color:var(--intergalactic-icon-secondary-neutral, #a9abb6);box-sizing:border-box;display:inline-flex;justify-content:center;border:0;background:0 0;cursor:pointer}.___SDown_1wt58_gg_:focus,.___SUp_1wt58_gg_:focus{outline:0}@media (hover:hover){.___SDown_1wt58_gg_:hover,.___SUp_1wt58_gg_:hover{color:var(--intergalactic-icon-secondary-neutral-hover-active, #878992)}}.___SUp_1wt58_gg_{padding-bottom:1px}.___SDown_1wt58_gg_{padding-top:1px}.___SValue_1wt58_gg_::-webkit-inner-spin-button,.___SValue_1wt58_gg_::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.___SValue_1wt58_gg_._type_number_1wt58_gg_{-moz-appearance:textfield}.___SValue_1wt58_gg_.__disabled_1wt58_gg_~.___SControls_1wt58_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}.___SValueHidden_1wt58_gg_{position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden}" /*__inner_css_end__*/, "1wt58_gg_") /*__reshadow_css_end__*/, {
21
- "__SValue": "___SValue_1wt58_gg_",
22
- "__SControls": "___SControls_1wt58_gg_",
23
- "_showControls": "__showControls_1wt58_gg_",
24
- "__SUp": "___SUp_1wt58_gg_",
25
- "__SDown": "___SDown_1wt58_gg_",
26
- "_disabled": "__disabled_1wt58_gg_",
27
- "__SValueHidden": "___SValueHidden_1wt58_gg_",
28
- "_type_number": "_type_number_1wt58_gg_"
20
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SValue_mv1hb_gg_:focus~.___SControls_mv1hb_gg_{display:flex}.___SControls_mv1hb_gg_{display:none;flex-flow:column;justify-content:center;height:100%;box-sizing:border-box}.___SControls_mv1hb_gg_.__showControls_mv1hb_gg_{display:flex}.___SDown_mv1hb_gg_,.___SUp_mv1hb_gg_{padding:0;width:16px;color:var(--intergalactic-icon-secondary-neutral, #a9abb6);box-sizing:border-box;display:inline-flex;justify-content:center;border:0;background:0 0;cursor:pointer}.___SDown_mv1hb_gg_:focus,.___SUp_mv1hb_gg_:focus{outline:0}@media (hover:hover){.___SDown_mv1hb_gg_:hover,.___SUp_mv1hb_gg_:hover{color:var(--intergalactic-icon-secondary-neutral-hover-active, #878992)}}.___SUp_mv1hb_gg_{padding-bottom:1px}.___SDown_mv1hb_gg_{padding-top:1px}.___SValue_mv1hb_gg_::-webkit-inner-spin-button,.___SValue_mv1hb_gg_::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.___SValue_mv1hb_gg_._type_number_mv1hb_gg_{-moz-appearance:textfield}.___SValue_mv1hb_gg_.__disabled_mv1hb_gg_~.___SControls_mv1hb_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}.___SValueHidden_mv1hb_gg_{position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden}" /*__inner_css_end__*/, "mv1hb_gg_") /*__reshadow_css_end__*/, {
21
+ "__SValue": "___SValue_mv1hb_gg_",
22
+ "__SControls": "___SControls_mv1hb_gg_",
23
+ "_showControls": "__showControls_mv1hb_gg_",
24
+ "__SUp": "___SUp_mv1hb_gg_",
25
+ "__SDown": "___SDown_mv1hb_gg_",
26
+ "_disabled": "__disabled_mv1hb_gg_",
27
+ "__SValueHidden": "___SValueHidden_mv1hb_gg_",
28
+ "_type_number": "_type_number_mv1hb_gg_"
29
29
  });
30
30
  import { forkRef } from 'intergalactic/utils/lib/ref';
31
31
  import { callAllEventHandlers } from 'intergalactic/utils/lib/assignProps';
@@ -209,18 +209,12 @@ var Value = /*#__PURE__*/function (_Component2) {
209
209
  if (event.key === 'Shift') {
210
210
  _this2.cursorPosition = -1;
211
211
  }
212
- var element = event.currentTarget;
213
- element.role = 'input';
214
212
  });
215
213
  _defineProperty(_assertThisInitialized(_this2), "handleKeyDown", function (event) {
216
214
  var element = event.currentTarget;
217
215
  var value = element.value;
218
216
  var length = value.length;
219
217
  var displayValue = _this2.asProps.displayValue;
220
-
221
- // we need this dirty hack for screen readers, because they couldn't read full value in input after adding there ','.
222
- // so, we change role to `region` here and back to `input` in handleKeyUp
223
- element.role = 'region';
224
218
  if (event.key === '.' || event.key === ',') {
225
219
  // for the first decimal separator we should replace both ',' and '.' to '.' because of how js convert strings to numbers (with ',' it will be NaN)
226
220
  if (value.indexOf(_this2.separatorDecimal) === -1 && event.key === ',') {
@@ -443,7 +437,6 @@ var Value = /*#__PURE__*/function (_Component2) {
443
437
  var _ref2 = this.asProps,
444
438
  _ref5;
445
439
  var SValue = Input.Value;
446
- var SValueHidden = 'div';
447
440
  var _this$asProps3 = this.asProps,
448
441
  styles = _this$asProps3.styles,
449
442
  min = _this$asProps3.min,
@@ -451,7 +444,6 @@ var Value = /*#__PURE__*/function (_Component2) {
451
444
  step = _this$asProps3.step,
452
445
  forwardRef = _this$asProps3.forwardRef,
453
446
  inputRef = _this$asProps3.inputRef,
454
- value = _this$asProps3.value,
455
447
  displayValue = _this$asProps3.displayValue;
456
448
  return _ref5 = sstyled(styles), /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SValue, _ref5.cn("SValue", _objectSpread({}, _assignProps2({
457
449
  "autoComplete": 'off',
@@ -466,10 +458,7 @@ var Value = /*#__PURE__*/function (_Component2) {
466
458
  "min": min,
467
459
  "max": max,
468
460
  "step": step
469
- }, _ref2)))), /*#__PURE__*/React.createElement(SValueHidden, _ref5.cn("SValueHidden", {
470
- "aria-live": 'polite',
471
- "aria-atomic": true
472
- }), value));
461
+ }, _ref2)))));
473
462
  }
474
463
  }]);
475
464
  return Value;
@@ -1 +1 @@
1
- {"version":3,"file":"InputNumber.js","names":["React","createComponent","Component","sstyled","Root","Input","IncrementIcon","DecrementIcon","localizedMessages","i18nEnhance","style","_sstyled","insert","forkRef","callAllEventHandlers","parseValueWithMinMax","value","min","arguments","length","undefined","Number","MIN_SAFE_INTEGER","max","MAX_SAFE_INTEGER","Math","InputNumber","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","createRef","event","_this$inputRef$curren","_this$inputRef$curren2","inputRef","current","stepUp","_this$inputRef$curren3","_this$inputRef$curren4","stepDown","_createClass","key","getValueProps","numberFormatter","Intl","NumberFormat","asProps","locale","increment","decrement","getControlsProps","_this$asProps","size","getI18nText","render","_ref","_ref4","SInputNumber","createElement","cn","_objectSpread","_assignProps","i18n","Value","_Component2","_super2","_this2","_len2","_key2","replace","RegExp","separatorThousands","separatorDecimal","prevValue","prevDisplayValue","props","stringNumber","getFormattedValue","String","isNaN","parsedValue","displayValue","test","_stringNumber$split","split","_stringNumber$split2","_slicedToArray","int","decimal","format","_this2$asProps","step","_this2$valueParser","valueParser","currentTarget","roundCoefficient","toString","parseFloat","handlers","numberValue","rounded","round","abs","numberValueRounded","toFixed","onWheel","handleWheel","target","valueInputRef","document","activeElement","preventDefault","wheelDelta","_this2$asProps2","endsWith","slice","digits","cursorPosition","element","role","indexOf","stopPropagation","selectionStart","includes","afterSelection","selectionEnd","requestAnimationFrame","newValue","state","index","lastIndexOf","setSelectionRange","cursorIndex","shiftKey","moveSelectionLeft","moveSelectionRight","nextPosition","handleValidation","_this2$asProps3","_this2$asProps3$max","_this2$asProps4","_this2$asProps4$min","uncontrolledProps","_this3","_this3$asProps","_this3$valueParser","get","countDecimals","floor","toPrecision","componentDidMount","_this$valueInputRef$c","addEventListener","_this$asProps2","_this$valueParser","componentDidUpdate","prevProps","_this$valueParser2","componentWillUnmount","_this$valueInputRef$c2","removeEventListener","_ref2","_ref5","SValue","SValueHidden","_this$asProps3","styles","forwardRef","Fragment","_assignProps2","handleChange","handleKeyDown","handleKeyUp","handleClick","defaultValue","defaultDisplayValue","Controls","_ref3","arguments[0]","_ref6","Children","SControls","Addon","SUp","SDown","_assignProps3"],"sources":["../../src/InputNumber.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Input from '@semcore/input';\nimport { IncrementIcon, DecrementIcon } from './buttons';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\n\nimport style from './style/input-number.shadow.css';\nimport { forkRef } from '@semcore/utils/lib/ref';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\n\nexport function parseValueWithMinMax(\n value,\n min = Number.MIN_SAFE_INTEGER,\n max = Number.MAX_SAFE_INTEGER,\n) {\n return Math.max(min, Math.min(max, value));\n}\n\nclass InputNumber extends Component {\n static displayName = 'InputNumber';\n static style = style;\n static enhance = [i18nEnhance(localizedMessages)];\n static defaultProps = {\n size: 'm',\n i18n: localizedMessages,\n locale: 'en',\n };\n\n inputRef = React.createRef();\n\n increment = (event) => {\n this.inputRef.current?.stepUp?.(event);\n };\n\n decrement = (event) => {\n this.inputRef.current?.stepDown?.(event);\n };\n\n getValueProps() {\n const numberFormatter = new Intl.NumberFormat(this.asProps.locale, { style: 'decimal' });\n\n return {\n inputRef: this.inputRef,\n increment: this.increment,\n decrement: this.decrement,\n numberFormatter,\n };\n }\n\n getControlsProps() {\n const { size, getI18nText } = this.asProps;\n return {\n size,\n increment: this.increment,\n decrement: this.decrement,\n getI18nText,\n };\n }\n\n render() {\n const SInputNumber = Root;\n return sstyled(this.asProps.style)(<SInputNumber render={Input} />);\n }\n}\n\nclass Value extends Component {\n static style = style;\n static defaultProps = {\n defaultValue: '',\n defaultDisplayValue: '',\n step: 1,\n };\n\n valueInputRef = React.createRef();\n\n cursorPosition = -1;\n\n uncontrolledProps() {\n return {\n displayValue: null,\n value: [\n null,\n (newValue) => {\n const { value: prevValue, displayValue: prevDisplayValue } = this.asProps;\n\n const { parsedValue, displayValue } = this.valueParser(\n newValue,\n prevValue,\n prevDisplayValue,\n );\n\n this.handlers.displayValue(displayValue);\n\n return parsedValue;\n },\n ],\n };\n }\n\n get separatorDecimal() {\n const { numberFormatter } = this.props;\n\n return numberFormatter.format(11.11).replace(/\\d/g, '');\n }\n\n get separatorThousands() {\n const { numberFormatter } = this.props;\n\n return numberFormatter.format(1111).replace(/\\d/g, '');\n }\n\n getFormattedValue = (value) => {\n return value\n .replace(new RegExp(`[${this.separatorThousands}]`, 'g'), '')\n .replace(this.separatorDecimal, '.');\n };\n\n valueParser = (value, prevValue, prevDisplayValue) => {\n const { numberFormatter } = this.props;\n\n const stringNumber = this.getFormattedValue(String(value));\n\n if (Number.isNaN(Number(stringNumber))) {\n return {\n parsedValue: prevValue,\n displayValue: prevDisplayValue,\n };\n }\n\n let displayValue = '';\n\n if (/\\.[0-9]*0$/.test(stringNumber)) {\n const [int, decimal] = stringNumber.split(this.separatorDecimal);\n displayValue = numberFormatter.format(int) + this.separatorDecimal + decimal;\n } else if (stringNumber !== '') {\n displayValue = numberFormatter.format(stringNumber);\n }\n\n return {\n parsedValue: stringNumber,\n displayValue: displayValue,\n };\n };\n\n round(value, step) {\n const countDecimals = Math.floor(step) === step ? 0 : step.toString().split('.')[1].length || 0;\n return countDecimals === 0\n ? Number.parseFloat(value)\n : Number.parseFloat(value).toPrecision(countDecimals);\n }\n\n handleValidation = (event) => {\n const { value, displayValue, min, max, step } = this.asProps;\n const { parsedValue } = this.valueParser(event.currentTarget.value, value, displayValue);\n const roundCoefficient = step < 1 ? step.toString().split('.')[1].length : 1;\n\n if (Number.isNaN(value) || Number.isNaN(Number.parseFloat(parsedValue))) {\n event.currentTarget.value = '';\n this.handlers.value('', event);\n } else {\n let numberValue = parseValueWithMinMax(Number.parseFloat(parsedValue), min, max);\n const rounded = this.round(numberValue % step, step);\n if (rounded !== 0) {\n if (rounded >= step / 2) {\n numberValue += step - rounded;\n } else if (Math.abs(rounded) < step) {\n numberValue -= rounded;\n }\n }\n const numberValueRounded = Number(numberValue.toFixed(roundCoefficient));\n\n this.handlers.value(String(numberValueRounded), event);\n }\n };\n\n // https://stackoverflow.com/questions/57358640/cancel-wheel-event-with-e-preventdefault-in-react-event-bubbling\n componentDidMount() {\n this.valueInputRef.current?.addEventListener('wheel', this.onWheel);\n\n const { inputRef, value } = this.asProps;\n\n if (inputRef.current) {\n inputRef.current.stepUp = this.stepUp;\n inputRef.current.stepDown = this.stepDown;\n }\n\n if (value !== '') {\n const { displayValue } = this.valueParser(value, '', '');\n this.handlers.displayValue(displayValue);\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.value !== this.props.value) {\n const { displayValue } = this.valueParser(\n this.props.value,\n prevProps.value,\n prevProps.displayValue,\n );\n this.handlers.displayValue(displayValue);\n }\n }\n\n componentWillUnmount() {\n this.valueInputRef.current?.removeEventListener('wheel', this.onWheel);\n }\n\n onWheel = (event) => {\n callAllEventHandlers(this.asProps.onWheel, this.handleWheel)(event);\n };\n\n handleWheel = (event) => {\n if (event.target !== this.valueInputRef.current) return;\n if (document.activeElement !== this.valueInputRef.current) return;\n event.preventDefault();\n if (event.wheelDelta > 0) {\n this.stepUp(event);\n } else if (event.wheelDelta < 0) {\n this.stepDown(event);\n }\n };\n\n handleChange = (event) => {\n const value = this.getFormattedValue(event.currentTarget.value);\n const { numberFormatter, value: prevValue } = this.asProps;\n\n if (value === '.' || value === '-') {\n this.handlers.displayValue(value);\n return false;\n }\n\n if (value.endsWith('-')) {\n return false;\n }\n\n if (value.endsWith('.')) {\n if (value.length > prevValue.length) {\n this.handlers.displayValue(numberFormatter.format(value) + this.separatorDecimal);\n return false;\n } else {\n this.handlers.value(value.slice(0, -1), event);\n return false;\n }\n }\n\n const digits = /[0-9.-]+/.test(value);\n\n if (digits || value === '') {\n this.handlers.value(value, event);\n }\n };\n\n handleKeyUp = (event) => {\n if (event.key === 'Shift') {\n this.cursorPosition = -1;\n }\n\n const element = event.currentTarget;\n\n element.role = 'input';\n };\n\n handleKeyDown = (event) => {\n const element = event.currentTarget;\n const value = element.value;\n const length = value.length;\n const { displayValue } = this.asProps;\n\n // we need this dirty hack for screen readers, because they couldn't read full value in input after adding there ','.\n // so, we change role to `region` here and back to `input` in handleKeyUp\n element.role = 'region';\n\n if (event.key === '.' || event.key === ',') {\n // for the first decimal separator we should replace both ',' and '.' to '.' because of how js convert strings to numbers (with ',' it will be NaN)\n if (value.indexOf(this.separatorDecimal) === -1 && event.key === ',') {\n event.currentTarget.value = value + '.';\n }\n // we could press decimal separator second time - prevent this '1.5.'\n else if (value.indexOf(this.separatorDecimal) !== -1) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n }\n\n if (event.key === 'Backspace' && value.endsWith(this.separatorDecimal)) {\n event.preventDefault();\n event.stopPropagation();\n this.handlers.displayValue(displayValue.slice(0, -1));\n return false;\n }\n\n if (\n element.selectionStart !== length &&\n (event.key === 'Backspace' ||\n event.key === this.separatorDecimal ||\n ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'].includes(event.key))\n ) {\n const afterSelection = value.slice(element.selectionEnd);\n\n requestAnimationFrame(() => {\n const newValue = this.state.displayValue;\n const index = newValue.lastIndexOf(afterSelection);\n const selectionStart = index;\n const selectionEnd = index;\n\n element.setSelectionRange(selectionStart, selectionEnd);\n });\n }\n\n // For correct moving cursor with skip separatorThousands.\n // Examples:\n // - Press ArrowLeft: `12,3|4 -> 12|,34`\n // - Press ArrowRight: `1|,55 -> 1,5|5`\n const cursorIndex = 2;\n\n if (event.shiftKey && this.cursorPosition === -1) {\n this.cursorPosition = element.selectionStart;\n }\n\n switch (event.key) {\n case 'ArrowLeft': {\n event.preventDefault();\n this.moveSelectionLeft(element, cursorIndex);\n break;\n }\n case 'ArrowRight': {\n event.preventDefault();\n this.moveSelectionRight(element, cursorIndex);\n break;\n }\n case 'ArrowDown': {\n event.preventDefault();\n this.stepDown(event);\n break;\n }\n case 'ArrowUp': {\n event.preventDefault();\n this.stepUp(event);\n break;\n }\n }\n };\n\n moveSelectionLeft = (element, cursorIndex) => {\n const value = element.value;\n const nextPosition = element.selectionStart - 1 >= 0 ? element.selectionStart - 1 : 0;\n\n const cursorPosition =\n value[element.selectionStart - cursorIndex] === this.separatorThousands\n ? element.selectionStart - cursorIndex\n : nextPosition;\n\n if (this.cursorPosition === -1) {\n // without shift\n element.setSelectionRange(cursorPosition, cursorPosition);\n } else {\n if (\n element.selectionStart <= this.cursorPosition &&\n element.selectionEnd === this.cursorPosition\n ) {\n element.setSelectionRange(cursorPosition, element.selectionEnd);\n } else {\n element.setSelectionRange(\n element.selectionStart,\n value[element.selectionEnd - cursorIndex] === this.separatorThousands\n ? element.selectionEnd - cursorIndex\n : element.selectionEnd - 1,\n );\n }\n }\n };\n\n moveSelectionRight = (element, cursorIndex) => {\n const value = element.value;\n const nextPosition = element.selectionEnd + 1;\n\n const cursorPosition =\n value[element.selectionEnd] === this.separatorThousands\n ? element.selectionEnd + cursorIndex\n : nextPosition;\n\n if (this.cursorPosition === -1) {\n // without shift\n element.setSelectionRange(cursorPosition, cursorPosition);\n } else {\n if (\n element.selectionEnd >= this.cursorPosition &&\n element.selectionStart === this.cursorPosition\n ) {\n element.setSelectionRange(element.selectionStart, cursorPosition);\n } else {\n element.setSelectionRange(\n value[element.selectionStart] === this.separatorThousands\n ? element.selectionStart + cursorIndex\n : element.selectionStart + 1,\n element.selectionEnd,\n );\n }\n }\n };\n\n handleClick = (event) => {\n const element = event.target;\n const value = element.value;\n\n if (value[element.selectionStart - 1] === this.separatorThousands) {\n element.setSelectionRange(element.selectionStart - 1, element.selectionEnd - 1);\n }\n };\n\n handleBlur = (event) => {\n this.cursorPosition = -1;\n this.handleValidation(event);\n };\n\n stepUp = (event) => {\n const { max = Number.MAX_SAFE_INTEGER, min, step, value } = this.asProps;\n\n let numberValue;\n\n // https://stackoverflow.com/questions/68010124/safari-number-input-stepup-stepdown-not-functioning-with-empty-value\n if (value === '') {\n numberValue = min ?? 0;\n } else {\n numberValue = Number.parseFloat(value);\n }\n\n if (!Number.isNaN(numberValue)) {\n const newValue = numberValue + step <= max ? numberValue + step : max;\n\n this.handlers.value(newValue.toString(), event);\n }\n };\n\n stepDown = (event) => {\n const { max, min = Number.MIN_SAFE_INTEGER, step, value } = this.asProps;\n\n let numberValue;\n\n if (value === '') {\n numberValue = max ?? 0;\n } else {\n numberValue = Number.parseFloat(value);\n }\n\n if (!Number.isNaN(numberValue)) {\n const newValue = numberValue - step >= min ? numberValue - step : min;\n\n this.handlers.value(newValue.toString(), event);\n }\n };\n\n render() {\n const SValue = Root;\n const SValueHidden = 'div';\n const { styles, min, max, step, forwardRef, inputRef, value, displayValue } = this.asProps;\n\n return sstyled(styles)(\n <>\n <SValue\n render={Input.Value}\n autoComplete='off'\n onBlur={this.handleValidation}\n use:onChange={this.handleChange}\n onKeyDown={this.handleKeyDown}\n onKeyUp={this.handleKeyUp}\n onClick={this.handleClick}\n use:ref={forkRef(this.valueInputRef, inputRef, forwardRef)}\n use:value={displayValue}\n inputMode='decimal'\n min={min}\n max={max}\n step={step}\n />\n {/* the next hidden div is necessary for the screen reader to report the value\n in the input, because after validation the value can change to the `min` or `max`\n if entered less than `min` or more than `max` */}\n <SValueHidden aria-live='polite' aria-atomic={true}>\n {value}\n </SValueHidden>\n </>,\n );\n }\n}\n\nfunction Controls(props) {\n const { Children, increment, decrement, size, styles, getI18nText } = props;\n const SControls = Root;\n const SUp = 'button';\n const SDown = 'button';\n\n return sstyled(styles)(\n <SControls render={Input.Addon} aria-hidden='true'>\n <SUp\n onClick={increment}\n tabIndex={-1}\n type='button'\n size={size}\n aria-label={getI18nText('increment')}\n >\n <IncrementIcon />\n </SUp>\n <SDown\n onClick={decrement}\n tabIndex={-1}\n type='button'\n size={size}\n aria-label={getI18nText('decrement')}\n >\n <DecrementIcon />\n </SDown>\n <Children />\n </SControls>,\n );\n}\nControls.style = style;\n\nexport default createComponent(InputNumber, {\n Value,\n Controls,\n Addon: Input.Addon,\n});\n"],"mappings":"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"}
1
+ {"version":3,"file":"InputNumber.js","names":["React","createComponent","Component","sstyled","Root","Input","IncrementIcon","DecrementIcon","localizedMessages","i18nEnhance","style","_sstyled","insert","forkRef","callAllEventHandlers","parseValueWithMinMax","value","min","arguments","length","undefined","Number","MIN_SAFE_INTEGER","max","MAX_SAFE_INTEGER","Math","InputNumber","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","createRef","event","_this$inputRef$curren","_this$inputRef$curren2","inputRef","current","stepUp","_this$inputRef$curren3","_this$inputRef$curren4","stepDown","_createClass","key","getValueProps","numberFormatter","Intl","NumberFormat","asProps","locale","increment","decrement","getControlsProps","_this$asProps","size","getI18nText","render","_ref","_ref4","SInputNumber","createElement","cn","_objectSpread","_assignProps","i18n","Value","_Component2","_super2","_this2","_len2","_key2","replace","RegExp","separatorThousands","separatorDecimal","prevValue","prevDisplayValue","props","stringNumber","getFormattedValue","String","isNaN","parsedValue","displayValue","test","_stringNumber$split","split","_stringNumber$split2","_slicedToArray","int","decimal","format","_this2$asProps","step","_this2$valueParser","valueParser","currentTarget","roundCoefficient","toString","parseFloat","handlers","numberValue","rounded","round","abs","numberValueRounded","toFixed","onWheel","handleWheel","target","valueInputRef","document","activeElement","preventDefault","wheelDelta","_this2$asProps2","endsWith","slice","digits","cursorPosition","element","indexOf","stopPropagation","selectionStart","includes","afterSelection","selectionEnd","requestAnimationFrame","newValue","state","index","lastIndexOf","setSelectionRange","cursorIndex","shiftKey","moveSelectionLeft","moveSelectionRight","nextPosition","handleValidation","_this2$asProps3","_this2$asProps3$max","_this2$asProps4","_this2$asProps4$min","uncontrolledProps","_this3","_this3$asProps","_this3$valueParser","get","countDecimals","floor","toPrecision","componentDidMount","_this$valueInputRef$c","addEventListener","_this$asProps2","_this$valueParser","componentDidUpdate","prevProps","_this$valueParser2","componentWillUnmount","_this$valueInputRef$c2","removeEventListener","_ref2","_ref5","SValue","_this$asProps3","styles","forwardRef","Fragment","_assignProps2","handleChange","handleKeyDown","handleKeyUp","handleClick","defaultValue","defaultDisplayValue","Controls","_ref3","arguments[0]","_ref6","Children","SControls","Addon","SUp","SDown","_assignProps3"],"sources":["../../src/InputNumber.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Input from '@semcore/input';\nimport { IncrementIcon, DecrementIcon } from './buttons';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\n\nimport style from './style/input-number.shadow.css';\nimport { forkRef } from '@semcore/utils/lib/ref';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\n\nexport function parseValueWithMinMax(\n value,\n min = Number.MIN_SAFE_INTEGER,\n max = Number.MAX_SAFE_INTEGER,\n) {\n return Math.max(min, Math.min(max, value));\n}\n\nclass InputNumber extends Component {\n static displayName = 'InputNumber';\n static style = style;\n static enhance = [i18nEnhance(localizedMessages)];\n static defaultProps = {\n size: 'm',\n i18n: localizedMessages,\n locale: 'en',\n };\n\n inputRef = React.createRef();\n\n increment = (event) => {\n this.inputRef.current?.stepUp?.(event);\n };\n\n decrement = (event) => {\n this.inputRef.current?.stepDown?.(event);\n };\n\n getValueProps() {\n const numberFormatter = new Intl.NumberFormat(this.asProps.locale, { style: 'decimal' });\n\n return {\n inputRef: this.inputRef,\n increment: this.increment,\n decrement: this.decrement,\n numberFormatter,\n };\n }\n\n getControlsProps() {\n const { size, getI18nText } = this.asProps;\n return {\n size,\n increment: this.increment,\n decrement: this.decrement,\n getI18nText,\n };\n }\n\n render() {\n const SInputNumber = Root;\n return sstyled(this.asProps.style)(<SInputNumber render={Input} />);\n }\n}\n\nclass Value extends Component {\n static style = style;\n static defaultProps = {\n defaultValue: '',\n defaultDisplayValue: '',\n step: 1,\n };\n\n valueInputRef = React.createRef();\n\n cursorPosition = -1;\n\n uncontrolledProps() {\n return {\n displayValue: null,\n value: [\n null,\n (newValue) => {\n const { value: prevValue, displayValue: prevDisplayValue } = this.asProps;\n\n const { parsedValue, displayValue } = this.valueParser(\n newValue,\n prevValue,\n prevDisplayValue,\n );\n\n this.handlers.displayValue(displayValue);\n\n return parsedValue;\n },\n ],\n };\n }\n\n get separatorDecimal() {\n const { numberFormatter } = this.props;\n\n return numberFormatter.format(11.11).replace(/\\d/g, '');\n }\n\n get separatorThousands() {\n const { numberFormatter } = this.props;\n\n return numberFormatter.format(1111).replace(/\\d/g, '');\n }\n\n getFormattedValue = (value) => {\n return value\n .replace(new RegExp(`[${this.separatorThousands}]`, 'g'), '')\n .replace(this.separatorDecimal, '.');\n };\n\n valueParser = (value, prevValue, prevDisplayValue) => {\n const { numberFormatter } = this.props;\n\n const stringNumber = this.getFormattedValue(String(value));\n\n if (Number.isNaN(Number(stringNumber))) {\n return {\n parsedValue: prevValue,\n displayValue: prevDisplayValue,\n };\n }\n\n let displayValue = '';\n\n if (/\\.[0-9]*0$/.test(stringNumber)) {\n const [int, decimal] = stringNumber.split(this.separatorDecimal);\n displayValue = numberFormatter.format(int) + this.separatorDecimal + decimal;\n } else if (stringNumber !== '') {\n displayValue = numberFormatter.format(stringNumber);\n }\n\n return {\n parsedValue: stringNumber,\n displayValue: displayValue,\n };\n };\n\n round(value, step) {\n const countDecimals = Math.floor(step) === step ? 0 : step.toString().split('.')[1].length || 0;\n return countDecimals === 0\n ? Number.parseFloat(value)\n : Number.parseFloat(value).toPrecision(countDecimals);\n }\n\n handleValidation = (event) => {\n const { value, displayValue, min, max, step } = this.asProps;\n const { parsedValue } = this.valueParser(event.currentTarget.value, value, displayValue);\n const roundCoefficient = step < 1 ? step.toString().split('.')[1].length : 1;\n\n if (Number.isNaN(value) || Number.isNaN(Number.parseFloat(parsedValue))) {\n event.currentTarget.value = '';\n this.handlers.value('', event);\n } else {\n let numberValue = parseValueWithMinMax(Number.parseFloat(parsedValue), min, max);\n const rounded = this.round(numberValue % step, step);\n if (rounded !== 0) {\n if (rounded >= step / 2) {\n numberValue += step - rounded;\n } else if (Math.abs(rounded) < step) {\n numberValue -= rounded;\n }\n }\n const numberValueRounded = Number(numberValue.toFixed(roundCoefficient));\n\n this.handlers.value(String(numberValueRounded), event);\n }\n };\n\n // https://stackoverflow.com/questions/57358640/cancel-wheel-event-with-e-preventdefault-in-react-event-bubbling\n componentDidMount() {\n this.valueInputRef.current?.addEventListener('wheel', this.onWheel);\n\n const { inputRef, value } = this.asProps;\n\n if (inputRef.current) {\n inputRef.current.stepUp = this.stepUp;\n inputRef.current.stepDown = this.stepDown;\n }\n\n if (value !== '') {\n const { displayValue } = this.valueParser(value, '', '');\n this.handlers.displayValue(displayValue);\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.value !== this.props.value) {\n const { displayValue } = this.valueParser(\n this.props.value,\n prevProps.value,\n prevProps.displayValue,\n );\n this.handlers.displayValue(displayValue);\n }\n }\n\n componentWillUnmount() {\n this.valueInputRef.current?.removeEventListener('wheel', this.onWheel);\n }\n\n onWheel = (event) => {\n callAllEventHandlers(this.asProps.onWheel, this.handleWheel)(event);\n };\n\n handleWheel = (event) => {\n if (event.target !== this.valueInputRef.current) return;\n if (document.activeElement !== this.valueInputRef.current) return;\n event.preventDefault();\n if (event.wheelDelta > 0) {\n this.stepUp(event);\n } else if (event.wheelDelta < 0) {\n this.stepDown(event);\n }\n };\n\n handleChange = (event) => {\n const value = this.getFormattedValue(event.currentTarget.value);\n const { numberFormatter, value: prevValue } = this.asProps;\n\n if (value === '.' || value === '-') {\n this.handlers.displayValue(value);\n return false;\n }\n\n if (value.endsWith('-')) {\n return false;\n }\n\n if (value.endsWith('.')) {\n if (value.length > prevValue.length) {\n this.handlers.displayValue(numberFormatter.format(value) + this.separatorDecimal);\n return false;\n } else {\n this.handlers.value(value.slice(0, -1), event);\n return false;\n }\n }\n\n const digits = /[0-9.-]+/.test(value);\n\n if (digits || value === '') {\n this.handlers.value(value, event);\n }\n };\n\n handleKeyUp = (event) => {\n if (event.key === 'Shift') {\n this.cursorPosition = -1;\n }\n };\n\n handleKeyDown = (event) => {\n const element = event.currentTarget;\n const value = element.value;\n const length = value.length;\n const { displayValue } = this.asProps;\n\n if (event.key === '.' || event.key === ',') {\n // for the first decimal separator we should replace both ',' and '.' to '.' because of how js convert strings to numbers (with ',' it will be NaN)\n if (value.indexOf(this.separatorDecimal) === -1 && event.key === ',') {\n event.currentTarget.value = value + '.';\n }\n // we could press decimal separator second time - prevent this '1.5.'\n else if (value.indexOf(this.separatorDecimal) !== -1) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n }\n\n if (event.key === 'Backspace' && value.endsWith(this.separatorDecimal)) {\n event.preventDefault();\n event.stopPropagation();\n this.handlers.displayValue(displayValue.slice(0, -1));\n return false;\n }\n\n if (\n element.selectionStart !== length &&\n (event.key === 'Backspace' ||\n event.key === this.separatorDecimal ||\n ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'].includes(event.key))\n ) {\n const afterSelection = value.slice(element.selectionEnd);\n\n requestAnimationFrame(() => {\n const newValue = this.state.displayValue;\n const index = newValue.lastIndexOf(afterSelection);\n const selectionStart = index;\n const selectionEnd = index;\n\n element.setSelectionRange(selectionStart, selectionEnd);\n });\n }\n\n // For correct moving cursor with skip separatorThousands.\n // Examples:\n // - Press ArrowLeft: `12,3|4 -> 12|,34`\n // - Press ArrowRight: `1|,55 -> 1,5|5`\n const cursorIndex = 2;\n\n if (event.shiftKey && this.cursorPosition === -1) {\n this.cursorPosition = element.selectionStart;\n }\n\n switch (event.key) {\n case 'ArrowLeft': {\n event.preventDefault();\n this.moveSelectionLeft(element, cursorIndex);\n break;\n }\n case 'ArrowRight': {\n event.preventDefault();\n this.moveSelectionRight(element, cursorIndex);\n break;\n }\n case 'ArrowDown': {\n event.preventDefault();\n this.stepDown(event);\n break;\n }\n case 'ArrowUp': {\n event.preventDefault();\n this.stepUp(event);\n break;\n }\n }\n };\n\n moveSelectionLeft = (element, cursorIndex) => {\n const value = element.value;\n const nextPosition = element.selectionStart - 1 >= 0 ? element.selectionStart - 1 : 0;\n\n const cursorPosition =\n value[element.selectionStart - cursorIndex] === this.separatorThousands\n ? element.selectionStart - cursorIndex\n : nextPosition;\n\n if (this.cursorPosition === -1) {\n // without shift\n element.setSelectionRange(cursorPosition, cursorPosition);\n } else {\n if (\n element.selectionStart <= this.cursorPosition &&\n element.selectionEnd === this.cursorPosition\n ) {\n element.setSelectionRange(cursorPosition, element.selectionEnd);\n } else {\n element.setSelectionRange(\n element.selectionStart,\n value[element.selectionEnd - cursorIndex] === this.separatorThousands\n ? element.selectionEnd - cursorIndex\n : element.selectionEnd - 1,\n );\n }\n }\n };\n\n moveSelectionRight = (element, cursorIndex) => {\n const value = element.value;\n const nextPosition = element.selectionEnd + 1;\n\n const cursorPosition =\n value[element.selectionEnd] === this.separatorThousands\n ? element.selectionEnd + cursorIndex\n : nextPosition;\n\n if (this.cursorPosition === -1) {\n // without shift\n element.setSelectionRange(cursorPosition, cursorPosition);\n } else {\n if (\n element.selectionEnd >= this.cursorPosition &&\n element.selectionStart === this.cursorPosition\n ) {\n element.setSelectionRange(element.selectionStart, cursorPosition);\n } else {\n element.setSelectionRange(\n value[element.selectionStart] === this.separatorThousands\n ? element.selectionStart + cursorIndex\n : element.selectionStart + 1,\n element.selectionEnd,\n );\n }\n }\n };\n\n handleClick = (event) => {\n const element = event.target;\n const value = element.value;\n\n if (value[element.selectionStart - 1] === this.separatorThousands) {\n element.setSelectionRange(element.selectionStart - 1, element.selectionEnd - 1);\n }\n };\n\n handleBlur = (event) => {\n this.cursorPosition = -1;\n this.handleValidation(event);\n };\n\n stepUp = (event) => {\n const { max = Number.MAX_SAFE_INTEGER, min, step, value } = this.asProps;\n\n let numberValue;\n\n // https://stackoverflow.com/questions/68010124/safari-number-input-stepup-stepdown-not-functioning-with-empty-value\n if (value === '') {\n numberValue = min ?? 0;\n } else {\n numberValue = Number.parseFloat(value);\n }\n\n if (!Number.isNaN(numberValue)) {\n const newValue = numberValue + step <= max ? numberValue + step : max;\n\n this.handlers.value(newValue.toString(), event);\n }\n };\n\n stepDown = (event) => {\n const { max, min = Number.MIN_SAFE_INTEGER, step, value } = this.asProps;\n\n let numberValue;\n\n if (value === '') {\n numberValue = max ?? 0;\n } else {\n numberValue = Number.parseFloat(value);\n }\n\n if (!Number.isNaN(numberValue)) {\n const newValue = numberValue - step >= min ? numberValue - step : min;\n\n this.handlers.value(newValue.toString(), event);\n }\n };\n\n render() {\n const SValue = Root;\n const { styles, min, max, step, forwardRef, inputRef, displayValue } = this.asProps;\n\n return sstyled(styles)(\n <>\n <SValue\n render={Input.Value}\n autoComplete='off'\n onBlur={this.handleValidation}\n use:onChange={this.handleChange}\n onKeyDown={this.handleKeyDown}\n onKeyUp={this.handleKeyUp}\n onClick={this.handleClick}\n use:ref={forkRef(this.valueInputRef, inputRef, forwardRef)}\n use:value={displayValue}\n inputMode='decimal'\n min={min}\n max={max}\n step={step}\n />\n </>,\n );\n }\n}\n\nfunction Controls(props) {\n const { Children, increment, decrement, size, styles, getI18nText } = props;\n const SControls = Root;\n const SUp = 'button';\n const SDown = 'button';\n\n return sstyled(styles)(\n <SControls render={Input.Addon} aria-hidden='true'>\n <SUp\n onClick={increment}\n tabIndex={-1}\n type='button'\n size={size}\n aria-label={getI18nText('increment')}\n >\n <IncrementIcon />\n </SUp>\n <SDown\n onClick={decrement}\n tabIndex={-1}\n type='button'\n size={size}\n aria-label={getI18nText('decrement')}\n >\n <DecrementIcon />\n </SDown>\n <Children />\n </SControls>,\n );\n}\nControls.style = style;\n\nexport default createComponent(InputNumber, {\n Value,\n Controls,\n Addon: Input.Addon,\n});\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"name":"intergalactic/input-number","description":"Semrush InputNumber Component","version":"5.40.0","main":"lib/cjs/index.js","module":"lib/es6/index.js","typings":"lib/types/index.d.ts","sideEffects":false,"author":"UI-kit team <ui-kit-team@semrush.com>","license":"MIT","scripts":{"build":"pnpm semcore-builder --source=js"},"dependencies":{"@semcore/input":"4.40.0","@semcore/utils":"4.44.0","@semcore/flex-box":"5.39.0"},"peerDependencies":{"@semcore/core":"^2.17.5","react":"16.8 - 18","react-dom":"16.8 - 18"},"repository":{"type":"git","url":"https://github.com/semrush/intergalactic.git","directory":"semcore/input-number"},"devDependencies":{"@types/react":"18.0.21","@semcore/testing-utils":"1.0.0"}}
1
+ {"name":"intergalactic/input-number","description":"Semrush InputNumber Component","version":"5.40.1","main":"lib/cjs/index.js","module":"lib/es6/index.js","typings":"lib/types/index.d.ts","sideEffects":false,"author":"UI-kit team <ui-kit-team@semrush.com>","license":"MIT","scripts":{"build":"pnpm semcore-builder --source=js"},"dependencies":{"@semcore/input":"4.40.0","@semcore/utils":"4.44.0","@semcore/flex-box":"5.39.0"},"peerDependencies":{"@semcore/core":"^2.17.5","react":"16.8 - 18","react-dom":"16.8 - 18"},"repository":{"type":"git","url":"https://github.com/semrush/intergalactic.git","directory":"semcore/input-number"},"devDependencies":{"@types/react":"18.0.21","@semcore/testing-utils":"1.0.0"}}
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import { Component, PropGetterFn, UnknownProperties, Intergalactic } from 'intergalactic/core';
3
3
  import Input, { InputProps, InputValueProps } from 'intergalactic/input';
4
4
  import { ScrollAreaProps } from 'intergalactic/scroll-area';
5
- import Tag, { TagProps } from 'intergalactic/tag';
5
+ import Tag, { TagProps, TagTextProps, TagContext } from 'intergalactic/tag';
6
6
  /** @deprecated */
7
7
  export interface IInputTagsValueProps extends InputTagsValueProps, UnknownProperties {
8
8
  }
@@ -61,7 +61,9 @@ declare const _default: (<Tag extends Intergalactic.InternalTypings.ComponentTag
61
61
  Value: typeof Input.Value;
62
62
  TagsContainer: Intergalactic.Component<'ul'>;
63
63
  Tag: Intergalactic.Component<'div', InputTagsTagProps> & {
64
- Text: typeof Tag.Text;
64
+ Text: Intergalactic.Component<'div', TagProps, TagContext> & {
65
+ Content: Intergalactic.Component<'div', TagTextProps>;
66
+ };
65
67
  Close: typeof Tag.Close;
66
68
  Addon: typeof Tag.Addon;
67
69
  Circle: typeof Tag.Circle;
@@ -20,7 +20,7 @@ var _core = _interopRequireWildcard(require("intergalactic/core"));
20
20
  var _react = _interopRequireDefault(require("react"));
21
21
  var _input = _interopRequireDefault(require("intergalactic/input"));
22
22
  var _scrollArea = _interopRequireDefault(require("intergalactic/scroll-area"));
23
- var _tag = require("intergalactic/tag");
23
+ var _tag = _interopRequireWildcard(require("intergalactic/tag"));
24
24
  var _fire = _interopRequireDefault(require("intergalactic/utils/lib/fire"));
25
25
  var _flexBox = require("intergalactic/flex-box");
26
26
  var _uniqueID = _interopRequireDefault(require("intergalactic/utils/lib/uniqueID"));
@@ -30,18 +30,18 @@ var _i18nEnhance = _interopRequireDefault(require("intergalactic/utils/lib/enhan
30
30
  var _findComponent = require("intergalactic/utils/lib/findComponent");
31
31
  var _getAccessibleName = require("intergalactic/utils/lib/getAccessibleName");
32
32
  /*__reshadow-styles__:"./style/input-tag.shadow.css"*/
33
- var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".___SInputTags_cucpv_gg_{box-sizing:border-box;cursor:text;align-items:flex-start;overflow:visible;overflow:initial}.___SInputTags_cucpv_gg_ .___SContainer_cucpv_gg_:focus .___SOutline_cucpv_gg_{border-color:var(--intergalactic-border-info-active, #006dca);box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___SInputTags_cucpv_gg_ .___SContainer_cucpv_gg_:focus:has(.___SOutline_cucpv_gg_)::after{box-shadow:none}.___SContainer_cucpv_gg_{padding:1px 0;box-sizing:border-box;border-bottom:1px solid transparent;border-top:1px solid transparent}.___SInputTags_cucpv_gg_>div>div{display:flex;align-items:center;flex-flow:row wrap}.___SInputTags_cucpv_gg_>div[data-ui-name=\"ScrollArea.Bar\"]._orientation_vertical_cucpv_gg_{right:1px!important}.___SInputTags_cucpv_gg_._size_m_cucpv_gg_{min-height:var(--intergalactic-form-control-m, 28px);height:auto;padding:0 calc(var(--intergalactic-spacing-1x, 4px) + var(--intergalactic-spacing-05x, 2px))}.___SInputTags_cucpv_gg_._size_l_cucpv_gg_{min-height:var(--intergalactic-form-control-l, 40px);height:auto;padding:0 calc(var(--intergalactic-spacing-2x, 8px) + var(--intergalactic-spacing-05x, 2px))}.___STagContainer_cucpv_gg_{margin:var(--intergalactic-spacing-05x, 2px)}.___STagContainer_cucpv_gg_.__editable_cucpv_gg_{cursor:pointer}.___SInputTags_cucpv_gg_._size_m_cucpv_gg_ .___SValue_cucpv_gg_{height:calc(var(--intergalactic-form-control-m, 28px) - var(--intergalactic-spacing-1x, 4px))}.___SInputTags_cucpv_gg_._size_l_cucpv_gg_ .___SValue_cucpv_gg_{height:calc(var(--intergalactic-form-control-l, 40px) - var(--intergalactic-spacing-1x, 4px))}.___SValue_cucpv_gg_{padding:0!important;margin-left:var(--intergalactic-spacing-05x, 2px);margin-right:var(--intergalactic-spacing-05x, 2px)}.___SSpacer_cucpv_gg_{position:absolute;top:0;left:0;visibility:hidden;height:0;overflow:scroll;white-space:pre;font-family:inherit;font-size:inherit;font-weight:inherit;font-style:inherit;letter-spacing:inherit;text-transform:inherit}.___SListAriaWrapper_cucpv_gg_{display:contents}" /*__inner_css_end__*/, "cucpv_gg_") /*__reshadow_css_end__*/, {
34
- "__SInputTags": "___SInputTags_cucpv_gg_",
35
- "__SContainer": "___SContainer_cucpv_gg_",
36
- "__SOutline": "___SOutline_cucpv_gg_",
37
- "_orientation_vertical": "_orientation_vertical_cucpv_gg_",
38
- "_size_m": "_size_m_cucpv_gg_",
39
- "_size_l": "_size_l_cucpv_gg_",
40
- "__STagContainer": "___STagContainer_cucpv_gg_",
41
- "_editable": "__editable_cucpv_gg_",
42
- "__SValue": "___SValue_cucpv_gg_",
43
- "__SSpacer": "___SSpacer_cucpv_gg_",
44
- "__SListAriaWrapper": "___SListAriaWrapper_cucpv_gg_"
33
+ var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".___SInputTags_kjfv3_gg_{box-sizing:border-box;cursor:text;align-items:flex-start;overflow:visible;overflow:initial}.___SInputTags_kjfv3_gg_ .___SContainer_kjfv3_gg_:focus .___SOutline_kjfv3_gg_{border-color:var(--intergalactic-border-info-active, #006dca);box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___SInputTags_kjfv3_gg_ .___SContainer_kjfv3_gg_:focus:has(.___SOutline_kjfv3_gg_)::after{box-shadow:none}.___SContainer_kjfv3_gg_{padding:1px 0;box-sizing:border-box;border-bottom:1px solid transparent;border-top:1px solid transparent}.___SInputTags_kjfv3_gg_>div>div{display:flex;align-items:center;flex-flow:row wrap}.___SInputTags_kjfv3_gg_>div[data-ui-name=\"ScrollArea.Bar\"]._orientation_vertical_kjfv3_gg_{right:1px!important}.___SInputTags_kjfv3_gg_._size_m_kjfv3_gg_{min-height:var(--intergalactic-form-control-m, 28px);height:auto;padding:0 calc(var(--intergalactic-spacing-1x, 4px) + var(--intergalactic-spacing-05x, 2px))}.___SInputTags_kjfv3_gg_._size_l_kjfv3_gg_{min-height:var(--intergalactic-form-control-l, 40px);height:auto;padding:0 calc(var(--intergalactic-spacing-2x, 8px) + var(--intergalactic-spacing-05x, 2px))}.___STagContainer_kjfv3_gg_{margin:var(--intergalactic-spacing-05x, 2px)}.___STagContainer_kjfv3_gg_.__editable_kjfv3_gg_{cursor:pointer}.___SInputTags_kjfv3_gg_._size_m_kjfv3_gg_ .___SValue_kjfv3_gg_{height:calc(var(--intergalactic-form-control-m, 28px) - var(--intergalactic-spacing-1x, 4px))}.___SInputTags_kjfv3_gg_._size_l_kjfv3_gg_ .___SValue_kjfv3_gg_{height:calc(var(--intergalactic-form-control-l, 40px) - var(--intergalactic-spacing-1x, 4px))}.___SValue_kjfv3_gg_{padding:0!important;margin-left:var(--intergalactic-spacing-05x, 2px);margin-right:var(--intergalactic-spacing-05x, 2px)}.___SSpacer_kjfv3_gg_{position:absolute;top:0;left:0;visibility:hidden;height:0;overflow:scroll;white-space:pre;font-family:inherit;font-size:inherit;font-weight:inherit;font-style:inherit;letter-spacing:inherit;text-transform:inherit}.___SListAriaWrapper_kjfv3_gg_{display:contents}" /*__inner_css_end__*/, "kjfv3_gg_") /*__reshadow_css_end__*/, {
34
+ "__SInputTags": "___SInputTags_kjfv3_gg_",
35
+ "__SContainer": "___SContainer_kjfv3_gg_",
36
+ "__SOutline": "___SOutline_kjfv3_gg_",
37
+ "_orientation_vertical": "_orientation_vertical_kjfv3_gg_",
38
+ "_size_m": "_size_m_kjfv3_gg_",
39
+ "_size_l": "_size_l_kjfv3_gg_",
40
+ "__STagContainer": "___STagContainer_kjfv3_gg_",
41
+ "_editable": "__editable_kjfv3_gg_",
42
+ "__SValue": "___SValue_kjfv3_gg_",
43
+ "__SSpacer": "___SSpacer_kjfv3_gg_",
44
+ "__SListAriaWrapper": "___SListAriaWrapper_kjfv3_gg_"
45
45
  });
46
46
  var InputTags = /*#__PURE__*/function (_Component) {
47
47
  (0, _inherits2["default"])(InputTags, _Component);
@@ -165,9 +165,9 @@ var InputTags = /*#__PURE__*/function (_Component) {
165
165
  }
166
166
  }, {
167
167
  key: "getTagProps",
168
- value: function getTagProps(_ref11, index) {
168
+ value: function getTagProps(_ref13, index) {
169
169
  var _this2 = this;
170
- var editable = _ref11.editable;
170
+ var editable = _ref13.editable;
171
171
  return {
172
172
  size: this.asProps.size,
173
173
  onClick: editable ? this.onTagClick : undefined,
@@ -192,11 +192,18 @@ var InputTags = /*#__PURE__*/function (_Component) {
192
192
  tagsContainerAriaLabel: this.state.tagsContainerAriaLabel
193
193
  };
194
194
  }
195
+ }, {
196
+ key: "getTagContainerTextContentProps",
197
+ value: function getTagContainerTextContentProps() {
198
+ return {
199
+ tabIndex: null
200
+ };
201
+ }
195
202
  }, {
196
203
  key: "render",
197
204
  value: function render() {
198
205
  var _ref = this.asProps,
199
- _ref6;
206
+ _ref7;
200
207
  var SInputTags = _input["default"];
201
208
  var _this$asProps2 = this.asProps,
202
209
  Children = _this$asProps2.Children,
@@ -204,24 +211,24 @@ var InputTags = /*#__PURE__*/function (_Component) {
204
211
  var SListAriaWrapper = 'ul';
205
212
  var isAdvancedMode = (0, _findComponent.isAdvanceMode)(Children, ['InputTags.TagsContainer']);
206
213
  if (isAdvancedMode) {
207
- var _ref5;
208
- return _ref5 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SInputTags, _ref5.cn("SInputTags", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
214
+ var _ref6;
215
+ return _ref6 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SInputTags, _ref6.cn("SInputTags", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
209
216
  "tag": _scrollArea["default"],
210
217
  "onMouseDown": this.moveFocusToInput,
211
218
  "container": this.scrollContainerRef,
212
219
  "tabIndex": null
213
- }, _ref))), /*#__PURE__*/_react["default"].createElement(Children, _ref5.cn("Children", {})));
220
+ }, _ref))), /*#__PURE__*/_react["default"].createElement(Children, _ref6.cn("Children", {})));
214
221
  }
215
222
  var _extractFrom = (0, _findComponent.extractFrom)(Children, ['InputTags.Value']),
216
223
  _extractFrom2 = (0, _slicedToArray2["default"])(_extractFrom, 2),
217
224
  InputComponents = _extractFrom2[0],
218
225
  RestComponents = _extractFrom2[1];
219
- return _ref6 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SInputTags, _ref6.cn("SInputTags", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
226
+ return _ref7 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SInputTags, _ref7.cn("SInputTags", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
220
227
  "tag": _scrollArea["default"],
221
228
  "onMouseDown": this.moveFocusToInput,
222
229
  "container": this.scrollContainerRef,
223
230
  "tabIndex": null
224
- }, _ref))), /*#__PURE__*/_react["default"].createElement(SListAriaWrapper, _ref6.cn("SListAriaWrapper", {
231
+ }, _ref))), /*#__PURE__*/_react["default"].createElement(SListAriaWrapper, _ref7.cn("SListAriaWrapper", {
225
232
  "aria-label": this.state.tagsContainerAriaLabel
226
233
  }), RestComponents), InputComponents);
227
234
  }
@@ -295,14 +302,14 @@ var Value = /*#__PURE__*/function (_Component2) {
295
302
  key: "render",
296
303
  value: function render() {
297
304
  var _ref2 = this.asProps,
298
- _ref7;
305
+ _ref8;
299
306
  var SValue = _input["default"].Value;
300
307
  var SSpacer = 'div';
301
- return _ref7 = (0, _core.sstyled)(this.asProps.styles), /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(SValue, _ref7.cn("SValue", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
308
+ return _ref8 = (0, _core.sstyled)(this.asProps.styles), /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(SValue, _ref8.cn("SValue", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
302
309
  "style": {
303
310
  width: this.state.width
304
311
  }
305
- }, _ref2)))), /*#__PURE__*/_react["default"].createElement(SSpacer, _ref7.cn("SSpacer", {
312
+ }, _ref2)))), /*#__PURE__*/_react["default"].createElement(SSpacer, _ref8.cn("SSpacer", {
306
313
  "ref": this._spacer,
307
314
  "aria-hidden": true
308
315
  })));
@@ -310,19 +317,19 @@ var Value = /*#__PURE__*/function (_Component2) {
310
317
  }]);
311
318
  return Value;
312
319
  }(_core.Component);
313
- function InputTagsContainer(_ref12) {
314
- var _ref8;
315
- var Children = _ref12.Children,
316
- tagsContainerAriaLabel = _ref12.tagsContainerAriaLabel,
317
- styles = _ref12.styles;
320
+ function InputTagsContainer(_ref14) {
321
+ var _ref9;
322
+ var Children = _ref14.Children,
323
+ tagsContainerAriaLabel = _ref14.tagsContainerAriaLabel,
324
+ styles = _ref14.styles;
318
325
  var SListAriaWrapper = 'ul';
319
- return _ref8 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SListAriaWrapper, _ref8.cn("SListAriaWrapper", {
326
+ return _ref9 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SListAriaWrapper, _ref9.cn("SListAriaWrapper", {
320
327
  "aria-label": tagsContainerAriaLabel
321
- }), /*#__PURE__*/_react["default"].createElement(Children, _ref8.cn("Children", {})));
328
+ }), /*#__PURE__*/_react["default"].createElement(Children, _ref9.cn("Children", {})));
322
329
  }
323
330
  function InputTagContainer(props) {
324
331
  var _ref3 = arguments[0],
325
- _ref9;
332
+ _ref10;
326
333
  var STag = _tag.TagContainer;
327
334
  var onKeyDown = _react["default"].useCallback(function (event) {
328
335
  if (props.onClick && (event.key === 'Enter' || event.key === ' ')) {
@@ -332,7 +339,7 @@ function InputTagContainer(props) {
332
339
  }
333
340
  }, [props.onClick]);
334
341
  var interactive = props.editable || props.onClick;
335
- return _ref9 = (0, _core.sstyled)(props.styles), /*#__PURE__*/_react["default"].createElement(STag, _ref9.cn("STag", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
342
+ return _ref10 = (0, _core.sstyled)(props.styles), /*#__PURE__*/_react["default"].createElement(STag, _ref10.cn("STag", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
336
343
  "data-value": props.value,
337
344
  "tag": 'li',
338
345
  "onKeyDown": onKeyDown,
@@ -341,22 +348,29 @@ function InputTagContainer(props) {
341
348
  }
342
349
  function InputTagContainerTag(props) {
343
350
  var _ref4 = arguments[0],
344
- _ref10;
351
+ _ref11;
345
352
  var STag = _tag.TagContainer.Tag;
346
353
  var getI18nText = props.getI18nText,
347
354
  editable = props.editable;
348
- return _ref10 = (0, _core.sstyled)(props.styles), /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, editable && /*#__PURE__*/_react["default"].createElement(_portal["default"], _ref10.cn("Portal", {}), /*#__PURE__*/_react["default"].createElement(_flexBox.ScreenReaderOnly, _ref10.cn("ScreenReaderOnly", {
355
+ return _ref11 = (0, _core.sstyled)(props.styles), /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, editable && /*#__PURE__*/_react["default"].createElement(_portal["default"], _ref11.cn("Portal", {}), /*#__PURE__*/_react["default"].createElement(_flexBox.ScreenReaderOnly, _ref11.cn("ScreenReaderOnly", {
349
356
  "id": "".concat(props.uid, "-description"),
350
357
  "aria-hidden": 'true'
351
- }), getI18nText('pressEnterToEdit'))), /*#__PURE__*/_react["default"].createElement(STag, _ref10.cn("STag", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
358
+ }), getI18nText('pressEnterToEdit'))), /*#__PURE__*/_react["default"].createElement(STag, _ref11.cn("STag", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
352
359
  "aria-describedby": editable ? "".concat(props.uid, "-description") : undefined
353
360
  }, _ref4)))));
354
361
  }
362
+ function TagContainerTextContent(props) {
363
+ var _ref5 = arguments[0],
364
+ _ref12;
365
+ return _ref12 = (0, _core.sstyled)(props.styles), /*#__PURE__*/_react["default"].createElement(_tag["default"].Text, (0, _core.assignProps)({}, _ref5));
366
+ }
355
367
  var _default = (0, _core["default"])(InputTags, {
356
368
  Value: Value,
357
369
  TagsContainer: InputTagsContainer,
358
370
  Tag: [InputTagContainer, {
359
- Text: InputTagContainerTag,
371
+ Text: [InputTagContainerTag, {
372
+ Content: TagContainerTextContent
373
+ }],
360
374
  Close: _tag.TagContainer.Close,
361
375
  Addon: _tag.TagContainer.Tag.Addon,
362
376
  Circle: _tag.TagContainer.Circle