@skbkontur/react-ui 5.0.1 → 5.0.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/CHANGELOG.md +12 -0
- package/cjs/components/DatePicker/DatePicker.d.ts +0 -2
- package/cjs/components/DatePicker/DatePicker.js +1 -11
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/internal/ZIndex/ZIndex.js +2 -2
- package/cjs/internal/ZIndex/ZIndex.js.map +1 -1
- package/components/DatePicker/DatePicker/DatePicker.js +5 -18
- package/components/DatePicker/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +0 -2
- package/internal/ZIndex/ZIndex/ZIndex.js +2 -2
- package/internal/ZIndex/ZIndex/ZIndex.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [5.0.2](https://github.com/skbkontur/retail-ui/compare/@skbkontur/react-ui@5.0.1...@skbkontur/react-ui@5.0.2) (2024-11-19)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **DatePicker:** scrolling to today ([#3539](https://github.com/skbkontur/retail-ui/issues/3539)) ([b3147ac](https://github.com/skbkontur/retail-ui/commit/b3147ac9f9b66ae7ffcb2bc28bfa9dfec4e20878))
|
|
12
|
+
* **ZIndex:** change document to globalObject.document ([#3540](https://github.com/skbkontur/retail-ui/issues/3540)) ([aa1a055](https://github.com/skbkontur/retail-ui/commit/aa1a055e2c27e01abf4ced0249ce72a0b1642ba0))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
6
18
|
## [5.0.1](https://github.com/skbkontur/retail-ui/compare/@skbkontur/react-ui@5.0.0...@skbkontur/react-ui@5.0.1) (2024-11-08)
|
|
7
19
|
|
|
8
20
|
|
|
@@ -101,7 +101,6 @@ export declare class DatePicker extends React.PureComponent<DatePickerProps, Dat
|
|
|
101
101
|
static defaultProps: DefaultProps;
|
|
102
102
|
private getProps;
|
|
103
103
|
private theme;
|
|
104
|
-
private calendar;
|
|
105
104
|
private readonly locale;
|
|
106
105
|
static validate: (value: Nullable<string>, range?: {
|
|
107
106
|
minDate?: string | undefined;
|
|
@@ -131,7 +130,6 @@ export declare class DatePicker extends React.PureComponent<DatePickerProps, Dat
|
|
|
131
130
|
renderMain: (props: CommonWrapperRestProps<DatePickerProps>) => React.JSX.Element;
|
|
132
131
|
private parseValueToDate;
|
|
133
132
|
private renderTodayLink;
|
|
134
|
-
private handleSelectToday;
|
|
135
133
|
getParent: () => Nullable<Element>;
|
|
136
134
|
private getRootStyle;
|
|
137
135
|
private getInputRef;
|
|
@@ -176,7 +176,6 @@ DatePicker = exports.DatePicker = (_dec = (0, _decorators.locale)('DatePicker',
|
|
|
176
176
|
|
|
177
177
|
getProps = (0, _createPropsGetter.createPropsGetter)(DatePicker.defaultProps);_this.
|
|
178
178
|
|
|
179
|
-
calendar = null;_this.
|
|
180
179
|
|
|
181
180
|
|
|
182
181
|
|
|
@@ -331,7 +330,6 @@ DatePicker = exports.DatePicker = (_dec = (0, _decorators.locale)('DatePicker',
|
|
|
331
330
|
onMouseDown: function onMouseDown(e) {return e.preventDefault();} }, /*#__PURE__*/
|
|
332
331
|
|
|
333
332
|
_react.default.createElement(_Calendar.Calendar, {
|
|
334
|
-
ref: function ref(c) {return _this.calendar = c;},
|
|
335
333
|
maxDate: _this.parseValueToDate(maxDate),
|
|
336
334
|
minDate: _this.parseValueToDate(minDate),
|
|
337
335
|
onValueChange: _this.handleValueChange,
|
|
@@ -418,15 +416,7 @@ DatePicker = exports.DatePicker = (_dec = (0, _decorators.locale)('DatePicker',
|
|
|
418
416
|
|
|
419
417
|
|
|
420
418
|
|
|
421
|
-
handleSelectToday = function (today) {return function () {
|
|
422
|
-
_this.handleSelect(today);
|
|
423
419
|
|
|
424
|
-
if (_this.calendar) {
|
|
425
|
-
var _this$state$today = _this.state.today,monthNative = _this$state$today.month,year = _this$state$today.year;
|
|
426
|
-
var month = (0, _CalendarUtils.getMonthInHumanFormat)(monthNative);
|
|
427
|
-
_this.calendar.scrollToMonth(month, year);
|
|
428
|
-
}
|
|
429
|
-
};};_this.
|
|
430
420
|
|
|
431
421
|
getParent = function () {
|
|
432
422
|
return (0, _rootNode.getRootNode)(_this);
|
|
@@ -488,7 +478,7 @@ DatePicker = exports.DatePicker = (_dec = (0, _decorators.locale)('DatePicker',
|
|
|
488
478
|
*/;_proto.focus = function focus() {if (this.props.disabled) {return;}if (this.input) {this.input.focus();}this.handleFocus();} /**
|
|
489
479
|
* Закрывает выпадашку выбора дня
|
|
490
480
|
* @public
|
|
491
|
-
*/;_proto.close = function close() {this.setState({ opened: false });};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _ThemeFactory.ThemeFactory.create({ calendarBottomSeparatorBorder: 'none' }, theme) }, /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: _this2.setRootNode }, _this2.getProps()), _this2.renderMain));});};_proto.parseValueToDate = function parseValueToDate(value) {if (value === undefined || value === null) {return undefined;}var date = new _InternalDate.InternalDate({ value: value });if (date.validate({ checks: [_types.InternalDateValidateCheck.NotNull, _types.InternalDateValidateCheck.Native] })) {return date.toString({ withPad: true });}return undefined;};_proto.renderTodayLink = function renderTodayLink() {var _this$locale = this.locale,order = _this$locale.order,separator = _this$locale.separator;var today = new _InternalDate.InternalDate({ order: order, separator: separator }).setComponents(_InternalDateGetter.InternalDateGetter.getTodayComponents()).toString({ withPad: true, withSeparator: true });return /*#__PURE__*/_react.default.createElement("div", { style: { margin: 8 } }, /*#__PURE__*/_react.default.createElement(_Button.Button, { "aria-label": this.locale.todayAriaLabel, "data-tid": DatePickerDataTids.pickerTodayWrapper, width: "100%", onClick:
|
|
481
|
+
*/;_proto.close = function close() {this.setState({ opened: false });};_proto.render = function render() {var _this2 = this;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Consumer, null, function (theme) {_this2.theme = theme;return /*#__PURE__*/_react.default.createElement(_ThemeContext.ThemeContext.Provider, { value: _ThemeFactory.ThemeFactory.create({ calendarBottomSeparatorBorder: 'none' }, theme) }, /*#__PURE__*/_react.default.createElement(_CommonWrapper.CommonWrapper, (0, _extends2.default)({ rootNodeRef: _this2.setRootNode }, _this2.getProps()), _this2.renderMain));});};_proto.parseValueToDate = function parseValueToDate(value) {if (value === undefined || value === null) {return undefined;}var date = new _InternalDate.InternalDate({ value: value });if (date.validate({ checks: [_types.InternalDateValidateCheck.NotNull, _types.InternalDateValidateCheck.Native] })) {return date.toString({ withPad: true });}return undefined;};_proto.renderTodayLink = function renderTodayLink() {var _this3 = this;var _this$locale = this.locale,order = _this$locale.order,separator = _this$locale.separator;var today = new _InternalDate.InternalDate({ order: order, separator: separator }).setComponents(_InternalDateGetter.InternalDateGetter.getTodayComponents()).toString({ withPad: true, withSeparator: true });return /*#__PURE__*/_react.default.createElement("div", { style: { margin: 8 } }, /*#__PURE__*/_react.default.createElement(_Button.Button, { "aria-label": this.locale.todayAriaLabel, "data-tid": DatePickerDataTids.pickerTodayWrapper, width: "100%", onClick: function onClick() {_this3.handleSelect(today);}, icon: /*#__PURE__*/_react.default.createElement(_ArrowAUp16Light.ArrowAUpIcon16Light, null) }, this.locale.today));};return DatePicker;}(_react.default.PureComponent), _DatePicker.__KONTUR_REACT_UI__ = 'DatePicker', _DatePicker.displayName = 'DatePicker', _DatePicker.propTypes = { autoFocus: _propTypes.default.bool, disabled: _propTypes.default.bool, /**
|
|
492
482
|
* Включает кнопку сегодня в календаре
|
|
493
483
|
*/enableTodayLink: _propTypes.default.bool, error: _propTypes.default.bool, /**
|
|
494
484
|
* Максимальная дата в календаре.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_propTypes","_interopRequireDefault","require","_react","_Popup","_locale","_decorators","_InternalDateGetter","_ArrowAUp16Light","_ThemeFactory","_InternalDate","_constants","_types","_DateInput","_filterProps","_CommonWrapper","_client","_NativeDateInput","_rootNode","_utils","_createPropsGetter","_Calendar","_ThemeContext","_Button","_CalendarUtils","_decorator","_getMenuPositions","_ZIndex","_DatePicker2","_locale2","_MobilePicker","_dec","_class","_DatePicker","INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","exports","DatePickerDataTids","root","input","label","pickerRoot","pickerTodayWrapper","DatePicker","locale","DatePickerLocaleHelper","responsiveLayout","rootNode","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","calendar","state","opened","canUseMobileNativeDatePicker","today","getTodayDate","focused","renderMain","props","picker","_this$getProps","minDate","maxDate","menuPos","menuAlign","isMobile","isMobileLayout","default","createElement","MobilePicker","value","parseValueToDate","onValueChange","enableTodayLink","isHoliday","onCloseRequest","handleBlur","renderDay","onMonthChange","LocaleContext","Provider","Calendar","months","dayCellChooseDateAriaLabel","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel","Popup","hasShadow","priority","ZIndex","priorities","PopupMenu","positions","getMenuPositions","anchorElement","getParent","margin","parseInt","theme","datePickerMenuOffsetY","className","styles","calendarWrapper","onMouseDown","e","preventDefault","ref","c","handleValueChange","renderTodayLink","style","getRootStyle","onMouseEnter","onMouseLeave","onMouseOver","DateInput","_extends2","id","filterProps","getInputRef","width","withIcon","onBlur","undefined","onFocus","handleFocus","NativeDateInput","handleSelectToday","handleSelect","_this$state$today","monthNative","month","year","getMonthInHumanFormat","scrollToMonth","getRootNode","isNonNullable","minWidth","setState","close","blur","_inheritsLoose2","_proto","prototype","componentDidMount","useMobileNativeDatePicker","focus","componentDidUpdate","render","_this2","ThemeContext","Consumer","ThemeFactory","create","calendarBottomSeparatorBorder","CommonWrapper","rootNodeRef","setRootNode","date","InternalDate","validate","checks","InternalDateValidateCheck","NotNull","Native","toString","withPad","_this$locale","order","separator","setComponents","InternalDateGetter","getTodayComponents","withSeparator","Button","todayAriaLabel","onClick","icon","ArrowAUpIcon16Light","React","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","PropTypes","bool","string","isRequired","oneOf","oneOfType","number","func","MIN_FULLDATE","MAX_FULLDATE","range","_range","_range$minDate","_range$maxDate","internalDate","InternalDateOrder","DMY","InternalDateSeparator","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"sources":["DatePicker.tsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { HTMLAttributes } from 'react';\n\nimport { Popup } from '../../internal/Popup';\nimport { LocaleContext } from '../../lib/locale';\nimport { locale } from '../../lib/locale/decorators';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { MAX_FULLDATE, MIN_FULLDATE } from '../../lib/date/constants';\nimport { InternalDateOrder, InternalDateSeparator, InternalDateValidateCheck } from '../../lib/date/types';\nimport { Nullable } from '../../typings/utility-types';\nimport { DateInput } from '../DateInput';\nimport { filterProps } from '../../lib/filterProps';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { isMobile } from '../../lib/client';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { isNonNullable } from '../../lib/utils';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Calendar, CalendarDateShape, CalendarProps } from '../Calendar';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { Button } from '../Button';\nimport { getMonthInHumanFormat, getTodayDate } from '../Calendar/CalendarUtils';\nimport { SizeProp } from '../../lib/types/props';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { getMenuPositions } from '../../lib/getMenuPositions';\nimport { ZIndex } from '../../internal/ZIndex';\n\nimport { styles } from './DatePicker.styles';\nimport { DatePickerLocale, DatePickerLocaleHelper } from './locale';\nimport { MobilePicker } from './MobilePicker';\n\nconst INPUT_PASS_PROPS = {\n autoFocus: true,\n disabled: true,\n warning: true,\n error: true,\n size: true,\n onKeyDown: true,\n};\n\nexport const MIN_WIDTH = 120;\n\nexport interface DatePickerProps\n extends Pick<CalendarProps, 'isHoliday' | 'minDate' | 'maxDate' | 'renderDay' | 'onMonthChange'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps {\n autoFocus?: boolean;\n disabled?: boolean;\n /**\n * Отвечает за отображение кнопки \"Сегодня\".\n */\n enableTodayLink?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Позволяет вручную задать текущую позицию выпадающего окна\n */\n menuPos?: 'top' | 'bottom';\n menuAlign?: 'left' | 'right';\n size?: SizeProp;\n value?: string | null;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: number | string;\n onBlur?: () => void;\n /**\n * Вызывается при изменении `value`\n *\n * @param value - строка в формате `dd.mm.yyyy`.\n */\n onValueChange: (value: string) => void;\n onFocus?: () => void;\n onKeyDown?: (e: React.KeyboardEvent<any>) => void;\n onMouseEnter?: (e: React.MouseEvent<any>) => void;\n onMouseLeave?: (e: React.MouseEvent<any>) => void;\n onMouseOver?: (e: React.MouseEvent<any>) => void;\n /**\n * Использовать на мобильных устройствах нативный календарь для выбора дат.\n *\n * - На iOS нативный календарь не умеет работать с minDate и maxDate\n */\n useMobileNativeDatePicker?: boolean;\n}\n\nexport interface DatePickerState {\n opened: boolean;\n canUseMobileNativeDatePicker: boolean;\n today: CalendarDateShape;\n}\n\nexport const DatePickerDataTids = {\n root: 'DatePicker__root',\n input: 'DatePicker__input',\n label: 'DatePicker__label',\n pickerRoot: 'Picker__root',\n pickerTodayWrapper: 'Picker__todayWrapper',\n} as const;\n\ntype DefaultProps = Required<Pick<DatePickerProps, 'minDate' | 'maxDate'>>;\n\n@responsiveLayout\n@rootNode\n@locale('DatePicker', DatePickerLocaleHelper)\nexport class DatePicker extends React.PureComponent<DatePickerProps, DatePickerState> {\n public static __KONTUR_REACT_UI__ = 'DatePicker';\n public static displayName = 'DatePicker';\n\n public static propTypes = {\n autoFocus: PropTypes.bool,\n\n disabled: PropTypes.bool,\n\n /**\n * Включает кнопку сегодня в календаре\n */\n enableTodayLink: PropTypes.bool,\n\n error: PropTypes.bool,\n\n /**\n * Максимальная дата в календаре.\n */\n maxDate: PropTypes.string.isRequired,\n\n menuPos: PropTypes.oneOf(['top', 'bottom']),\n\n menuAlign: PropTypes.oneOf(['left', 'right']),\n\n /**\n * Минимальная дата в календаре.\n */\n minDate: PropTypes.string.isRequired,\n\n /**\n * Строка формата `dd.mm.yyyy`\n */\n value: PropTypes.string,\n\n warning: PropTypes.bool,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n onBlur: PropTypes.func,\n\n onValueChange: PropTypes.func.isRequired,\n\n onFocus: PropTypes.func,\n\n onKeyDown: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n\n onMouseLeave: PropTypes.func,\n\n onMouseOver: PropTypes.func,\n\n isHoliday: PropTypes.func,\n\n renderDay: PropTypes.func,\n\n onMonthChange: PropTypes.func,\n };\n\n public static defaultProps: DefaultProps = {\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n };\n\n private getProps = createPropsGetter(DatePicker.defaultProps);\n private theme!: Theme;\n private calendar: Calendar | null = null;\n private readonly locale!: DatePickerLocale;\n\n public static validate = (value: Nullable<string>, range: { minDate?: string; maxDate?: string } = {}) => {\n if (!value) {\n return false;\n }\n\n const { minDate = MIN_FULLDATE, maxDate = MAX_FULLDATE } = range;\n const internalDate = new InternalDate({\n order: InternalDateOrder.DMY,\n separator: InternalDateSeparator.Dot,\n })\n .setRangeStart(new InternalDate({ value: minDate }))\n .setRangeEnd(new InternalDate({ value: maxDate }))\n .parseValue(value);\n\n return internalDate.validate({\n checks: [\n InternalDateValidateCheck.NotNull,\n InternalDateValidateCheck.Number,\n InternalDateValidateCheck.Native,\n InternalDateValidateCheck.Limits,\n InternalDateValidateCheck.Range,\n ],\n });\n };\n\n public state: DatePickerState = { opened: false, canUseMobileNativeDatePicker: false, today: getTodayDate() };\n\n private input: DateInput | null = null;\n private focused = false;\n private setRootNode!: TSetRootNode;\n private isMobileLayout!: boolean;\n\n public componentDidMount() {\n if (this.props.useMobileNativeDatePicker && isMobile) {\n this.setState({\n canUseMobileNativeDatePicker: true,\n });\n }\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public componentDidUpdate() {\n const { disabled } = this.props;\n const { opened } = this.state;\n if (disabled && opened) {\n this.close();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.input) {\n this.input.blur();\n }\n this.handleBlur();\n }\n\n /**\n * @public\n */\n public focus() {\n if (this.props.disabled) {\n return;\n }\n if (this.input) {\n this.input.focus();\n }\n this.handleFocus();\n }\n\n /**\n * Закрывает выпадашку выбора дня\n * @public\n */\n public close() {\n this.setState({ opened: false });\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n\n return (\n <ThemeContext.Provider value={ThemeFactory.create({ calendarBottomSeparatorBorder: 'none' }, theme)}>\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps>) => {\n let picker = null;\n\n const { minDate, maxDate, menuPos, menuAlign } = this.getProps();\n\n const isMobile = this.isMobileLayout;\n\n if (this.state.opened) {\n if (isMobile) {\n picker = (\n <MobilePicker\n value={this.props.value}\n minDate={this.parseValueToDate(minDate)}\n maxDate={this.parseValueToDate(maxDate)}\n onValueChange={this.props.onValueChange}\n enableTodayLink={this.props.enableTodayLink}\n isHoliday={this.props.isHoliday}\n onCloseRequest={this.handleBlur}\n renderDay={props.renderDay}\n onMonthChange={props.onMonthChange}\n />\n );\n } else {\n picker = (\n <LocaleContext.Provider\n value={{\n locale: {\n Calendar: {\n months: this.locale.months,\n dayCellChooseDateAriaLabel: this.locale.dayCellChooseDateAriaLabel,\n selectMonthAriaLabel: this.locale.selectMonthAriaLabel,\n selectYearAriaLabel: this.locale.selectYearAriaLabel,\n selectChosenAriaLabel: this.locale.selectChosenAriaLabel,\n },\n },\n }}\n >\n <Popup\n opened\n hasShadow\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(menuPos, menuAlign)}\n data-tid={DatePickerDataTids.root}\n anchorElement={this.getParent()}\n margin={parseInt(this.theme.datePickerMenuOffsetY)}\n >\n <div\n data-tid={DatePickerDataTids.pickerRoot}\n className={styles.calendarWrapper(this.theme)}\n onMouseDown={(e) => e.preventDefault()}\n >\n <Calendar\n ref={(c) => (this.calendar = c)}\n maxDate={this.parseValueToDate(maxDate)}\n minDate={this.parseValueToDate(minDate)}\n onValueChange={this.handleValueChange}\n isHoliday={this.props.isHoliday}\n value={this.parseValueToDate(this.props.value)}\n renderDay={this.props.renderDay}\n onMonthChange={this.props.onMonthChange}\n />\n {this.props.enableTodayLink && this.renderTodayLink()}{' '}\n </div>\n </Popup>\n </LocaleContext.Provider>\n );\n }\n }\n return (\n <label\n className={styles.root()}\n style={this.getRootStyle()}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n data-tid={DatePickerDataTids.label}\n >\n <DateInput\n id={this.props.id}\n {...filterProps(props, INPUT_PASS_PROPS)}\n ref={this.getInputRef}\n value={this.props.value || ''}\n width=\"100%\"\n withIcon\n minDate={minDate}\n maxDate={maxDate}\n onBlur={isMobile ? undefined : this.handleBlur}\n onFocus={this.handleFocus}\n onValueChange={this.props.onValueChange}\n data-tid={DatePickerDataTids.input}\n />\n {this.state.canUseMobileNativeDatePicker ? (\n <NativeDateInput\n onValueChange={this.props.onValueChange}\n value={this.props.value || ''}\n minDate={minDate}\n maxDate={maxDate}\n disabled={this.props.disabled}\n />\n ) : (\n picker\n )}\n </label>\n );\n };\n private parseValueToDate(value?: Nullable<string>): string | undefined {\n if (value === undefined || value === null) {\n return undefined;\n }\n\n const date = new InternalDate({ value });\n if (date.validate({ checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Native] })) {\n return date.toString({ withPad: true });\n }\n\n return undefined;\n }\n\n private renderTodayLink() {\n const { order, separator } = this.locale;\n const today = new InternalDate({ order, separator })\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n return (\n <div style={{ margin: 8 }}>\n <Button\n aria-label={this.locale.todayAriaLabel}\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n width=\"100%\"\n onClick={this.handleSelectToday(today)}\n icon={<ArrowAUpIcon16Light />}\n >\n {this.locale.today}\n </Button>\n </div>\n );\n }\n\n private handleSelectToday = (today: string) => () => {\n this.handleSelect(today);\n\n if (this.calendar) {\n const { month: monthNative, year } = this.state.today;\n const month = getMonthInHumanFormat(monthNative);\n this.calendar.scrollToMonth(month, year);\n }\n };\n\n public getParent = () => {\n return getRootNode(this);\n };\n\n private getRootStyle = () => {\n const { width } = this.props;\n return isNonNullable(width) ? { width } : { minWidth: MIN_WIDTH };\n };\n\n private getInputRef = (ref: DateInput | null) => {\n this.input = ref;\n };\n\n private handleFocus = () => {\n if (this.focused) {\n return;\n }\n\n this.focused = true;\n\n this.setState({ opened: true });\n\n if (this.props.onFocus) {\n this.props.onFocus();\n }\n };\n\n private handleBlur = () => {\n if (!this.focused) {\n return;\n }\n\n this.focused = false;\n this.close();\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handleValueChange = (value: string) => {\n this.handleSelect(value);\n this.blur();\n };\n\n private handleSelect = (value: string | null) => {\n if (!value) {\n return null;\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_propTypes","_interopRequireDefault","require","_react","_Popup","_locale","_decorators","_InternalDateGetter","_ArrowAUp16Light","_ThemeFactory","_InternalDate","_constants","_types","_DateInput","_filterProps","_CommonWrapper","_client","_NativeDateInput","_rootNode","_utils","_createPropsGetter","_Calendar","_ThemeContext","_Button","_CalendarUtils","_decorator","_getMenuPositions","_ZIndex","_DatePicker2","_locale2","_MobilePicker","_dec","_class","_DatePicker","INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","exports","DatePickerDataTids","root","input","label","pickerRoot","pickerTodayWrapper","DatePicker","locale","DatePickerLocaleHelper","responsiveLayout","rootNode","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","createPropsGetter","defaultProps","state","opened","canUseMobileNativeDatePicker","today","getTodayDate","focused","renderMain","props","picker","_this$getProps","minDate","maxDate","menuPos","menuAlign","isMobile","isMobileLayout","default","createElement","MobilePicker","value","parseValueToDate","onValueChange","enableTodayLink","isHoliday","onCloseRequest","handleBlur","renderDay","onMonthChange","LocaleContext","Provider","Calendar","months","dayCellChooseDateAriaLabel","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel","Popup","hasShadow","priority","ZIndex","priorities","PopupMenu","positions","getMenuPositions","anchorElement","getParent","margin","parseInt","theme","datePickerMenuOffsetY","className","styles","calendarWrapper","onMouseDown","e","preventDefault","handleValueChange","renderTodayLink","style","getRootStyle","onMouseEnter","onMouseLeave","onMouseOver","DateInput","_extends2","id","filterProps","ref","getInputRef","width","withIcon","onBlur","undefined","onFocus","handleFocus","NativeDateInput","getRootNode","isNonNullable","minWidth","setState","close","handleSelect","blur","_inheritsLoose2","_proto","prototype","componentDidMount","useMobileNativeDatePicker","focus","componentDidUpdate","render","_this2","ThemeContext","Consumer","ThemeFactory","create","calendarBottomSeparatorBorder","CommonWrapper","rootNodeRef","setRootNode","date","InternalDate","validate","checks","InternalDateValidateCheck","NotNull","Native","toString","withPad","_this3","_this$locale","order","separator","setComponents","InternalDateGetter","getTodayComponents","withSeparator","Button","todayAriaLabel","onClick","icon","ArrowAUpIcon16Light","React","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","PropTypes","bool","string","isRequired","oneOf","oneOfType","number","func","MIN_FULLDATE","MAX_FULLDATE","range","_range","_range$minDate","_range$maxDate","internalDate","InternalDateOrder","DMY","InternalDateSeparator","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"sources":["DatePicker.tsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { HTMLAttributes } from 'react';\n\nimport { Popup } from '../../internal/Popup';\nimport { LocaleContext } from '../../lib/locale';\nimport { locale } from '../../lib/locale/decorators';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { MAX_FULLDATE, MIN_FULLDATE } from '../../lib/date/constants';\nimport { InternalDateOrder, InternalDateSeparator, InternalDateValidateCheck } from '../../lib/date/types';\nimport { Nullable } from '../../typings/utility-types';\nimport { DateInput } from '../DateInput';\nimport { filterProps } from '../../lib/filterProps';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { isMobile } from '../../lib/client';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { isNonNullable } from '../../lib/utils';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Calendar, CalendarDateShape, CalendarProps } from '../Calendar';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { Button } from '../Button';\nimport { getTodayDate } from '../Calendar/CalendarUtils';\nimport { SizeProp } from '../../lib/types/props';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { getMenuPositions } from '../../lib/getMenuPositions';\nimport { ZIndex } from '../../internal/ZIndex';\n\nimport { styles } from './DatePicker.styles';\nimport { DatePickerLocale, DatePickerLocaleHelper } from './locale';\nimport { MobilePicker } from './MobilePicker';\n\nconst INPUT_PASS_PROPS = {\n autoFocus: true,\n disabled: true,\n warning: true,\n error: true,\n size: true,\n onKeyDown: true,\n};\n\nexport const MIN_WIDTH = 120;\n\nexport interface DatePickerProps\n extends Pick<CalendarProps, 'isHoliday' | 'minDate' | 'maxDate' | 'renderDay' | 'onMonthChange'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps {\n autoFocus?: boolean;\n disabled?: boolean;\n /**\n * Отвечает за отображение кнопки \"Сегодня\".\n */\n enableTodayLink?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Позволяет вручную задать текущую позицию выпадающего окна\n */\n menuPos?: 'top' | 'bottom';\n menuAlign?: 'left' | 'right';\n size?: SizeProp;\n value?: string | null;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: number | string;\n onBlur?: () => void;\n /**\n * Вызывается при изменении `value`\n *\n * @param value - строка в формате `dd.mm.yyyy`.\n */\n onValueChange: (value: string) => void;\n onFocus?: () => void;\n onKeyDown?: (e: React.KeyboardEvent<any>) => void;\n onMouseEnter?: (e: React.MouseEvent<any>) => void;\n onMouseLeave?: (e: React.MouseEvent<any>) => void;\n onMouseOver?: (e: React.MouseEvent<any>) => void;\n /**\n * Использовать на мобильных устройствах нативный календарь для выбора дат.\n *\n * - На iOS нативный календарь не умеет работать с minDate и maxDate\n */\n useMobileNativeDatePicker?: boolean;\n}\n\nexport interface DatePickerState {\n opened: boolean;\n canUseMobileNativeDatePicker: boolean;\n today: CalendarDateShape;\n}\n\nexport const DatePickerDataTids = {\n root: 'DatePicker__root',\n input: 'DatePicker__input',\n label: 'DatePicker__label',\n pickerRoot: 'Picker__root',\n pickerTodayWrapper: 'Picker__todayWrapper',\n} as const;\n\ntype DefaultProps = Required<Pick<DatePickerProps, 'minDate' | 'maxDate'>>;\n\n@responsiveLayout\n@rootNode\n@locale('DatePicker', DatePickerLocaleHelper)\nexport class DatePicker extends React.PureComponent<DatePickerProps, DatePickerState> {\n public static __KONTUR_REACT_UI__ = 'DatePicker';\n public static displayName = 'DatePicker';\n\n public static propTypes = {\n autoFocus: PropTypes.bool,\n\n disabled: PropTypes.bool,\n\n /**\n * Включает кнопку сегодня в календаре\n */\n enableTodayLink: PropTypes.bool,\n\n error: PropTypes.bool,\n\n /**\n * Максимальная дата в календаре.\n */\n maxDate: PropTypes.string.isRequired,\n\n menuPos: PropTypes.oneOf(['top', 'bottom']),\n\n menuAlign: PropTypes.oneOf(['left', 'right']),\n\n /**\n * Минимальная дата в календаре.\n */\n minDate: PropTypes.string.isRequired,\n\n /**\n * Строка формата `dd.mm.yyyy`\n */\n value: PropTypes.string,\n\n warning: PropTypes.bool,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n onBlur: PropTypes.func,\n\n onValueChange: PropTypes.func.isRequired,\n\n onFocus: PropTypes.func,\n\n onKeyDown: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n\n onMouseLeave: PropTypes.func,\n\n onMouseOver: PropTypes.func,\n\n isHoliday: PropTypes.func,\n\n renderDay: PropTypes.func,\n\n onMonthChange: PropTypes.func,\n };\n\n public static defaultProps: DefaultProps = {\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n };\n\n private getProps = createPropsGetter(DatePicker.defaultProps);\n private theme!: Theme;\n private readonly locale!: DatePickerLocale;\n\n public static validate = (value: Nullable<string>, range: { minDate?: string; maxDate?: string } = {}) => {\n if (!value) {\n return false;\n }\n\n const { minDate = MIN_FULLDATE, maxDate = MAX_FULLDATE } = range;\n const internalDate = new InternalDate({\n order: InternalDateOrder.DMY,\n separator: InternalDateSeparator.Dot,\n })\n .setRangeStart(new InternalDate({ value: minDate }))\n .setRangeEnd(new InternalDate({ value: maxDate }))\n .parseValue(value);\n\n return internalDate.validate({\n checks: [\n InternalDateValidateCheck.NotNull,\n InternalDateValidateCheck.Number,\n InternalDateValidateCheck.Native,\n InternalDateValidateCheck.Limits,\n InternalDateValidateCheck.Range,\n ],\n });\n };\n\n public state: DatePickerState = { opened: false, canUseMobileNativeDatePicker: false, today: getTodayDate() };\n\n private input: DateInput | null = null;\n private focused = false;\n private setRootNode!: TSetRootNode;\n private isMobileLayout!: boolean;\n\n public componentDidMount() {\n if (this.props.useMobileNativeDatePicker && isMobile) {\n this.setState({\n canUseMobileNativeDatePicker: true,\n });\n }\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public componentDidUpdate() {\n const { disabled } = this.props;\n const { opened } = this.state;\n if (disabled && opened) {\n this.close();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.input) {\n this.input.blur();\n }\n this.handleBlur();\n }\n\n /**\n * @public\n */\n public focus() {\n if (this.props.disabled) {\n return;\n }\n if (this.input) {\n this.input.focus();\n }\n this.handleFocus();\n }\n\n /**\n * Закрывает выпадашку выбора дня\n * @public\n */\n public close() {\n this.setState({ opened: false });\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n\n return (\n <ThemeContext.Provider value={ThemeFactory.create({ calendarBottomSeparatorBorder: 'none' }, theme)}>\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps>) => {\n let picker = null;\n\n const { minDate, maxDate, menuPos, menuAlign } = this.getProps();\n\n const isMobile = this.isMobileLayout;\n\n if (this.state.opened) {\n if (isMobile) {\n picker = (\n <MobilePicker\n value={this.props.value}\n minDate={this.parseValueToDate(minDate)}\n maxDate={this.parseValueToDate(maxDate)}\n onValueChange={this.props.onValueChange}\n enableTodayLink={this.props.enableTodayLink}\n isHoliday={this.props.isHoliday}\n onCloseRequest={this.handleBlur}\n renderDay={props.renderDay}\n onMonthChange={props.onMonthChange}\n />\n );\n } else {\n picker = (\n <LocaleContext.Provider\n value={{\n locale: {\n Calendar: {\n months: this.locale.months,\n dayCellChooseDateAriaLabel: this.locale.dayCellChooseDateAriaLabel,\n selectMonthAriaLabel: this.locale.selectMonthAriaLabel,\n selectYearAriaLabel: this.locale.selectYearAriaLabel,\n selectChosenAriaLabel: this.locale.selectChosenAriaLabel,\n },\n },\n }}\n >\n <Popup\n opened\n hasShadow\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(menuPos, menuAlign)}\n data-tid={DatePickerDataTids.root}\n anchorElement={this.getParent()}\n margin={parseInt(this.theme.datePickerMenuOffsetY)}\n >\n <div\n data-tid={DatePickerDataTids.pickerRoot}\n className={styles.calendarWrapper(this.theme)}\n onMouseDown={(e) => e.preventDefault()}\n >\n <Calendar\n maxDate={this.parseValueToDate(maxDate)}\n minDate={this.parseValueToDate(minDate)}\n onValueChange={this.handleValueChange}\n isHoliday={this.props.isHoliday}\n value={this.parseValueToDate(this.props.value)}\n renderDay={this.props.renderDay}\n onMonthChange={this.props.onMonthChange}\n />\n {this.props.enableTodayLink && this.renderTodayLink()}{' '}\n </div>\n </Popup>\n </LocaleContext.Provider>\n );\n }\n }\n return (\n <label\n className={styles.root()}\n style={this.getRootStyle()}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n data-tid={DatePickerDataTids.label}\n >\n <DateInput\n id={this.props.id}\n {...filterProps(props, INPUT_PASS_PROPS)}\n ref={this.getInputRef}\n value={this.props.value || ''}\n width=\"100%\"\n withIcon\n minDate={minDate}\n maxDate={maxDate}\n onBlur={isMobile ? undefined : this.handleBlur}\n onFocus={this.handleFocus}\n onValueChange={this.props.onValueChange}\n data-tid={DatePickerDataTids.input}\n />\n {this.state.canUseMobileNativeDatePicker ? (\n <NativeDateInput\n onValueChange={this.props.onValueChange}\n value={this.props.value || ''}\n minDate={minDate}\n maxDate={maxDate}\n disabled={this.props.disabled}\n />\n ) : (\n picker\n )}\n </label>\n );\n };\n private parseValueToDate(value?: Nullable<string>): string | undefined {\n if (value === undefined || value === null) {\n return undefined;\n }\n\n const date = new InternalDate({ value });\n if (date.validate({ checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Native] })) {\n return date.toString({ withPad: true });\n }\n\n return undefined;\n }\n\n private renderTodayLink() {\n const { order, separator } = this.locale;\n const today = new InternalDate({ order, separator })\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n return (\n <div style={{ margin: 8 }}>\n <Button\n aria-label={this.locale.todayAriaLabel}\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n width=\"100%\"\n onClick={() => {\n this.handleSelect(today);\n }}\n icon={<ArrowAUpIcon16Light />}\n >\n {this.locale.today}\n </Button>\n </div>\n );\n }\n\n public getParent = () => {\n return getRootNode(this);\n };\n\n private getRootStyle = () => {\n const { width } = this.props;\n return isNonNullable(width) ? { width } : { minWidth: MIN_WIDTH };\n };\n\n private getInputRef = (ref: DateInput | null) => {\n this.input = ref;\n };\n\n private handleFocus = () => {\n if (this.focused) {\n return;\n }\n\n this.focused = true;\n\n this.setState({ opened: true });\n\n if (this.props.onFocus) {\n this.props.onFocus();\n }\n };\n\n private handleBlur = () => {\n if (!this.focused) {\n return;\n }\n\n this.focused = false;\n this.close();\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handleValueChange = (value: string) => {\n this.handleSelect(value);\n this.blur();\n };\n\n private handleSelect = (value: string | null) => {\n if (!value) {\n return null;\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -187,9 +187,9 @@ ZIndex = exports.ZIndex = (0, _rootNode.rootNode)(_class = (_ZIndex = /*#__PURE_
|
|
|
187
187
|
var savedZIndexContext = DEFAULT_ZINDEX_CONTEXT;
|
|
188
188
|
var portal = (_element$parentElemen = element.parentElement) == null ? void 0 : _element$parentElemen.closest("[" + _RenderContainer.PORTAL_OUTLET_ATTR + "]");
|
|
189
189
|
|
|
190
|
-
if ((0, _isInstanceOf.isInstanceOf)(portal, _globalObject.globalObject.HTMLElement)) {var _noscript$parentEleme;
|
|
190
|
+
if ((0, _isInstanceOf.isInstanceOf)(portal, _globalObject.globalObject.HTMLElement)) {var _globalObject$documen, _noscript$parentEleme;
|
|
191
191
|
var portalID = portal.getAttribute(_RenderContainer.PORTAL_OUTLET_ATTR);
|
|
192
|
-
var noscript = document.querySelector("noscript[" + _RenderContainer.PORTAL_INLET_ATTR + "=\"" + portalID + "\"]");
|
|
192
|
+
var noscript = (_globalObject$documen = _globalObject.globalObject.document) == null ? void 0 : _globalObject$documen.querySelector("noscript[" + _RenderContainer.PORTAL_INLET_ATTR + "=\"" + portalID + "\"]");
|
|
193
193
|
var parent = noscript == null || (_noscript$parentEleme = noscript.parentElement) == null ? void 0 : _noscript$parentEleme.closest('[style*=z-index]');
|
|
194
194
|
|
|
195
195
|
if ((0, _isInstanceOf.isInstanceOf)(parent, _globalObject.globalObject.HTMLElement)) {var _parent$parentElement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_globalObject","_callChildRef","_rootNode","_createPropsGetter","_isInstanceOf","_Loader","_RenderContainer","_ZIndexStorage","_excluded","_class","_ZIndex","DEFAULT_ZINDEX_CONTEXT","parentLayerZIndex","maxZIndex","Infinity","ZIndexContext","React","createContext","displayName","ZIndex","exports","rootNode","_React$Component","props","_this","call","state","zIndex","savedZIndexContext","getProps","createPropsGetter","defaultProps","zIndexContext","wrapperRef","element","setRootNode","callChildRef","tryGetContextByDOM","increment","_this$getProps","priority","delta","incrementZIndex","_element$parentElemen","portal","parentElement","closest","PORTAL_OUTLET_ATTR","isInstanceOf","globalObject","HTMLElement","_noscript$parentEleme","portalID","getAttribute","noscript","document","querySelector","PORTAL_INLET_ATTR","parent","_parent$parentElement","newZIndex","Number","style","dataset","tid","LoaderDataTids","veil","calcZIndex","setState","_inheritsLoose2","default","_proto","prototype","componentDidUpdate","prevProps","removeZIndex","componentWillUnmount","render","_this2","_this$getProps2","children","applyZIndex","coverChildren","createStackingContext","useWrapper","rest","_objectWithoutPropertiesLoose2","wrapperStyle","createElement","Consumer","context","_ref","zIndexContextValue","isFinite","isBrowser","body","isolation","transform","child","_extends2","ref","Provider","value","allowedValuesIntervalLength","scale","upperBorder","Math","ceil","Component","priorities","componentPriorities","__KONTUR_REACT_UI__","propTypes","Error","trunc"],"sources":["ZIndex.tsx"],"sourcesContent":["import React from 'react';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport { callChildRef } from '../../lib/callChildRef/callChildRef';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { LoaderDataTids } from '../../components/Loader';\nimport { PORTAL_INLET_ATTR, PORTAL_OUTLET_ATTR } from '../RenderContainer';\n\nimport { incrementZIndex, removeZIndex, upperBorder, LayerComponentName, componentPriorities } from './ZIndexStorage';\n\nconst DEFAULT_ZINDEX_CONTEXT = { parentLayerZIndex: 0, maxZIndex: Infinity };\n\nconst ZIndexContext = React.createContext(DEFAULT_ZINDEX_CONTEXT);\n\nZIndexContext.displayName = 'ZIndexContext';\n\nexport interface ZIndexProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Приращение к z-index\n */\n delta?: number;\n priority?: number | LayerComponentName;\n style?: React.CSSProperties;\n createStackingContext?: boolean;\n coverChildren?: boolean;\n applyZIndex?: boolean;\n className?: string;\n wrapperRef?: React.Ref<HTMLDivElement> | undefined | null;\n\n /**\n * Явно указывает, что вложенные элементы должны быть обёрнуты в `<div/>`.\n * Для случаев, когда необходимо задать **только** контекст для области.\n *\n * @default true\n */\n useWrapper?: boolean;\n}\n\ntype DefaultProps = Required<\n Pick<\n ZIndexProps,\n 'delta' | 'priority' | 'style' | 'applyZIndex' | 'coverChildren' | 'createStackingContext' | 'useWrapper'\n >\n>;\n\ninterface ZIndexState {\n zIndex: number;\n savedZIndexContext: { parentLayerZIndex: number; maxZIndex: number } | null;\n}\n\n@rootNode\nexport class ZIndex extends React.Component<ZIndexProps, ZIndexState> {\n public static priorities = componentPriorities;\n public static __KONTUR_REACT_UI__ = 'ZIndex';\n public static displayName = 'ZIndex';\n\n public static defaultProps: DefaultProps = {\n delta: 10,\n priority: 0,\n style: {},\n applyZIndex: true,\n coverChildren: false,\n createStackingContext: false,\n useWrapper: true,\n };\n\n public state: ZIndexState = {\n zIndex: 0,\n savedZIndexContext: null,\n };\n\n private getProps = createPropsGetter(ZIndex.defaultProps);\n\n public static propTypes = {\n delta(props: ZIndexProps) {\n if ((props.delta || ZIndex.defaultProps.delta) <= 0) {\n return new Error(`[ZIndex]: Prop 'delta' must be greater than 0, received ${props.delta}`);\n }\n if (Math.trunc(props.delta || ZIndex.defaultProps.delta) !== props.delta) {\n return new Error(`[ZIndex]: Prop 'delta' must be integer, received ${props.delta}`);\n }\n },\n };\n\n private setRootNode!: TSetRootNode;\n private zIndexContext: { parentLayerZIndex: number; maxZIndex: number } | null = null;\n\n constructor(props: ZIndexProps) {\n super(props);\n this.state.zIndex = this.increment();\n }\n\n public componentDidUpdate(prevProps: Readonly<ZIndexProps>) {\n if (prevProps.priority !== this.props.priority || prevProps.delta !== this.props.delta) {\n removeZIndex(this.state.zIndex);\n this.setState({ zIndex: this.increment() });\n }\n }\n\n public componentWillUnmount() {\n removeZIndex(this.state.zIndex);\n }\n\n public render() {\n const {\n style,\n children,\n delta,\n priority,\n applyZIndex,\n coverChildren,\n createStackingContext,\n wrapperRef,\n useWrapper,\n ...rest\n } = this.getProps();\n\n const wrapperStyle: React.CSSProperties = {};\n\n return (\n <ZIndexContext.Consumer>\n {(context) => {\n this.zIndexContext = context;\n const { parentLayerZIndex, maxZIndex } = this.state.savedZIndexContext || context;\n let zIndexContextValue = { parentLayerZIndex, maxZIndex };\n let newZIndex = 0;\n if (applyZIndex) {\n newZIndex = this.calcZIndex(parentLayerZIndex, maxZIndex);\n wrapperStyle.zIndex = newZIndex;\n\n zIndexContextValue = coverChildren\n ? { parentLayerZIndex, maxZIndex: newZIndex }\n : { parentLayerZIndex: newZIndex, maxZIndex: Number.isFinite(maxZIndex) ? newZIndex : Infinity };\n\n if (createStackingContext) {\n isBrowser(globalObject) && 'isolation' in globalObject.document.body.style\n ? (wrapperStyle.isolation = 'isolate')\n : (wrapperStyle.transform = 'rotate(0)');\n }\n }\n\n const child = !useWrapper ? (\n children\n ) : (\n <div style={{ ...style, ...wrapperStyle }} ref={this.wrapperRef} {...rest}>\n {children}\n </div>\n );\n\n return <ZIndexContext.Provider value={zIndexContextValue}>{child}</ZIndexContext.Provider>;\n }}\n </ZIndexContext.Consumer>\n );\n }\n\n private wrapperRef = (element: HTMLDivElement | null) => {\n const { wrapperRef } = this.props;\n this.setRootNode(element);\n wrapperRef && callChildRef(wrapperRef, element);\n element && this.tryGetContextByDOM(element);\n };\n\n private calcZIndex(parentLayerZIndex: number, maxZIndex: number) {\n let newZIndex = this.state.zIndex;\n\n if (Number.isFinite(maxZIndex)) {\n const allowedValuesIntervalLength = maxZIndex - parentLayerZIndex;\n const scale = upperBorder / allowedValuesIntervalLength;\n newZIndex = Math.ceil(newZIndex / scale);\n }\n\n newZIndex += parentLayerZIndex;\n\n return newZIndex;\n }\n\n private increment = () => {\n const { priority, delta } = this.getProps();\n\n return incrementZIndex(priority, delta);\n };\n\n private tryGetContextByDOM = (element: HTMLDivElement) => {\n if (DEFAULT_ZINDEX_CONTEXT === this.zIndexContext && this.state.savedZIndexContext === null) {\n let savedZIndexContext = DEFAULT_ZINDEX_CONTEXT;\n const portal = element.parentElement?.closest(`[${PORTAL_OUTLET_ATTR}]`);\n\n if (isInstanceOf(portal, globalObject.HTMLElement)) {\n const portalID = portal.getAttribute(PORTAL_OUTLET_ATTR);\n const noscript = document.querySelector(`noscript[${PORTAL_INLET_ATTR}=\"${portalID}\"]`);\n const parent = noscript?.parentElement?.closest('[style*=z-index]');\n\n if (isInstanceOf(parent, globalObject.HTMLElement)) {\n const newZIndex = Number(parent.style.zIndex || 0);\n\n let maxZIndex = Infinity;\n\n if (parent.parentElement?.dataset.tid === LoaderDataTids.veil) {\n maxZIndex = this.calcZIndex(newZIndex, maxZIndex);\n }\n\n savedZIndexContext = { maxZIndex, parentLayerZIndex: newZIndex };\n }\n }\n\n this.setState({ savedZIndexContext });\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_globalObject","_callChildRef","_rootNode","_createPropsGetter","_isInstanceOf","_Loader","_RenderContainer","_ZIndexStorage","_excluded","_class","_ZIndex","DEFAULT_ZINDEX_CONTEXT","parentLayerZIndex","maxZIndex","Infinity","ZIndexContext","React","createContext","displayName","ZIndex","exports","rootNode","_React$Component","props","_this","call","state","zIndex","savedZIndexContext","getProps","createPropsGetter","defaultProps","zIndexContext","wrapperRef","element","setRootNode","callChildRef","tryGetContextByDOM","increment","_this$getProps","priority","delta","incrementZIndex","_element$parentElemen","portal","parentElement","closest","PORTAL_OUTLET_ATTR","isInstanceOf","globalObject","HTMLElement","_globalObject$documen","_noscript$parentEleme","portalID","getAttribute","noscript","document","querySelector","PORTAL_INLET_ATTR","parent","_parent$parentElement","newZIndex","Number","style","dataset","tid","LoaderDataTids","veil","calcZIndex","setState","_inheritsLoose2","default","_proto","prototype","componentDidUpdate","prevProps","removeZIndex","componentWillUnmount","render","_this2","_this$getProps2","children","applyZIndex","coverChildren","createStackingContext","useWrapper","rest","_objectWithoutPropertiesLoose2","wrapperStyle","createElement","Consumer","context","_ref","zIndexContextValue","isFinite","isBrowser","body","isolation","transform","child","_extends2","ref","Provider","value","allowedValuesIntervalLength","scale","upperBorder","Math","ceil","Component","priorities","componentPriorities","__KONTUR_REACT_UI__","propTypes","Error","trunc"],"sources":["ZIndex.tsx"],"sourcesContent":["import React from 'react';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport { callChildRef } from '../../lib/callChildRef/callChildRef';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { LoaderDataTids } from '../../components/Loader';\nimport { PORTAL_INLET_ATTR, PORTAL_OUTLET_ATTR } from '../RenderContainer';\n\nimport { incrementZIndex, removeZIndex, upperBorder, LayerComponentName, componentPriorities } from './ZIndexStorage';\n\nconst DEFAULT_ZINDEX_CONTEXT = { parentLayerZIndex: 0, maxZIndex: Infinity };\n\nconst ZIndexContext = React.createContext(DEFAULT_ZINDEX_CONTEXT);\n\nZIndexContext.displayName = 'ZIndexContext';\n\nexport interface ZIndexProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Приращение к z-index\n */\n delta?: number;\n priority?: number | LayerComponentName;\n style?: React.CSSProperties;\n createStackingContext?: boolean;\n coverChildren?: boolean;\n applyZIndex?: boolean;\n className?: string;\n wrapperRef?: React.Ref<HTMLDivElement> | undefined | null;\n\n /**\n * Явно указывает, что вложенные элементы должны быть обёрнуты в `<div/>`.\n * Для случаев, когда необходимо задать **только** контекст для области.\n *\n * @default true\n */\n useWrapper?: boolean;\n}\n\ntype DefaultProps = Required<\n Pick<\n ZIndexProps,\n 'delta' | 'priority' | 'style' | 'applyZIndex' | 'coverChildren' | 'createStackingContext' | 'useWrapper'\n >\n>;\n\ninterface ZIndexState {\n zIndex: number;\n savedZIndexContext: { parentLayerZIndex: number; maxZIndex: number } | null;\n}\n\n@rootNode\nexport class ZIndex extends React.Component<ZIndexProps, ZIndexState> {\n public static priorities = componentPriorities;\n public static __KONTUR_REACT_UI__ = 'ZIndex';\n public static displayName = 'ZIndex';\n\n public static defaultProps: DefaultProps = {\n delta: 10,\n priority: 0,\n style: {},\n applyZIndex: true,\n coverChildren: false,\n createStackingContext: false,\n useWrapper: true,\n };\n\n public state: ZIndexState = {\n zIndex: 0,\n savedZIndexContext: null,\n };\n\n private getProps = createPropsGetter(ZIndex.defaultProps);\n\n public static propTypes = {\n delta(props: ZIndexProps) {\n if ((props.delta || ZIndex.defaultProps.delta) <= 0) {\n return new Error(`[ZIndex]: Prop 'delta' must be greater than 0, received ${props.delta}`);\n }\n if (Math.trunc(props.delta || ZIndex.defaultProps.delta) !== props.delta) {\n return new Error(`[ZIndex]: Prop 'delta' must be integer, received ${props.delta}`);\n }\n },\n };\n\n private setRootNode!: TSetRootNode;\n private zIndexContext: { parentLayerZIndex: number; maxZIndex: number } | null = null;\n\n constructor(props: ZIndexProps) {\n super(props);\n this.state.zIndex = this.increment();\n }\n\n public componentDidUpdate(prevProps: Readonly<ZIndexProps>) {\n if (prevProps.priority !== this.props.priority || prevProps.delta !== this.props.delta) {\n removeZIndex(this.state.zIndex);\n this.setState({ zIndex: this.increment() });\n }\n }\n\n public componentWillUnmount() {\n removeZIndex(this.state.zIndex);\n }\n\n public render() {\n const {\n style,\n children,\n delta,\n priority,\n applyZIndex,\n coverChildren,\n createStackingContext,\n wrapperRef,\n useWrapper,\n ...rest\n } = this.getProps();\n\n const wrapperStyle: React.CSSProperties = {};\n\n return (\n <ZIndexContext.Consumer>\n {(context) => {\n this.zIndexContext = context;\n const { parentLayerZIndex, maxZIndex } = this.state.savedZIndexContext || context;\n let zIndexContextValue = { parentLayerZIndex, maxZIndex };\n let newZIndex = 0;\n if (applyZIndex) {\n newZIndex = this.calcZIndex(parentLayerZIndex, maxZIndex);\n wrapperStyle.zIndex = newZIndex;\n\n zIndexContextValue = coverChildren\n ? { parentLayerZIndex, maxZIndex: newZIndex }\n : { parentLayerZIndex: newZIndex, maxZIndex: Number.isFinite(maxZIndex) ? newZIndex : Infinity };\n\n if (createStackingContext) {\n isBrowser(globalObject) && 'isolation' in globalObject.document.body.style\n ? (wrapperStyle.isolation = 'isolate')\n : (wrapperStyle.transform = 'rotate(0)');\n }\n }\n\n const child = !useWrapper ? (\n children\n ) : (\n <div style={{ ...style, ...wrapperStyle }} ref={this.wrapperRef} {...rest}>\n {children}\n </div>\n );\n\n return <ZIndexContext.Provider value={zIndexContextValue}>{child}</ZIndexContext.Provider>;\n }}\n </ZIndexContext.Consumer>\n );\n }\n\n private wrapperRef = (element: HTMLDivElement | null) => {\n const { wrapperRef } = this.props;\n this.setRootNode(element);\n wrapperRef && callChildRef(wrapperRef, element);\n element && this.tryGetContextByDOM(element);\n };\n\n private calcZIndex(parentLayerZIndex: number, maxZIndex: number) {\n let newZIndex = this.state.zIndex;\n\n if (Number.isFinite(maxZIndex)) {\n const allowedValuesIntervalLength = maxZIndex - parentLayerZIndex;\n const scale = upperBorder / allowedValuesIntervalLength;\n newZIndex = Math.ceil(newZIndex / scale);\n }\n\n newZIndex += parentLayerZIndex;\n\n return newZIndex;\n }\n\n private increment = () => {\n const { priority, delta } = this.getProps();\n\n return incrementZIndex(priority, delta);\n };\n\n private tryGetContextByDOM = (element: HTMLDivElement) => {\n if (DEFAULT_ZINDEX_CONTEXT === this.zIndexContext && this.state.savedZIndexContext === null) {\n let savedZIndexContext = DEFAULT_ZINDEX_CONTEXT;\n const portal = element.parentElement?.closest(`[${PORTAL_OUTLET_ATTR}]`);\n\n if (isInstanceOf(portal, globalObject.HTMLElement)) {\n const portalID = portal.getAttribute(PORTAL_OUTLET_ATTR);\n const noscript = globalObject.document?.querySelector(`noscript[${PORTAL_INLET_ATTR}=\"${portalID}\"]`);\n const parent = noscript?.parentElement?.closest('[style*=z-index]');\n\n if (isInstanceOf(parent, globalObject.HTMLElement)) {\n const newZIndex = Number(parent.style.zIndex || 0);\n\n let maxZIndex = Infinity;\n\n if (parent.parentElement?.dataset.tid === LoaderDataTids.veil) {\n maxZIndex = this.calcZIndex(newZIndex, maxZIndex);\n }\n\n savedZIndexContext = { maxZIndex, parentLayerZIndex: newZIndex };\n }\n }\n\n this.setState({ savedZIndexContext });\n }\n };\n}\n"],"mappings":"wcAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;;AAEA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AACA,IAAAI,kBAAA,GAAAJ,OAAA;AACA,IAAAK,aAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AACA,IAAAO,gBAAA,GAAAP,OAAA;;AAEA,IAAAQ,cAAA,GAAAR,OAAA,oBAAsH,IAAAS,SAAA,uIAAAC,MAAA,EAAAC,OAAA;;AAEtH,IAAMC,sBAAsB,GAAG,EAAEC,iBAAiB,EAAE,CAAC,EAAEC,SAAS,EAAEC,QAAQ,CAAC,CAAC;;AAE5E,IAAMC,aAAa,gBAAGC,cAAK,CAACC,aAAa,CAACN,sBAAsB,CAAC;;AAEjEI,aAAa,CAACG,WAAW,GAAG,eAAe,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqC/BC,MAAM,GAAAC,OAAA,CAAAD,MAAA,OADlBE,kBAAQ,EAAAZ,MAAA,IAAAC,OAAA,0BAAAY,gBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqCP,SAAAH,OAAYI,KAAkB,EAAE,KAAAC,KAAA;IAC9BA,KAAA,GAAAF,gBAAA,CAAAG,IAAA,OAAMF,KAAK,CAAC,SAACC,KAAA,CAtBRE,KAAK,GAAgB,EAC1BC,MAAM,EAAE,CAAC,EACTC,kBAAkB,EAAE,IAAI,CAC1B,CAAC,CAAAJ,KAAA,CAEOK,QAAQ,GAAG,IAAAC,oCAAiB,EAACX,MAAM,CAACY,YAAY,CAAC,CAAAP,KAAA,CAcjDQ,aAAa,GAA4D,IAAI,CAAAR,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsE7ES,UAAU,GAAG,UAACC,OAA8B,EAAK;MACvD,IAAQD,UAAU,GAAKT,KAAA,CAAKD,KAAK,CAAzBU,UAAU;MAClBT,KAAA,CAAKW,WAAW,CAACD,OAAO,CAAC;MACzBD,UAAU,IAAI,IAAAG,0BAAY,EAACH,UAAU,EAAEC,OAAO,CAAC;MAC/CA,OAAO,IAAIV,KAAA,CAAKa,kBAAkB,CAACH,OAAO,CAAC;IAC7C,CAAC,CAAAV,KAAA;;;;;;;;;;;;;;;;IAgBOc,SAAS,GAAG,YAAM;MACxB,IAAAC,cAAA,GAA4Bf,KAAA,CAAKK,QAAQ,CAAC,CAAC,CAAnCW,QAAQ,GAAAD,cAAA,CAARC,QAAQ,CAAEC,KAAK,GAAAF,cAAA,CAALE,KAAK;;MAEvB,OAAO,IAAAC,8BAAe,EAACF,QAAQ,EAAEC,KAAK,CAAC;IACzC,CAAC,CAAAjB,KAAA;;IAEOa,kBAAkB,GAAG,UAACH,OAAuB,EAAK;MACxD,IAAIvB,sBAAsB,KAAKa,KAAA,CAAKQ,aAAa,IAAIR,KAAA,CAAKE,KAAK,CAACE,kBAAkB,KAAK,IAAI,EAAE,KAAAe,qBAAA;QAC3F,IAAIf,kBAAkB,GAAGjB,sBAAsB;QAC/C,IAAMiC,MAAM,IAAAD,qBAAA,GAAGT,OAAO,CAACW,aAAa,qBAArBF,qBAAA,CAAuBG,OAAO,OAAKC,mCAAkB,MAAG,CAAC;;QAExE,IAAI,IAAAC,0BAAY,EAACJ,MAAM,EAAEK,0BAAY,CAACC,WAAW,CAAC,EAAE,KAAAC,qBAAA,EAAAC,qBAAA;UAClD,IAAMC,QAAQ,GAAGT,MAAM,CAACU,YAAY,CAACP,mCAAkB,CAAC;UACxD,IAAMQ,QAAQ,IAAAJ,qBAAA,GAAGF,0BAAY,CAACO,QAAQ,qBAArBL,qBAAA,CAAuBM,aAAa,eAAaC,kCAAiB,WAAKL,QAAQ,QAAI,CAAC;UACrG,IAAMM,MAAM,GAAGJ,QAAQ,aAAAH,qBAAA,GAARG,QAAQ,CAAEV,aAAa,qBAAvBO,qBAAA,CAAyBN,OAAO,CAAC,kBAAkB,CAAC;;UAEnE,IAAI,IAAAE,0BAAY,EAACW,MAAM,EAAEV,0BAAY,CAACC,WAAW,CAAC,EAAE,KAAAU,qBAAA;YAClD,IAAMC,SAAS,GAAGC,MAAM,CAACH,MAAM,CAACI,KAAK,CAACpC,MAAM,IAAI,CAAC,CAAC;;YAElD,IAAId,SAAS,GAAGC,QAAQ;;YAExB,IAAI,EAAA8C,qBAAA,GAAAD,MAAM,CAACd,aAAa,qBAApBe,qBAAA,CAAsBI,OAAO,CAACC,GAAG,MAAKC,sBAAc,CAACC,IAAI,EAAE;cAC7DtD,SAAS,GAAGW,KAAA,CAAK4C,UAAU,CAACP,SAAS,EAAEhD,SAAS,CAAC;YACnD;;YAEAe,kBAAkB,GAAG,EAAEf,SAAS,EAATA,SAAS,EAAED,iBAAiB,EAAEiD,SAAS,CAAC,CAAC;UAClE;QACF;;QAEArC,KAAA,CAAK6C,QAAQ,CAAC,EAAEzC,kBAAkB,EAAlBA,kBAAkB,CAAC,CAAC,CAAC;MACvC;IACF,CAAC,CAtHCJ,KAAA,CAAKE,KAAK,CAACC,MAAM,GAAGH,KAAA,CAAKc,SAAS,CAAC,CAAC,CAAC,OAAAd,KAAA,CACvC,CAAC,IAAA8C,eAAA,CAAAC,OAAA,EAAApD,MAAA,EAAAG,gBAAA,MAAAkD,MAAA,GAAArD,MAAA,CAAAsD,SAAA,CAAAD,MAAA,CAEME,kBAAkB,GAAzB,SAAAA,mBAA0BC,SAAgC,EAAE,CAC1D,IAAIA,SAAS,CAACnC,QAAQ,KAAK,IAAI,CAACjB,KAAK,CAACiB,QAAQ,IAAImC,SAAS,CAAClC,KAAK,KAAK,IAAI,CAAClB,KAAK,CAACkB,KAAK,EAAE,CACtF,IAAAmC,2BAAY,EAAC,IAAI,CAAClD,KAAK,CAACC,MAAM,CAAC,CAC/B,IAAI,CAAC0C,QAAQ,CAAC,EAAE1C,MAAM,EAAE,IAAI,CAACW,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAC7C,CACF,CAAC,CAAAkC,MAAA,CAEMK,oBAAoB,GAA3B,SAAAA,qBAAA,EAA8B,CAC5B,IAAAD,2BAAY,EAAC,IAAI,CAAClD,KAAK,CAACC,MAAM,CAAC,CACjC,CAAC,CAAA6C,MAAA,CAEMM,MAAM,GAAb,SAAAA,OAAA,EAAgB,KAAAC,MAAA,QACd,IAAAC,eAAA,GAWI,IAAI,CAACnD,QAAQ,CAAC,CAAC,CAVjBkC,KAAK,GAAAiB,eAAA,CAALjB,KAAK,CACLkB,QAAQ,GAAAD,eAAA,CAARC,QAAQ,CACRxC,KAAK,GAAAuC,eAAA,CAALvC,KAAK,CACLD,QAAQ,GAAAwC,eAAA,CAARxC,QAAQ,CACR0C,WAAW,GAAAF,eAAA,CAAXE,WAAW,CACXC,aAAa,GAAAH,eAAA,CAAbG,aAAa,CACbC,qBAAqB,GAAAJ,eAAA,CAArBI,qBAAqB,CACrBnD,UAAU,GAAA+C,eAAA,CAAV/C,UAAU,CACVoD,UAAU,GAAAL,eAAA,CAAVK,UAAU,CACPC,IAAI,OAAAC,8BAAA,CAAAhB,OAAA,EAAAS,eAAA,EAAAxE,SAAA,EAGT,IAAMgF,YAAiC,GAAG,CAAC,CAAC,CAE5C,oBACE3F,MAAA,CAAA0E,OAAA,CAAAkB,aAAA,CAAC1E,aAAa,CAAC2E,QAAQ,QACpB,UAACC,OAAO,EAAK,CACZZ,MAAI,CAAC/C,aAAa,GAAG2D,OAAO,CAC5B,IAAAC,IAAA,GAAyCb,MAAI,CAACrD,KAAK,CAACE,kBAAkB,IAAI+D,OAAO,CAAzE/E,iBAAiB,GAAAgF,IAAA,CAAjBhF,iBAAiB,CAAEC,SAAS,GAAA+E,IAAA,CAAT/E,SAAS,CACpC,IAAIgF,kBAAkB,GAAG,EAAEjF,iBAAiB,EAAjBA,iBAAiB,EAAEC,SAAS,EAATA,SAAS,CAAC,CAAC,CACzD,IAAIgD,SAAS,GAAG,CAAC,CACjB,IAAIqB,WAAW,EAAE,CACfrB,SAAS,GAAGkB,MAAI,CAACX,UAAU,CAACxD,iBAAiB,EAAEC,SAAS,CAAC,CACzD2E,YAAY,CAAC7D,MAAM,GAAGkC,SAAS,CAE/BgC,kBAAkB,GAAGV,aAAa,GAC9B,EAAEvE,iBAAiB,EAAjBA,iBAAiB,EAAEC,SAAS,EAAEgD,SAAS,CAAC,CAAC,GAC3C,EAAEjD,iBAAiB,EAAEiD,SAAS,EAAEhD,SAAS,EAAEiD,MAAM,CAACgC,QAAQ,CAACjF,SAAS,CAAC,GAAGgD,SAAS,GAAG/C,QAAQ,CAAC,CAAC,CAElG,IAAIsE,qBAAqB,EAAE,CACzB,IAAAW,uBAAS,EAAC9C,0BAAY,CAAC,IAAI,WAAW,IAAIA,0BAAY,CAACO,QAAQ,CAACwC,IAAI,CAACjC,KAAK,GACrEyB,YAAY,CAACS,SAAS,GAAG,SAAS,GAClCT,YAAY,CAACU,SAAS,GAAG,WAAY,CAC5C,CACF,CAEA,IAAMC,KAAK,GAAG,CAACd,UAAU,GACvBJ,QAAQ,gBAERpF,MAAA,CAAA0E,OAAA,CAAAkB,aAAA,YAAAW,SAAA,CAAA7B,OAAA,IAAKR,KAAK,MAAAqC,SAAA,CAAA7B,OAAA,MAAOR,KAAK,EAAKyB,YAAY,CAAG,EAACa,GAAG,EAAEtB,MAAI,CAAC9C,UAAW,IAAKqD,IAAI,GACtEL,QACE,CACN,CAED,oBAAOpF,MAAA,CAAA0E,OAAA,CAAAkB,aAAA,CAAC1E,aAAa,CAACuF,QAAQ,IAACC,KAAK,EAAEV,kBAAmB,IAAEM,KAA8B,CAAC,CAC5F,CACsB,CAAC,CAE7B,CAAC,CAAA3B,MAAA,CASOJ,UAAU,GAAlB,SAAAA,WAAmBxD,iBAAyB,EAAEC,SAAiB,EAAE,CAC/D,IAAIgD,SAAS,GAAG,IAAI,CAACnC,KAAK,CAACC,MAAM,CAEjC,IAAImC,MAAM,CAACgC,QAAQ,CAACjF,SAAS,CAAC,EAAE,CAC9B,IAAM2F,2BAA2B,GAAG3F,SAAS,GAAGD,iBAAiB,CACjE,IAAM6F,KAAK,GAAGC,0BAAW,GAAGF,2BAA2B,CACvD3C,SAAS,GAAG8C,IAAI,CAACC,IAAI,CAAC/C,SAAS,GAAG4C,KAAK,CAAC,CAC1C,CAEA5C,SAAS,IAAIjD,iBAAiB,CAE9B,OAAOiD,SAAS,CAClB,CAAC,QAAA1C,MAAA,GA3HyBH,cAAK,CAAC6F,SAAS,GAAAnG,OAAA,CAC3BoG,UAAU,GAAGC,kCAAmB,EAAArG,OAAA,CAChCsG,mBAAmB,GAAG,QAAQ,EAAAtG,OAAA,CAC9BQ,WAAW,GAAG,QAAQ,EAAAR,OAAA,CAEtBqB,YAAY,GAAiB,EACzCU,KAAK,EAAE,EAAE,EACTD,QAAQ,EAAE,CAAC,EACXuB,KAAK,EAAE,CAAC,CAAC,EACTmB,WAAW,EAAE,IAAI,EACjBC,aAAa,EAAE,KAAK,EACpBC,qBAAqB,EAAE,KAAK,EAC5BC,UAAU,EAAE,IAAI,CAClB,CAAC,EAAA3E,OAAA,CASauG,SAAS,GAAG,EACxBxE,KAAK,WAAAA,MAAClB,KAAkB,EAAE,CACxB,IAAI,CAACA,KAAK,CAACkB,KAAK,IAAItB,OAAM,CAACY,YAAY,CAACU,KAAK,KAAK,CAAC,EAAE,CACnD,OAAO,IAAIyE,KAAK,8DAA4D3F,KAAK,CAACkB,KAAO,CAAC,CAC5F,CACA,IAAIkE,IAAI,CAACQ,KAAK,CAAC5F,KAAK,CAACkB,KAAK,IAAItB,OAAM,CAACY,YAAY,CAACU,KAAK,CAAC,KAAKlB,KAAK,CAACkB,KAAK,EAAE,CACxE,OAAO,IAAIyE,KAAK,uDAAqD3F,KAAK,CAACkB,KAAO,CAAC,CACrF,CACF,CAAC,CACH,CAAC,EAAA/B,OAAA,MAAAD,MAAA","ignoreList":[]}
|
|
@@ -23,7 +23,7 @@ import { createPropsGetter } from "../../../lib/createPropsGetter";
|
|
|
23
23
|
import { Calendar } from "../../Calendar";
|
|
24
24
|
import { ThemeContext } from "../../../lib/theming/ThemeContext";
|
|
25
25
|
import { Button } from "../../Button";
|
|
26
|
-
import {
|
|
26
|
+
import { getTodayDate } from "../../Calendar/CalendarUtils";
|
|
27
27
|
import { responsiveLayout } from "../../ResponsiveLayout/decorator";
|
|
28
28
|
import { getMenuPositions } from "../../../lib/getMenuPositions";
|
|
29
29
|
import { ZIndex } from "../../../internal/ZIndex";
|
|
@@ -54,7 +54,6 @@ export var DatePicker = (_dec = locale('DatePicker', DatePickerLocaleHelper), re
|
|
|
54
54
|
}
|
|
55
55
|
_this = _React$PureComponent.call.apply(_React$PureComponent, [this].concat(args)) || this;
|
|
56
56
|
_this.getProps = createPropsGetter(DatePicker.defaultProps);
|
|
57
|
-
_this.calendar = null;
|
|
58
57
|
_this.state = {
|
|
59
58
|
opened: false,
|
|
60
59
|
canUseMobileNativeDatePicker: false,
|
|
@@ -119,9 +118,6 @@ export var DatePicker = (_dec = locale('DatePicker', DatePickerLocaleHelper), re
|
|
|
119
118
|
}, /*#__PURE__*/
|
|
120
119
|
|
|
121
120
|
React.createElement(Calendar, {
|
|
122
|
-
ref: function ref(c) {
|
|
123
|
-
return _this.calendar = c;
|
|
124
|
-
},
|
|
125
121
|
maxDate: _this.parseValueToDate(maxDate),
|
|
126
122
|
minDate: _this.parseValueToDate(minDate),
|
|
127
123
|
onValueChange: _this.handleValueChange,
|
|
@@ -165,18 +161,6 @@ export var DatePicker = (_dec = locale('DatePicker', DatePickerLocaleHelper), re
|
|
|
165
161
|
}) : picker)
|
|
166
162
|
);
|
|
167
163
|
};
|
|
168
|
-
_this.handleSelectToday = function (today) {
|
|
169
|
-
return function () {
|
|
170
|
-
_this.handleSelect(today);
|
|
171
|
-
if (_this.calendar) {
|
|
172
|
-
var _this$state$today = _this.state.today,
|
|
173
|
-
monthNative = _this$state$today.month,
|
|
174
|
-
year = _this$state$today.year;
|
|
175
|
-
var month = getMonthInHumanFormat(monthNative);
|
|
176
|
-
_this.calendar.scrollToMonth(month, year);
|
|
177
|
-
}
|
|
178
|
-
};
|
|
179
|
-
};
|
|
180
164
|
_this.getParent = function () {
|
|
181
165
|
return getRootNode(_this);
|
|
182
166
|
};
|
|
@@ -303,6 +287,7 @@ export var DatePicker = (_dec = locale('DatePicker', DatePickerLocaleHelper), re
|
|
|
303
287
|
return undefined;
|
|
304
288
|
};
|
|
305
289
|
_proto.renderTodayLink = function renderTodayLink() {
|
|
290
|
+
var _this3 = this;
|
|
306
291
|
var _this$locale = this.locale,
|
|
307
292
|
order = _this$locale.order,
|
|
308
293
|
separator = _this$locale.separator;
|
|
@@ -321,7 +306,9 @@ export var DatePicker = (_dec = locale('DatePicker', DatePickerLocaleHelper), re
|
|
|
321
306
|
"aria-label": this.locale.todayAriaLabel,
|
|
322
307
|
"data-tid": DatePickerDataTids.pickerTodayWrapper,
|
|
323
308
|
width: "100%",
|
|
324
|
-
onClick:
|
|
309
|
+
onClick: function onClick() {
|
|
310
|
+
_this3.handleSelect(today);
|
|
311
|
+
},
|
|
325
312
|
icon: /*#__PURE__*/React.createElement(ArrowAUpIcon16Light, null)
|
|
326
313
|
}, this.locale.today));
|
|
327
314
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PropTypes","React","Popup","LocaleContext","locale","InternalDateGetter","ArrowAUpIcon16Light","ThemeFactory","InternalDate","MAX_FULLDATE","MIN_FULLDATE","InternalDateOrder","InternalDateSeparator","InternalDateValidateCheck","DateInput","filterProps","CommonWrapper","isMobile","NativeDateInput","getRootNode","rootNode","isNonNullable","createPropsGetter","Calendar","ThemeContext","Button","getMonthInHumanFormat","getTodayDate","responsiveLayout","getMenuPositions","ZIndex","styles","DatePickerLocaleHelper","MobilePicker","INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","DatePickerDataTids","root","input","label","pickerRoot","pickerTodayWrapper","DatePicker","_dec","_class","_DatePicker","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","calendar","state","opened","canUseMobileNativeDatePicker","today","focused","renderMain","props","picker","_this$getProps","minDate","maxDate","menuPos","menuAlign","isMobileLayout","createElement","value","parseValueToDate","onValueChange","enableTodayLink","isHoliday","onCloseRequest","handleBlur","renderDay","onMonthChange","Provider","months","dayCellChooseDateAriaLabel","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel","hasShadow","priority","priorities","PopupMenu","positions","anchorElement","getParent","margin","parseInt","theme","datePickerMenuOffsetY","className","calendarWrapper","onMouseDown","e","preventDefault","ref","c","handleValueChange","renderTodayLink","style","getRootStyle","onMouseEnter","onMouseLeave","onMouseOver","_extends","id","getInputRef","width","withIcon","onBlur","undefined","onFocus","handleFocus","handleSelectToday","handleSelect","_this$state$today","monthNative","month","year","scrollToMonth","minWidth","setState","close","blur","_inheritsLoose","_proto","prototype","componentDidMount","useMobileNativeDatePicker","focus","componentDidUpdate","render","_this2","Consumer","create","calendarBottomSeparatorBorder","rootNodeRef","setRootNode","date","validate","checks","NotNull","Native","toString","withPad","_this$locale","order","separator","setComponents","getTodayComponents","withSeparator","todayAriaLabel","onClick","icon","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","bool","string","isRequired","oneOf","oneOfType","number","func","range","_range","_range$minDate","_range$maxDate","internalDate","DMY","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"sources":["DatePicker.tsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { HTMLAttributes } from 'react';\n\nimport { Popup } from '../../internal/Popup';\nimport { LocaleContext } from '../../lib/locale';\nimport { locale } from '../../lib/locale/decorators';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { MAX_FULLDATE, MIN_FULLDATE } from '../../lib/date/constants';\nimport { InternalDateOrder, InternalDateSeparator, InternalDateValidateCheck } from '../../lib/date/types';\nimport { Nullable } from '../../typings/utility-types';\nimport { DateInput } from '../DateInput';\nimport { filterProps } from '../../lib/filterProps';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { isMobile } from '../../lib/client';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { isNonNullable } from '../../lib/utils';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Calendar, CalendarDateShape, CalendarProps } from '../Calendar';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { Button } from '../Button';\nimport { getMonthInHumanFormat, getTodayDate } from '../Calendar/CalendarUtils';\nimport { SizeProp } from '../../lib/types/props';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { getMenuPositions } from '../../lib/getMenuPositions';\nimport { ZIndex } from '../../internal/ZIndex';\n\nimport { styles } from './DatePicker.styles';\nimport { DatePickerLocale, DatePickerLocaleHelper } from './locale';\nimport { MobilePicker } from './MobilePicker';\n\nconst INPUT_PASS_PROPS = {\n autoFocus: true,\n disabled: true,\n warning: true,\n error: true,\n size: true,\n onKeyDown: true,\n};\n\nexport const MIN_WIDTH = 120;\n\nexport interface DatePickerProps\n extends Pick<CalendarProps, 'isHoliday' | 'minDate' | 'maxDate' | 'renderDay' | 'onMonthChange'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps {\n autoFocus?: boolean;\n disabled?: boolean;\n /**\n * Отвечает за отображение кнопки \"Сегодня\".\n */\n enableTodayLink?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Позволяет вручную задать текущую позицию выпадающего окна\n */\n menuPos?: 'top' | 'bottom';\n menuAlign?: 'left' | 'right';\n size?: SizeProp;\n value?: string | null;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: number | string;\n onBlur?: () => void;\n /**\n * Вызывается при изменении `value`\n *\n * @param value - строка в формате `dd.mm.yyyy`.\n */\n onValueChange: (value: string) => void;\n onFocus?: () => void;\n onKeyDown?: (e: React.KeyboardEvent<any>) => void;\n onMouseEnter?: (e: React.MouseEvent<any>) => void;\n onMouseLeave?: (e: React.MouseEvent<any>) => void;\n onMouseOver?: (e: React.MouseEvent<any>) => void;\n /**\n * Использовать на мобильных устройствах нативный календарь для выбора дат.\n *\n * - На iOS нативный календарь не умеет работать с minDate и maxDate\n */\n useMobileNativeDatePicker?: boolean;\n}\n\nexport interface DatePickerState {\n opened: boolean;\n canUseMobileNativeDatePicker: boolean;\n today: CalendarDateShape;\n}\n\nexport const DatePickerDataTids = {\n root: 'DatePicker__root',\n input: 'DatePicker__input',\n label: 'DatePicker__label',\n pickerRoot: 'Picker__root',\n pickerTodayWrapper: 'Picker__todayWrapper',\n} as const;\n\ntype DefaultProps = Required<Pick<DatePickerProps, 'minDate' | 'maxDate'>>;\n\n@responsiveLayout\n@rootNode\n@locale('DatePicker', DatePickerLocaleHelper)\nexport class DatePicker extends React.PureComponent<DatePickerProps, DatePickerState> {\n public static __KONTUR_REACT_UI__ = 'DatePicker';\n public static displayName = 'DatePicker';\n\n public static propTypes = {\n autoFocus: PropTypes.bool,\n\n disabled: PropTypes.bool,\n\n /**\n * Включает кнопку сегодня в календаре\n */\n enableTodayLink: PropTypes.bool,\n\n error: PropTypes.bool,\n\n /**\n * Максимальная дата в календаре.\n */\n maxDate: PropTypes.string.isRequired,\n\n menuPos: PropTypes.oneOf(['top', 'bottom']),\n\n menuAlign: PropTypes.oneOf(['left', 'right']),\n\n /**\n * Минимальная дата в календаре.\n */\n minDate: PropTypes.string.isRequired,\n\n /**\n * Строка формата `dd.mm.yyyy`\n */\n value: PropTypes.string,\n\n warning: PropTypes.bool,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n onBlur: PropTypes.func,\n\n onValueChange: PropTypes.func.isRequired,\n\n onFocus: PropTypes.func,\n\n onKeyDown: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n\n onMouseLeave: PropTypes.func,\n\n onMouseOver: PropTypes.func,\n\n isHoliday: PropTypes.func,\n\n renderDay: PropTypes.func,\n\n onMonthChange: PropTypes.func,\n };\n\n public static defaultProps: DefaultProps = {\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n };\n\n private getProps = createPropsGetter(DatePicker.defaultProps);\n private theme!: Theme;\n private calendar: Calendar | null = null;\n private readonly locale!: DatePickerLocale;\n\n public static validate = (value: Nullable<string>, range: { minDate?: string; maxDate?: string } = {}) => {\n if (!value) {\n return false;\n }\n\n const { minDate = MIN_FULLDATE, maxDate = MAX_FULLDATE } = range;\n const internalDate = new InternalDate({\n order: InternalDateOrder.DMY,\n separator: InternalDateSeparator.Dot,\n })\n .setRangeStart(new InternalDate({ value: minDate }))\n .setRangeEnd(new InternalDate({ value: maxDate }))\n .parseValue(value);\n\n return internalDate.validate({\n checks: [\n InternalDateValidateCheck.NotNull,\n InternalDateValidateCheck.Number,\n InternalDateValidateCheck.Native,\n InternalDateValidateCheck.Limits,\n InternalDateValidateCheck.Range,\n ],\n });\n };\n\n public state: DatePickerState = { opened: false, canUseMobileNativeDatePicker: false, today: getTodayDate() };\n\n private input: DateInput | null = null;\n private focused = false;\n private setRootNode!: TSetRootNode;\n private isMobileLayout!: boolean;\n\n public componentDidMount() {\n if (this.props.useMobileNativeDatePicker && isMobile) {\n this.setState({\n canUseMobileNativeDatePicker: true,\n });\n }\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public componentDidUpdate() {\n const { disabled } = this.props;\n const { opened } = this.state;\n if (disabled && opened) {\n this.close();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.input) {\n this.input.blur();\n }\n this.handleBlur();\n }\n\n /**\n * @public\n */\n public focus() {\n if (this.props.disabled) {\n return;\n }\n if (this.input) {\n this.input.focus();\n }\n this.handleFocus();\n }\n\n /**\n * Закрывает выпадашку выбора дня\n * @public\n */\n public close() {\n this.setState({ opened: false });\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n\n return (\n <ThemeContext.Provider value={ThemeFactory.create({ calendarBottomSeparatorBorder: 'none' }, theme)}>\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps>) => {\n let picker = null;\n\n const { minDate, maxDate, menuPos, menuAlign } = this.getProps();\n\n const isMobile = this.isMobileLayout;\n\n if (this.state.opened) {\n if (isMobile) {\n picker = (\n <MobilePicker\n value={this.props.value}\n minDate={this.parseValueToDate(minDate)}\n maxDate={this.parseValueToDate(maxDate)}\n onValueChange={this.props.onValueChange}\n enableTodayLink={this.props.enableTodayLink}\n isHoliday={this.props.isHoliday}\n onCloseRequest={this.handleBlur}\n renderDay={props.renderDay}\n onMonthChange={props.onMonthChange}\n />\n );\n } else {\n picker = (\n <LocaleContext.Provider\n value={{\n locale: {\n Calendar: {\n months: this.locale.months,\n dayCellChooseDateAriaLabel: this.locale.dayCellChooseDateAriaLabel,\n selectMonthAriaLabel: this.locale.selectMonthAriaLabel,\n selectYearAriaLabel: this.locale.selectYearAriaLabel,\n selectChosenAriaLabel: this.locale.selectChosenAriaLabel,\n },\n },\n }}\n >\n <Popup\n opened\n hasShadow\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(menuPos, menuAlign)}\n data-tid={DatePickerDataTids.root}\n anchorElement={this.getParent()}\n margin={parseInt(this.theme.datePickerMenuOffsetY)}\n >\n <div\n data-tid={DatePickerDataTids.pickerRoot}\n className={styles.calendarWrapper(this.theme)}\n onMouseDown={(e) => e.preventDefault()}\n >\n <Calendar\n ref={(c) => (this.calendar = c)}\n maxDate={this.parseValueToDate(maxDate)}\n minDate={this.parseValueToDate(minDate)}\n onValueChange={this.handleValueChange}\n isHoliday={this.props.isHoliday}\n value={this.parseValueToDate(this.props.value)}\n renderDay={this.props.renderDay}\n onMonthChange={this.props.onMonthChange}\n />\n {this.props.enableTodayLink && this.renderTodayLink()}{' '}\n </div>\n </Popup>\n </LocaleContext.Provider>\n );\n }\n }\n return (\n <label\n className={styles.root()}\n style={this.getRootStyle()}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n data-tid={DatePickerDataTids.label}\n >\n <DateInput\n id={this.props.id}\n {...filterProps(props, INPUT_PASS_PROPS)}\n ref={this.getInputRef}\n value={this.props.value || ''}\n width=\"100%\"\n withIcon\n minDate={minDate}\n maxDate={maxDate}\n onBlur={isMobile ? undefined : this.handleBlur}\n onFocus={this.handleFocus}\n onValueChange={this.props.onValueChange}\n data-tid={DatePickerDataTids.input}\n />\n {this.state.canUseMobileNativeDatePicker ? (\n <NativeDateInput\n onValueChange={this.props.onValueChange}\n value={this.props.value || ''}\n minDate={minDate}\n maxDate={maxDate}\n disabled={this.props.disabled}\n />\n ) : (\n picker\n )}\n </label>\n );\n };\n private parseValueToDate(value?: Nullable<string>): string | undefined {\n if (value === undefined || value === null) {\n return undefined;\n }\n\n const date = new InternalDate({ value });\n if (date.validate({ checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Native] })) {\n return date.toString({ withPad: true });\n }\n\n return undefined;\n }\n\n private renderTodayLink() {\n const { order, separator } = this.locale;\n const today = new InternalDate({ order, separator })\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n return (\n <div style={{ margin: 8 }}>\n <Button\n aria-label={this.locale.todayAriaLabel}\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n width=\"100%\"\n onClick={this.handleSelectToday(today)}\n icon={<ArrowAUpIcon16Light />}\n >\n {this.locale.today}\n </Button>\n </div>\n );\n }\n\n private handleSelectToday = (today: string) => () => {\n this.handleSelect(today);\n\n if (this.calendar) {\n const { month: monthNative, year } = this.state.today;\n const month = getMonthInHumanFormat(monthNative);\n this.calendar.scrollToMonth(month, year);\n }\n };\n\n public getParent = () => {\n return getRootNode(this);\n };\n\n private getRootStyle = () => {\n const { width } = this.props;\n return isNonNullable(width) ? { width } : { minWidth: MIN_WIDTH };\n };\n\n private getInputRef = (ref: DateInput | null) => {\n this.input = ref;\n };\n\n private handleFocus = () => {\n if (this.focused) {\n return;\n }\n\n this.focused = true;\n\n this.setState({ opened: true });\n\n if (this.props.onFocus) {\n this.props.onFocus();\n }\n };\n\n private handleBlur = () => {\n if (!this.focused) {\n return;\n }\n\n this.focused = false;\n this.close();\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handleValueChange = (value: string) => {\n this.handleSelect(value);\n this.blur();\n };\n\n private handleSelect = (value: string | null) => {\n if (!value) {\n return null;\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["PropTypes","React","Popup","LocaleContext","locale","InternalDateGetter","ArrowAUpIcon16Light","ThemeFactory","InternalDate","MAX_FULLDATE","MIN_FULLDATE","InternalDateOrder","InternalDateSeparator","InternalDateValidateCheck","DateInput","filterProps","CommonWrapper","isMobile","NativeDateInput","getRootNode","rootNode","isNonNullable","createPropsGetter","Calendar","ThemeContext","Button","getTodayDate","responsiveLayout","getMenuPositions","ZIndex","styles","DatePickerLocaleHelper","MobilePicker","INPUT_PASS_PROPS","autoFocus","disabled","warning","error","size","onKeyDown","MIN_WIDTH","DatePickerDataTids","root","input","label","pickerRoot","pickerTodayWrapper","DatePicker","_dec","_class","_DatePicker","_React$PureComponent","_this","_len","arguments","length","args","Array","_key","call","apply","concat","getProps","defaultProps","state","opened","canUseMobileNativeDatePicker","today","focused","renderMain","props","picker","_this$getProps","minDate","maxDate","menuPos","menuAlign","isMobileLayout","createElement","value","parseValueToDate","onValueChange","enableTodayLink","isHoliday","onCloseRequest","handleBlur","renderDay","onMonthChange","Provider","months","dayCellChooseDateAriaLabel","selectMonthAriaLabel","selectYearAriaLabel","selectChosenAriaLabel","hasShadow","priority","priorities","PopupMenu","positions","anchorElement","getParent","margin","parseInt","theme","datePickerMenuOffsetY","className","calendarWrapper","onMouseDown","e","preventDefault","handleValueChange","renderTodayLink","style","getRootStyle","onMouseEnter","onMouseLeave","onMouseOver","_extends","id","ref","getInputRef","width","withIcon","onBlur","undefined","onFocus","handleFocus","minWidth","setState","close","handleSelect","blur","_inheritsLoose","_proto","prototype","componentDidMount","useMobileNativeDatePicker","focus","componentDidUpdate","render","_this2","Consumer","create","calendarBottomSeparatorBorder","rootNodeRef","setRootNode","date","validate","checks","NotNull","Native","toString","withPad","_this3","_this$locale","order","separator","setComponents","getTodayComponents","withSeparator","todayAriaLabel","onClick","icon","PureComponent","__KONTUR_REACT_UI__","displayName","propTypes","bool","string","isRequired","oneOf","oneOfType","number","func","range","_range","_range$minDate","_range$maxDate","internalDate","DMY","Dot","setRangeStart","setRangeEnd","parseValue","Number","Limits","Range"],"sources":["DatePicker.tsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React, { HTMLAttributes } from 'react';\n\nimport { Popup } from '../../internal/Popup';\nimport { LocaleContext } from '../../lib/locale';\nimport { locale } from '../../lib/locale/decorators';\nimport { InternalDateGetter } from '../../lib/date/InternalDateGetter';\nimport { ArrowAUpIcon16Light } from '../../internal/icons2022/ArrowAUpIcon/ArrowAUp16Light';\nimport { ThemeFactory } from '../../lib/theming/ThemeFactory';\nimport { InternalDate } from '../../lib/date/InternalDate';\nimport { MAX_FULLDATE, MIN_FULLDATE } from '../../lib/date/constants';\nimport { InternalDateOrder, InternalDateSeparator, InternalDateValidateCheck } from '../../lib/date/types';\nimport { Nullable } from '../../typings/utility-types';\nimport { DateInput } from '../DateInput';\nimport { filterProps } from '../../lib/filterProps';\nimport { CommonWrapper, CommonProps, CommonWrapperRestProps } from '../../internal/CommonWrapper';\nimport { isMobile } from '../../lib/client';\nimport { NativeDateInput } from '../../internal/NativeDateInput';\nimport { getRootNode, rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { isNonNullable } from '../../lib/utils';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { Calendar, CalendarDateShape, CalendarProps } from '../Calendar';\nimport { ThemeContext } from '../../lib/theming/ThemeContext';\nimport { Theme } from '../../lib/theming/Theme';\nimport { Button } from '../Button';\nimport { getTodayDate } from '../Calendar/CalendarUtils';\nimport { SizeProp } from '../../lib/types/props';\nimport { responsiveLayout } from '../ResponsiveLayout/decorator';\nimport { getMenuPositions } from '../../lib/getMenuPositions';\nimport { ZIndex } from '../../internal/ZIndex';\n\nimport { styles } from './DatePicker.styles';\nimport { DatePickerLocale, DatePickerLocaleHelper } from './locale';\nimport { MobilePicker } from './MobilePicker';\n\nconst INPUT_PASS_PROPS = {\n autoFocus: true,\n disabled: true,\n warning: true,\n error: true,\n size: true,\n onKeyDown: true,\n};\n\nexport const MIN_WIDTH = 120;\n\nexport interface DatePickerProps\n extends Pick<CalendarProps, 'isHoliday' | 'minDate' | 'maxDate' | 'renderDay' | 'onMonthChange'>,\n Pick<HTMLAttributes<HTMLElement>, 'id'>,\n CommonProps {\n autoFocus?: boolean;\n disabled?: boolean;\n /**\n * Отвечает за отображение кнопки \"Сегодня\".\n */\n enableTodayLink?: boolean;\n /**\n * Состояние валидации при ошибке.\n */\n error?: boolean;\n /**\n * Позволяет вручную задать текущую позицию выпадающего окна\n */\n menuPos?: 'top' | 'bottom';\n menuAlign?: 'left' | 'right';\n size?: SizeProp;\n value?: string | null;\n /**\n * Состояние валидации при предупреждении.\n */\n warning?: boolean;\n width?: number | string;\n onBlur?: () => void;\n /**\n * Вызывается при изменении `value`\n *\n * @param value - строка в формате `dd.mm.yyyy`.\n */\n onValueChange: (value: string) => void;\n onFocus?: () => void;\n onKeyDown?: (e: React.KeyboardEvent<any>) => void;\n onMouseEnter?: (e: React.MouseEvent<any>) => void;\n onMouseLeave?: (e: React.MouseEvent<any>) => void;\n onMouseOver?: (e: React.MouseEvent<any>) => void;\n /**\n * Использовать на мобильных устройствах нативный календарь для выбора дат.\n *\n * - На iOS нативный календарь не умеет работать с minDate и maxDate\n */\n useMobileNativeDatePicker?: boolean;\n}\n\nexport interface DatePickerState {\n opened: boolean;\n canUseMobileNativeDatePicker: boolean;\n today: CalendarDateShape;\n}\n\nexport const DatePickerDataTids = {\n root: 'DatePicker__root',\n input: 'DatePicker__input',\n label: 'DatePicker__label',\n pickerRoot: 'Picker__root',\n pickerTodayWrapper: 'Picker__todayWrapper',\n} as const;\n\ntype DefaultProps = Required<Pick<DatePickerProps, 'minDate' | 'maxDate'>>;\n\n@responsiveLayout\n@rootNode\n@locale('DatePicker', DatePickerLocaleHelper)\nexport class DatePicker extends React.PureComponent<DatePickerProps, DatePickerState> {\n public static __KONTUR_REACT_UI__ = 'DatePicker';\n public static displayName = 'DatePicker';\n\n public static propTypes = {\n autoFocus: PropTypes.bool,\n\n disabled: PropTypes.bool,\n\n /**\n * Включает кнопку сегодня в календаре\n */\n enableTodayLink: PropTypes.bool,\n\n error: PropTypes.bool,\n\n /**\n * Максимальная дата в календаре.\n */\n maxDate: PropTypes.string.isRequired,\n\n menuPos: PropTypes.oneOf(['top', 'bottom']),\n\n menuAlign: PropTypes.oneOf(['left', 'right']),\n\n /**\n * Минимальная дата в календаре.\n */\n minDate: PropTypes.string.isRequired,\n\n /**\n * Строка формата `dd.mm.yyyy`\n */\n value: PropTypes.string,\n\n warning: PropTypes.bool,\n\n width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n\n onBlur: PropTypes.func,\n\n onValueChange: PropTypes.func.isRequired,\n\n onFocus: PropTypes.func,\n\n onKeyDown: PropTypes.func,\n\n onMouseEnter: PropTypes.func,\n\n onMouseLeave: PropTypes.func,\n\n onMouseOver: PropTypes.func,\n\n isHoliday: PropTypes.func,\n\n renderDay: PropTypes.func,\n\n onMonthChange: PropTypes.func,\n };\n\n public static defaultProps: DefaultProps = {\n minDate: MIN_FULLDATE,\n maxDate: MAX_FULLDATE,\n };\n\n private getProps = createPropsGetter(DatePicker.defaultProps);\n private theme!: Theme;\n private readonly locale!: DatePickerLocale;\n\n public static validate = (value: Nullable<string>, range: { minDate?: string; maxDate?: string } = {}) => {\n if (!value) {\n return false;\n }\n\n const { minDate = MIN_FULLDATE, maxDate = MAX_FULLDATE } = range;\n const internalDate = new InternalDate({\n order: InternalDateOrder.DMY,\n separator: InternalDateSeparator.Dot,\n })\n .setRangeStart(new InternalDate({ value: minDate }))\n .setRangeEnd(new InternalDate({ value: maxDate }))\n .parseValue(value);\n\n return internalDate.validate({\n checks: [\n InternalDateValidateCheck.NotNull,\n InternalDateValidateCheck.Number,\n InternalDateValidateCheck.Native,\n InternalDateValidateCheck.Limits,\n InternalDateValidateCheck.Range,\n ],\n });\n };\n\n public state: DatePickerState = { opened: false, canUseMobileNativeDatePicker: false, today: getTodayDate() };\n\n private input: DateInput | null = null;\n private focused = false;\n private setRootNode!: TSetRootNode;\n private isMobileLayout!: boolean;\n\n public componentDidMount() {\n if (this.props.useMobileNativeDatePicker && isMobile) {\n this.setState({\n canUseMobileNativeDatePicker: true,\n });\n }\n if (this.props.autoFocus) {\n this.focus();\n }\n }\n\n public componentDidUpdate() {\n const { disabled } = this.props;\n const { opened } = this.state;\n if (disabled && opened) {\n this.close();\n }\n }\n\n /**\n * @public\n */\n public blur() {\n if (this.input) {\n this.input.blur();\n }\n this.handleBlur();\n }\n\n /**\n * @public\n */\n public focus() {\n if (this.props.disabled) {\n return;\n }\n if (this.input) {\n this.input.focus();\n }\n this.handleFocus();\n }\n\n /**\n * Закрывает выпадашку выбора дня\n * @public\n */\n public close() {\n this.setState({ opened: false });\n }\n\n public render() {\n return (\n <ThemeContext.Consumer>\n {(theme) => {\n this.theme = theme;\n\n return (\n <ThemeContext.Provider value={ThemeFactory.create({ calendarBottomSeparatorBorder: 'none' }, theme)}>\n <CommonWrapper rootNodeRef={this.setRootNode} {...this.getProps()}>\n {this.renderMain}\n </CommonWrapper>\n </ThemeContext.Provider>\n );\n }}\n </ThemeContext.Consumer>\n );\n }\n\n public renderMain = (props: CommonWrapperRestProps<DatePickerProps>) => {\n let picker = null;\n\n const { minDate, maxDate, menuPos, menuAlign } = this.getProps();\n\n const isMobile = this.isMobileLayout;\n\n if (this.state.opened) {\n if (isMobile) {\n picker = (\n <MobilePicker\n value={this.props.value}\n minDate={this.parseValueToDate(minDate)}\n maxDate={this.parseValueToDate(maxDate)}\n onValueChange={this.props.onValueChange}\n enableTodayLink={this.props.enableTodayLink}\n isHoliday={this.props.isHoliday}\n onCloseRequest={this.handleBlur}\n renderDay={props.renderDay}\n onMonthChange={props.onMonthChange}\n />\n );\n } else {\n picker = (\n <LocaleContext.Provider\n value={{\n locale: {\n Calendar: {\n months: this.locale.months,\n dayCellChooseDateAriaLabel: this.locale.dayCellChooseDateAriaLabel,\n selectMonthAriaLabel: this.locale.selectMonthAriaLabel,\n selectYearAriaLabel: this.locale.selectYearAriaLabel,\n selectChosenAriaLabel: this.locale.selectChosenAriaLabel,\n },\n },\n }}\n >\n <Popup\n opened\n hasShadow\n priority={ZIndex.priorities.PopupMenu}\n positions={getMenuPositions(menuPos, menuAlign)}\n data-tid={DatePickerDataTids.root}\n anchorElement={this.getParent()}\n margin={parseInt(this.theme.datePickerMenuOffsetY)}\n >\n <div\n data-tid={DatePickerDataTids.pickerRoot}\n className={styles.calendarWrapper(this.theme)}\n onMouseDown={(e) => e.preventDefault()}\n >\n <Calendar\n maxDate={this.parseValueToDate(maxDate)}\n minDate={this.parseValueToDate(minDate)}\n onValueChange={this.handleValueChange}\n isHoliday={this.props.isHoliday}\n value={this.parseValueToDate(this.props.value)}\n renderDay={this.props.renderDay}\n onMonthChange={this.props.onMonthChange}\n />\n {this.props.enableTodayLink && this.renderTodayLink()}{' '}\n </div>\n </Popup>\n </LocaleContext.Provider>\n );\n }\n }\n return (\n <label\n className={styles.root()}\n style={this.getRootStyle()}\n onMouseEnter={this.props.onMouseEnter}\n onMouseLeave={this.props.onMouseLeave}\n onMouseOver={this.props.onMouseOver}\n data-tid={DatePickerDataTids.label}\n >\n <DateInput\n id={this.props.id}\n {...filterProps(props, INPUT_PASS_PROPS)}\n ref={this.getInputRef}\n value={this.props.value || ''}\n width=\"100%\"\n withIcon\n minDate={minDate}\n maxDate={maxDate}\n onBlur={isMobile ? undefined : this.handleBlur}\n onFocus={this.handleFocus}\n onValueChange={this.props.onValueChange}\n data-tid={DatePickerDataTids.input}\n />\n {this.state.canUseMobileNativeDatePicker ? (\n <NativeDateInput\n onValueChange={this.props.onValueChange}\n value={this.props.value || ''}\n minDate={minDate}\n maxDate={maxDate}\n disabled={this.props.disabled}\n />\n ) : (\n picker\n )}\n </label>\n );\n };\n private parseValueToDate(value?: Nullable<string>): string | undefined {\n if (value === undefined || value === null) {\n return undefined;\n }\n\n const date = new InternalDate({ value });\n if (date.validate({ checks: [InternalDateValidateCheck.NotNull, InternalDateValidateCheck.Native] })) {\n return date.toString({ withPad: true });\n }\n\n return undefined;\n }\n\n private renderTodayLink() {\n const { order, separator } = this.locale;\n const today = new InternalDate({ order, separator })\n .setComponents(InternalDateGetter.getTodayComponents())\n .toString({ withPad: true, withSeparator: true });\n\n return (\n <div style={{ margin: 8 }}>\n <Button\n aria-label={this.locale.todayAriaLabel}\n data-tid={DatePickerDataTids.pickerTodayWrapper}\n width=\"100%\"\n onClick={() => {\n this.handleSelect(today);\n }}\n icon={<ArrowAUpIcon16Light />}\n >\n {this.locale.today}\n </Button>\n </div>\n );\n }\n\n public getParent = () => {\n return getRootNode(this);\n };\n\n private getRootStyle = () => {\n const { width } = this.props;\n return isNonNullable(width) ? { width } : { minWidth: MIN_WIDTH };\n };\n\n private getInputRef = (ref: DateInput | null) => {\n this.input = ref;\n };\n\n private handleFocus = () => {\n if (this.focused) {\n return;\n }\n\n this.focused = true;\n\n this.setState({ opened: true });\n\n if (this.props.onFocus) {\n this.props.onFocus();\n }\n };\n\n private handleBlur = () => {\n if (!this.focused) {\n return;\n }\n\n this.focused = false;\n this.close();\n\n if (this.props.onBlur) {\n this.props.onBlur();\n }\n };\n\n private handleValueChange = (value: string) => {\n this.handleSelect(value);\n this.blur();\n };\n\n private handleSelect = (value: string | null) => {\n if (!value) {\n return null;\n }\n\n if (this.props.onValueChange) {\n this.props.onValueChange(value);\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -101,7 +101,6 @@ export declare class DatePicker extends React.PureComponent<DatePickerProps, Dat
|
|
|
101
101
|
static defaultProps: DefaultProps;
|
|
102
102
|
private getProps;
|
|
103
103
|
private theme;
|
|
104
|
-
private calendar;
|
|
105
104
|
private readonly locale;
|
|
106
105
|
static validate: (value: Nullable<string>, range?: {
|
|
107
106
|
minDate?: string | undefined;
|
|
@@ -131,7 +130,6 @@ export declare class DatePicker extends React.PureComponent<DatePickerProps, Dat
|
|
|
131
130
|
renderMain: (props: CommonWrapperRestProps<DatePickerProps>) => React.JSX.Element;
|
|
132
131
|
private parseValueToDate;
|
|
133
132
|
private renderTodayLink;
|
|
134
|
-
private handleSelectToday;
|
|
135
133
|
getParent: () => Nullable<Element>;
|
|
136
134
|
private getRootStyle;
|
|
137
135
|
private getInputRef;
|
|
@@ -46,9 +46,9 @@ export var ZIndex = rootNode(_class = (_ZIndex = /*#__PURE__*/function (_React$C
|
|
|
46
46
|
var savedZIndexContext = DEFAULT_ZINDEX_CONTEXT;
|
|
47
47
|
var portal = (_element$parentElemen = element.parentElement) == null ? void 0 : _element$parentElemen.closest("[" + PORTAL_OUTLET_ATTR + "]");
|
|
48
48
|
if (isInstanceOf(portal, globalObject.HTMLElement)) {
|
|
49
|
-
var _noscript$parentEleme;
|
|
49
|
+
var _globalObject$documen, _noscript$parentEleme;
|
|
50
50
|
var portalID = portal.getAttribute(PORTAL_OUTLET_ATTR);
|
|
51
|
-
var noscript = document.querySelector("noscript[" + PORTAL_INLET_ATTR + "=\"" + portalID + "\"]");
|
|
51
|
+
var noscript = (_globalObject$documen = globalObject.document) == null ? void 0 : _globalObject$documen.querySelector("noscript[" + PORTAL_INLET_ATTR + "=\"" + portalID + "\"]");
|
|
52
52
|
var parent = noscript == null || (_noscript$parentEleme = noscript.parentElement) == null ? void 0 : _noscript$parentEleme.closest('[style*=z-index]');
|
|
53
53
|
if (isInstanceOf(parent, globalObject.HTMLElement)) {
|
|
54
54
|
var _parent$parentElement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","globalObject","isBrowser","callChildRef","rootNode","createPropsGetter","isInstanceOf","LoaderDataTids","PORTAL_INLET_ATTR","PORTAL_OUTLET_ATTR","incrementZIndex","removeZIndex","upperBorder","componentPriorities","DEFAULT_ZINDEX_CONTEXT","parentLayerZIndex","maxZIndex","Infinity","ZIndexContext","createContext","displayName","ZIndex","_class","_ZIndex","_React$Component","props","_this","call","state","zIndex","savedZIndexContext","getProps","defaultProps","zIndexContext","wrapperRef","element","setRootNode","tryGetContextByDOM","increment","_this$getProps","priority","delta","_element$parentElemen","portal","parentElement","closest","HTMLElement","_noscript$parentEleme","portalID","getAttribute","noscript","document","querySelector","parent","_parent$parentElement","newZIndex","Number","style","dataset","tid","veil","calcZIndex","setState","_inheritsLoose","_proto","prototype","componentDidUpdate","prevProps","componentWillUnmount","render","_this2","_this$getProps2","children","applyZIndex","coverChildren","createStackingContext","useWrapper","rest","_objectWithoutPropertiesLoose","_excluded","wrapperStyle","createElement","Consumer","context","_ref","zIndexContextValue","isFinite","body","isolation","transform","child","_extends","ref","Provider","value","allowedValuesIntervalLength","scale","Math","ceil","Component","priorities","__KONTUR_REACT_UI__","propTypes","Error","trunc"],"sources":["ZIndex.tsx"],"sourcesContent":["import React from 'react';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport { callChildRef } from '../../lib/callChildRef/callChildRef';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { LoaderDataTids } from '../../components/Loader';\nimport { PORTAL_INLET_ATTR, PORTAL_OUTLET_ATTR } from '../RenderContainer';\n\nimport { incrementZIndex, removeZIndex, upperBorder, LayerComponentName, componentPriorities } from './ZIndexStorage';\n\nconst DEFAULT_ZINDEX_CONTEXT = { parentLayerZIndex: 0, maxZIndex: Infinity };\n\nconst ZIndexContext = React.createContext(DEFAULT_ZINDEX_CONTEXT);\n\nZIndexContext.displayName = 'ZIndexContext';\n\nexport interface ZIndexProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Приращение к z-index\n */\n delta?: number;\n priority?: number | LayerComponentName;\n style?: React.CSSProperties;\n createStackingContext?: boolean;\n coverChildren?: boolean;\n applyZIndex?: boolean;\n className?: string;\n wrapperRef?: React.Ref<HTMLDivElement> | undefined | null;\n\n /**\n * Явно указывает, что вложенные элементы должны быть обёрнуты в `<div/>`.\n * Для случаев, когда необходимо задать **только** контекст для области.\n *\n * @default true\n */\n useWrapper?: boolean;\n}\n\ntype DefaultProps = Required<\n Pick<\n ZIndexProps,\n 'delta' | 'priority' | 'style' | 'applyZIndex' | 'coverChildren' | 'createStackingContext' | 'useWrapper'\n >\n>;\n\ninterface ZIndexState {\n zIndex: number;\n savedZIndexContext: { parentLayerZIndex: number; maxZIndex: number } | null;\n}\n\n@rootNode\nexport class ZIndex extends React.Component<ZIndexProps, ZIndexState> {\n public static priorities = componentPriorities;\n public static __KONTUR_REACT_UI__ = 'ZIndex';\n public static displayName = 'ZIndex';\n\n public static defaultProps: DefaultProps = {\n delta: 10,\n priority: 0,\n style: {},\n applyZIndex: true,\n coverChildren: false,\n createStackingContext: false,\n useWrapper: true,\n };\n\n public state: ZIndexState = {\n zIndex: 0,\n savedZIndexContext: null,\n };\n\n private getProps = createPropsGetter(ZIndex.defaultProps);\n\n public static propTypes = {\n delta(props: ZIndexProps) {\n if ((props.delta || ZIndex.defaultProps.delta) <= 0) {\n return new Error(`[ZIndex]: Prop 'delta' must be greater than 0, received ${props.delta}`);\n }\n if (Math.trunc(props.delta || ZIndex.defaultProps.delta) !== props.delta) {\n return new Error(`[ZIndex]: Prop 'delta' must be integer, received ${props.delta}`);\n }\n },\n };\n\n private setRootNode!: TSetRootNode;\n private zIndexContext: { parentLayerZIndex: number; maxZIndex: number } | null = null;\n\n constructor(props: ZIndexProps) {\n super(props);\n this.state.zIndex = this.increment();\n }\n\n public componentDidUpdate(prevProps: Readonly<ZIndexProps>) {\n if (prevProps.priority !== this.props.priority || prevProps.delta !== this.props.delta) {\n removeZIndex(this.state.zIndex);\n this.setState({ zIndex: this.increment() });\n }\n }\n\n public componentWillUnmount() {\n removeZIndex(this.state.zIndex);\n }\n\n public render() {\n const {\n style,\n children,\n delta,\n priority,\n applyZIndex,\n coverChildren,\n createStackingContext,\n wrapperRef,\n useWrapper,\n ...rest\n } = this.getProps();\n\n const wrapperStyle: React.CSSProperties = {};\n\n return (\n <ZIndexContext.Consumer>\n {(context) => {\n this.zIndexContext = context;\n const { parentLayerZIndex, maxZIndex } = this.state.savedZIndexContext || context;\n let zIndexContextValue = { parentLayerZIndex, maxZIndex };\n let newZIndex = 0;\n if (applyZIndex) {\n newZIndex = this.calcZIndex(parentLayerZIndex, maxZIndex);\n wrapperStyle.zIndex = newZIndex;\n\n zIndexContextValue = coverChildren\n ? { parentLayerZIndex, maxZIndex: newZIndex }\n : { parentLayerZIndex: newZIndex, maxZIndex: Number.isFinite(maxZIndex) ? newZIndex : Infinity };\n\n if (createStackingContext) {\n isBrowser(globalObject) && 'isolation' in globalObject.document.body.style\n ? (wrapperStyle.isolation = 'isolate')\n : (wrapperStyle.transform = 'rotate(0)');\n }\n }\n\n const child = !useWrapper ? (\n children\n ) : (\n <div style={{ ...style, ...wrapperStyle }} ref={this.wrapperRef} {...rest}>\n {children}\n </div>\n );\n\n return <ZIndexContext.Provider value={zIndexContextValue}>{child}</ZIndexContext.Provider>;\n }}\n </ZIndexContext.Consumer>\n );\n }\n\n private wrapperRef = (element: HTMLDivElement | null) => {\n const { wrapperRef } = this.props;\n this.setRootNode(element);\n wrapperRef && callChildRef(wrapperRef, element);\n element && this.tryGetContextByDOM(element);\n };\n\n private calcZIndex(parentLayerZIndex: number, maxZIndex: number) {\n let newZIndex = this.state.zIndex;\n\n if (Number.isFinite(maxZIndex)) {\n const allowedValuesIntervalLength = maxZIndex - parentLayerZIndex;\n const scale = upperBorder / allowedValuesIntervalLength;\n newZIndex = Math.ceil(newZIndex / scale);\n }\n\n newZIndex += parentLayerZIndex;\n\n return newZIndex;\n }\n\n private increment = () => {\n const { priority, delta } = this.getProps();\n\n return incrementZIndex(priority, delta);\n };\n\n private tryGetContextByDOM = (element: HTMLDivElement) => {\n if (DEFAULT_ZINDEX_CONTEXT === this.zIndexContext && this.state.savedZIndexContext === null) {\n let savedZIndexContext = DEFAULT_ZINDEX_CONTEXT;\n const portal = element.parentElement?.closest(`[${PORTAL_OUTLET_ATTR}]`);\n\n if (isInstanceOf(portal, globalObject.HTMLElement)) {\n const portalID = portal.getAttribute(PORTAL_OUTLET_ATTR);\n const noscript = document.querySelector(`noscript[${PORTAL_INLET_ATTR}=\"${portalID}\"]`);\n const parent = noscript?.parentElement?.closest('[style*=z-index]');\n\n if (isInstanceOf(parent, globalObject.HTMLElement)) {\n const newZIndex = Number(parent.style.zIndex || 0);\n\n let maxZIndex = Infinity;\n\n if (parent.parentElement?.dataset.tid === LoaderDataTids.veil) {\n maxZIndex = this.calcZIndex(newZIndex, maxZIndex);\n }\n\n savedZIndexContext = { maxZIndex, parentLayerZIndex: newZIndex };\n }\n }\n\n this.setState({ savedZIndexContext });\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","globalObject","isBrowser","callChildRef","rootNode","createPropsGetter","isInstanceOf","LoaderDataTids","PORTAL_INLET_ATTR","PORTAL_OUTLET_ATTR","incrementZIndex","removeZIndex","upperBorder","componentPriorities","DEFAULT_ZINDEX_CONTEXT","parentLayerZIndex","maxZIndex","Infinity","ZIndexContext","createContext","displayName","ZIndex","_class","_ZIndex","_React$Component","props","_this","call","state","zIndex","savedZIndexContext","getProps","defaultProps","zIndexContext","wrapperRef","element","setRootNode","tryGetContextByDOM","increment","_this$getProps","priority","delta","_element$parentElemen","portal","parentElement","closest","HTMLElement","_globalObject$documen","_noscript$parentEleme","portalID","getAttribute","noscript","document","querySelector","parent","_parent$parentElement","newZIndex","Number","style","dataset","tid","veil","calcZIndex","setState","_inheritsLoose","_proto","prototype","componentDidUpdate","prevProps","componentWillUnmount","render","_this2","_this$getProps2","children","applyZIndex","coverChildren","createStackingContext","useWrapper","rest","_objectWithoutPropertiesLoose","_excluded","wrapperStyle","createElement","Consumer","context","_ref","zIndexContextValue","isFinite","body","isolation","transform","child","_extends","ref","Provider","value","allowedValuesIntervalLength","scale","Math","ceil","Component","priorities","__KONTUR_REACT_UI__","propTypes","Error","trunc"],"sources":["ZIndex.tsx"],"sourcesContent":["import React from 'react';\nimport { globalObject, isBrowser } from '@skbkontur/global-object';\n\nimport { callChildRef } from '../../lib/callChildRef/callChildRef';\nimport { rootNode, TSetRootNode } from '../../lib/rootNode';\nimport { createPropsGetter } from '../../lib/createPropsGetter';\nimport { isInstanceOf } from '../../lib/isInstanceOf';\nimport { LoaderDataTids } from '../../components/Loader';\nimport { PORTAL_INLET_ATTR, PORTAL_OUTLET_ATTR } from '../RenderContainer';\n\nimport { incrementZIndex, removeZIndex, upperBorder, LayerComponentName, componentPriorities } from './ZIndexStorage';\n\nconst DEFAULT_ZINDEX_CONTEXT = { parentLayerZIndex: 0, maxZIndex: Infinity };\n\nconst ZIndexContext = React.createContext(DEFAULT_ZINDEX_CONTEXT);\n\nZIndexContext.displayName = 'ZIndexContext';\n\nexport interface ZIndexProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Приращение к z-index\n */\n delta?: number;\n priority?: number | LayerComponentName;\n style?: React.CSSProperties;\n createStackingContext?: boolean;\n coverChildren?: boolean;\n applyZIndex?: boolean;\n className?: string;\n wrapperRef?: React.Ref<HTMLDivElement> | undefined | null;\n\n /**\n * Явно указывает, что вложенные элементы должны быть обёрнуты в `<div/>`.\n * Для случаев, когда необходимо задать **только** контекст для области.\n *\n * @default true\n */\n useWrapper?: boolean;\n}\n\ntype DefaultProps = Required<\n Pick<\n ZIndexProps,\n 'delta' | 'priority' | 'style' | 'applyZIndex' | 'coverChildren' | 'createStackingContext' | 'useWrapper'\n >\n>;\n\ninterface ZIndexState {\n zIndex: number;\n savedZIndexContext: { parentLayerZIndex: number; maxZIndex: number } | null;\n}\n\n@rootNode\nexport class ZIndex extends React.Component<ZIndexProps, ZIndexState> {\n public static priorities = componentPriorities;\n public static __KONTUR_REACT_UI__ = 'ZIndex';\n public static displayName = 'ZIndex';\n\n public static defaultProps: DefaultProps = {\n delta: 10,\n priority: 0,\n style: {},\n applyZIndex: true,\n coverChildren: false,\n createStackingContext: false,\n useWrapper: true,\n };\n\n public state: ZIndexState = {\n zIndex: 0,\n savedZIndexContext: null,\n };\n\n private getProps = createPropsGetter(ZIndex.defaultProps);\n\n public static propTypes = {\n delta(props: ZIndexProps) {\n if ((props.delta || ZIndex.defaultProps.delta) <= 0) {\n return new Error(`[ZIndex]: Prop 'delta' must be greater than 0, received ${props.delta}`);\n }\n if (Math.trunc(props.delta || ZIndex.defaultProps.delta) !== props.delta) {\n return new Error(`[ZIndex]: Prop 'delta' must be integer, received ${props.delta}`);\n }\n },\n };\n\n private setRootNode!: TSetRootNode;\n private zIndexContext: { parentLayerZIndex: number; maxZIndex: number } | null = null;\n\n constructor(props: ZIndexProps) {\n super(props);\n this.state.zIndex = this.increment();\n }\n\n public componentDidUpdate(prevProps: Readonly<ZIndexProps>) {\n if (prevProps.priority !== this.props.priority || prevProps.delta !== this.props.delta) {\n removeZIndex(this.state.zIndex);\n this.setState({ zIndex: this.increment() });\n }\n }\n\n public componentWillUnmount() {\n removeZIndex(this.state.zIndex);\n }\n\n public render() {\n const {\n style,\n children,\n delta,\n priority,\n applyZIndex,\n coverChildren,\n createStackingContext,\n wrapperRef,\n useWrapper,\n ...rest\n } = this.getProps();\n\n const wrapperStyle: React.CSSProperties = {};\n\n return (\n <ZIndexContext.Consumer>\n {(context) => {\n this.zIndexContext = context;\n const { parentLayerZIndex, maxZIndex } = this.state.savedZIndexContext || context;\n let zIndexContextValue = { parentLayerZIndex, maxZIndex };\n let newZIndex = 0;\n if (applyZIndex) {\n newZIndex = this.calcZIndex(parentLayerZIndex, maxZIndex);\n wrapperStyle.zIndex = newZIndex;\n\n zIndexContextValue = coverChildren\n ? { parentLayerZIndex, maxZIndex: newZIndex }\n : { parentLayerZIndex: newZIndex, maxZIndex: Number.isFinite(maxZIndex) ? newZIndex : Infinity };\n\n if (createStackingContext) {\n isBrowser(globalObject) && 'isolation' in globalObject.document.body.style\n ? (wrapperStyle.isolation = 'isolate')\n : (wrapperStyle.transform = 'rotate(0)');\n }\n }\n\n const child = !useWrapper ? (\n children\n ) : (\n <div style={{ ...style, ...wrapperStyle }} ref={this.wrapperRef} {...rest}>\n {children}\n </div>\n );\n\n return <ZIndexContext.Provider value={zIndexContextValue}>{child}</ZIndexContext.Provider>;\n }}\n </ZIndexContext.Consumer>\n );\n }\n\n private wrapperRef = (element: HTMLDivElement | null) => {\n const { wrapperRef } = this.props;\n this.setRootNode(element);\n wrapperRef && callChildRef(wrapperRef, element);\n element && this.tryGetContextByDOM(element);\n };\n\n private calcZIndex(parentLayerZIndex: number, maxZIndex: number) {\n let newZIndex = this.state.zIndex;\n\n if (Number.isFinite(maxZIndex)) {\n const allowedValuesIntervalLength = maxZIndex - parentLayerZIndex;\n const scale = upperBorder / allowedValuesIntervalLength;\n newZIndex = Math.ceil(newZIndex / scale);\n }\n\n newZIndex += parentLayerZIndex;\n\n return newZIndex;\n }\n\n private increment = () => {\n const { priority, delta } = this.getProps();\n\n return incrementZIndex(priority, delta);\n };\n\n private tryGetContextByDOM = (element: HTMLDivElement) => {\n if (DEFAULT_ZINDEX_CONTEXT === this.zIndexContext && this.state.savedZIndexContext === null) {\n let savedZIndexContext = DEFAULT_ZINDEX_CONTEXT;\n const portal = element.parentElement?.closest(`[${PORTAL_OUTLET_ATTR}]`);\n\n if (isInstanceOf(portal, globalObject.HTMLElement)) {\n const portalID = portal.getAttribute(PORTAL_OUTLET_ATTR);\n const noscript = globalObject.document?.querySelector(`noscript[${PORTAL_INLET_ATTR}=\"${portalID}\"]`);\n const parent = noscript?.parentElement?.closest('[style*=z-index]');\n\n if (isInstanceOf(parent, globalObject.HTMLElement)) {\n const newZIndex = Number(parent.style.zIndex || 0);\n\n let maxZIndex = Infinity;\n\n if (parent.parentElement?.dataset.tid === LoaderDataTids.veil) {\n maxZIndex = this.calcZIndex(newZIndex, maxZIndex);\n }\n\n savedZIndexContext = { maxZIndex, parentLayerZIndex: newZIndex };\n }\n }\n\n this.setState({ savedZIndexContext });\n }\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skbkontur/react-ui",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.2",
|
|
4
4
|
"description": "UI Components",
|
|
5
5
|
"main": "cjs/index.js",
|
|
6
6
|
"module": "index.js",
|
|
7
7
|
"sideEffects": false,
|
|
8
|
-
"homepage": "https://tech.skbkontur.ru/react-ui/5.0.
|
|
8
|
+
"homepage": "https://tech.skbkontur.ru/react-ui/5.0.2/",
|
|
9
9
|
"repository": {
|
|
10
10
|
"type": "git",
|
|
11
11
|
"url": "git@github.com:skbkontur/retail-ui.git"
|