@jetbrains/ring-ui-built 6.0.32 → 6.0.33

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 (224) hide show
  1. package/components/_helpers/_rollupPluginBabelHelpers.js +567 -1
  2. package/components/_helpers/anchor.js +6 -7
  3. package/components/_helpers/button__classes.js +14 -16
  4. package/components/_helpers/caption.js +20 -14
  5. package/components/_helpers/card.js +105 -95
  6. package/components/_helpers/dialog__body-scroll-preventer.js +19 -11
  7. package/components/_helpers/icon__svg.js +25 -22
  8. package/components/_helpers/input.js +177 -146
  9. package/components/_helpers/query-assist__suggestions.js +90 -74
  10. package/components/_helpers/select__filter.js +69 -48
  11. package/components/_helpers/services-link.js +37 -29
  12. package/components/_helpers/sidebar.js +107 -99
  13. package/components/_helpers/tab-link.js +7 -7
  14. package/components/_helpers/theme.js +40 -31
  15. package/components/_helpers/title.js +72 -57
  16. package/components/alert/alert.js +202 -150
  17. package/components/alert/container.js +41 -32
  18. package/components/alert-service/alert-service.js +170 -105
  19. package/components/analytics/analytics.js +22 -12
  20. package/components/analytics/analytics__custom-plugin.js +75 -54
  21. package/components/auth/auth.js +36 -4
  22. package/components/auth/auth__core.js +1471 -746
  23. package/components/auth/background-flow.js +127 -87
  24. package/components/auth/down-notification.js +73 -30
  25. package/components/auth/iframe-flow.js +133 -75
  26. package/components/auth/request-builder.js +82 -46
  27. package/components/auth/response-parser.js +116 -86
  28. package/components/auth/storage.js +334 -171
  29. package/components/auth/token-validator.js +242 -137
  30. package/components/auth/window-flow.js +134 -92
  31. package/components/auth-dialog/auth-dialog.js +172 -114
  32. package/components/auth-dialog-service/auth-dialog-service.js +31 -8
  33. package/components/avatar/avatar-example-datauri.js +1 -23
  34. package/components/avatar/avatar.js +152 -119
  35. package/components/avatar/fallback-avatar.js +38 -22
  36. package/components/badge/badge.js +45 -35
  37. package/components/button/button.js +107 -86
  38. package/components/button-group/button-group.js +33 -19
  39. package/components/button-set/button-set.js +32 -20
  40. package/components/button-toolbar/button-toolbar.js +31 -19
  41. package/components/caret/caret.js +220 -186
  42. package/components/checkbox/checkbox.js +101 -76
  43. package/components/clipboard/clipboard-fallback.js +10 -10
  44. package/components/clipboard/clipboard.js +132 -35
  45. package/components/code/code.js +166 -92
  46. package/components/collapse/collapse-content.js +64 -42
  47. package/components/collapse/collapse-context.js +2 -2
  48. package/components/collapse/collapse-control.js +14 -12
  49. package/components/collapse/collapse.js +17 -11
  50. package/components/collapse/consts.js +4 -4
  51. package/components/collapse/utils.js +3 -1
  52. package/components/confirm/confirm.js +104 -66
  53. package/components/confirm-service/confirm-service.js +59 -37
  54. package/components/content-layout/content-layout.js +64 -43
  55. package/components/content-layout/sidebar.js +1 -0
  56. package/components/contenteditable/contenteditable.js +59 -50
  57. package/components/control-label/control-label.js +9 -9
  58. package/components/data-list/data-list.js +182 -129
  59. package/components/data-list/data-list.mock.js +6 -2
  60. package/components/data-list/item.js +170 -143
  61. package/components/data-list/selection.js +136 -76
  62. package/components/data-list/title.js +12 -1
  63. package/components/date-picker/consts.js +26 -19
  64. package/components/date-picker/date-input.js +144 -113
  65. package/components/date-picker/date-picker.js +282 -227
  66. package/components/date-picker/date-popup.js +395 -350
  67. package/components/date-picker/day.js +116 -87
  68. package/components/date-picker/month-names.js +66 -43
  69. package/components/date-picker/month-slider.js +76 -51
  70. package/components/date-picker/month.js +25 -16
  71. package/components/date-picker/months.js +50 -43
  72. package/components/date-picker/weekdays.js +22 -12
  73. package/components/date-picker/years.js +110 -83
  74. package/components/dialog/dialog.js +190 -142
  75. package/components/dialog/dialog__body-scroll-preventer.js +4 -0
  76. package/components/dropdown/anchor.js +9 -0
  77. package/components/dropdown/dropdown.js +213 -182
  78. package/components/dropdown-menu/dropdown-menu.js +97 -71
  79. package/components/editable-heading/editable-heading.js +127 -75
  80. package/components/error-bubble/error-bubble.js +60 -31
  81. package/components/error-message/error-message.js +59 -39
  82. package/components/footer/footer.js +30 -27
  83. package/components/global/compose.js +10 -1
  84. package/components/global/composeRefs.js +12 -7
  85. package/components/global/controls-height.js +2 -2
  86. package/components/global/create-stateful-context.js +15 -15
  87. package/components/global/data-tests.js +14 -6
  88. package/components/global/dom.js +86 -47
  89. package/components/global/focus-sensor-hoc.js +132 -122
  90. package/components/global/fuzzy-highlight.js +36 -22
  91. package/components/global/get-event-key.js +8 -8
  92. package/components/global/get-uid.js +8 -4
  93. package/components/global/inject-styles.js +15 -10
  94. package/components/global/listeners.js +51 -27
  95. package/components/global/memoize.js +12 -6
  96. package/components/global/normalize-indent.js +50 -19
  97. package/components/global/promise-with-timeout.js +8 -6
  98. package/components/global/prop-types.js +5 -3
  99. package/components/global/react-dom-renderer.js +44 -28
  100. package/components/global/react-render-adapter.js +1 -1
  101. package/components/global/rerender-hoc.js +30 -12
  102. package/components/global/schedule-raf.js +6 -5
  103. package/components/global/sniffer.js +1 -1
  104. package/components/global/theme.js +22 -0
  105. package/components/global/trivial-template-tag.js +10 -3
  106. package/components/global/typescript-utils.js +6 -2
  107. package/components/global/url.js +26 -20
  108. package/components/global/use-event-callback.js +4 -6
  109. package/components/grid/col.js +52 -35
  110. package/components/grid/grid.js +31 -17
  111. package/components/grid/row.js +47 -35
  112. package/components/group/group.js +25 -17
  113. package/components/header/header.js +78 -33
  114. package/components/header/logo.js +36 -20
  115. package/components/header/profile.js +199 -166
  116. package/components/header/services-link.js +4 -0
  117. package/components/header/services.js +116 -73
  118. package/components/header/smart-profile.js +203 -111
  119. package/components/header/smart-services.js +113 -62
  120. package/components/header/tray-icon.js +37 -21
  121. package/components/header/tray.js +32 -21
  122. package/components/heading/heading.js +25 -24
  123. package/components/http/http.js +353 -203
  124. package/components/http/http.mock.js +101 -49
  125. package/components/hub-source/hub-source.js +190 -83
  126. package/components/hub-source/hub-source__user.js +44 -11
  127. package/components/hub-source/hub-source__users-groups.js +65 -37
  128. package/components/i18n/i18n-context.js +10 -7
  129. package/components/i18n/i18n.js +10 -7
  130. package/components/icon/icon.js +93 -76
  131. package/components/icon/icon__svg.js +8 -0
  132. package/components/icon/index.js +8 -0
  133. package/components/input/input.js +13 -0
  134. package/components/island/adaptive-island-hoc.js +43 -30
  135. package/components/island/content.js +132 -115
  136. package/components/island/header.js +70 -57
  137. package/components/island/island.js +40 -28
  138. package/components/island-legacy/content-legacy.js +25 -17
  139. package/components/island-legacy/header-legacy.js +27 -19
  140. package/components/island-legacy/island-legacy.js +25 -17
  141. package/components/link/clickableLink.js +59 -44
  142. package/components/link/link.js +68 -57
  143. package/components/list/consts.js +2 -2
  144. package/components/list/list.js +698 -611
  145. package/components/list/list__custom.js +62 -44
  146. package/components/list/list__hint.js +19 -10
  147. package/components/list/list__item.js +174 -133
  148. package/components/list/list__link.js +50 -37
  149. package/components/list/list__separator.js +24 -14
  150. package/components/list/list__title.js +32 -22
  151. package/components/list/list__users-groups-source.js +126 -54
  152. package/components/loader/loader.js +74 -43
  153. package/components/loader/loader__core.js +263 -198
  154. package/components/loader-inline/loader-inline.js +35 -23
  155. package/components/loader-screen/loader-screen.js +46 -25
  156. package/components/login-dialog/login-dialog.js +158 -111
  157. package/components/login-dialog/service.js +34 -8
  158. package/components/markdown/markdown.js +23 -15
  159. package/components/message/message.js +203 -161
  160. package/components/old-browsers-message/old-browsers-message.js +18 -11
  161. package/components/old-browsers-message/old-browsers-message__stop.js +7 -0
  162. package/components/old-browsers-message/white-list.js +16 -8
  163. package/components/pager/pager.js +271 -212
  164. package/components/panel/panel.js +25 -17
  165. package/components/permissions/permissions.js +172 -127
  166. package/components/permissions/permissions__cache.js +224 -194
  167. package/components/popup/popup.consts.js +1 -1
  168. package/components/popup/popup.js +343 -284
  169. package/components/popup/popup.target.js +8 -9
  170. package/components/popup/position.js +106 -96
  171. package/components/popup-menu/popup-menu.js +81 -44
  172. package/components/progress-bar/progress-bar.js +104 -87
  173. package/components/query-assist/query-assist.js +916 -838
  174. package/components/query-assist/query-assist__suggestions.js +30 -1
  175. package/components/radio/radio.js +34 -19
  176. package/components/radio/radio__item.js +69 -52
  177. package/components/select/select.js +957 -852
  178. package/components/select/select__filter.js +30 -0
  179. package/components/select/select__popup.js +487 -373
  180. package/components/shortcuts/core.js +217 -166
  181. package/components/shortcuts/shortcut-title.js +11 -6
  182. package/components/shortcuts/shortcuts-hoc.js +45 -19
  183. package/components/shortcuts/shortcuts.js +75 -50
  184. package/components/slider/slider.js +122 -99
  185. package/components/slider/slider.utils.js +24 -14
  186. package/components/storage/storage.js +33 -4
  187. package/components/storage/storage__fallback.js +224 -149
  188. package/components/storage/storage__local.js +153 -90
  189. package/components/tab-trap/tab-trap.js +153 -122
  190. package/components/table/cell.js +26 -14
  191. package/components/table/disable-hover-hoc.js +51 -33
  192. package/components/table/header-cell.js +89 -64
  193. package/components/table/header.js +132 -104
  194. package/components/table/multitable.js +125 -107
  195. package/components/table/row-with-focus-sensor.js +69 -25
  196. package/components/table/row.js +216 -175
  197. package/components/table/selection-adapter.js +3 -1
  198. package/components/table/selection-shortcuts-hoc.js +181 -180
  199. package/components/table/selection.js +226 -156
  200. package/components/table/smart-table.js +88 -50
  201. package/components/table/table.js +358 -289
  202. package/components/tabs/collapsible-more.js +79 -46
  203. package/components/tabs/collapsible-tab.js +38 -31
  204. package/components/tabs/collapsible-tabs.js +153 -88
  205. package/components/tabs/custom-item.js +2 -4
  206. package/components/tabs/dumb-tabs.js +117 -74
  207. package/components/tabs/smart-tabs.js +69 -29
  208. package/components/tabs/tab-link.js +5 -1
  209. package/components/tabs/tab.js +31 -19
  210. package/components/tabs/tabs.js +31 -0
  211. package/components/tag/tag.js +173 -133
  212. package/components/tags-input/tags-input.js +427 -329
  213. package/components/tags-list/tags-list.js +78 -57
  214. package/components/text/text.js +39 -28
  215. package/components/toggle/toggle.js +70 -56
  216. package/components/tooltip/tooltip.js +190 -146
  217. package/components/user-agreement/service.js +371 -228
  218. package/components/user-agreement/toolbox.eula.js +1 -160
  219. package/components/user-agreement/user-agreement.js +120 -85
  220. package/components/user-card/card.js +29 -0
  221. package/components/user-card/smart-user-card-tooltip.js +111 -51
  222. package/components/user-card/tooltip.js +84 -47
  223. package/components/user-card/user-card.js +29 -0
  224. package/package.json +1 -1
@@ -1,4 +1,6 @@
1
- import { _ as _extends } from './_rollupPluginBabelHelpers.js';
1
+ import { _ as _defineProperty, a as _inherits, b as _createClass, c as _objectWithoutProperties, e as _extends, f as _classCallCheck, g as _callSuper } from './_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.array.concat.js';
3
+ import 'core-js/modules/es.object.values.js';
2
4
  import React, { PureComponent } from 'react';
3
5
  import PropTypes from 'prop-types';
4
6
  import classNames from 'classnames';
@@ -14,6 +16,7 @@ import { ControlLabel } from '../control-label/control-label.js';
14
16
 
15
17
  var modules_88cfaf40 = {"button-shadow":"inset 0 0 0 1px","loaderWidth":"calc(var(--ring-unit)*8)","light":"light_rui_2ac4","heightS":"heightS_rui_1f0c","heightM":"heightM_rui_1f0c","heightL":"heightL_rui_1f0c","button":"button_rui_1f0c","active":"active_rui_1f0c","withIcon":"withIcon_rui_1f0c","icon":"icon_rui_1f0c","primary":"primary_rui_1f0c","loader":"loader_rui_1f0c","loaderBackground":"loaderBackground_rui_1f0c","danger":"danger_rui_1f0c","text":"text_rui_1f0c","content":"content_rui_1f0c","text-loading":"text-loading_rui_1f0c","inline":"inline_rui_1f0c","withNormalIcon":"withNormalIcon_rui_1f0c","withDangerIcon":"withDangerIcon_rui_1f0c","progress":"progress_rui_1f0c","delayed":"delayed_rui_1f0c","short":"short_rui_1f0c","dropdownIcon":"dropdownIcon_rui_1f0c","outerContainer":"outerContainer_rui_1f0c","borderless":"borderless_rui_1f0c","container":"container_rui_1f0c","input":"input_rui_1f0c","error":"error_rui_1f0c","clearable":"clearable_rui_1f0c","clear":"clear_rui_1f0c","empty":"empty_rui_1f0c","errorText":"errorText_rui_1f0c","sizeS":"sizeS_rui_1f0c","sizeM":"sizeM_rui_1f0c","sizeL":"sizeL_rui_1f0c","sizeFULL":"sizeFULL_rui_1f0c"};
16
18
 
19
+ var _excluded = ["size", "active", "multiline", "borderless", "label", "labelType", "error", "className", "inputClassName", "children", "value", "onClear", "disabled", "inputRef", "onChange", "enableShortcuts", "id", "placeholder", "icon", "translations", "height", "afterInput"];
17
20
  function noop() {}
18
21
  /**
19
22
  * @name Input
@@ -26,158 +29,186 @@ var Size;
26
29
  Size["L"] = "L";
27
30
  Size["FULL"] = "FULL";
28
31
  })(Size || (Size = {}));
29
- class Input extends PureComponent {
30
- static defaultProps = {
31
- size: Size.M,
32
- onChange: noop,
33
- inputRef: noop,
34
- enableShortcuts: ['esc']
35
- };
36
- state = {
37
- empty: true
38
- };
39
- componentDidMount() {
40
- this.frame = requestAnimationFrame(() => this.adapt());
41
- }
42
- componentDidUpdate() {
43
- this.adapt();
44
- }
45
- componentWillUnmount() {
46
- if (this.frame != null) {
47
- cancelAnimationFrame(this.frame);
32
+ var Input = /*#__PURE__*/function (_PureComponent) {
33
+ function Input() {
34
+ var _this;
35
+ _classCallCheck(this, Input);
36
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
37
+ args[_key] = arguments[_key];
48
38
  }
49
- }
50
- static contextType = ControlsHeightContext;
51
- frame;
52
- input;
53
- id = getUID('ring-input-');
54
- getId() {
55
- return this.props.id || this.id;
56
- }
57
- checkValue() {
58
- this.setState({
59
- empty: !this.input?.value
39
+ _this = _callSuper(this, Input, [].concat(args));
40
+ _defineProperty(_this, "state", {
41
+ empty: true
60
42
  });
61
- if (this.props.multiline && this.input != null && this.input.scrollHeight >= this.input.clientHeight) {
62
- this.stretch(this.input);
63
- }
43
+ _defineProperty(_this, "frame", void 0);
44
+ _defineProperty(_this, "input", void 0);
45
+ _defineProperty(_this, "id", getUID('ring-input-'));
46
+ _defineProperty(_this, "inputRef", function (el) {
47
+ _this.input = el;
48
+ });
49
+ _defineProperty(_this, "clear", function (e) {
50
+ _this.props.onClear && _this.props.onClear(e);
51
+ });
52
+ _defineProperty(_this, "handleInputChange", function (e) {
53
+ if (!_this.props.multiline) {
54
+ var _this$props$onChange, _this$props;
55
+ (_this$props$onChange = (_this$props = _this.props).onChange) === null || _this$props$onChange === void 0 || _this$props$onChange.call(_this$props, e);
56
+ _this.checkValue();
57
+ }
58
+ });
59
+ _defineProperty(_this, "handleTextareaChange", function (e) {
60
+ if (_this.props.multiline) {
61
+ var _this$props$onChange2, _this$props2;
62
+ (_this$props$onChange2 = (_this$props2 = _this.props).onChange) === null || _this$props$onChange2 === void 0 || _this$props$onChange2.call(_this$props2, e);
63
+ _this.checkValue();
64
+ }
65
+ });
66
+ return _this;
64
67
  }
65
- stretch(el) {
66
- if (!el || !el.style) {
67
- return;
68
+ _inherits(Input, _PureComponent);
69
+ return _createClass(Input, [{
70
+ key: "componentDidMount",
71
+ value: function componentDidMount() {
72
+ var _this2 = this;
73
+ this.frame = requestAnimationFrame(function () {
74
+ return _this2.adapt();
75
+ });
68
76
  }
69
- el.style.height = '0'; // To know the real scrollHeight
70
- el.style.height = `${el.scrollHeight + 2}px`;
71
- }
72
- adapt() {
73
- this.checkValue();
74
- }
75
- inputRef = el => {
76
- this.input = el;
77
- };
78
- clear = e => {
79
- this.props.onClear && this.props.onClear(e);
80
- };
81
- handleInputChange = e => {
82
- if (!this.props.multiline) {
83
- this.props.onChange?.(e);
84
- this.checkValue();
77
+ }, {
78
+ key: "componentDidUpdate",
79
+ value: function componentDidUpdate() {
80
+ this.adapt();
81
+ }
82
+ }, {
83
+ key: "componentWillUnmount",
84
+ value: function componentWillUnmount() {
85
+ if (this.frame != null) {
86
+ cancelAnimationFrame(this.frame);
87
+ }
88
+ }
89
+ }, {
90
+ key: "getId",
91
+ value: function getId() {
92
+ return this.props.id || this.id;
93
+ }
94
+ }, {
95
+ key: "checkValue",
96
+ value: function checkValue() {
97
+ var _this$input;
98
+ this.setState({
99
+ empty: !((_this$input = this.input) !== null && _this$input !== void 0 && _this$input.value)
100
+ });
101
+ if (this.props.multiline && this.input != null && this.input.scrollHeight >= this.input.clientHeight) {
102
+ this.stretch(this.input);
103
+ }
85
104
  }
86
- };
87
- handleTextareaChange = e => {
88
- if (this.props.multiline) {
89
- this.props.onChange?.(e);
105
+ }, {
106
+ key: "stretch",
107
+ value: function stretch(el) {
108
+ if (!el || !el.style) {
109
+ return;
110
+ }
111
+ el.style.height = '0'; // To know the real scrollHeight
112
+ el.style.height = "".concat(el.scrollHeight + 2, "px");
113
+ }
114
+ }, {
115
+ key: "adapt",
116
+ value: function adapt() {
90
117
  this.checkValue();
91
118
  }
92
- };
93
- render() {
94
- const {
95
- // Modifiers
96
- size,
97
- active,
98
- multiline,
99
- borderless,
100
- // Props
101
- label,
102
- labelType,
103
- error,
104
- className,
105
- inputClassName,
106
- children,
107
- value,
108
- onClear,
109
- disabled,
110
- inputRef,
111
- onChange,
112
- enableShortcuts,
113
- id,
114
- placeholder,
115
- icon,
116
- translations,
117
- height = this.context,
118
- afterInput,
119
- ...restProps
120
- } = this.props;
121
- const {
122
- empty
123
- } = this.state;
124
- const clearable = !!onClear;
125
- const classes = classNames(className, modules_88cfaf40.outerContainer, [modules_88cfaf40[`size${size}`]], [modules_88cfaf40[`height${height}`]], {
126
- 'ring-js-shortcuts': enableShortcuts === true,
127
- [modules_88cfaf40.active]: active,
128
- [modules_88cfaf40.error]: error != null,
129
- [modules_88cfaf40.empty]: empty,
130
- [modules_88cfaf40.noLabel]: !this.props.label,
131
- [modules_88cfaf40.withIcon]: icon != null,
132
- [modules_88cfaf40.clearable]: clearable,
133
- [modules_88cfaf40.borderless]: borderless
134
- });
135
- const inputClasses = classNames(modules_88cfaf40.input, inputClassName);
136
- const text = value != null ? value : children;
137
- const commonProps = {
138
- ref: composeRefs(this.inputRef, inputRef),
139
- className: inputClasses,
140
- value: text,
141
- disabled,
142
- id: this.getId(),
143
- placeholder,
144
- 'aria-label': typeof label === 'string' && label ? label : placeholder,
145
- 'data-enabled-shortcuts': Array.isArray(enableShortcuts) ? enableShortcuts.join(',') : null
146
- };
147
- return /*#__PURE__*/React.createElement(I18nContext.Consumer, null, _ref => {
148
- var _translations$clear;
149
- let {
150
- translate
151
- } = _ref;
152
- return /*#__PURE__*/React.createElement("div", {
153
- className: classes,
154
- "data-test": "ring-input"
155
- }, label && /*#__PURE__*/React.createElement(ControlLabel, {
156
- htmlFor: this.getId(),
157
- disabled: disabled,
158
- type: labelType
159
- }, label), /*#__PURE__*/React.createElement("div", {
160
- className: modules_88cfaf40.container
161
- }, icon && /*#__PURE__*/React.createElement(Icon, {
162
- glyph: icon,
163
- className: modules_88cfaf40.icon
164
- }), multiline ? /*#__PURE__*/React.createElement("textarea", _extends({
165
- onChange: this.handleTextareaChange,
166
- rows: 1
167
- }, commonProps, restProps)) : /*#__PURE__*/React.createElement("input", _extends({
168
- onChange: this.handleInputChange
169
- }, commonProps, restProps)), clearable && !disabled && /*#__PURE__*/React.createElement(Button, {
170
- title: (_translations$clear = translations?.clear) !== null && _translations$clear !== void 0 ? _translations$clear : translate('clear'),
171
- "data-test": "ring-input-clear",
172
- className: modules_88cfaf40.clear,
173
- icon: closeIcon,
174
- onClick: this.clear
175
- }), afterInput), error && /*#__PURE__*/React.createElement("div", {
176
- className: modules_88cfaf40.errorText
177
- }, error));
178
- });
179
- }
180
- }
119
+ }, {
120
+ key: "render",
121
+ value: function render() {
122
+ var _this3 = this;
123
+ var _this$props3 = this.props,
124
+ size = _this$props3.size,
125
+ active = _this$props3.active,
126
+ multiline = _this$props3.multiline,
127
+ borderless = _this$props3.borderless,
128
+ label = _this$props3.label,
129
+ labelType = _this$props3.labelType,
130
+ error = _this$props3.error,
131
+ className = _this$props3.className,
132
+ inputClassName = _this$props3.inputClassName,
133
+ children = _this$props3.children,
134
+ value = _this$props3.value,
135
+ onClear = _this$props3.onClear,
136
+ disabled = _this$props3.disabled,
137
+ inputRef = _this$props3.inputRef;
138
+ _this$props3.onChange;
139
+ var enableShortcuts = _this$props3.enableShortcuts;
140
+ _this$props3.id;
141
+ var placeholder = _this$props3.placeholder,
142
+ icon = _this$props3.icon,
143
+ translations = _this$props3.translations,
144
+ _this$props3$height = _this$props3.height,
145
+ height = _this$props3$height === void 0 ? this.context : _this$props3$height,
146
+ afterInput = _this$props3.afterInput,
147
+ restProps = _objectWithoutProperties(_this$props3, _excluded);
148
+ var empty = this.state.empty;
149
+ var clearable = !!onClear;
150
+ var classes = classNames(className, modules_88cfaf40.outerContainer, [modules_88cfaf40["size".concat(size)]], [modules_88cfaf40["height".concat(height)]], {
151
+ 'ring-js-shortcuts': enableShortcuts === true,
152
+ [modules_88cfaf40.active]: active,
153
+ [modules_88cfaf40.error]: error != null,
154
+ [modules_88cfaf40.empty]: empty,
155
+ [modules_88cfaf40.noLabel]: !this.props.label,
156
+ [modules_88cfaf40.withIcon]: icon != null,
157
+ [modules_88cfaf40.clearable]: clearable,
158
+ [modules_88cfaf40.borderless]: borderless
159
+ });
160
+ var inputClasses = classNames(modules_88cfaf40.input, inputClassName);
161
+ var text = value != null ? value : children;
162
+ var commonProps = {
163
+ ref: composeRefs(this.inputRef, inputRef),
164
+ className: inputClasses,
165
+ value: text,
166
+ disabled,
167
+ id: this.getId(),
168
+ placeholder,
169
+ 'aria-label': typeof label === 'string' && label ? label : placeholder,
170
+ 'data-enabled-shortcuts': Array.isArray(enableShortcuts) ? enableShortcuts.join(',') : null
171
+ };
172
+ return /*#__PURE__*/React.createElement(I18nContext.Consumer, null, function (_ref) {
173
+ var _translations$clear;
174
+ var translate = _ref.translate;
175
+ return /*#__PURE__*/React.createElement("div", {
176
+ className: classes,
177
+ "data-test": "ring-input"
178
+ }, label && /*#__PURE__*/React.createElement(ControlLabel, {
179
+ htmlFor: _this3.getId(),
180
+ disabled: disabled,
181
+ type: labelType
182
+ }, label), /*#__PURE__*/React.createElement("div", {
183
+ className: modules_88cfaf40.container
184
+ }, icon && /*#__PURE__*/React.createElement(Icon, {
185
+ glyph: icon,
186
+ className: modules_88cfaf40.icon
187
+ }), multiline ? /*#__PURE__*/React.createElement("textarea", _extends({
188
+ onChange: _this3.handleTextareaChange,
189
+ rows: 1
190
+ }, commonProps, restProps)) : /*#__PURE__*/React.createElement("input", _extends({
191
+ onChange: _this3.handleInputChange
192
+ }, commonProps, restProps)), clearable && !disabled && /*#__PURE__*/React.createElement(Button, {
193
+ title: (_translations$clear = translations === null || translations === void 0 ? void 0 : translations.clear) !== null && _translations$clear !== void 0 ? _translations$clear : translate('clear'),
194
+ "data-test": "ring-input-clear",
195
+ className: modules_88cfaf40.clear,
196
+ icon: closeIcon,
197
+ onClick: _this3.clear
198
+ }), afterInput), error && /*#__PURE__*/React.createElement("div", {
199
+ className: modules_88cfaf40.errorText
200
+ }, error));
201
+ });
202
+ }
203
+ }]);
204
+ }(PureComponent);
205
+ _defineProperty(Input, "defaultProps", {
206
+ size: Size.M,
207
+ onChange: noop,
208
+ inputRef: noop,
209
+ enableShortcuts: ['esc']
210
+ });
211
+ _defineProperty(Input, "contextType", ControlsHeightContext);
181
212
  Input.propTypes = {
182
213
  value: PropTypes.string,
183
214
  className: PropTypes.string,
@@ -1,85 +1,101 @@
1
+ import { b as _createClass, f as _classCallCheck } from './_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.symbol.js';
3
+ import 'core-js/modules/es.symbol.description.js';
4
+ import 'core-js/modules/es.object.to-string.js';
5
+ import 'core-js/modules/web.dom-collections.for-each.js';
1
6
  import React from 'react';
2
7
  import List from '../list/list.js';
3
8
 
4
9
  var modules_da7ab055 = {"button-shadow":"inset 0 0 0 1px","loaderWidth":"calc(var(--ring-unit)*8)","overInputZIndex":"2","inputGap":"calc(var(--ring-unit)*3)","light":"light_rui_2ac4","heightS":"heightS_rui_0eb8","heightM":"heightM_rui_0eb8","heightL":"heightL_rui_0eb8","button":"button_rui_0eb8","active":"active_rui_0eb8","withIcon":"withIcon_rui_0eb8","icon":"icon_rui_0eb8","primary":"primary_rui_0eb8","loader":"loader_rui_0eb8","loaderBackground":"loaderBackground_rui_0eb8","danger":"danger_rui_0eb8","text":"text_rui_0eb8","content":"content_rui_0eb8","text-loading":"text-loading_rui_0eb8","inline":"inline_rui_0eb8","withNormalIcon":"withNormalIcon_rui_0eb8","withDangerIcon":"withDangerIcon_rui_0eb8","progress":"progress_rui_0eb8","delayed":"delayed_rui_0eb8","short":"short_rui_0eb8","dropdownIcon":"dropdownIcon_rui_0eb8","queryAssist":"queryAssist_rui_0eb8","error":"error_rui_0eb8","queryAssistDisabled":"queryAssistDisabled_rui_0eb8","huge":"huge_rui_0eb8","actions":"actions_rui_0eb8","input":"input_rui_0eb8","letter-text":"letter-text_rui_0eb8","letterDefault":"letterDefault_rui_0eb8","letter-field-name":"letter-field-name_rui_0eb8","letter-field-value":"letter-field-value_rui_0eb8","letter-operator":"letter-operator_rui_0eb8","letter-error":"letter-error_rui_0eb8","highlight":"highlight_rui_0eb8","service":"service_rui_0eb8","placeholder":"placeholder_rui_0eb8 resetButton_rui_f295","hugePlaceholder":"hugePlaceholder_rui_0eb8","letter":"letter_rui_0eb8","rightSearchButton":"rightSearchButton_rui_0eb8","clear":"clear_rui_0eb8","withoutGlass":"withoutGlass_rui_0eb8","loaderActive":"loaderActive_rui_0eb8","loaderOnTheRight":"loaderOnTheRight_rui_0eb8","inputRevertOrder":"inputRevertOrder_rui_0eb8"};
5
10
 
6
- const ICON_ID_LENGTH = 44;
7
- class QueryAssistSuggestions {
8
- /*
9
- * Pay attention that this method produces not a 100% unique key.
10
- * Consider to use a unique identifier provided by a server.
11
- */
12
- static createKey(suggestion) {
13
- const {
14
- description,
15
- group,
16
- icon,
17
- option,
18
- prefix = '',
19
- suffix = ''
20
- } = suggestion;
21
- return prefix + option + suffix + group + description + (icon ? icon.substring(icon.length - ICON_ID_LENGTH) : '');
11
+ var ICON_ID_LENGTH = 44;
12
+ var QueryAssistSuggestions = /*#__PURE__*/function () {
13
+ function QueryAssistSuggestions() {
14
+ _classCallCheck(this, QueryAssistSuggestions);
22
15
  }
23
- static renderLabel(suggestion) {
24
- const {
25
- className,
26
- matchingStart = 0,
27
- matchingEnd = 0,
28
- option,
29
- prefix = '',
30
- suffix = ''
31
- } = suggestion;
32
- let wrappedOption;
33
- let before = '';
34
- let after = '';
35
- if (matchingStart !== matchingEnd) {
36
- before = option.substring(0, matchingStart);
37
- wrappedOption = /*#__PURE__*/React.createElement("span", {
38
- className: modules_da7ab055.highlight
39
- }, option.substring(matchingStart, matchingEnd));
40
- after = option.substring(matchingEnd);
41
- } else {
42
- wrappedOption = option;
16
+ return _createClass(QueryAssistSuggestions, null, [{
17
+ key: "createKey",
18
+ value:
19
+ /*
20
+ * Pay attention that this method produces not a 100% unique key.
21
+ * Consider to use a unique identifier provided by a server.
22
+ */
23
+ function createKey(suggestion) {
24
+ var description = suggestion.description,
25
+ group = suggestion.group,
26
+ icon = suggestion.icon,
27
+ option = suggestion.option,
28
+ _suggestion$prefix = suggestion.prefix,
29
+ prefix = _suggestion$prefix === void 0 ? '' : _suggestion$prefix,
30
+ _suggestion$suffix = suggestion.suffix,
31
+ suffix = _suggestion$suffix === void 0 ? '' : _suggestion$suffix;
32
+ return prefix + option + suffix + group + description + (icon ? icon.substring(icon.length - ICON_ID_LENGTH) : '');
43
33
  }
44
- const wrappedPrefix = prefix && /*#__PURE__*/React.createElement("span", {
45
- className: modules_da7ab055.service
46
- }, prefix);
47
- const wrappedSuffix = suffix && /*#__PURE__*/React.createElement("span", {
48
- className: modules_da7ab055.service
49
- }, suffix);
50
- return /*#__PURE__*/React.createElement("span", {
51
- className: className
52
- }, wrappedPrefix, before, wrappedOption, after, wrappedSuffix);
53
- }
54
- static renderGroupSeparator(suggestion, prevSuggestion) {
55
- const {
56
- group,
57
- option
58
- } = suggestion;
59
- const {
60
- SEPARATOR
61
- } = List.ListProps.Type;
62
- if (prevSuggestion !== group) {
63
- return {
64
- key: option + group + SEPARATOR,
65
- description: group,
66
- rgItemType: SEPARATOR
67
- };
34
+ }, {
35
+ key: "renderLabel",
36
+ value: function renderLabel(suggestion) {
37
+ var className = suggestion.className,
38
+ _suggestion$matchingS = suggestion.matchingStart,
39
+ matchingStart = _suggestion$matchingS === void 0 ? 0 : _suggestion$matchingS,
40
+ _suggestion$matchingE = suggestion.matchingEnd,
41
+ matchingEnd = _suggestion$matchingE === void 0 ? 0 : _suggestion$matchingE,
42
+ option = suggestion.option,
43
+ _suggestion$prefix2 = suggestion.prefix,
44
+ prefix = _suggestion$prefix2 === void 0 ? '' : _suggestion$prefix2,
45
+ _suggestion$suffix2 = suggestion.suffix,
46
+ suffix = _suggestion$suffix2 === void 0 ? '' : _suggestion$suffix2;
47
+ var wrappedOption;
48
+ var before = '';
49
+ var after = '';
50
+ if (matchingStart !== matchingEnd) {
51
+ before = option.substring(0, matchingStart);
52
+ wrappedOption = /*#__PURE__*/React.createElement("span", {
53
+ className: modules_da7ab055.highlight
54
+ }, option.substring(matchingStart, matchingEnd));
55
+ after = option.substring(matchingEnd);
56
+ } else {
57
+ wrappedOption = option;
58
+ }
59
+ var wrappedPrefix = prefix && /*#__PURE__*/React.createElement("span", {
60
+ className: modules_da7ab055.service
61
+ }, prefix);
62
+ var wrappedSuffix = suffix && /*#__PURE__*/React.createElement("span", {
63
+ className: modules_da7ab055.service
64
+ }, suffix);
65
+ return /*#__PURE__*/React.createElement("span", {
66
+ className: className
67
+ }, wrappedPrefix, before, wrappedOption, after, wrappedSuffix);
68
68
  }
69
- return null;
70
- }
71
- static renderList(suggestions, suggestionRenderer) {
72
- const renderedSuggestions = [];
73
- suggestions.forEach((suggestion, index, arr) => {
74
- const prevSuggestionGroup = arr[index - 1] && arr[index - 1].group;
75
- const groupSeparator = QueryAssistSuggestions.renderGroupSeparator(suggestion, prevSuggestionGroup);
76
- if (groupSeparator) {
77
- renderedSuggestions.push(groupSeparator);
69
+ }, {
70
+ key: "renderGroupSeparator",
71
+ value: function renderGroupSeparator(suggestion, prevSuggestion) {
72
+ var group = suggestion.group,
73
+ option = suggestion.option;
74
+ var SEPARATOR = List.ListProps.Type.SEPARATOR;
75
+ if (prevSuggestion !== group) {
76
+ return {
77
+ key: option + group + SEPARATOR,
78
+ description: group,
79
+ rgItemType: SEPARATOR
80
+ };
78
81
  }
79
- renderedSuggestions.push(suggestionRenderer(suggestion));
80
- });
81
- return renderedSuggestions;
82
- }
83
- }
82
+ return null;
83
+ }
84
+ }, {
85
+ key: "renderList",
86
+ value: function renderList(suggestions, suggestionRenderer) {
87
+ var renderedSuggestions = [];
88
+ suggestions.forEach(function (suggestion, index, arr) {
89
+ var prevSuggestionGroup = arr[index - 1] && arr[index - 1].group;
90
+ var groupSeparator = QueryAssistSuggestions.renderGroupSeparator(suggestion, prevSuggestionGroup);
91
+ if (groupSeparator) {
92
+ renderedSuggestions.push(groupSeparator);
93
+ }
94
+ renderedSuggestions.push(suggestionRenderer(suggestion));
95
+ });
96
+ return renderedSuggestions;
97
+ }
98
+ }]);
99
+ }();
84
100
 
85
101
  export { QueryAssistSuggestions as Q, modules_da7ab055 as m };