@rolster/react-components 18.21.45 → 18.21.46
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/index.js +78 -71
- package/dist/cjs/index.js.map +1 -1
- package/dist/es/index.js +78 -71
- package/dist/es/index.js.map +1 -1
- package/dist/esm/components/molecules/PickerDay/PickerDay.js +13 -13
- package/dist/esm/components/molecules/PickerDay/PickerDay.js.map +1 -1
- package/dist/esm/components/molecules/PickerDayRange/PickerDayRange.js +12 -12
- package/dist/esm/components/molecules/PickerDayRange/PickerDayRange.js.map +1 -1
- package/dist/esm/components/molecules/PickerMonth/PickerMonth.js +10 -10
- package/dist/esm/components/molecules/PickerMonth/PickerMonth.js.map +1 -1
- package/dist/esm/components/molecules/PickerYear/PickerYear.js +11 -11
- package/dist/esm/components/molecules/PickerYear/PickerYear.js.map +1 -1
- package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.js +1 -1
- package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocompleteController.js +5 -2
- package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocompleteController.js.map +1 -1
- package/dist/esm/components/organisms/FieldSelect/FieldSelect.js +3 -3
- package/dist/esm/components/organisms/FieldSelect/FieldSelect.js.map +1 -1
- package/dist/esm/components/organisms/FieldSelect/FieldSelectController.js +7 -3
- package/dist/esm/components/organisms/FieldSelect/FieldSelectController.js.map +1 -1
- package/dist/esm/components/organisms/PickerDate/PickerDate.js +1 -1
- package/dist/esm/components/organisms/PickerDate/PickerDate.js.map +1 -1
- package/dist/esm/controllers/ListController.d.ts +3 -3
- package/dist/esm/controllers/ListController.js +16 -16
- package/dist/esm/controllers/ListController.js.map +1 -1
- package/dist/esm/definitions.d.ts +3 -3
- package/package.json +1 -1
package/dist/cjs/index.js
CHANGED
|
@@ -1968,7 +1968,10 @@ function RlsPagination({ suggestions, count, filter, onPagination }) {
|
|
|
1968
1968
|
}) }), jsxRuntimeExports.jsx("div", { className: "rls-pagination__description", children: template?.description }), jsxRuntimeExports.jsxs("div", { className: "rls-pagination__actions", children: [jsxRuntimeExports.jsx("button", { className: "rls-pagination__action", onClick: goNextPagination, disabled: template?.lastPage, children: jsxRuntimeExports.jsx(RlsIcon, { value: "arrow-ios-right" }) }), jsxRuntimeExports.jsx("button", { className: "rls-pagination__action", onClick: goLastPagination, disabled: template?.lastPage, children: jsxRuntimeExports.jsx(RlsIcon, { value: "arrowhead-right" }) })] })] }));
|
|
1969
1969
|
}
|
|
1970
1970
|
|
|
1971
|
-
function
|
|
1971
|
+
function RlsPickerDayHeaders() {
|
|
1972
|
+
return (jsxRuntimeExports.jsx("div", { className: "rls-picker-day__header", children: dates.DAY_LABELS().map((title, index) => (jsxRuntimeExports.jsx("label", { className: "rls-picker-day__label", children: title }, index))) }));
|
|
1973
|
+
}
|
|
1974
|
+
function RlsPickerDayElement({ day, onSelect, disabled }) {
|
|
1972
1975
|
const className = require$$0.useMemo(() => {
|
|
1973
1976
|
return renderClassStatus('rls-picker-day__element', {
|
|
1974
1977
|
disabled: day.disabled || disabled,
|
|
@@ -1990,23 +1993,27 @@ function RlsPickerDayItem({ day, onSelect, disabled }) {
|
|
|
1990
1993
|
}, [day.value, day.disabled, disabled, onSelect]);
|
|
1991
1994
|
return (jsxRuntimeExports.jsx("div", { className: className, onClick: onClick, children: jsxRuntimeExports.jsx("span", { className: "rls-picker-day__element__span", children: day.value || '??' }) }));
|
|
1992
1995
|
}
|
|
1993
|
-
function RlsPickerDayHeaders() {
|
|
1994
|
-
return (jsxRuntimeExports.jsx("div", { className: "rls-picker-day__header", children: dates.DAY_LABELS().map((title, index) => (jsxRuntimeExports.jsx("label", { className: "rls-picker-day__label", children: title }, index))) }));
|
|
1995
|
-
}
|
|
1996
1996
|
function RlsPickerDay({ date: _date, disabled, formControl, maxDate, month, minDate, onValue, rlsTheme, year }) {
|
|
1997
1997
|
const date = require$$0.useMemo(() => _date ?? new Date(), [_date]);
|
|
1998
1998
|
const [weeks, setWeeks] = require$$0.useState([]);
|
|
1999
1999
|
const [value, setValue] = require$$0.useState(formControl?.value || date.getDate());
|
|
2000
2000
|
const [headers, setHeaders] = require$$0.useState(jsxRuntimeExports.jsx(RlsPickerDayHeaders, {}));
|
|
2001
2001
|
const [component, setComponent] = require$$0.useState(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, {}));
|
|
2002
|
+
const setDayValue = require$$0.useCallback((value) => {
|
|
2003
|
+
formControl ? formControl.setValue(value) : setValue(value);
|
|
2004
|
+
}, [formControl]);
|
|
2005
|
+
const onSelect = require$$0.useCallback((value) => {
|
|
2006
|
+
setDayValue(value);
|
|
2007
|
+
onValue && onValue(value);
|
|
2008
|
+
}, [setDayValue, onValue]);
|
|
2002
2009
|
require$$0.useEffect(() => {
|
|
2003
2010
|
return i18n.i18nSubscribe(() => {
|
|
2004
2011
|
setHeaders(jsxRuntimeExports.jsx(RlsPickerDayHeaders, {}));
|
|
2005
2012
|
});
|
|
2006
2013
|
}, []);
|
|
2007
2014
|
require$$0.useEffect(() => {
|
|
2008
|
-
setComponent(jsxRuntimeExports.jsx("div", { className: "rls-picker-day__component", children: weeks.map(({ days }, index) => (jsxRuntimeExports.jsx("div", { className: "rls-picker-day__week", children: days.map((day, index) => (jsxRuntimeExports.jsx(
|
|
2009
|
-
}, [weeks]);
|
|
2015
|
+
setComponent(jsxRuntimeExports.jsx("div", { className: "rls-picker-day__component", children: weeks.map(({ days }, index) => (jsxRuntimeExports.jsx("div", { className: "rls-picker-day__week", children: days.map((day, index) => (jsxRuntimeExports.jsx(RlsPickerDayElement, { day: day, onSelect: onSelect, disabled: disabled }, index))) }, index))) }));
|
|
2016
|
+
}, [weeks, onSelect, disabled]);
|
|
2010
2017
|
require$$0.useEffect(() => {
|
|
2011
2018
|
const options = createPickerOptions();
|
|
2012
2019
|
const day = components.verifyDayPicker(options);
|
|
@@ -2028,13 +2035,6 @@ function RlsPickerDay({ date: _date, disabled, formControl, maxDate, month, minD
|
|
|
2028
2035
|
maxDate
|
|
2029
2036
|
};
|
|
2030
2037
|
}, [date, formControl?.value, value, month, year, minDate, maxDate]);
|
|
2031
|
-
const setDayValue = require$$0.useCallback((value) => {
|
|
2032
|
-
formControl ? formControl.setValue(value) : setValue(value);
|
|
2033
|
-
}, [formControl]);
|
|
2034
|
-
const onSelect = require$$0.useCallback((value) => {
|
|
2035
|
-
setDayValue(value);
|
|
2036
|
-
onValue && onValue(value);
|
|
2037
|
-
}, [setDayValue, onValue]);
|
|
2038
2038
|
return (jsxRuntimeExports.jsxs("div", { className: "rls-picker-day", "rls-theme": rlsTheme, children: [headers, component] }));
|
|
2039
2039
|
}
|
|
2040
2040
|
|
|
@@ -2042,7 +2042,7 @@ const formatRange = '{dd}/{mx}/{aa}';
|
|
|
2042
2042
|
function RlsPickerDayRangeHeaders() {
|
|
2043
2043
|
return (jsxRuntimeExports.jsx("div", { className: "rls-picker-day__header", children: dates.DAY_LABELS().map((title, index) => (jsxRuntimeExports.jsx("label", { className: "rls-picker-day__label", children: title }, index))) }));
|
|
2044
2044
|
}
|
|
2045
|
-
function
|
|
2045
|
+
function RlsPickerDayRangeElement({ day, onSelect, disabled }) {
|
|
2046
2046
|
const className = require$$0.useMemo(() => {
|
|
2047
2047
|
return renderClassStatus('rls-picker-day-range__element', {
|
|
2048
2048
|
disabled: day.disabled || disabled,
|
|
@@ -2069,14 +2069,23 @@ function RlsPickerDayRange({ date: _date, disabled, formControl, maxDate, minDat
|
|
|
2069
2069
|
const [range, setRange] = require$$0.useState(_range);
|
|
2070
2070
|
const [headers, setHeaders] = require$$0.useState(jsxRuntimeExports.jsx(RlsPickerDayRangeHeaders, {}));
|
|
2071
2071
|
const [component, setComponent] = require$$0.useState(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, {}));
|
|
2072
|
+
const onSelect = require$$0.useCallback((value) => {
|
|
2073
|
+
const _date = dates.assignDayInDate(date, value);
|
|
2074
|
+
const range = dates.dateIsBefore(_date, sourceDate.current)
|
|
2075
|
+
? new dates.DateRange(sourceDate.current, _date)
|
|
2076
|
+
: new dates.DateRange(_date, sourceDate.current);
|
|
2077
|
+
sourceDate.current = _date;
|
|
2078
|
+
setRange(range);
|
|
2079
|
+
formControl?.setValue(range);
|
|
2080
|
+
}, [date, sourceDate.current, formControl]);
|
|
2072
2081
|
require$$0.useEffect(() => {
|
|
2073
2082
|
return i18n.i18nSubscribe(() => {
|
|
2074
2083
|
setHeaders(jsxRuntimeExports.jsx(RlsPickerDayRangeHeaders, {}));
|
|
2075
2084
|
});
|
|
2076
2085
|
}, []);
|
|
2077
2086
|
require$$0.useEffect(() => {
|
|
2078
|
-
setComponent(jsxRuntimeExports.jsx("div", { className: "rls-picker-day-range__component", children: weeks.map(({ days }, index) => (jsxRuntimeExports.jsx("div", { className: "rls-picker-day-range__week", children: days.map((day, index) => (jsxRuntimeExports.jsx(
|
|
2079
|
-
}, [weeks]);
|
|
2087
|
+
setComponent(jsxRuntimeExports.jsx("div", { className: "rls-picker-day-range__component", children: weeks.map(({ days }, index) => (jsxRuntimeExports.jsx("div", { className: "rls-picker-day-range__week", children: days.map((day, index) => (jsxRuntimeExports.jsx(RlsPickerDayRangeElement, { day: day, onSelect: onSelect, disabled: disabled }, index))) }, index))) }));
|
|
2088
|
+
}, [weeks, onSelect, disabled]);
|
|
2080
2089
|
require$$0.useEffect(() => {
|
|
2081
2090
|
setWeeks(components.createDayRangePicker({
|
|
2082
2091
|
date,
|
|
@@ -2089,19 +2098,10 @@ function RlsPickerDayRange({ date: _date, disabled, formControl, maxDate, minDat
|
|
|
2089
2098
|
const title = require$$0.useMemo(() => {
|
|
2090
2099
|
return (jsxRuntimeExports.jsx("div", { className: "rls-picker-day-range__title", children: dates.dateFormatTemplate(sourceDate.current, formatRange) }));
|
|
2091
2100
|
}, [sourceDate.current]);
|
|
2092
|
-
const onSelect = require$$0.useCallback((value) => {
|
|
2093
|
-
const _date = dates.assignDayInDate(date, value);
|
|
2094
|
-
const range = dates.dateIsBefore(_date, sourceDate.current)
|
|
2095
|
-
? new dates.DateRange(sourceDate.current, _date)
|
|
2096
|
-
: new dates.DateRange(_date, sourceDate.current);
|
|
2097
|
-
sourceDate.current = _date;
|
|
2098
|
-
setRange(range);
|
|
2099
|
-
formControl?.setValue(range);
|
|
2100
|
-
}, [date, sourceDate.current, formControl]);
|
|
2101
2101
|
return (jsxRuntimeExports.jsxs("div", { className: "rls-picker-day-range", "rls-theme": rlsTheme, children: [title, headers, component] }));
|
|
2102
2102
|
}
|
|
2103
2103
|
|
|
2104
|
-
function
|
|
2104
|
+
function RlsPickerMonthElement({ month, onSelect, disabled }) {
|
|
2105
2105
|
const [label, setLabel] = require$$0.useState(dates.MONTH_NAMES(month.value));
|
|
2106
2106
|
require$$0.useEffect(() => {
|
|
2107
2107
|
return i18n.i18nSubscribe(() => {
|
|
@@ -2128,9 +2128,16 @@ function RlsPickerMonth({ date: _date, disabled, formControl, maxDate, minDate,
|
|
|
2128
2128
|
const [months, setMonths] = require$$0.useState([]);
|
|
2129
2129
|
const [value, setValue] = require$$0.useState(formControl?.value ?? date.getMonth());
|
|
2130
2130
|
const [component, setComponent] = require$$0.useState(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, {}));
|
|
2131
|
+
const setMonthValue = require$$0.useCallback((value) => {
|
|
2132
|
+
formControl ? formControl.setValue(value) : setValue(value);
|
|
2133
|
+
}, [formControl]);
|
|
2134
|
+
const onSelect = require$$0.useCallback((value) => {
|
|
2135
|
+
setMonthValue(value);
|
|
2136
|
+
onValue && onValue(value);
|
|
2137
|
+
}, [setMonthValue, onValue]);
|
|
2131
2138
|
require$$0.useEffect(() => {
|
|
2132
|
-
setComponent(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: months.map((month, index) => (jsxRuntimeExports.jsx(
|
|
2133
|
-
}, [months]);
|
|
2139
|
+
setComponent(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: months.map((month, index) => (jsxRuntimeExports.jsx(RlsPickerMonthElement, { month: month, onSelect: onSelect, disabled: disabled }, index))) }));
|
|
2140
|
+
}, [months, onSelect, disabled]);
|
|
2134
2141
|
require$$0.useEffect(() => {
|
|
2135
2142
|
const options = {
|
|
2136
2143
|
date,
|
|
@@ -2156,13 +2163,6 @@ function RlsPickerMonth({ date: _date, disabled, formControl, maxDate, minDate,
|
|
|
2156
2163
|
? formControl?.setValue(month)
|
|
2157
2164
|
: setValue(formControl?.value ?? date.getMonth());
|
|
2158
2165
|
}, [formControl?.value]);
|
|
2159
|
-
const setMonthValue = require$$0.useCallback((value) => {
|
|
2160
|
-
formControl ? formControl.setValue(value) : setValue(value);
|
|
2161
|
-
}, [formControl]);
|
|
2162
|
-
const onSelect = require$$0.useCallback((value) => {
|
|
2163
|
-
setMonthValue(value);
|
|
2164
|
-
onValue && onValue(value);
|
|
2165
|
-
}, [setMonthValue, onValue]);
|
|
2166
2166
|
return (jsxRuntimeExports.jsx("div", { className: "rls-picker-month", "rls-theme": rlsTheme, children: component }));
|
|
2167
2167
|
}
|
|
2168
2168
|
|
|
@@ -2223,7 +2223,7 @@ function RlsPickerSelectorTitle({ monthControl, type, yearControl, date, disable
|
|
|
2223
2223
|
return (jsxRuntimeExports.jsxs("div", { className: "rls-picker-selector-title", children: [jsxRuntimeExports.jsx(RlsButtonAction, { icon: "arrow-ios-left", onClick: onPrevious, disabled: limitPrevious || disabled }), jsxRuntimeExports.jsx("span", { onClick: onClick, children: label }), jsxRuntimeExports.jsx(RlsButtonAction, { icon: "arrow-ios-right", onClick: onNext, disabled: limitNext || disabled })] }));
|
|
2224
2224
|
}
|
|
2225
2225
|
|
|
2226
|
-
function
|
|
2226
|
+
function RlsPickerYearElement({ onSelect, year, disabled }) {
|
|
2227
2227
|
const className = require$$0.useMemo(() => {
|
|
2228
2228
|
return renderClassStatus('rls-picker-year__element', {
|
|
2229
2229
|
disabled: year.disabled || disabled,
|
|
@@ -2250,34 +2250,34 @@ function RlsPickerYear({ date: _date, disabled, formControl, maxDate, minDate, o
|
|
|
2250
2250
|
};
|
|
2251
2251
|
}, [date, year, minDate, maxDate]);
|
|
2252
2252
|
const [template, setTemplate] = require$$0.useState(components.createYearPicker(createPickerOptions()));
|
|
2253
|
+
const setYearValue = require$$0.useCallback((value) => {
|
|
2254
|
+
formControl ? formControl.setValue(value) : setValue(value);
|
|
2255
|
+
setYear(value);
|
|
2256
|
+
}, [formControl]);
|
|
2257
|
+
const onSelect = require$$0.useCallback((value) => {
|
|
2258
|
+
setYearValue(value);
|
|
2259
|
+
onValue && onValue(value);
|
|
2260
|
+
}, [setYearValue, onValue]);
|
|
2253
2261
|
require$$0.useEffect(() => {
|
|
2254
2262
|
const options = createPickerOptions(); // YearPickerProps
|
|
2255
2263
|
const year = components.verifyYearPicker(options);
|
|
2256
2264
|
year ? setYearValue(year) : setTemplate(components.createYearPicker(options));
|
|
2257
2265
|
}, [date, year, value, minDate, maxDate]);
|
|
2258
2266
|
require$$0.useEffect(() => {
|
|
2259
|
-
setComponent(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: template.years.map((year, index) => (jsxRuntimeExports.jsx(
|
|
2260
|
-
}, [template.years]);
|
|
2267
|
+
setComponent(jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: template.years.map((year, index) => (jsxRuntimeExports.jsx(RlsPickerYearElement, { year: year, onSelect: onSelect, disabled: disabled }, index))) }));
|
|
2268
|
+
}, [template.years, onSelect, disabled]);
|
|
2261
2269
|
require$$0.useEffect(() => {
|
|
2262
2270
|
const year = components.verifyYearPicker(createPickerOptions());
|
|
2263
2271
|
commons.itIsDefined(year)
|
|
2264
2272
|
? formControl?.setValue(year)
|
|
2265
2273
|
: setValue(formControl?.value ?? date.getFullYear());
|
|
2266
2274
|
}, [formControl?.value]);
|
|
2267
|
-
const setYearValue = require$$0.useCallback((value) => {
|
|
2268
|
-
formControl ? formControl.setValue(value) : setValue(value);
|
|
2269
|
-
setYear(value);
|
|
2270
|
-
}, [formControl]);
|
|
2271
2275
|
const onClickPrev = require$$0.useCallback(() => {
|
|
2272
2276
|
setYear((year) => year - 8);
|
|
2273
2277
|
}, []);
|
|
2274
2278
|
const onClickNext = require$$0.useCallback(() => {
|
|
2275
2279
|
setYear((year) => year + 8);
|
|
2276
2280
|
}, []);
|
|
2277
|
-
const onSelect = require$$0.useCallback((value) => {
|
|
2278
|
-
setYearValue(value);
|
|
2279
|
-
onValue && onValue(value);
|
|
2280
|
-
}, [setYearValue, onValue]);
|
|
2281
2281
|
return (jsxRuntimeExports.jsxs("div", { className: "rls-picker-year", "rls-theme": rlsTheme, children: [jsxRuntimeExports.jsxs("div", { className: "rls-picker-year__header", children: [jsxRuntimeExports.jsx("div", { className: "rls-picker-year__action rls-picker-year__action--prev", children: jsxRuntimeExports.jsx(RlsButtonAction, { icon: "arrow-ios-left", onClick: onClickPrev, disabled: !template.canPrevious || disabled }) }), jsxRuntimeExports.jsxs("label", { className: "rls-title-bold", children: [template.minRange, " - ", template.maxRange] }), jsxRuntimeExports.jsx("div", { className: "rls-picker-year__action rls-picker-year__action--next", children: jsxRuntimeExports.jsx(RlsButtonAction, { icon: "arrow-ios-right", onClick: onClickNext, disabled: !template.canNext || disabled }) })] }), jsxRuntimeExports.jsx("div", { className: "rls-picker-year__component", children: component })] }));
|
|
2282
2282
|
}
|
|
2283
2283
|
|
|
@@ -2450,23 +2450,23 @@ function calculateMinHeightList(count, height) {
|
|
|
2450
2450
|
}
|
|
2451
2451
|
function useListController(props) {
|
|
2452
2452
|
const { count, suggestions, automatic, formControl, lineHeight, reference } = props;
|
|
2453
|
+
const refContent = require$$0.useRef(null);
|
|
2454
|
+
const refList = require$$0.useRef(null);
|
|
2455
|
+
const refInput = require$$0.useRef(null);
|
|
2453
2456
|
const listIsOpen = require$$0.useRef(false);
|
|
2454
|
-
const contentRef = require$$0.useRef(null);
|
|
2455
|
-
const listRef = require$$0.useRef(null);
|
|
2456
|
-
const inputRef = require$$0.useRef(null);
|
|
2457
2457
|
const [collection, setCollection] = require$$0.useState(new components.ListCollection(suggestions));
|
|
2458
2458
|
const [state, refreshState] = require$$0.useState({
|
|
2459
2459
|
focused: false,
|
|
2460
2460
|
higher: false,
|
|
2461
|
-
|
|
2462
|
-
|
|
2461
|
+
modalIsVisible: false,
|
|
2462
|
+
value: ''
|
|
2463
2463
|
});
|
|
2464
|
+
const changeValueInternal = require$$0.useRef(false);
|
|
2464
2465
|
const position = require$$0.useRef(0);
|
|
2465
2466
|
const valueProtected = require$$0.useRef();
|
|
2466
|
-
const changeValueInternal = require$$0.useRef(false);
|
|
2467
2467
|
require$$0.useEffect(() => {
|
|
2468
2468
|
function onCloseSuggestions({ target }) {
|
|
2469
|
-
!
|
|
2469
|
+
!refContent?.current?.contains(target) &&
|
|
2470
2470
|
refreshState((state) => ({ ...state, modalIsVisible: false }));
|
|
2471
2471
|
}
|
|
2472
2472
|
document.addEventListener('click', onCloseSuggestions);
|
|
@@ -2516,7 +2516,7 @@ function useListController(props) {
|
|
|
2516
2516
|
const _state = state.modalIsVisible
|
|
2517
2517
|
? {
|
|
2518
2518
|
...state,
|
|
2519
|
-
higher: components.locationListCanTop(
|
|
2519
|
+
higher: components.locationListCanTop(refContent.current, refList.current, minHeightList)
|
|
2520
2520
|
}
|
|
2521
2521
|
: state;
|
|
2522
2522
|
refreshState((state) => ({ ...state, ..._state }));
|
|
@@ -2534,29 +2534,29 @@ function useListController(props) {
|
|
|
2534
2534
|
const navigationInput = require$$0.useCallback((event) => {
|
|
2535
2535
|
if (state.modalIsVisible) {
|
|
2536
2536
|
const _position = components.navigationListFromInput({
|
|
2537
|
-
content:
|
|
2537
|
+
content: refContent.current,
|
|
2538
2538
|
event: event,
|
|
2539
|
-
list:
|
|
2539
|
+
list: refList.current
|
|
2540
2540
|
});
|
|
2541
2541
|
position.current = _position ?? 0;
|
|
2542
2542
|
}
|
|
2543
2543
|
}, [state.modalIsVisible]);
|
|
2544
2544
|
const navigationElement = require$$0.useCallback((event) => {
|
|
2545
2545
|
position.current = components.navigationListFromElement({
|
|
2546
|
-
content:
|
|
2546
|
+
content: refContent.current,
|
|
2547
2547
|
event: event,
|
|
2548
|
-
input:
|
|
2549
|
-
list:
|
|
2548
|
+
input: refInput.current,
|
|
2549
|
+
list: refList.current,
|
|
2550
2550
|
position: position.current
|
|
2551
2551
|
});
|
|
2552
2552
|
}, [state.modalIsVisible]);
|
|
2553
2553
|
return {
|
|
2554
2554
|
...state,
|
|
2555
|
-
contentRef,
|
|
2556
|
-
inputRef,
|
|
2557
|
-
listRef,
|
|
2558
2555
|
navigationElement,
|
|
2559
2556
|
navigationInput,
|
|
2557
|
+
refContent,
|
|
2558
|
+
refInput,
|
|
2559
|
+
refList,
|
|
2560
2560
|
setFormValue,
|
|
2561
2561
|
setState
|
|
2562
2562
|
};
|
|
@@ -2595,6 +2595,9 @@ function useFieldAutocomplete(props) {
|
|
|
2595
2595
|
require$$0.useEffect(() => {
|
|
2596
2596
|
refreshCoincidences(props.suggestions, pattern);
|
|
2597
2597
|
}, [pattern]);
|
|
2598
|
+
require$$0.useEffect(() => {
|
|
2599
|
+
props.disabled && controller.setState({ focused: false });
|
|
2600
|
+
}, [props.disabled]);
|
|
2598
2601
|
const onFocusInput = require$$0.useCallback(() => {
|
|
2599
2602
|
controller.setState({ focused: true });
|
|
2600
2603
|
}, [controller.setState]);
|
|
@@ -2615,7 +2618,7 @@ function useFieldAutocomplete(props) {
|
|
|
2615
2618
|
const onClickControl = require$$0.useCallback(() => {
|
|
2616
2619
|
controller.setState({ modalIsVisible: true });
|
|
2617
2620
|
setTimeout(() => {
|
|
2618
|
-
controller.
|
|
2621
|
+
controller.refInput?.current?.focus();
|
|
2619
2622
|
}, DURATION_ANIMATION$1);
|
|
2620
2623
|
}, [controller.setState]);
|
|
2621
2624
|
const onClickAction = require$$0.useCallback(() => {
|
|
@@ -2645,7 +2648,7 @@ function useFieldAutocomplete(props) {
|
|
|
2645
2648
|
}
|
|
2646
2649
|
if (props.selectionContinuos) {
|
|
2647
2650
|
setPattern('');
|
|
2648
|
-
controller.
|
|
2651
|
+
controller.refInput?.current?.focus();
|
|
2649
2652
|
}
|
|
2650
2653
|
else {
|
|
2651
2654
|
controller.setState({ modalIsVisible: false });
|
|
@@ -2731,7 +2734,7 @@ function RlsFieldAutocompleteTemplate(props) {
|
|
|
2731
2734
|
event.key === 'Enter' && onSearch && onSearch(autocomplete.pattern);
|
|
2732
2735
|
autocomplete.onKeydownInput(event);
|
|
2733
2736
|
}, [autocomplete.onKeydownInput, onSearch, autocomplete.pattern]);
|
|
2734
|
-
return (jsxRuntimeExports.jsxs("div", { id: props.identifier, ref: autocomplete.
|
|
2737
|
+
return (jsxRuntimeExports.jsxs("div", { id: props.identifier, ref: autocomplete.refContent, 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: autocomplete.value, onClick: autocomplete.onClickControl }), jsxRuntimeExports.jsx("button", { className: "rls-field-list__action", disabled: disabled, onClick: autocomplete.onClickAction, children: jsxRuntimeExports.jsx(RlsIcon, { value: autocomplete.value ? 'trash-2' : 'arrow-ios-down' }) })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl })), jsxRuntimeExports.jsxs("div", { className: classNameList, children: [jsxRuntimeExports.jsx("div", { className: "rls-field-list__suggestions__body", children: jsxRuntimeExports.jsxs("ul", { ref: autocomplete.refList, className: "rls-field-list__ul", children: [jsxRuntimeExports.jsxs("div", { className: "rls-field-list__ul__search", children: [jsxRuntimeExports.jsx("input", { ref: autocomplete.refInput, className: "rls-field-list__ul__control", type: "text", placeholder: labels.listInputPlaceholder, value: autocomplete.pattern, onChange: onChangePattern, onFocus: autocomplete.onFocusInput, onBlur: autocomplete.onBlurInput, onKeyDown: onKeyDownPattern, disabled: disabled || searching }), onSearch && (jsxRuntimeExports.jsx("button", { disabled: disabled || searching, onClick: onClickPattern, 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 rls-truncate", children: labels.listEmptyTitle }), jsxRuntimeExports.jsx("p", { className: "rls-caption-regular", children: labels.listEmptyDescription })] }) }))] }) }), jsxRuntimeExports.jsx("div", { className: "rls-field-list__backdrop", onClick: autocomplete.onClickBackdrop })] })] }));
|
|
2735
2738
|
}
|
|
2736
2739
|
function RlsFieldAutocomplete(props) {
|
|
2737
2740
|
const render = require$$0.useCallback((element) => (jsxRuntimeExports.jsx(RlsBallot, { subtitle: element.subtitle, img: element.img, initials: element.initials, children: jsxRuntimeExports.jsx("span", { children: element.title }) })), []);
|
|
@@ -2995,6 +2998,9 @@ function useFieldSelect(props) {
|
|
|
2995
2998
|
require$$0.useEffect(() => {
|
|
2996
2999
|
count.current = props.suggestions.length;
|
|
2997
3000
|
}, [props.suggestions]);
|
|
3001
|
+
require$$0.useEffect(() => {
|
|
3002
|
+
props.disabled && controller.setState({ focused: false });
|
|
3003
|
+
}, [props.disabled]);
|
|
2998
3004
|
const onFocusInput = require$$0.useCallback(() => {
|
|
2999
3005
|
controller.setState({ focused: true });
|
|
3000
3006
|
}, [controller.setState]);
|
|
@@ -3029,7 +3035,7 @@ function useFieldSelect(props) {
|
|
|
3029
3035
|
else {
|
|
3030
3036
|
const modalIsVisible = !controller.modalIsVisible;
|
|
3031
3037
|
controller.setState({ modalIsVisible });
|
|
3032
|
-
modalIsVisible && controller.
|
|
3038
|
+
modalIsVisible && controller.refInput?.current?.focus();
|
|
3033
3039
|
}
|
|
3034
3040
|
}, [
|
|
3035
3041
|
controller.modalIsVisible,
|
|
@@ -3043,7 +3049,7 @@ function useFieldSelect(props) {
|
|
|
3043
3049
|
controller.setState({ modalIsVisible: false });
|
|
3044
3050
|
}, [controller.setState]);
|
|
3045
3051
|
const onChange = require$$0.useCallback((element) => {
|
|
3046
|
-
controller.
|
|
3052
|
+
!props.disabled && controller.refInput?.current?.focus();
|
|
3047
3053
|
if (props.onSelect) {
|
|
3048
3054
|
controller.setState({ modalIsVisible: false });
|
|
3049
3055
|
element.value && props.onSelect(element.value);
|
|
@@ -3057,7 +3063,8 @@ function useFieldSelect(props) {
|
|
|
3057
3063
|
controller.setState,
|
|
3058
3064
|
controller.setFormValue,
|
|
3059
3065
|
props.onSelect,
|
|
3060
|
-
props.onValue
|
|
3066
|
+
props.onValue,
|
|
3067
|
+
props.disabled
|
|
3061
3068
|
]);
|
|
3062
3069
|
const onClickElement = require$$0.useCallback((element) => {
|
|
3063
3070
|
return () => {
|
|
@@ -3104,9 +3111,9 @@ function RlsFieldSelectTemplate(props) {
|
|
|
3104
3111
|
}, [formControl?.disabled, props.disabled]);
|
|
3105
3112
|
const className = require$$0.useMemo(() => {
|
|
3106
3113
|
return renderClassStatus('rls-field-box', {
|
|
3107
|
-
|
|
3114
|
+
focused: select.focused && !disabled,
|
|
3108
3115
|
error: formControl?.wrong,
|
|
3109
|
-
|
|
3116
|
+
disabled: disabled
|
|
3110
3117
|
}, 'rls-field-list rls-field-select');
|
|
3111
3118
|
}, [formControl?.wrong, select.focused, disabled]);
|
|
3112
3119
|
const classNameList = require$$0.useMemo(() => {
|
|
@@ -3115,7 +3122,7 @@ function RlsFieldSelectTemplate(props) {
|
|
|
3115
3122
|
visible: select.modalIsVisible
|
|
3116
3123
|
});
|
|
3117
3124
|
}, [select.modalIsVisible, select.higher]);
|
|
3118
|
-
return (jsxRuntimeExports.jsxs("div", { id: props.identifier, ref: select.
|
|
3125
|
+
return (jsxRuntimeExports.jsxs("div", { id: props.identifier, ref: select.refContent, 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: select.refInput, className: "rls-field-list__control", readOnly: true, placeholder: placeholder, value: select.value, onFocus: select.onFocusInput, onBlur: select.onBlurInput, onClick: select.onClickInput, onKeyDown: select.onKeydownInput, disabled: disabled }), jsxRuntimeExports.jsx("button", { className: 'rls-field-list__action', disabled: disabled, onClick: select.onClickAction, children: jsxRuntimeExports.jsx(RlsIcon, { value: !unremovable && !!select.value ? 'close' : 'arrow-ios-down' }) })] }) }), !msgErrorDisabled && (jsxRuntimeExports.jsx(RlsMessageFormError, { className: "rls-field-box__error", formControl: formControl })), jsxRuntimeExports.jsxs("div", { className: classNameList, children: [jsxRuntimeExports.jsx("div", { className: "rls-field-list__suggestions__body", children: jsxRuntimeExports.jsxs("ul", { ref: select.refList, className: "rls-field-list__ul", children: [suggestions.map((element, index) => (jsxRuntimeExports.jsx("li", { className: "rls-field-list__element", tabIndex: -1, onClick: select.onClickElement(element), onKeyDown: select.onKeydownElement(element), children: render(element) }, index))), !suggestions.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 rls-truncate", children: labels.listEmptyTitle }), jsxRuntimeExports.jsx("p", { className: "rls-caption-regular", children: labels.listEmptyDescription })] }) }))] }) }), jsxRuntimeExports.jsx("div", { className: "rls-field-list__backdrop", onClick: select.onClickBackdrop })] })] }));
|
|
3119
3126
|
}
|
|
3120
3127
|
function RlsFieldSelect(props) {
|
|
3121
3128
|
const render = require$$0.useCallback((element) => (jsxRuntimeExports.jsx(RlsBallot, { subtitle: element.subtitle, img: element.img, initials: element.initials, children: jsxRuntimeExports.jsx("span", { children: element.title }) })), []);
|