@vkontakte/vkui 8.2.3 → 8.3.1

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 (30) hide show
  1. package/dist/components/CalendarTime/ComboBox.d.ts.map +1 -1
  2. package/dist/components/CalendarTime/ComboBox.js +1 -0
  3. package/dist/components/CalendarTime/ComboBox.js.map +1 -1
  4. package/dist/components/View/ViewInfinite.js +27 -27
  5. package/dist/components/View/ViewInfinite.js.map +1 -1
  6. package/dist/components.css +1 -1
  7. package/dist/components.css.map +1 -1
  8. package/dist/cssm/components/CalendarTime/ComboBox.js +1 -0
  9. package/dist/cssm/components/CalendarTime/ComboBox.js.map +1 -1
  10. package/dist/cssm/components/FormField/FormField.module.css +9 -6
  11. package/dist/cssm/components/View/ViewInfinite.js +27 -27
  12. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  13. package/dist/cssm/hooks/useSnackbarManager/components/SnackbarHolder.js +1 -1
  14. package/dist/cssm/hooks/useSnackbarManager/components/SnackbarHolder.js.map +1 -1
  15. package/dist/cssm/index.js.map +1 -1
  16. package/dist/cssm/styles/themes.css +3 -0
  17. package/dist/hooks/useSnackbarManager/components/SnackbarHolder.js +1 -1
  18. package/dist/hooks/useSnackbarManager/components/SnackbarHolder.js.map +1 -1
  19. package/dist/index.d.ts +1 -0
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js.map +1 -1
  22. package/dist/vkui.css +1 -1
  23. package/dist/vkui.css.map +1 -1
  24. package/package.json +5 -4
  25. package/src/components/CalendarTime/ComboBox.tsx +1 -0
  26. package/src/components/FormField/FormField.module.css +9 -6
  27. package/src/components/FormField/FormField.module.css.d.ts.map +1 -1
  28. package/src/components/View/ViewInfinite.tsx +8 -8
  29. package/src/hooks/useSnackbarManager/components/SnackbarHolder.tsx +1 -1
  30. package/src/index.ts +1 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "type": "module",
3
- "version": "8.2.3",
3
+ "version": "8.3.1",
4
4
  "name": "@vkontakte/vkui",
5
5
  "description": "VKUI library",
6
6
  "module": "./dist/index.js",
@@ -87,16 +87,17 @@
87
87
  "react-dom": "^18.2.0 || ^19.0.0"
88
88
  },
89
89
  "dependencies": {
90
- "@swc/helpers": "^0.5.21",
91
- "@vkontakte/icons": "^3.0.0",
90
+ "@swc/helpers": "^0.5.23",
91
+ "@vkontakte/icons": "^3.58.0",
92
92
  "@vkontakte/vkjs": "^2.0.2",
93
93
  "@vkontakte/vkui-date-fns-tz": "^0.0.6",
94
94
  "@vkontakte/vkui-floating-ui": "^0.2.8"
95
95
  },
96
96
  "devDependencies": {
97
- "@biomejs/biome": "^2.4.15",
97
+ "@biomejs/biome": "^2.5.0",
98
98
  "@types/node": "*",
99
99
  "@types/postcss-import": "^14.0.3",
100
+ "@vkontakte/storybook-addons": "^1.0.1",
100
101
  "react": "^18.3.1",
101
102
  "react-dom": "^18.3.1",
102
103
  "size-limit": "^12.1.0",
@@ -178,6 +178,7 @@ export function ComboBox({
178
178
  autoUpdateOnTargetResize
179
179
  flipMiddlewareFallbackAxisSideDirection="none"
180
180
  offsetByMainAxis={0}
181
+ usePortal={false}
181
182
  >
182
183
  <CustomScrollView tabIndex={-1} className={styles.customScroll}>
183
184
  {labelsElements}
@@ -172,11 +172,14 @@
172
172
  /* [end] */
173
173
 
174
174
  .disabled {
175
- pointer-events: none;
176
- cursor: default;
175
+ cursor: not-allowed;
177
176
  opacity: var(--vkui--opacity_disable);
178
177
  }
179
178
 
179
+ .disabled > .scrollContainer {
180
+ pointer-events: none;
181
+ }
182
+
180
183
  /**
181
184
  * CMP:
182
185
  * NativeSelect
@@ -210,7 +213,7 @@
210
213
  /* stylelint-disable-next-line selector-pseudo-class-disallowed-list */
211
214
  :global(
212
215
  .vkuiInternalFormLayoutGroup--segmented.vkuiInternalFormLayoutGroup--mode-horizontal
213
- .vkuiInternalFormItem
216
+ .vkuiInternalFormItem
214
217
  ):first-of-type
215
218
  .host {
216
219
  border-start-start-radius: var(--vkui--size_border_radius--regular);
@@ -220,7 +223,7 @@
220
223
  /* stylelint-disable-next-line selector-pseudo-class-disallowed-list */
221
224
  :global(
222
225
  .vkuiInternalFormLayoutGroup--segmented.vkuiInternalFormLayoutGroup--mode-horizontal
223
- .vkuiInternalFormItem
226
+ .vkuiInternalFormItem
224
227
  ):last-of-type
225
228
  .host {
226
229
  border-start-end-radius: var(--vkui--size_border_radius--regular);
@@ -230,7 +233,7 @@
230
233
  /* stylelint-disable-next-line selector-pseudo-class-disallowed-list */
231
234
  :global(
232
235
  .vkuiInternalFormLayoutGroup--segmented.vkuiInternalFormLayoutGroup--mode-vertical
233
- .vkuiInternalFormItem
236
+ .vkuiInternalFormItem
234
237
  ):first-of-type
235
238
  .host {
236
239
  border-start-start-radius: var(--vkui--size_border_radius--regular);
@@ -240,7 +243,7 @@
240
243
  /* stylelint-disable-next-line selector-pseudo-class-disallowed-list */
241
244
  :global(
242
245
  .vkuiInternalFormLayoutGroup--segmented.vkuiInternalFormLayoutGroup--mode-vertical
243
- .vkuiInternalFormItem
246
+ .vkuiInternalFormItem
244
247
  ):last-of-type
245
248
  .host {
246
249
  border-end-start-radius: var(--vkui--size_border_radius--regular);
@@ -1 +1 @@
1
- {"version":3,"sources":["./FormField.module.css"],"names":["host","scrollContainer","content","densityCompact","densityNone","iconWrapper","before","after","iconAlignStart","iconAlignEnd","border","modeDefault","hover","focusVisible","statusError","statusValid","disabled"],"mappings":"AAAA;AAAA,E,aAAAA,M,WAAA;AAAA,E,aAYAC,iB,WAZA;AAAA,E,aAqBAC,S,WArBA;AAAA,E,aA4BAC,gB,WA5BA;AAAA,E,aAiCEC,a,WAjCF;AAAA,E,aAuCAJ,M,WAvCA;AAAA,E,aA4CAK,a,WA5CA;AAAA,E,aAoDAC,Q,WApDA;AAAA,E,aAqDAC,O,WArDA;AAAA,E,aA+DAJ,gB,WA/DA;AAAA,E,aA+DgBG,Q,WA/DhB;AAAA,E,aAgEAH,gB,WAhEA;AAAA,E,aAgEgBI,O,WAhEhB;AAAA,E,aAqEEH,a,WArEF;AAAA,E,aAqEeE,Q,WArEf;AAAA,E,aAsEIF,a,WAtEJ;AAAA,E,aAsEiBG,O,WAtEjB;AAAA,E,aA2EAC,gB,WA3EA;AAAA,E,aA+EAC,c,WA/EA;AAAA,E,aAmFAH,Q,WAnFA;AAAA,E,aAuFAC,O,WAvFA;AAAA,E,aA2FAG,Q,WA3FA;AAAA,E,aAyGAC,a,WAzGA;AAAA,E,aAyGeD,Q,WAzGf;AAAA,E,aA6GAC,a,WA7GA;AAAA,E,aAiHAC,O,WAjHA;AAAA,E,aAqHAD,a,WArHA;AAAA,E,aAqHYC,O,WArHZ;AAAA,E,aAqHqBF,Q,WArHrB;AAAA,E,aA8HAG,c,WA9HA;AAAA,E,aA8HaA,c,WA9Hb;AAAA,E,aA8H6BH,Q,WA9H7B;AAAA,E,aAwI6CC,a,WAxI7C;AAAA,E,aAwI4DD,Q,WAxI5D;AAAA,E,aA2IEG,c,WA3IF;AAAA,E,aA4IIH,Q,WA5IJ;AAAA,E,aA6IAI,a,WA7IA;AAAA,E,aA6IYH,a,WA7IZ;AAAA,E,aA6I2BD,Q,WA7I3B;AAAA,E,aA8IAI,a,WA9IA;AAAA,E,aA8IYD,c,WA9IZ;AAAA,E,aA8I4BH,Q,WA9I5B;AAAA,E,aAoJ6CV,M,WApJ7C;AAAA,E,aAqJAc,a,WArJA;AAAA,E,aA2J6CH,a,WA3J7C;AAAA,E,aA2J4DD,Q,WA3J5D;AAAA,E,aA8JEG,c,WA9JF;AAAA,E,aA+JIH,Q,WA/JJ;AAAA,E,aAgKAK,a,WAhKA;AAAA,E,aAgKYJ,a,WAhKZ;AAAA,E,aAgK2BD,Q,WAhK3B;AAAA,E,aAiKAK,a,WAjKA;AAAA,E,aAiKYF,c,WAjKZ;AAAA,E,aAiK4BH,Q,WAjK5B;AAAA,E,aAuK6CV,M,WAvK7C;AAAA,E,aAuKuDW,a,WAvKvD;AAAA,E,aAwKAI,a,WAxKA;AAAA,E,aAwKiBJ,a,WAxKjB;AAAA,E,aA6KAK,U,WA7KA;AAAA,E,aAwLmCT,O,WAxLnC;AAAA,E,aAiM6CA,O,WAjM7C;AAAA,E,aA2MiDP,M,WA3MjD;AAAA,E,aAsNEA,M,WAtNF;AAAA,E,aAgOEA,M,WAhOF;AAAA,E,aA0OEA,M,WA1OF;AAAA,E,aAoPEA,M,WApPF;AAAA;AAAA","file":"FormField.module.css.d.ts","sourceRoot":""}
1
+ {"version":3,"sources":["./FormField.module.css"],"names":["host","scrollContainer","content","densityCompact","densityNone","iconWrapper","before","after","iconAlignStart","iconAlignEnd","border","modeDefault","hover","focusVisible","statusError","statusValid","disabled"],"mappings":"AAAA;AAAA,E,aAAAA,M,WAAA;AAAA,E,aAYAC,iB,WAZA;AAAA,E,aAqBAC,S,WArBA;AAAA,E,aA4BAC,gB,WA5BA;AAAA,E,aAiCEC,a,WAjCF;AAAA,E,aAuCAJ,M,WAvCA;AAAA,E,aA4CAK,a,WA5CA;AAAA,E,aAoDAC,Q,WApDA;AAAA,E,aAqDAC,O,WArDA;AAAA,E,aA+DAJ,gB,WA/DA;AAAA,E,aA+DgBG,Q,WA/DhB;AAAA,E,aAgEAH,gB,WAhEA;AAAA,E,aAgEgBI,O,WAhEhB;AAAA,E,aAqEEH,a,WArEF;AAAA,E,aAqEeE,Q,WArEf;AAAA,E,aAsEIF,a,WAtEJ;AAAA,E,aAsEiBG,O,WAtEjB;AAAA,E,aA2EAC,gB,WA3EA;AAAA,E,aA+EAC,c,WA/EA;AAAA,E,aAmFAH,Q,WAnFA;AAAA,E,aAuFAC,O,WAvFA;AAAA,E,aA2FAG,Q,WA3FA;AAAA,E,aAyGAC,a,WAzGA;AAAA,E,aAyGeD,Q,WAzGf;AAAA,E,aA6GAC,a,WA7GA;AAAA,E,aAiHAC,O,WAjHA;AAAA,E,aAqHAD,a,WArHA;AAAA,E,aAqHYC,O,WArHZ;AAAA,E,aAqHqBF,Q,WArHrB;AAAA,E,aA8HAG,c,WA9HA;AAAA,E,aA8HaA,c,WA9Hb;AAAA,E,aA8H6BH,Q,WA9H7B;AAAA,E,aAwI6CC,a,WAxI7C;AAAA,E,aAwI4DD,Q,WAxI5D;AAAA,E,aA2IEG,c,WA3IF;AAAA,E,aA4IIH,Q,WA5IJ;AAAA,E,aA6IAI,a,WA7IA;AAAA,E,aA6IYH,a,WA7IZ;AAAA,E,aA6I2BD,Q,WA7I3B;AAAA,E,aA8IAI,a,WA9IA;AAAA,E,aA8IYD,c,WA9IZ;AAAA,E,aA8I4BH,Q,WA9I5B;AAAA,E,aAoJ6CV,M,WApJ7C;AAAA,E,aAqJAc,a,WArJA;AAAA,E,aA2J6CH,a,WA3J7C;AAAA,E,aA2J4DD,Q,WA3J5D;AAAA,E,aA8JEG,c,WA9JF;AAAA,E,aA+JIH,Q,WA/JJ;AAAA,E,aAgKAK,a,WAhKA;AAAA,E,aAgKYJ,a,WAhKZ;AAAA,E,aAgK2BD,Q,WAhK3B;AAAA,E,aAiKAK,a,WAjKA;AAAA,E,aAiKYF,c,WAjKZ;AAAA,E,aAiK4BH,Q,WAjK5B;AAAA,E,aAuK6CV,M,WAvK7C;AAAA,E,aAuKuDW,a,WAvKvD;AAAA,E,aAwKAI,a,WAxKA;AAAA,E,aAwKiBJ,a,WAxKjB;AAAA,E,aA6KAK,U,WA7KA;AAAA,E,aAkLAA,U,WAlLA;AAAA,E,aAkLYf,iB,WAlLZ;AAAA,E,aA2LmCM,O,WA3LnC;AAAA,E,aAoM6CA,O,WApM7C;AAAA,E,aA8MiDP,M,WA9MjD;AAAA,E,aAyNEA,M,WAzNF;AAAA,E,aAmOEA,M,WAnOF;AAAA,E,aA6OEA,M,WA7OF;AAAA,E,aAuPEA,M,WAvPF;AAAA;AAAA","file":"FormField.module.css.d.ts","sourceRoot":""}
@@ -195,14 +195,14 @@ class ViewInfiniteComponent extends React.Component<
195
195
  if (this.shouldDisableTransitionMotion()) {
196
196
  this.flushTransition(prevProps.activePanel, isBack);
197
197
  } else {
198
- this.setState({
198
+ this.setState(() => ({
199
199
  visiblePanels: [prevProps.activePanel, this.props.activePanel],
200
200
  prevPanel: prevProps.activePanel,
201
201
  nextPanel: this.props.activePanel,
202
202
  activePanel: null,
203
203
  animated: true,
204
204
  isBack,
205
- });
205
+ }));
206
206
  }
207
207
  }
208
208
 
@@ -268,14 +268,14 @@ class ViewInfiniteComponent extends React.Component<
268
268
 
269
269
  // Закончился Safari свайп
270
270
  if (prevProps.activePanel !== this.props.activePanel && this.state.browserSwipe) {
271
- this.setState({
271
+ this.setState(() => ({
272
272
  browserSwipe: false,
273
273
  nextPanel: null,
274
274
  prevPanel: null,
275
275
  animated: false,
276
276
  visiblePanels: [this.props.activePanel],
277
277
  activePanel: this.props.activePanel,
278
- });
278
+ }));
279
279
  }
280
280
  }
281
281
 
@@ -462,12 +462,12 @@ class ViewInfiniteComponent extends React.Component<
462
462
  ]);
463
463
  }
464
464
 
465
- this.setState({
465
+ this.setState((prevState) => ({
466
466
  swipingBack: true,
467
467
  swipeBackStartX: event.startX,
468
- swipeBackPrevPanel: this.state.activePanel,
469
- swipeBackNextPanel: this.props.history.slice(-2)[0],
470
- });
468
+ swipeBackPrevPanel: prevState.activePanel,
469
+ swipeBackNextPanel: this.props.history?.slice(-2)[0] ?? null,
470
+ }));
471
471
  }
472
472
 
473
473
  if (this.state.swipingBack) {
@@ -40,7 +40,7 @@ export const SnackbarHolder: React.FC<SnackbarHolderProps> = ({
40
40
  continue;
41
41
  }
42
42
 
43
- if (placement !== undefined && !map[placement]) {
43
+ if (!map[placement]) {
44
44
  map[placement] = [];
45
45
  openedSnackbarsCountersByPlacement[placement] = 0;
46
46
  placements.push(placement);
package/src/index.ts CHANGED
@@ -552,6 +552,7 @@ export type { PopperProps } from './components/Popper/Popper';
552
552
  /**
553
553
  * Types
554
554
  */
555
+ export type { LayoutProps } from './lib/layouts';
555
556
  export type { AlignType, HasPlatform, HasRef, HasRootRef } from './types';
556
557
  export type { NavIdProps } from './lib/getNavId';
557
558
  export type { PlatformType } from './lib/platform';