@steroidsjs/bootstrap 3.0.32 → 3.0.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/content/Accordion/AccordionItemView.d.ts +2 -2
  2. package/content/Accordion/AccordionView.d.ts +2 -2
  3. package/content/Alert/AlertView.d.ts +2 -2
  4. package/content/Avatar/AvatarGroupView.d.ts +2 -2
  5. package/content/Avatar/AvatarView.d.ts +2 -2
  6. package/content/Badge/BadgeView.d.ts +2 -2
  7. package/content/Calendar/CalendarView.d.ts +2 -2
  8. package/content/Calendar/CaptionElement.d.ts +2 -2
  9. package/content/CalendarSystem/AsideCalendars/AsideCalendars.d.ts +1 -1
  10. package/content/CalendarSystem/AsideHeader/AsideHeader.d.ts +1 -1
  11. package/content/CalendarSystem/CalendarSystemEventGroupModalView.d.ts +2 -2
  12. package/content/CalendarSystem/CalendarSystemModalView.d.ts +2 -2
  13. package/content/CalendarSystem/CalendarSystemView.d.ts +2 -2
  14. package/content/CalendarSystem/ContentHeader/ContentHeader.d.ts +1 -1
  15. package/content/CalendarSystem/DayGrid/DayGrid.d.ts +1 -1
  16. package/content/CalendarSystem/DayGrid/views/DayHour/DayHour.d.ts +1 -1
  17. package/content/CalendarSystem/DayGrid/views/DayHour/views/DayEvent/DayEvent.d.ts +2 -2
  18. package/content/CalendarSystem/MonthGrid/MonthGrid.d.ts +1 -1
  19. package/content/CalendarSystem/MonthGrid/views/MonthDay/MonthDay.d.ts +1 -1
  20. package/content/CalendarSystem/MonthGrid/views/MonthDay/views/MonthEvent/MonthEvent.d.ts +2 -2
  21. package/content/CalendarSystem/WeekGrid/WeekGrid.d.ts +1 -1
  22. package/content/CalendarSystem/WeekGrid/views/WeekHour/WeekHour.d.ts +1 -1
  23. package/content/CalendarSystem/WeekGrid/views/WeekHour/views/WeekEvent/WeekEvent.d.ts +2 -2
  24. package/content/Card/CardView.d.ts +2 -2
  25. package/content/Chart/ChartView.d.ts +2 -2
  26. package/content/Chat/ChatView.d.ts +2 -2
  27. package/content/Chat/views/BubbleMessage/BubbleMessageView.d.ts +1 -1
  28. package/content/Chat/views/BubblesDateGroup/BubblesDateGroup.d.ts +1 -1
  29. package/content/Chat/views/ChatFileItem/ChatFileItemView.d.ts +2 -2
  30. package/content/Chat/views/ChatInput/ChatInputView.d.ts +2 -2
  31. package/content/CopyToClipboard/CopyToClipboardView.d.ts +2 -2
  32. package/content/Dashboard/DashboardItemView.d.ts +2 -2
  33. package/content/Detail/DetailView.d.ts +2 -2
  34. package/content/DropDown/DropDownView.d.ts +2 -2
  35. package/content/Icon/IconView.d.ts +2 -2
  36. package/content/Kanban/KanbanView.d.ts +2 -2
  37. package/content/Kanban/views/KanbanColumn/KanbanColumnView.d.ts +2 -2
  38. package/content/Kanban/views/KanbanModal/KanbanModalView.d.ts +2 -2
  39. package/content/Kanban/views/KanbanModal/views/CreateOrEditTaskModalContent/CreateOrEditTaskModalContentView.d.ts +2 -2
  40. package/content/Kanban/views/KanbanModal/views/CreateOrEditTaskModalContent/views/Label/Label.d.ts +2 -2
  41. package/content/Kanban/views/KanbanModal/views/CreateOrEditTaskModalContent/views/TagsSelector/TagsSelector.d.ts +2 -2
  42. package/content/Kanban/views/KanbanModal/views/TaskDetailsModalContent/TaskDetailsModalContentView.d.ts +2 -2
  43. package/content/Kanban/views/KanbanTask/KanbanTaskView.d.ts +1 -1
  44. package/content/Kanban/views/TaskTags/TaskTags.d.ts +2 -2
  45. package/content/Menu/MenuItemView.d.ts +2 -2
  46. package/content/Menu/MenuView.d.ts +2 -2
  47. package/content/Slider/SliderView.d.ts +2 -2
  48. package/crud/Crud/CrudView.d.ts +2 -2
  49. package/form/AutoCompleteField/AutoCompleteFieldView.d.ts +2 -2
  50. package/form/Button/ButtonView.d.ts +2 -2
  51. package/form/CheckboxField/CheckboxFieldView.d.ts +2 -2
  52. package/form/CheckboxListField/CheckboxListFieldView.d.ts +2 -2
  53. package/form/CheckboxListField/CheckboxListFieldView.js +1 -1
  54. package/form/CheckboxTreeField/CheckboxTreeFieldView.d.ts +2 -2
  55. package/form/DateField/DateFieldView.d.ts +2 -2
  56. package/form/DateRangeField/DateRangeFieldView.d.ts +2 -2
  57. package/form/DateRangeField/views/RangeButtons/RangeButtons.d.ts +2 -2
  58. package/form/DateRangeField/views/RangeButtons/consts.js +3 -3
  59. package/form/DateRangeField/views/RangeButtons/utils.d.ts +4 -0
  60. package/form/DateRangeField/views/RangeButtons/utils.js +12 -1
  61. package/form/DateTimeField/DateTimeFieldView.d.ts +2 -2
  62. package/form/DateTimeRangeField/DateTimeRangeFieldView.d.ts +2 -2
  63. package/form/DropDownField/DropDownFieldView.d.ts +2 -2
  64. package/form/DropDownField/DropDownFieldView.js +54 -36
  65. package/form/DropDownField/DropDownFieldView.scss +45 -45
  66. package/form/DropDownFieldItem/DropDownFieldItemView.d.ts +2 -2
  67. package/form/FieldLayout/FieldLayoutView.d.ts +2 -2
  68. package/form/FieldList/FieldListItemView.d.ts +1 -1
  69. package/form/FieldList/FieldListView.d.ts +2 -2
  70. package/form/FieldSet/FieldSetView.d.ts +2 -2
  71. package/form/FileField/FileFieldItemView.d.ts +2 -2
  72. package/form/FileField/FileFieldView.d.ts +2 -2
  73. package/form/Form/FormView.d.ts +1 -1
  74. package/form/HtmlField/HtmlFieldView.d.ts +2 -2
  75. package/form/ImageField/ImageFieldModalView.d.ts +2 -2
  76. package/form/ImageField/ImageFieldView.d.ts +2 -2
  77. package/form/InputField/InputFieldView.d.ts +2 -2
  78. package/form/NumberField/NumberFieldView.d.ts +2 -2
  79. package/form/PasswordField/PasswordFieldView.d.ts +2 -2
  80. package/form/RadioField/RadioFieldView.d.ts +3 -3
  81. package/form/RadioListField/RadioListFieldView.d.ts +3 -3
  82. package/form/RadioListField/RadioListFieldView.js +1 -1
  83. package/form/RateField/RateFieldView.d.ts +2 -2
  84. package/form/ReCaptchaField/ReCaptchaFieldView.d.ts +2 -2
  85. package/form/SliderField/SliderFieldView.d.ts +2 -2
  86. package/form/SwitcherField/SwitcherFieldView.d.ts +3 -3
  87. package/form/SwitcherField/SwitcherFieldView.js +17 -35
  88. package/form/SwitcherField/SwitcherFieldView.scss +63 -69
  89. package/form/SwitcherListField/SwitcherListFieldView.d.ts +3 -0
  90. package/form/SwitcherListField/SwitcherListFieldView.js +54 -0
  91. package/form/SwitcherListField/SwitcherListFieldView.scss +9 -0
  92. package/form/TextField/TextFieldView.d.ts +2 -2
  93. package/form/TimeField/TimeFieldView.d.ts +2 -2
  94. package/form/TimeField/TimePanelView.d.ts +2 -2
  95. package/form/TimeField/views/TimePanelColumn/TimePanelColumn.d.ts +2 -2
  96. package/form/TimeRangeField/TimeRangeFieldView.d.ts +2 -2
  97. package/format/DefaultFormatter/DefaultFormatterView.d.ts +1 -1
  98. package/index.d.ts +3 -0
  99. package/index.js +3 -0
  100. package/index.scss +1 -0
  101. package/layout/Header/HeaderView.d.ts +2 -2
  102. package/layout/Loader/LoaderView.d.ts +2 -2
  103. package/layout/Notifications/NotificationsItemView.d.ts +2 -2
  104. package/layout/Notifications/NotificationsView.d.ts +2 -2
  105. package/layout/ProgressBar/CircleProgressBarView.d.ts +2 -2
  106. package/layout/ProgressBar/LineProgressBarView.d.ts +2 -2
  107. package/layout/Sidebar/FooterIcons/FooterIcons.d.ts +1 -1
  108. package/layout/Sidebar/SidebarLogo/SidebarLogo.d.ts +1 -1
  109. package/layout/Sidebar/SidebarUser/SidebarUser.d.ts +1 -1
  110. package/layout/Sidebar/SidebarView.d.ts +2 -2
  111. package/layout/Skeleton/SkeletonView.d.ts +2 -2
  112. package/layout/Tooltip/TooltipView.d.ts +2 -2
  113. package/list/CheckboxColumn/CheckboxColumnView.d.ts +2 -2
  114. package/list/ControlsColumnView/ControlsColumnView.d.ts +2 -2
  115. package/list/Empty/EmptyView.d.ts +2 -2
  116. package/list/FlexGrid/FlexGridView.d.ts +2 -2
  117. package/list/Grid/views/ContentColumnView/ContentColumnView.d.ts +2 -2
  118. package/list/Grid/views/DiagramColumnView/DiagramColumnView.d.ts +2 -2
  119. package/list/Grid/views/TreeColumnView/TreeColumnView.d.ts +2 -2
  120. package/list/List/ListItemView.d.ts +2 -2
  121. package/list/Pagination/PaginationButtonView.d.ts +2 -2
  122. package/list/Pagination/PaginationMoreView.d.ts +2 -2
  123. package/list/PaginationSize/PaginationSizeView.d.ts +2 -2
  124. package/list/Steps/StepItemView.d.ts +2 -2
  125. package/list/Steps/StepsView.d.ts +2 -2
  126. package/modal/Modal/ModalView.d.ts +2 -2
  127. package/modal/TwoFactorModal/TwoFactorModalView.d.ts +2 -2
  128. package/nav/Breadcrubms/BreadcrumbsView.d.ts +2 -2
  129. package/nav/ButtonGroup/ButtonGroupView.d.ts +2 -2
  130. package/nav/Controls/ControlsView.d.ts +2 -2
  131. package/nav/Nav/NavBarView.d.ts +2 -2
  132. package/nav/Nav/NavButtonView.d.ts +2 -2
  133. package/nav/Nav/NavIconView.d.ts +2 -2
  134. package/nav/Nav/NavLinkView.d.ts +2 -2
  135. package/nav/Nav/NavListView.d.ts +2 -2
  136. package/nav/Nav/NavTabsView.d.ts +2 -2
  137. package/nav/Tree/TreeView.d.ts +2 -2
  138. package/nav/TreeItem/TreeItemView.d.ts +2 -2
  139. package/package.json +6 -17
  140. package/utils/renderIcon.d.ts +1 -1
@@ -38,55 +38,73 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
38
38
  };
39
39
  exports.__esModule = true;
40
40
  var React = __importStar(require("react"));
41
- var react_1 = require("react");
42
41
  var hooks_1 = require("@steroidsjs/core/hooks");
43
42
  var Icon_1 = __importDefault(require("@steroidsjs/core/ui/content/Icon"));
43
+ var content_1 = require("@steroidsjs/core/ui/content");
44
44
  var utils_1 = require("./utils");
45
45
  function DropDownFieldView(props) {
46
46
  var _a;
47
47
  var bem = (0, hooks_1.useBem)('DropDownFieldView');
48
- // Auto focus on search
49
- (0, react_1.useEffect)(function () {
50
- var _a;
51
- if (props.isSearchAutoFocus && props.isAutoComplete && props.isOpened && ((_a = props.forwardedInputRef) === null || _a === void 0 ? void 0 : _a.current)) {
52
- props.forwardedInputRef.current.focus();
48
+ var onClose = props.onClose;
49
+ var setFocusOnAutoCompleteInput = React.useCallback(function (isComponentVisible) {
50
+ if (isComponentVisible && props.autoCompleteInputForwardedRef.current && props.isSearchAutoFocus) {
51
+ props.autoCompleteInputForwardedRef.current.focus();
53
52
  }
54
- }, [props.forwardedInputRef, props.isAutoComplete, props.isOpened, props.isSearchAutoFocus]);
53
+ }, [props.autoCompleteInputForwardedRef, props.isSearchAutoFocus]);
55
54
  var renderPlaceholder = React.useCallback(function () {
56
55
  var _a;
57
56
  return props.placeholder && !((_a = props.selectedIds) === null || _a === void 0 ? void 0 : _a.length)
58
57
  ? (React.createElement("div", { className: bem.element('placeholder') }, props.placeholder))
59
58
  : null;
60
59
  }, [bem, props.placeholder, props.selectedIds]);
61
- return (React.createElement("div", { ref: props.forwardedRef, className: bem(bem.block((_a = {
60
+ var fieldRef = React.useRef(null);
61
+ var menuWidth = React.useMemo(function () {
62
+ if (!fieldRef.current) {
63
+ return 0;
64
+ }
65
+ return fieldRef.current.getBoundingClientRect().width;
66
+ // Отключена проверка, т.к. необходимо пересчитывать ширину меню, когда меняется fieldRef.current
67
+ // eslint-disable-next-line react-hooks/exhaustive-deps
68
+ }, [fieldRef.current, props.isOpened]);
69
+ var renderList = React.useCallback(function () { return (React.createElement("div", { className: bem.element('drop-down'), style: {
70
+ '--width': menuWidth + 'px',
71
+ '--maxHeight': props.maxHeight
72
+ } },
73
+ props.isAutoComplete && (React.createElement("div", { className: bem.element('search', {
62
74
  size: props.size
63
- },
64
- _a["".concat(props.color)] = !!props.color && !props.outline,
65
- _a["outline_".concat(props.color)] = props.outline,
66
- _a.opened = props.isOpened,
67
- _a['is-invalid'] = !!props.errors,
68
- _a.disabled = props.disabled,
69
- _a)), props.className), onKeyPress: function (e) { return e.key === 'Enter' && !props.disabled && props.onOpen(); }, style: props.style, role: "button", tabIndex: 0 },
70
- React.createElement("div", { className: bem.element('selected-items', {
71
- reset: props.showReset
72
- }), onClick: props.onOpen, tabIndex: -1, role: 'button' },
73
- renderPlaceholder(),
74
- React.createElement("span", { className: bem.element('selected-items') }, props.showEllipses
75
- ? (0, utils_1.getSelectedItemsLabel)(props.selectedItems)
76
- : (0, utils_1.getSelectedItemsCount)(props.selectedItems)),
77
- React.createElement("input", { className: bem.element('input'), ref: props.inputRef })),
78
- props.showReset && props.selectedIds.length > 0 && (React.createElement(Icon_1["default"], { name: "cross_8x8", className: bem.element('icon-close'), tabIndex: -1, onClick: props.onReset, "aria-label": __('Сбросить') })),
79
- React.createElement(Icon_1["default"], { name: 'arrow_down_24x24', className: bem.element('icon-chevron'), tabIndex: -1, onClick: props.onOpen }),
80
- props.isOpened && (React.createElement("div", { className: bem.element('drop-down') },
81
- props.isAutoComplete && (React.createElement("div", { className: bem.element('search', {
82
- size: props.size
83
- }) },
84
- React.createElement(Icon_1["default"], { name: 'search', className: bem.element('search-icon') }),
85
- React.createElement("input", __assign({}, props.searchInputProps, { ref: props.autoCompleteInputForwardedRef, onChange: function (e) { return props.searchInputProps.onChange(e.target.value); }, className: bem(bem.element('search-input'), props.searchInputProps.className) })))),
86
- React.createElement("div", { className: bem.element('drop-down-list') },
87
- props.multiple
88
- && props.itemToSelectAll
89
- && props.renderItem(props.itemToSelectAll),
90
- props.items.map(function (item) { return props.renderItem(item); }))))));
75
+ }) },
76
+ React.createElement(Icon_1["default"], { name: 'search', className: bem.element('search-icon') }),
77
+ React.createElement("input", __assign({}, props.searchInputProps, { ref: props.autoCompleteInputForwardedRef, onChange: function (e) { return props.searchInputProps.onChange(e.target.value); }, className: bem(bem.element('search-input'), props.searchInputProps.className) })))),
78
+ React.createElement("div", { className: bem.element('drop-down-list') },
79
+ props.multiple
80
+ && props.itemToSelectAll
81
+ && props.renderItem(props.itemToSelectAll),
82
+ props.items.map(function (item) { return props.renderItem(item); })))); }, [bem, menuWidth, props]);
83
+ var closeIfOpened = React.useCallback(function () {
84
+ if (props.isOpened) {
85
+ onClose();
86
+ }
87
+ }, [onClose, props.isOpened]);
88
+ return (React.createElement(content_1.DropDown, __assign({ content: renderList, onVisibleChange: setFocusOnAutoCompleteInput, visible: props.isOpened, onClose: onClose, hasArrow: false, className: bem.element('wrapper') }, props.dropDownProps),
89
+ React.createElement("div", null,
90
+ React.createElement("div", { className: bem(bem.block((_a = {
91
+ size: props.size
92
+ },
93
+ _a["".concat(props.color)] = !!props.color && !props.outline,
94
+ _a["outline_".concat(props.color)] = props.outline,
95
+ _a.opened = props.isOpened,
96
+ _a['is-invalid'] = !!props.errors,
97
+ _a.disabled = props.disabled,
98
+ _a)), props.className), onKeyPress: function (e) { return e.key === 'Enter' && !props.disabled && props.onOpen(); }, style: props.style, role: "button", tabIndex: 0, onClick: closeIfOpened, ref: fieldRef },
99
+ React.createElement("div", { className: bem.element('selected-items', {
100
+ reset: props.showReset
101
+ }), onClick: props.onOpen, tabIndex: -1, role: 'button' },
102
+ renderPlaceholder(),
103
+ React.createElement("span", { className: bem.element('selected-items') }, props.showEllipses
104
+ ? (0, utils_1.getSelectedItemsLabel)(props.selectedItems)
105
+ : (0, utils_1.getSelectedItemsCount)(props.selectedItems)),
106
+ React.createElement("input", { className: bem.element('input'), ref: props.inputRef })),
107
+ props.showReset && props.selectedIds.length > 0 && (React.createElement(Icon_1["default"], { name: "cross_8x8", className: bem.element('icon-close'), tabIndex: -1, onClick: props.onReset, "aria-label": __('Сбросить') })),
108
+ React.createElement(Icon_1["default"], { name: 'arrow_down_24x24', className: bem.element('icon-chevron'), tabIndex: -1, onClick: props.onOpen })))));
91
109
  }
92
110
  exports["default"] = DropDownFieldView;
@@ -9,13 +9,13 @@
9
9
  --chevron-background-color: #ffffff;
10
10
  --chevron-background-color-outline: #f5f8fa;
11
11
  --chevron-inner-color: #323232;
12
- --drop-down-border-color: #e9e9e9;
13
- --search-color: #626262;
14
- --search-background-color: #f5f8fa;
15
- --search-hover-background-color: #eef1f2;
16
12
 
17
13
  --drop-down-item-hover-background-color: #f5f8fa;
18
14
  --drop-down-item-select-background-color: #eef1f2;
15
+ --drop-down-border-color: #e9e9e9;
16
+ --search-background-color: #f5f8fa;
17
+ --search-hover-background-color: #eef1f2;
18
+ --search-color: #626262;
19
19
  }
20
20
 
21
21
  html[data-theme="dark"] {
@@ -25,13 +25,13 @@ html[data-theme="dark"] {
25
25
  --chevron-background-color: #16171b;
26
26
  --chevron-background-color-outline: #191b1f;
27
27
  --chevron-inner-color: #ffffff;
28
- --drop-down-border-color: #595959;
29
- --search-color: #adacac;
30
- --search-background-color: #4e4f57;
31
- --search-hover-background-color: #5b5c6b;
32
28
 
33
29
  --drop-down-item-select-background-color: #5b5c6b;
34
30
  --drop-down-item-hover-background-color: #4e4f57;
31
+ --drop-down-border-color: #595959;
32
+ --search-background-color: #4e4f57;
33
+ --search-hover-background-color: #5b5c6b;
34
+ --search-color: #adacac;
35
35
  }
36
36
 
37
37
  $basic-color: var(--basic-color);
@@ -40,13 +40,13 @@ $basic-active-color: var(--basic-active-color);
40
40
  $chevron-background-color: var(--chevron-background-color);
41
41
  $chevron-background-color-outline: var(--chevron-background-color-outline);
42
42
  $chevron-inner-color: var(--chevron-inner-color);
43
- $drop-down-border-color: var(--drop-down-border-color);
44
- $search-color: var(--search-color);
45
- $search-background-color: var(--search-background-color);
46
- $search-hover-background-color: var(--search-hover-background-color);
47
43
 
48
44
  $drop-down-item-select-background-color: var(--drop-down-item-select-background-color);
49
45
  $drop-down-item-hover-background-color: var(--drop-down-item-hover-background-color);
46
+ $drop-down-border-color: var(--drop-down-border-color);
47
+ $search-background-color: var(--search-background-color);
48
+ $search-hover-background-color: var(--search-hover-background-color);
49
+ $search-color: var(--search-color);
50
50
 
51
51
  $drop-down-color-themes: () !default;
52
52
  $drop-down-color-themes: map.merge(
@@ -291,48 +291,20 @@ $drop-down-color-themes: map.merge(
291
291
  }
292
292
  }
293
293
 
294
- &__selected-items {
295
- position: absolute;
296
- width: calc(100% - 29px);
297
- height: 100%;
298
- top: 0;
299
- left: 0;
300
- overflow: hidden;
301
- padding-left: 8px;
302
- outline: none;
303
-
304
- text-overflow: ellipsis;
305
- white-space: nowrap;
306
- overflow: hidden;
307
- }
308
-
309
294
  &__drop-down {
310
- position: absolute;
311
- z-index: 2;
312
- width: 100%;
295
+ width: var(--width);
296
+ max-height: var(--maxHeight);
313
297
  height: fit-content;
314
- top: calc(100% + 8px);
315
- left: 0;
316
-
298
+
317
299
  background-color: variables.$element-background-color;
318
-
319
- border: 1px solid $drop-down-border-color;
300
+
320
301
  overflow: hidden;
321
- border-radius: 12px;
322
-
302
+
323
303
  &-list {
324
304
  @include mixins.scrollWrapper(240px, 0, variables.$scroll-thumb-color, variables.$scroll-track-color);
325
305
  }
326
306
  }
327
307
 
328
- &_opened {
329
- #{$root}__icon-chevron {
330
- svg {
331
- transform: rotate(180deg);
332
- }
333
- }
334
- }
335
-
336
308
  &__search {
337
309
  width: 100%;
338
310
  padding: 9px;
@@ -402,6 +374,29 @@ $drop-down-color-themes: map.merge(
402
374
  }
403
375
  }
404
376
 
377
+ &__selected-items {
378
+ position: absolute;
379
+ width: calc(100% - 29px);
380
+ height: 100%;
381
+ top: 0;
382
+ left: 0;
383
+ overflow: hidden;
384
+ padding-left: 8px;
385
+ outline: none;
386
+
387
+ text-overflow: ellipsis;
388
+ white-space: nowrap;
389
+ overflow: hidden;
390
+ }
391
+
392
+ &_opened {
393
+ #{$root}__icon-chevron {
394
+ svg {
395
+ transform: rotate(180deg);
396
+ }
397
+ }
398
+ }
399
+
405
400
  &__placeholder {
406
401
  text-overflow: ellipsis;
407
402
  white-space: nowrap;
@@ -447,4 +442,9 @@ $drop-down-color-themes: map.merge(
447
442
  pointer-events: none;
448
443
  user-select: none;
449
444
  }
445
+ &__wrapper {
446
+ padding: unset;
447
+ overflow: hidden;
448
+ min-width: unset;
449
+ }
450
450
  }
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import { IDropDownFieldItemViewProps } from '@steroidsjs/core/ui/form/DropDownField/DropDownField';
3
- export default function DropDownItemView(props: IDropDownFieldItemViewProps): JSX.Element;
3
+ export default function DropDownItemView(props: IDropDownFieldItemViewProps): React.JSX.Element;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { IFieldLayoutViewProps } from '@steroidsjs/core/ui/form/FieldLayout/FieldLayout';
3
- export default function FieldLayoutView(props: IFieldLayoutViewProps): JSX.Element;
3
+ export default function FieldLayoutView(props: IFieldLayoutViewProps): React.JSX.Element;
@@ -1,4 +1,4 @@
1
1
  import * as React from 'react';
2
2
  import { IFieldListItemViewProps } from '@steroidsjs/core/ui/form/FieldList/FieldList';
3
- declare const _default: React.MemoExoticComponent<(props: IFieldListItemViewProps) => JSX.Element>;
3
+ declare const _default: React.MemoExoticComponent<(props: IFieldListItemViewProps) => React.JSX.Element>;
4
4
  export default _default;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { IFieldListViewProps } from '@steroidsjs/core/ui/form/FieldList/FieldList';
3
- export default function FieldListView(props: IFieldListViewProps): JSX.Element;
3
+ export default function FieldListView(props: IFieldListViewProps): React.JSX.Element;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { IFieldSetViewProps } from '@steroidsjs/core/ui/form/FieldSet/FieldSet';
3
- export default function FieldSetView(props: IFieldSetViewProps): JSX.Element;
3
+ export default function FieldSetView(props: IFieldSetViewProps): React.JSX.Element;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { IFileFieldItemViewProps } from '@steroidsjs/core/ui/form/FileField/FileField';
3
- export default function FileFieldItemView(props: IFileFieldItemViewProps): JSX.Element;
3
+ export default function FileFieldItemView(props: IFileFieldItemViewProps): React.JSX.Element;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { IFileFieldViewProps } from '@steroidsjs/core/ui/form/FileField/FileField';
3
- export default function FileFieldView(props: IFileFieldViewProps): JSX.Element;
3
+ export default function FileFieldView(props: IFileFieldViewProps): React.JSX.Element;
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
2
  import { IFormViewProps } from '@steroidsjs/core/ui/form/Form/Form';
3
- declare function FormView(props: IFormViewProps): JSX.Element;
3
+ declare function FormView(props: IFormViewProps): React.JSX.Element;
4
4
  declare const _default: React.MemoExoticComponent<typeof FormView>;
5
5
  export default _default;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import { IHtmlFieldViewProps } from '@steroidsjs/core/ui/form/HtmlField/HtmlField';
3
- export default function HtmlFieldView(props: IHtmlFieldViewProps): JSX.Element;
3
+ export default function HtmlFieldView(props: IHtmlFieldViewProps): React.JSX.Element;
@@ -1,4 +1,4 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { IImageFieldModalViewProps } from '@steroidsjs/core/ui/form/ImageField/ImageField';
3
3
  import 'react-image-crop/dist/ReactCrop.css';
4
- export default function ImageFieldModalView(props: IImageFieldModalViewProps): JSX.Element;
4
+ export default function ImageFieldModalView(props: IImageFieldModalViewProps): React.JSX.Element;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { IImageFieldViewProps } from '@steroidsjs/core/ui/form/ImageField/ImageField';
3
- export default function ImageFieldView(props: IImageFieldViewProps): JSX.Element;
3
+ export default function ImageFieldView(props: IImageFieldViewProps): React.JSX.Element;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { IInputFieldViewProps } from '@steroidsjs/core/ui/form/InputField/InputField';
3
- export default function InputFieldView(props: IInputFieldViewProps): JSX.Element;
3
+ export default function InputFieldView(props: IInputFieldViewProps): React.JSX.Element;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { INumberFieldViewProps } from '@steroidsjs/core/ui/form/NumberField/NumberField';
3
- export default function NumberFieldView(props: INumberFieldViewProps): JSX.Element;
3
+ export default function NumberFieldView(props: INumberFieldViewProps): React.JSX.Element;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { IPasswordFieldViewProps } from '@steroidsjs/core/ui/form/PasswordField/PasswordField';
3
- export default function PasswordFieldView(props: IPasswordFieldViewProps): JSX.Element;
3
+ export default function PasswordFieldView(props: IPasswordFieldViewProps): React.JSX.Element;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
2
- import { IRadioFieldViewProps } from '@steroidsjs/core/ui/form/RadioField/RadioField';
3
- export default function RadioFieldView(props: IRadioFieldViewProps): JSX.Element;
1
+ import * as React from 'react';
2
+ import { ICheckboxFieldViewProps } from '@steroidsjs/core/ui/form/CheckboxField/CheckboxField';
3
+ export default function RadioFieldView(props: ICheckboxFieldViewProps): React.JSX.Element;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
2
- import { IRadioListFieldViewProps } from '@steroidsjs/core/ui/form/RadioListField/RadioListField';
3
- export default function RadioListFieldView(props: IRadioListFieldViewProps): JSX.Element;
1
+ import * as React from 'react';
2
+ import { ICheckboxListFieldViewProps } from '@steroidsjs/core/ui/form/CheckboxListField/CheckboxListField';
3
+ export default function RadioListFieldView(props: ICheckboxListFieldViewProps): React.JSX.Element;
@@ -35,7 +35,7 @@ function RadioListFieldView(props) {
35
35
  var prefix = (0, useUniqueId_1["default"])('radio');
36
36
  return (React.createElement("div", { className: bem(bem.block((_a = {},
37
37
  _a["".concat(props.orientation)] = !!props.orientation,
38
- _a)), props.className) }, props.items.map(function (radio, radioIndex) { return props.renderRadio({
38
+ _a)), props.className) }, props.items.map(function (radio, radioIndex) { return props.renderItem({
39
39
  key: radioIndex,
40
40
  id: "".concat(prefix, "_").concat(radio.id),
41
41
  label: radio.label,
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { IRateFieldViewProps } from '@steroidsjs/core/ui/form/RateField/RateField';
3
- export default function RateFieldView(props: IRateFieldViewProps): JSX.Element;
3
+ export default function RateFieldView(props: IRateFieldViewProps): React.JSX.Element;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { IReCaptchaFieldViewProps } from '@steroidsjs/core/ui/form/ReCaptchaField/ReCaptchaField';
3
- export default function ReCaptchaFieldView(props: IReCaptchaFieldViewProps): JSX.Element;
3
+ export default function ReCaptchaFieldView(props: IReCaptchaFieldViewProps): React.JSX.Element;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
1
+ import * as React from 'react';
2
2
  import { ISliderFieldViewProps } from '@steroidsjs/core/ui/form/SliderField/SliderField';
3
- export default function SliderFieldView(props: ISliderFieldViewProps): JSX.Element;
3
+ export default function SliderFieldView(props: ISliderFieldViewProps): React.JSX.Element;
@@ -1,3 +1,3 @@
1
- /// <reference types="react" />
2
- import { ISwitcherFieldViewProps } from '@steroidsjs/core/ui/form/SwitcherField/SwitcherField';
3
- export default function SwitcherFieldView(props: ISwitcherFieldViewProps): JSX.Element;
1
+ import React from 'react';
2
+ import { ICheckboxFieldViewProps } from '@steroidsjs/core/ui/form/CheckboxField/CheckboxField';
3
+ export default function SwitcherFieldView(props: ICheckboxFieldViewProps): React.JSX.Element;
@@ -10,46 +10,28 @@ var __assign = (this && this.__assign) || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
- if (k2 === undefined) k2 = k;
15
- var desc = Object.getOwnPropertyDescriptor(m, k);
16
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
- desc = { enumerable: true, get: function() { return m[k]; } };
18
- }
19
- Object.defineProperty(o, k2, desc);
20
- }) : (function(o, m, k, k2) {
21
- if (k2 === undefined) k2 = k;
22
- o[k2] = m[k];
23
- }));
24
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
- Object.defineProperty(o, "default", { enumerable: true, value: v });
26
- }) : function(o, v) {
27
- o["default"] = v;
28
- });
29
- var __importStar = (this && this.__importStar) || function (mod) {
30
- if (mod && mod.__esModule) return mod;
31
- var result = {};
32
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
- __setModuleDefault(result, mod);
34
- return result;
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
35
15
  };
36
16
  exports.__esModule = true;
37
- var React = __importStar(require("react"));
17
+ var react_1 = __importDefault(require("react"));
38
18
  var hooks_1 = require("@steroidsjs/core/hooks");
39
19
  function SwitcherFieldView(props) {
40
20
  var bem = (0, hooks_1.useBem)('SwitcherFieldView');
41
- var prefix = (0, hooks_1.useUniqueId)('switcher');
42
- var renderLabel = React.useCallback(function (item) {
43
- if (typeof item.label === 'object') {
44
- return props.selectedIds.includes(item.id) ? item.label.checked : item.label.unchecked;
21
+ var uniqueId = (0, hooks_1.useUniqueId)('switcher');
22
+ var renderLabel = react_1["default"].useCallback(function () {
23
+ if (typeof props.label === 'object') {
24
+ return props.inputProps.checked ? props.label.checked : props.label.unchecked;
45
25
  }
46
- return item.label;
47
- }, [props.selectedIds]);
48
- return (React.createElement("div", { className: bem(bem.block(), props.className), style: props.style }, props.items.map(function (switcher, switcherIndex) { return (React.createElement("label", { key: switcherIndex, className: bem.element('switcher', {
49
- size: props.size
50
- }), htmlFor: "".concat(prefix, "_").concat(switcher.id) },
51
- React.createElement("input", __assign({}, props.inputProps, { id: "".concat(prefix, "_").concat(switcher.id), onChange: function () { return props.onItemSelect(switcher.id); }, checked: props.selectedIds.includes(switcher.id), className: bem.element('input'), required: switcher.required })),
52
- React.createElement("span", { className: bem.element('slider') }),
53
- React.createElement("span", { className: bem.element('label') }, renderLabel(switcher)))); })));
26
+ return props.label;
27
+ }, [props.inputProps.checked, props.label]);
28
+ var customVariableColorStyle = { '--checkbox-custom-color': props.color };
29
+ return (react_1["default"].createElement("div", { className: bem(bem.block({
30
+ size: props.size,
31
+ hasErrors: !!props.errors
32
+ }), props.className), style: __assign(__assign({}, props.style), customVariableColorStyle), onClick: props.onChange },
33
+ react_1["default"].createElement("input", __assign({ id: props.id || uniqueId, disabled: props.disabled, required: props.required, onChange: function () { return props.onItemSelect(props.id); }, className: bem.element('input') }, props.inputProps)),
34
+ react_1["default"].createElement("span", { className: bem.element('slider') }),
35
+ react_1["default"].createElement("span", { className: bem.element('label') }, renderLabel())));
54
36
  }
55
37
  exports["default"] = SwitcherFieldView;