@rolster/react-components 18.18.0 → 18.18.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/assets/{index-DIGj2mhy.css → index-DLCk3aif.css} +5 -4
- package/dist/cjs/index.js +48 -32
- package/dist/cjs/index.js.map +1 -1
- package/dist/es/assets/{index-DIGj2mhy.css → index-DLCk3aif.css} +5 -4
- package/dist/es/index.js +49 -33
- package/dist/es/index.js.map +1 -1
- package/dist/esm/components/atoms/Avatar/Avatar.css +1 -3
- package/dist/esm/components/atoms/Breadcrumb/Breadcrumb.css +1 -1
- package/dist/esm/components/molecules/Ballot/Ballot.css +3 -0
- package/dist/esm/components/molecules/FieldMoney/FieldMoney.js +3 -2
- package/dist/esm/components/molecules/FieldMoney/FieldMoney.js.map +1 -1
- package/dist/esm/components/molecules/FieldNumber/FieldNumber.js +3 -2
- package/dist/esm/components/molecules/FieldNumber/FieldNumber.js.map +1 -1
- package/dist/esm/components/molecules/FieldPassword/FieldPassword.js +3 -2
- package/dist/esm/components/molecules/FieldPassword/FieldPassword.js.map +1 -1
- package/dist/esm/components/molecules/FieldText/FieldText.js +3 -2
- package/dist/esm/components/molecules/FieldText/FieldText.js.map +1 -1
- package/dist/esm/components/organisms/Datatable/Datatable.d.ts +4 -2
- package/dist/esm/components/organisms/Datatable/Datatable.js +4 -4
- package/dist/esm/components/organisms/Datatable/Datatable.js.map +1 -1
- package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.js +5 -5
- package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.js.map +1 -1
- package/dist/esm/components/organisms/FieldDate/FieldDate.js +2 -1
- package/dist/esm/components/organisms/FieldDate/FieldDate.js.map +1 -1
- package/dist/esm/components/organisms/FieldDateRange/FieldDateRange.js +2 -1
- package/dist/esm/components/organisms/FieldDateRange/FieldDateRange.js.map +1 -1
- package/dist/esm/components/organisms/FieldSelect/FieldSelect.d.ts +1 -0
- package/dist/esm/components/organisms/FieldSelect/FieldSelect.js +9 -7
- package/dist/esm/components/organisms/FieldSelect/FieldSelect.js.map +1 -1
- package/dist/esm/components/organisms/FieldSelect/FieldSelectController.d.ts +1 -0
- package/dist/esm/components/organisms/FieldSelect/FieldSelectController.js +11 -3
- package/dist/esm/components/organisms/FieldSelect/FieldSelectController.js.map +1 -1
- package/dist/esm/controllers/ListController.js +4 -4
- package/dist/esm/controllers/ListController.js.map +1 -1
- package/package.json +4 -4
|
@@ -51,10 +51,8 @@
|
|
|
51
51
|
border-radius: 50%;
|
|
52
52
|
}
|
|
53
53
|
.rls-avatar span {
|
|
54
|
+
align-self: center;
|
|
54
55
|
font-size: inherit;
|
|
55
|
-
margin: auto;
|
|
56
|
-
height: inherit;
|
|
57
|
-
line-height: inherit;
|
|
58
56
|
}
|
|
59
57
|
|
|
60
58
|
.rls-badge {
|
|
@@ -129,7 +127,7 @@
|
|
|
129
127
|
cursor: pointer;
|
|
130
128
|
color: var(--pvt-link-font-color);
|
|
131
129
|
}
|
|
132
|
-
.rls-breadcrumb__label__a
|
|
130
|
+
.rls-breadcrumb__label__a--actionable:hover {
|
|
133
131
|
color: var(--rls-theme-color-500);
|
|
134
132
|
text-decoration: underline;
|
|
135
133
|
}
|
|
@@ -918,6 +916,9 @@
|
|
|
918
916
|
flex-direction: column;
|
|
919
917
|
row-gap: var(--rlc-ballot-component-row-gap);
|
|
920
918
|
}
|
|
919
|
+
.rls-ballot .rls-avatar + .rls-ballot__component {
|
|
920
|
+
width: calc(100% - var(--rlc-avatar-width) - var(--rls-sizing-x4));
|
|
921
|
+
}
|
|
921
922
|
.rls-ballot__title {
|
|
922
923
|
--rlc-skeleton-text-height: var(--rlc-ballot-title-height);
|
|
923
924
|
--rlc-skeleton-text-letter-spacing: var(--rlc-ballot-title-letter-spacing);
|
package/dist/es/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import require$$0, { useState, useRef, useEffect, createContext } from 'react';
|
|
1
|
+
import require$$0, { useState, useRef, useEffect, useCallback, createContext } from 'react';
|
|
2
2
|
import { currencyFormat, itIsDefined, PartialSealed } from '@rolster/commons';
|
|
3
3
|
import { dateFormatTemplate, DAY_LABELS, DateRange, normalizeMinTime, assignDayInDate, dateIsBefore, MONTH_NAMES, Month, assignYearInDate, assignMonthInDate } from '@rolster/dates';
|
|
4
4
|
import { PaginationController, verifyDayPicker, createDayPicker, createDayRangePicker, verifyMonthPicker, createMonthPicker, monthLimitTemplate, createYearPicker, verifyYearPicker, ListCollection, locationListCanTop, navigationListFromInput, navigationListFromElement, createAutocompleteStore, verifyDateRange, dateOutRange, PickerListenerEvent } from '@rolster/components';
|
|
@@ -1592,18 +1592,20 @@ function RlsMessageFormError({ className, formControl }) {
|
|
|
1592
1592
|
}
|
|
1593
1593
|
|
|
1594
1594
|
function RlsFieldMoney({ children, decimals, disabled, formControl, identifier, msgErrorDisabled, onValue, placeholder, symbol, rlsTheme, value }) {
|
|
1595
|
+
const _disabled = formControl?.disabled || disabled;
|
|
1595
1596
|
return (jsxRuntimeExports.jsxs("div", { id: identifier, className: renderClassStatus('rls-field-box', {
|
|
1596
|
-
focused: formControl?.focused,
|
|
1597
|
+
focused: formControl?.focused && !_disabled,
|
|
1597
1598
|
error: formControl?.wrong,
|
|
1598
|
-
disabled:
|
|
1599
|
+
disabled: _disabled
|
|
1599
1600
|
}, 'rls-field-money'), "rls-theme": rlsTheme, children: [children && jsxRuntimeExports.jsx("label", { className: "rls-field-box__label", children: children }), jsxRuntimeExports.jsx("div", { className: "rls-field-box__component", children: jsxRuntimeExports.jsx("div", { className: "rls-field-box__body", children: jsxRuntimeExports.jsx(RlsInputMoney, { formControl: formControl, value: value, disabled: disabled, placeholder: placeholder, symbol: symbol, decimals: decimals, onValue: onValue }) }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }))] }));
|
|
1600
1601
|
}
|
|
1601
1602
|
|
|
1602
1603
|
function RlsFieldNumber({ children, disabled, formControl, identifier, msgErrorDisabled, onValue, placeholder, rlsTheme, value }) {
|
|
1604
|
+
const _disabled = formControl?.disabled || disabled;
|
|
1603
1605
|
return (jsxRuntimeExports.jsxs("div", { id: identifier, className: renderClassStatus('rls-field-box', {
|
|
1604
|
-
focused: formControl?.focused,
|
|
1606
|
+
focused: formControl?.focused && !_disabled,
|
|
1605
1607
|
error: formControl?.wrong,
|
|
1606
|
-
disabled:
|
|
1608
|
+
disabled: _disabled
|
|
1607
1609
|
}, 'rls-field-number'), "rls-theme": rlsTheme, children: [children && jsxRuntimeExports.jsx("label", { className: "rls-field-box__label", children: children }), jsxRuntimeExports.jsx("div", { className: "rls-field-box__component", children: jsxRuntimeExports.jsx("div", { className: "rls-field-box__body", children: jsxRuntimeExports.jsx(RlsInputNumber, { formControl: formControl, value: value, disabled: disabled, placeholder: placeholder, onValue: onValue }) }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }))] }));
|
|
1608
1610
|
}
|
|
1609
1611
|
|
|
@@ -1612,18 +1614,20 @@ function RlsFieldPassword({ children, disabled, formControl, identifier, msgErro
|
|
|
1612
1614
|
function onToggleInput() {
|
|
1613
1615
|
setPassword(!password);
|
|
1614
1616
|
}
|
|
1617
|
+
const _disabled = formControl?.disabled || disabled;
|
|
1615
1618
|
return (jsxRuntimeExports.jsxs("div", { id: identifier, className: renderClassStatus(' rls-field-box', {
|
|
1616
|
-
focused: formControl?.focused,
|
|
1619
|
+
focused: formControl?.focused && !_disabled,
|
|
1617
1620
|
error: formControl?.wrong,
|
|
1618
|
-
disabled:
|
|
1621
|
+
disabled: _disabled
|
|
1619
1622
|
}, 'rls-field-password'), "rls-theme": rlsTheme, children: [children && jsxRuntimeExports.jsx("label", { className: "rls-field-box__label", children: children }), jsxRuntimeExports.jsx("div", { className: "rls-field-box__component", children: jsxRuntimeExports.jsxs("div", { className: "rls-field-box__body", children: [jsxRuntimeExports.jsx(RlsInputPassword, { formControl: formControl, disabled: disabled, placeholder: placeholder, type: password ? 'password' : 'text' }), jsxRuntimeExports.jsx(RlsButtonAction, { icon: password ? 'eye' : 'eye-off', onClick: onToggleInput })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }))] }));
|
|
1620
1623
|
}
|
|
1621
1624
|
|
|
1622
1625
|
function RlsFieldText({ children, disabled, formControl, identifier, msgErrorDisabled, onValue, placeholder, rlsTheme, value }) {
|
|
1626
|
+
const _disabled = formControl?.disabled || disabled;
|
|
1623
1627
|
return (jsxRuntimeExports.jsxs("div", { id: identifier, className: renderClassStatus('rls-field-box', {
|
|
1624
|
-
focused: formControl?.focused,
|
|
1628
|
+
focused: formControl?.focused && !_disabled,
|
|
1625
1629
|
error: formControl?.wrong,
|
|
1626
|
-
disabled:
|
|
1630
|
+
disabled: _disabled
|
|
1627
1631
|
}, 'rls-field-text'), "rls-theme": rlsTheme, children: [children && jsxRuntimeExports.jsx("label", { className: "rls-field-box__label", children: children }), jsxRuntimeExports.jsx("div", { className: "rls-field-box__component", children: jsxRuntimeExports.jsx("div", { className: "rls-field-box__body", children: jsxRuntimeExports.jsx(RlsInputText, { formControl: formControl, value: value, disabled: disabled, placeholder: placeholder, onValue: onValue }) }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }))] }));
|
|
1628
1632
|
}
|
|
1629
1633
|
|
|
@@ -2040,11 +2044,11 @@ function RlsDatatableHeader({ children, identifier }) {
|
|
|
2040
2044
|
function RlsDatatableTitle({ children, className, control, identifier }) {
|
|
2041
2045
|
return (jsxRuntimeExports.jsx("th", { id: identifier, className: renderClassStatus('rls-datatable__title', { control }, className).trim(), children: children }));
|
|
2042
2046
|
}
|
|
2043
|
-
function RlsDatatableRecord({ children, className, error, identifier, warning }) {
|
|
2044
|
-
return (jsxRuntimeExports.jsx("tr", { id: identifier, className: renderClassStatus('rls-datatable__record', { error, warning }, className).trim(), children: children }));
|
|
2047
|
+
function RlsDatatableRecord({ children, className, error, identifier, info, successs, warning }) {
|
|
2048
|
+
return (jsxRuntimeExports.jsx("tr", { id: identifier, className: renderClassStatus('rls-datatable__record', { error, info, successs, warning }, className).trim(), children: children }));
|
|
2045
2049
|
}
|
|
2046
|
-
function RlsDatatableTotals({ children, className, error, identifier, warning }) {
|
|
2047
|
-
return (jsxRuntimeExports.jsx("div", { id: identifier, className: renderClassStatus('rls-datatable__totals', { error, warning }, className).trim(), children: children }));
|
|
2050
|
+
function RlsDatatableTotals({ children, className, error, identifier, info, successs, warning }) {
|
|
2051
|
+
return (jsxRuntimeExports.jsx("div", { id: identifier, className: renderClassStatus('rls-datatable__totals', { error, info, successs, warning }, className).trim(), children: children }));
|
|
2048
2052
|
}
|
|
2049
2053
|
function RlsDatatableCell({ children, className, control, identifier, overflow }) {
|
|
2050
2054
|
return (jsxRuntimeExports.jsx("th", { id: identifier, className: renderClassStatus('rls-datatable__cell', { control, overflow }, className).trim(), children: children }));
|
|
@@ -2144,7 +2148,7 @@ function useListController(props) {
|
|
|
2144
2148
|
}
|
|
2145
2149
|
function refreshWithProtected(collection, automatic) {
|
|
2146
2150
|
if (automatic && collection.value[0]) {
|
|
2147
|
-
|
|
2151
|
+
formControl?.setInitialValue(collection.value[0].value);
|
|
2148
2152
|
return true;
|
|
2149
2153
|
}
|
|
2150
2154
|
if (_protected.current) {
|
|
@@ -2160,9 +2164,9 @@ function useListController(props) {
|
|
|
2160
2164
|
function refreshState(state) {
|
|
2161
2165
|
setState((currentState) => ({ ...currentState, ...state }));
|
|
2162
2166
|
}
|
|
2163
|
-
|
|
2167
|
+
const setFormValue = useCallback((value) => {
|
|
2164
2168
|
formControl?.setValue(value);
|
|
2165
|
-
}
|
|
2169
|
+
}, [formControl]);
|
|
2166
2170
|
function navigationInput(event) {
|
|
2167
2171
|
if (state.modalIsVisible) {
|
|
2168
2172
|
const newPosition = navigationListFromInput({
|
|
@@ -2301,20 +2305,20 @@ function RlsFieldAutocompleteTemplate(props) {
|
|
|
2301
2305
|
const autocomplete = useFieldAutocomplete(props);
|
|
2302
2306
|
const { controller } = autocomplete;
|
|
2303
2307
|
const { render, children, formControl, msgErrorDisabled, onSearch, placeholder, rlsTheme, searching } = props;
|
|
2304
|
-
const
|
|
2308
|
+
const _disabled = formControl?.disabled || props.disabled;
|
|
2305
2309
|
const className = renderClassStatus('rls-field-box', {
|
|
2306
|
-
focused: controller.focused,
|
|
2307
|
-
disabled,
|
|
2310
|
+
focused: controller.focused && !_disabled,
|
|
2308
2311
|
error: formControl?.wrong,
|
|
2312
|
+
disabled: _disabled,
|
|
2309
2313
|
selected: !!controller.value
|
|
2310
2314
|
}, 'rls-field-list rls-field-autocomplete');
|
|
2311
|
-
return (jsxRuntimeExports.jsxs("div", { id: props.identifier, ref: controller.contentRef, className: className, "rls-theme": rlsTheme, children: [children && jsxRuntimeExports.jsx("label", { className: "rls-field-box__label", children: children }), jsxRuntimeExports.jsx("div", { className: "rls-field-box__component", children: jsxRuntimeExports.jsxs("div", { className: "rls-field-box__body", children: [jsxRuntimeExports.jsx("input", { className: "rls-field-list__control", readOnly: true, disabled:
|
|
2315
|
+
return (jsxRuntimeExports.jsxs("div", { id: props.identifier, ref: controller.contentRef, className: className, "rls-theme": rlsTheme, children: [children && jsxRuntimeExports.jsx("label", { className: "rls-field-box__label", children: children }), jsxRuntimeExports.jsx("div", { className: "rls-field-box__component", children: jsxRuntimeExports.jsxs("div", { className: "rls-field-box__body", children: [jsxRuntimeExports.jsx("input", { className: "rls-field-list__control", readOnly: true, disabled: _disabled, placeholder: placeholder, value: controller.value, onClick: autocomplete.onClickControl }), jsxRuntimeExports.jsx("button", { className: "rls-field-list__action", disabled: _disabled, onClick: autocomplete.onClickAction, children: jsxRuntimeExports.jsx(RlsIcon, { value: controller.value ? 'trash-2' : 'arrow-ios-down' }) })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl })), jsxRuntimeExports.jsxs("div", { className: renderClassStatus('rls-field-list__suggestions', {
|
|
2312
2316
|
visible: controller.modalIsVisible,
|
|
2313
2317
|
higher: controller.higher,
|
|
2314
2318
|
hide: !controller.modalIsVisible
|
|
2315
2319
|
}), children: [jsxRuntimeExports.jsx("div", { className: "rls-field-list__suggestions__body", children: jsxRuntimeExports.jsxs("ul", { ref: controller.listRef, className: "rls-field-list__ul", children: [jsxRuntimeExports.jsxs("div", { className: "rls-field-list__ul__search", children: [jsxRuntimeExports.jsx("input", { ref: controller.inputRef, className: "rls-field-list__ul__control", type: "text", placeholder: reactI18n('listInputPlaceholder'), value: autocomplete.pattern, onChange: (event) => {
|
|
2316
2320
|
autocomplete.setPattern(event.target.value);
|
|
2317
|
-
}, disabled:
|
|
2321
|
+
}, disabled: _disabled || searching, onFocus: autocomplete.onFocusInput, onBlur: autocomplete.onBlurInput, onKeyDown: autocomplete.onKeydownInput }), onSearch && (jsxRuntimeExports.jsx("button", { disabled: _disabled || searching, onClick: () => {
|
|
2318
2322
|
onSearch(autocomplete.pattern);
|
|
2319
2323
|
}, children: jsxRuntimeExports.jsx(RlsIcon, { value: "search" }) }))] }), searching && jsxRuntimeExports.jsx(RlsProgressBar, { indeterminate: true }), autocomplete.coincidences.map((element, index) => (jsxRuntimeExports.jsx("li", { className: "rls-field-list__element", tabIndex: -1, onClick: autocomplete.onClickElement(element), onKeyDown: autocomplete.onKeydownElement(element), children: render(element) }, index))), !autocomplete.coincidences.length && (jsxRuntimeExports.jsx("li", { className: "rls-field-list__empty", children: jsxRuntimeExports.jsxs("div", { className: "rls-field-list__empty__description", children: [jsxRuntimeExports.jsx("label", { className: "rls-label-bold truncate", children: reactI18n('listEmptyTitle') }), jsxRuntimeExports.jsx("p", { className: "rls-caption-regular", children: reactI18n('listEmptyDescription') })] }) }))] }) }), jsxRuntimeExports.jsx("div", { className: "rls-field-list__backdrop", onClick: autocomplete.onClickBackdrop })] })] }));
|
|
2320
2324
|
}
|
|
@@ -2420,7 +2424,8 @@ function RlsFieldDate({ children, date, disabled, formControl, format, identifie
|
|
|
2420
2424
|
const valueInput = value
|
|
2421
2425
|
? dateFormatTemplate(value, format || FORMAT_DATE)
|
|
2422
2426
|
: '';
|
|
2423
|
-
|
|
2427
|
+
const _disabled = formControl?.disabled || disabled;
|
|
2428
|
+
return (jsxRuntimeExports.jsxs("div", { id: identifier, className: "rls-field-date", "rls-theme": rlsTheme, children: [jsxRuntimeExports.jsxs("div", { className: renderClassStatus('rls-field-box', { disabled: _disabled }), children: [children && jsxRuntimeExports.jsx("label", { className: "rls-field-box__label", children: children }), jsxRuntimeExports.jsx("div", { className: "rls-field-box__component", children: jsxRuntimeExports.jsxs("div", { className: "rls-field-box__body", children: [jsxRuntimeExports.jsx("input", { className: "rls-field-date__control", type: "text", value: valueInput, readOnly: true, placeholder: placeholder, onClick: onClickInput, disabled: _disabled }), jsxRuntimeExports.jsx("button", { className: "rls-field-date__action", onClick: onClickAction, disabled: disabled, children: jsxRuntimeExports.jsx(RlsIcon, { value: value ? 'trash-2' : 'calendar' }) })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }))] }), jsxRuntimeExports.jsx(RlsModal, { visible: modalIsVisible, rlsTheme: rlsTheme, children: jsxRuntimeExports.jsx(RlsPickerDate, { formControl: formControl, date: date, disabled: _disabled, maxDate: maxDate, minDate: minDate, onListener: ({ event, value }) => {
|
|
2424
2429
|
event !== PickerListenerEvent.Cancel && onChange(value);
|
|
2425
2430
|
formControl?.touch();
|
|
2426
2431
|
setModalIsVisible(false);
|
|
@@ -2500,7 +2505,8 @@ function RlsFieldDateRange({ children, date: datePicker, disabled, formControl,
|
|
|
2500
2505
|
setValue(value);
|
|
2501
2506
|
onValue && onValue(value);
|
|
2502
2507
|
}
|
|
2503
|
-
|
|
2508
|
+
const _disabled = formControl?.disabled || disabled;
|
|
2509
|
+
return (jsxRuntimeExports.jsxs("div", { id: identifier, className: "rls-field-date-range", "rls-theme": rlsTheme, children: [jsxRuntimeExports.jsxs("div", { className: renderClassStatus('rls-field-box', { disabled: _disabled }), children: [children && jsxRuntimeExports.jsx("label", { className: "rls-field-box__label", children: children }), jsxRuntimeExports.jsx("div", { className: "rls-field-box__component", children: jsxRuntimeExports.jsxs("div", { className: "rls-field-box__body", children: [jsxRuntimeExports.jsx("input", { className: "rls-field-date-range__control", type: "text", value: value ? rangeFormatTemplate(value) : '', readOnly: true, placeholder: placeholder, onClick: onClickInput, disabled: _disabled }), jsxRuntimeExports.jsx("button", { className: "rls-field-date-range__action", onClick: onClickAction, disabled: _disabled, children: jsxRuntimeExports.jsx(RlsIcon, { value: value ? 'trash-2' : 'calendar' }) })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl }))] }), jsxRuntimeExports.jsx(RlsModal, { visible: modalIsVisible, rlsTheme: rlsTheme, children: jsxRuntimeExports.jsx(RlsPickerDateRange, { formControl: formControl, date: currentDate, disabled: _disabled, maxDate: maxDate, minDate: minDate, onListener: ({ event, value }) => {
|
|
2504
2510
|
event !== PickerListenerEvent.Cancel && onChange(value);
|
|
2505
2511
|
formControl?.touch();
|
|
2506
2512
|
setModalIsVisible(false);
|
|
@@ -2534,9 +2540,17 @@ function useFieldSelect(props) {
|
|
|
2534
2540
|
}
|
|
2535
2541
|
}
|
|
2536
2542
|
function onClickAction() {
|
|
2537
|
-
const
|
|
2538
|
-
|
|
2539
|
-
|
|
2543
|
+
const removable = !props.unremovable && !!controller.value;
|
|
2544
|
+
if (removable) {
|
|
2545
|
+
controller.setState({ modalIsVisible: false, value: '' });
|
|
2546
|
+
controller.setFormValue(props.value);
|
|
2547
|
+
props.onValue && props.onValue(props.value);
|
|
2548
|
+
}
|
|
2549
|
+
else {
|
|
2550
|
+
const modalIsVisible = !controller.modalIsVisible;
|
|
2551
|
+
controller.setState({ modalIsVisible });
|
|
2552
|
+
modalIsVisible && controller.inputRef?.current?.focus();
|
|
2553
|
+
}
|
|
2540
2554
|
}
|
|
2541
2555
|
function onClickBackdrop() {
|
|
2542
2556
|
controller.setState({ modalIsVisible: false });
|
|
@@ -2582,16 +2596,18 @@ function useFieldSelect(props) {
|
|
|
2582
2596
|
function RlsFieldSelectTemplate(props) {
|
|
2583
2597
|
const select = useFieldSelect(props);
|
|
2584
2598
|
const { controller } = select;
|
|
2585
|
-
const { render, suggestions, children, formControl, msgErrorDisabled, placeholder, rlsTheme } = props;
|
|
2586
|
-
const
|
|
2599
|
+
const { render, suggestions, children, formControl, msgErrorDisabled, placeholder, rlsTheme, unremovable } = props;
|
|
2600
|
+
const _disabled = formControl?.disabled || props.disabled;
|
|
2587
2601
|
const className = renderClassStatus('rls-field-box', {
|
|
2588
|
-
focused: controller.focused,
|
|
2589
|
-
|
|
2590
|
-
|
|
2602
|
+
focused: controller.focused && !_disabled,
|
|
2603
|
+
error: formControl?.wrong,
|
|
2604
|
+
disabled: _disabled
|
|
2591
2605
|
}, 'rls-field-list rls-field-select');
|
|
2592
|
-
return (jsxRuntimeExports.jsxs("div", { id: props.identifier, ref: controller.contentRef, className: className, "rls-theme": rlsTheme, children: [children && jsxRuntimeExports.jsx("label", { className: "rls-field-box__label", children: children }), jsxRuntimeExports.jsx("div", { className: "rls-field-box__component", children: jsxRuntimeExports.jsxs("div", { className: "rls-field-box__body", children: [jsxRuntimeExports.jsx("input", { ref: controller.inputRef, className: "rls-field-list__control", readOnly: true, disabled:
|
|
2606
|
+
return (jsxRuntimeExports.jsxs("div", { id: props.identifier, ref: controller.contentRef, className: className, "rls-theme": rlsTheme, children: [children && jsxRuntimeExports.jsx("label", { className: "rls-field-box__label", children: children }), jsxRuntimeExports.jsx("div", { className: "rls-field-box__component", children: jsxRuntimeExports.jsxs("div", { className: "rls-field-box__body", children: [jsxRuntimeExports.jsx("input", { ref: controller.inputRef, className: "rls-field-list__control", readOnly: true, disabled: _disabled, placeholder: placeholder, value: controller.value, onFocus: select.onFocusInput, onBlur: select.onBlurInput, onClick: select.onClickInput, onKeyDown: select.onKeydownInput }), jsxRuntimeExports.jsx("button", { className: renderClassStatus('rls-field-list__action', {
|
|
2593
2607
|
visible: controller.modalIsVisible
|
|
2594
|
-
}), disabled:
|
|
2608
|
+
}), disabled: _disabled, onClick: select.onClickAction, children: jsxRuntimeExports.jsx(RlsIcon, { value: !unremovable && !!controller.value
|
|
2609
|
+
? 'trash-2'
|
|
2610
|
+
: 'arrow-ios-down' }) })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl })), jsxRuntimeExports.jsxs("div", { className: renderClassStatus('rls-field-list__suggestions', {
|
|
2595
2611
|
visible: controller.modalIsVisible,
|
|
2596
2612
|
higher: controller.higher,
|
|
2597
2613
|
hide: !controller.modalIsVisible
|