@vkontakte/vkui 5.8.1 → 5.8.2
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.
- package/dist/cjs/components/ActionSheet/ActionSheet.js +6 -2
- package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cjs/components/AspectRatio/AspectRatio.d.ts +3 -4
- package/dist/cjs/components/AspectRatio/AspectRatio.js +1 -2
- package/dist/cjs/components/AspectRatio/AspectRatio.js.map +1 -1
- package/dist/cjs/components/Banner/Banner.js +1 -5
- package/dist/cjs/components/Banner/Banner.js.map +1 -1
- package/dist/cjs/components/Group/Group.js +3 -1
- package/dist/cjs/components/Group/Group.js.map +1 -1
- package/dist/cjs/components/ImageBase/ImageBase.js +1 -16
- package/dist/cjs/components/ImageBase/ImageBase.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRoot.js +2 -0
- package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +11 -5
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
- package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.d.ts +1 -1
- package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.d.ts +1 -1
- package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts +1 -1
- package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/cjs/components/Popper/Popper.js +3 -2
- package/dist/cjs/components/Popper/Popper.js.map +1 -1
- package/dist/cjs/components/ScrollArrow/ScrollArrow.js +1 -0
- package/dist/cjs/components/ScrollArrow/ScrollArrow.js.map +1 -1
- package/dist/cjs/components/SimpleCell/SimpleCell.js +8 -12
- package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheet.js +6 -2
- package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/components/AspectRatio/AspectRatio.d.ts +3 -4
- package/dist/components/AspectRatio/AspectRatio.js +2 -3
- package/dist/components/AspectRatio/AspectRatio.js.map +1 -1
- package/dist/components/Banner/Banner.js +1 -5
- package/dist/components/Banner/Banner.js.map +1 -1
- package/dist/components/Group/Group.js +3 -1
- package/dist/components/Group/Group.js.map +1 -1
- package/dist/components/ImageBase/ImageBase.js +1 -16
- package/dist/components/ImageBase/ImageBase.js.map +1 -1
- package/dist/components/ModalRoot/ModalRoot.js +2 -0
- package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootDesktop.js +11 -5
- package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/components/PanelHeaderClose/PanelHeaderClose.d.ts +1 -1
- package/dist/components/PanelHeaderClose/PanelHeaderClose.js +1 -1
- package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.d.ts +1 -1
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +1 -1
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts +1 -1
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +1 -1
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/components/Popper/Popper.js +3 -2
- package/dist/components/Popper/Popper.js.map +1 -1
- package/dist/components/ScrollArrow/ScrollArrow.js +1 -0
- package/dist/components/ScrollArrow/ScrollArrow.js.map +1 -1
- package/dist/components/SimpleCell/SimpleCell.js +8 -12
- package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/components.css +10 -10
- package/dist/components.css.map +1 -1
- package/dist/components.js.tmp +49 -56
- package/dist/cssm/components/ActionSheet/ActionSheet.js +5 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.module.css +24 -14
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.module.css +0 -16
- package/dist/cssm/components/AspectRatio/AspectRatio.d.ts +3 -4
- package/dist/cssm/components/AspectRatio/AspectRatio.js +2 -2
- package/dist/cssm/components/AspectRatio/AspectRatio.js.map +1 -1
- package/dist/cssm/components/Banner/Banner.js +1 -5
- package/dist/cssm/components/Banner/Banner.js.map +1 -1
- package/dist/cssm/components/Banner/Banner.module.css +1 -9
- package/dist/cssm/components/CellButton/CellButton.module.css +6 -4
- package/dist/cssm/components/Group/Group.js +3 -1
- package/dist/cssm/components/Group/Group.js.map +1 -1
- package/dist/cssm/components/Group/Group.module.css +24 -0
- package/dist/cssm/components/IconButton/IconButton.module.css +1 -3
- package/dist/cssm/components/ImageBase/ImageBase.js +1 -16
- package/dist/cssm/components/ImageBase/ImageBase.js.map +1 -1
- package/dist/cssm/components/ImageBase/ImageBase.module.css +0 -65
- package/dist/cssm/components/ModalRoot/ModalRoot.js +2 -0
- package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +10 -4
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +1 -1
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.d.ts +1 -1
- package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +1 -1
- package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.d.ts +1 -1
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +1 -1
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts +1 -1
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +1 -1
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/cssm/components/Popper/Popper.js +3 -2
- package/dist/cssm/components/Popper/Popper.js.map +1 -1
- package/dist/cssm/components/ScrollArrow/ScrollArrow.js +1 -0
- package/dist/cssm/components/ScrollArrow/ScrollArrow.js.map +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.js +7 -11
- package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.module.css +37 -91
- package/dist/cssm/components/Switch/Switch.module.css +0 -4
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.module.css +11 -2
- package/dist/vkui.css +10 -10
- package/dist/vkui.css.map +1 -1
- package/dist/vkui.js.tmp +49 -56
- package/package.json +1 -1
- package/dist/cjs/lib/is.d.ts +0 -1
- package/dist/cjs/lib/is.js +0 -18
- package/dist/cjs/lib/is.js.map +0 -1
- package/dist/cssm/lib/is.d.ts +0 -1
- package/dist/cssm/lib/is.js +0 -8
- package/dist/cssm/lib/is.js.map +0 -1
- package/dist/lib/is.d.ts +0 -1
- package/dist/lib/is.js +0 -8
- package/dist/lib/is.js.map +0 -1
package/dist/components.js.tmp
CHANGED
|
@@ -12150,21 +12150,6 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
12150
12150
|
imgRef,
|
|
12151
12151
|
loaded
|
|
12152
12152
|
]);
|
|
12153
|
-
var sizeClassName = function() {
|
|
12154
|
-
switch(size){
|
|
12155
|
-
case 28:
|
|
12156
|
-
return "vkuiImageBase--size-28";
|
|
12157
|
-
case 32:
|
|
12158
|
-
return "vkuiImageBase--size-32";
|
|
12159
|
-
case 40:
|
|
12160
|
-
return "vkuiImageBase--size-40";
|
|
12161
|
-
case 48:
|
|
12162
|
-
return "vkuiImageBase--size-48";
|
|
12163
|
-
case 72:
|
|
12164
|
-
return "vkuiImageBase--size-72";
|
|
12165
|
-
}
|
|
12166
|
-
return null;
|
|
12167
|
-
}();
|
|
12168
12153
|
return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_context__WEBPACK_IMPORTED_MODULE_4__.ImageBaseContext.Provider, {
|
|
12169
12154
|
value: {
|
|
12170
12155
|
size: size
|
|
@@ -12174,7 +12159,7 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
12174
12159
|
width: size,
|
|
12175
12160
|
height: size
|
|
12176
12161
|
}),
|
|
12177
|
-
baseClassName: (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.classNames)("vkuiImageBase",
|
|
12162
|
+
baseClassName: (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.classNames)("vkuiImageBase", loaded && "vkuiImageBase--loaded"),
|
|
12178
12163
|
role: hasSrc ? "img" : "presentation",
|
|
12179
12164
|
"aria-label": ariaLabel,
|
|
12180
12165
|
onClick: onClick
|
|
@@ -45700,6 +45685,7 @@ var ArrowIcon = function(param) {
|
|
|
45700
45685
|
]);
|
|
45701
45686
|
return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_RootComponent_RootComponent__WEBPACK_IMPORTED_MODULE_7__.RootComponent, _object_spread({
|
|
45702
45687
|
Component: "button",
|
|
45688
|
+
type: "button",
|
|
45703
45689
|
baseClassName: (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.classNames)("vkuiScrollArrow", stylesSize[size], stylesDirection[direction])
|
|
45704
45690
|
}, restProps), /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement("span", {
|
|
45705
45691
|
className: "vkuiScrollArrow__icon",
|
|
@@ -46226,13 +46212,12 @@ function _object_without_properties_loose(source, excluded) {
|
|
|
46226
46212
|
/**
|
|
46227
46213
|
* `AspectRatio` позволяет поддерживать постоянное соотношение ширины и высоты.
|
|
46228
46214
|
* Его можно использовать для отображения изображений, карт, видео и других медиафайлов.
|
|
46229
|
-
|
|
46215
|
+
|
|
46230
46216
|
* @since 5.5.0
|
|
46231
46217
|
* @see https://vkcom.github.io/VKUI/#/AspectRatio
|
|
46232
46218
|
*/ function AspectRatio(_param) {
|
|
46233
|
-
var ratio = _param.ratio,
|
|
46219
|
+
var ratio = _param.ratio, _param_mode = _param.mode, mode = _param_mode === void 0 ? "stretch" : _param_mode, styleProp = _param.style, props = _object_without_properties(_param, [
|
|
46234
46220
|
"ratio",
|
|
46235
|
-
"children",
|
|
46236
46221
|
"mode",
|
|
46237
46222
|
"style"
|
|
46238
46223
|
]);
|
|
@@ -47928,14 +47913,18 @@ var warn = (0,_lib_warnOnce__WEBPACK_IMPORTED_MODULE_3__.warnOnce)("ActionSheet"
|
|
|
47928
47913
|
onClose: onClose,
|
|
47929
47914
|
className: isDesktop ? className : undefined,
|
|
47930
47915
|
style: isDesktop ? style : undefined
|
|
47931
|
-
}),
|
|
47916
|
+
}), /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
|
|
47917
|
+
className: "vkuiActionSheet__content-wrapper"
|
|
47918
|
+
}, (header || text) && /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement("header", {
|
|
47932
47919
|
className: "vkuiActionSheet__header"
|
|
47933
47920
|
}, header && /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Typography_Footnote_Footnote__WEBPACK_IMPORTED_MODULE_13__.Footnote, {
|
|
47934
47921
|
weight: "2",
|
|
47935
47922
|
className: "vkuiActionSheet__title"
|
|
47936
47923
|
}, header), text && /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Typography_Footnote_Footnote__WEBPACK_IMPORTED_MODULE_13__.Footnote, {
|
|
47937
47924
|
className: "vkuiActionSheet__text"
|
|
47938
|
-
}, text)), children, platform === _lib_platform__WEBPACK_IMPORTED_MODULE_7__.Platform.IOS && !isDesktop &&
|
|
47925
|
+
}, text)), children), platform === _lib_platform__WEBPACK_IMPORTED_MODULE_7__.Platform.IOS && !isDesktop && /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
|
|
47926
|
+
className: "vkuiActionSheet__close-item-wrapper--ios"
|
|
47927
|
+
}, iosCloseItem !== null && iosCloseItem !== void 0 ? iosCloseItem : /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_ActionSheetDefaultIosCloseItem__WEBPACK_IMPORTED_MODULE_14__.ActionSheetDefaultIosCloseItem, null))));
|
|
47939
47928
|
if (isDesktop) {
|
|
47940
47929
|
return actionSheet;
|
|
47941
47930
|
}
|
|
@@ -48187,10 +48176,11 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
48187
48176
|
/* harmony import */ var _lib_floating__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(243);
|
|
48188
48177
|
/* harmony import */ var _lib_floating__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(245);
|
|
48189
48178
|
/* harmony import */ var _lib_floating__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(248);
|
|
48190
|
-
/* harmony import */ var
|
|
48179
|
+
/* harmony import */ var _lib_useIsomorphicLayoutEffect__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(64);
|
|
48180
|
+
/* harmony import */ var _AppRoot_AppRootPortal__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(185);
|
|
48191
48181
|
/* harmony import */ var _PopperArrow_DefaultIcon__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(241);
|
|
48192
|
-
/* harmony import */ var
|
|
48193
|
-
/* harmony import */ var
|
|
48182
|
+
/* harmony import */ var _PopperArrow_PopperArrow__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(249);
|
|
48183
|
+
/* harmony import */ var _RootComponent_RootComponent__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(81);
|
|
48194
48184
|
/* harmony import */ var _Popper_module_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(240);
|
|
48195
48185
|
function _array_like_to_array(arr, len) {
|
|
48196
48186
|
if (len == null || len > arr.length) len = arr.length;
|
|
@@ -48337,6 +48327,7 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
48337
48327
|
|
|
48338
48328
|
|
|
48339
48329
|
|
|
48330
|
+
|
|
48340
48331
|
/**
|
|
48341
48332
|
* @see https://vkcom.github.io/VKUI/#/Popper
|
|
48342
48333
|
*/ var Popper = function(_param) {
|
|
@@ -48436,13 +48427,13 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
48436
48427
|
}), floatingDataX = _useFloating.x, floatingDataY = _useFloating.y, floatingPositionStrategy = _useFloating.strategy, resolvedPlacement = _useFloating.placement, refs = _useFloating.refs, _useFloating_middlewareData = _useFloating.middlewareData, arrowCoords = _useFloating_middlewareData.arrow, hide = _useFloating_middlewareData.hide;
|
|
48437
48428
|
// TODO [>=6]: убрать getRef
|
|
48438
48429
|
var handleRootRef = (0,_hooks_useExternRef__WEBPACK_IMPORTED_MODULE_7__.useExternRef)(refs.setFloating, getRef, getRootRef);
|
|
48439
|
-
|
|
48430
|
+
(0,_lib_useIsomorphicLayoutEffect__WEBPACK_IMPORTED_MODULE_8__.useIsomorphicLayoutEffect)(function() {
|
|
48440
48431
|
refs.setReference(targetRef.current);
|
|
48441
48432
|
}, [
|
|
48442
48433
|
refs,
|
|
48443
48434
|
targetRef
|
|
48444
48435
|
]);
|
|
48445
|
-
|
|
48436
|
+
(0,_lib_useIsomorphicLayoutEffect__WEBPACK_IMPORTED_MODULE_8__.useIsomorphicLayoutEffect)(function() {
|
|
48446
48437
|
if (resolvedPlacement && onPlacementChange) {
|
|
48447
48438
|
onPlacementChange({
|
|
48448
48439
|
placement: resolvedPlacement
|
|
@@ -48452,13 +48443,13 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
48452
48443
|
onPlacementChange,
|
|
48453
48444
|
resolvedPlacement
|
|
48454
48445
|
]);
|
|
48455
|
-
var dropdown = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(
|
|
48446
|
+
var dropdown = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_RootComponent_RootComponent__WEBPACK_IMPORTED_MODULE_9__.RootComponent, _object_spread_props(_object_spread({}, restProps), {
|
|
48456
48447
|
baseClassName: "vkuiPopper",
|
|
48457
48448
|
getRootRef: handleRootRef,
|
|
48458
48449
|
style: _object_spread({}, styleProp, (0,_lib_floating__WEBPACK_IMPORTED_MODULE_3__.convertFloatingDataToReactCSSProperties)(floatingPositionStrategy, floatingDataX, floatingDataY, sameWidth ? null : undefined), ((_hide = hide) === null || _hide === void 0 ? void 0 : _hide.referenceHidden) && {
|
|
48459
48450
|
visibility: "hidden"
|
|
48460
48451
|
})
|
|
48461
|
-
}), arrow && /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(
|
|
48452
|
+
}), arrow && /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_PopperArrow_PopperArrow__WEBPACK_IMPORTED_MODULE_10__.PopperArrow, {
|
|
48462
48453
|
coords: arrowCoords,
|
|
48463
48454
|
placement: resolvedPlacement,
|
|
48464
48455
|
arrowClassName: arrowClassName,
|
|
@@ -48467,7 +48458,7 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
48467
48458
|
}), renderContent ? renderContent({
|
|
48468
48459
|
className: ""
|
|
48469
48460
|
}) : children);
|
|
48470
|
-
return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(
|
|
48461
|
+
return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_AppRoot_AppRootPortal__WEBPACK_IMPORTED_MODULE_11__.AppRootPortal, {
|
|
48471
48462
|
forcePortal: forcePortal,
|
|
48472
48463
|
portalRoot: portalRoot
|
|
48473
48464
|
}, dropdown);
|
|
@@ -52280,7 +52271,6 @@ var ModalRootDesktop = function(param) {
|
|
|
52280
52271
|
});
|
|
52281
52272
|
};
|
|
52282
52273
|
var openModal = function() {
|
|
52283
|
-
var _enteringState;
|
|
52284
52274
|
if (!enteringModal || !prevProps) {
|
|
52285
52275
|
return;
|
|
52286
52276
|
}
|
|
@@ -52295,15 +52285,22 @@ var ModalRootDesktop = function(param) {
|
|
|
52295
52285
|
return onEntered(enteringModal);
|
|
52296
52286
|
}, timeout);
|
|
52297
52287
|
animateModalOpacity(enteringState, true);
|
|
52288
|
+
if (enteringState) {
|
|
52289
|
+
setMaskOpacity(enteringState, 1);
|
|
52290
|
+
}
|
|
52298
52291
|
}
|
|
52299
52292
|
});
|
|
52300
52293
|
return;
|
|
52301
52294
|
}
|
|
52302
52295
|
// Переход между модальными окнами без анимации
|
|
52303
|
-
|
|
52304
|
-
|
|
52305
|
-
enteringState.innerElement
|
|
52306
|
-
|
|
52296
|
+
requestAnimationFrame(function() {
|
|
52297
|
+
var _enteringState;
|
|
52298
|
+
if ((_enteringState = enteringState) === null || _enteringState === void 0 ? void 0 : _enteringState.innerElement) {
|
|
52299
|
+
enteringState.innerElement.style.transition = "none";
|
|
52300
|
+
enteringState.innerElement.style.opacity = "1";
|
|
52301
|
+
setMaskOpacity(enteringState, 1);
|
|
52302
|
+
}
|
|
52303
|
+
});
|
|
52307
52304
|
onEntered(enteringModal);
|
|
52308
52305
|
};
|
|
52309
52306
|
var closeModal = function(id) {
|
|
@@ -53135,6 +53132,7 @@ var ModalRootTouchComponent = /*#__PURE__*/ function(_React_Component) {
|
|
|
53135
53132
|
if ((_enteringState = enteringState) === null || _enteringState === void 0 ? void 0 : _enteringState.innerElement) {
|
|
53136
53133
|
enteringState.innerElement.style.transitionDelay = this.props.delayEnter ? "".concat(this.timeout, "ms") : "";
|
|
53137
53134
|
this.animateTranslate(enteringState, enteringState.translateY);
|
|
53135
|
+
this.setMaskOpacity(enteringState, 1);
|
|
53138
53136
|
}
|
|
53139
53137
|
}
|
|
53140
53138
|
// focus restoration
|
|
@@ -53463,6 +53461,7 @@ var ModalRootTouchComponent = /*#__PURE__*/ function(_React_Component) {
|
|
|
53463
53461
|
var _modalState_translateY = modalState.translateY, translateY = _modalState_translateY === void 0 ? 0 : _modalState_translateY, _modalState_translateYCurrent = modalState.translateYCurrent, translateYCurrent = _modalState_translateYCurrent === void 0 ? 0 : _modalState_translateYCurrent;
|
|
53464
53462
|
var opacity = forceOpacity === null ? 1 - (translateYCurrent - translateY) / (100 - translateY) || 0 : forceOpacity;
|
|
53465
53463
|
_this.maskElementRef.current.style.opacity = (0,_helpers_math__WEBPACK_IMPORTED_MODULE_4__.clamp)(opacity, 0, 100).toString();
|
|
53464
|
+
_this.maskElementRef.current.style.transitionDelay = opacity && _this.props.delayEnter ? "".concat(_this.timeout, "ms") : "";
|
|
53466
53465
|
}
|
|
53467
53466
|
});
|
|
53468
53467
|
}
|
|
@@ -56179,7 +56178,9 @@ var warn = (0,_lib_warnOnce__WEBPACK_IMPORTED_MODULE_5__.warnOnce)("Group");
|
|
|
56179
56178
|
}, restProps), {
|
|
56180
56179
|
tabIndex: tabIndex,
|
|
56181
56180
|
baseClassName: (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.classNames)("vkuiInternalGroup", "vkuiGroup", isInsideModal && "vkuiGroup--inside-modal", platform === _lib_platform__WEBPACK_IMPORTED_MODULE_10__.Platform.IOS && "vkuiGroup--ios", sizeX !== _lib_adaptivity__WEBPACK_IMPORTED_MODULE_3__.SizeType.REGULAR && sizeXClassNames[sizeX], mode && stylesMode[mode], stylesPadding[padding])
|
|
56182
|
-
}),
|
|
56181
|
+
}), (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.hasReactNode)(header) && /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
|
|
56182
|
+
className: "vkuiGroup__header"
|
|
56183
|
+
}, header), children, (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.hasReactNode)(description) && /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Typography_Footnote_Footnote__WEBPACK_IMPORTED_MODULE_11__.Footnote, {
|
|
56183
56184
|
className: "vkuiGroup__description"
|
|
56184
56185
|
}, description)), separator !== "hide" && /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Spacing_Spacing__WEBPACK_IMPORTED_MODULE_12__.Spacing, {
|
|
56185
56186
|
className: (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.classNames)("vkuiGroup__separator", "vkuiGroup__separator--spacing"),
|
|
@@ -57430,15 +57431,9 @@ function _object_without_properties_loose(source, excluded) {
|
|
|
57430
57431
|
|
|
57431
57432
|
|
|
57432
57433
|
var warn = (0,_lib_warnOnce__WEBPACK_IMPORTED_MODULE_3__.warnOnce)("SimpleCell");
|
|
57433
|
-
var
|
|
57434
|
-
|
|
57435
|
-
|
|
57436
|
-
vkcom: "vkuiSimpleCell--vkcom"
|
|
57437
|
-
};
|
|
57438
|
-
var _obj;
|
|
57439
|
-
var sizeYClassNames = (_obj = {
|
|
57440
|
-
none: (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.classNames)("vkuiSimpleCell--sizeY-none", "vkuiInternalSimpleCell--sizeY-none")
|
|
57441
|
-
}, _define_property(_obj, _lib_adaptivity__WEBPACK_IMPORTED_MODULE_4__.SizeType.COMPACT, (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.classNames)("vkuiSimpleCell--sizeY-compact", "vkuiInternalSimpleCell--sizeY-compact")), _define_property(_obj, _lib_adaptivity__WEBPACK_IMPORTED_MODULE_4__.SizeType.REGULAR, "vkuiSimpleCell--sizeY-regular"), _obj);
|
|
57434
|
+
var sizeYClassNames = _define_property({
|
|
57435
|
+
none: "vkuiSimpleCell--sizeY-none"
|
|
57436
|
+
}, _lib_adaptivity__WEBPACK_IMPORTED_MODULE_4__.SizeType.COMPACT, "vkuiSimpleCell--sizeY-compact");
|
|
57442
57437
|
/**
|
|
57443
57438
|
* @see https://vkcom.github.io/VKUI/#/SimpleCell
|
|
57444
57439
|
*/ var SimpleCell = function(_param) {
|
|
@@ -57468,9 +57463,11 @@ var sizeYClassNames = (_obj = {
|
|
|
57468
57463
|
var hasAfter = (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.hasReactNode)(after) || hasChevron;
|
|
57469
57464
|
var _useAdaptivity = (0,_hooks_useAdaptivity__WEBPACK_IMPORTED_MODULE_7__.useAdaptivity)(), _useAdaptivity_sizeY = _useAdaptivity.sizeY, sizeY = _useAdaptivity_sizeY === void 0 ? "none" : _useAdaptivity_sizeY;
|
|
57470
57465
|
return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Tappable_Tappable__WEBPACK_IMPORTED_MODULE_8__.Tappable, _object_spread_props(_object_spread({}, restProps), {
|
|
57471
|
-
className: (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.classNames)("vkuiSimpleCell",
|
|
57472
|
-
}),
|
|
57473
|
-
className:
|
|
57466
|
+
className: (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.classNames)("vkuiSimpleCell", sizeY !== _lib_adaptivity__WEBPACK_IMPORTED_MODULE_4__.SizeType.REGULAR && sizeYClassNames[sizeY], multiline && "vkuiSimpleCell--mult", className)
|
|
57467
|
+
}), /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
|
|
57468
|
+
className: "vkuiSimpleCell__before"
|
|
57469
|
+
}, before), /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement("div", {
|
|
57470
|
+
className: "vkuiSimpleCell__middle"
|
|
57474
57471
|
}, subhead && /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Typography_Subhead_Subhead__WEBPACK_IMPORTED_MODULE_9__.Subhead, {
|
|
57475
57472
|
Component: "span",
|
|
57476
57473
|
className: (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.classNames)("vkuiSimpleCell__text", "vkuiSimpleCell__subhead")
|
|
@@ -63249,10 +63246,6 @@ function _object_without_properties_loose(source, excluded) {
|
|
|
63249
63246
|
|
|
63250
63247
|
|
|
63251
63248
|
|
|
63252
|
-
var stylesSize = {
|
|
63253
|
-
s: "vkuiBanner--size-s",
|
|
63254
|
-
m: "vkuiBanner--size-m"
|
|
63255
|
-
};
|
|
63256
63249
|
/**
|
|
63257
63250
|
* @see https://vkcom.github.io/VKUI/#/Banner
|
|
63258
63251
|
*/ var Banner = function(_param) {
|
|
@@ -63299,7 +63292,7 @@ var stylesSize = {
|
|
|
63299
63292
|
return /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_RootComponent_RootComponent__WEBPACK_IMPORTED_MODULE_10__.RootComponent, _object_spread_props(_object_spread({
|
|
63300
63293
|
Component: "section"
|
|
63301
63294
|
}, restProps), {
|
|
63302
|
-
baseClassName: (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.classNames)("vkuiBanner", !noPadding && "vkuiBanner--withPadding", platform === _lib_platform__WEBPACK_IMPORTED_MODULE_11__.Platform.IOS && "vkuiBanner--ios", mode === "image" && "vkuiBanner--mode-image",
|
|
63295
|
+
baseClassName: (0,_vkontakte_vkjs__WEBPACK_IMPORTED_MODULE_1__.classNames)("vkuiBanner", !noPadding && "vkuiBanner--withPadding", platform === _lib_platform__WEBPACK_IMPORTED_MODULE_11__.Platform.IOS && "vkuiBanner--ios", mode === "image" && "vkuiBanner--mode-image", size === "m" && "vkuiBanner--size-m", mode === "image" && imageTheme === "dark" && "vkuiBanner--inverted")
|
|
63303
63296
|
}), asideMode === "expand" ? /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_0__.createElement(_Tappable_Tappable__WEBPACK_IMPORTED_MODULE_12__.Tappable, {
|
|
63304
63297
|
className: "vkuiBanner__in",
|
|
63305
63298
|
activeMode: platform === _lib_platform__WEBPACK_IMPORTED_MODULE_11__.Platform.IOS ? "opacity" : "background",
|
|
@@ -75652,7 +75645,7 @@ function _object_without_properties_loose(source, excluded) {
|
|
|
75652
75645
|
|
|
75653
75646
|
|
|
75654
75647
|
/**
|
|
75655
|
-
* @see https://vkcom.github.io/VKUI/#/
|
|
75648
|
+
* @see https://vkcom.github.io/VKUI/#/PanelHeaderButton
|
|
75656
75649
|
*/ var PanelHeaderClose = function(_param) {
|
|
75657
75650
|
var _param_children = _param.children, children = _param_children === void 0 ? "Отмена" : _param_children, restProps = _object_without_properties(_param, [
|
|
75658
75651
|
"children"
|
|
@@ -75788,7 +75781,7 @@ function _object_without_properties_loose(source, excluded) {
|
|
|
75788
75781
|
|
|
75789
75782
|
|
|
75790
75783
|
/**
|
|
75791
|
-
* @see https://vkcom.github.io/VKUI/#/
|
|
75784
|
+
* @see https://vkcom.github.io/VKUI/#/PanelHeaderButton
|
|
75792
75785
|
*/ var PanelHeaderBack = function(_param) {
|
|
75793
75786
|
var label = _param.label, tmp = _param["aria-label"], ariaLabel = tmp === void 0 ? "Назад" : tmp, className = _param.className, restProps = _object_without_properties(_param, [
|
|
75794
75787
|
"label",
|
|
@@ -75939,7 +75932,7 @@ function _object_without_properties_loose(source, excluded) {
|
|
|
75939
75932
|
|
|
75940
75933
|
|
|
75941
75934
|
/**
|
|
75942
|
-
* @see https://vkcom.github.io/VKUI/#/
|
|
75935
|
+
* @see https://vkcom.github.io/VKUI/#/PanelHeaderButton
|
|
75943
75936
|
*/ var PanelHeaderSubmit = function(_param) {
|
|
75944
75937
|
var _param_children = _param.children, children = _param_children === void 0 ? "Готово" : _param_children, restProps = _object_without_properties(_param, [
|
|
75945
75938
|
"children"
|
|
@@ -76043,7 +76036,7 @@ function _object_without_properties_loose(source, excluded) {
|
|
|
76043
76036
|
|
|
76044
76037
|
|
|
76045
76038
|
/**
|
|
76046
|
-
* @see https://vkcom.github.io/VKUI/#/
|
|
76039
|
+
* @see https://vkcom.github.io/VKUI/#/PanelHeaderButton
|
|
76047
76040
|
*/ var PanelHeaderEdit = function(_param) {
|
|
76048
76041
|
var _param_isActive = _param.isActive, isActive = _param_isActive === void 0 ? false : _param_isActive, _param_editLabel = _param.editLabel, editLabel = _param_editLabel === void 0 ? "Редактировать" : _param_editLabel, _param_doneLabel = _param.doneLabel, doneLabel = _param_doneLabel === void 0 ? "Готово" : _param_doneLabel, restProps = _object_without_properties(_param, [
|
|
76049
76042
|
"isActive",
|
|
@@ -80,6 +80,8 @@ const warn = warnOnce('ActionSheet');
|
|
|
80
80
|
onClose: onClose,
|
|
81
81
|
className: isDesktop ? className : undefined,
|
|
82
82
|
style: isDesktop ? style : undefined
|
|
83
|
+
}, /*#__PURE__*/ React.createElement("div", {
|
|
84
|
+
className: styles['ActionSheet__content-wrapper']
|
|
83
85
|
}, (header || text) && /*#__PURE__*/ React.createElement("header", {
|
|
84
86
|
className: styles['ActionSheet__header']
|
|
85
87
|
}, header && /*#__PURE__*/ React.createElement(Footnote, {
|
|
@@ -87,7 +89,9 @@ const warn = warnOnce('ActionSheet');
|
|
|
87
89
|
className: styles['ActionSheet__title']
|
|
88
90
|
}, header), text && /*#__PURE__*/ React.createElement(Footnote, {
|
|
89
91
|
className: styles['ActionSheet__text']
|
|
90
|
-
}, text)), children, platform === Platform.IOS && !isDesktop &&
|
|
92
|
+
}, text)), children), platform === Platform.IOS && !isDesktop && /*#__PURE__*/ React.createElement("div", {
|
|
93
|
+
className: styles['ActionSheet__close-item-wrapper--ios']
|
|
94
|
+
}, iosCloseItem ?? /*#__PURE__*/ React.createElement(ActionSheetDefaultIosCloseItem, null))));
|
|
91
95
|
if (isDesktop) {
|
|
92
96
|
return actionSheet;
|
|
93
97
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/ActionSheet/ActionSheet.tsx"],"sourcesContent":["import * as React from 'react';\nimport { noop } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { useObjectMemo } from '../../hooks/useObjectMemo';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useTimeout } from '../../hooks/useTimeout';\nimport { Platform } from '../../lib/platform';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { useScrollLock } from '../AppRoot/ScrollContext';\nimport { PopoutWrapper } from '../PopoutWrapper/PopoutWrapper';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport { ActionSheetContext, ItemClickHandler } from './ActionSheetContext';\nimport { ActionSheetDefaultIosCloseItem } from './ActionSheetDefaultIosCloseItem';\nimport { ActionSheetDropdown } from './ActionSheetDropdown';\nimport { ActionSheetDropdownDesktop } from './ActionSheetDropdownDesktop';\nimport { SharedDropdownProps } from './types';\nimport styles from './ActionSheet.module.css';\n\nconst warn = warnOnce('ActionSheet');\ntype CloseInitiators = 'action-item' | 'cancel-item' | 'other';\nexport interface ActionSheetOnCloseOptions {\n closedBy: CloseInitiators;\n}\n\nexport interface ActionSheetProps\n extends Pick<\n SharedDropdownProps,\n 'toggleRef' | 'popupDirection' | 'popupOffsetDistance' | 'placement'\n >,\n React.HTMLAttributes<HTMLDivElement> {\n header?: React.ReactNode;\n text?: React.ReactNode;\n /**\n * Закрыть попап по клику снаружи.\n */\n onClose(options: ActionSheetOnCloseOptions): void;\n /**\n * Только мобильный iOS.\n */\n iosCloseItem?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ActionSheet\n */\nexport const ActionSheet = ({\n children,\n className,\n header,\n text,\n style,\n iosCloseItem,\n popupDirection,\n popupOffsetDistance,\n placement,\n ...restProps\n}: ActionSheetProps) => {\n const platform = usePlatform();\n const [closingBy, setClosingBy] = React.useState<undefined | CloseInitiators>(undefined);\n const onClose = () => setClosingBy('other');\n const _action = React.useRef(noop);\n\n const afterClose = () => {\n restProps.onClose({ closedBy: closingBy || 'other' });\n _action.current();\n _action.current = noop;\n };\n\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n\n useScrollLock(!isDesktop);\n\n let timeout = platform === Platform.IOS ? 300 : 200;\n\n if (isDesktop) {\n timeout = 0;\n }\n\n const fallbackTransitionFinish = useTimeout(afterClose, timeout);\n React.useEffect(() => {\n if (closingBy) {\n fallbackTransitionFinish.set();\n } else {\n fallbackTransitionFinish.clear();\n }\n }, [closingBy, fallbackTransitionFinish]);\n\n const onItemClick = React.useCallback<ItemClickHandler>(\n ({ action, immediateAction, autoClose, isCancelItem }) =>\n (event) => {\n event.persist();\n immediateAction && immediateAction(event);\n if (autoClose) {\n _action.current = () => action && action(event);\n setClosingBy(isCancelItem ? 'cancel-item' : 'action-item');\n } else {\n action && action(event);\n }\n },\n [],\n );\n const contextValue = useObjectMemo({ onItemClick, isDesktop });\n\n const DropdownComponent = isDesktop ? ActionSheetDropdownDesktop : ActionSheetDropdown;\n\n if (process.env.NODE_ENV === 'development' && popupDirection) {\n // TODO [>=6]: popupDirection\n warn('Свойство \"popupDirection\" будет удалено в v6. Используйте свойство \"placement\"');\n }\n\n popupDirection = popupDirection !== undefined ? popupDirection : 'bottom';\n\n const dropdownProps = isDesktop\n ? Object.assign(restProps, { popupOffsetDistance, popupDirection, placement })\n : restProps;\n\n const actionSheet = (\n <ActionSheetContext.Provider value={contextValue}>\n <DropdownComponent\n closing={Boolean(closingBy)}\n timeout={timeout}\n {...dropdownProps}\n onClose={onClose}\n className={isDesktop ? className : undefined}\n style={isDesktop ? style : undefined}\n >\n {(header || text) && (\n
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/ActionSheet/ActionSheet.tsx"],"sourcesContent":["import * as React from 'react';\nimport { noop } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { useObjectMemo } from '../../hooks/useObjectMemo';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useTimeout } from '../../hooks/useTimeout';\nimport { Platform } from '../../lib/platform';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { useScrollLock } from '../AppRoot/ScrollContext';\nimport { PopoutWrapper } from '../PopoutWrapper/PopoutWrapper';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport { ActionSheetContext, ItemClickHandler } from './ActionSheetContext';\nimport { ActionSheetDefaultIosCloseItem } from './ActionSheetDefaultIosCloseItem';\nimport { ActionSheetDropdown } from './ActionSheetDropdown';\nimport { ActionSheetDropdownDesktop } from './ActionSheetDropdownDesktop';\nimport { SharedDropdownProps } from './types';\nimport styles from './ActionSheet.module.css';\n\nconst warn = warnOnce('ActionSheet');\ntype CloseInitiators = 'action-item' | 'cancel-item' | 'other';\nexport interface ActionSheetOnCloseOptions {\n closedBy: CloseInitiators;\n}\n\nexport interface ActionSheetProps\n extends Pick<\n SharedDropdownProps,\n 'toggleRef' | 'popupDirection' | 'popupOffsetDistance' | 'placement'\n >,\n React.HTMLAttributes<HTMLDivElement> {\n header?: React.ReactNode;\n text?: React.ReactNode;\n /**\n * Закрыть попап по клику снаружи.\n */\n onClose(options: ActionSheetOnCloseOptions): void;\n /**\n * Только мобильный iOS.\n */\n iosCloseItem?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ActionSheet\n */\nexport const ActionSheet = ({\n children,\n className,\n header,\n text,\n style,\n iosCloseItem,\n popupDirection,\n popupOffsetDistance,\n placement,\n ...restProps\n}: ActionSheetProps) => {\n const platform = usePlatform();\n const [closingBy, setClosingBy] = React.useState<undefined | CloseInitiators>(undefined);\n const onClose = () => setClosingBy('other');\n const _action = React.useRef(noop);\n\n const afterClose = () => {\n restProps.onClose({ closedBy: closingBy || 'other' });\n _action.current();\n _action.current = noop;\n };\n\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n\n useScrollLock(!isDesktop);\n\n let timeout = platform === Platform.IOS ? 300 : 200;\n\n if (isDesktop) {\n timeout = 0;\n }\n\n const fallbackTransitionFinish = useTimeout(afterClose, timeout);\n React.useEffect(() => {\n if (closingBy) {\n fallbackTransitionFinish.set();\n } else {\n fallbackTransitionFinish.clear();\n }\n }, [closingBy, fallbackTransitionFinish]);\n\n const onItemClick = React.useCallback<ItemClickHandler>(\n ({ action, immediateAction, autoClose, isCancelItem }) =>\n (event) => {\n event.persist();\n immediateAction && immediateAction(event);\n if (autoClose) {\n _action.current = () => action && action(event);\n setClosingBy(isCancelItem ? 'cancel-item' : 'action-item');\n } else {\n action && action(event);\n }\n },\n [],\n );\n const contextValue = useObjectMemo({ onItemClick, isDesktop });\n\n const DropdownComponent = isDesktop ? ActionSheetDropdownDesktop : ActionSheetDropdown;\n\n if (process.env.NODE_ENV === 'development' && popupDirection) {\n // TODO [>=6]: popupDirection\n warn('Свойство \"popupDirection\" будет удалено в v6. Используйте свойство \"placement\"');\n }\n\n popupDirection = popupDirection !== undefined ? popupDirection : 'bottom';\n\n const dropdownProps = isDesktop\n ? Object.assign(restProps, { popupOffsetDistance, popupDirection, placement })\n : restProps;\n\n const actionSheet = (\n <ActionSheetContext.Provider value={contextValue}>\n <DropdownComponent\n closing={Boolean(closingBy)}\n timeout={timeout}\n {...dropdownProps}\n onClose={onClose}\n className={isDesktop ? className : undefined}\n style={isDesktop ? style : undefined}\n >\n <div className={styles['ActionSheet__content-wrapper']}>\n {(header || text) && (\n <header className={styles['ActionSheet__header']}>\n {header && (\n <Footnote weight=\"2\" className={styles['ActionSheet__title']}>\n {header}\n </Footnote>\n )}\n {text && <Footnote className={styles['ActionSheet__text']}>{text}</Footnote>}\n </header>\n )}\n {children}\n </div>\n {platform === Platform.IOS && !isDesktop && (\n <div className={styles['ActionSheet__close-item-wrapper--ios']}>\n {iosCloseItem ?? <ActionSheetDefaultIosCloseItem />}\n </div>\n )}\n </DropdownComponent>\n </ActionSheetContext.Provider>\n );\n\n if (isDesktop) {\n return actionSheet;\n }\n\n return (\n <PopoutWrapper\n closing={Boolean(closingBy)}\n alignY=\"bottom\"\n className={className}\n style={style}\n onClick={onClose}\n hasMask\n fixed\n >\n {actionSheet}\n </PopoutWrapper>\n );\n};\n"],"names":["React","noop","useAdaptivityWithJSMediaQueries","useObjectMemo","usePlatform","useTimeout","Platform","warnOnce","useScrollLock","PopoutWrapper","Footnote","ActionSheetContext","ActionSheetDefaultIosCloseItem","ActionSheetDropdown","ActionSheetDropdownDesktop","styles","warn","ActionSheet","children","className","header","text","style","iosCloseItem","popupDirection","popupOffsetDistance","placement","restProps","platform","closingBy","setClosingBy","useState","undefined","onClose","_action","useRef","afterClose","closedBy","current","isDesktop","timeout","IOS","fallbackTransitionFinish","useEffect","set","clear","onItemClick","useCallback","action","immediateAction","autoClose","isCancelItem","event","persist","contextValue","DropdownComponent","process","env","NODE_ENV","dropdownProps","Object","assign","actionSheet","Provider","value","closing","Boolean","div","weight","alignY","onClick","hasMask","fixed"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,IAAI,QAAQ,kBAAkB;AACvC,SAASC,+BAA+B,QAAQ,8CAA8C;AAC9F,SAASC,aAAa,QAAQ,4BAA4B;AAC1D,SAASC,WAAW,QAAQ,0BAA0B;AACtD,SAASC,UAAU,QAAQ,yBAAyB;AACpD,SAASC,QAAQ,QAAQ,qBAAqB;AAC9C,SAASC,QAAQ,QAAQ,qBAAqB;AAC9C,SAASC,aAAa,QAAQ,2BAA2B;AACzD,SAASC,aAAa,QAAQ,iCAAiC;AAC/D,SAASC,QAAQ,QAAQ,kCAAkC;AAC3D,SAASC,kBAAkB,QAA0B,uBAAuB;AAC5E,SAASC,8BAA8B,QAAQ,mCAAmC;AAClF,SAASC,mBAAmB,QAAQ,wBAAwB;AAC5D,SAASC,0BAA0B,QAAQ,+BAA+B;AAE1E,OAAOC,YAAY,2BAA2B;AAE9C,MAAMC,OAAOT,SAAS;AAwBtB;;CAEC,GACD,OAAO,MAAMU,cAAc,CAAC,EAC1BC,QAAQ,EACRC,SAAS,EACTC,MAAM,EACNC,IAAI,EACJC,KAAK,EACLC,YAAY,EACZC,cAAc,EACdC,mBAAmB,EACnBC,SAAS,EACT,GAAGC,WACc;IACjB,MAAMC,WAAWxB;IACjB,MAAM,CAACyB,WAAWC,aAAa,GAAG9B,MAAM+B,QAAQ,CAA8BC;IAC9E,MAAMC,UAAU,IAAMH,aAAa;IACnC,MAAMI,UAAUlC,MAAMmC,MAAM,CAAClC;IAE7B,MAAMmC,aAAa;QACjBT,UAAUM,OAAO,CAAC;YAAEI,UAAUR,aAAa;QAAQ;QACnDK,QAAQI,OAAO;QACfJ,QAAQI,OAAO,GAAGrC;IACpB;IAEA,MAAM,EAAEsC,SAAS,EAAE,GAAGrC;IAEtBM,cAAc,CAAC+B;IAEf,IAAIC,UAAUZ,aAAatB,SAASmC,GAAG,GAAG,MAAM;IAEhD,IAAIF,WAAW;QACbC,UAAU;IACZ;IAEA,MAAME,2BAA2BrC,WAAW+B,YAAYI;IACxDxC,MAAM2C,SAAS,CAAC;QACd,IAAId,WAAW;YACba,yBAAyBE,GAAG;QAC9B,OAAO;YACLF,yBAAyBG,KAAK;QAChC;IACF,GAAG;QAAChB;QAAWa;KAAyB;IAExC,MAAMI,cAAc9C,MAAM+C,WAAW,CACnC,CAAC,EAAEC,MAAM,EAAEC,eAAe,EAAEC,SAAS,EAAEC,YAAY,EAAE,GACnD,CAACC;YACCA,MAAMC,OAAO;YACbJ,mBAAmBA,gBAAgBG;YACnC,IAAIF,WAAW;gBACbhB,QAAQI,OAAO,GAAG,IAAMU,UAAUA,OAAOI;gBACzCtB,aAAaqB,eAAe,gBAAgB;YAC9C,OAAO;gBACLH,UAAUA,OAAOI;YACnB;QACF,GACF,EAAE;IAEJ,MAAME,eAAenD,cAAc;QAAE2C;QAAaP;IAAU;IAE5D,MAAMgB,oBAAoBhB,YAAYzB,6BAA6BD;IAEnE,IAAI2C,QAAQC,GAAG,CAACC,QAAQ,KAAK,iBAAiBlC,gBAAgB;QAC5D,6BAA6B;QAC7BR,KAAK;IACP;IAEAQ,iBAAiBA,mBAAmBQ,YAAYR,iBAAiB;IAEjE,MAAMmC,gBAAgBpB,YAClBqB,OAAOC,MAAM,CAAClC,WAAW;QAAEF;QAAqBD;QAAgBE;IAAU,KAC1EC;IAEJ,MAAMmC,4BACJ,oBAACnD,mBAAmBoD,QAAQ;QAACC,OAAOV;qBAClC,oBAACC;QACCU,SAASC,QAAQrC;QACjBW,SAASA;QACR,GAAGmB,aAAa;QACjB1B,SAASA;QACTd,WAAWoB,YAAYpB,YAAYa;QACnCV,OAAOiB,YAAYjB,QAAQU;qBAE3B,oBAACmC;QAAIhD,WAAWJ,MAAM,CAAC,+BAA+B;OACnD,AAACK,CAAAA,UAAUC,IAAG,mBACb,oBAACD;QAAOD,WAAWJ,MAAM,CAAC,sBAAsB;OAC7CK,wBACC,oBAACV;QAAS0D,QAAO;QAAIjD,WAAWJ,MAAM,CAAC,qBAAqB;OACzDK,SAGJC,sBAAQ,oBAACX;QAASS,WAAWJ,MAAM,CAAC,oBAAoB;OAAGM,QAG/DH,WAEFU,aAAatB,SAASmC,GAAG,IAAI,CAACF,2BAC7B,oBAAC4B;QAAIhD,WAAWJ,MAAM,CAAC,uCAAuC;OAC3DQ,8BAAgB,oBAACX;IAO5B,IAAI2B,WAAW;QACb,OAAOuB;IACT;IAEA,qBACE,oBAACrD;QACCwD,SAASC,QAAQrC;QACjBwC,QAAO;QACPlD,WAAWA;QACXG,OAAOA;QACPgD,SAASrC;QACTsC,SAAAA;QACAC,OAAAA;OAECV;AAGP,EAAE"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
.ActionSheet {
|
|
2
|
-
|
|
3
|
-
box-shadow: var(--vkui--elevation3);
|
|
4
|
-
width: calc(100% - 20px);
|
|
2
|
+
width: 100%;
|
|
5
3
|
max-width: var(--vkui--size_popup_small--regular);
|
|
6
|
-
|
|
7
|
-
display: flex;
|
|
8
|
-
flex-direction: column;
|
|
4
|
+
padding: 10px;
|
|
9
5
|
box-sizing: border-box;
|
|
10
6
|
animation: animation-actionsheet-intro 0.2s var(--vkui--animation_easing_platform);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.ActionSheet__content-wrapper {
|
|
11
10
|
padding: 8px 0;
|
|
12
|
-
|
|
11
|
+
overflow: hidden;
|
|
13
12
|
border-radius: 12px;
|
|
13
|
+
box-shadow: var(--vkui--elevation3);
|
|
14
14
|
background: var(--vkui--color_background_modal);
|
|
15
15
|
}
|
|
16
16
|
|
|
@@ -33,13 +33,25 @@
|
|
|
33
33
|
*/
|
|
34
34
|
|
|
35
35
|
.ActionSheet--ios {
|
|
36
|
-
width: 100%;
|
|
37
|
-
animation: animation-actionsheet-intro 0.3s var(--vkui--animation_easing_platform);
|
|
38
36
|
padding: 8px;
|
|
39
|
-
|
|
37
|
+
animation: animation-actionsheet-intro 0.3s var(--vkui--animation_easing_platform);
|
|
40
38
|
background: transparent;
|
|
41
39
|
}
|
|
42
40
|
|
|
41
|
+
.ActionSheet--ios .ActionSheet__content-wrapper {
|
|
42
|
+
border-radius: 14px;
|
|
43
|
+
padding: 0;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.ActionSheet__close-item-wrapper--ios {
|
|
47
|
+
margin-top: 8px;
|
|
48
|
+
margin-bottom: var(--vkui_internal--safe_area_inset_bottom);
|
|
49
|
+
overflow: hidden;
|
|
50
|
+
border-radius: 14px;
|
|
51
|
+
box-shadow: var(--vkui--elevation3);
|
|
52
|
+
background: var(--vkui--color_background_modal);
|
|
53
|
+
}
|
|
54
|
+
|
|
43
55
|
.ActionSheet--ios.ActionSheet--closing {
|
|
44
56
|
transform: translateY(100%);
|
|
45
57
|
transition: transform 0.3s var(--vkui--animation_easing_platform);
|
|
@@ -47,8 +59,6 @@
|
|
|
47
59
|
|
|
48
60
|
.ActionSheet--ios .ActionSheet__header {
|
|
49
61
|
position: relative;
|
|
50
|
-
overflow: hidden;
|
|
51
|
-
border-radius: 14px 14px 0 0;
|
|
52
62
|
text-align: center;
|
|
53
63
|
}
|
|
54
64
|
|
|
@@ -86,11 +96,11 @@
|
|
|
86
96
|
width: auto;
|
|
87
97
|
height: auto;
|
|
88
98
|
animation: none;
|
|
89
|
-
|
|
99
|
+
padding: 0;
|
|
90
100
|
max-width: 100%;
|
|
91
101
|
}
|
|
92
102
|
|
|
93
|
-
.ActionSheet--desktop.ActionSheet--ios {
|
|
103
|
+
.ActionSheet--desktop.ActionSheet--ios .ActionSheet__content-wrapper {
|
|
94
104
|
border-radius: 14px;
|
|
95
105
|
padding: 0;
|
|
96
106
|
}
|
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
color: var(--vkui--color_text_primary);
|
|
8
8
|
padding: 0 20px;
|
|
9
9
|
min-height: 48px;
|
|
10
|
-
border-radius: 0;
|
|
11
10
|
box-sizing: border-box;
|
|
12
11
|
}
|
|
13
12
|
|
|
@@ -109,7 +108,6 @@
|
|
|
109
108
|
.ActionSheetItem--ios {
|
|
110
109
|
padding: 14px 18px;
|
|
111
110
|
min-height: 56px;
|
|
112
|
-
border-radius: 0;
|
|
113
111
|
color: var(--vkui--color_text_accent_themed);
|
|
114
112
|
background: var(--vkui--color_background_modal);
|
|
115
113
|
}
|
|
@@ -126,17 +124,6 @@
|
|
|
126
124
|
color: var(--vkui--color_text_negative);
|
|
127
125
|
}
|
|
128
126
|
|
|
129
|
-
.ActionSheetItem--ios:first-child {
|
|
130
|
-
border-top-left-radius: 14px;
|
|
131
|
-
border-top-right-radius: 14px;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
.ActionSheetItem--ios:not(.ActionSheetItem--desktop):nth-last-child(2),
|
|
135
|
-
.ActionSheetItem--ios:last-child {
|
|
136
|
-
border-bottom-left-radius: 14px;
|
|
137
|
-
border-bottom-right-radius: 14px;
|
|
138
|
-
}
|
|
139
|
-
|
|
140
127
|
.ActionSheetItem--ios::before {
|
|
141
128
|
position: absolute;
|
|
142
129
|
left: 0;
|
|
@@ -193,9 +180,6 @@
|
|
|
193
180
|
}
|
|
194
181
|
|
|
195
182
|
.ActionSheetItem--mode-cancel {
|
|
196
|
-
margin-top: 8px;
|
|
197
|
-
margin-bottom: var(--vkui_internal--safe_area_inset_bottom);
|
|
198
|
-
border-radius: 14px;
|
|
199
183
|
min-height: 52px;
|
|
200
184
|
}
|
|
201
185
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="react" />
|
|
2
2
|
import { HTMLAttributesWithRootRef } from '../../types';
|
|
3
3
|
export interface AspectRatioProps extends HTMLAttributesWithRootRef<HTMLDivElement> {
|
|
4
4
|
className?: string;
|
|
@@ -6,7 +6,6 @@ export interface AspectRatioProps extends HTMLAttributesWithRootRef<HTMLDivEleme
|
|
|
6
6
|
* По умолчанию, вложенный контент будет растягиваться и заполнять весь блок.
|
|
7
7
|
*/
|
|
8
8
|
mode?: 'stretch' | 'none';
|
|
9
|
-
children: React.ReactNode;
|
|
10
9
|
/**
|
|
11
10
|
* Например 16 / 9, 4 / 3, 1920 / 1080
|
|
12
11
|
*/
|
|
@@ -15,8 +14,8 @@ export interface AspectRatioProps extends HTMLAttributesWithRootRef<HTMLDivEleme
|
|
|
15
14
|
/**
|
|
16
15
|
* `AspectRatio` позволяет поддерживать постоянное соотношение ширины и высоты.
|
|
17
16
|
* Его можно использовать для отображения изображений, карт, видео и других медиафайлов.
|
|
18
|
-
|
|
17
|
+
|
|
19
18
|
* @since 5.5.0
|
|
20
19
|
* @see https://vkcom.github.io/VKUI/#/AspectRatio
|
|
21
20
|
*/
|
|
22
|
-
export declare function AspectRatio({ ratio,
|
|
21
|
+
export declare function AspectRatio({ ratio, mode, style: styleProp, ...props }: AspectRatioProps): JSX.Element;
|
|
@@ -5,10 +5,10 @@ import styles from './AspectRatio.module.css';
|
|
|
5
5
|
/**
|
|
6
6
|
* `AspectRatio` позволяет поддерживать постоянное соотношение ширины и высоты.
|
|
7
7
|
* Его можно использовать для отображения изображений, карт, видео и других медиафайлов.
|
|
8
|
-
|
|
8
|
+
|
|
9
9
|
* @since 5.5.0
|
|
10
10
|
* @see https://vkcom.github.io/VKUI/#/AspectRatio
|
|
11
|
-
*/ export function AspectRatio({ ratio,
|
|
11
|
+
*/ export function AspectRatio({ ratio, mode = 'stretch', style: styleProp, ...props }) {
|
|
12
12
|
const style = {
|
|
13
13
|
['--vkui_internal--aspect_ratio']: String(ratio)
|
|
14
14
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/AspectRatio/AspectRatio.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { CSSCustomProperties, HTMLAttributesWithRootRef } from '../../types';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport styles from './AspectRatio.module.css';\n\nexport interface AspectRatioProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n className?: string;\n /**\n * По умолчанию, вложенный контент будет растягиваться и заполнять весь блок.\n */\n mode?: 'stretch' | 'none';\n
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/AspectRatio/AspectRatio.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { CSSCustomProperties, HTMLAttributesWithRootRef } from '../../types';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport styles from './AspectRatio.module.css';\n\nexport interface AspectRatioProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n className?: string;\n /**\n * По умолчанию, вложенный контент будет растягиваться и заполнять весь блок.\n */\n mode?: 'stretch' | 'none';\n /**\n * Например 16 / 9, 4 / 3, 1920 / 1080\n */\n ratio: number;\n}\n\n/**\n * `AspectRatio` позволяет поддерживать постоянное соотношение ширины и высоты.\n * Его можно использовать для отображения изображений, карт, видео и других медиафайлов.\n\n * @since 5.5.0\n * @see https://vkcom.github.io/VKUI/#/AspectRatio\n */\nexport function AspectRatio({\n ratio,\n mode = 'stretch',\n style: styleProp,\n ...props\n}: AspectRatioProps): JSX.Element {\n const style: React.CSSProperties & CSSCustomProperties = {\n ['--vkui_internal--aspect_ratio']: String(ratio),\n };\n\n return (\n <RootComponent\n baseClassName={classNames(\n styles.AspectRatio,\n mode === 'stretch' && styles['AspectRatio--mode-stretch'],\n )}\n style={{ ...styleProp, ...style }}\n {...props}\n />\n );\n}\n"],"names":["React","classNames","RootComponent","styles","AspectRatio","ratio","mode","style","styleProp","props","String","baseClassName"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,UAAU,QAAQ,kBAAkB;AAE7C,SAASC,aAAa,QAAQ,iCAAiC;AAC/D,OAAOC,YAAY,2BAA2B;AAc9C;;;;;;CAMC,GACD,OAAO,SAASC,YAAY,EAC1BC,KAAK,EACLC,OAAO,SAAS,EAChBC,OAAOC,SAAS,EAChB,GAAGC,OACc;IACjB,MAAMF,QAAmD;QACvD,CAAC,gCAAgC,EAAEG,OAAOL;IAC5C;IAEA,qBACE,oBAACH;QACCS,eAAeV,WACbE,OAAOC,WAAW,EAClBE,SAAS,aAAaH,MAAM,CAAC,4BAA4B;QAE3DI,OAAO;YAAE,GAAGC,SAAS;YAAE,GAAGD,KAAK;QAAC;QAC/B,GAAGE,KAAK;;AAGf"}
|
|
@@ -11,10 +11,6 @@ import { Subhead } from '../Typography/Subhead/Subhead';
|
|
|
11
11
|
import { Text } from '../Typography/Text/Text';
|
|
12
12
|
import { Title } from '../Typography/Title/Title';
|
|
13
13
|
import styles from './Banner.module.css';
|
|
14
|
-
const stylesSize = {
|
|
15
|
-
s: styles['Banner--size-s'],
|
|
16
|
-
m: styles['Banner--size-m']
|
|
17
|
-
};
|
|
18
14
|
/**
|
|
19
15
|
* @see https://vkcom.github.io/VKUI/#/Banner
|
|
20
16
|
*/ export const Banner = ({ mode = 'tint', imageTheme = 'dark', size = 's', before, asideMode, header, subheader, text, children, background, actions, onDismiss, dismissLabel = 'Скрыть', noPadding, ...restProps })=>{
|
|
@@ -45,7 +41,7 @@ const stylesSize = {
|
|
|
45
41
|
return /*#__PURE__*/ React.createElement(RootComponent, {
|
|
46
42
|
Component: "section",
|
|
47
43
|
...restProps,
|
|
48
|
-
baseClassName: classNames(styles['Banner'], !noPadding && styles['Banner--withPadding'], platform === Platform.IOS && styles['Banner--ios'], mode === 'image' && styles['Banner--mode-image'],
|
|
44
|
+
baseClassName: classNames(styles['Banner'], !noPadding && styles['Banner--withPadding'], platform === Platform.IOS && styles['Banner--ios'], mode === 'image' && styles['Banner--mode-image'], size === 'm' && styles['Banner--size-m'], mode === 'image' && imageTheme === 'dark' && styles['Banner--inverted'])
|
|
49
45
|
}, asideMode === 'expand' ? /*#__PURE__*/ React.createElement(Tappable, {
|
|
50
46
|
className: styles['Banner__in'],
|
|
51
47
|
activeMode: platform === Platform.IOS ? 'opacity' : 'background',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Banner/Banner.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon24Cancel, Icon24Chevron, Icon24Dismiss, Icon24DismissDark } from '@vkontakte/icons';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { HTMLAttributesWithRootRef } from '../../types';\nimport { IconButton } from '../IconButton/IconButton';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport { Tappable } from '../Tappable/Tappable';\nimport { Headline } from '../Typography/Headline/Headline';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { Text } from '../Typography/Text/Text';\nimport { Title } from '../Typography/Title/Title';\nimport styles from './Banner.module.css';\n\
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Banner/Banner.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon24Cancel, Icon24Chevron, Icon24Dismiss, Icon24DismissDark } from '@vkontakte/icons';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { HTMLAttributesWithRootRef } from '../../types';\nimport { IconButton } from '../IconButton/IconButton';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport { Tappable } from '../Tappable/Tappable';\nimport { Headline } from '../Typography/Headline/Headline';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { Text } from '../Typography/Text/Text';\nimport { Title } from '../Typography/Title/Title';\nimport styles from './Banner.module.css';\n\nexport interface BannerProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n /**\n * Тип баннера.\n */\n mode?: 'tint' | 'image';\n size?: 's' | 'm';\n /**\n * Тип действия в правой части баннера.\n *\n * - `dismiss` – отображается иконка крестика, при клике на неё сработает свойство `onDismiss`.\n * - `expand` – отображается иконка шеврона, которая подразумевает, что при клике на баннер можно куда-то перейти.\n */\n asideMode?: 'dismiss' | 'expand';\n /**\n * Срабатывает при клике на иконку крестика при `asideMode=\"dismiss\"`.\n */\n onDismiss?: React.MouseEventHandler<HTMLButtonElement>;\n /**\n * `aria-label` для кнопки при `asideMode=\"dismiss\". Необходим, чтобы кнопка была доступной.\n */\n dismissLabel?: string;\n /**\n * Содержимое, отображаемое в левой части баннера.\n */\n before?: React.ReactNode;\n /**\n * Заголовок.\n */\n header?: React.ReactNode;\n /**\n * Подзаголовок.\n */\n subheader?: React.ReactNode;\n /**\n * Текст баннера.\n */\n text?: React.ReactNode;\n /**\n * При использовании `mode=\"image\"`.\n *\n * - `light` – в качестве фона используется светлое изображение, цвет текста в баннере будет тёмным.\n * - `dark` – в качестве фона используется тёмное изображение, цвет текста будет светлым.\n */\n imageTheme?: 'light' | 'dark';\n /**\n * При использовании `mode=\"image\"`.\n *\n * Элемент, который нужно стилизовать цветом и/или фоном. Этот элемент будет растянут на 100% ширины и высоты баннера.\n */\n background?: React.ReactNode;\n /**\n * Кнопки-действия. Принимает [`Button`](https://vkcom.github.io/VKUI/#/Button).\n *\n * - В режиме `tint` или `image` со светлым фоном используйте только с параметрами:\n * - `mode=\"primary\"`\n * - `mode=\"secondary\"`\n * - В режиме `image` с тёмным фоном используйте с параметрами:\n * - `appearance=\"overlay\"`.\n *\n * Для набора кнопок используйте [`ButtonGroup`](https://vkcom.github.io/VKUI/#/ButtonGroup) с параметрами:\n *\n * - `gap=\"m\" mode=\"horizontal\" stretched`\n * - `gap=\"m\" mode=\"vertical\" stretched`\n */\n actions?: React.ReactNode;\n /**\n * Удаляет отступы у компонента\n */\n noPadding?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Banner\n */\nexport const Banner = ({\n mode = 'tint',\n imageTheme = 'dark',\n size = 's',\n before,\n asideMode,\n header,\n subheader,\n text,\n children,\n background,\n actions,\n onDismiss,\n dismissLabel = 'Скрыть',\n noPadding,\n ...restProps\n}: BannerProps) => {\n const platform = usePlatform();\n\n const HeaderTypography = size === 'm' ? Title : Headline;\n const SubheaderTypography = size === 'm' ? Text : Subhead;\n\n const IconDismissIOS = mode === 'image' ? Icon24DismissDark : Icon24Dismiss;\n\n const content = (\n <>\n {mode === 'image' && background && (\n <div aria-hidden className={styles['Banner__bg']}>\n {background}\n </div>\n )}\n\n {before && <div className={styles['Banner__before']}>{before}</div>}\n\n <div className={styles['Banner__content']}>\n {hasReactNode(header) && (\n <HeaderTypography Component=\"p\" weight=\"2\" level={size === 'm' ? '2' : '1'}>\n {header}\n </HeaderTypography>\n )}\n {hasReactNode(subheader) && (\n <SubheaderTypography Component=\"p\" className={styles['Banner__subheader']}>\n {subheader}\n </SubheaderTypography>\n )}\n {hasReactNode(text) && (\n <Text Component=\"p\" className={styles['Banner__text']}>\n {text}\n </Text>\n )}\n {hasReactNode(actions) && React.Children.count(actions) > 0 && (\n <div className={styles['Banner__actions']}>{actions}</div>\n )}\n </div>\n </>\n );\n\n return (\n <RootComponent\n Component=\"section\"\n {...restProps}\n baseClassName={classNames(\n styles['Banner'],\n !noPadding && styles['Banner--withPadding'],\n platform === Platform.IOS && styles['Banner--ios'],\n mode === 'image' && styles['Banner--mode-image'],\n size === 'm' && styles['Banner--size-m'],\n mode === 'image' && imageTheme === 'dark' && styles['Banner--inverted'],\n )}\n >\n {asideMode === 'expand' ? (\n <Tappable\n className={styles['Banner__in']}\n activeMode={platform === Platform.IOS ? 'opacity' : 'background'}\n role=\"button\"\n >\n {content}\n\n <div className={styles['Banner__aside']}>\n <Icon24Chevron className={styles['Banner__expand']} />\n </div>\n </Tappable>\n ) : (\n <div className={styles['Banner__in']}>\n {content}\n\n {asideMode === 'dismiss' && (\n <div className={styles['Banner__aside']}>\n <IconButton\n aria-label={dismissLabel}\n className={styles['Banner__dismiss']}\n onClick={onDismiss}\n hoverMode=\"opacity\"\n hasActive={false}\n >\n {platform === Platform.IOS ? <IconDismissIOS /> : <Icon24Cancel />}\n </IconButton>\n </div>\n )}\n </div>\n )}\n </RootComponent>\n );\n};\n"],"names":["React","Icon24Cancel","Icon24Chevron","Icon24Dismiss","Icon24DismissDark","classNames","hasReactNode","usePlatform","Platform","IconButton","RootComponent","Tappable","Headline","Subhead","Text","Title","styles","Banner","mode","imageTheme","size","before","asideMode","header","subheader","text","children","background","actions","onDismiss","dismissLabel","noPadding","restProps","platform","HeaderTypography","SubheaderTypography","IconDismissIOS","content","div","aria-hidden","className","Component","weight","level","Children","count","baseClassName","IOS","activeMode","role","aria-label","onClick","hoverMode","hasActive"],"mappings":"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"}
|