@rolster/react-components 18.15.36 → 18.15.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/dist/cjs/assets/{index-B-LAHoFc.css → index-DTDYY-4K.css} +4 -0
  2. package/dist/cjs/index.js +29 -22
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/es/assets/{index-B-LAHoFc.css → index-DTDYY-4K.css} +4 -0
  5. package/dist/es/index.js +29 -22
  6. package/dist/es/index.js.map +1 -1
  7. package/dist/esm/components/atoms/ButtonAction/ButtonAction.js +1 -1
  8. package/dist/esm/components/atoms/ButtonAction/ButtonAction.js.map +1 -1
  9. package/dist/esm/components/atoms/Poster/Poster.css +4 -0
  10. package/dist/esm/components/atoms/Poster/Poster.d.ts +5 -1
  11. package/dist/esm/components/atoms/Poster/Poster.js +3 -2
  12. package/dist/esm/components/atoms/Poster/Poster.js.map +1 -1
  13. package/dist/esm/components/atoms/TabularText/TabularText.js +4 -2
  14. package/dist/esm/components/atoms/TabularText/TabularText.js.map +1 -1
  15. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.d.ts +15 -26
  16. package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.js.map +1 -1
  17. package/dist/esm/components/organisms/FieldDate/FieldDate.d.ts +14 -8
  18. package/dist/esm/components/organisms/FieldDate/FieldDate.js +2 -2
  19. package/dist/esm/components/organisms/FieldDate/FieldDate.js.map +1 -1
  20. package/dist/esm/components/organisms/FieldDateRange/FieldDateRange.d.ts +14 -7
  21. package/dist/esm/components/organisms/FieldDateRange/FieldDateRange.js +12 -7
  22. package/dist/esm/components/organisms/FieldDateRange/FieldDateRange.js.map +1 -1
  23. package/dist/esm/components/organisms/FieldSelect/FieldSelect.d.ts +15 -26
  24. package/dist/esm/components/organisms/FieldSelect/FieldSelect.js.map +1 -1
  25. package/package.json +3 -3
@@ -607,6 +607,10 @@
607
607
  color: var(--rls-theme-color-100);
608
608
  background: var(--rls-theme-color-500);
609
609
  }
610
+ .rls-poster--contrast[rls-theme] {
611
+ color: var(--rls-theme-color-700);
612
+ background: var(--rls-theme-color-100);
613
+ }
610
614
 
611
615
  .rls-progress-bar {
612
616
  --pvt-component-display: block;
package/dist/es/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import require$$0, { useState, useRef, useEffect, createContext } from 'react';
2
2
  import { currencyFormat, itIsDefined, PartialSealed } from '@rolster/commons';
3
+ import { dateFormatTemplate, DAY_LABELS, DateRange, normalizeMinTime, assignDayInDate, dateIsBefore, MONTH_NAMES, Month, assignYearInDate, assignMonthInDate } from '@rolster/dates';
3
4
  import { PaginationController, checkDayPicker, createDayPicker, createDayRangePicker, checkMonthPicker, createMonthPicker, monthLimitTemplate, createYearPicker, checkYearPicker, ListCollection, locationListCanTop, navigationListFromInput, navigationListFromElement, createAutocompleteStore, checkDateRange, dateOutRange, PickerListenerType } from '@rolster/components';
4
- import { DAY_LABELS, DateRange, normalizeMinTime, dateFormatTemplate, assignDayInDate, dateIsBefore, MONTH_NAMES, Month, assignYearInDate, assignMonthInDate } from '@rolster/dates';
5
5
  import ReactDOM from 'react-dom';
6
6
  import { i18n } from '@rolster/i18n';
7
7
  import { useReactControl } from '@rolster/react-forms';
@@ -1355,10 +1355,12 @@ if (process.env.NODE_ENV === 'production') {
1355
1355
 
1356
1356
  var jsxRuntimeExports = jsxRuntime.exports;
1357
1357
 
1358
- const baseCls = 'rls-tabular-text';
1358
+ const className = 'rls-tabular-text';
1359
1359
  const pointers = ['.', ','];
1360
1360
  function charClass(char) {
1361
- return pointers.includes(char) ? `${baseCls}__pointer` : `${baseCls}__char`;
1361
+ return pointers.includes(char)
1362
+ ? `${className}__pointer`
1363
+ : `${className}__char`;
1362
1364
  }
1363
1365
  function RlsTabularText({ value }) {
1364
1366
  return (jsxRuntimeExports.jsx("div", { className: "rls-tabular-text", children: value?.split('').map((char, index) => (jsxRuntimeExports.jsx("span", { className: charClass(char), children: char }, index))) }));
@@ -1404,7 +1406,7 @@ function RlsButton({ type, children, disabled, prefixIcon, suffixIcon, rlsTheme,
1404
1406
  }
1405
1407
 
1406
1408
  function RlsButtonAction({ icon, disabled, tooltip, onClick }) {
1407
- return (jsxRuntimeExports.jsxs("button", { className: "rls-button-action", onClick: onClick, disabled: disabled, children: [jsxRuntimeExports.jsx("div", { className: "rls-button-action__content", children: jsxRuntimeExports.jsx(RlsIcon, { value: icon }) }), tooltip && (jsxRuntimeExports.jsx("div", { className: "rls-button-action__tooltip caption-semibold", children: jsxRuntimeExports.jsx("span", { children: tooltip }) }))] }));
1409
+ return (jsxRuntimeExports.jsxs("button", { className: "rls-button-action", onClick: onClick, disabled: disabled, children: [jsxRuntimeExports.jsx("div", { className: "rls-button-action__content", children: jsxRuntimeExports.jsx(RlsIcon, { value: icon }) }), tooltip && (jsxRuntimeExports.jsx("div", { className: "rls-button-action__tooltip rls-overline-medium", children: jsxRuntimeExports.jsx("span", { children: tooltip }) }))] }));
1408
1410
  }
1409
1411
 
1410
1412
  function RlsCheckBox({ checked, disabled, onClick, rlsTheme }) {
@@ -1498,8 +1500,16 @@ function RlsMessageIcon({ icon, children, rlsTheme }) {
1498
1500
  return (jsxRuntimeExports.jsxs("div", { className: "rls-message-icon", "rls-theme": rlsTheme, children: [icon && jsxRuntimeExports.jsx(RlsIcon, { value: icon }), jsxRuntimeExports.jsx("span", { className: "truncate", children: children })] }));
1499
1501
  }
1500
1502
 
1501
- function RlsPoster({ children, rlsTheme }) {
1502
- return (jsxRuntimeExports.jsx("div", { className: "rls-poster", "rls-theme": rlsTheme, children: children }));
1503
+ const DATE_RANGE_FORMAT = '{dd}/{mx}/{aa}';
1504
+
1505
+ function rangeFormatTemplate({ maxDate, minDate }) {
1506
+ const minFormat = dateFormatTemplate(minDate, DATE_RANGE_FORMAT);
1507
+ const maxFormat = dateFormatTemplate(maxDate, DATE_RANGE_FORMAT);
1508
+ return `${minFormat} - ${maxFormat}`;
1509
+ }
1510
+
1511
+ function RlsPoster({ children, contrast, rlsTheme }) {
1512
+ return (jsxRuntimeExports.jsx("div", { className: renderClassStatus('rls-poster', { contrast }), "rls-theme": rlsTheme, children: children }));
1503
1513
  }
1504
1514
 
1505
1515
  function RlsProgressBar({ indeterminate, percentage, rlsTheme }) {
@@ -2294,14 +2304,6 @@ function RlsFieldAutocomplete(props) {
2294
2304
  return (jsxRuntimeExports.jsx(RlsFieldAutocompleteTemplate, { ...props, render: (element) => (jsxRuntimeExports.jsx(RlsBallot, { subtitle: element.subtitle, img: element.img, initials: element.initials, children: jsxRuntimeExports.jsx("span", { children: element.title }) })) }));
2295
2305
  }
2296
2306
 
2297
- const DATE_RANGE_FORMAT = '{dd}/{mx}/{aa}';
2298
-
2299
- function rangeFormatTemplate({ maxDate, minDate }) {
2300
- const minFormat = dateFormatTemplate(minDate, DATE_RANGE_FORMAT);
2301
- const maxFormat = dateFormatTemplate(maxDate, DATE_RANGE_FORMAT);
2302
- return `${minFormat} - ${maxFormat}`;
2303
- }
2304
-
2305
2307
  function RlsModal({ children, visible, rlsTheme }) {
2306
2308
  return ReactDOM.createPortal(jsxRuntimeExports.jsxs("div", { className: renderClassStatus('rls-modal', { visible }), "rls-theme": rlsTheme, children: [jsxRuntimeExports.jsx("div", { className: "rls-modal__component", children: children }), jsxRuntimeExports.jsx("div", { className: "rls-modal__backdrop" })] }), document.body);
2307
2309
  }
@@ -2369,7 +2371,7 @@ function RlsPickerDate({ automatic, date, disabled, formControl, maxDate, minDat
2369
2371
  const FORMAT_DATE = '{dd}/{mx}/{aa}';
2370
2372
  function RlsFieldDate({ children, date, disabled, formControl, format, maxDate, minDate, msgErrorDisabled, onValue, placeholder, rlsTheme, value: defaultValue }) {
2371
2373
  const today = new Date(); // Initial current date in component
2372
- const [value, setValue] = useState(defaultValue);
2374
+ const [value, setValue] = useState(formControl?.value || defaultValue);
2373
2375
  const [modalIsVisible, setModalIsVisible] = useState(false);
2374
2376
  useEffect(() => {
2375
2377
  const dateCheck = checkDateRange({
@@ -2391,7 +2393,7 @@ function RlsFieldDate({ children, date, disabled, formControl, format, maxDate,
2391
2393
  if (value) {
2392
2394
  formControl?.setValue(defaultValue);
2393
2395
  formControl?.touch();
2394
- onChange(undefined);
2396
+ onChange(defaultValue);
2395
2397
  }
2396
2398
  else {
2397
2399
  setModalIsVisible(true);
@@ -2459,10 +2461,9 @@ function RlsPickerDateRange({ automatic, date: datePicker, disabled, formControl
2459
2461
  }), children: jsxRuntimeExports.jsxs("div", { className: "rls-picker-date-range__actions", children: [jsxRuntimeExports.jsx("div", { className: "rls-picker-date-range__actions--cancel", children: jsxRuntimeExports.jsx(RlsButton, { type: "ghost", onClick: onCancel, children: reactI18n('dateActionCancel') }) }), jsxRuntimeExports.jsx("div", { className: "rls-picker-date-range__actions--ok", children: jsxRuntimeExports.jsx(RlsButton, { type: "raised", onClick: onSelect, children: reactI18n('dateActionSelect') }) })] }) })] }));
2460
2462
  }
2461
2463
 
2462
- function RlsFieldDateRange({ children, date: datePicker, disabled, formControl, maxDate, minDate, msgErrorDisabled, placeholder, rlsTheme, value: defaultValue }) {
2463
- const currentRange = formControl?.value || DateRange.now();
2464
+ function RlsFieldDateRange({ children, date: datePicker, disabled, formControl, maxDate, minDate, msgErrorDisabled, onValue, placeholder, rlsTheme, value: defaultValue }) {
2464
2465
  const currentDate = datePicker || new Date();
2465
- const [value, setValue] = useState(currentRange);
2466
+ const [value, setValue] = useState(formControl?.value || defaultValue);
2466
2467
  const [modalIsVisible, setModalIsVisible] = useState(false);
2467
2468
  function onClickInput() {
2468
2469
  setModalIsVisible(true);
@@ -2470,14 +2471,20 @@ function RlsFieldDateRange({ children, date: datePicker, disabled, formControl,
2470
2471
  function onClickAction() {
2471
2472
  if (value) {
2472
2473
  formControl?.setValue(defaultValue);
2473
- setValue(undefined);
2474
+ formControl?.touch();
2475
+ onChange(defaultValue);
2474
2476
  }
2475
2477
  else {
2476
2478
  setModalIsVisible(true);
2477
2479
  }
2478
2480
  }
2479
- return (jsxRuntimeExports.jsxs("div", { className: "rls-field-date-range", "rls-theme": rlsTheme, children: [jsxRuntimeExports.jsxs("div", { className: renderClassStatus('rls-field-box', { 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: ({ value }) => {
2480
- value && setValue(value);
2481
+ function onChange(value) {
2482
+ setValue(value);
2483
+ onValue && onValue(value);
2484
+ }
2485
+ return (jsxRuntimeExports.jsxs("div", { className: "rls-field-date-range", "rls-theme": rlsTheme, children: [jsxRuntimeExports.jsxs("div", { className: renderClassStatus('rls-field-box', { 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: ({ type, value }) => {
2486
+ type !== PickerListenerType.Cancel && onChange(value);
2487
+ formControl?.touch();
2481
2488
  setModalIsVisible(false);
2482
2489
  } }) })] }));
2483
2490
  }