@jetbrains/ring-ui 5.0.138 → 5.0.140

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 (304) hide show
  1. package/components/alert/alert.d.ts +1 -1
  2. package/components/alert-service/alert-service.d.ts +2 -2
  3. package/components/auth/auth__core.js +10 -10
  4. package/components/auth-dialog/auth-dialog.d.ts +2 -2
  5. package/components/avatar/avatar.d.ts +2 -2
  6. package/components/avatar/fallback-avatar.d.ts +2 -1
  7. package/components/badge/badge.d.ts +2 -2
  8. package/components/button/button.d.ts +1 -1
  9. package/components/button-group/button-group.d.ts +2 -2
  10. package/components/button-group/caption.d.ts +2 -2
  11. package/components/button-set/button-set.d.ts +2 -2
  12. package/components/button-toolbar/button-toolbar.d.ts +2 -2
  13. package/components/checkbox/checkbox.d.ts +2 -2
  14. package/components/code/code.d.ts +1 -1
  15. package/components/confirm/confirm.d.ts +1 -1
  16. package/components/content-layout/content-layout.d.ts +2 -2
  17. package/components/content-layout/sidebar.d.ts +2 -2
  18. package/components/contenteditable/contenteditable.d.ts +3 -3
  19. package/components/data-list/data-list.d.ts +3 -3
  20. package/components/data-list/data-list.mock.d.ts +2 -2
  21. package/components/data-list/item.d.ts +3 -3
  22. package/components/data-list/title.d.ts +1 -1
  23. package/components/date-picker/consts.d.ts +5 -5
  24. package/components/date-picker/date-input.d.ts +3 -12
  25. package/components/date-picker/date-input.js +7 -15
  26. package/components/date-picker/date-picker.d.ts +8 -6
  27. package/components/date-picker/date-picker.js +9 -15
  28. package/components/date-picker/date-popup.d.ts +1 -1
  29. package/components/date-picker/day.d.ts +2 -2
  30. package/components/date-picker/month-names.d.ts +2 -1
  31. package/components/date-picker/month-slider.d.ts +2 -2
  32. package/components/date-picker/month.d.ts +2 -1
  33. package/components/date-picker/months.d.ts +2 -1
  34. package/components/date-picker/weekdays.d.ts +2 -1
  35. package/components/date-picker/years.d.ts +2 -2
  36. package/components/dropdown/anchor.d.ts +1 -1
  37. package/components/dropdown/dropdown.d.ts +8 -1
  38. package/components/editable-heading/editable-heading.d.ts +2 -2
  39. package/components/error-bubble/error-bubble.d.ts +2 -2
  40. package/components/error-message/error-message.d.ts +2 -2
  41. package/components/global/create-stateful-context.d.ts +1 -1
  42. package/components/global/react-dom-renderer.d.ts +2 -2
  43. package/components/grid/col.d.ts +2 -2
  44. package/components/grid/grid.d.ts +2 -2
  45. package/components/grid/row.d.ts +2 -2
  46. package/components/group/group.d.ts +2 -2
  47. package/components/header/header.d.ts +2 -2
  48. package/components/header/logo.d.ts +2 -2
  49. package/components/header/profile.d.ts +3 -54
  50. package/components/header/profile.js +8 -8
  51. package/components/header/services-link.d.ts +2 -2
  52. package/components/header/services.d.ts +2 -2
  53. package/components/header/smart-profile.d.ts +2 -2
  54. package/components/header/smart-services.d.ts +2 -2
  55. package/components/header/tray-icon.d.ts +2 -2
  56. package/components/header/tray.d.ts +2 -2
  57. package/components/i18n/README.md +43 -0
  58. package/components/i18n/i18n-context.d.ts +12 -53
  59. package/components/i18n/i18n-context.js +14 -3
  60. package/components/i18n/i18n.d.ts +6 -3
  61. package/components/i18n/i18n.js +18 -0
  62. package/components/icon/icon.d.ts +2 -2
  63. package/components/icon/icon__svg.d.ts +1 -1
  64. package/components/input/input-label.d.ts +2 -2
  65. package/components/input/input.d.ts +1 -1
  66. package/components/input/input.js +2 -2
  67. package/components/island/adaptive-island-hoc.d.ts +2 -2
  68. package/components/island/content.d.ts +1 -1
  69. package/components/island/header.d.ts +2 -2
  70. package/components/island/island.d.ts +3 -3
  71. package/components/island-legacy/content-legacy.d.ts +2 -2
  72. package/components/island-legacy/header-legacy.d.ts +2 -2
  73. package/components/island-legacy/island-legacy.d.ts +2 -2
  74. package/components/link/clickableLink.d.ts +1 -1
  75. package/components/link/link.d.ts +8 -8
  76. package/components/list/list.d.ts +6 -6
  77. package/components/list/list__custom.d.ts +1 -1
  78. package/components/list/list__hint.d.ts +2 -2
  79. package/components/list/list__item.d.ts +2 -2
  80. package/components/list/list__link.d.ts +2 -2
  81. package/components/list/list__separator.d.ts +2 -2
  82. package/components/list/list__title.d.ts +2 -2
  83. package/components/loader/loader.d.ts +2 -2
  84. package/components/loader-inline/loader-inline.d.ts +2 -2
  85. package/components/loader-screen/loader-screen.d.ts +2 -2
  86. package/components/login-dialog/login-dialog.d.ts +2 -2
  87. package/components/markdown/code.d.ts +2 -1
  88. package/components/markdown/heading.d.ts +2 -1
  89. package/components/markdown/link.d.ts +2 -1
  90. package/components/markdown/markdown.d.ts +2 -2
  91. package/components/message/message.d.ts +2 -2
  92. package/components/message/message.js +5 -3
  93. package/components/pager/pager.d.ts +7 -58
  94. package/components/pager/pager.js +9 -8
  95. package/components/panel/panel.d.ts +2 -2
  96. package/components/popup/popup.d.ts +2 -2
  97. package/components/popup-menu/popup-menu.d.ts +2 -2
  98. package/components/progress-bar/progress-bar.d.ts +2 -2
  99. package/components/query-assist/query-assist.d.ts +2 -2
  100. package/components/query-assist/query-assist.js +5 -5
  101. package/components/query-assist/query-assist__suggestions.d.ts +2 -1
  102. package/components/radio/radio.d.ts +1 -1
  103. package/components/radio/radio__item.d.ts +1 -1
  104. package/components/select/select.d.ts +4 -4
  105. package/components/select/select.js +4 -4
  106. package/components/select/select__filter.d.ts +2 -2
  107. package/components/select/select__filter.js +1 -1
  108. package/components/select/select__popup.d.ts +7 -7
  109. package/components/shortcuts/shortcuts-hoc.d.ts +2 -2
  110. package/components/tab-trap/tab-trap.d.ts +1 -1
  111. package/components/table/cell.d.ts +2 -2
  112. package/components/table/disable-hover-hoc.d.ts +2 -2
  113. package/components/table/header-cell.d.ts +2 -2
  114. package/components/table/header.d.ts +3 -3
  115. package/components/table/multitable.d.ts +2 -2
  116. package/components/table/row-with-focus-sensor.d.ts +1 -1
  117. package/components/table/row.d.ts +1 -1
  118. package/components/table/smart-table.d.ts +1 -1
  119. package/components/table/table.d.ts +4 -4
  120. package/components/tabs/collapsible-more.d.ts +3 -3
  121. package/components/tabs/collapsible-tab.d.ts +1 -1
  122. package/components/tabs/collapsible-tabs.d.ts +2 -2
  123. package/components/tabs/dumb-tabs.d.ts +3 -3
  124. package/components/tabs/smart-tabs.d.ts +2 -2
  125. package/components/tabs/tab-link.d.ts +1 -1
  126. package/components/tabs/tab.d.ts +2 -2
  127. package/components/tag/tag.d.ts +5 -5
  128. package/components/tags-input/tags-input.d.ts +1 -1
  129. package/components/tags-list/tags-list.d.ts +2 -2
  130. package/components/text/text.d.ts +2 -2
  131. package/components/toggle/toggle.d.ts +2 -2
  132. package/components/tooltip/tooltip.d.ts +1 -1
  133. package/components/user-agreement/user-agreement.d.ts +2 -2
  134. package/components/user-agreement/user-agreement.js +8 -8
  135. package/components/user-card/card.d.ts +3 -54
  136. package/components/user-card/card.js +13 -11
  137. package/components/user-card/smart-user-card-tooltip.d.ts +3 -3
  138. package/components/user-card/tooltip.d.ts +3 -3
  139. package/dist/_helpers/card.js +15 -11
  140. package/dist/_helpers/select__filter.js +5 -2
  141. package/dist/alert/alert.d.ts +1 -1
  142. package/dist/alert-service/alert-service.d.ts +2 -2
  143. package/dist/auth/auth__core.js +10 -11
  144. package/dist/auth/iframe-flow.js +1 -1
  145. package/dist/auth/landing.js +3 -3
  146. package/dist/auth-dialog/auth-dialog.d.ts +2 -2
  147. package/dist/avatar/avatar.d.ts +2 -2
  148. package/dist/avatar/fallback-avatar.d.ts +2 -1
  149. package/dist/avatar-editor-ng/avatar-editor-ng.js +2 -2
  150. package/dist/badge/badge.d.ts +2 -2
  151. package/dist/breadcrumb-ng/breadcrumb-ng.js +2 -2
  152. package/dist/button/button.d.ts +1 -1
  153. package/dist/button-group/button-group.d.ts +2 -2
  154. package/dist/button-group/caption.d.ts +2 -2
  155. package/dist/button-ng/button-ng.js +2 -2
  156. package/dist/button-set/button-set.d.ts +2 -2
  157. package/dist/button-toolbar/button-toolbar.d.ts +2 -2
  158. package/dist/checkbox/checkbox.d.ts +2 -2
  159. package/dist/code/code.d.ts +1 -1
  160. package/dist/confirm/confirm.d.ts +1 -1
  161. package/dist/confirm-ng/confirm-ng.js +2 -2
  162. package/dist/content-layout/content-layout.d.ts +2 -2
  163. package/dist/content-layout/sidebar.d.ts +2 -2
  164. package/dist/contenteditable/contenteditable.d.ts +3 -3
  165. package/dist/data-list/data-list.d.ts +3 -3
  166. package/dist/data-list/data-list.mock.d.ts +2 -2
  167. package/dist/data-list/item.d.ts +3 -3
  168. package/dist/data-list/title.d.ts +1 -1
  169. package/dist/date-picker/consts.d.ts +5 -5
  170. package/dist/date-picker/date-input.d.ts +3 -12
  171. package/dist/date-picker/date-input.js +11 -17
  172. package/dist/date-picker/date-picker.d.ts +8 -6
  173. package/dist/date-picker/date-picker.js +15 -18
  174. package/dist/date-picker/date-popup.d.ts +1 -1
  175. package/dist/date-picker/date-popup.js +1 -1
  176. package/dist/date-picker/day.d.ts +2 -2
  177. package/dist/date-picker/month-names.d.ts +2 -1
  178. package/dist/date-picker/month-slider.d.ts +2 -2
  179. package/dist/date-picker/month.d.ts +2 -1
  180. package/dist/date-picker/months.d.ts +2 -1
  181. package/dist/date-picker/weekdays.d.ts +2 -1
  182. package/dist/date-picker/years.d.ts +2 -2
  183. package/dist/dialog-ng/dialog-ng.js +8 -8
  184. package/dist/dropdown/anchor.d.ts +1 -1
  185. package/dist/dropdown/dropdown.d.ts +8 -1
  186. package/dist/editable-heading/editable-heading.d.ts +2 -2
  187. package/dist/error-bubble/error-bubble.d.ts +2 -2
  188. package/dist/error-message/error-message.d.ts +2 -2
  189. package/dist/error-message-ng/error-message-ng.js +2 -2
  190. package/dist/form-ng/form-ng.js +2 -2
  191. package/dist/global/create-stateful-context.d.ts +1 -1
  192. package/dist/global/react-dom-renderer.d.ts +2 -2
  193. package/dist/grid/col.d.ts +2 -2
  194. package/dist/grid/grid.d.ts +2 -2
  195. package/dist/grid/row.d.ts +2 -2
  196. package/dist/group/group.d.ts +2 -2
  197. package/dist/header/header.d.ts +2 -2
  198. package/dist/header/logo.d.ts +2 -2
  199. package/dist/header/profile.d.ts +3 -54
  200. package/dist/header/profile.js +13 -8
  201. package/dist/header/services-link.d.ts +2 -2
  202. package/dist/header/services.d.ts +2 -2
  203. package/dist/header/smart-profile.d.ts +2 -2
  204. package/dist/header/smart-services.d.ts +2 -2
  205. package/dist/header/tray-icon.d.ts +2 -2
  206. package/dist/header/tray.d.ts +2 -2
  207. package/dist/i18n/i18n-context.d.ts +12 -53
  208. package/dist/i18n/i18n-context.js +22 -4
  209. package/dist/i18n/i18n.d.ts +6 -3
  210. package/dist/i18n/i18n.js +23 -1
  211. package/dist/icon/icon.d.ts +2 -2
  212. package/dist/icon/icon__svg.d.ts +1 -1
  213. package/dist/input/input-label.d.ts +2 -2
  214. package/dist/input/input.d.ts +1 -1
  215. package/dist/input/input.js +32 -26
  216. package/dist/input-ng/input-ng.js +2 -2
  217. package/dist/island/adaptive-island-hoc.d.ts +2 -2
  218. package/dist/island/content.d.ts +1 -1
  219. package/dist/island/header.d.ts +2 -2
  220. package/dist/island/island.d.ts +3 -3
  221. package/dist/island-legacy/content-legacy.d.ts +2 -2
  222. package/dist/island-legacy/header-legacy.d.ts +2 -2
  223. package/dist/island-legacy/island-legacy.d.ts +2 -2
  224. package/dist/link/clickableLink.d.ts +1 -1
  225. package/dist/link/link.d.ts +8 -8
  226. package/dist/link-ng/link-ng.js +2 -2
  227. package/dist/list/list.d.ts +6 -6
  228. package/dist/list/list__custom.d.ts +1 -1
  229. package/dist/list/list__hint.d.ts +2 -2
  230. package/dist/list/list__item.d.ts +2 -2
  231. package/dist/list/list__link.d.ts +2 -2
  232. package/dist/list/list__separator.d.ts +2 -2
  233. package/dist/list/list__title.d.ts +2 -2
  234. package/dist/loader/loader.d.ts +2 -2
  235. package/dist/loader-inline/loader-inline.d.ts +2 -2
  236. package/dist/loader-screen/loader-screen.d.ts +2 -2
  237. package/dist/login-dialog/login-dialog.d.ts +2 -2
  238. package/dist/markdown/code.d.ts +2 -1
  239. package/dist/markdown/heading.d.ts +2 -1
  240. package/dist/markdown/link.d.ts +2 -1
  241. package/dist/markdown/markdown.d.ts +2 -2
  242. package/dist/message/message.d.ts +2 -2
  243. package/dist/message/message.js +39 -31
  244. package/dist/message-bundle-ng/message-bundle-ng.js +2 -2
  245. package/dist/old-browsers-message/white-list.js +2 -2
  246. package/dist/pager/pager.d.ts +7 -58
  247. package/dist/pager/pager.js +14 -8
  248. package/dist/panel/panel.d.ts +2 -2
  249. package/dist/popup/popup.d.ts +2 -2
  250. package/dist/popup-menu/popup-menu.d.ts +2 -2
  251. package/dist/progress-bar/progress-bar.d.ts +2 -2
  252. package/dist/query-assist/query-assist.d.ts +2 -2
  253. package/dist/query-assist/query-assist.js +94 -85
  254. package/dist/query-assist/query-assist__suggestions.d.ts +2 -1
  255. package/dist/radio/radio.d.ts +1 -1
  256. package/dist/radio/radio__item.d.ts +1 -1
  257. package/dist/save-field-ng/save-field-ng.js +5 -5
  258. package/dist/select/select.d.ts +4 -4
  259. package/dist/select/select.js +10 -7
  260. package/dist/select/select__filter.d.ts +2 -2
  261. package/dist/select/select__popup.d.ts +7 -7
  262. package/dist/select/select__popup.js +4 -4
  263. package/dist/select-ng/select-ng.js +2 -2
  264. package/dist/shortcuts/core.js +2 -2
  265. package/dist/shortcuts/shortcuts-hoc.d.ts +2 -2
  266. package/dist/shortcuts/shortcuts.js +6 -6
  267. package/dist/shortcuts-hint-ng/shortcuts-hint-ng.js +3 -3
  268. package/dist/shortcuts-ng/shortcuts-ng.js +24 -24
  269. package/dist/sidebar-ng/sidebar-ng.js +2 -2
  270. package/dist/style.css +1 -1
  271. package/dist/tab-trap/tab-trap.d.ts +1 -1
  272. package/dist/table/cell.d.ts +2 -2
  273. package/dist/table/disable-hover-hoc.d.ts +2 -2
  274. package/dist/table/header-cell.d.ts +2 -2
  275. package/dist/table/header.d.ts +3 -3
  276. package/dist/table/multitable.d.ts +2 -2
  277. package/dist/table/row-with-focus-sensor.d.ts +1 -1
  278. package/dist/table/row.d.ts +1 -1
  279. package/dist/table/smart-table.d.ts +1 -1
  280. package/dist/table/table.d.ts +4 -4
  281. package/dist/table-legacy-ng/table-legacy-ng__pager.js +2 -2
  282. package/dist/tabs/collapsible-more.d.ts +3 -3
  283. package/dist/tabs/collapsible-more.js +5 -5
  284. package/dist/tabs/collapsible-tab.d.ts +1 -1
  285. package/dist/tabs/collapsible-tabs.d.ts +2 -2
  286. package/dist/tabs/dumb-tabs.d.ts +3 -3
  287. package/dist/tabs/smart-tabs.d.ts +2 -2
  288. package/dist/tabs/tab-link.d.ts +1 -1
  289. package/dist/tabs/tab.d.ts +2 -2
  290. package/dist/tag/tag.d.ts +5 -5
  291. package/dist/tags-input/tags-input.d.ts +1 -1
  292. package/dist/tags-list/tags-list.d.ts +2 -2
  293. package/dist/text/text.d.ts +2 -2
  294. package/dist/toggle/toggle.d.ts +2 -2
  295. package/dist/tooltip/tooltip.d.ts +1 -1
  296. package/dist/user-agreement/service.js +7 -7
  297. package/dist/user-agreement/user-agreement.d.ts +2 -2
  298. package/dist/user-agreement/user-agreement.js +42 -36
  299. package/dist/user-card/card.d.ts +3 -54
  300. package/dist/user-card/smart-user-card-tooltip.d.ts +3 -3
  301. package/dist/user-card/smart-user-card-tooltip.js +28 -28
  302. package/dist/user-card/tooltip.d.ts +3 -3
  303. package/dist/user-card-ng/user-card-ng.js +4 -4
  304. package/package.json +50 -50
@@ -12,7 +12,7 @@ export default function createStatefulContext<T>(initialValue: T, name?: string)
12
12
  ValueContext: React.Context<T>;
13
13
  UpdateContext: React.Context<Update<T>>;
14
14
  Provider: {
15
- ({ children }: ProviderProps): JSX.Element;
15
+ ({ children }: ProviderProps): React.JSX.Element;
16
16
  propTypes: {
17
17
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
18
18
  };
@@ -1,4 +1,4 @@
1
- import { Component } from 'react';
1
+ import React, { Component } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  export interface RendererProps {
4
4
  className?: string | undefined;
@@ -12,5 +12,5 @@ export default class Renderer extends Component<RendererProps> {
12
12
  componentDidMount(): void;
13
13
  node?: HTMLElement | null;
14
14
  nodeRef: (node: HTMLElement | null) => void;
15
- render(): JSX.Element;
15
+ render(): React.JSX.Element;
16
16
  }
@@ -1,4 +1,4 @@
1
- import { Component, ReactNode } from 'react';
1
+ import React, { Component, ReactNode } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  export interface ColProps {
4
4
  children?: ReactNode;
@@ -27,5 +27,5 @@ export default class Col extends Component<ColProps> {
27
27
  className: PropTypes.Requireable<string>;
28
28
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
29
29
  };
30
- render(): JSX.Element;
30
+ render(): React.JSX.Element;
31
31
  }
@@ -1,4 +1,4 @@
1
- import { Component, HTMLAttributes } from 'react';
1
+ import React, { Component, HTMLAttributes } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  /**
4
4
  * @name Grid
@@ -8,7 +8,7 @@ export declare class Grid extends Component<HTMLAttributes<HTMLDivElement>> {
8
8
  className: PropTypes.Requireable<string>;
9
9
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
10
10
  };
11
- render(): JSX.Element;
11
+ render(): React.JSX.Element;
12
12
  }
13
13
  export { default as Row } from './row';
14
14
  export { default as Col } from './col';
@@ -1,4 +1,4 @@
1
- import { Component, ReactNode } from 'react';
1
+ import React, { Component, ReactNode } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  declare const ModifierType: PropTypes.Requireable<string>;
4
4
  type ModifierType = 'xs' | 'sm' | 'md' | 'lg';
@@ -35,6 +35,6 @@ export default class Row extends Component<RowProps> {
35
35
  className: PropTypes.Requireable<string>;
36
36
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
37
37
  };
38
- render(): JSX.Element;
38
+ render(): React.JSX.Element;
39
39
  }
40
40
  export {};
@@ -1,4 +1,4 @@
1
- import { Component, HTMLAttributes } from 'react';
1
+ import React, { Component, HTMLAttributes } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  /**
4
4
  * @name Group
@@ -8,5 +8,5 @@ export default class Group extends Component<HTMLAttributes<HTMLSpanElement>> {
8
8
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
9
9
  className: PropTypes.Requireable<string>;
10
10
  };
11
- render(): JSX.Element;
11
+ render(): React.JSX.Element;
12
12
  }
@@ -1,4 +1,4 @@
1
- import { Component, HTMLAttributes } from 'react';
1
+ import React, { Component, HTMLAttributes } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import Theme from '../global/theme';
4
4
  interface HeaderProps extends HTMLAttributes<HTMLElement> {
@@ -21,7 +21,7 @@ declare class Header extends Component<HeaderProps> {
21
21
  spaced: boolean;
22
22
  theme: Theme;
23
23
  };
24
- render(): JSX.Element;
24
+ render(): React.JSX.Element;
25
25
  }
26
26
  export type HeaderAttrs = JSX.LibraryManagedAttributes<typeof Header, HeaderProps>;
27
27
  export default Header;
@@ -1,4 +1,4 @@
1
- import { PureComponent } from 'react';
1
+ import React, { PureComponent } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { IconAttrs, Size } from '../icon/icon';
4
4
  export default class Logo extends PureComponent<IconAttrs> {
@@ -10,5 +10,5 @@ export default class Logo extends PureComponent<IconAttrs> {
10
10
  suppressSizeWarning: boolean;
11
11
  };
12
12
  static Size: typeof Size;
13
- render(): JSX.Element;
13
+ render(): React.JSX.Element;
14
14
  }
@@ -67,60 +67,9 @@ export default class Profile extends PureComponent<ProfileProps> {
67
67
  renderGuest: PropTypes.Requireable<(...args: any[]) => any>;
68
68
  };
69
69
  static defaultProps: ProfileProps;
70
- static contextType: React.Context<{
71
- login: string;
72
- logout: string;
73
- loginTo: string;
74
- ok: string;
75
- cancel: string;
76
- tryAgainLabel: string;
77
- postpone: string;
78
- youHaveLoggedInAs: string;
79
- applyChange: string;
80
- backendIsNotAvailable: string;
81
- checkAgain: string;
82
- nothingHappensLink: string;
83
- errorMessage: string;
84
- applyChangedUser: string;
85
- profile: string;
86
- switchUser: string;
87
- addFirstDate: string;
88
- addSecondDate: string;
89
- addTime: string;
90
- selectName: string;
91
- setDate: string;
92
- setDateTime: string;
93
- setPeriod: string;
94
- clear: string;
95
- gotIt: string;
96
- dismiss: string;
97
- perPage: string;
98
- firstPage: string;
99
- lastPage: string;
100
- nextPage: string;
101
- previousPage: string;
102
- searchTitle: string;
103
- clearTitle: string;
104
- userAgreement: string;
105
- accept: string;
106
- decline: string;
107
- close: string;
108
- scrollToAccept: string;
109
- remindLater: string;
110
- filterItems: string;
111
- selectOption: string;
112
- progress: string;
113
- loading: string;
114
- noOptionsFound: string;
115
- banned: string;
116
- online: string;
117
- offline: string;
118
- copyToClipboard: string;
119
- copiedToClipboard: string;
120
- copingToClipboardError: string;
121
- unverified: string;
122
- }>;
70
+ static contextType: React.Context<import("../i18n/i18n-context").I18nContextProps>;
71
+ context: React.ContextType<typeof Profile.contextType>;
123
72
  static Size: typeof Size;
124
- render(): string | number | boolean | JSX.Element | React.ReactFragment | null | undefined;
73
+ render(): string | number | boolean | React.JSX.Element | React.ReactFragment | null | undefined;
125
74
  }
126
75
  export type ProfileAttrs = JSX.LibraryManagedAttributes<typeof Profile, ProfileProps>;
@@ -109,8 +109,11 @@ class Profile extends PureComponent {
109
109
  className,
110
110
  translations
111
111
  } = _ref;
112
- return /*#__PURE__*/React.createElement(I18nContext.Consumer, null, messages => {
112
+ return /*#__PURE__*/React.createElement(I18nContext.Consumer, null, _ref2 => {
113
113
  var _translations$login;
114
+ let {
115
+ translate
116
+ } = _ref2;
114
117
  return /*#__PURE__*/React.createElement("div", {
115
118
  className: classNames(modules_47759f5e.profileEmpty, className)
116
119
  }, /*#__PURE__*/React.createElement(Button, {
@@ -119,7 +122,7 @@ class Profile extends PureComponent {
119
122
  disabled: loading,
120
123
  loader: loading,
121
124
  onClick: onLogin
122
- }, (_translations$login = translations?.login) !== null && _translations$login !== void 0 ? _translations$login : messages.login));
125
+ }, (_translations$login = translations?.login) !== null && _translations$login !== void 0 ? _translations$login : translate('login')));
123
126
  });
124
127
  }
125
128
  };
@@ -150,7 +153,9 @@ class Profile extends PureComponent {
150
153
  onLogin,
151
154
  ...props
152
155
  } = this.props;
153
- const messages = this.context;
156
+ const {
157
+ translate
158
+ } = this.context;
154
159
  if (!user) {
155
160
  return /*#__PURE__*/React.createElement("div", _extends({}, props, {
156
161
  className: classNames(modules_47759f5e.profileEmpty, className)
@@ -175,28 +180,28 @@ class Profile extends PureComponent {
175
180
  }));
176
181
  const items = [showApplyChangedUser && {
177
182
  rgItemType,
178
- label: (_translations$applyCh = translations?.applyChangedUser) !== null && _translations$applyCh !== void 0 ? _translations$applyCh : messages.applyChangedUser,
183
+ label: (_translations$applyCh = translations?.applyChangedUser) !== null && _translations$applyCh !== void 0 ? _translations$applyCh : translate('applyChangedUser'),
179
184
  className: modules_47759f5e.profileMenuItem,
180
185
  onClick: onRevertPostponement
181
186
  }, showLogIn && {
182
187
  rgItemType,
183
- label: (_translations$login2 = translations?.login) !== null && _translations$login2 !== void 0 ? _translations$login2 : messages.login,
188
+ label: (_translations$login2 = translations?.login) !== null && _translations$login2 !== void 0 ? _translations$login2 : translate('login'),
184
189
  className: modules_47759f5e.profileMenuItem,
185
190
  onClick: onRevertPostponement
186
191
  }, {
187
192
  rgItemType: PopupMenu.ListProps.Type.LINK,
188
- label: (_translations$profile = translations?.profile) !== null && _translations$profile !== void 0 ? _translations$profile : messages.profile,
193
+ label: (_translations$profile = translations?.profile) !== null && _translations$profile !== void 0 ? _translations$profile : translate('profile'),
189
194
  target: '_self',
190
195
  href: profileUrl,
191
196
  LinkComponent
192
197
  }, showSwitchUser && {
193
198
  rgItemType,
194
- label: (_translations$switchU = translations?.switchUser) !== null && _translations$switchU !== void 0 ? _translations$switchU : messages.switchUser,
199
+ label: (_translations$switchU = translations?.switchUser) !== null && _translations$switchU !== void 0 ? _translations$switchU : translate('switchUser'),
195
200
  className: modules_47759f5e.profileMenuItem,
196
201
  onClick: onSwitchUser
197
202
  }, showLogOut && {
198
203
  rgItemType,
199
- label: (_translations$logout = translations?.logout) !== null && _translations$logout !== void 0 ? _translations$logout : messages.logout,
204
+ label: (_translations$logout = translations?.logout) !== null && _translations$logout !== void 0 ? _translations$logout : translate('logout'),
200
205
  onClick: onLogout
201
206
  }].filter(isTruthy);
202
207
  return /*#__PURE__*/React.createElement(DropdownMenu, _extends({}, props, {
@@ -1,4 +1,4 @@
1
- import { PureComponent } from 'react';
1
+ import React, { PureComponent } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { LinkProps } from '../link/link';
4
4
  export interface Service {
@@ -21,5 +21,5 @@ export default class ServicesLink extends PureComponent<ServicesLinkProps> {
21
21
  name: PropTypes.Requireable<string>;
22
22
  }>>;
23
23
  };
24
- render(): JSX.Element;
24
+ render(): React.JSX.Element;
25
25
  }
@@ -1,4 +1,4 @@
1
- import { HTMLAttributes, PureComponent } from 'react';
1
+ import React, { HTMLAttributes, PureComponent } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import Theme from '../global/theme';
4
4
  import ServicesLink, { Service } from './services-link';
@@ -29,5 +29,5 @@ export default class Services extends PureComponent<ServicesProps> {
29
29
  };
30
30
  static Link: typeof ServicesLink;
31
31
  serviceIsActive: (service: Service) => boolean;
32
- render(): JSX.Element;
32
+ render(): React.JSX.Element;
33
33
  }
@@ -1,4 +1,4 @@
1
- import { PureComponent } from 'react';
1
+ import React, { PureComponent } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import Auth, { AuthUser } from '../auth/auth';
4
4
  import { Size } from '../avatar/avatar';
@@ -31,6 +31,6 @@ export default class SmartProfile extends PureComponent<SmartProfileProps, Smart
31
31
  onRevertPostponement: () => void;
32
32
  requestUser(): Promise<void>;
33
33
  checkUserCertificateMismatch(user: AuthUser): void;
34
- render(): JSX.Element;
34
+ render(): React.JSX.Element;
35
35
  }
36
36
  export {};
@@ -1,4 +1,4 @@
1
- import { Component, HTMLAttributes } from 'react';
1
+ import React, { Component, HTMLAttributes } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import Auth from '../auth/auth';
4
4
  import HTTP from '../http/http';
@@ -21,5 +21,5 @@ export default class SmartServices extends Component<SmartServicesProps> {
21
21
  stopLoading: () => void;
22
22
  getServicesContent: () => void;
23
23
  getServices(fields: string): Promise<any> | undefined;
24
- render(): JSX.Element | null;
24
+ render(): React.JSX.Element | null;
25
25
  }
@@ -1,4 +1,4 @@
1
- import { Component } from 'react';
1
+ import React, { Component } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { ButtonAttrs } from '../button/button';
4
4
  import { IconType } from '../icon/icon';
@@ -28,5 +28,5 @@ export default class TrayIcon extends Component<ButtonAttrs & TrayIconSpecificPr
28
28
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
29
29
  onClick: PropTypes.Requireable<(...args: any[]) => any>;
30
30
  };
31
- render(): JSX.Element;
31
+ render(): React.JSX.Element;
32
32
  }
@@ -1,9 +1,9 @@
1
- import { Component, HTMLAttributes } from 'react';
1
+ import React, { Component, HTMLAttributes } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  export default class Tray extends Component<HTMLAttributes<HTMLElement>> {
4
4
  static propTypes: {
5
5
  className: PropTypes.Requireable<string>;
6
6
  children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
7
7
  };
8
- render(): JSX.Element;
8
+ render(): React.JSX.Element;
9
9
  }
@@ -1,54 +1,13 @@
1
1
  import React from 'react';
2
- export declare const I18nContext: React.Context<{
3
- login: string;
4
- logout: string;
5
- loginTo: string;
6
- ok: string;
7
- cancel: string;
8
- tryAgainLabel: string;
9
- postpone: string;
10
- youHaveLoggedInAs: string;
11
- applyChange: string;
12
- backendIsNotAvailable: string;
13
- checkAgain: string;
14
- nothingHappensLink: string;
15
- errorMessage: string;
16
- applyChangedUser: string;
17
- profile: string;
18
- switchUser: string;
19
- addFirstDate: string;
20
- addSecondDate: string;
21
- addTime: string;
22
- selectName: string;
23
- setDate: string;
24
- setDateTime: string;
25
- setPeriod: string;
26
- clear: string;
27
- gotIt: string;
28
- dismiss: string;
29
- perPage: string;
30
- firstPage: string;
31
- lastPage: string;
32
- nextPage: string;
33
- previousPage: string;
34
- searchTitle: string;
35
- clearTitle: string;
36
- userAgreement: string;
37
- accept: string;
38
- decline: string;
39
- close: string;
40
- scrollToAccept: string;
41
- remindLater: string;
42
- filterItems: string;
43
- selectOption: string;
44
- progress: string;
45
- loading: string;
46
- noOptionsFound: string;
47
- banned: string;
48
- online: string;
49
- offline: string;
50
- copyToClipboard: string;
51
- copiedToClipboard: string;
52
- copingToClipboardError: string;
53
- unverified: string;
54
- }>;
2
+ import { type Messages } from './i18n';
3
+ export interface I18nContextProps {
4
+ translate(key: keyof Messages): string;
5
+ messages: Messages;
6
+ }
7
+ export declare const I18nContext: React.Context<I18nContextProps>;
8
+ interface I18nContextHolderProps {
9
+ messages: Messages;
10
+ children?: React.ReactNode;
11
+ }
12
+ export declare const I18nContextHolder: React.FC<I18nContextHolderProps>;
13
+ export {};
@@ -1,6 +1,24 @@
1
- import React from 'react';
2
- import { getTranslations } from './i18n.js';
1
+ import React, { useEffect } from 'react';
2
+ import { getTranslations, translate, setTranslations } from './i18n.js';
3
3
 
4
- const I18nContext = /*#__PURE__*/React.createContext(getTranslations());
4
+ const I18nContext = /*#__PURE__*/React.createContext({
5
+ messages: getTranslations(),
6
+ translate
7
+ });
8
+ const I18nContextHolder = _ref => {
9
+ let {
10
+ children,
11
+ messages
12
+ } = _ref;
13
+ useEffect(() => {
14
+ setTranslations(messages);
15
+ }, [messages]);
16
+ return /*#__PURE__*/React.createElement(I18nContext.Provider, {
17
+ value: {
18
+ messages,
19
+ translate
20
+ }
21
+ }, children);
22
+ };
5
23
 
6
- export { I18nContext };
24
+ export { I18nContext, I18nContextHolder };
@@ -1,7 +1,8 @@
1
1
  import defaultMessages from './messages.json';
2
- export type Messages = typeof defaultMessages;
2
+ export type MessagesStrict = typeof defaultMessages;
3
+ export type Messages = Partial<MessagesStrict>;
3
4
  export declare function setTranslations(newMessages: Messages): void;
4
- export declare function getTranslations(): {
5
+ export declare function getTranslations(): Partial<{
5
6
  login: string;
6
7
  logout: string;
7
8
  loginTo: string;
@@ -53,4 +54,6 @@ export declare function getTranslations(): {
53
54
  copiedToClipboard: string;
54
55
  copingToClipboardError: string;
55
56
  unverified: string;
56
- };
57
+ }>;
58
+ export declare function getTranslationsWithFallback(): MessagesStrict;
59
+ export declare function translate(key: keyof MessagesStrict): string;
package/dist/i18n/i18n.js CHANGED
@@ -104,11 +104,33 @@ var defaultMessages = {
104
104
  };
105
105
 
106
106
  let messages = defaultMessages;
107
+ const warned = new Set();
108
+ function warnMissedKeyOnce(key) {
109
+ if (warned.has(key)) {
110
+ return;
111
+ }
112
+ warned.add(key);
113
+ // eslint-disable-next-line no-console
114
+ console.warn(`Missing localisation for key "${key}"`);
115
+ }
107
116
  function setTranslations(newMessages) {
108
117
  messages = newMessages;
109
118
  }
110
119
  function getTranslations() {
111
120
  return messages;
112
121
  }
122
+ function getTranslationsWithFallback() {
123
+ return {
124
+ ...defaultMessages,
125
+ ...messages
126
+ };
127
+ }
128
+ function translate(key) {
129
+ var _messages$key;
130
+ if (!(key in messages)) {
131
+ warnMissedKeyOnce(key);
132
+ }
133
+ return (_messages$key = messages[key]) !== null && _messages$key !== void 0 ? _messages$key : defaultMessages[key];
134
+ }
113
135
 
114
- export { getTranslations, setTranslations };
136
+ export { getTranslations, getTranslationsWithFallback, setTranslations, translate };
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @name Icon
3
3
  */
4
- import { PureComponent, ComponentType, SVGAttributes, HTMLAttributes } from 'react';
4
+ import React, { PureComponent, ComponentType, SVGAttributes, HTMLAttributes } from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import { Color, Size } from './icon__constants';
7
7
  export type IconType = ComponentType<SVGAttributes<SVGSVGElement>>;
@@ -37,7 +37,7 @@ export default class Icon extends PureComponent<IconProps> {
37
37
  width: number | undefined;
38
38
  height: number | undefined;
39
39
  } | undefined;
40
- render(): JSX.Element | null;
40
+ render(): React.JSX.Element | null;
41
41
  }
42
42
  export type IconAttrs = JSX.LibraryManagedAttributes<typeof Icon, IconProps>;
43
43
  export { Color, Size };
@@ -3,7 +3,7 @@ import PropTypes from 'prop-types';
3
3
  export interface IconSVGProps extends SVGAttributes<SVGSVGElement> {
4
4
  src: string;
5
5
  }
6
- declare function IconSVG({ src, className, ...rest }: IconSVGProps): JSX.Element;
6
+ declare function IconSVG({ src, className, ...rest }: IconSVGProps): React.JSX.Element;
7
7
  declare namespace IconSVG {
8
8
  var propTypes: {
9
9
  className: PropTypes.Requireable<string>;
@@ -1,10 +1,10 @@
1
- import { PureComponent, ReactNode } from 'react';
1
+ import React, { PureComponent, ReactNode } from 'react';
2
2
  interface InputLabelProps {
3
3
  htmlFor?: string;
4
4
  disabled?: boolean;
5
5
  label: ReactNode;
6
6
  }
7
7
  export declare class InputLabel extends PureComponent<InputLabelProps> {
8
- render(): JSX.Element;
8
+ render(): React.JSX.Element;
9
9
  }
10
10
  export default InputLabel;
@@ -65,7 +65,7 @@ export declare class Input extends PureComponent<InputProps> {
65
65
  clear: (e: React.MouseEvent<HTMLButtonElement>) => void;
66
66
  handleInputChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
67
67
  handleTextareaChange: (e: React.ChangeEvent<HTMLTextAreaElement>) => void;
68
- render(): JSX.Element;
68
+ render(): React.JSX.Element;
69
69
  }
70
70
  export type ContainerProps<P extends InputProps> = JSX.LibraryManagedAttributes<typeof Input, P>;
71
71
  export type InputSpecificAttrs = ContainerProps<InputSpecificProps>;
@@ -151,32 +151,38 @@ class Input extends PureComponent {
151
151
  'aria-label': typeof label === 'string' && label ? label : placeholder,
152
152
  'data-enabled-shortcuts': Array.isArray(enableShortcuts) ? enableShortcuts.join(',') : null
153
153
  };
154
- return /*#__PURE__*/React.createElement(I18nContext.Consumer, null, messages => /*#__PURE__*/React.createElement("div", {
155
- className: classes,
156
- "data-test": "ring-input"
157
- }, label && /*#__PURE__*/React.createElement(InputLabel, {
158
- htmlFor: this.getId(),
159
- disabled: disabled,
160
- label: label
161
- }), /*#__PURE__*/React.createElement("div", {
162
- className: modules_88cfaf40.container
163
- }, icon && /*#__PURE__*/React.createElement(Icon, {
164
- glyph: icon,
165
- className: modules_88cfaf40.icon
166
- }), multiline ? /*#__PURE__*/React.createElement("textarea", _extends({
167
- onChange: this.handleTextareaChange,
168
- rows: 1
169
- }, commonProps, restProps)) : /*#__PURE__*/React.createElement("input", _extends({
170
- onChange: this.handleInputChange
171
- }, commonProps, restProps)), clearable && !disabled && /*#__PURE__*/React.createElement(Button, {
172
- title: (translations !== null && translations !== void 0 ? translations : messages).clear,
173
- "data-test": "ring-input-clear",
174
- className: modules_88cfaf40.clear,
175
- icon: closeIcon,
176
- onClick: this.clear
177
- }), afterInput), error && /*#__PURE__*/React.createElement("div", {
178
- className: modules_88cfaf40.errorText
179
- }, error)));
154
+ return /*#__PURE__*/React.createElement(I18nContext.Consumer, null, _ref => {
155
+ var _translations$clear;
156
+ let {
157
+ translate
158
+ } = _ref;
159
+ return /*#__PURE__*/React.createElement("div", {
160
+ className: classes,
161
+ "data-test": "ring-input"
162
+ }, label && /*#__PURE__*/React.createElement(InputLabel, {
163
+ htmlFor: this.getId(),
164
+ disabled: disabled,
165
+ label: label
166
+ }), /*#__PURE__*/React.createElement("div", {
167
+ className: modules_88cfaf40.container
168
+ }, icon && /*#__PURE__*/React.createElement(Icon, {
169
+ glyph: icon,
170
+ className: modules_88cfaf40.icon
171
+ }), multiline ? /*#__PURE__*/React.createElement("textarea", _extends({
172
+ onChange: this.handleTextareaChange,
173
+ rows: 1
174
+ }, commonProps, restProps)) : /*#__PURE__*/React.createElement("input", _extends({
175
+ onChange: this.handleInputChange
176
+ }, commonProps, restProps)), clearable && !disabled && /*#__PURE__*/React.createElement(Button, {
177
+ title: (_translations$clear = translations?.clear) !== null && _translations$clear !== void 0 ? _translations$clear : translate('clear'),
178
+ "data-test": "ring-input-clear",
179
+ className: modules_88cfaf40.clear,
180
+ icon: closeIcon,
181
+ onClick: this.clear
182
+ }), afterInput), error && /*#__PURE__*/React.createElement("div", {
183
+ className: modules_88cfaf40.errorText
184
+ }, error));
185
+ });
180
186
  }
181
187
  }
182
188
  Input.propTypes = {
@@ -3,7 +3,7 @@ import classNames from 'classnames';
3
3
  import closeIcon from '@jetbrains/icons/close';
4
4
  import RingAngularComponent from '../global/ring-angular-component.js';
5
5
  import { m as modules_88cfaf40 } from '../_helpers/input.js';
6
- import Button from '../button-ng/button-ng.js';
6
+ import ButtonNG from '../button-ng/button-ng.js';
7
7
  import '../global/dom.js';
8
8
  import '../icon-ng/icon-ng.js';
9
9
  import '../icon/icon__constants.js';
@@ -15,7 +15,7 @@ import 'react';
15
15
 
16
16
  var modules_c40fa551 = {"errorText":"errorText_rui_d15a","clear":"clear_rui_d15a"};
17
17
 
18
- const angularModule = angular.module('Ring.input', [Button]);
18
+ const angularModule = angular.module('Ring.input', [ButtonNG]);
19
19
  class RingInputComponent extends RingAngularComponent {
20
20
  static require = {
21
21
  ngModelCtrl: '?ngModel'
@@ -8,7 +8,7 @@ export default function adaptiveIslandHOC<P>(ComposedComponent: ComponentType<P>
8
8
  phase: null;
9
9
  };
10
10
  onContentScroll: ({ scrollTop, scrollHeight, clientHeight }: Element) => void;
11
- render(): JSX.Element;
11
+ render(): React.JSX.Element;
12
12
  context: unknown;
13
13
  setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<P>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void;
14
14
  forceUpdate(callback?: (() => void) | undefined): void;
@@ -34,7 +34,7 @@ export default function adaptiveIslandHOC<P>(ComposedComponent: ComponentType<P>
34
34
  phase: null;
35
35
  };
36
36
  onContentScroll: ({ scrollTop, scrollHeight, clientHeight }: Element) => void;
37
- render(): JSX.Element;
37
+ render(): React.JSX.Element;
38
38
  context: unknown;
39
39
  setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<P>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void;
40
40
  forceUpdate(callback?: (() => void) | undefined): void;
@@ -37,7 +37,7 @@ declare class Content extends Component<IslandContentInnerProps> {
37
37
  calculateScrollPosition: () => void;
38
38
  scrollableNode?: HTMLElement | null;
39
39
  setScrollableNodeAndCalculatePosition: (node: HTMLElement | null) => void;
40
- render(): JSX.Element;
40
+ render(): React.JSX.Element;
41
41
  }
42
42
  declare const ContentWrapper: React.ForwardRefExoticComponent<IslandContentProps & React.RefAttributes<Content>>;
43
43
  export default ContentWrapper;