@jetbrains/ring-ui-built 7.0.115 → 8.0.0-beta.3

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 (189) hide show
  1. package/components/_helpers/anchor.js +1 -1
  2. package/components/_helpers/avatar-info.js +1 -1
  3. package/components/_helpers/icon-svg.js +1 -1
  4. package/components/_helpers/legacy-table.js +3 -0
  5. package/components/_helpers/tab-link.js +1 -1
  6. package/components/_helpers/table.js +2 -2
  7. package/components/_helpers/theme.js +49 -37
  8. package/components/alert/alert.js +1 -1
  9. package/components/alert-service/alert-service.js +1 -1
  10. package/components/auth/auth-core.js +1 -1
  11. package/components/auth/auth.js +1 -1
  12. package/components/auth/down-notification.js +1 -1
  13. package/components/auth/iframe-flow.js +1 -1
  14. package/components/auth/storage.js +1 -1
  15. package/components/auth-dialog/auth-dialog.js +1 -1
  16. package/components/auth-dialog-service/auth-dialog-service.js +2 -2
  17. package/components/avatar/avatar-info.js +1 -1
  18. package/components/avatar/avatar.js +1 -1
  19. package/components/avatar/fallback-avatar.js +1 -1
  20. package/components/avatar-stack/avatar-stack.js +1 -1
  21. package/components/banner/banner.js +1 -1
  22. package/components/button/button.js +1 -1
  23. package/components/button-group/button-group.js +1 -1
  24. package/components/checkbox/checkbox.js +1 -1
  25. package/components/clipboard/clipboard.js +1 -1
  26. package/components/collapse/collapse-content.js +5 -5
  27. package/components/collapse/collapse-control.js +5 -5
  28. package/components/collapse/collapse.js +4 -4
  29. package/components/confirm/confirm.js +1 -1
  30. package/components/confirm-service/confirm-service.js +2 -2
  31. package/components/contenteditable/contenteditable.js +1 -1
  32. package/components/control-help/control-help.js +1 -1
  33. package/components/control-label/control-label.js +1 -1
  34. package/components/data-list/data-list.d.ts +4 -4
  35. package/components/data-list/data-list.js +3 -3
  36. package/components/data-list/data-list.mock.d.ts +1 -1
  37. package/components/data-list/data-list.mock.js +1 -1
  38. package/components/data-list/item.d.ts +1 -1
  39. package/components/data-list/item.js +1 -1
  40. package/components/data-list/selection.d.ts +1 -1
  41. package/components/data-list/selection.js +2 -2
  42. package/components/data-list/title.js +1 -1
  43. package/components/date-picker/date-input.js +1 -1
  44. package/components/date-picker/date-picker.js +2 -3
  45. package/components/date-picker/date-popup.js +2 -3
  46. package/components/date-picker/month-names.js +1 -1
  47. package/components/date-picker/month-slider.js +1 -1
  48. package/components/date-picker/month.d.ts +0 -2
  49. package/components/date-picker/month.js +17 -18
  50. package/components/date-picker/months.js +43 -35
  51. package/components/date-picker/use-intersection-observer.js +1 -1
  52. package/components/date-picker/use-scroll-behavior.js +45 -44
  53. package/components/date-picker/weekdays.js +1 -1
  54. package/components/date-picker/years.js +61 -54
  55. package/components/dialog/dialog.d.ts +2 -2
  56. package/components/dialog/dialog.js +3 -3
  57. package/components/dropdown/anchor.js +1 -1
  58. package/components/dropdown/dropdown.js +1 -1
  59. package/components/dropdown-menu/dropdown-menu.d.ts +4 -4
  60. package/components/dropdown-menu/dropdown-menu.js +62 -57
  61. package/components/editable-heading/editable-heading.d.ts +1 -2
  62. package/components/editable-heading/editable-heading.js +13 -12
  63. package/components/error-bubble/error-bubble.js +1 -1
  64. package/components/error-message/error-message.js +1 -1
  65. package/components/expand/collapsible-group.d.ts +5 -1
  66. package/components/expand/collapsible-group.js +15 -14
  67. package/components/footer/footer.js +1 -1
  68. package/components/global/create-stateful-context.js +11 -11
  69. package/components/global/intersection-observer-context.d.ts +26 -0
  70. package/components/global/intersection-observer-context.js +140 -0
  71. package/components/global/rerender-hoc.d.ts +4 -2
  72. package/components/global/rerender-hoc.js +10 -24
  73. package/components/{table/selection.d.ts → global/table-selection.d.ts} +15 -15
  74. package/components/{table/selection.js → global/table-selection.js} +4 -4
  75. package/components/global/theme.d.ts +4 -3
  76. package/components/global/theme.js +1 -1
  77. package/components/header/header-icon.js +1 -1
  78. package/components/header/header.js +1 -1
  79. package/components/header/links.js +1 -1
  80. package/components/header/logo.js +1 -1
  81. package/components/header/profile.js +1 -1
  82. package/components/header/services.js +1 -1
  83. package/components/header/smart-profile.js +1 -1
  84. package/components/header/smart-services.js +1 -1
  85. package/components/heading/heading.js +1 -1
  86. package/components/i18n/i18n-context.js +4 -4
  87. package/components/icon/icon-svg.js +1 -1
  88. package/components/icon/icon.js +1 -1
  89. package/components/icon/index.js +1 -1
  90. package/components/input/input.js +1 -1
  91. package/components/island/adaptive-island-hoc.js +3 -3
  92. package/components/island/content.d.ts +7 -2
  93. package/components/island/content.js +27 -18
  94. package/components/island/header.js +1 -1
  95. package/components/island/island.js +1 -1
  96. package/components/{table → legacy-table}/cell.js +1 -1
  97. package/components/{table → legacy-table}/header-cell.js +4 -4
  98. package/components/{table → legacy-table}/header.js +2 -2
  99. package/components/{table → legacy-table}/multitable.d.ts +1 -1
  100. package/components/{table → legacy-table}/row-with-focus-sensor.js +2 -2
  101. package/components/{table → legacy-table}/row.js +4 -4
  102. package/components/legacy-table/selection-adapter.d.ts +6 -0
  103. package/components/{table → legacy-table}/selection-shortcuts-hoc.d.ts +5 -5
  104. package/components/{table → legacy-table}/simple-table.d.ts +2 -2
  105. package/components/{table → legacy-table}/simple-table.js +4 -4
  106. package/components/{table → legacy-table}/smart-table.d.ts +5 -5
  107. package/components/{table → legacy-table}/smart-table.js +5 -5
  108. package/components/legacy-table/table.d.ts +109 -0
  109. package/components/legacy-table/table.js +369 -0
  110. package/components/list/list-item.js +1 -1
  111. package/components/list/list-users-groups-source.js +1 -1
  112. package/components/list/list.js +1 -1
  113. package/components/login-dialog/login-dialog.js +1 -1
  114. package/components/login-dialog/service.js +2 -2
  115. package/components/message/message.js +1 -1
  116. package/components/old-browsers-message/white-list.js +2 -2
  117. package/components/pager/pager.js +1 -1
  118. package/components/popup/popup.js +1 -1
  119. package/components/popup/popup.target.d.ts +3 -2
  120. package/components/popup/popup.target.js +32 -28
  121. package/components/popup-menu/popup-menu.js +1 -1
  122. package/components/query-assist/query-assist-suggestions.js +1 -1
  123. package/components/query-assist/query-assist.d.ts +3 -1
  124. package/components/query-assist/query-assist.js +2 -2
  125. package/components/radio/radio-item.d.ts +3 -3
  126. package/components/radio/radio-item.js +32 -18
  127. package/components/radio/radio.d.ts +2 -2
  128. package/components/radio/radio.js +2 -2
  129. package/components/scrollable-section/scrollable-section.js +1 -1
  130. package/components/select/chevron-button.js +1 -1
  131. package/components/select/select-filter.js +1 -1
  132. package/components/select/select-popup.js +1 -1
  133. package/components/select/select.d.ts +3 -1
  134. package/components/select/select.js +1 -1
  135. package/components/slider/slider.js +100 -96
  136. package/components/storage/storage-local.js +1 -1
  137. package/components/storage/storage.js +1 -1
  138. package/components/style.css +1 -1
  139. package/components/tab-trap/tab-trap.d.ts +3 -3
  140. package/components/tab-trap/tab-trap.js +83 -80
  141. package/components/table/default-item-renderer.d.ts +36 -0
  142. package/components/table/default-item-renderer.js +182 -0
  143. package/components/table/table-component.d.ts +80 -0
  144. package/components/table/table-component.js +290 -0
  145. package/components/table/table-const.d.ts +8 -0
  146. package/components/table/table-const.js +11 -0
  147. package/components/table/table-primitives.d.ts +28 -0
  148. package/components/table/table-primitives.js +323 -0
  149. package/components/table/table-row-focus.d.ts +4 -0
  150. package/components/table/table-row-focus.js +41 -0
  151. package/components/table/table-virtualize.d.ts +32 -0
  152. package/components/table/table-virtualize.js +329 -0
  153. package/components/table/table.d.ts +206 -104
  154. package/components/table/table.js +19 -362
  155. package/components/tabs/collapsible-more.js +1 -1
  156. package/components/tabs/collapsible-tab.js +1 -1
  157. package/components/tabs/collapsible-tabs.js +1 -1
  158. package/components/tabs/dumb-tabs.js +1 -1
  159. package/components/tabs/smart-tabs.js +1 -1
  160. package/components/tabs/tab-link.js +1 -1
  161. package/components/tabs/tabs.js +1 -1
  162. package/components/tag/tag.js +1 -1
  163. package/components/tags-input/tags-input.d.ts +3 -1
  164. package/components/tags-input/tags-input.js +1 -1
  165. package/components/tags-list/tags-list.js +1 -1
  166. package/components/toggle/toggle.js +1 -1
  167. package/components/tooltip/tooltip.js +2 -2
  168. package/components/upload/upload.d.ts +4 -3
  169. package/components/upload/upload.js +7 -29
  170. package/components/user-agreement/service.js +2 -2
  171. package/components/user-agreement/user-agreement.js +1 -1
  172. package/components/user-card/card.js +1 -1
  173. package/components/user-card/smart-user-card-tooltip.js +1 -1
  174. package/components/user-card/tooltip.js +1 -1
  175. package/components/user-card/user-card.js +1 -1
  176. package/package.json +6 -6
  177. package/components/global/use-event-callback.d.ts +0 -1
  178. package/components/global/use-event-callback.js +0 -44
  179. package/components/table/selection-adapter.d.ts +0 -6
  180. /package/components/{table → legacy-table}/cell.d.ts +0 -0
  181. /package/components/{table → legacy-table}/disable-hover-hoc.d.ts +0 -0
  182. /package/components/{table → legacy-table}/disable-hover-hoc.js +0 -0
  183. /package/components/{table → legacy-table}/header-cell.d.ts +0 -0
  184. /package/components/{table → legacy-table}/header.d.ts +0 -0
  185. /package/components/{table → legacy-table}/multitable.js +0 -0
  186. /package/components/{table → legacy-table}/row-with-focus-sensor.d.ts +0 -0
  187. /package/components/{table → legacy-table}/row.d.ts +0 -0
  188. /package/components/{table → legacy-table}/selection-adapter.js +0 -0
  189. /package/components/{table → legacy-table}/selection-shortcuts-hoc.js +0 -0
@@ -0,0 +1,140 @@
1
+ import { c } from 'react/compiler-runtime';
2
+ import { useState, useEffect, use, createContext } from 'react';
3
+
4
+ /**
5
+ * Usage:
6
+ *
7
+ * ```tsx
8
+ * <IntersectionObserverContext value={useIntersectionObserverHandle()}>
9
+ * <YourComponent />
10
+ * </IntersectionObserverContext>
11
+ *
12
+ * function YourComponent() {
13
+ * // Contains the current isIntersecting value
14
+ * const isIntersecting = useIsIntersecting(elementRef);
15
+ * // Or, to get updates instead:
16
+ * useIsIntersectingListener(elementRef, newIsIntersecting => {
17
+ * // ...
18
+ * })
19
+ * }
20
+ * ```
21
+ */
22
+ const IntersectionObserverContext = /*#__PURE__*/createContext(null);
23
+ function useIntersectionObserverHandle(rootRef, rootMargin, scrollMargin) {
24
+ const $ = c(6);
25
+ if ($[0] !== "dfabcb1b8108e1a7f2a2e74a1ab9f1d1069e1f7ab04eda46b950789426c929c9") {
26
+ for (let $i = 0; $i < 6; $i += 1) {
27
+ $[$i] = Symbol.for("react.memo_cache_sentinel");
28
+ }
29
+ $[0] = "dfabcb1b8108e1a7f2a2e74a1ab9f1d1069e1f7ab04eda46b950789426c929c9";
30
+ }
31
+ const [handle, setHandle] = useState(null);
32
+ let t0;
33
+ let t1;
34
+ if ($[1] !== rootMargin || $[2] !== rootRef || $[3] !== scrollMargin) {
35
+ t0 = () => {
36
+ const root = rootRef?.current;
37
+ const elementToOnChange = new Map();
38
+ const observer = new IntersectionObserver(entries => {
39
+ for (const entry of entries) {
40
+ const onChange = elementToOnChange.get(entry.target);
41
+ onChange?.(entry.isIntersecting);
42
+ }
43
+ }, {
44
+ root,
45
+ rootMargin: rootMargin != null ? `${rootMargin}px` : undefined,
46
+ scrollMargin: scrollMargin != null ? `${scrollMargin}px` : undefined
47
+ });
48
+ setHandle({
49
+ observe(element, onChange_0) {
50
+ elementToOnChange.set(element, onChange_0);
51
+ observer.observe(element);
52
+ return () => {
53
+ elementToOnChange.delete(element);
54
+ observer.unobserve(element);
55
+ };
56
+ }
57
+ });
58
+ return () => {
59
+ observer.disconnect();
60
+ setHandle(null);
61
+ };
62
+ };
63
+ t1 = [rootRef, rootMargin, scrollMargin];
64
+ $[1] = rootMargin;
65
+ $[2] = rootRef;
66
+ $[3] = scrollMargin;
67
+ $[4] = t0;
68
+ $[5] = t1;
69
+ } else {
70
+ t0 = $[4];
71
+ t1 = $[5];
72
+ }
73
+ useEffect(t0, t1);
74
+ return handle;
75
+ }
76
+ function useIsIntersecting(elementRef) {
77
+ const $ = c(5);
78
+ if ($[0] !== "dfabcb1b8108e1a7f2a2e74a1ab9f1d1069e1f7ab04eda46b950789426c929c9") {
79
+ for (let $i = 0; $i < 5; $i += 1) {
80
+ $[$i] = Symbol.for("react.memo_cache_sentinel");
81
+ }
82
+ $[0] = "dfabcb1b8108e1a7f2a2e74a1ab9f1d1069e1f7ab04eda46b950789426c929c9";
83
+ }
84
+ const handle = use(IntersectionObserverContext);
85
+ const [isIntersecting, setIsIntersecting] = useState(false);
86
+ let t0;
87
+ let t1;
88
+ if ($[1] !== elementRef || $[2] !== handle) {
89
+ t0 = () => {
90
+ const element = elementRef.current;
91
+ if (!element || !handle) {
92
+ return;
93
+ }
94
+ return handle.observe(element, setIsIntersecting);
95
+ };
96
+ t1 = [handle, elementRef, setIsIntersecting];
97
+ $[1] = elementRef;
98
+ $[2] = handle;
99
+ $[3] = t0;
100
+ $[4] = t1;
101
+ } else {
102
+ t0 = $[3];
103
+ t1 = $[4];
104
+ }
105
+ useEffect(t0, t1);
106
+ return isIntersecting;
107
+ }
108
+ function useIsIntersectingListener(elementRef, onChange) {
109
+ const $ = c(6);
110
+ if ($[0] !== "dfabcb1b8108e1a7f2a2e74a1ab9f1d1069e1f7ab04eda46b950789426c929c9") {
111
+ for (let $i = 0; $i < 6; $i += 1) {
112
+ $[$i] = Symbol.for("react.memo_cache_sentinel");
113
+ }
114
+ $[0] = "dfabcb1b8108e1a7f2a2e74a1ab9f1d1069e1f7ab04eda46b950789426c929c9";
115
+ }
116
+ const handle = use(IntersectionObserverContext);
117
+ let t0;
118
+ let t1;
119
+ if ($[1] !== elementRef || $[2] !== handle || $[3] !== onChange) {
120
+ t0 = () => {
121
+ const element = elementRef.current;
122
+ if (!element || !handle) {
123
+ return;
124
+ }
125
+ return handle.observe(element, onChange);
126
+ };
127
+ t1 = [handle, elementRef, onChange];
128
+ $[1] = elementRef;
129
+ $[2] = handle;
130
+ $[3] = onChange;
131
+ $[4] = t0;
132
+ $[5] = t1;
133
+ } else {
134
+ t0 = $[4];
135
+ t1 = $[5];
136
+ }
137
+ useEffect(t0, t1);
138
+ }
139
+
140
+ export { IntersectionObserverContext, useIntersectionObserverHandle, useIsIntersecting, useIsIntersectingListener };
@@ -1,4 +1,4 @@
1
- import { Component, type PropsWithoutRef } from 'react';
1
+ import { Component, type Ref, type PropsWithoutRef } from 'react';
2
2
  export interface RerenderableComponent<P, S> extends Component<P, S> {
3
3
  node?: HTMLElement | null;
4
4
  }
@@ -7,4 +7,6 @@ export interface RerenderableComponentClass<P, S> {
7
7
  }
8
8
  export default function rerenderHOC<P extends {}, C extends Component<P, unknown>>(ComposedComponent: {
9
9
  new (props: P): C;
10
- }): import("react").ForwardRefExoticComponent<PropsWithoutRef<P> & import("react").RefAttributes<C>>;
10
+ }): ({ ref, ...props }: PropsWithoutRef<P> & {
11
+ ref?: Ref<C>;
12
+ }) => import("react").JSX.Element;
@@ -1,5 +1,4 @@
1
- import { c } from 'react-compiler-runtime';
2
- import { forwardRef, Component } from 'react';
1
+ import { Component } from 'react';
3
2
  import { createComposedRef } from './compose-refs.js';
4
3
  import { jsx } from 'react/jsx-runtime';
5
4
  import 'memoize-one';
@@ -19,28 +18,15 @@ function rerenderHOC(ComposedComponent) {
19
18
  });
20
19
  }
21
20
  }
22
- return /*#__PURE__*/forwardRef(function RerendererForwardRef(props, ref) {
23
- const $ = c(4);
24
- if ($[0] !== "ac36aeaece54c7d00df3e23ff1d0deb675c0bc1bf4659806ffc7c8497029aeb7") {
25
- for (let $i = 0; $i < 4; $i += 1) {
26
- $[$i] = Symbol.for("react.memo_cache_sentinel");
27
- }
28
- $[0] = "ac36aeaece54c7d00df3e23ff1d0deb675c0bc1bf4659806ffc7c8497029aeb7";
29
- }
30
- let t0;
31
- if ($[1] !== props || $[2] !== ref) {
32
- t0 = /*#__PURE__*/jsx(Rerenderer, {
33
- props: props,
34
- forwardedRef: ref
35
- });
36
- $[1] = props;
37
- $[2] = ref;
38
- $[3] = t0;
39
- } else {
40
- t0 = $[3];
41
- }
42
- return t0;
43
- });
21
+ return function RerendererForwardRef({
22
+ ref,
23
+ ...props
24
+ }) {
25
+ return /*#__PURE__*/jsx(Rerenderer, {
26
+ props: props,
27
+ forwardedRef: ref !== null && ref !== void 0 ? ref : null
28
+ });
29
+ };
44
30
  }
45
31
 
46
32
  export { rerenderHOC as default };
@@ -4,7 +4,7 @@
4
4
  export interface SelectionItem {
5
5
  id: string | number;
6
6
  }
7
- export interface TableSelectionConfig<T extends object> {
7
+ export interface TableSelectionConfig<T> {
8
8
  data?: readonly T[] | undefined;
9
9
  selected?: Set<T> | undefined;
10
10
  focused?: T | null | undefined;
@@ -17,7 +17,7 @@ export interface CloneWithConfig<T> {
17
17
  selected?: Set<T> | readonly T[] | null | undefined;
18
18
  focused?: T | null | undefined;
19
19
  }
20
- export default class Selection<T extends object> {
20
+ export default class TableSelection<T> {
21
21
  protected _rawData: readonly T[];
22
22
  protected _getChildren: (item: T) => readonly T[];
23
23
  protected _data: Set<T>;
@@ -28,19 +28,19 @@ export default class Selection<T extends object> {
28
28
  constructor({ data, selected, focused, getKey, getChildren, isItemSelectable, }?: TableSelectionConfig<T>);
29
29
  protected _buildData(data: readonly T[] | null | undefined): Set<T>;
30
30
  protected _buildSelected(data: Set<T>, selected: Set<T>): Set<T>;
31
- cloneWith({ data, selected, focused }: CloneWithConfig<T>): Selection<T>;
32
- focus(value: T | null | undefined): Selection<T>;
33
- moveUp(): Selection<T> | undefined;
34
- moveDown(): Selection<T> | undefined;
35
- moveStart(): Selection<T> | undefined;
36
- moveEnd(): Selection<T> | undefined;
37
- select(value?: T | null): Selection<T>;
38
- deselect(value?: T | null): Selection<T>;
39
- toggleSelection(value?: T | null): Selection<T>;
40
- selectAll(): Selection<T>;
41
- resetFocus(): Selection<T>;
42
- resetSelection(): Selection<T>;
43
- reset(): Selection<T>;
31
+ cloneWith({ data, selected, focused }: CloneWithConfig<T>): TableSelection<T>;
32
+ focus(value: T | null | undefined): TableSelection<T>;
33
+ moveUp(): TableSelection<T> | undefined;
34
+ moveDown(): TableSelection<T> | undefined;
35
+ moveStart(): TableSelection<T> | undefined;
36
+ moveEnd(): TableSelection<T> | undefined;
37
+ select(value?: T | null): TableSelection<T>;
38
+ deselect(value?: T | null): TableSelection<T>;
39
+ toggleSelection(value?: T | null): TableSelection<T>;
40
+ selectAll(): TableSelection<T>;
41
+ resetFocus(): TableSelection<T>;
42
+ resetSelection(): TableSelection<T>;
43
+ reset(): TableSelection<T>;
44
44
  isFocused(value: T | null): boolean;
45
45
  isSelected(value: T | null): boolean;
46
46
  getFocused(): T | null;
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @deprecated SelectionItem is deprecated. Use your own item type and provide a `getKey` function instead if there is no `id` identifier in your item type.
3
3
  */
4
- let Selection$1 = class Selection {
4
+ class TableSelection {
5
5
  _rawData;
6
6
  _getChildren;
7
7
  _data;
@@ -15,7 +15,7 @@ let Selection$1 = class Selection {
15
15
  focused = null,
16
16
  getKey = item => {
17
17
  // Default behavior stays backward compatible: use item's "id" if present
18
- if ('id' in item) {
18
+ if (item && typeof item === 'object' && 'id' in item) {
19
19
  return item.id;
20
20
  }
21
21
  // If there's no id provided on item and no getKey supplied, fail fast with a clear message
@@ -185,6 +185,6 @@ let Selection$1 = class Selection {
185
185
  }
186
186
  return new Set();
187
187
  }
188
- };
188
+ }
189
189
 
190
- export { Selection$1 as default };
190
+ export { TableSelection as default };
@@ -1,4 +1,4 @@
1
- import { type HTMLAttributes, type ReactElement, type FunctionComponent } from 'react';
1
+ import { type HTMLAttributes, type Ref, type ReactElement, type FunctionComponent } from 'react';
2
2
  declare enum Theme {
3
3
  AUTO = "auto",
4
4
  LIGHT = "light",
@@ -18,11 +18,12 @@ export interface WithThemeClassesProps {
18
18
  export declare function WithThemeClasses({ theme, children }: WithThemeClassesProps): ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
19
19
  export declare function applyTheme(theme: Theme.DARK | Theme.LIGHT, container: HTMLElement): void;
20
20
  type WrapperType = FunctionComponent<HTMLAttributes<HTMLElement> & React.RefAttributes<HTMLElement>>;
21
- export interface ThemeProviderProps extends HTMLAttributes<HTMLDivElement> {
21
+ export interface ThemeProviderProps extends HTMLAttributes<HTMLElement> {
22
+ ref?: Ref<HTMLElement>;
22
23
  theme?: Theme;
23
24
  passToPopups?: boolean;
24
25
  WrapperComponent?: WrapperType;
25
26
  target?: HTMLElement;
26
27
  }
27
- export declare const ThemeProvider: import("react").ForwardRefExoticComponent<ThemeProviderProps & import("react").RefAttributes<HTMLElement>>;
28
+ export declare function ThemeProvider({ ref, ...props }: ThemeProviderProps): import("react").JSX.Element;
28
29
  export default Theme;
@@ -1,4 +1,4 @@
1
- import 'react-compiler-runtime';
1
+ import 'react/compiler-runtime';
2
2
  import 'react';
3
3
  import 'classnames';
4
4
  export { G as GLOBAL_DARK_CLASS_NAME, a as ThemeContext, b as ThemeProvider, W as WithThemeClasses, c as applyTheme, T as default, u as useTheme, e as useThemeClasses } from '../_helpers/theme.js';
@@ -9,7 +9,7 @@ import 'util-deprecate';
9
9
  import '../icon/icon.js';
10
10
  import '../icon/icon.constants.js';
11
11
  import '../_helpers/icon-svg.js';
12
- import 'react-compiler-runtime';
12
+ import 'react/compiler-runtime';
13
13
  import '../global/memoize.js';
14
14
  import '../link/clickable-link.js';
15
15
  import '../global/controls-height.js';
@@ -10,7 +10,7 @@ export { default as Profile } from './profile.js';
10
10
  export { default as SmartProfile } from './smart-profile.js';
11
11
  export { default as Services } from './services.js';
12
12
  export { default as SmartServices } from './smart-services.js';
13
- import 'react-compiler-runtime';
13
+ import 'react/compiler-runtime';
14
14
  import '../icon/icon.js';
15
15
  import 'util-deprecate';
16
16
  import '../icon/icon.constants.js';
@@ -1,4 +1,4 @@
1
- import { c } from 'react-compiler-runtime';
1
+ import { c } from 'react/compiler-runtime';
2
2
  import classNames from 'classnames';
3
3
  import ScrollableSection from '../scrollable-section/scrollable-section.js';
4
4
  import { s as styles } from '../_helpers/header.js';
@@ -6,7 +6,7 @@ import { jsx } from 'react/jsx-runtime';
6
6
  import { Size } from '../icon/icon.constants.js';
7
7
  import 'util-deprecate';
8
8
  import '../_helpers/icon-svg.js';
9
- import 'react-compiler-runtime';
9
+ import 'react/compiler-runtime';
10
10
  import '../global/memoize.js';
11
11
 
12
12
  class Logo extends PureComponent {
@@ -15,7 +15,7 @@ import '../global/url.js';
15
15
  import '../global/dom.js';
16
16
  import '../global/memoize.js';
17
17
  import '../avatar/fallback-avatar.js';
18
- import 'react-compiler-runtime';
18
+ import 'react/compiler-runtime';
19
19
  import '../global/get-uid.js';
20
20
  import '../_helpers/avatar-info.js';
21
21
  import '@jetbrains/icons/chevron-down';
@@ -10,7 +10,7 @@ import { jsx, jsxs } from 'react/jsx-runtime';
10
10
  import '../global/data-tests.js';
11
11
  import '../global/typescript-utils.js';
12
12
  import '../_helpers/anchor.js';
13
- import 'react-compiler-runtime';
13
+ import 'react/compiler-runtime';
14
14
  import '../button/button.js';
15
15
  import '@jetbrains/icons/chevron-down';
16
16
  import '@jetbrains/icons/chevron-12px-down';
@@ -16,7 +16,7 @@ import '../icon/icon.js';
16
16
  import 'util-deprecate';
17
17
  import '../icon/icon.constants.js';
18
18
  import '../_helpers/icon-svg.js';
19
- import 'react-compiler-runtime';
19
+ import 'react/compiler-runtime';
20
20
  import '../global/memoize.js';
21
21
  import '../loader-inline/loader-inline.js';
22
22
  import '../global/data-tests.js';
@@ -9,7 +9,7 @@ import '../dropdown/dropdown.js';
9
9
  import '../global/data-tests.js';
10
10
  import '../global/typescript-utils.js';
11
11
  import '../_helpers/anchor.js';
12
- import 'react-compiler-runtime';
12
+ import 'react/compiler-runtime';
13
13
  import '../button/button.js';
14
14
  import '@jetbrains/icons/chevron-down';
15
15
  import '@jetbrains/icons/chevron-12px-down';
@@ -1,4 +1,4 @@
1
- import { c } from 'react-compiler-runtime';
1
+ import { c } from 'react/compiler-runtime';
2
2
  import { memo, useEffect } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import deprecate from 'util-deprecate';
@@ -1,4 +1,4 @@
1
- import { c } from 'react-compiler-runtime';
1
+ import { c } from 'react/compiler-runtime';
2
2
  import * as React from 'react';
3
3
  import { useEffect } from 'react';
4
4
  import { translate, getTranslations, setTranslations } from './i18n.js';
@@ -10,11 +10,11 @@ const I18nContext = /*#__PURE__*/React.createContext({
10
10
  });
11
11
  const I18nContextHolder = t0 => {
12
12
  const $ = c(9);
13
- if ($[0] !== "4fad998682170be27811243d88e42f31c504dd0399035c12efa95d91c74b2a8d") {
13
+ if ($[0] !== "a2018c2c34e104bb25f29b4f924dc1f30d92611151a999bc264d56ee3cdb5c56") {
14
14
  for (let $i = 0; $i < 9; $i += 1) {
15
15
  $[$i] = Symbol.for("react.memo_cache_sentinel");
16
16
  }
17
- $[0] = "4fad998682170be27811243d88e42f31c504dd0399035c12efa95d91c74b2a8d";
17
+ $[0] = "a2018c2c34e104bb25f29b4f924dc1f30d92611151a999bc264d56ee3cdb5c56";
18
18
  }
19
19
  const {
20
20
  children,
@@ -48,7 +48,7 @@ const I18nContextHolder = t0 => {
48
48
  }
49
49
  let t4;
50
50
  if ($[6] !== children || $[7] !== t3) {
51
- t4 = /*#__PURE__*/jsx(I18nContext.Provider, {
51
+ t4 = /*#__PURE__*/jsx(I18nContext, {
52
52
  value: t3,
53
53
  children: children
54
54
  });
@@ -1,4 +1,4 @@
1
- import 'react-compiler-runtime';
1
+ import 'react/compiler-runtime';
2
2
  import 'react';
3
3
  import 'classnames';
4
4
  import '../global/memoize.js';
@@ -4,7 +4,7 @@ import deprecate from 'util-deprecate';
4
4
  import { Color, Size } from './icon.constants.js';
5
5
  import { s as styles, I as IconSVG } from '../_helpers/icon-svg.js';
6
6
  import { jsx } from 'react/jsx-runtime';
7
- import 'react-compiler-runtime';
7
+ import 'react/compiler-runtime';
8
8
  import '../global/memoize.js';
9
9
 
10
10
  const warnSize = deprecate(() => {}, `\`size\`, \`width\` and \`height\` props are not recommended to use in Ring UI \`Icon\` component. The intrinsic sizes of SVG icon (\`width\` and \`height\` SVG attributes) are used instead.
@@ -4,6 +4,6 @@ import 'react';
4
4
  import 'classnames';
5
5
  import 'util-deprecate';
6
6
  import '../_helpers/icon-svg.js';
7
- import 'react-compiler-runtime';
7
+ import 'react/compiler-runtime';
8
8
  import '../global/memoize.js';
9
9
  import 'react/jsx-runtime';
@@ -18,7 +18,7 @@ import '../link/clickable-link.js';
18
18
  import '../_helpers/button.classes.js';
19
19
  import '../icon/icon.constants.js';
20
20
  import '../_helpers/icon-svg.js';
21
- import 'react-compiler-runtime';
21
+ import 'react/compiler-runtime';
22
22
  import '../global/memoize.js';
23
23
  import '../global/configuration.js';
24
24
  import '../i18n/i18n.js';
@@ -1,4 +1,4 @@
1
- import { createContext, Component } from 'react';
1
+ import { Component, createContext } from 'react';
2
2
  import { interpolateLinear } from '../global/linear-function.js';
3
3
  import { jsx } from 'react/jsx-runtime';
4
4
 
@@ -25,9 +25,9 @@ function adaptiveIslandHOC(ComposedComponent) {
25
25
  }
26
26
  };
27
27
  render() {
28
- return /*#__PURE__*/jsx(PhaseContext.Provider, {
28
+ return /*#__PURE__*/jsx(PhaseContext, {
29
29
  value: this.state.phase,
30
- children: /*#__PURE__*/jsx(ScrollHandlerContext.Provider, {
30
+ children: /*#__PURE__*/jsx(ScrollHandlerContext, {
31
31
  value: this.onContentScroll,
32
32
  children: /*#__PURE__*/jsx(ComposedComponent, {
33
33
  ...this.props
@@ -1,11 +1,13 @@
1
- import { Component, type HTMLAttributes } from 'react';
1
+ import { Component, type Ref, type HTMLAttributes } from 'react';
2
2
  import createResizeDetector from 'element-resize-detector';
3
3
  export interface IslandContentProps extends Omit<HTMLAttributes<HTMLElement>, 'onScroll'> {
4
+ ref?: Ref<Content>;
4
5
  fade?: boolean | null | undefined;
5
6
  onScrollToBottom?: (() => void) | null | undefined;
6
7
  scrollableWrapperClassName?: string | null | undefined;
7
8
  }
8
9
  export interface IslandContentInnerProps extends IslandContentProps {
10
+ ref?: Ref<Content>;
9
11
  onScroll: (node: HTMLElement) => void;
10
12
  bottomBorder: boolean;
11
13
  }
@@ -29,5 +31,8 @@ declare class Content extends Component<IslandContentInnerProps> {
29
31
  setScrollableNodeAndCalculatePosition: (node: HTMLElement | null) => void;
30
32
  render(): import("react").JSX.Element;
31
33
  }
32
- declare const ContentWrapper: import("react").ForwardRefExoticComponent<IslandContentProps & import("react").RefAttributes<Content>>;
34
+ declare const ContentWrapper: {
35
+ ({ ...props }: IslandContentProps): import("react").JSX.Element;
36
+ displayName: string;
37
+ };
33
38
  export default ContentWrapper;
@@ -1,5 +1,5 @@
1
- import { c } from 'react-compiler-runtime';
2
- import { forwardRef, Component } from 'react';
1
+ import { c } from 'react/compiler-runtime';
2
+ import { Component } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import createResizeDetector from 'element-resize-detector';
5
5
  import scheduleRAF from '../global/schedule-raf.js';
@@ -73,6 +73,7 @@ class Content extends Component {
73
73
  };
74
74
  render() {
75
75
  const {
76
+ ref,
76
77
  children,
77
78
  className,
78
79
  bottomBorder,
@@ -111,17 +112,27 @@ class Content extends Component {
111
112
  });
112
113
  }
113
114
  }
114
- const ContentWrapper = /*#__PURE__*/forwardRef((props, ref) => {
115
- const $ = c(4);
116
- if ($[0] !== "c32a71969444a48a67d8737ca30be3eaf2fe1249949706470667058a052ec377") {
117
- for (let $i = 0; $i < 4; $i += 1) {
115
+ const ContentWrapper = t0 => {
116
+ const $ = c(5);
117
+ if ($[0] !== "e4db06b946c16f75a9eac1dc4434adb1fda7cf8013533176d779915994c312c4") {
118
+ for (let $i = 0; $i < 5; $i += 1) {
118
119
  $[$i] = Symbol.for("react.memo_cache_sentinel");
119
120
  }
120
- $[0] = "c32a71969444a48a67d8737ca30be3eaf2fe1249949706470667058a052ec377";
121
+ $[0] = "e4db06b946c16f75a9eac1dc4434adb1fda7cf8013533176d779915994c312c4";
121
122
  }
122
- let t0;
123
- if ($[1] !== props || $[2] !== ref) {
124
- t0 = /*#__PURE__*/jsx(ScrollHandlerContext.Consumer, {
123
+ let props;
124
+ if ($[1] !== t0) {
125
+ ({
126
+ ...props
127
+ } = t0);
128
+ $[1] = t0;
129
+ $[2] = props;
130
+ } else {
131
+ props = $[2];
132
+ }
133
+ let t1;
134
+ if ($[3] !== props) {
135
+ t1 = /*#__PURE__*/jsx(ScrollHandlerContext.Consumer, {
125
136
  children: onScroll => {
126
137
  const addProps = onScroll ? {
127
138
  onScroll,
@@ -129,19 +140,17 @@ const ContentWrapper = /*#__PURE__*/forwardRef((props, ref) => {
129
140
  } : {};
130
141
  return /*#__PURE__*/jsx(Content, {
131
142
  ...props,
132
- ...addProps,
133
- ref: ref
143
+ ...addProps
134
144
  });
135
145
  }
136
146
  });
137
- $[1] = props;
138
- $[2] = ref;
139
- $[3] = t0;
147
+ $[3] = props;
148
+ $[4] = t1;
140
149
  } else {
141
- t0 = $[3];
150
+ t1 = $[4];
142
151
  }
143
- return t0;
144
- });
152
+ return t1;
153
+ };
145
154
  ContentWrapper.displayName = 'ContentWrapper';
146
155
 
147
156
  export { ContentWrapper as default };
@@ -1,4 +1,4 @@
1
- import { c } from 'react-compiler-runtime';
1
+ import { c } from 'react/compiler-runtime';
2
2
  import { Component } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import { interpolateLinear } from '../global/linear-function.js';
@@ -7,7 +7,7 @@ import { jsx } from 'react/jsx-runtime';
7
7
  export { default as Header } from './header.js';
8
8
  export { default as Content } from './content.js';
9
9
  import '../global/linear-function.js';
10
- import 'react-compiler-runtime';
10
+ import 'react/compiler-runtime';
11
11
  import 'element-resize-detector';
12
12
  import '../global/schedule-raf.js';
13
13
 
@@ -1,7 +1,7 @@
1
1
  import { PureComponent } from 'react';
2
2
  import classNames from 'classnames';
3
3
  import joinDataTestAttributes from '../global/data-tests.js';
4
- import { s as style } from '../_helpers/table.js';
4
+ import { s as style } from '../_helpers/legacy-table.js';
5
5
  import { jsx } from 'react/jsx-runtime';
6
6
 
7
7
  class Cell extends PureComponent {
@@ -1,15 +1,15 @@
1
1
  import { PureComponent } from 'react';
2
2
  import classNames from 'classnames';
3
- import sortableIcon from '@jetbrains/icons/unsorted-12px';
3
+ import unsortedIcon from '@jetbrains/icons/unsorted-12px';
4
4
  import chevron12pxDown from '@jetbrains/icons/chevron-12px-down';
5
5
  import Icon from '../icon/icon.js';
6
6
  import joinDataTestAttributes from '../global/data-tests.js';
7
- import { s as style } from '../_helpers/table.js';
7
+ import { s as style } from '../_helpers/legacy-table.js';
8
8
  import { jsxs, jsx } from 'react/jsx-runtime';
9
9
  import 'util-deprecate';
10
10
  import '../icon/icon.constants.js';
11
11
  import '../_helpers/icon-svg.js';
12
- import 'react-compiler-runtime';
12
+ import 'react/compiler-runtime';
13
13
  import '../global/memoize.js';
14
14
 
15
15
  class HeaderCell extends PureComponent {
@@ -46,7 +46,7 @@ class HeaderCell extends PureComponent {
46
46
  } = this.props;
47
47
  this.sortable = column.sortable === true;
48
48
  this.sorted = sortKey === column.id;
49
- const glyph = this.sorted ? chevron12pxDown : sortableIcon;
49
+ const glyph = this.sorted ? chevron12pxDown : unsortedIcon;
50
50
  const classes = classNames(className, column.headerClassName, {
51
51
  [style.headerCell]: true,
52
52
  [style.headerCellSortable]: this.sortable,
@@ -3,7 +3,7 @@ import classNames from 'classnames';
3
3
  import Checkbox from '../checkbox/checkbox.js';
4
4
  import getUID from '../global/get-uid.js';
5
5
  import HeaderCell from './header-cell.js';
6
- import { s as style } from '../_helpers/table.js';
6
+ import { s as style } from '../_helpers/legacy-table.js';
7
7
  import { jsx, jsxs } from 'react/jsx-runtime';
8
8
  import '@jetbrains/icons/checkmark-12px';
9
9
  import '@jetbrains/icons/remove-12px';
@@ -11,7 +11,7 @@ import '../icon/icon.js';
11
11
  import 'util-deprecate';
12
12
  import '../icon/icon.constants.js';
13
13
  import '../_helpers/icon-svg.js';
14
- import 'react-compiler-runtime';
14
+ import 'react/compiler-runtime';
15
15
  import '../global/memoize.js';
16
16
  import '../global/compose-refs.js';
17
17
  import 'memoize-one';