@rolster/react-components 1.4.0
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/LICENSE +21 -0
- package/dist/cjs/assets/lib.cjs-7185a838.css +2080 -0
- package/dist/cjs/lib.cjs.js +3326 -0
- package/dist/cjs/lib.cjs.js.map +1 -0
- package/dist/es/assets/lib-7185a838.css +2080 -0
- package/dist/es/lib.js +3260 -0
- package/dist/es/lib.js.map +1 -0
- package/dist/esm/components/atoms/Amount/Amount.css +6 -0
- package/dist/esm/components/atoms/Amount/Amount.d.ts +8 -0
- package/dist/esm/components/atoms/Amount/Amount.js +8 -0
- package/dist/esm/components/atoms/Amount/Amount.js.map +1 -0
- package/dist/esm/components/atoms/Avatar/Avatar.css +28 -0
- package/dist/esm/components/atoms/Avatar/Avatar.d.ts +8 -0
- package/dist/esm/components/atoms/Avatar/Avatar.js +7 -0
- package/dist/esm/components/atoms/Avatar/Avatar.js.map +1 -0
- package/dist/esm/components/atoms/Breadcrumb/Breadcrumb.css +57 -0
- package/dist/esm/components/atoms/Breadcrumb/Breadcrumb.d.ts +10 -0
- package/dist/esm/components/atoms/Breadcrumb/Breadcrumb.js +6 -0
- package/dist/esm/components/atoms/Breadcrumb/Breadcrumb.js.map +1 -0
- package/dist/esm/components/atoms/Button/Button.css +133 -0
- package/dist/esm/components/atoms/Button/Button.d.ts +13 -0
- package/dist/esm/components/atoms/Button/Button.js +8 -0
- package/dist/esm/components/atoms/Button/Button.js.map +1 -0
- package/dist/esm/components/atoms/ButtonAction/ButtonAction.css +93 -0
- package/dist/esm/components/atoms/ButtonAction/ButtonAction.d.ts +11 -0
- package/dist/esm/components/atoms/ButtonAction/ButtonAction.js +7 -0
- package/dist/esm/components/atoms/ButtonAction/ButtonAction.js.map +1 -0
- package/dist/esm/components/atoms/CheckBox/CheckBox.css +33 -0
- package/dist/esm/components/atoms/CheckBox/CheckBox.d.ts +8 -0
- package/dist/esm/components/atoms/CheckBox/CheckBox.js +7 -0
- package/dist/esm/components/atoms/CheckBox/CheckBox.js.map +1 -0
- package/dist/esm/components/atoms/Icon/Icon.css +23 -0
- package/dist/esm/components/atoms/Icon/Icon.d.ts +7 -0
- package/dist/esm/components/atoms/Icon/Icon.js +7 -0
- package/dist/esm/components/atoms/Icon/Icon.js.map +1 -0
- package/dist/esm/components/atoms/Input/Input.css +63 -0
- package/dist/esm/components/atoms/Input/Input.d.ts +13 -0
- package/dist/esm/components/atoms/Input/Input.js +34 -0
- package/dist/esm/components/atoms/Input/Input.js.map +1 -0
- package/dist/esm/components/atoms/InputMoney/InputMoney.css +7 -0
- package/dist/esm/components/atoms/InputMoney/InputMoney.d.ts +12 -0
- package/dist/esm/components/atoms/InputMoney/InputMoney.js +15 -0
- package/dist/esm/components/atoms/InputMoney/InputMoney.js.map +1 -0
- package/dist/esm/components/atoms/InputNumber/InputNumber.css +7 -0
- package/dist/esm/components/atoms/InputNumber/InputNumber.d.ts +10 -0
- package/dist/esm/components/atoms/InputNumber/InputNumber.js +14 -0
- package/dist/esm/components/atoms/InputNumber/InputNumber.js.map +1 -0
- package/dist/esm/components/atoms/InputPassword/InputPassword.css +38 -0
- package/dist/esm/components/atoms/InputPassword/InputPassword.d.ts +12 -0
- package/dist/esm/components/atoms/InputPassword/InputPassword.js +24 -0
- package/dist/esm/components/atoms/InputPassword/InputPassword.js.map +1 -0
- package/dist/esm/components/atoms/InputText/InputText.css +7 -0
- package/dist/esm/components/atoms/InputText/InputText.d.ts +10 -0
- package/dist/esm/components/atoms/InputText/InputText.js +14 -0
- package/dist/esm/components/atoms/InputText/InputText.js.map +1 -0
- package/dist/esm/components/atoms/Poster/Poster.css +12 -0
- package/dist/esm/components/atoms/Poster/Poster.d.ts +3 -0
- package/dist/esm/components/atoms/Poster/Poster.js +6 -0
- package/dist/esm/components/atoms/Poster/Poster.js.map +1 -0
- package/dist/esm/components/atoms/ProgressBar/ProgressBar.css +66 -0
- package/dist/esm/components/atoms/ProgressBar/ProgressBar.d.ts +8 -0
- package/dist/esm/components/atoms/ProgressBar/ProgressBar.js +7 -0
- package/dist/esm/components/atoms/ProgressBar/ProgressBar.js.map +1 -0
- package/dist/esm/components/atoms/RadioButton/RadioButton.css +33 -0
- package/dist/esm/components/atoms/RadioButton/RadioButton.d.ts +8 -0
- package/dist/esm/components/atoms/RadioButton/RadioButton.js +7 -0
- package/dist/esm/components/atoms/RadioButton/RadioButton.js.map +1 -0
- package/dist/esm/components/atoms/SearchInput/SearchInput.css +10 -0
- package/dist/esm/components/atoms/SearchInput/SearchInput.d.ts +9 -0
- package/dist/esm/components/atoms/SearchInput/SearchInput.js +8 -0
- package/dist/esm/components/atoms/SearchInput/SearchInput.js.map +1 -0
- package/dist/esm/components/atoms/Skeleton/Skeleton.css +36 -0
- package/dist/esm/components/atoms/Skeleton/Skeleton.d.ts +3 -0
- package/dist/esm/components/atoms/Skeleton/Skeleton.js +6 -0
- package/dist/esm/components/atoms/Skeleton/Skeleton.js.map +1 -0
- package/dist/esm/components/atoms/SkeletonText/SkeletonText.css +59 -0
- package/dist/esm/components/atoms/SkeletonText/SkeletonText.d.ts +7 -0
- package/dist/esm/components/atoms/SkeletonText/SkeletonText.js +7 -0
- package/dist/esm/components/atoms/SkeletonText/SkeletonText.js.map +1 -0
- package/dist/esm/components/atoms/Switch/Switch.css +35 -0
- package/dist/esm/components/atoms/Switch/Switch.d.ts +9 -0
- package/dist/esm/components/atoms/Switch/Switch.js +7 -0
- package/dist/esm/components/atoms/Switch/Switch.js.map +1 -0
- package/dist/esm/components/atoms/TabularText/TabularText.css +15 -0
- package/dist/esm/components/atoms/TabularText/TabularText.d.ts +6 -0
- package/dist/esm/components/atoms/TabularText/TabularText.js +11 -0
- package/dist/esm/components/atoms/TabularText/TabularText.js.map +1 -0
- package/dist/esm/components/atoms/index.d.ts +20 -0
- package/dist/esm/components/atoms/index.js +21 -0
- package/dist/esm/components/atoms/index.js.map +1 -0
- package/dist/esm/components/definitions.d.ts +6 -0
- package/dist/esm/components/definitions.js +2 -0
- package/dist/esm/components/definitions.js.map +1 -0
- package/dist/esm/components/index.d.ts +4 -0
- package/dist/esm/components/index.js +5 -0
- package/dist/esm/components/index.js.map +1 -0
- package/dist/esm/components/molecules/Ballot/Ballot.css +58 -0
- package/dist/esm/components/molecules/Ballot/Ballot.d.ts +11 -0
- package/dist/esm/components/molecules/Ballot/Ballot.js +8 -0
- package/dist/esm/components/molecules/Ballot/Ballot.js.map +1 -0
- package/dist/esm/components/molecules/ButtonToggle/ButtonToggle.css +78 -0
- package/dist/esm/components/molecules/ButtonToggle/ButtonToggle.d.ts +16 -0
- package/dist/esm/components/molecules/ButtonToggle/ButtonToggle.js +40 -0
- package/dist/esm/components/molecules/ButtonToggle/ButtonToggle.js.map +1 -0
- package/dist/esm/components/molecules/CheckBoxLabel/CheckBoxLabel.css +40 -0
- package/dist/esm/components/molecules/CheckBoxLabel/CheckBoxLabel.d.ts +10 -0
- package/dist/esm/components/molecules/CheckBoxLabel/CheckBoxLabel.js +24 -0
- package/dist/esm/components/molecules/CheckBoxLabel/CheckBoxLabel.js.map +1 -0
- package/dist/esm/components/molecules/DayPicker/DayPicker.css +66 -0
- package/dist/esm/components/molecules/DayPicker/DayPicker.d.ts +12 -0
- package/dist/esm/components/molecules/DayPicker/DayPicker.js +39 -0
- package/dist/esm/components/molecules/DayPicker/DayPicker.js.map +1 -0
- package/dist/esm/components/molecules/DayRangePicker/DayRangePicker.css +68 -0
- package/dist/esm/components/molecules/DayRangePicker/DayRangePicker.d.ts +13 -0
- package/dist/esm/components/molecules/DayRangePicker/DayRangePicker.js +37 -0
- package/dist/esm/components/molecules/DayRangePicker/DayRangePicker.js.map +1 -0
- package/dist/esm/components/molecules/MoneyField/MoneyField.css +7 -0
- package/dist/esm/components/molecules/MoneyField/MoneyField.d.ts +12 -0
- package/dist/esm/components/molecules/MoneyField/MoneyField.js +13 -0
- package/dist/esm/components/molecules/MoneyField/MoneyField.js.map +1 -0
- package/dist/esm/components/molecules/MonthPicker/MonthPicker.css +40 -0
- package/dist/esm/components/molecules/MonthPicker/MonthPicker.d.ts +12 -0
- package/dist/esm/components/molecules/MonthPicker/MonthPicker.js +27 -0
- package/dist/esm/components/molecules/MonthPicker/MonthPicker.js.map +1 -0
- package/dist/esm/components/molecules/MonthTitlePicker/MonthTitlePicker.css +16 -0
- package/dist/esm/components/molecules/MonthTitlePicker/MonthTitlePicker.d.ts +12 -0
- package/dist/esm/components/molecules/MonthTitlePicker/MonthTitlePicker.js +43 -0
- package/dist/esm/components/molecules/MonthTitlePicker/MonthTitlePicker.js.map +1 -0
- package/dist/esm/components/molecules/NumberField/NumberField.css +7 -0
- package/dist/esm/components/molecules/NumberField/NumberField.d.ts +10 -0
- package/dist/esm/components/molecules/NumberField/NumberField.js +13 -0
- package/dist/esm/components/molecules/NumberField/NumberField.js.map +1 -0
- package/dist/esm/components/molecules/Pagination/Pagination.css +66 -0
- package/dist/esm/components/molecules/Pagination/Pagination.d.ts +27 -0
- package/dist/esm/components/molecules/Pagination/Pagination.js +219 -0
- package/dist/esm/components/molecules/Pagination/Pagination.js.map +1 -0
- package/dist/esm/components/molecules/PasswordField/PasswordField.css +12 -0
- package/dist/esm/components/molecules/PasswordField/PasswordField.d.ts +10 -0
- package/dist/esm/components/molecules/PasswordField/PasswordField.js +18 -0
- package/dist/esm/components/molecules/PasswordField/PasswordField.js.map +1 -0
- package/dist/esm/components/molecules/RadioButtonLabel/RadioButtonLabel.css +40 -0
- package/dist/esm/components/molecules/RadioButtonLabel/RadioButtonLabel.d.ts +11 -0
- package/dist/esm/components/molecules/RadioButtonLabel/RadioButtonLabel.js +21 -0
- package/dist/esm/components/molecules/RadioButtonLabel/RadioButtonLabel.js.map +1 -0
- package/dist/esm/components/molecules/SwitchLabel/SwitchLabel.css +40 -0
- package/dist/esm/components/molecules/SwitchLabel/SwitchLabel.d.ts +10 -0
- package/dist/esm/components/molecules/SwitchLabel/SwitchLabel.js +21 -0
- package/dist/esm/components/molecules/SwitchLabel/SwitchLabel.js.map +1 -0
- package/dist/esm/components/molecules/TextField/TextField.css +7 -0
- package/dist/esm/components/molecules/TextField/TextField.d.ts +10 -0
- package/dist/esm/components/molecules/TextField/TextField.js +13 -0
- package/dist/esm/components/molecules/TextField/TextField.js.map +1 -0
- package/dist/esm/components/molecules/Toolbar/Toolbar.css +50 -0
- package/dist/esm/components/molecules/Toolbar/Toolbar.d.ts +9 -0
- package/dist/esm/components/molecules/Toolbar/Toolbar.js +6 -0
- package/dist/esm/components/molecules/Toolbar/Toolbar.js.map +1 -0
- package/dist/esm/components/molecules/YearPicker/YearPicker.css +77 -0
- package/dist/esm/components/molecules/YearPicker/YearPicker.d.ts +12 -0
- package/dist/esm/components/molecules/YearPicker/YearPicker.js +46 -0
- package/dist/esm/components/molecules/YearPicker/YearPicker.js.map +1 -0
- package/dist/esm/components/molecules/index.d.ts +16 -0
- package/dist/esm/components/molecules/index.js +17 -0
- package/dist/esm/components/molecules/index.js.map +1 -0
- package/dist/esm/components/organisms/AutocompleteField/AutocompleteField.css +71 -0
- package/dist/esm/components/organisms/AutocompleteField/AutocompleteField.d.ts +14 -0
- package/dist/esm/components/organisms/AutocompleteField/AutocompleteField.js +161 -0
- package/dist/esm/components/organisms/AutocompleteField/AutocompleteField.js.map +1 -0
- package/dist/esm/components/organisms/Card/Card.css +11 -0
- package/dist/esm/components/organisms/Card/Card.d.ts +3 -0
- package/dist/esm/components/organisms/Card/Card.js +6 -0
- package/dist/esm/components/organisms/Card/Card.js.map +1 -0
- package/dist/esm/components/organisms/Confirmation/Confirmation.css +125 -0
- package/dist/esm/components/organisms/Confirmation/Confirmation.d.ts +38 -0
- package/dist/esm/components/organisms/Confirmation/Confirmation.js +64 -0
- package/dist/esm/components/organisms/Confirmation/Confirmation.js.map +1 -0
- package/dist/esm/components/organisms/Datatable/Datatable.d.ts +18 -0
- package/dist/esm/components/organisms/Datatable/Datatable.js +18 -0
- package/dist/esm/components/organisms/Datatable/Datatable.js.map +1 -0
- package/dist/esm/components/organisms/DateField/DateField.css +37 -0
- package/dist/esm/components/organisms/DateField/DateField.d.ts +13 -0
- package/dist/esm/components/organisms/DateField/DateField.js +35 -0
- package/dist/esm/components/organisms/DateField/DateField.js.map +1 -0
- package/dist/esm/components/organisms/DatePicker/DatePicker.css +75 -0
- package/dist/esm/components/organisms/DatePicker/DatePicker.d.ts +15 -0
- package/dist/esm/components/organisms/DatePicker/DatePicker.js +99 -0
- package/dist/esm/components/organisms/DatePicker/DatePicker.js.map +1 -0
- package/dist/esm/components/organisms/DateRangeField/DateRangeField.css +37 -0
- package/dist/esm/components/organisms/DateRangeField/DateRangeField.d.ts +14 -0
- package/dist/esm/components/organisms/DateRangeField/DateRangeField.js +37 -0
- package/dist/esm/components/organisms/DateRangeField/DateRangeField.js.map +1 -0
- package/dist/esm/components/organisms/DateRangePicker/DateRangePicker.css +81 -0
- package/dist/esm/components/organisms/DateRangePicker/DateRangePicker.d.ts +16 -0
- package/dist/esm/components/organisms/DateRangePicker/DateRangePicker.js +89 -0
- package/dist/esm/components/organisms/DateRangePicker/DateRangePicker.js.map +1 -0
- package/dist/esm/components/organisms/FormNavigation/FormNavigation.css +29 -0
- package/dist/esm/components/organisms/FormNavigation/FormNavigation.d.ts +7 -0
- package/dist/esm/components/organisms/FormNavigation/FormNavigation.js +7 -0
- package/dist/esm/components/organisms/FormNavigation/FormNavigation.js.map +1 -0
- package/dist/esm/components/organisms/Modal/Modal.css +59 -0
- package/dist/esm/components/organisms/Modal/Modal.d.ts +7 -0
- package/dist/esm/components/organisms/Modal/Modal.js +8 -0
- package/dist/esm/components/organisms/Modal/Modal.js.map +1 -0
- package/dist/esm/components/organisms/SelectField/SelectField.css +10 -0
- package/dist/esm/components/organisms/SelectField/SelectField.d.ts +13 -0
- package/dist/esm/components/organisms/SelectField/SelectField.js +90 -0
- package/dist/esm/components/organisms/SelectField/SelectField.js.map +1 -0
- package/dist/esm/components/organisms/Snackbar/Snackbar.css +66 -0
- package/dist/esm/components/organisms/Snackbar/Snackbar.d.ts +22 -0
- package/dist/esm/components/organisms/Snackbar/Snackbar.js +54 -0
- package/dist/esm/components/organisms/Snackbar/Snackbar.js.map +1 -0
- package/dist/esm/components/organisms/index.d.ts +12 -0
- package/dist/esm/components/organisms/index.js +13 -0
- package/dist/esm/components/organisms/index.js.map +1 -0
- package/dist/esm/context.d.ts +9 -0
- package/dist/esm/context.js +15 -0
- package/dist/esm/context.js.map +1 -0
- package/dist/esm/hooks/form-control.hook.d.ts +15 -0
- package/dist/esm/hooks/form-control.hook.js +77 -0
- package/dist/esm/hooks/form-control.hook.js.map +1 -0
- package/dist/esm/hooks/form-group.hook.d.ts +2 -0
- package/dist/esm/hooks/form-group.hook.js +22 -0
- package/dist/esm/hooks/form-group.hook.js.map +1 -0
- package/dist/esm/hooks/index.d.ts +3 -0
- package/dist/esm/hooks/index.js +4 -0
- package/dist/esm/hooks/index.js.map +1 -0
- package/dist/esm/hooks/list-control.hook.d.ts +19 -0
- package/dist/esm/hooks/list-control.hook.js +139 -0
- package/dist/esm/hooks/list-control.hook.js.map +1 -0
- package/dist/esm/index.d.ts +5 -0
- package/dist/esm/index.js +6 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/models.d.ts +54 -0
- package/dist/esm/models.js +42 -0
- package/dist/esm/models.js.map +1 -0
- package/dist/esm/types.d.ts +12 -0
- package/dist/esm/types.js +7 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/utils/css.d.ts +3 -0
- package/dist/esm/utils/css.js +12 -0
- package/dist/esm/utils/css.js.map +1 -0
- package/dist/esm/utils/date-picker.d.ts +1 -0
- package/dist/esm/utils/date-picker.js +9 -0
- package/dist/esm/utils/date-picker.js.map +1 -0
- package/dist/esm/utils/date-range-picker.d.ts +9 -0
- package/dist/esm/utils/date-range-picker.js +97 -0
- package/dist/esm/utils/date-range-picker.js.map +1 -0
- package/dist/esm/utils/day-picker.d.ts +9 -0
- package/dist/esm/utils/day-picker.js +84 -0
- package/dist/esm/utils/day-picker.js.map +1 -0
- package/dist/esm/utils/month-picker.d.ts +14 -0
- package/dist/esm/utils/month-picker.js +72 -0
- package/dist/esm/utils/month-picker.js.map +1 -0
- package/dist/esm/utils/year-picker.d.ts +17 -0
- package/dist/esm/utils/year-picker.js +83 -0
- package/dist/esm/utils/year-picker.js.map +1 -0
- package/package.json +72 -0
- package/readme.md +23 -0
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { hasPattern } from '@rolster/helpers-string';
|
|
3
|
+
import { useEffect, useState } from 'react';
|
|
4
|
+
import { useListControl } from '../../../hooks';
|
|
5
|
+
import { renderClassStatus } from '../../../utils/css';
|
|
6
|
+
import { RlsIcon, RlsProgressBar } from '../../atoms';
|
|
7
|
+
import { RlsBallot } from '../../molecules';
|
|
8
|
+
import './AutocompleteField.css';
|
|
9
|
+
const DURATION_ANIMATION = 240;
|
|
10
|
+
const MAX_ELEMENTS = 6;
|
|
11
|
+
export function RlsAutocompleteField({ suggestions, children, disabled, formControl, placeholder, searching, rlsTheme, onSearch }) {
|
|
12
|
+
const [pattern, setPattern] = useState('');
|
|
13
|
+
const [coincidences, setCoincidences] = useState([]);
|
|
14
|
+
const [store, setStore] = useState({
|
|
15
|
+
pattern: '',
|
|
16
|
+
coincidences: [],
|
|
17
|
+
previous: null
|
|
18
|
+
});
|
|
19
|
+
const { active, boxContentRef, higher, inputRef, listRef, suggestionsField, value, visible, setActive, setValue, setVisible, navigationElement, navigationInput } = useListControl(suggestions, true);
|
|
20
|
+
const [changeInternal, setChangeInternal] = useState(false);
|
|
21
|
+
useEffect(() => {
|
|
22
|
+
filterSuggestions(pattern, true);
|
|
23
|
+
}, [suggestions]);
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
filterSuggestions(pattern);
|
|
26
|
+
}, [pattern]);
|
|
27
|
+
useEffect(() => {
|
|
28
|
+
if (!changeInternal) {
|
|
29
|
+
setValue((formControl?.state &&
|
|
30
|
+
suggestionsField.hasElement(formControl?.state)?.description) ||
|
|
31
|
+
'');
|
|
32
|
+
}
|
|
33
|
+
setChangeInternal(false);
|
|
34
|
+
}, [formControl?.state]);
|
|
35
|
+
function onClickControl() {
|
|
36
|
+
if (!disabled) {
|
|
37
|
+
setVisible(true);
|
|
38
|
+
setTimeout(() => inputRef?.current?.focus(), DURATION_ANIMATION);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
function onFocusInput() {
|
|
42
|
+
setActive(true);
|
|
43
|
+
}
|
|
44
|
+
function onBlurInput() {
|
|
45
|
+
setActive(false);
|
|
46
|
+
}
|
|
47
|
+
function onKeydownInput(event) {
|
|
48
|
+
switch (event.code) {
|
|
49
|
+
case 'Escape':
|
|
50
|
+
setVisible(false);
|
|
51
|
+
break;
|
|
52
|
+
case 'Tab':
|
|
53
|
+
setVisible(false);
|
|
54
|
+
break;
|
|
55
|
+
default:
|
|
56
|
+
navigationInput(event);
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
function onClickAction() {
|
|
61
|
+
if (value) {
|
|
62
|
+
setVisible(false);
|
|
63
|
+
setValue('');
|
|
64
|
+
if (formControl) {
|
|
65
|
+
setChangeInternal(true);
|
|
66
|
+
formControl.setState(undefined);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
setVisible(true);
|
|
71
|
+
setTimeout(() => inputRef?.current?.focus(), DURATION_ANIMATION);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
function onClickBackdrop() {
|
|
75
|
+
setVisible(false);
|
|
76
|
+
}
|
|
77
|
+
function onClickElement(element) {
|
|
78
|
+
return () => {
|
|
79
|
+
onChange(element);
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
function onKeydownElement(element) {
|
|
83
|
+
return (event) => {
|
|
84
|
+
switch (event.code) {
|
|
85
|
+
case 'Enter':
|
|
86
|
+
onChange(element);
|
|
87
|
+
break;
|
|
88
|
+
default:
|
|
89
|
+
navigationElement(event);
|
|
90
|
+
break;
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
function onChange(element) {
|
|
95
|
+
const { description, value } = element;
|
|
96
|
+
setVisible(false);
|
|
97
|
+
if (formControl) {
|
|
98
|
+
setChangeInternal(true);
|
|
99
|
+
formControl.setState(value);
|
|
100
|
+
}
|
|
101
|
+
setValue(description);
|
|
102
|
+
}
|
|
103
|
+
function filterSuggestions(pattern, reboot = false) {
|
|
104
|
+
if (pattern) {
|
|
105
|
+
const store = reboot ? createStoreEmpty() : searchForPattern(pattern);
|
|
106
|
+
const filters = store?.coincidences || suggestions;
|
|
107
|
+
const coincidences = filters.filter((element) => element.hasCoincidence(pattern));
|
|
108
|
+
setCoincidences(coincidences.slice(0, MAX_ELEMENTS));
|
|
109
|
+
setStore({
|
|
110
|
+
coincidences,
|
|
111
|
+
pattern,
|
|
112
|
+
previous: store
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
setCoincidences(suggestions.slice(0, MAX_ELEMENTS));
|
|
117
|
+
rebootStore();
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
function searchForPattern(value) {
|
|
121
|
+
if (!store.pattern) {
|
|
122
|
+
return null;
|
|
123
|
+
}
|
|
124
|
+
let newStore = store;
|
|
125
|
+
let search = false;
|
|
126
|
+
while (!search && newStore) {
|
|
127
|
+
search = hasPattern(value, newStore.pattern, true);
|
|
128
|
+
if (!search) {
|
|
129
|
+
newStore = newStore.previous;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
return newStore || rebootStore();
|
|
133
|
+
}
|
|
134
|
+
function rebootStore() {
|
|
135
|
+
const newStore = createStoreEmpty();
|
|
136
|
+
setStore(newStore);
|
|
137
|
+
return newStore;
|
|
138
|
+
}
|
|
139
|
+
function createStoreEmpty() {
|
|
140
|
+
return {
|
|
141
|
+
coincidences: undefined,
|
|
142
|
+
pattern: '',
|
|
143
|
+
previous: null
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
return (_jsxs("div", { ref: boxContentRef, className: 'rls-autocomplete-field rls-list-field ' +
|
|
147
|
+
renderClassStatus('rls-box-field', {
|
|
148
|
+
disabled,
|
|
149
|
+
active,
|
|
150
|
+
selected: !!value
|
|
151
|
+
}), "rls-theme": rlsTheme, children: [children && _jsx("label", { className: "rls-box-field__label", children: children }), _jsx("div", { className: "rls-box-field__component", children: _jsxs("div", { className: "rls-box-field__body", children: [_jsx("label", { className: "rls-list-field__control", onClick: onClickControl, children: value ? (_jsx("span", { className: "rls-list-field__control__description", children: value })) : (_jsx("span", { className: "rls-list-field__control__placeholder", children: placeholder })) }), _jsx("button", { className: "rls-list-field__action", disabled: disabled, onClick: onClickAction, children: _jsx(RlsIcon, { value: value ? 'trash-2' : 'list' }) })] }) }), _jsxs("div", { className: renderClassStatus('rls-list-field__suggestions', {
|
|
152
|
+
visible,
|
|
153
|
+
hide: !visible,
|
|
154
|
+
higher
|
|
155
|
+
}), children: [_jsxs("ul", { ref: listRef, className: "rls-list-field__ul", children: [_jsxs("div", { className: "rls-list-field__ul__search", children: [_jsx("input", { ref: inputRef, className: "rls-list-field__ul__control", type: "text", value: pattern, onChange: ({ target: { value } }) => {
|
|
156
|
+
setPattern(value);
|
|
157
|
+
}, disabled: disabled || searching, onFocus: onFocusInput, onBlur: onBlurInput, onKeyDown: onKeydownInput }), onSearch && (_jsx("button", { disabled: disabled || searching, onClick: () => {
|
|
158
|
+
onSearch(pattern);
|
|
159
|
+
}, children: _jsx(RlsIcon, { value: "search" }) }))] }), searching && _jsx(RlsProgressBar, { indeterminate: true }), coincidences.map((element, index) => (_jsx("li", { className: "rls-list-field__element", tabIndex: -1, onClick: onClickElement(element), onKeyDown: onKeydownElement(element), children: _jsx(RlsBallot, { subtitle: element.subtitle, img: element.img, initials: element.initials, children: element.title }) }, index))), !coincidences.length && (_jsx("li", { className: "rls-list-field__empty", children: _jsxs("div", { className: "rls-list-field__empty__description", children: [_jsx("label", { className: "label-bold truncate", children: "Selecci\u00F3n no disponible" }), _jsx("label", { className: "caption-regular", children: "Lo sentimos, en el momento no hay elementos en el listado" })] }) }))] }), _jsx("div", { className: "rls-list-field__backdrop", onClick: onClickBackdrop })] })] }));
|
|
160
|
+
}
|
|
161
|
+
//# sourceMappingURL=AutocompleteField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AutocompleteField.js","sourceRoot":"","sources":["../../../../../src/components/organisms/AutocompleteField/AutocompleteField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAIL,SAAS,EACT,QAAQ,EACT,MAAM,OAAO,CAAC;AACf,OAAO,EAAgB,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,yBAAyB,CAAC;AAEjC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAC/B,MAAM,YAAY,GAAG,CAAC,CAAC;AAmBvB,MAAM,UAAU,oBAAoB,CAAc,EAChD,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,WAAW,EACX,SAAS,EACT,QAAQ,EACR,QAAQ,EACa;IACrB,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC3C,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAqB,EAAE,CAAC,CAAC;IACzE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAQ;QACxC,OAAO,EAAE,EAAE;QACX,YAAY,EAAE,EAAE;QAChB,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IAEH,MAAM,EACJ,MAAM,EACN,aAAa,EACb,MAAM,EACN,QAAQ,EACR,OAAO,EACP,gBAAgB,EAChB,KAAK,EACL,OAAO,EACP,SAAS,EACT,QAAQ,EACR,UAAU,EACV,iBAAiB,EACjB,eAAe,EAChB,GAAG,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAEtC,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CAAC,GAAG,EAAE;QACb,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,SAAS,CAAC,GAAG,EAAE;QACb,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,cAAc,EAAE;YACnB,QAAQ,CACN,CAAC,WAAW,EAAE,KAAK;gBACjB,gBAAgB,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,WAAW,CAAC;gBAC7D,EAAE,CACL,CAAC;SACH;QAED,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;IAEzB,SAAS,cAAc;QACrB,IAAI,CAAC,QAAQ,EAAE;YACb,UAAU,CAAC,IAAI,CAAC,CAAC;YAEjB,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,kBAAkB,CAAC,CAAC;SAClE;IACH,CAAC;IAED,SAAS,YAAY;QACnB,SAAS,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;IAED,SAAS,WAAW;QAClB,SAAS,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IAED,SAAS,cAAc,CAAC,KAAoB;QAC1C,QAAQ,KAAK,CAAC,IAAI,EAAE;YAClB,KAAK,QAAQ;gBACX,UAAU,CAAC,KAAK,CAAC,CAAC;gBAClB,MAAM;YAER,KAAK,KAAK;gBACR,UAAU,CAAC,KAAK,CAAC,CAAC;gBAClB,MAAM;YAER;gBACE,eAAe,CAAC,KAAK,CAAC,CAAC;gBACvB,MAAM;SACT;IACH,CAAC;IAED,SAAS,aAAa;QACpB,IAAI,KAAK,EAAE;YACT,UAAU,CAAC,KAAK,CAAC,CAAC;YAClB,QAAQ,CAAC,EAAE,CAAC,CAAC;YAEb,IAAI,WAAW,EAAE;gBACf,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBACxB,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;aACjC;SACF;aAAM;YACL,UAAU,CAAC,IAAI,CAAC,CAAC;YAEjB,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,kBAAkB,CAAC,CAAC;SAClE;IACH,CAAC;IAED,SAAS,eAAe;QACtB,UAAU,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAED,SAAS,cAAc,CAAC,OAAyB;QAC/C,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC,CAAC;IACJ,CAAC;IAED,SAAS,gBAAgB,CAAC,OAAyB;QACjD,OAAO,CAAC,KAAK,EAAE,EAAE;YACf,QAAQ,KAAK,CAAC,IAAI,EAAE;gBAClB,KAAK,OAAO;oBACV,QAAQ,CAAC,OAAO,CAAC,CAAC;oBAClB,MAAM;gBAER;oBACE,iBAAiB,CAAC,KAAK,CAAC,CAAC;oBACzB,MAAM;aACT;QACH,CAAC,CAAC;IACJ,CAAC;IAED,SAAS,QAAQ,CAAC,OAAyB;QACzC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAEvC,UAAU,CAAC,KAAK,CAAC,CAAC;QAElB,IAAI,WAAW,EAAE;YACf,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SAC7B;QAED,QAAQ,CAAC,WAAW,CAAC,CAAC;IACxB,CAAC;IAED,SAAS,iBAAiB,CAAC,OAAsB,EAAE,MAAM,GAAG,KAAK;QAC/D,IAAI,OAAO,EAAE;YACX,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAEtE,MAAM,OAAO,GAAG,KAAK,EAAE,YAAY,IAAI,WAAW,CAAC;YAEnD,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAC9C,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAChC,CAAC;YAEF,eAAe,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC;YAErD,QAAQ,CAAC;gBACP,YAAY;gBACZ,OAAO;gBACP,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;SACJ;aAAM;YACL,eAAe,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC;YACpD,WAAW,EAAE,CAAC;SACf;IACH,CAAC;IAED,SAAS,gBAAgB,CAAC,KAAa;QACrC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;YAClB,OAAO,IAAI,CAAC;SACb;QAED,IAAI,QAAQ,GAAmB,KAAK,CAAC;QACrC,IAAI,MAAM,GAAG,KAAK,CAAC;QAEnB,OAAO,CAAC,MAAM,IAAI,QAAQ,EAAE;YAC1B,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAEnD,IAAI,CAAC,MAAM,EAAE;gBACX,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;aAC9B;SACF;QAED,OAAO,QAAQ,IAAI,WAAW,EAAE,CAAC;IACnC,CAAC;IAED,SAAS,WAAW;QAClB,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;QAEpC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEnB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,SAAS,gBAAgB;QACvB,OAAO;YACL,YAAY,EAAE,SAAS;YACvB,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,IAAI;SACf,CAAC;IACJ,CAAC;IAED,OAAO,CACL,eACE,GAAG,EAAE,aAAa,EAClB,SAAS,EACP,wCAAwC;YACxC,iBAAiB,CAAC,eAAe,EAAE;gBACjC,QAAQ;gBACR,MAAM;gBACN,QAAQ,EAAE,CAAC,CAAC,KAAK;aAClB,CAAC,eAEO,QAAQ,aAElB,QAAQ,IAAI,gBAAO,SAAS,EAAC,sBAAsB,YAAE,QAAQ,GAAS,EACvE,cAAK,SAAS,EAAC,0BAA0B,YACvC,eAAK,SAAS,EAAC,qBAAqB,aAClC,gBAAO,SAAS,EAAC,yBAAyB,EAAC,OAAO,EAAE,cAAc,YAC/D,KAAK,CAAC,CAAC,CAAC,CACP,eAAM,SAAS,EAAC,sCAAsC,YACnD,KAAK,GACD,CACR,CAAC,CAAC,CAAC,CACF,eAAM,SAAS,EAAC,sCAAsC,YACnD,WAAW,GACP,CACR,GACK,EAER,iBACE,SAAS,EAAC,wBAAwB,EAClC,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,aAAa,YAEtB,KAAC,OAAO,IAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,GAAI,GACvC,IACL,GACF,EAEN,eACE,SAAS,EAAE,iBAAiB,CAAC,6BAA6B,EAAE;oBAC1D,OAAO;oBACP,IAAI,EAAE,CAAC,OAAO;oBACd,MAAM;iBACP,CAAC,aAEF,cAAI,GAAG,EAAE,OAAO,EAAE,SAAS,EAAC,oBAAoB,aAC9C,eAAK,SAAS,EAAC,4BAA4B,aACzC,gBACE,GAAG,EAAE,QAAQ,EACb,SAAS,EAAC,6BAA6B,EACvC,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;4CAClC,UAAU,CAAC,KAAK,CAAC,CAAC;wCACpB,CAAC,EACD,QAAQ,EAAE,QAAQ,IAAI,SAAS,EAC/B,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,cAAc,GACzB,EAED,QAAQ,IAAI,CACX,iBACE,QAAQ,EAAE,QAAQ,IAAI,SAAS,EAC/B,OAAO,EAAE,GAAG,EAAE;4CACZ,QAAQ,CAAC,OAAO,CAAC,CAAC;wCACpB,CAAC,YAED,KAAC,OAAO,IAAC,KAAK,EAAC,QAAQ,GAAG,GACnB,CACV,IACG,EAEL,SAAS,IAAI,KAAC,cAAc,IAAC,aAAa,EAAE,IAAI,GAAI,EAEpD,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CACpC,aAEE,SAAS,EAAC,yBAAyB,EACnC,QAAQ,EAAE,CAAC,CAAC,EACZ,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,EAChC,SAAS,EAAE,gBAAgB,CAAC,OAAO,CAAC,YAEpC,KAAC,SAAS,IACR,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAC1B,GAAG,EAAE,OAAO,CAAC,GAAG,EAChB,QAAQ,EAAE,OAAO,CAAC,QAAQ,YAEzB,OAAO,CAAC,KAAK,GACJ,IAZP,KAAK,CAaP,CACN,CAAC,EAED,CAAC,YAAY,CAAC,MAAM,IAAI,CACvB,aAAI,SAAS,EAAC,uBAAuB,YACnC,eAAK,SAAS,EAAC,oCAAoC,aACjD,gBAAO,SAAS,EAAC,qBAAqB,6CAE9B,EACR,gBAAO,SAAS,EAAC,iBAAiB,0EAE1B,IACJ,GACH,CACN,IACE,EAEL,cACE,SAAS,EAAC,0BAA0B,EACpC,OAAO,EAAE,eAAe,GACnB,IACH,IACF,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import './Card.css';
|
|
3
|
+
export function RlsCard({ children, rlsTheme }) {
|
|
4
|
+
return (_jsx("div", { className: "rls-card", "rls-theme": rlsTheme, children: _jsx("div", { className: "rls-card__content", children: children }) }));
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=Card.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Card.js","sourceRoot":"","sources":["../../../../../src/components/organisms/Card/Card.tsx"],"names":[],"mappings":";AACA,OAAO,YAAY,CAAC;AAEpB,MAAM,UAAU,OAAO,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAgB;IAC1D,OAAO,CACL,cAAK,SAAS,EAAC,UAAU,eAAY,QAAQ,YAC3C,cAAK,SAAS,EAAC,mBAAmB,YAAE,QAAQ,GAAO,GAC/C,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
.rls-confirmation {
|
|
2
|
+
--pvt-component-transform: translateY(150px) scale(0.6);
|
|
3
|
+
--pvt-component-height: 0rem;
|
|
4
|
+
--pvt-component-opacity: 0;
|
|
5
|
+
--pvt-component-visibility: hidden;
|
|
6
|
+
--pvt-backdrop-opacity: 0;
|
|
7
|
+
--pvt-backdrop-bottom: initial;
|
|
8
|
+
position: fixed;
|
|
9
|
+
display: flex;
|
|
10
|
+
justify-content: center;
|
|
11
|
+
align-items: center;
|
|
12
|
+
top: 0rem;
|
|
13
|
+
left: 0rem;
|
|
14
|
+
width: 100vw;
|
|
15
|
+
height: 100vh;
|
|
16
|
+
z-index: var(--z-index-24);
|
|
17
|
+
visibility: hidden;
|
|
18
|
+
}
|
|
19
|
+
.rls-confirmation--visible {
|
|
20
|
+
--pvt-component-visibility: visible;
|
|
21
|
+
--pvt-component-height: auto;
|
|
22
|
+
--pvt-component-opacity: 1;
|
|
23
|
+
--pvt-component-transform: translateY(0) scale(1);
|
|
24
|
+
--pvt-backdrop-bottom: 0rem;
|
|
25
|
+
--pvt-backdrop-opacity: 1;
|
|
26
|
+
visibility: visible;
|
|
27
|
+
}
|
|
28
|
+
.rls-confirmation__component {
|
|
29
|
+
position: absolute;
|
|
30
|
+
width: calc(100% - var(--sizing-32));
|
|
31
|
+
max-width: 20rem;
|
|
32
|
+
height: var(--pvt-component-height);
|
|
33
|
+
opacity: var(--pvt-component-opacity);
|
|
34
|
+
visibility: var(--pvt-component-visibility);
|
|
35
|
+
padding: var(--sizing-8) 0rem;
|
|
36
|
+
box-sizing: border-box;
|
|
37
|
+
z-index: var(--z-index-2);
|
|
38
|
+
border-radius: var(--sizing-8);
|
|
39
|
+
background: var(--background-theme-500);
|
|
40
|
+
box-shadow: var(--shadow-4);
|
|
41
|
+
will-change: transform;
|
|
42
|
+
transform: var(--pvt-component-transform);
|
|
43
|
+
transition: opacity 125ms 0ms var(--deceleration-curve),
|
|
44
|
+
transform 125ms 0ms var(--deceleration-curve),
|
|
45
|
+
visibility 125ms 0ms var(--deceleration-curve);
|
|
46
|
+
}
|
|
47
|
+
.rls-confirmation__header {
|
|
48
|
+
position: relative;
|
|
49
|
+
float: left;
|
|
50
|
+
width: 100%;
|
|
51
|
+
padding: var(--sizing-8) var(--sizing-16);
|
|
52
|
+
box-sizing: border-box;
|
|
53
|
+
}
|
|
54
|
+
.rls-confirmation__header__title {
|
|
55
|
+
text-align: center;
|
|
56
|
+
width: 100%;
|
|
57
|
+
color: var(--color-theme-500);
|
|
58
|
+
font-size: 0.85rem;
|
|
59
|
+
line-height: 0.85rem;
|
|
60
|
+
font-weight: var(--font-weight-bold);
|
|
61
|
+
letter-spacing: 0.875px;
|
|
62
|
+
text-transform: uppercase;
|
|
63
|
+
}
|
|
64
|
+
.rls-confirmation__header__subtitle {
|
|
65
|
+
text-align: center;
|
|
66
|
+
margin-top: var(--sizing-8);
|
|
67
|
+
width: 100%;
|
|
68
|
+
color: var(--color-theme-100);
|
|
69
|
+
font-size: 0.675rem;
|
|
70
|
+
line-height: 0.675rem;
|
|
71
|
+
font-weight: var(--font-weight-bold);
|
|
72
|
+
letter-spacing: 0.875px;
|
|
73
|
+
text-transform: uppercase;
|
|
74
|
+
}
|
|
75
|
+
.rls-confirmation__body {
|
|
76
|
+
position: relative;
|
|
77
|
+
float: left;
|
|
78
|
+
width: 100%;
|
|
79
|
+
padding: var(--sizing-8) var(--sizing-16);
|
|
80
|
+
box-sizing: border-box;
|
|
81
|
+
}
|
|
82
|
+
.rls-confirmation__body__content {
|
|
83
|
+
color: var(--color-theme-300);
|
|
84
|
+
margin: 0rem;
|
|
85
|
+
text-align: center;
|
|
86
|
+
font-size: 0.925rem;
|
|
87
|
+
line-height: 1.325rem;
|
|
88
|
+
font-weight: var(--font-weight-semibold);
|
|
89
|
+
letter-spacing: 0.05em;
|
|
90
|
+
}
|
|
91
|
+
.rls-confirmation__footer {
|
|
92
|
+
position: relative;
|
|
93
|
+
float: left;
|
|
94
|
+
width: 100%;
|
|
95
|
+
padding: var(--sizing-16) var(--sizing-16) var(--sizing-8) var(--sizing-16);
|
|
96
|
+
box-sizing: border-box;
|
|
97
|
+
margin-top: var(--sizing-16);
|
|
98
|
+
border-top: var(--border-1-theme-100);
|
|
99
|
+
}
|
|
100
|
+
.rls-confirmation__footer__actions {
|
|
101
|
+
position: relative;
|
|
102
|
+
display: flex;
|
|
103
|
+
flex-direction: column-reverse;
|
|
104
|
+
float: left;
|
|
105
|
+
width: 100%;
|
|
106
|
+
margin: auto;
|
|
107
|
+
}
|
|
108
|
+
.rls-confirmation__footer__actions button + button {
|
|
109
|
+
margin-bottom: var(--sizing-12);
|
|
110
|
+
}
|
|
111
|
+
.rls-confirmation__backdrop {
|
|
112
|
+
position: absolute;
|
|
113
|
+
display: block;
|
|
114
|
+
top: 0px;
|
|
115
|
+
left: 0px;
|
|
116
|
+
right: 0px;
|
|
117
|
+
bottom: var(--pvt-backdrop-bottom);
|
|
118
|
+
opacity: var(--pvt-backdrop-opacity);
|
|
119
|
+
z-index: 1;
|
|
120
|
+
will-change: opacity;
|
|
121
|
+
background: var(--backdrop-rolster-500);
|
|
122
|
+
backdrop-filter: blur(2px);
|
|
123
|
+
transition: opacity 120ms 0ms var(--deceleration-curve),
|
|
124
|
+
bottom 120ms 0ms var(--deceleration-curve);
|
|
125
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { PartialSealed } from '@rolster/helpers-advanced';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import { RlsTheme } from '../../definitions';
|
|
4
|
+
import './Confirmation.css';
|
|
5
|
+
export declare class ConfirmationResult extends PartialSealed<void, void, {
|
|
6
|
+
approved: () => void;
|
|
7
|
+
reject: () => void;
|
|
8
|
+
}> {
|
|
9
|
+
static approved(): ConfirmationResult;
|
|
10
|
+
static reject(): ConfirmationResult;
|
|
11
|
+
}
|
|
12
|
+
interface ConfirmationAction {
|
|
13
|
+
label: string;
|
|
14
|
+
onClick: () => void;
|
|
15
|
+
}
|
|
16
|
+
interface ConfirmationBasic {
|
|
17
|
+
content?: ReactNode;
|
|
18
|
+
subtitle?: string;
|
|
19
|
+
title?: string;
|
|
20
|
+
rlsTheme?: RlsTheme;
|
|
21
|
+
}
|
|
22
|
+
interface Confirmation extends ConfirmationBasic {
|
|
23
|
+
approved?: ConfirmationAction;
|
|
24
|
+
reject?: ConfirmationAction;
|
|
25
|
+
visible?: boolean;
|
|
26
|
+
}
|
|
27
|
+
interface ConfirmationConfig extends ConfirmationBasic {
|
|
28
|
+
approved?: string;
|
|
29
|
+
reject?: string;
|
|
30
|
+
}
|
|
31
|
+
export type FnConfirmation = (props: ConfirmationConfig) => Promise<ConfirmationResult>;
|
|
32
|
+
export interface ConfirmationService {
|
|
33
|
+
RlsConfirmation: JSX.Element;
|
|
34
|
+
confirmation: FnConfirmation;
|
|
35
|
+
}
|
|
36
|
+
export declare function RlsConfirmation({ approved, content, reject, rlsTheme, subtitle, title, visible }: Confirmation): import("react/jsx-runtime").JSX.Element;
|
|
37
|
+
export declare function useConfirmationService(): ConfirmationService;
|
|
38
|
+
export {};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { PartialSealed } from '@rolster/helpers-advanced';
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
import ReactDOM from 'react-dom';
|
|
5
|
+
import { renderClassStatus } from '../../../utils/css';
|
|
6
|
+
import { RlsButton } from '../../atoms';
|
|
7
|
+
import './Confirmation.css';
|
|
8
|
+
export class ConfirmationResult extends PartialSealed {
|
|
9
|
+
static approved() {
|
|
10
|
+
return new ConfirmationResult('approved');
|
|
11
|
+
}
|
|
12
|
+
static reject() {
|
|
13
|
+
return new ConfirmationResult('reject');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
export function RlsConfirmation({ approved, content, reject, rlsTheme, subtitle, title, visible }) {
|
|
17
|
+
return (_jsxs("div", { className: renderClassStatus('rls-confirmation', { visible }), "rls-theme": rlsTheme, children: [_jsxs("div", { className: "rls-confirmation__component", children: [_jsxs("div", { className: "rls-confirmation__header", children: [title && (_jsx("div", { className: "rls-confirmation__header__title", children: title })), subtitle && (_jsx("div", { className: "rls-confirmation__header__subtitle", children: subtitle }))] }), _jsx("div", { className: "rls-confirmation__body", children: content && (_jsx("div", { className: "rls-confirmation__body__content", children: content })) }), (approved || reject) && (_jsx("div", { className: "rls-confirmation__footer", children: _jsxs("div", { className: "rls-confirmation__footer__actions", children: [approved && (_jsx(RlsButton, { type: "raised", onClick: () => {
|
|
18
|
+
if (approved.onClick) {
|
|
19
|
+
approved.onClick();
|
|
20
|
+
}
|
|
21
|
+
}, children: approved.label })), reject && (_jsx(RlsButton, { type: "outline", onClick: () => {
|
|
22
|
+
if (reject.onClick) {
|
|
23
|
+
reject.onClick();
|
|
24
|
+
}
|
|
25
|
+
}, children: reject.label }))] }) }))] }), _jsx("div", { className: "rls-confirmation__backdrop" })] }));
|
|
26
|
+
}
|
|
27
|
+
export function useConfirmationService() {
|
|
28
|
+
const [config, setConfig] = useState({});
|
|
29
|
+
const [visible, setVisible] = useState(false);
|
|
30
|
+
const rlsConfirmation = ReactDOM.createPortal(_jsx(RlsConfirmation, { ...config, visible: visible }), document.body);
|
|
31
|
+
function confirmation(config) {
|
|
32
|
+
return new Promise((resolve) => {
|
|
33
|
+
const { content, rlsTheme, subtitle, title, approved, reject } = config;
|
|
34
|
+
setConfig({
|
|
35
|
+
content,
|
|
36
|
+
rlsTheme,
|
|
37
|
+
subtitle,
|
|
38
|
+
title,
|
|
39
|
+
approved: {
|
|
40
|
+
label: approved || 'Aceptar',
|
|
41
|
+
onClick: () => {
|
|
42
|
+
setVisible(false);
|
|
43
|
+
resolve(ConfirmationResult.approved());
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
reject: reject
|
|
47
|
+
? {
|
|
48
|
+
label: reject,
|
|
49
|
+
onClick: () => {
|
|
50
|
+
setVisible(false);
|
|
51
|
+
resolve(ConfirmationResult.reject());
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
: undefined
|
|
55
|
+
});
|
|
56
|
+
setVisible(true);
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
return {
|
|
60
|
+
RlsConfirmation: rlsConfirmation,
|
|
61
|
+
confirmation
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=Confirmation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Confirmation.js","sourceRoot":"","sources":["../../../../../src/components/organisms/Confirmation/Confirmation.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { RlsComponent } from '../../definitions';
|
|
2
|
+
interface DatatableCell extends RlsComponent {
|
|
3
|
+
className?: string;
|
|
4
|
+
control?: boolean;
|
|
5
|
+
}
|
|
6
|
+
interface DatatableRow extends RlsComponent {
|
|
7
|
+
className?: string;
|
|
8
|
+
}
|
|
9
|
+
interface Datatable extends RlsComponent {
|
|
10
|
+
footer?: JSX.Element;
|
|
11
|
+
header?: JSX.Element;
|
|
12
|
+
}
|
|
13
|
+
export declare function RlsDatatableHeader({ children }: RlsComponent): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export declare function RlsDatatableTitle({ children, className, control }: DatatableCell): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export declare function RlsDatatableData({ children, className }: DatatableRow): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export declare function RlsDatatableCell({ children, className, control }: DatatableCell): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export declare function RlsDatatable({ children, footer, header, rlsTheme }: Datatable): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { renderClassStatus } from '../../../utils/css';
|
|
3
|
+
export function RlsDatatableHeader({ children }) {
|
|
4
|
+
return _jsx("tr", { className: "rls-datatable__header", children: children });
|
|
5
|
+
}
|
|
6
|
+
export function RlsDatatableTitle({ children, className, control }) {
|
|
7
|
+
return (_jsx("th", { className: `${className} ` + renderClassStatus('rls-datatable__title', { control }), children: children }));
|
|
8
|
+
}
|
|
9
|
+
export function RlsDatatableData({ children, className }) {
|
|
10
|
+
return _jsx("tr", { className: `rls-datatable__data ${className}`, children: children });
|
|
11
|
+
}
|
|
12
|
+
export function RlsDatatableCell({ children, className, control }) {
|
|
13
|
+
return (_jsx("th", { className: `${className} ` + renderClassStatus('rls-datatable__cell', { control }), children: children }));
|
|
14
|
+
}
|
|
15
|
+
export function RlsDatatable({ children, footer, header, rlsTheme }) {
|
|
16
|
+
return (_jsxs("div", { className: "rls-datatable", "rls-theme": rlsTheme, children: [_jsxs("table", { children: [header && _jsx("thead", { className: "rls-datatable__thead", children: header }), _jsx("tbody", { className: "rls-datatable__tbody", children: children })] }), footer && _jsx("div", { className: "rls-datatable__tfooter", children: footer })] }));
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=Datatable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Datatable.js","sourceRoot":"","sources":["../../../../../src/components/organisms/Datatable/Datatable.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAiBvD,MAAM,UAAU,kBAAkB,CAAC,EAAE,QAAQ,EAAgB;IAC3D,OAAO,aAAI,SAAS,EAAC,uBAAuB,YAAE,QAAQ,GAAM,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,EAChC,QAAQ,EACR,SAAS,EACT,OAAO,EACO;IACd,OAAO,CACL,aACE,SAAS,EACP,GAAG,SAAS,GAAG,GAAG,iBAAiB,CAAC,sBAAsB,EAAE,EAAE,OAAO,EAAE,CAAC,YAGzE,QAAQ,GACN,CACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAgB;IACpE,OAAO,aAAI,SAAS,EAAE,uBAAuB,SAAS,EAAE,YAAG,QAAQ,GAAM,CAAC;AAC5E,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAC/B,QAAQ,EACR,SAAS,EACT,OAAO,EACO;IACd,OAAO,CACL,aACE,SAAS,EACP,GAAG,SAAS,GAAG,GAAG,iBAAiB,CAAC,qBAAqB,EAAE,EAAE,OAAO,EAAE,CAAC,YAGxE,QAAQ,GACN,CACN,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,EAC3B,QAAQ,EACR,MAAM,EACN,MAAM,EACN,QAAQ,EACE;IACV,OAAO,CACL,eAAK,SAAS,EAAC,eAAe,eAAY,QAAQ,aAChD,4BACG,MAAM,IAAI,gBAAO,SAAS,EAAC,sBAAsB,YAAE,MAAM,GAAS,EAEnE,gBAAO,SAAS,EAAC,sBAAsB,YAAE,QAAQ,GAAS,IACpD,EAEP,MAAM,IAAI,cAAK,SAAS,EAAC,wBAAwB,YAAE,MAAM,GAAO,IAC7D,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
.rls-date-field {
|
|
2
|
+
--rls-input-parent-padding: var(--sizing-6) var(--sizing-8);
|
|
3
|
+
position: relative;
|
|
4
|
+
float: left;
|
|
5
|
+
width: 100%;
|
|
6
|
+
box-sizing: border-box;
|
|
7
|
+
}
|
|
8
|
+
.rls-date-field__control {
|
|
9
|
+
position: relative;
|
|
10
|
+
float: left;
|
|
11
|
+
width: calc(100% - var(--sizing-28));
|
|
12
|
+
height: var(--sizing-24);
|
|
13
|
+
line-height: var(--sizing-24);
|
|
14
|
+
padding: 0rem;
|
|
15
|
+
cursor: default;
|
|
16
|
+
border: none;
|
|
17
|
+
outline: none;
|
|
18
|
+
color: var(--color-theme-input);
|
|
19
|
+
background: transparent;
|
|
20
|
+
font-size: var(--input-font-size);
|
|
21
|
+
font-weight: var(--font-weight-medium);
|
|
22
|
+
letter-spacing: var(--input-letter-spacing);
|
|
23
|
+
}
|
|
24
|
+
.rls-date-field__control::placeholder {
|
|
25
|
+
color: var(--color-theme-100);
|
|
26
|
+
}
|
|
27
|
+
.rls-date-field__control:disabled {
|
|
28
|
+
opacity: 0.5;
|
|
29
|
+
}
|
|
30
|
+
.rls-date-field__action {
|
|
31
|
+
color: var(--color-theme-300);
|
|
32
|
+
width: var(--sizing-24);
|
|
33
|
+
height: var(--sizing-24);
|
|
34
|
+
padding: 0rem;
|
|
35
|
+
margin-left: var(--sizing-4);
|
|
36
|
+
background: transparent;
|
|
37
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ReactControl } from '../../../hooks';
|
|
2
|
+
import { RlsComponent } from '../../definitions';
|
|
3
|
+
import './DateField.css';
|
|
4
|
+
interface DateField extends RlsComponent {
|
|
5
|
+
date?: Date;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
formControl?: ReactControl<HTMLElement, Date>;
|
|
8
|
+
maxDate?: Date;
|
|
9
|
+
minDate?: Date;
|
|
10
|
+
placeholder?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function RlsDateField({ children, date, disabled, formControl, maxDate, minDate, placeholder, rlsTheme }: DateField): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { formatDate } from '@rolster/helpers-date';
|
|
3
|
+
import { useEffect, useState } from 'react';
|
|
4
|
+
import { RlsIcon } from '../../atoms';
|
|
5
|
+
import { RlsDatePicker } from '../DatePicker/DatePicker';
|
|
6
|
+
import { RlsModal } from '../Modal/Modal';
|
|
7
|
+
import './DateField.css';
|
|
8
|
+
export function RlsDateField({ children, date, disabled, formControl, maxDate, minDate, placeholder, rlsTheme }) {
|
|
9
|
+
const dateInitial = formControl?.state || date || new Date();
|
|
10
|
+
const [value, setValue] = useState(dateInitial);
|
|
11
|
+
const [show, setShow] = useState(false);
|
|
12
|
+
const [description, setDescription] = useState('');
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
setDescription(value ? formatDate(value, 'dd/mx/aa') : '');
|
|
15
|
+
}, [value]);
|
|
16
|
+
function onClickInput() {
|
|
17
|
+
setShow(true);
|
|
18
|
+
}
|
|
19
|
+
function onClean() {
|
|
20
|
+
if (value) {
|
|
21
|
+
formControl?.setState(undefined);
|
|
22
|
+
setValue(undefined);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
setShow(true);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return (_jsxs("div", { className: "rls-date-field", "rls-theme": rlsTheme, children: [_jsxs("div", { className: "rls-box-field", children: [children && _jsx("label", { className: "rls-box-field__label", children: children }), _jsx("div", { className: "rls-box-field__component", children: _jsxs("div", { className: "rls-box-field__body", children: [_jsx("input", { className: "rls-date-field__control", type: "text", value: description, readOnly: true, placeholder: placeholder, onClick: onClickInput }), _jsx("button", { className: "rls-date-field__action", onClick: onClean, children: _jsx(RlsIcon, { value: value ? 'trash-2' : 'calendar' }) })] }) })] }), _jsx(RlsModal, { visible: show, children: _jsx(RlsDatePicker, { formControl: formControl, date: date, disabled: disabled, maxDate: maxDate, minDate: minDate, onListener: ({ value }) => {
|
|
29
|
+
if (value) {
|
|
30
|
+
setValue(value);
|
|
31
|
+
}
|
|
32
|
+
setShow(false);
|
|
33
|
+
} }) })] }));
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=DateField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DateField.js","sourceRoot":"","sources":["../../../../../src/components/organisms/DateField/DateField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,iBAAiB,CAAC;AAWzB,MAAM,UAAU,YAAY,CAAC,EAC3B,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,WAAW,EACX,OAAO,EACP,OAAO,EACP,WAAW,EACX,QAAQ,EACE;IACV,MAAM,WAAW,GAAG,WAAW,EAAE,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;IAE7D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAmB,WAAW,CAAC,CAAC;IAClE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEnD,SAAS,CAAC,GAAG,EAAE;QACb,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC7D,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,SAAS,YAAY;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC;IAChB,CAAC;IAED,SAAS,OAAO;QACd,IAAI,KAAK,EAAE;YACT,WAAW,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;YACjC,QAAQ,CAAC,SAAS,CAAC,CAAC;SACrB;aAAM;YACL,OAAO,CAAC,IAAI,CAAC,CAAC;SACf;IACH,CAAC;IAED,OAAO,CACL,eAAK,SAAS,EAAC,gBAAgB,eAAY,QAAQ,aACjD,eAAK,SAAS,EAAC,eAAe,aAC3B,QAAQ,IAAI,gBAAO,SAAS,EAAC,sBAAsB,YAAE,QAAQ,GAAS,EAEvE,cAAK,SAAS,EAAC,0BAA0B,YACvC,eAAK,SAAS,EAAC,qBAAqB,aAClC,gBACE,SAAS,EAAC,yBAAyB,EACnC,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,IAAI,EACd,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,YAAY,GACrB,EAEF,iBAAQ,SAAS,EAAC,wBAAwB,EAAC,OAAO,EAAE,OAAO,YACzD,KAAC,OAAO,IAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,GAAI,GAC3C,IACL,GACF,IACF,EAEN,KAAC,QAAQ,IAAC,OAAO,EAAE,IAAI,YACrB,KAAC,aAAa,IACZ,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;wBACxB,IAAI,KAAK,EAAE;4BACT,QAAQ,CAAC,KAAK,CAAC,CAAC;yBACjB;wBAED,OAAO,CAAC,KAAK,CAAC,CAAC;oBACjB,CAAC,GACD,GACO,IACP,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
.rls-date-picker {
|
|
2
|
+
position: relative;
|
|
3
|
+
float: left;
|
|
4
|
+
max-width: 18.75rem;
|
|
5
|
+
overflow: hidden;
|
|
6
|
+
}
|
|
7
|
+
.rls-date-picker__header {
|
|
8
|
+
background: var(--color-xofttion-100);
|
|
9
|
+
padding: var(--sizing-8);
|
|
10
|
+
box-sizing: border-box;
|
|
11
|
+
margin-bottom: var(--sizing-16);
|
|
12
|
+
}
|
|
13
|
+
.rls-date-picker__title {
|
|
14
|
+
color: var(--color-theme-500);
|
|
15
|
+
text-align: center;
|
|
16
|
+
cursor: default;
|
|
17
|
+
font-weight: var(--font-weight-bold);
|
|
18
|
+
}
|
|
19
|
+
.rls-date-picker__title:hover {
|
|
20
|
+
color: var(--color-xofttion-500);
|
|
21
|
+
}
|
|
22
|
+
.rls-date-picker__title--description {
|
|
23
|
+
height: var(--sizing-32);
|
|
24
|
+
line-height: var(--sizing-32);
|
|
25
|
+
font-size: 1.15rem;
|
|
26
|
+
}
|
|
27
|
+
.rls-date-picker__title--year {
|
|
28
|
+
margin: var(--sizing-8) 0rem var(--sizing-4) 0rem;
|
|
29
|
+
height: var(--sizing-32);
|
|
30
|
+
line-height: var(--sizing-32);
|
|
31
|
+
font-size: var(--sizing-24);
|
|
32
|
+
color: var(--color-theme-300);
|
|
33
|
+
}
|
|
34
|
+
.rls-date-picker__component {
|
|
35
|
+
display: flex;
|
|
36
|
+
padding: 0rem var(--sizing-4);
|
|
37
|
+
box-sizing: border-box;
|
|
38
|
+
margin-bottom: var(--sizing-8);
|
|
39
|
+
}
|
|
40
|
+
.rls-date-picker__component > * {
|
|
41
|
+
margin: 0rem auto;
|
|
42
|
+
display: none;
|
|
43
|
+
}
|
|
44
|
+
.rls-date-picker__component--day .rls-day-picker {
|
|
45
|
+
display: block;
|
|
46
|
+
}
|
|
47
|
+
.rls-date-picker__component--month .rls-month-picker {
|
|
48
|
+
display: grid;
|
|
49
|
+
}
|
|
50
|
+
.rls-date-picker__component--year .rls-year-picker {
|
|
51
|
+
display: block;
|
|
52
|
+
}
|
|
53
|
+
.rls-date-picker__footer--hidden {
|
|
54
|
+
display: none;
|
|
55
|
+
}
|
|
56
|
+
.rls-date-picker__actions {
|
|
57
|
+
padding: var(--sizing-8) var(--sizing-16) var(--sizing-12) var(--sizing-16);
|
|
58
|
+
overflow: hidden;
|
|
59
|
+
box-sizing: border-box;
|
|
60
|
+
}
|
|
61
|
+
.rls-date-picker__actions--cancel {
|
|
62
|
+
width: calc(50% - var(--sizing-4));
|
|
63
|
+
margin-right: var(--sizing-4);
|
|
64
|
+
}
|
|
65
|
+
.rls-date-picker__actions--today {
|
|
66
|
+
width: calc(50% - var(--sizing-4));
|
|
67
|
+
margin-left: var(--sizing-4);
|
|
68
|
+
}
|
|
69
|
+
.rls-date-picker__actions--ok {
|
|
70
|
+
margin-top: var(--sizing-8);
|
|
71
|
+
width: 100%;
|
|
72
|
+
}
|
|
73
|
+
.rls-date-picker__actions button {
|
|
74
|
+
width: 100%;
|
|
75
|
+
}
|