@jetbrains/ring-ui 5.0.133 → 5.0.135

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 (109) hide show
  1. package/README.md +1 -6
  2. package/components/avatar/fallback-avatar.d.ts +0 -1
  3. package/components/button-group/button-group.d.ts +1 -0
  4. package/components/button-group/button-group.js +1 -0
  5. package/components/button-group-ng/button-group-ng.js +1 -0
  6. package/components/button-ng/button-ng.examples.js +2 -2
  7. package/components/button-ng/button-ng.js +1 -0
  8. package/components/checkbox/checkbox.d.ts +1 -0
  9. package/components/checkbox/checkbox.js +1 -0
  10. package/components/checkbox-ng/checkbox-ng.js +1 -0
  11. package/components/confirm-ng/confirm-ng.examples.js +1 -1
  12. package/components/date-picker/month-names.d.ts +0 -1
  13. package/components/date-picker/month.d.ts +0 -1
  14. package/components/date-picker/months.d.ts +0 -1
  15. package/components/date-picker/weekdays.d.ts +0 -1
  16. package/components/dialog-ng/dialog-ng.examples.js +1 -1
  17. package/components/form/form.examples.js +1 -0
  18. package/components/global/angular-component-factory.js +9 -4
  19. package/components/global/angular-component-factory.test.js +30 -10
  20. package/components/global/react-dom-renderer.d.ts +2 -2
  21. package/components/global/react-dom-renderer.js +5 -5
  22. package/components/input-size/input-size.examples.js +1 -0
  23. package/components/island/island.d.ts +1 -0
  24. package/components/island/island.js +1 -0
  25. package/components/island-ng/island-ng.js +4 -3
  26. package/components/link-ng/link-ng.js +1 -0
  27. package/components/list/list.d.ts +1 -1
  28. package/components/markdown/code.d.ts +0 -1
  29. package/components/markdown/heading.d.ts +0 -1
  30. package/components/markdown/link.d.ts +0 -1
  31. package/components/query-assist/query-assist__suggestions.d.ts +0 -1
  32. package/components/select/select.d.ts +1 -0
  33. package/components/select/select.js +1 -0
  34. package/components/tabs/dumb-tabs.d.ts +1 -0
  35. package/components/tabs/dumb-tabs.js +1 -0
  36. package/components/tabs/tabs.css +3 -0
  37. package/components/tabs-ng/tabs-ng.js +1 -0
  38. package/components/tag/tag.d.ts +1 -0
  39. package/components/tag/tag.js +1 -0
  40. package/dist/_helpers/tabs.js +1 -1
  41. package/dist/auth/iframe-flow.js +1 -1
  42. package/dist/auth-dialog/auth-dialog.js +1 -1
  43. package/dist/auth-dialog-service/auth-dialog-service.js +1 -1
  44. package/dist/avatar/fallback-avatar.d.ts +0 -1
  45. package/dist/breadcrumb-ng/breadcrumb-ng.js +1 -0
  46. package/dist/button-group/button-group.d.ts +1 -0
  47. package/dist/button-group/button-group.js +1 -0
  48. package/dist/button-group-ng/button-group-ng.js +1 -0
  49. package/dist/button-ng/button-ng.js +1 -0
  50. package/dist/checkbox/checkbox.d.ts +1 -0
  51. package/dist/checkbox/checkbox.js +1 -0
  52. package/dist/checkbox-ng/checkbox-ng.js +1 -0
  53. package/dist/confirm/confirm.js +1 -1
  54. package/dist/confirm-ng/confirm-ng.js +1 -1
  55. package/dist/confirm-service/confirm-service.js +1 -1
  56. package/dist/data-list/title.js +1 -0
  57. package/dist/date-picker/month-names.d.ts +0 -1
  58. package/dist/date-picker/month.d.ts +0 -1
  59. package/dist/date-picker/months.d.ts +0 -1
  60. package/dist/date-picker/weekdays.d.ts +0 -1
  61. package/dist/dialog/dialog.js +1 -1
  62. package/dist/dialog-ng/dialog-ng.js +1 -0
  63. package/dist/error-message-ng/error-message-ng.js +1 -0
  64. package/dist/global/angular-component-factory.js +7 -4
  65. package/dist/global/react-dom-renderer.d.ts +2 -2
  66. package/dist/global/react-dom-renderer.js +6 -5
  67. package/dist/input-ng/input-ng.js +1 -0
  68. package/dist/island/island.d.ts +1 -0
  69. package/dist/island/island.js +1 -0
  70. package/dist/island-ng/island-ng.js +4 -3
  71. package/dist/link-ng/link-ng.js +1 -0
  72. package/dist/list/list.d.ts +1 -1
  73. package/dist/list/list__item.js +1 -0
  74. package/dist/login-dialog/service.js +1 -1
  75. package/dist/markdown/code.d.ts +0 -1
  76. package/dist/markdown/heading.d.ts +0 -1
  77. package/dist/markdown/link.d.ts +0 -1
  78. package/dist/old-browsers-message/white-list.js +2 -2
  79. package/dist/promised-click-ng/promised-click-ng.js +1 -0
  80. package/dist/query-assist/query-assist__suggestions.d.ts +0 -1
  81. package/dist/save-field-ng/save-field-ng.js +1 -0
  82. package/dist/select/select.d.ts +1 -0
  83. package/dist/select/select.js +1 -1
  84. package/dist/select-ng/select-ng.js +1 -1
  85. package/dist/select-ng/select-ng__lazy.js +1 -1
  86. package/dist/shortcuts-hint-ng/shortcuts-hint-ng.js +1 -0
  87. package/dist/sidebar-ng/sidebar-ng.js +1 -0
  88. package/dist/style.css +1 -1
  89. package/dist/table/header.js +1 -0
  90. package/dist/table/row-with-focus-sensor.js +1 -1
  91. package/dist/table/row.js +1 -1
  92. package/dist/table/smart-table.js +1 -1
  93. package/dist/table/table.js +1 -1
  94. package/dist/table-legacy-ng/table-legacy-ng.js +1 -1
  95. package/dist/table-ng/smart-table-ng.js +1 -1
  96. package/dist/table-ng/table-ng.js +1 -1
  97. package/dist/tabs/collapsible-more.js +1 -1
  98. package/dist/tabs/dumb-tabs.d.ts +1 -0
  99. package/dist/tabs/dumb-tabs.js +1 -1
  100. package/dist/tabs/smart-tabs.js +1 -1
  101. package/dist/tabs/tabs.js +1 -1
  102. package/dist/tabs-ng/tabs-ng.js +1 -0
  103. package/dist/tag/tag.d.ts +1 -0
  104. package/dist/tag/tag.js +1 -1
  105. package/dist/tags-input/tags-input.js +1 -1
  106. package/dist/tags-input-ng/tags-input-ng.js +1 -1
  107. package/dist/tags-list/tags-list.js +1 -1
  108. package/dist/user-agreement/user-agreement.js +1 -1
  109. package/package.json +35 -33
package/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  # Ring UI — JetBrains Web UI components
2
- [![Storybook][storybook-img]][docsite] [![Build Status][ci-img]][ci-bt] [![Storybook][browserstack-img]][browserstack-build-page] [![Dependencies Status][deps-img]][deps] [![Dev Dependencies Status][dev-deps-img]][dev-deps] [![NPM version][npm-version-img]][npm-package] [![NPM downloads][npm-count-img]][npm-package]
2
+ [![Storybook][storybook-img]][docsite] [![Build Status][ci-img]][ci-bt] [![Storybook][browserstack-img]][browserstack-build-page] [![NPM version][npm-version-img]][npm-package] [![NPM downloads][npm-count-img]][npm-package]
3
3
 
4
4
  [![official JetBrains project](https://jb.gg/badges/official-flat-square.svg)](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
5
5
 
@@ -84,7 +84,6 @@ See [CONTRIBUTING.md](./CONTRIBUTING.md)
84
84
  - [Living style guide][docsite]
85
85
  - [GitHub repository](https://github.com/JetBrains/ring-ui)
86
86
  - [Issues in YouTrack](https://youtrack.jetbrains.com/issues/RG)
87
- - [Code review in Upsource](https://upsource.jetbrains.com/ring-ui/view)
88
87
  - [Builds in TeamCity][ci-project]
89
88
  - [npm package][npm-package]
90
89
 
@@ -92,10 +91,6 @@ See [CONTRIBUTING.md](./CONTRIBUTING.md)
92
91
  [ci-project]: https://teamcity.jetbrains.com/project.html?projectId=JetBrainsUi_RingUi&tab=projectOverview
93
92
  [ci-bt]: https://teamcity.jetbrains.com/viewType.html?buildTypeId=JetBrainsUi_RingUi_GeminiTests&tab=buildTypeStatusDiv
94
93
  [ci-img]: https://teamcity.jetbrains.com/app/rest/builds/buildType:JetBrainsUi_RingUi_GeminiTests/statusIcon.svg
95
- [deps]: https://david-dm.org/jetbrains/ring-ui
96
- [deps-img]: https://img.shields.io/david/jetbrains/ring-ui.svg
97
- [dev-deps]: https://david-dm.org/jetbrains/ring-ui?type=dev
98
- [dev-deps-img]: https://img.shields.io/david/dev/jetbrains/ring-ui.svg
99
94
  [npm-package]: https://www.npmjs.com/package/@jetbrains/ring-ui
100
95
  [npm-version-img]: https://img.shields.io/npm/v/@jetbrains/ring-ui.svg
101
96
  [npm-count-img]: https://img.shields.io/npm/dt/@jetbrains/ring-ui.svg
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import PropTypes from 'prop-types';
3
2
  import { Size } from './avatar';
4
3
  export interface FallbackAvatarProps {
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import { PureComponent, HTMLAttributes } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import Caption from './caption';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import React, { PureComponent } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import classNames from 'classnames';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import angular from 'angular';
2
3
 
3
4
  import classNames from 'classnames';
@@ -96,9 +96,9 @@ basic.storyName = 'Button Ng';
96
96
  basic.parameters = {
97
97
  hermione: {
98
98
  actions: [
99
- {type: 'capture', name: '', selector: '#root'},
99
+ {type: 'capture', name: '', selector: '#storybook-root'},
100
100
  {type: 'focus', selector: '[data-test=button-active]'},
101
- {type: 'capture', name: 'focus active', selector: '#root'}
101
+ {type: 'capture', name: 'focus active', selector: '#storybook-root'}
102
102
  ]
103
103
  },
104
104
  storyStyles: `
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import angular from 'angular';
2
3
 
3
4
  import classNames from 'classnames';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import { PureComponent, InputHTMLAttributes, CSSProperties, Ref } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  export interface CheckboxProps extends InputHTMLAttributes<HTMLInputElement> {
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import React, { PureComponent } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import classNames from 'classnames';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import angular from 'angular';
2
3
 
3
4
  import checkmarkIcon from '@jetbrains/icons/checkmark-14px';
@@ -13,7 +13,7 @@ export default {
13
13
  parameters: {
14
14
  notes: 'Displays a confirmation prompt.',
15
15
  hermione: {captureSelector: '*[data-test~=ring-dialog]'},
16
- a11y: {element: '*[data-test~=ring-dialog]'}
16
+ a11y: {element: '#storybook-root,*[data-test~=ring-dialog]'}
17
17
  }
18
18
  };
19
19
 
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import PropTypes from 'prop-types';
3
2
  import { MonthsProps } from './consts';
4
3
  declare function MonthNames(props: MonthsProps): JSX.Element;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import PropTypes from 'prop-types';
3
2
  import { MonthsProps } from './consts';
4
3
  export interface MonthProps extends MonthsProps {
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import PropTypes from 'prop-types';
3
2
  import { MonthsProps } from './consts';
4
3
  declare function Months(props: MonthsProps): JSX.Element;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import type { Locale } from 'date-fns';
3
2
  import PropTypes from 'prop-types';
4
3
  interface WeekdaysProps {
@@ -16,7 +16,7 @@ export default {
16
16
  parameters: {
17
17
  notes: 'Provides an Angular wrapper for Dialog.',
18
18
  hermione: {captureSelector: '*[data-test~=ring-dialog]'},
19
- a11y: {element: '*[data-test~=ring-dialog]'}
19
+ a11y: {element: '#storybook-root,*[data-test~=ring-dialog]'}
20
20
  }
21
21
  };
22
22
 
@@ -5,6 +5,7 @@ import angularDecorator, {APP_NAME} from '../../.storybook/angular-decorator';
5
5
  import '../input/input-legacy.css';
6
6
  import './form.css';
7
7
  import '../input-size/input-size.css';
8
+ import '../error-bubble/error-bubble-legacy.css';
8
9
 
9
10
  import ButtonNG from '../button-ng/button-ng';
10
11
 
@@ -27,14 +27,19 @@ function createAngularComponent(Component) {
27
27
  $postLink() {
28
28
  const {$transclude} = this.$inject;
29
29
 
30
+
30
31
  $transclude(clone => {
31
- this.innerNodes = Array.from(clone);
32
+ this.container = document.createElement('div');
33
+
34
+ for (let i = 0; i < clone.length; i++) {
35
+ this.container.appendChild(clone[i]);
36
+ }
32
37
  this.render();
33
38
  });
34
39
  }
35
40
 
36
41
  $onChanges() {
37
- if (!this.innerNodes) {
42
+ if (!this.container) {
38
43
  return;
39
44
  }
40
45
  this.render();
@@ -62,11 +67,11 @@ function createAngularComponent(Component) {
62
67
  }
63
68
  });
64
69
 
65
- const hasInnerContent = this.innerNodes && this.innerNodes.length;
70
+ const hasInnerContent = this.container.hasChildNodes();
66
71
 
67
72
  render(
68
73
  <Component {...props}>
69
- {hasInnerContent ? <DomRenderer nodes={this.innerNodes}/> : null}
74
+ {hasInnerContent ? <DomRenderer nodes={this.container.childNodes}/> : null}
70
75
  </Component>,
71
76
  container
72
77
  );
@@ -4,7 +4,7 @@ import angular from 'angular';
4
4
  import 'angular-mocks';
5
5
  import React, {PureComponent} from 'react';
6
6
  import PropTypes from 'prop-types';
7
- import {Simulate} from 'react-dom/test-utils';
7
+ import {act, Simulate} from 'react-dom/test-utils';
8
8
 
9
9
  import angularComponentFactory from './angular-component-factory';
10
10
 
@@ -13,7 +13,8 @@ class TestComponent extends PureComponent {
13
13
  id: PropTypes.string,
14
14
  someObj: PropTypes.object,
15
15
  onClick: PropTypes.func,
16
- className: PropTypes.string
16
+ className: PropTypes.string,
17
+ children: PropTypes.node
17
18
  };
18
19
 
19
20
  static defaultProps = {
@@ -23,15 +24,18 @@ class TestComponent extends PureComponent {
23
24
  handleClick = () => this.props.onClick('payload');
24
25
 
25
26
  render() {
26
- const {id, someObj, className} = this.props;
27
+ const {id, someObj, className, children} = this.props;
27
28
  return (
28
- <button
29
- type="button"
30
- id={id}
31
- data-some-obj={someObj.foo}
32
- onClick={this.handleClick}
33
- className={className}
34
- />
29
+ <>
30
+ <button
31
+ type="button"
32
+ id={id}
33
+ data-some-obj={someObj.foo}
34
+ onClick={this.handleClick}
35
+ className={className}
36
+ />
37
+ {children}
38
+ </>
35
39
  );
36
40
  }
37
41
  }
@@ -115,4 +119,20 @@ describe('angularComponentFactory', () => {
115
119
  $rootScope.callback.should.have.been.called;
116
120
  $rootScope.callback.should.have.been.calledWith('payload');
117
121
  });
122
+
123
+ it('should support ng-if in nested content', () => {
124
+ let $element = null;
125
+ act(() => {
126
+ $element = $compile(`
127
+ <rg-test-component>
128
+ <span data-test="hello">HELLO</span>
129
+ </rg-test-component>`
130
+ )($rootScope);
131
+ });
132
+
133
+ const component = $element[0].querySelector('[data-test~=hello]');
134
+ $rootScope.$digest();
135
+
136
+ should.exist(component);
137
+ });
118
138
  });
@@ -2,12 +2,12 @@ import { Component } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  export interface RendererProps {
4
4
  className?: string | undefined;
5
- nodes: readonly Node[];
5
+ nodes: readonly Node[] | NodeList;
6
6
  }
7
7
  export default class Renderer extends Component<RendererProps> {
8
8
  static propTypes: {
9
9
  className: PropTypes.Requireable<string>;
10
- nodes: PropTypes.Requireable<any[]>;
10
+ nodes: PropTypes.Requireable<object>;
11
11
  };
12
12
  componentDidMount(): void;
13
13
  node?: HTMLElement | null;
@@ -3,16 +3,16 @@ import PropTypes from 'prop-types';
3
3
  class Renderer extends Component {
4
4
  static propTypes = {
5
5
  className: PropTypes.string,
6
- nodes: PropTypes.array
6
+ nodes: PropTypes.oneOfType([PropTypes.array, PropTypes.object])
7
7
  };
8
8
  componentDidMount() {
9
+ const { node } = this;
9
10
  const { nodes } = this.props;
10
- if (!this.node || !nodes || !nodes.length) {
11
+ if (!node || !nodes || !nodes.length) {
11
12
  return;
12
13
  }
13
- const fragment = document.createDocumentFragment();
14
- nodes.forEach(nodeToRender => fragment.appendChild(nodeToRender));
15
- this.node.appendChild(fragment);
14
+ Array.from(this.props.nodes).
15
+ forEach(nodeToRender => node.appendChild(nodeToRender));
16
16
  }
17
17
  node;
18
18
  nodeRef = (node) => {
@@ -5,6 +5,7 @@ import angularDecorator, {APP_NAME} from '../../.storybook/angular-decorator';
5
5
  import '../input/input-legacy.css';
6
6
  import '../form/form.css';
7
7
  import './input-size.css';
8
+ import '../error-bubble/error-bubble-legacy.css';
8
9
 
9
10
  import SelectNG from '../select-ng/select-ng';
10
11
  import QueryAssistNG from '../query-assist-ng/query-assist-ng';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import React, { Component, HTMLAttributes } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  export interface IslandProps extends HTMLAttributes<HTMLElement> {
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import React, { Component } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import classNames from 'classnames';
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * @name Island Ng
3
3
  */
4
+ import 'focus-visible';
4
5
  import angular from 'angular';
5
6
 
6
7
  import styles from '../island/island.css';
@@ -20,10 +21,10 @@ angularModule.directive('rgIsland', function islandDirective() {
20
21
  },
21
22
  compile,
22
23
  template: `
23
- <div
24
+ <div
24
25
  data-test="ring-island"
25
- class="${styles.island}"
26
- ng-class="{'${styles.narrowIsland}': islandCtrl.narrow}"
26
+ class="${styles.island}"
27
+ ng-class="{'${styles.narrowIsland}': islandCtrl.narrow}"
27
28
  ng-transclude
28
29
  ></div>
29
30
  `,
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import angular from 'angular';
2
3
 
3
4
  import styles from '../link/link.css';
@@ -24,7 +24,7 @@ export interface ListProps<T = unknown> {
24
24
  restoreActiveIndex: boolean;
25
25
  activateSingleItem: boolean;
26
26
  activateFirstItem: boolean;
27
- onMouseOut: (e: SyntheticEvent) => void;
27
+ onMouseOut: (e: SyntheticEvent<HTMLElement>) => void;
28
28
  onSelect: (item: ListDataItem<T>, event: Event | SyntheticEvent, params?: SelectHandlerParams) => void;
29
29
  onScrollToBottom: () => void;
30
30
  onResize: (info: Size) => void;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { CodeProps } from 'react-markdown/lib/ast-to-react';
3
2
  export interface MarkdownCodeProps extends CodeProps {
4
3
  language?: string;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import PropTypes from 'prop-types';
3
2
  import { HeadingProps } from 'react-markdown/lib/ast-to-react';
4
3
  declare const MarkdownHeading: {
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import PropTypes from 'prop-types';
3
2
  import { ReactMarkdownProps } from 'react-markdown/lib/complex-types';
4
3
  declare const MarkdownLink: {
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { ListDataItem } from '../list/consts';
3
2
  export interface QueryAssistSuggestion {
4
3
  description: string;
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import React, { ButtonHTMLAttributes, Component, CSSProperties, HTMLAttributes, ReactNode, RefCallback, SyntheticEvent } from 'react';
2
3
  import { SelectHandlerParams } from '../list/list';
3
4
  import { Size } from '../input/input';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import React, { Component, Fragment } from 'react';
2
3
  import classNames from 'classnames';
3
4
  import PropTypes from 'prop-types';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import { PureComponent, ReactElement } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import { CollapsibleTabsProps } from './collapsible-tabs';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import React, { PureComponent } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import classNames from 'classnames';
@@ -1,5 +1,8 @@
1
1
  @import "../global/variables.css";
2
2
 
3
+ /* ensure styles order */
4
+ @import "../link/link.css";
5
+
3
6
  @value dark from "../global/variables_dark.css";
4
7
  @value unit from "../global/global.css";
5
8
  @value line-shadow: inset 0 -1px 0 0;
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import angular from 'angular';
2
3
 
3
4
  import className from 'classnames';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import React, { HTMLAttributes, PureComponent, ReactNode, RefCallback } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import { IconType } from '../icon/icon';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import React, { PureComponent } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import classNames from 'classnames';
@@ -1,3 +1,3 @@
1
- var modules_02138f4a = {"dark":"dark_rui_eb55","unit":"i__const_unit_1","line-shadow":"inset 0 -1px 0 0","selected-line-shadow":"inset 0 -2px 0 0","light":"light_rui_aa34","tabs":"tabs_rui_aa34 font_rui_8bff","titles":"titles_rui_aa34","title":"title_rui_aa34 font_rui_8bff","selected":"selected_rui_aa34","collapsed":"collapsed_rui_aa34","titleLegacy":"titleLegacy_rui_aa34","visible":"visible_rui_aa34","container":"container_rui_aa34","hidden":"hidden_rui_aa34","hiddenBold":"hiddenBold_rui_aa34","hiddenRegular":"hiddenRegular_rui_aa34","tabCounter":"tabCounter_rui_aa34","autoCollapseContainer":"autoCollapseContainer_rui_aa34","autoCollapse":"autoCollapse_rui_aa34","rendered":"rendered_rui_aa34","adjusted":"adjusted_rui_aa34","measure":"measure_rui_aa34","morePopup":"morePopup_rui_aa34","chevron":"chevron_rui_aa34","morePopupBeforeEnd":"morePopupBeforeEnd_rui_aa34"};
1
+ var modules_02138f4a = {"dark":"dark_rui_eb55","unit":"i__const_unit_1","line-shadow":"inset 0 -1px 0 0","selected-line-shadow":"inset 0 -2px 0 0","light":"light_rui_aa34","link":"link_rui_aa34","hover":"hover_rui_aa34","inner":"inner_rui_aa34","active":"active_rui_aa34","compatibilityUnderlineMode":"compatibilityUnderlineMode_rui_aa34","pseudo":"pseudo_rui_aa34","text":"text_rui_aa34","inherit":"inherit_rui_aa34","tabs":"tabs_rui_aa34 font_rui_8bff","titles":"titles_rui_aa34","title":"title_rui_aa34 font_rui_8bff","selected":"selected_rui_aa34","collapsed":"collapsed_rui_aa34","titleLegacy":"titleLegacy_rui_aa34","visible":"visible_rui_aa34","container":"container_rui_aa34","hidden":"hidden_rui_aa34","hiddenBold":"hiddenBold_rui_aa34","hiddenRegular":"hiddenRegular_rui_aa34","tabCounter":"tabCounter_rui_aa34","autoCollapseContainer":"autoCollapseContainer_rui_aa34","autoCollapse":"autoCollapse_rui_aa34","rendered":"rendered_rui_aa34","adjusted":"adjusted_rui_aa34","measure":"measure_rui_aa34","morePopup":"morePopup_rui_aa34","chevron":"chevron_rui_aa34","morePopupBeforeEnd":"morePopupBeforeEnd_rui_aa34"};
2
2
 
3
3
  export { modules_02138f4a as m };
@@ -12,6 +12,7 @@ import '../_helpers/_rollupPluginBabelHelpers.js';
12
12
  import 'classnames';
13
13
  import '@jetbrains/icons/close';
14
14
  import '../island/island.js';
15
+ import 'focus-visible';
15
16
  import '../global/data-tests.js';
16
17
  import '../island/adaptive-island-hoc.js';
17
18
  import '../global/linear-function.js';
@@ -29,7 +30,6 @@ import 'sniffr';
29
30
  import '../tab-trap/tab-trap.js';
30
31
  import '../global/dom.js';
31
32
  import '../button/button.js';
32
- import 'focus-visible';
33
33
  import '@jetbrains/icons/chevron-10px';
34
34
  import '../icon/icon.js';
35
35
  import 'util-deprecate';
@@ -7,6 +7,7 @@ import { Button } from '../button/button.js';
7
7
  import { H2 } from '../heading/heading.js';
8
8
  import ContentWrapper from '../island/content.js';
9
9
  import '../_helpers/_rollupPluginBabelHelpers.js';
10
+ import 'focus-visible';
10
11
  import '../global/data-tests.js';
11
12
  import '../island/adaptive-island-hoc.js';
12
13
  import '../global/linear-function.js';
@@ -27,7 +28,6 @@ import '../global/dom.js';
27
28
  import '../popup/popup.target.js';
28
29
  import '../_helpers/dialog__body-scroll-preventer.js';
29
30
  import 'scrollbar-width';
30
- import 'focus-visible';
31
31
  import '@jetbrains/icons/chevron-10px';
32
32
  import '../icon/icon.js';
33
33
  import 'util-deprecate';
@@ -7,6 +7,7 @@ import 'prop-types';
7
7
  import 'classnames';
8
8
  import '../island/island.js';
9
9
  import '../_helpers/_rollupPluginBabelHelpers.js';
10
+ import 'focus-visible';
10
11
  import '../global/data-tests.js';
11
12
  import '../island/adaptive-island-hoc.js';
12
13
  import '../global/linear-function.js';
@@ -26,7 +27,6 @@ import 'sniffr';
26
27
  import '../tab-trap/tab-trap.js';
27
28
  import '../global/dom.js';
28
29
  import '../button/button.js';
29
- import 'focus-visible';
30
30
  import '@jetbrains/icons/chevron-10px';
31
31
  import '../icon/icon.js';
32
32
  import 'util-deprecate';
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import PropTypes from 'prop-types';
3
2
  import { Size } from './avatar';
4
3
  export interface FallbackAvatarProps {
@@ -2,6 +2,7 @@ import angular from 'angular';
2
2
  import chevronRightIcon from '@jetbrains/icons/chevron-right';
3
3
  import LinkModule from '../link-ng/link-ng.js';
4
4
  import IconNG from '../icon-ng/icon-ng.js';
5
+ import 'focus-visible';
5
6
  import '../_helpers/link.js';
6
7
  import '../icon/icon__constants.js';
7
8
  import '../template-ng/template-ng.js';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import { PureComponent, HTMLAttributes } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import Caption from './caption';
@@ -1,4 +1,5 @@
1
1
  import { _ as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'focus-visible';
2
3
  import React, { PureComponent } from 'react';
3
4
  import PropTypes from 'prop-types';
4
5
  import classNames from 'classnames';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import angular from 'angular';
2
3
  import classNames from 'classnames';
3
4
  import { m as modules_1068e447 } from '../_helpers/button-group.js';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import angular from 'angular';
2
3
  import classNames from 'classnames';
3
4
  import RingAngularComponent from '../global/ring-angular-component.js';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import { PureComponent, InputHTMLAttributes, CSSProperties, Ref } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  export interface CheckboxProps extends InputHTMLAttributes<HTMLInputElement> {
@@ -1,4 +1,5 @@
1
1
  import { _ as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'focus-visible';
2
3
  import React, { PureComponent } from 'react';
3
4
  import PropTypes from 'prop-types';
4
5
  import classNames from 'classnames';
@@ -1,3 +1,4 @@
1
+ import 'focus-visible';
1
2
  import angular from 'angular';
2
3
  import checkmarkIcon from '@jetbrains/icons/checkmark-14px';
3
4
  import IconNG from '../icon-ng/icon-ng.js';
@@ -22,12 +22,12 @@ import '../global/dom.js';
22
22
  import '../popup/popup.target.js';
23
23
  import '../_helpers/dialog__body-scroll-preventer.js';
24
24
  import 'scrollbar-width';
25
+ import 'focus-visible';
25
26
  import '../island/adaptive-island-hoc.js';
26
27
  import '../global/linear-function.js';
27
28
  import '../_helpers/island.js';
28
29
  import 'element-resize-detector';
29
30
  import '../global/schedule-raf.js';
30
- import 'focus-visible';
31
31
  import '@jetbrains/icons/chevron-10px';
32
32
  import '../icon/icon.js';
33
33
  import 'util-deprecate';
@@ -11,6 +11,7 @@ import '../_helpers/_rollupPluginBabelHelpers.js';
11
11
  import 'classnames';
12
12
  import '@jetbrains/icons/close';
13
13
  import '../island/island.js';
14
+ import 'focus-visible';
14
15
  import '../global/data-tests.js';
15
16
  import '../island/adaptive-island-hoc.js';
16
17
  import '../global/linear-function.js';
@@ -28,7 +29,6 @@ import 'sniffr';
28
29
  import '../tab-trap/tab-trap.js';
29
30
  import '../global/dom.js';
30
31
  import '../button/button.js';
31
- import 'focus-visible';
32
32
  import '@jetbrains/icons/chevron-10px';
33
33
  import '../icon/icon.js';
34
34
  import 'util-deprecate';
@@ -9,6 +9,7 @@ import '../_helpers/_rollupPluginBabelHelpers.js';
9
9
  import 'classnames';
10
10
  import '@jetbrains/icons/close';
11
11
  import '../island/island.js';
12
+ import 'focus-visible';
12
13
  import '../global/data-tests.js';
13
14
  import '../island/adaptive-island-hoc.js';
14
15
  import '../global/linear-function.js';
@@ -26,7 +27,6 @@ import 'sniffr';
26
27
  import '../tab-trap/tab-trap.js';
27
28
  import '../global/dom.js';
28
29
  import '../button/button.js';
29
- import 'focus-visible';
30
30
  import '@jetbrains/icons/chevron-10px';
31
31
  import '../icon/icon.js';
32
32
  import 'util-deprecate';
@@ -8,6 +8,7 @@ import '../global/prop-types.js';
8
8
  export { T as default } from '../_helpers/title.js';
9
9
  import '../_helpers/_rollupPluginBabelHelpers.js';
10
10
  import '../global/composeRefs.js';
11
+ import 'focus-visible';
11
12
  import '@jetbrains/icons/checkmark-14px';
12
13
  import '@jetbrains/icons/remove-14px';
13
14
  import '../icon/icon.js';
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import PropTypes from 'prop-types';
3
2
  import { MonthsProps } from './consts';
4
3
  declare function MonthNames(props: MonthsProps): JSX.Element;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import PropTypes from 'prop-types';
3
2
  import { MonthsProps } from './consts';
4
3
  export interface MonthProps extends MonthsProps {
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import PropTypes from 'prop-types';
3
2
  import { MonthsProps } from './consts';
4
3
  declare function Months(props: MonthsProps): JSX.Element;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import type { Locale } from 'date-fns';
3
2
  import PropTypes from 'prop-types';
4
3
  interface WeekdaysProps {