@steroidsjs/bootstrap 3.0.0-beta.125 → 3.0.0-beta.127
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/CalendarSystem/AsideCalendars/AsideCalendars.d.ts +0 -1
- package/content/CalendarSystem/AsideCalendars/AsideCalendars.js +1 -1
- package/content/CalendarSystem/CalendarSystemModalView.js +1 -1
- package/content/CalendarSystem/CalendarSystemView.js +22 -6
- package/content/CalendarSystem/ContentHeader/ContentHeader.d.ts +1 -1
- package/content/CalendarSystem/ContentHeader/ContentHeader.js +1 -1
- package/content/CalendarSystem/MonthGrid/MonthGrid.d.ts +2 -2
- package/content/CalendarSystem/MonthGrid/MonthGrid.js +2 -2
- package/content/CalendarSystem/WeekGrid/WeekGrid.d.ts +2 -2
- package/content/CalendarSystem/WeekGrid/WeekGrid.js +5 -5
- package/form/CheckboxField/CheckboxFieldView.js +1 -1
- package/form/CheckboxTreeField/CheckboxTreeFieldView.d.ts +2 -0
- package/form/CheckboxTreeField/CheckboxTreeFieldView.js +30 -0
- package/form/CheckboxTreeField/CheckboxTreeFieldView.scss +5 -0
- package/form/CheckboxTreeField/index.d.ts +2 -0
- package/form/CheckboxTreeField/index.js +7 -0
- package/form/DropDownFieldItem/DropDownFieldItemView.js +1 -1
- package/form/PasswordField/PasswordFieldView.js +1 -1
- package/index.d.ts +3 -0
- package/index.js +3 -0
- package/index.scss +1 -0
- package/list/Grid/views/TreeColumnView/TreeColumnView.js +1 -1
- package/list/Grid/views/TreeColumnView/TreeColumnView.scss +0 -3
- package/nav/TreeItem/TreeItemView.js +24 -5
- package/nav/TreeItem/TreeItemView.scss +20 -3
- package/package.json +2 -2
|
@@ -36,7 +36,7 @@ function AsideCalendars(props) {
|
|
|
36
36
|
return (react_1["default"].createElement("div", { className: bem.block() },
|
|
37
37
|
react_1["default"].createElement(content_1.Accordion, null,
|
|
38
38
|
react_1["default"].createElement(content_1.AccordionItem, { title: props.eventGroupsTitle },
|
|
39
|
-
react_1["default"].createElement(form_1.CheckboxListField, { items: props.eventGroups,
|
|
39
|
+
react_1["default"].createElement(form_1.CheckboxListField, { items: props.eventGroups, onChange: function (selectedIds) { return props.onChangeEventGroupsIds(selectedIds); } }),
|
|
40
40
|
react_1["default"].createElement(form_1.Button, { color: 'basic', className: bem.element('add'), onClick: props.openCreateEventGroupModal, size: 'sm' },
|
|
41
41
|
react_1["default"].createElement(content_1.Icon, { name: "add_16x16" }))))));
|
|
42
42
|
}
|
|
@@ -19,7 +19,7 @@ function CalendarSystemModalView(props) {
|
|
|
19
19
|
var dispatch = (0, hooks_1.useDispatch)();
|
|
20
20
|
var eventInitialValues = react_1["default"].useMemo(function () { return props.eventInitialValues; }, [props.eventInitialValues]);
|
|
21
21
|
var callOnEventSubmit = function (fields) {
|
|
22
|
-
return eventInitialValues && !props.isCreate ? props.
|
|
22
|
+
return eventInitialValues && !props.isCreate ? props.onModalFormSubmit(fields, eventInitialValues) : props.onModalFormSubmit(fields);
|
|
23
23
|
};
|
|
24
24
|
var onCloseModal = react_1["default"].useCallback(function () {
|
|
25
25
|
props.onClose();
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
2
13
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
14
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
15
|
};
|
|
@@ -14,15 +25,20 @@ var MonthGrid_1 = __importDefault(require("./MonthGrid"));
|
|
|
14
25
|
var WeekGrid_1 = __importDefault(require("./WeekGrid"));
|
|
15
26
|
function CalendarSystemView(props) {
|
|
16
27
|
var bem = (0, useBem_1["default"])('CalendarSystemView');
|
|
28
|
+
var calendarTypeGrids = react_1["default"].useMemo(function () {
|
|
29
|
+
var _a;
|
|
30
|
+
return (_a = {},
|
|
31
|
+
_a[CalendarType_1["default"].MONTH] = react_1["default"].createElement(MonthGrid_1["default"], __assign({}, props.monthGridProps)),
|
|
32
|
+
_a[CalendarType_1["default"].WEEK] = react_1["default"].createElement(WeekGrid_1["default"], __assign({}, props.weekGridProps)),
|
|
33
|
+
_a);
|
|
34
|
+
}, [props.monthGridProps, props.weekGridProps]);
|
|
17
35
|
return (react_1["default"].createElement("div", { className: bem(bem.block(), props.className), style: props.style },
|
|
18
36
|
react_1["default"].createElement("aside", { className: bem.element('aside') },
|
|
19
37
|
react_1["default"].createElement(AsideHeader_1["default"], { onClick: props.openCreateModal, className: bem.element('aside-header') }),
|
|
20
|
-
react_1["default"].createElement(Calendar_1["default"], { showFooter: false, onMonthChange: props.
|
|
21
|
-
react_1["default"].createElement(AsideCalendars_1["default"], { eventGroups: props.eventGroups, eventGroupsTitle: props.eventGroupsTitle,
|
|
38
|
+
react_1["default"].createElement(Calendar_1["default"], { showFooter: false, onMonthChange: props.onInnerCalendarChangeMonth }),
|
|
39
|
+
react_1["default"].createElement(AsideCalendars_1["default"], { eventGroups: props.eventGroups, eventGroupsTitle: props.eventGroupsTitle, onChangeEventGroupsIds: props.onChangeEventGroupsIds, openCreateEventGroupModal: props.openCreateEventGroupModal })),
|
|
22
40
|
react_1["default"].createElement("div", { className: bem.element('content') },
|
|
23
|
-
react_1["default"].createElement(ContentHeader_1["default"], { dateToDisplay: props.dateToDisplay, onChangeCalendarType: props.
|
|
24
|
-
props.calendarType
|
|
25
|
-
? (react_1["default"].createElement(MonthGrid_1["default"], { monthCalendarDays: props.monthCalendarDays, getEventsFromDate: props.getEventsFromDate, weekDays: props.weekDays, openEditModal: props.openEditModal, openCreateModal: props.openCreateModal }))
|
|
26
|
-
: (react_1["default"].createElement(WeekGrid_1["default"], { allHours: props.allHours, getEventsFromDate: props.getEventsFromDate, currentWeekDays: props.currentWeekDays, openEditModal: props.openEditModal, openCreateModal: props.openCreateModal })))));
|
|
41
|
+
react_1["default"].createElement(ContentHeader_1["default"], { dateToDisplay: props.dateToDisplay, onChangeCalendarType: props.handleCalendarTypeChange, handleControlClick: props.handleControlClick }),
|
|
42
|
+
calendarTypeGrids[props.calendarType])));
|
|
27
43
|
}
|
|
28
44
|
exports["default"] = CalendarSystemView;
|
|
@@ -3,7 +3,7 @@ import './ContentHeader.scss';
|
|
|
3
3
|
interface IContentHeaderProps {
|
|
4
4
|
dateToDisplay: string;
|
|
5
5
|
onChangeCalendarType: (newType: string) => void;
|
|
6
|
-
|
|
6
|
+
handleControlClick: (event: React.MouseEvent<HTMLElement>) => void;
|
|
7
7
|
}
|
|
8
8
|
declare function ContentHeader(props: IContentHeaderProps): JSX.Element;
|
|
9
9
|
declare const _default: React.MemoExoticComponent<typeof ContentHeader>;
|
|
@@ -16,7 +16,7 @@ function ContentHeader(props) {
|
|
|
16
16
|
var bem = (0, useBem_1["default"])('ContentHeader');
|
|
17
17
|
return (react_1["default"].createElement("div", { className: bem.block() },
|
|
18
18
|
react_1["default"].createElement(Text_1["default"], { content: props.dateToDisplay, className: bem.element('month') }),
|
|
19
|
-
react_1["default"].createElement("ul", { className: bem.element('controls'), onClick: props.
|
|
19
|
+
react_1["default"].createElement("ul", { className: bem.element('controls'), onClick: props.handleControlClick }, Object.entries(DateControlType_1["default"].getIcons()).map(function (_a, controlIndex) {
|
|
20
20
|
var controlLabel = _a[0], controlIcon = _a[1];
|
|
21
21
|
return (react_1["default"].createElement("li", { key: controlIndex, className: bem.element('controls-item'), "data-control": controlLabel },
|
|
22
22
|
react_1["default"].createElement(content_1.Icon, { className: bem.element('controls-item-icon'), name: controlIcon })));
|
|
@@ -3,9 +3,9 @@ import { IDay, IEvent } from '@steroidsjs/core/ui/content/CalendarSystem/Calenda
|
|
|
3
3
|
import CalendarEnum from '@steroidsjs/core/ui/content/CalendarSystem/enums/CalendarType';
|
|
4
4
|
import './MonthGrid.scss';
|
|
5
5
|
interface IMonthGridProps {
|
|
6
|
-
|
|
6
|
+
monthGridWeekDays: string[];
|
|
7
|
+
monthGridCalendarDays: IDay[];
|
|
7
8
|
getEventsFromDate: (dateFromDay: Date, currentCalendarType: CalendarEnum) => IEvent[];
|
|
8
|
-
weekDays: string[];
|
|
9
9
|
openEditModal: (event: IEvent) => void;
|
|
10
10
|
openCreateModal: (eventInitialDay?: IDay) => void;
|
|
11
11
|
}
|
|
@@ -33,7 +33,7 @@ var MonthDay_1 = __importDefault(require("./views/MonthDay"));
|
|
|
33
33
|
function MonthGrid(props) {
|
|
34
34
|
var bem = (0, useBem_1["default"])('MonthGrid');
|
|
35
35
|
return (react_1["default"].createElement("div", { className: bem.block() },
|
|
36
|
-
react_1["default"].createElement("div", { className: bem.element('week-days') }, props.
|
|
37
|
-
react_1["default"].createElement("div", { className: bem.element('grid') }, props.
|
|
36
|
+
react_1["default"].createElement("div", { className: bem.element('week-days') }, props.monthGridWeekDays.map(function (day, dayIndex) { return (react_1["default"].createElement("span", { key: dayIndex, className: bem.element('week-days-day') }, day)); })),
|
|
37
|
+
react_1["default"].createElement("div", { className: bem.element('grid') }, props.monthGridCalendarDays.map(function (day, dayIndex) { return (react_1["default"].createElement(MonthDay_1["default"], { key: dayIndex, openEditModal: props.openEditModal, getEventsFromDate: props.getEventsFromDate, openCreateModal: props.openCreateModal, day: day })); }))));
|
|
38
38
|
}
|
|
39
39
|
exports["default"] = (0, react_1.memo)(MonthGrid);
|
|
@@ -3,8 +3,8 @@ import { IDay, IEvent } from '@steroidsjs/core/ui/content/CalendarSystem/Calenda
|
|
|
3
3
|
import CalendarEnum from '@steroidsjs/core/ui/content/CalendarSystem/enums/CalendarType';
|
|
4
4
|
import './WeekGrid.scss';
|
|
5
5
|
interface IWeekGridProps {
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
weekGridTwentyFourHoursArray: string[];
|
|
7
|
+
weekGridCurrentWeekDays: IDay[];
|
|
8
8
|
getEventsFromDate: (dateFromDay: Date, currentCalendarType: CalendarEnum) => IEvent[];
|
|
9
9
|
openEditModal: (event: IEvent) => void;
|
|
10
10
|
openCreateModal: (eventInitialDay?: IDay) => void;
|
|
@@ -10,16 +10,16 @@ var WeekHour_1 = __importDefault(require("./views/WeekHour"));
|
|
|
10
10
|
require("./WeekGrid.scss");
|
|
11
11
|
function WeekGrid(props) {
|
|
12
12
|
var bem = (0, useBem_1["default"])('WeekGrid');
|
|
13
|
-
var
|
|
14
|
-
var renderWeekHours = react_1["default"].useCallback(function (hour) { return
|
|
13
|
+
var weekGridCurrentWeekDays = props.weekGridCurrentWeekDays, getEventsFromDate = props.getEventsFromDate;
|
|
14
|
+
var renderWeekHours = react_1["default"].useCallback(function (hour) { return weekGridCurrentWeekDays.map(function (dayOfWeek, dayOfWeekIndex) { return (react_1["default"].createElement(WeekHour_1["default"], { hour: hour, getEventsFromDate: getEventsFromDate, key: dayOfWeekIndex, dayOfWeek: dayOfWeek, openEditModal: props.openEditModal, openCreateModal: props.openCreateModal })); }); }, [weekGridCurrentWeekDays, getEventsFromDate, props.openCreateModal, props.openEditModal]);
|
|
15
15
|
return (react_1["default"].createElement("div", { className: bem.block() },
|
|
16
16
|
react_1["default"].createElement("div", { className: bem.element('content') },
|
|
17
|
-
react_1["default"].createElement("div", { className: bem.element('hours-time') }, props.
|
|
17
|
+
react_1["default"].createElement("div", { className: bem.element('hours-time') }, props.weekGridTwentyFourHoursArray.map(function (hour, hourIndex) { return (react_1["default"].createElement("div", { key: hourIndex, className: bem.element('hours-time-item') }, hour)); })),
|
|
18
18
|
react_1["default"].createElement("div", { className: bem.element('table') },
|
|
19
|
-
react_1["default"].createElement("div", { className: bem.element('table-heading') },
|
|
19
|
+
react_1["default"].createElement("div", { className: bem.element('table-heading') }, weekGridCurrentWeekDays.map(function (weekDay, weekDayIndex) { return (react_1["default"].createElement(Text_1["default"], { key: weekDayIndex, className: bem.element('day', {
|
|
20
20
|
isToday: weekDay.isToday
|
|
21
21
|
}) },
|
|
22
22
|
react_1["default"].createElement("span", { className: bem.element('day-wrapper') }, weekDay.formattedDisplay))); })),
|
|
23
|
-
react_1["default"].createElement("div", { className: bem.element('table-grid') }, props.
|
|
23
|
+
react_1["default"].createElement("div", { className: bem.element('table-grid') }, props.weekGridTwentyFourHoursArray.map(function (hour, hourIndex) { return (react_1["default"].createElement("div", { key: hourIndex, className: bem.element('table-grid-row') }, renderWeekHours(hour))); }))))));
|
|
24
24
|
}
|
|
25
25
|
exports["default"] = react_1["default"].memo(WeekGrid);
|
|
@@ -50,7 +50,7 @@ function CheckboxFieldView(props) {
|
|
|
50
50
|
}), props.className), style: __assign(__assign({}, props.style), customVariableColorStyle), onClick: props.onChange },
|
|
51
51
|
React.createElement("input", __assign({ className: bem.element('input', {
|
|
52
52
|
hasCustomColor: !!props.color
|
|
53
|
-
}), id: props.id || id
|
|
53
|
+
}), id: props.id || id, disabled: props.disabled, required: props.required }, props.inputProps)),
|
|
54
54
|
React.createElement("label", { className: bem.element('label'), htmlFor: props.id || id }, props.label && (React.createElement("span", { className: bem.element('label-text', { required: props.required }) }, props.label)))));
|
|
55
55
|
}
|
|
56
56
|
exports["default"] = CheckboxFieldView;
|
|
@@ -0,0 +1,30 @@
|
|
|
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 useBem_1 = __importDefault(require("@steroidsjs/core/hooks/useBem"));
|
|
8
|
+
var hooks_1 = require("@steroidsjs/core/hooks");
|
|
9
|
+
var TreeItemView_1 = __importDefault(require("../../nav/TreeItem/TreeItemView"));
|
|
10
|
+
function CheckboxTreeFieldView(props) {
|
|
11
|
+
var bem = (0, useBem_1["default"])('CheckboxTreeFieldView');
|
|
12
|
+
var prefix = (0, hooks_1.useUniqueId)('checkbox');
|
|
13
|
+
return (react_1["default"].createElement("div", { className: bem.block() }, props.items.map(function (checkbox) { return (react_1["default"].createElement(TreeItemView_1["default"], { key: checkbox.uniqueId, item: checkbox, levelPadding: props.levelPadding, hasIconExpandOnly: true }, props.renderCheckbox({
|
|
14
|
+
id: "".concat(prefix, "_").concat(checkbox.id),
|
|
15
|
+
label: checkbox.label,
|
|
16
|
+
inputProps: {
|
|
17
|
+
name: "".concat(prefix, "_").concat(checkbox.id),
|
|
18
|
+
type: 'checkbox',
|
|
19
|
+
checked: props.selectedIds.includes(checkbox.id),
|
|
20
|
+
onChange: function () {
|
|
21
|
+
props.onItemSelect(checkbox);
|
|
22
|
+
},
|
|
23
|
+
disabled: checkbox.disabled,
|
|
24
|
+
required: checkbox.required
|
|
25
|
+
},
|
|
26
|
+
size: props.size,
|
|
27
|
+
color: checkbox.color
|
|
28
|
+
}))); })));
|
|
29
|
+
}
|
|
30
|
+
exports["default"] = CheckboxTreeFieldView;
|
|
@@ -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 CheckboxTreeFieldView_1 = __importDefault(require("./CheckboxTreeFieldView"));
|
|
7
|
+
exports["default"] = CheckboxTreeFieldView_1["default"];
|
|
@@ -65,7 +65,7 @@ function DropDownItemView(props) {
|
|
|
65
65
|
}), size: props.size, inputProps: {
|
|
66
66
|
disabled: false,
|
|
67
67
|
name: props.item.label,
|
|
68
|
-
checked:
|
|
68
|
+
checked: props.selectedIds.includes(uniqItemId),
|
|
69
69
|
onChange: function () { },
|
|
70
70
|
type: 'radio'
|
|
71
71
|
}, checked: props.selectedIds.includes(uniqItemId) })));
|
|
@@ -51,7 +51,7 @@ function PasswordFieldView(props) {
|
|
|
51
51
|
React.createElement("div", { className: bem.element('container', {
|
|
52
52
|
disabled: props.inputProps.disabled
|
|
53
53
|
}) },
|
|
54
|
-
React.createElement("input", __assign({ className: bem.element('input') }, props.inputProps, { id: props.id })),
|
|
54
|
+
React.createElement("input", __assign({ className: bem.element('input') }, props.inputProps, { id: props.id, required: props.required })),
|
|
55
55
|
props.showSecurityIcon && (React.createElement("span", { className: bem(bem.element('icon-eye', {
|
|
56
56
|
viewHide: props.inputProps.type === PasswordField_1.InputType.PASSWORD
|
|
57
57
|
})), onClick: props.onShowButtonClick },
|
package/index.d.ts
CHANGED
package/index.js
CHANGED
|
@@ -86,6 +86,9 @@ exports["default"] = {
|
|
|
86
86
|
'form.CheckboxListFieldView': {
|
|
87
87
|
lazy: function () { return require('./form/CheckboxListField/CheckboxListFieldView')["default"]; }
|
|
88
88
|
},
|
|
89
|
+
'form.CheckboxTreeFieldView': {
|
|
90
|
+
lazy: function () { return require('./form/CheckboxTreeField/CheckboxTreeFieldView')["default"]; }
|
|
91
|
+
},
|
|
89
92
|
'form.DateFieldView': {
|
|
90
93
|
lazy: function () { return require('./form/DateField/DateFieldView')["default"]; }
|
|
91
94
|
},
|
package/index.scss
CHANGED
|
@@ -37,6 +37,7 @@
|
|
|
37
37
|
@include meta.load-css('form/Button/ButtonView');
|
|
38
38
|
@include meta.load-css('form/CheckboxField/CheckboxFieldView');
|
|
39
39
|
@include meta.load-css('form/CheckboxListField/CheckboxListFieldView');
|
|
40
|
+
@include meta.load-css('form/CheckboxTreeField/CheckboxTreeFieldView');
|
|
40
41
|
@include meta.load-css('form/DateField/DateFieldView');
|
|
41
42
|
@include meta.load-css('form/DateRangeField/DateRangeFieldView');
|
|
42
43
|
@include meta.load-css('form/DateTimeField/DateTimeFieldView');
|
|
@@ -22,6 +22,6 @@ function TreeColumnView(props) {
|
|
|
22
22
|
var bem = (0, hooks_1.useBem)('TreeColumnView');
|
|
23
23
|
var renderFormat = function () { return (react_1["default"].createElement(Format_1["default"], __assign({}, props, (props.formatter || {}), { attribute: props.attribute }))); };
|
|
24
24
|
var renderValue = function () { return (react_1["default"].createElement("span", { className: bem.element('value') }, renderFormat())); };
|
|
25
|
-
return (react_1["default"].createElement(TreeItemView_1["default"], { item: props.item, levelPadding: props.levelPadding
|
|
25
|
+
return (react_1["default"].createElement(TreeItemView_1["default"], { item: props.item, levelPadding: props.levelPadding }, renderValue()));
|
|
26
26
|
}
|
|
27
27
|
exports["default"] = TreeColumnView;
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
2
13
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
14
|
if (k2 === undefined) k2 = k;
|
|
4
15
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -29,22 +40,30 @@ exports.__esModule = true;
|
|
|
29
40
|
var React = __importStar(require("react"));
|
|
30
41
|
var useBem_1 = __importDefault(require("@steroidsjs/core/hooks/useBem"));
|
|
31
42
|
var content_1 = require("@steroidsjs/core/ui/content");
|
|
43
|
+
var react_1 = require("react");
|
|
32
44
|
var PADDING_WITH_ICON = 0;
|
|
33
45
|
var PADDING_WITHOUT_ICON = 24;
|
|
34
46
|
function TreeItemView(props) {
|
|
35
47
|
var bem = (0, useBem_1["default"])('TreeItemView');
|
|
36
48
|
var paddingBasedOnIcon = props.item.hasItems ? PADDING_WITH_ICON : PADDING_WITHOUT_ICON;
|
|
37
|
-
|
|
49
|
+
var onExpandProps = (0, react_1.useMemo)(function () { return ({
|
|
50
|
+
onClick: props.item.onClick,
|
|
51
|
+
onKeyDown: function (e) { return e.key === 'Enter' && props.item.onClick(e); },
|
|
52
|
+
role: 'button',
|
|
53
|
+
tabIndex: 0
|
|
54
|
+
}); }, [props.item]);
|
|
55
|
+
return (React.createElement("div", __assign({ key: props.item.uniqueId, className: bem(bem.block({
|
|
38
56
|
selected: props.item.isSelected,
|
|
39
57
|
opened: props.item.isOpened,
|
|
40
58
|
'has-items': props.item.hasItems,
|
|
41
|
-
level: props.item.level
|
|
59
|
+
level: props.item.level,
|
|
60
|
+
disabled: props.item.disabled
|
|
42
61
|
}), props.className), style: {
|
|
43
62
|
paddingLeft: "".concat(props.item.level * props.levelPadding + paddingBasedOnIcon, "px")
|
|
44
|
-
}
|
|
45
|
-
props.item.hasItems && (React.createElement(content_1.Icon, { name: 'expand_right', className: bem.element('icon', {
|
|
63
|
+
} }, (!props.hasIconExpandOnly && onExpandProps)),
|
|
64
|
+
props.item.hasItems && (React.createElement(content_1.Icon, __assign({ name: 'expand_right', className: bem.element('icon', {
|
|
46
65
|
opened: props.item.isOpened
|
|
47
|
-
}),
|
|
66
|
+
}) }, (props.hasIconExpandOnly && onExpandProps)))),
|
|
48
67
|
React.createElement("div", { className: bem.element('item') }, props.children)));
|
|
49
68
|
}
|
|
50
69
|
exports["default"] = TreeItemView;
|
|
@@ -11,6 +11,8 @@ html[data-theme="dark"] {
|
|
|
11
11
|
$grid-icon-color: var(--grid-icon-color);
|
|
12
12
|
|
|
13
13
|
.TreeItemView {
|
|
14
|
+
$root: &;
|
|
15
|
+
|
|
14
16
|
display: flex;
|
|
15
17
|
flex-flow: row nowrap;
|
|
16
18
|
align-items: center;
|
|
@@ -21,6 +23,23 @@ $grid-icon-color: var(--grid-icon-color);
|
|
|
21
23
|
cursor: pointer;
|
|
22
24
|
}
|
|
23
25
|
|
|
26
|
+
&_disabled {
|
|
27
|
+
cursor: not-allowed;
|
|
28
|
+
|
|
29
|
+
#{$root}__icon {
|
|
30
|
+
pointer-events: none;
|
|
31
|
+
|
|
32
|
+
svg > * {
|
|
33
|
+
stroke: var(--disabled-text-color);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
&__item {
|
|
39
|
+
display: flex;
|
|
40
|
+
margin-left: 8px;
|
|
41
|
+
}
|
|
42
|
+
|
|
24
43
|
&__icon {
|
|
25
44
|
transform: rotate(0);
|
|
26
45
|
transition: transform 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
|
|
@@ -29,10 +48,8 @@ $grid-icon-color: var(--grid-icon-color);
|
|
|
29
48
|
transform: rotate(90deg);
|
|
30
49
|
}
|
|
31
50
|
|
|
32
|
-
svg {
|
|
33
|
-
> * {
|
|
51
|
+
svg > * {
|
|
34
52
|
stroke: $grid-icon-color;
|
|
35
|
-
}
|
|
36
53
|
}
|
|
37
54
|
}
|
|
38
55
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@steroidsjs/bootstrap",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.127",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"author": "Vladimir Kozhin <hello@kozhindev.com>",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"react-use": "^17.4.0"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@steroidsjs/core": "^3.0 || >=3.0.0-beta.
|
|
40
|
+
"@steroidsjs/core": "^3.0 || >=3.0.0-beta.112",
|
|
41
41
|
"@steroidsjs/eslint-config": "^2.1.4",
|
|
42
42
|
"@types/enzyme": "^3.10.8",
|
|
43
43
|
"@types/googlemaps": "^3.43.3",
|