@steroidsjs/bootstrap 3.0.29 → 3.0.32
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/content/Accordion/AccordionItemView.js +0 -1
- package/content/Accordion/AccordionItemView.scss +56 -7
- package/content/Accordion/AccordionView.scss +2 -0
- package/content/Calendar/CalendarView.js +8 -3
- package/content/Calendar/CalendarView.scss +2 -10
- package/form/AutoCompleteField/AutoCompleteFieldView.scss +10 -4
- package/form/Button/ButtonView.scss +4 -3
- package/form/DateField/DateFieldView.js +1 -1
- package/form/DateRangeField/DateRangeFieldView.js +11 -2
- package/form/DateRangeField/DateRangeFieldView.scss +54 -0
- package/form/DateRangeField/views/RangeButtons/RangeButtons.d.ts +11 -0
- package/form/DateRangeField/views/RangeButtons/RangeButtons.js +60 -0
- package/form/DateRangeField/views/RangeButtons/RangeButtons.scss +126 -0
- package/form/DateRangeField/views/RangeButtons/consts.d.ts +34 -0
- package/form/DateRangeField/views/RangeButtons/consts.js +71 -0
- package/form/DateRangeField/views/RangeButtons/index.d.ts +2 -0
- package/form/DateRangeField/views/RangeButtons/index.js +7 -0
- package/form/DateRangeField/views/RangeButtons/utils.d.ts +14 -0
- package/form/DateRangeField/views/RangeButtons/utils.js +36 -0
- package/form/DateTimeField/DateTimeFieldView.js +1 -1
- package/form/DateTimeRangeField/DateTimeRangeFieldView.js +13 -4
- package/form/DateTimeRangeField/DateTimeRangeFieldView.scss +54 -0
- package/form/DropDownField/DropDownFieldView.js +3 -2
- package/form/DropDownField/DropDownFieldView.scss +12 -0
- package/form/InputField/InputFieldView.js +4 -4
- package/form/InputField/InputFieldView.scss +128 -174
- package/form/PasswordField/PasswordFieldView.scss +12 -3
- package/form/TimeField/TimeFieldView.js +1 -1
- package/form/TimeField/TimeFieldView.scss +19 -1
- package/form/TimeField/TimePanelView.d.ts +5 -0
- package/form/TimeField/TimePanelView.js +20 -22
- package/form/TimeField/TimePanelView.scss +0 -23
- package/form/TimeField/views/TimePanelColumn/TimePanelColumn.d.ts +8 -0
- package/form/TimeField/views/TimePanelColumn/TimePanelColumn.js +20 -0
- package/form/TimeField/views/TimePanelColumn/TimePanelColumn.scss +53 -0
- package/form/TimeField/views/TimePanelColumn/index.d.ts +2 -0
- package/form/TimeField/views/TimePanelColumn/index.js +7 -0
- package/form/TimeRangeField/TimeRangeFieldView.js +1 -1
- package/form/TimeRangeField/TimeRangeFieldView.scss +6 -0
- package/hooks/index.d.ts +2 -0
- package/hooks/index.js +8 -0
- package/hooks/useHideScroll.d.ts +1 -0
- package/hooks/useHideScroll.js +37 -0
- package/icons/index.js +2 -0
- package/icons/svgs/long-arrow-alt-down.svg +3 -0
- package/icons/svgs/long-arrow-alt-up.svg +3 -0
- package/list/Grid/GridView.js +2 -3
- package/list/Grid/GridView.scss +46 -0
- package/list/Grid/views/DiagramColumnView/DiagramColumnView.scss +6 -5
- package/modal/Modal/ModalView.js +3 -1
- package/modal/Modal/ModalView.scss +0 -5
- package/package.json +2 -2
- package/scss/mixins/button.scss +5 -5
- package/scss/mixins/date.scss +2 -2
- package/scss/normalize.scss +5 -0
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { ITimePanelViewProps } from '@steroidsjs/core/ui/form/TimeField/TimeField';
|
|
3
|
+
export interface ITimePanelColumn {
|
|
4
|
+
values: string[];
|
|
5
|
+
currentValueKey: string;
|
|
6
|
+
onUpdate: (value: string) => void;
|
|
7
|
+
}
|
|
3
8
|
declare function TimePanelView(props: ITimePanelViewProps): JSX.Element;
|
|
4
9
|
declare namespace TimePanelView {
|
|
5
10
|
var defaultProps: {
|
|
@@ -29,6 +29,7 @@ exports.__esModule = true;
|
|
|
29
29
|
var React = __importStar(require("react"));
|
|
30
30
|
var hooks_1 = require("@steroidsjs/core/hooks");
|
|
31
31
|
var padStart_1 = __importDefault(require("lodash-es/padStart"));
|
|
32
|
+
var TimePanelColumn_1 = __importDefault(require("./views/TimePanelColumn"));
|
|
32
33
|
var getHours = function () {
|
|
33
34
|
var result = [];
|
|
34
35
|
for (var i = 0; i < 24; i += 1) {
|
|
@@ -48,29 +49,26 @@ var getMinutes = function () {
|
|
|
48
49
|
function TimePanelView(props) {
|
|
49
50
|
var bem = (0, hooks_1.useBem)('TimePanelView');
|
|
50
51
|
var _a = props.value ? props.value.split(':') : ['00', '00'], hours = _a[0], minutes = _a[1];
|
|
52
|
+
var currentValues = {
|
|
53
|
+
hours: hours,
|
|
54
|
+
minutes: minutes
|
|
55
|
+
};
|
|
56
|
+
var COLUMNS = [{
|
|
57
|
+
values: getHours(),
|
|
58
|
+
currentValueKey: 'hours',
|
|
59
|
+
onUpdate: function (value) {
|
|
60
|
+
props.onSelect(value + ':' + minutes);
|
|
61
|
+
}
|
|
62
|
+
}, {
|
|
63
|
+
values: getMinutes(),
|
|
64
|
+
currentValueKey: 'minutes',
|
|
65
|
+
onUpdate: function (value) {
|
|
66
|
+
props.onSelect(hours + ':' + value);
|
|
67
|
+
}
|
|
68
|
+
}];
|
|
51
69
|
return (React.createElement("div", { className: bem(bem.block(), props.className) },
|
|
52
|
-
props.showHeader && (React.createElement("div", { className: bem.element('header') }, props.value && ("".concat(hours, ":").concat(minutes)))),
|
|
53
|
-
React.createElement("div", { className: bem.element('body') },
|
|
54
|
-
React.createElement("div", { className: bem.element('column') }, getHours().map(function (value, index) { return (React.createElement("div", { key: index, className: bem.element('cell', {
|
|
55
|
-
selected: value === hours
|
|
56
|
-
}), onKeyPress: function (e) {
|
|
57
|
-
e.preventDefault();
|
|
58
|
-
props.onSelect(value + ':' + minutes);
|
|
59
|
-
}, onClick: function (e) {
|
|
60
|
-
e.preventDefault();
|
|
61
|
-
props.onSelect(value + ':' + minutes);
|
|
62
|
-
}, role: 'button', tabIndex: 0 },
|
|
63
|
-
React.createElement("div", { className: bem.element('cell-value') }, value))); })),
|
|
64
|
-
React.createElement("div", { className: bem.element('column') }, getMinutes().map(function (value, index) { return (React.createElement("div", { key: index, className: bem.element('cell', {
|
|
65
|
-
selected: value === minutes
|
|
66
|
-
}), onKeyPress: function (e) {
|
|
67
|
-
e.preventDefault();
|
|
68
|
-
props.onSelect(hours + ':' + value);
|
|
69
|
-
}, onClick: function (e) {
|
|
70
|
-
e.preventDefault();
|
|
71
|
-
props.onSelect(hours + ':' + value);
|
|
72
|
-
}, role: 'button', tabIndex: 0 },
|
|
73
|
-
React.createElement("div", { className: bem.element('cell-value') }, value))); }))),
|
|
70
|
+
props.showHeader && (React.createElement("div", { className: bem.element('header') }, props.value && ("".concat(currentValues.hours, ":").concat(currentValues.minutes)))),
|
|
71
|
+
React.createElement("div", { className: bem.element('body') }, COLUMNS.map(function (column) { return (React.createElement(TimePanelColumn_1["default"], { key: column.currentValueKey, column: column, currentValue: currentValues[column.currentValueKey] })); })),
|
|
74
72
|
React.createElement("div", { className: bem.element('footer', { 'to-end': !props.showNow }) },
|
|
75
73
|
props.showNow && (React.createElement("button", { className: bem.element('button', 'now'), onClick: function (e) {
|
|
76
74
|
e.preventDefault();
|
|
@@ -21,29 +21,6 @@
|
|
|
21
21
|
border-radius: variables.$input-border-radius;
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
&__column {
|
|
25
|
-
height: 220px;
|
|
26
|
-
overflow-y: auto;
|
|
27
|
-
list-style: none;
|
|
28
|
-
padding: 0;
|
|
29
|
-
margin: 0;
|
|
30
|
-
@include mixins.scrollWrapper(298px, 0, variables.$scroll-thumb-color, variables.$scroll-track-color);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
&__cell {
|
|
34
|
-
padding: 5px 20px;
|
|
35
|
-
cursor: pointer;
|
|
36
|
-
|
|
37
|
-
&_selected {
|
|
38
|
-
background-color: variables.$primary-light;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
transition: background-color 0.1s ease-in;
|
|
42
|
-
&:hover {
|
|
43
|
-
background-color: variables.$back-disabled;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
|
|
47
24
|
&__footer {
|
|
48
25
|
display: flex;
|
|
49
26
|
align-items: center;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { ITimePanelColumn } from '../../TimePanelView';
|
|
3
|
+
import './TimePanelColumn.scss';
|
|
4
|
+
export interface ITimePanelColumnProps {
|
|
5
|
+
column: ITimePanelColumn;
|
|
6
|
+
currentValue: string;
|
|
7
|
+
}
|
|
8
|
+
export default function TimePanelColumn(props: ITimePanelColumnProps): JSX.Element;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
var react_1 = __importDefault(require("react"));
|
|
7
|
+
var hooks_1 = require("@steroidsjs/core/hooks");
|
|
8
|
+
require("./TimePanelColumn.scss");
|
|
9
|
+
function TimePanelColumn(props) {
|
|
10
|
+
var bem = (0, hooks_1.useBem)('TimePanelColumn');
|
|
11
|
+
var onUpdate = function (value) { return function () {
|
|
12
|
+
props.column.onUpdate(value);
|
|
13
|
+
}; };
|
|
14
|
+
return (react_1["default"].createElement("div", { className: bem.block() },
|
|
15
|
+
react_1["default"].createElement("div", { className: bem.element('column') }, props.column.values.map(function (value, index) { return (react_1["default"].createElement("div", { key: index, className: bem.element('cell', {
|
|
16
|
+
selected: value === props.currentValue
|
|
17
|
+
}), onKeyPress: onUpdate(value), onClick: onUpdate(value), role: 'button', tabIndex: 0 },
|
|
18
|
+
react_1["default"].createElement("div", { className: bem.element('cell-value') }, value))); }))));
|
|
19
|
+
}
|
|
20
|
+
exports["default"] = TimePanelColumn;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
@use "../../../../scss/variables";
|
|
2
|
+
@use '../../../../scss/mixins';
|
|
3
|
+
|
|
4
|
+
$color: var(--element-background-color);
|
|
5
|
+
$color-hidden: rgb(from var(--element-background-color) r g b / 0%);
|
|
6
|
+
$background-linear-gradient: linear-gradient(to top, $color-hidden 0%, $color 100%);
|
|
7
|
+
|
|
8
|
+
.TimePanelColumn {
|
|
9
|
+
position: relative;
|
|
10
|
+
|
|
11
|
+
&__column {
|
|
12
|
+
height: 220px;
|
|
13
|
+
overflow-y: auto;
|
|
14
|
+
list-style: none;
|
|
15
|
+
padding: 39px 0;
|
|
16
|
+
margin: 0;
|
|
17
|
+
@include mixins.scrollWrapper(298px, 0, variables.$scroll-thumb-color, variables.$scroll-track-color);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
&__cell {
|
|
21
|
+
padding: 5px 20px;
|
|
22
|
+
cursor: pointer;
|
|
23
|
+
|
|
24
|
+
transition: background-color 0.1s ease-in;
|
|
25
|
+
|
|
26
|
+
&_selected {
|
|
27
|
+
background-color: variables.$primary-light;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
&:hover {
|
|
31
|
+
background-color: variables.$back-disabled;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
&::before,
|
|
36
|
+
&::after {
|
|
37
|
+
content: '';
|
|
38
|
+
position: absolute;
|
|
39
|
+
top: 0;
|
|
40
|
+
left: 0;
|
|
41
|
+
height: 39px;
|
|
42
|
+
width: 100%;
|
|
43
|
+
|
|
44
|
+
background: $background-linear-gradient;
|
|
45
|
+
|
|
46
|
+
pointer-events: none;
|
|
47
|
+
}
|
|
48
|
+
&::after {
|
|
49
|
+
bottom: 0;
|
|
50
|
+
top: unset;
|
|
51
|
+
transform: rotateZ(180deg);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
var TimePanelColumn_1 = __importDefault(require("./TimePanelColumn"));
|
|
7
|
+
exports["default"] = TimePanelColumn_1["default"];
|
|
@@ -54,7 +54,7 @@ function TimeRangeFieldView(props) {
|
|
|
54
54
|
'is-invalid': !!props.errors
|
|
55
55
|
}), props.className), style: props.style },
|
|
56
56
|
react_1["default"].createElement("div", { className: bem.element('body') },
|
|
57
|
-
react_1["default"].createElement("input", __assign({}, props.inputPropsFrom, { className: bem(bem.element('input')), onChange: function (e) { return props.inputPropsFrom.onChange(e.target.value); } })),
|
|
57
|
+
react_1["default"].createElement("input", __assign({}, props.inputPropsFrom, { id: props.id, className: bem(bem.element('input')), onChange: function (e) { return props.inputPropsFrom.onChange(e.target.value); } })),
|
|
58
58
|
react_1["default"].createElement("input", __assign({}, props.inputPropsTo, { className: bem.element('input'), onChange: function (e) { return props.inputPropsTo.onChange(e.target.value); } })),
|
|
59
59
|
react_1["default"].createElement("div", { className: bem.element('icon-container') },
|
|
60
60
|
props.icon && !hasValue && (react_1["default"].createElement(content_1.Icon, { className: bem.element('date-icon'), name: typeof props.icon === 'string' ? props.icon : 'calendar_range', tabIndex: -1 })),
|
package/hooks/index.d.ts
ADDED
package/hooks/index.js
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
exports.useHideScroll = void 0;
|
|
7
|
+
var useHideScroll_1 = __importDefault(require("./useHideScroll"));
|
|
8
|
+
exports.useHideScroll = useHideScroll_1["default"];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function useHideScroll(): void;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
var react_1 = require("react");
|
|
4
|
+
var react_use_1 = require("react-use");
|
|
5
|
+
var onlyNumbersRegExp = /^\D/g;
|
|
6
|
+
/*
|
|
7
|
+
* Хук устанавливает padding-right для body при открытии модальных окон.
|
|
8
|
+
* Помогает избежать нежелательного смещения контента, когда для body задается свойство overflow: hidden (убирается скролл)
|
|
9
|
+
* */
|
|
10
|
+
var BODY_HIDE_SCROLL_CLASS_NAME = 'body-hide-scroll';
|
|
11
|
+
function useHideScroll() {
|
|
12
|
+
var defaultPadding = (0, react_1.useRef)(null);
|
|
13
|
+
(0, react_use_1.useMount)(function () {
|
|
14
|
+
if (process.env.IS_SSR) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
var fullWindowWidth = window.innerWidth; // полная ширина окна;
|
|
18
|
+
var windowWidthWithoutScrollbar = document.documentElement.clientWidth; // ширина окна за вычетом скролла
|
|
19
|
+
defaultPadding.current = document.body.style.paddingRight;
|
|
20
|
+
if (windowWidthWithoutScrollbar < fullWindowWidth) {
|
|
21
|
+
var defaultPaddingInt = defaultPadding.current
|
|
22
|
+
? Number(defaultPadding.current.replace(onlyNumbersRegExp, ''))
|
|
23
|
+
: 0;
|
|
24
|
+
var paddingRight = "".concat(fullWindowWidth - windowWidthWithoutScrollbar + defaultPaddingInt, "px");
|
|
25
|
+
document.body.style.paddingRight = paddingRight;
|
|
26
|
+
document.body.classList.add(BODY_HIDE_SCROLL_CLASS_NAME);
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
(0, react_use_1.useUnmount)(function () {
|
|
30
|
+
if (process.env.IS_SSR) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
document.body.style.paddingRight = defaultPadding.current;
|
|
34
|
+
document.body.classList.remove(BODY_HIDE_SCROLL_CLASS_NAME);
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
exports["default"] = useHideScroll;
|
package/icons/index.js
CHANGED
package/list/Grid/GridView.js
CHANGED
|
@@ -62,9 +62,8 @@ function GridView(props) {
|
|
|
62
62
|
})));
|
|
63
63
|
}, [props.searchForm, props.columns]);
|
|
64
64
|
var renderSortButton = (0, react_1.useCallback)(function (attribute, direction) {
|
|
65
|
-
var _a;
|
|
66
65
|
var sortKey = (direction === 'desc' ? '-' : '') + attribute;
|
|
67
|
-
var isActive = [].concat((
|
|
66
|
+
var isActive = [].concat((props === null || props === void 0 ? void 0 : props.sort) || []).includes(sortKey);
|
|
68
67
|
return (React.createElement(Button_1["default"], { icon: direction === 'asc' ? 'long-arrow-alt-up' : 'long-arrow-alt-down', className: bem.element('sort-button', {
|
|
69
68
|
'is-active': isActive
|
|
70
69
|
}), link: true, onClick: function (e) {
|
|
@@ -86,7 +85,7 @@ function GridView(props) {
|
|
|
86
85
|
React.createElement("thead", null,
|
|
87
86
|
React.createElement("tr", null, props.columns.map(function (column, columnIndex) { return (React.createElement("th", { key: columnIndex, className: column.headerClassName },
|
|
88
87
|
column.label,
|
|
89
|
-
column.sortable && column.attribute && (React.createElement("span",
|
|
88
|
+
column.sortable && column.attribute && (React.createElement("span", { className: bem.element('sort-buttons') },
|
|
90
89
|
column.label && React.createElement("span", null, "\u00A0"),
|
|
91
90
|
renderSortButton(column.attribute, 'asc'),
|
|
92
91
|
renderSortButton(column.attribute, 'desc'))))); })),
|
package/list/Grid/GridView.scss
CHANGED
|
@@ -6,6 +6,9 @@
|
|
|
6
6
|
|
|
7
7
|
--grid-td-background-color: #FFFFFF;
|
|
8
8
|
--grid-td-alternating-color: var(--additional-light-gray);
|
|
9
|
+
|
|
10
|
+
--sort-button-color: var(--graphite);
|
|
11
|
+
--sort-button-color-active: var(--graphite-dark);
|
|
9
12
|
}
|
|
10
13
|
|
|
11
14
|
html[data-theme="dark"] {
|
|
@@ -14,6 +17,10 @@ html[data-theme="dark"] {
|
|
|
14
17
|
|
|
15
18
|
--grid-td-background-color: var(--graphite);
|
|
16
19
|
--grid-td-alternating-color: var(--graphite-dark);
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
--sort-button-color: var(--secondary-dark);
|
|
23
|
+
--sort-button-color-active: var(--secondary);
|
|
17
24
|
}
|
|
18
25
|
|
|
19
26
|
$grid-header-background-color: var(--grid-header-background-color);
|
|
@@ -97,6 +104,13 @@ $grid-td-alternating-color: var(--grid-td-alternating-color);
|
|
|
97
104
|
td:not(#{$root}__column_isDiagram) {
|
|
98
105
|
padding: 24px 16px;
|
|
99
106
|
}
|
|
107
|
+
|
|
108
|
+
&:has(#{$root}__sort-buttons) {
|
|
109
|
+
th {
|
|
110
|
+
position: relative;
|
|
111
|
+
padding: 24px 30px 24px 16px;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
100
114
|
}
|
|
101
115
|
|
|
102
116
|
&_md {
|
|
@@ -109,6 +123,13 @@ $grid-td-alternating-color: var(--grid-td-alternating-color);
|
|
|
109
123
|
td:not(#{$root}__column_isDiagram) {
|
|
110
124
|
padding: 21px 12px;
|
|
111
125
|
}
|
|
126
|
+
|
|
127
|
+
&:has(#{$root}__sort-buttons) {
|
|
128
|
+
th {
|
|
129
|
+
position: relative;
|
|
130
|
+
padding: 21px 30px 21px 12px;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
112
133
|
}
|
|
113
134
|
|
|
114
135
|
&_sm {
|
|
@@ -121,6 +142,13 @@ $grid-td-alternating-color: var(--grid-td-alternating-color);
|
|
|
121
142
|
td:not(#{$root}__column_isDiagram) {
|
|
122
143
|
padding: 16px 8px;
|
|
123
144
|
}
|
|
145
|
+
|
|
146
|
+
&:has(#{$root}__sort-buttons) {
|
|
147
|
+
th {
|
|
148
|
+
position: relative;
|
|
149
|
+
padding: 16px 30px 16px 8px;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
124
152
|
}
|
|
125
153
|
}
|
|
126
154
|
|
|
@@ -171,4 +199,22 @@ $grid-td-alternating-color: var(--grid-td-alternating-color);
|
|
|
171
199
|
width: 100%;
|
|
172
200
|
}
|
|
173
201
|
}
|
|
202
|
+
|
|
203
|
+
&__sort-buttons {
|
|
204
|
+
position: absolute;
|
|
205
|
+
right: 5px;
|
|
206
|
+
top: 50%;
|
|
207
|
+
transform: translateY(-50%);
|
|
208
|
+
}
|
|
209
|
+
&__sort-button {
|
|
210
|
+
path {
|
|
211
|
+
stroke: var(--sort-button-color);
|
|
212
|
+
}
|
|
213
|
+
&_is-active {
|
|
214
|
+
path {
|
|
215
|
+
stroke: var(--sort-button-color-active);
|
|
216
|
+
stroke-width: 2px;
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
174
220
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
@use "sass:map";
|
|
1
2
|
@use "../../../../scss/variables";
|
|
2
3
|
|
|
3
4
|
.DiagramColumnView {
|
|
@@ -68,8 +69,8 @@
|
|
|
68
69
|
&_color {
|
|
69
70
|
@each $color, $color-map in variables.$diagram-colors {
|
|
70
71
|
&_#{$color} {
|
|
71
|
-
background-color: map
|
|
72
|
-
border-right: 1px solid map
|
|
72
|
+
background-color: map.get($color-map, color-themed);
|
|
73
|
+
border-right: 1px solid map.get($color-map, color);
|
|
73
74
|
}
|
|
74
75
|
}
|
|
75
76
|
}
|
|
@@ -107,8 +108,8 @@
|
|
|
107
108
|
&_color {
|
|
108
109
|
@each $color, $color-map in variables.$diagram-colors {
|
|
109
110
|
&_#{$color} {
|
|
110
|
-
background-color: map
|
|
111
|
-
border-top: 1px solid map
|
|
111
|
+
background-color: map.get($color-map, color-themed);
|
|
112
|
+
border-top: 1px solid map.get($color-map, color);
|
|
112
113
|
}
|
|
113
114
|
}
|
|
114
115
|
}
|
|
@@ -152,7 +153,7 @@
|
|
|
152
153
|
&_color {
|
|
153
154
|
@each $color, $color-map in variables.$diagram-colors {
|
|
154
155
|
&_#{$color} {
|
|
155
|
-
border: 2px solid map
|
|
156
|
+
border: 2px solid map.get($color-map, color);
|
|
156
157
|
}
|
|
157
158
|
}
|
|
158
159
|
}
|
package/modal/Modal/ModalView.js
CHANGED
|
@@ -42,14 +42,16 @@ var react_modal_1 = __importDefault(require("react-modal"));
|
|
|
42
42
|
var hooks_1 = require("@steroidsjs/core/hooks");
|
|
43
43
|
var content_1 = require("@steroidsjs/core/ui/content");
|
|
44
44
|
var form_1 = require("@steroidsjs/core/ui/form");
|
|
45
|
+
var hooks_2 = require("../../hooks");
|
|
45
46
|
function ModalView(props) {
|
|
46
47
|
var bem = (0, hooks_1.useBem)('ModalView');
|
|
48
|
+
(0, hooks_2.useHideScroll)();
|
|
47
49
|
var overrideDefaultClasses = {
|
|
48
50
|
base: bem.block('overlay'),
|
|
49
51
|
afterOpen: 'ModalView_overlay-after',
|
|
50
52
|
beforeClose: 'ModalView_overlay-before'
|
|
51
53
|
};
|
|
52
|
-
return (React.createElement(react_modal_1["default"], __assign({}, props, { ariaHideApp: false,
|
|
54
|
+
return (React.createElement(react_modal_1["default"], __assign({}, props, { ariaHideApp: false, className: bem(bem.element('body', { size: props.size }), props.className), closeTimeoutMS: props.closeTimeoutMs, isOpen: !props.isClosing, onRequestClose: props.onClose, overlayClassName: overrideDefaultClasses, shouldCloseOnEsc: props.shouldCloseOnEsc, shouldCloseOnOverlayClick: props.shouldCloseOnOverlayClick }),
|
|
53
55
|
React.createElement("div", { className: bem.element('header') },
|
|
54
56
|
React.createElement("span", { className: bem.element('title') }, props.title),
|
|
55
57
|
React.createElement(content_1.Icon, { name: 'cross_12x12', className: bem.element('close'), onClick: props.onClose })),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@steroidsjs/bootstrap",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.32",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"author": "Vladimir Kozhin <hello@kozhindev.com>",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"react-use": "^17.4.0"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
|
-
"@steroidsjs/core": "3.0.
|
|
38
|
+
"@steroidsjs/core": "3.0.57",
|
|
39
39
|
"@steroidsjs/eslint-config": "^2.1.6",
|
|
40
40
|
"@types/enzyme": "^3.10.8",
|
|
41
41
|
"@types/googlemaps": "^3.43.3",
|
package/scss/mixins/button.scss
CHANGED
|
@@ -57,25 +57,25 @@
|
|
|
57
57
|
background-color: transparent;
|
|
58
58
|
color: map.get($colorMap, color);
|
|
59
59
|
stroke: map.get($colorMap, color);
|
|
60
|
-
|
|
60
|
+
outline: 1px solid map.get($colorMap, color);
|
|
61
61
|
|
|
62
62
|
@include svg-color(map.get($colorMap, text-color));
|
|
63
63
|
|
|
64
64
|
&:hover {
|
|
65
65
|
@include svg-color(map.get($colorMap, color-dark));
|
|
66
66
|
color: map.get($colorMap, color-dark);
|
|
67
|
-
|
|
67
|
+
outline-color: map.get($colorMap, color-dark);
|
|
68
68
|
}
|
|
69
69
|
&:focus {
|
|
70
70
|
box-shadow:
|
|
71
71
|
0 0 0 4px map.get($colorMap, color-light),
|
|
72
72
|
0 0 0 4px map.get($colorMap, color-light);
|
|
73
|
-
|
|
73
|
+
outline: 1px solid transparent;
|
|
74
74
|
}
|
|
75
75
|
&:active {
|
|
76
76
|
@include svg-color(map.get($colorMap, color-light));
|
|
77
77
|
color: map.get($colorMap, color-light);
|
|
78
|
-
|
|
78
|
+
outline-color: map.get($colorMap, color-light);
|
|
79
79
|
stroke: map.get($colorMap, color-light);
|
|
80
80
|
box-shadow: none;
|
|
81
81
|
}
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
background-color: transparent;
|
|
85
85
|
@include svg-color(map.get($colorMap, color));
|
|
86
86
|
color: map.get($colorMap, color);
|
|
87
|
-
|
|
87
|
+
outline: 1px solid map.get($colorMap, color);
|
|
88
88
|
}
|
|
89
89
|
|
|
90
90
|
@if ($colorName == "basic") {
|
package/scss/mixins/date.scss
CHANGED
|
@@ -387,7 +387,7 @@ $date-sizes: map.merge(
|
|
|
387
387
|
margin-top: 2px;
|
|
388
388
|
}
|
|
389
389
|
|
|
390
|
-
.
|
|
390
|
+
.TimePanelView .TimePanelColumn__column {
|
|
391
391
|
height: 298px;
|
|
392
392
|
row-gap: 2px;
|
|
393
393
|
border: none;
|
|
@@ -405,7 +405,7 @@ $date-sizes: map.merge(
|
|
|
405
405
|
height: 0px;
|
|
406
406
|
}
|
|
407
407
|
|
|
408
|
-
.
|
|
408
|
+
.TimePanelColumn__cell {
|
|
409
409
|
padding: 0;
|
|
410
410
|
border-radius: variables.$radius-large;
|
|
411
411
|
|