karsten-design-system 1.0.97 → 1.0.99

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/index.js CHANGED
@@ -3,33 +3,33 @@ export { Accordion } from './stories/components/accordion.js';
3
3
  export { AutoComplete } from './stories/components/autoComplete.js';
4
4
  export { Breadcrumb } from './stories/components/breadcrumb.js';
5
5
  export { Button } from './stories/components/button.js';
6
+ export { CalendarInput } from './stories/components/calendarInput.js';
6
7
  export { Card } from './stories/components/card.js';
7
8
  export { Chart } from './stories/components/chart.js';
8
9
  export { Dialog } from './stories/components/dialog.js';
9
10
  export { Divider } from './stories/components/divider.js';
11
+ export { EmptyContent } from './stories/components/emptyContent.js';
12
+ export { ExpandablePanel } from './stories/components/expandablePanel.js';
13
+ export { FileUpload } from './stories/components/fileUpload.js';
10
14
  export { FilterButton } from './stories/components/filterButton.js';
11
15
  export { Header } from './stories/components/header.js';
12
16
  export { IconButton } from './stories/components/iconButton.js';
13
17
  export { InfoCard } from './stories/components/infoCard.js';
14
18
  export { Input } from './stories/components/input.js';
19
+ export { InputSwitch } from './stories/components/inputSwitch.js';
20
+ export { InputTextArea } from './stories/components/inputTextArea.js';
15
21
  export { InternalMenu } from './stories/components/internalMenu.js';
16
22
  export { Link } from './stories/components/link.js';
17
23
  export { MegaMenu } from './stories/components/megaMenu.js';
24
+ export { Modal } from './stories/components/modal.js';
25
+ export { MultiSelect } from './stories/components/multiselect.js';
18
26
  export { Notification } from './stories/components/notification.js';
19
27
  export { Paginator } from './stories/components/paginator.js';
20
28
  export { RadioButton } from './stories/components/radioButton.js';
29
+ export { Select } from './stories/components/select.js';
21
30
  export { Sidebar } from './stories/components/sidebar.js';
22
31
  export { Skeleton } from './stories/components/skeleton.js';
23
32
  export { Spinner } from './stories/components/spinner.js';
24
- export { InputSwitch } from './stories/components/inputSwitch.js';
25
- export { Toast } from './stories/components/toast.js';
26
- export { InputTextArea } from './stories/components/inputTextArea.js';
27
- export { FileUpload } from './stories/components/fileUpload.js';
28
- export { Modal } from './stories/components/modal.js';
29
- export { ExpandablePanel } from './stories/components/expandablePanel.js';
30
- export { EmptyContent } from './stories/components/emptyContent.js';
31
- export { Select } from './stories/components/select.js';
32
- export { CalendarInput } from './stories/components/calendarInput.js';
33
33
  export { Table } from './stories/components/table.js';
34
- export { MultiSelect } from './stories/components/multiselect.js';
34
+ export { Toast } from './stories/components/toast.js';
35
35
  //# sourceMappingURL=index.js.map
@@ -7,13 +7,19 @@ import { InputIcon } from 'primereact/inputicon';
7
7
  import FloatingLabel from '../../components/floating-label/index.js';
8
8
 
9
9
  function MultiSelect(props) {
10
- const { options, placeholder = 'Selecione uma opção', label = 'Opção', disabled = false, error, isLoading = false, } = props;
10
+ const { options, placeholder = 'Selecione uma opção', label = 'Opção', disabled = false, error, isLoading = false, isReadOnly = true, } = props;
11
11
  const [isOpen, setIsOpen] = useState(false);
12
12
  const containerRef = useRef(null);
13
13
  const [visibleText, setVisibleText] = useState('');
14
+ const [searchText, setSearchText] = useState('');
15
+ const filteredOptions = options.filter(option => option.label.toLowerCase().includes(searchText.toLowerCase()));
14
16
  const toggleDropdown = () => {
15
17
  if (!disabled && !isLoading) {
16
- setIsOpen(!isOpen);
18
+ const newState = !isOpen;
19
+ setIsOpen(newState);
20
+ if (!newState) {
21
+ setSearchText('');
22
+ }
17
23
  }
18
24
  };
19
25
  const handleSelect = (option) => {
@@ -23,6 +29,7 @@ function MultiSelect(props) {
23
29
  ? currentValues.filter(v => v.value !== option.value)
24
30
  : [...currentValues, option];
25
31
  props.onChange(newValues.length > 0 ? newValues : null);
32
+ setSearchText('');
26
33
  };
27
34
  const hasError = !!error && !disabled;
28
35
  const isInputDisabled = disabled || isLoading;
@@ -31,6 +38,7 @@ function MultiSelect(props) {
31
38
  if (containerRef.current &&
32
39
  !containerRef.current.contains(event.target)) {
33
40
  setIsOpen(false);
41
+ setSearchText('');
34
42
  }
35
43
  };
36
44
  document.addEventListener('mousedown', handleClickOutside);
@@ -38,6 +46,14 @@ function MultiSelect(props) {
38
46
  document.removeEventListener('mousedown', handleClickOutside);
39
47
  };
40
48
  }, []);
49
+ const selectedText = () => {
50
+ const selected = Array.isArray(props.value) ? props.value : [];
51
+ if (selected.length === 0)
52
+ return '';
53
+ if (selected.length === 1)
54
+ return selected[0].label;
55
+ return `${selected.length} itens selecionados`;
56
+ };
41
57
  useEffect(() => {
42
58
  const selected = Array.isArray(props.value) ? props.value : [];
43
59
  if (selected.length === 0) {
@@ -48,12 +64,18 @@ function MultiSelect(props) {
48
64
  }
49
65
  else {
50
66
  const count = selected.length;
51
- setVisibleText(`${count} ${count === 1 ? 'item' : 'itens'} selecionado${count === 1 ? '' : 's'}`);
67
+ setVisibleText(`${count} itens selecionados`);
52
68
  }
53
69
  }, [props.value]);
54
- return (jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: jsxRuntimeExports.jsxs("div", { ref: containerRef, className: "relative flex flex-col w-100", children: [jsxRuntimeExports.jsxs("div", { className: "relative w-full cursor-pointer", onClick: toggleDropdown, children: [jsxRuntimeExports.jsx(FloatingLabel, { value: Array.isArray(props.value) && props.value.length > 0
55
- ? props.value.map(v => v.label).join(', ')
56
- : '', label: label, disabled: isInputDisabled, error: error }), jsxRuntimeExports.jsxs(IconField, { className: "w-full", children: [jsxRuntimeExports.jsx(InputText, { placeholder: placeholder, type: "text", value: isLoading ? 'Carregando...' : visibleText, onClick: toggleDropdown, className: clsx('focus:shadow-none placeholder:!pl-3 placeholder:text-gray placeholder:font-roboto text-base w-100 font-roboto border !p-2 rounded-md', hasError ? 'border-redError placeholder:text-redError' : 'border-gray focus:border-primary', isInputDisabled && 'border-stoneDark text-disabled', error && 'border-redError text-redError', !error && 'border-gray placeholder:text-gray', isLoading && 'text-gray', 'truncate'), invalid: hasError, readOnly: true, style: { height: '42px', fontSize: '16px' }, disabled: isInputDisabled }), jsxRuntimeExports.jsx(InputIcon, { className: clsx(isLoading ? 'pi pi-spinner pi-spin' : isOpen ? 'pi pi-angle-up' : 'pi pi-angle-down', 'text-gray px-2 flex items-center cursor-pointer', isInputDisabled && 'text-disabled', error && 'text-redError'), onClick: toggleDropdown })] })] }), isOpen && !isLoading && (jsxRuntimeExports.jsx("div", { className: clsx('absolute w-full bg-background border shadow-md z-40 rounded-md -bottom-1 translate-y-full', error ? 'border-redError' : 'border-gray'), children: jsxRuntimeExports.jsx("div", { children: jsxRuntimeExports.jsx("ul", { className: 'max-h-60 overflow-y-auto', children: options.map((option) => (jsxRuntimeExports.jsxs("li", { onClick: () => handleSelect(option), className: "p-2 flex justify-between items-center cursor-pointer", title: option.label, children: [jsxRuntimeExports.jsx("span", { className: "truncate max-w-[calc(100%-20px)]", children: option.label }), jsxRuntimeExports.jsx("input", { type: 'checkbox', checked: Array.isArray(props.value) && props.value.some(v => v.value === option.value), onChange: () => handleSelect(option), className: clsx('appearance-none w-2 h-2 ring-1 ring-offset-2 ring-offset-background ring-gray checked:bg-primary cursor-pointer rounded-md') })] }, option.value))) }) }) })), hasError && jsxRuntimeExports.jsx("span", { className: "text-redError text-xs px-2", children: error })] }) }));
70
+ return (jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, { children: jsxRuntimeExports.jsxs("div", { ref: containerRef, className: "relative flex flex-col w-100", children: [jsxRuntimeExports.jsxs("div", { className: "relative w-full cursor-pointer", onClick: toggleDropdown, children: [jsxRuntimeExports.jsx(FloatingLabel, { value: selectedText(), label: label, disabled: isInputDisabled, error: error }), jsxRuntimeExports.jsxs(IconField, { className: "w-full", children: [jsxRuntimeExports.jsx(InputText, { placeholder: placeholder, type: "text", value: isLoading
71
+ ? 'Carregando...'
72
+ : isOpen && !isReadOnly
73
+ ? searchText
74
+ : visibleText, onChange: (e) => {
75
+ setSearchText(e.target.value);
76
+ if (!isOpen)
77
+ setIsOpen(true);
78
+ }, onClick: toggleDropdown, className: clsx('focus:shadow-none placeholder:!pl-3 placeholder:text-gray placeholder:font-roboto text-base w-100 font-roboto border !p-2 rounded-md', hasError ? 'border-redError placeholder:text-redError' : 'border-gray focus:border-primary', isInputDisabled && 'border-stoneDark text-disabled', error && 'border-redError text-redError', !error && 'border-gray placeholder:text-gray', isLoading && 'text-gray', 'truncate'), invalid: hasError, readOnly: !isOpen || isReadOnly, style: { height: '42px', fontSize: '16px' }, disabled: isInputDisabled }), jsxRuntimeExports.jsx(InputIcon, { className: clsx(isLoading ? 'pi pi-spinner pi-spin' : isOpen ? 'pi pi-angle-up' : 'pi pi-angle-down', 'text-gray px-2 flex items-center cursor-pointer', isInputDisabled && 'text-disabled', error && 'text-redError'), onClick: toggleDropdown })] })] }), isOpen && !isLoading && (jsxRuntimeExports.jsx("div", { className: clsx('absolute w-full bg-background border shadow-md z-40 rounded-md -bottom-1 translate-y-full', error ? 'border-redError' : 'border-gray'), children: jsxRuntimeExports.jsx("div", { children: jsxRuntimeExports.jsx("ul", { className: 'max-h-60 overflow-y-auto', children: filteredOptions.map((option) => (jsxRuntimeExports.jsxs("li", { onClick: () => handleSelect(option), className: "p-2 flex justify-between items-center cursor-pointer", title: option.label, children: [jsxRuntimeExports.jsx("span", { className: "truncate max-w-[calc(100%-20px)]", children: option.label }), jsxRuntimeExports.jsx("input", { type: 'checkbox', checked: Array.isArray(props.value) && props.value.some(v => v.value === option.value), onChange: () => handleSelect(option), className: clsx('appearance-none w-2 h-2 ring-1 ring-offset-2 ring-offset-background ring-gray checked:bg-primary cursor-pointer rounded-md') })] }, option.value))) }) }) })), hasError && jsxRuntimeExports.jsx("span", { className: "text-redError text-xs px-2", children: error })] }) }));
57
79
  }
58
80
 
59
81
  export { MultiSelect };
@@ -1 +1 @@
1
- {"version":3,"file":"multiselect.js","sources":["../../../../src/stories/components/multiselect.tsx"],"sourcesContent":[null],"names":["_jsx","_Fragment","_jsxs"],"mappings":"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"}
1
+ {"version":3,"file":"multiselect.js","sources":["../../../../src/stories/components/multiselect.tsx"],"sourcesContent":[null],"names":["_jsx","_Fragment","_jsxs"],"mappings":"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"}
@@ -7,12 +7,21 @@ import { InputIcon } from 'primereact/inputicon';
7
7
  import FloatingLabel from '../../components/floating-label/index.js';
8
8
 
9
9
  function Select(props) {
10
- const { options, placeholder = 'Selecione uma opção', label = 'Opção', disabled = false, error, isLoading = false, } = props;
10
+ const { options, placeholder = 'Selecione uma opção', label = 'Opção', disabled = false, error, isLoading = false, isReadOnly = true, } = props;
11
11
  const [isOpen, setIsOpen] = useState(false);
12
12
  const containerRef = useRef(null);
13
+ const [searchText, setSearchText] = useState('');
14
+ const filteredOptions = options.filter((option) => option.label.toLowerCase().includes(searchText.toLowerCase()));
13
15
  const toggleDropdown = () => {
14
16
  if (!disabled && !isLoading) {
15
- setIsOpen(!isOpen);
17
+ const newState = !isOpen;
18
+ setIsOpen(newState);
19
+ if (!newState) {
20
+ setSearchText('');
21
+ }
22
+ else {
23
+ setSearchText('');
24
+ }
16
25
  }
17
26
  };
18
27
  const handleSelect = (option) => {
@@ -22,6 +31,7 @@ function Select(props) {
22
31
  else {
23
32
  props.onChange(option);
24
33
  }
34
+ setSearchText('');
25
35
  setIsOpen(false);
26
36
  };
27
37
  const hasError = !!error && !disabled;
@@ -31,6 +41,7 @@ function Select(props) {
31
41
  if (containerRef.current &&
32
42
  !containerRef.current.contains(event.target)) {
33
43
  setIsOpen(false);
44
+ setSearchText('');
34
45
  }
35
46
  };
36
47
  document.addEventListener('mousedown', handleClickOutside);
@@ -40,9 +51,12 @@ function Select(props) {
40
51
  }, []);
41
52
  return (jsxRuntimeExports.jsxs("div", { ref: containerRef, className: "relative flex flex-col w-100", children: [jsxRuntimeExports.jsxs("div", { className: "relative w-full cursor-pointer", onClick: toggleDropdown, children: [jsxRuntimeExports.jsx(FloatingLabel, { value: props.value ? props.value.label : '', label: label, disabled: isInputDisabled, error: error }), jsxRuntimeExports.jsxs(IconField, { className: "w-full", children: [jsxRuntimeExports.jsx(InputText, { placeholder: placeholder, type: "text", value: isLoading
42
53
  ? 'Carregando...'
43
- : props.value
44
- ? props.value.label
45
- : '', onClick: toggleDropdown, className: clsx('focus:shadow-none placeholder:!pl-3 placeholder:text-gray placeholder:font-roboto text-base w-100 font-roboto border !p-2 rounded-md', hasError ? 'border-redError placeholder:text-redError' : 'border-gray focus:border-primary', isInputDisabled && 'border-stoneDark text-disabled', error && 'border-redError text-redError', !error && 'border-gray placeholder:text-gray', isLoading && 'text-gray', 'truncate'), invalid: hasError, readOnly: true, style: { height: '42px', fontSize: '16px' }, disabled: isInputDisabled }), jsxRuntimeExports.jsx(InputIcon, { className: clsx(isLoading ? 'pi pi-spinner pi-spin' : isOpen ? 'pi pi-angle-up' : 'pi pi-angle-down', 'text-gray px-2 flex items-center cursor-pointer', isInputDisabled && 'text-disabled', error && 'text-redError'), onClick: toggleDropdown })] })] }), isOpen && !isLoading && (jsxRuntimeExports.jsx("div", { className: clsx('absolute w-full bg-background border shadow-md z-40 rounded-md p-2 -bottom-1 translate-y-full', error ? 'border-redError' : 'border-gray'), children: jsxRuntimeExports.jsx("ul", { className: 'max-h-60 overflow-y-auto', children: options.map((option) => (jsxRuntimeExports.jsxs("li", { onClick: () => handleSelect(option), className: "p-2 flex justify-between items-center cursor-pointer", children: [jsxRuntimeExports.jsx("span", { className: "truncate max-w-[calc(100%-20px)]", children: option.label }), jsxRuntimeExports.jsx("input", { type: 'radio', checked: props.value?.value === option.value, onChange: () => handleSelect(option), className: clsx('appearance-none w-2 h-2 rounded-full ring-1 ring-offset-2 ring-offset-background ring-gray checked:bg-primary cursor-pointer') })] }, option.value))) }) })), hasError && jsxRuntimeExports.jsx("span", { className: "text-redError text-xs px-2", children: error })] }));
54
+ : isOpen
55
+ ? searchText
56
+ : props.value?.label ?? '', onClick: toggleDropdown, onChange: (e) => {
57
+ if (isOpen)
58
+ setSearchText(e.target.value);
59
+ }, className: clsx('focus:shadow-none placeholder:!pl-3 placeholder:text-gray placeholder:font-roboto text-base w-100 font-roboto border !p-2 rounded-md', hasError ? 'border-redError placeholder:text-redError' : 'border-gray focus:border-primary', isInputDisabled && 'border-stoneDark text-disabled', error && 'border-redError text-redError', !error && 'border-gray placeholder:text-gray', isLoading && 'text-gray', 'truncate'), invalid: hasError, readOnly: !isOpen || isReadOnly, style: { height: '42px', fontSize: '16px' }, disabled: isInputDisabled }), jsxRuntimeExports.jsx(InputIcon, { className: clsx(isLoading ? 'pi pi-spinner pi-spin' : isOpen ? 'pi pi-angle-up' : 'pi pi-angle-down', 'text-gray px-2 flex items-center cursor-pointer', isInputDisabled && 'text-disabled', error && 'text-redError'), onClick: toggleDropdown })] })] }), isOpen && !isLoading && (jsxRuntimeExports.jsx("div", { className: clsx('absolute w-full bg-background border shadow-md z-40 rounded-md p-2 -bottom-1 translate-y-full', error ? 'border-redError' : 'border-gray'), children: jsxRuntimeExports.jsx("ul", { className: 'max-h-60 overflow-y-auto', children: filteredOptions.map((option) => (jsxRuntimeExports.jsxs("li", { onClick: () => handleSelect(option), className: "p-2 flex justify-between items-center cursor-pointer", children: [jsxRuntimeExports.jsx("span", { className: "truncate max-w-[calc(100%-20px)]", children: option.label }), jsxRuntimeExports.jsx("input", { type: 'radio', checked: props.value?.value === option.value, onChange: () => handleSelect(option), className: clsx('appearance-none w-2 h-2 rounded-full ring-1 ring-offset-2 ring-offset-background ring-gray checked:bg-primary cursor-pointer') })] }, option.value))) }) })), hasError && jsxRuntimeExports.jsx("span", { className: "text-redError text-xs px-2", children: error })] }));
46
60
  }
47
61
 
48
62
  export { Select };
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sources":["../../../../src/stories/components/select.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"select.js","sources":["../../../../src/stories/components/select.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
@@ -1,14 +1,15 @@
1
1
  import { j as jsxRuntimeExports } from '../../_virtual/jsx-runtime.js';
2
+ import clsx from 'clsx';
2
3
  import { useState, useRef, useEffect } from 'react';
4
+ import { getNestedValue } from '../../utils/nestedValue.js';
3
5
  import { sortData } from '../../utils/sortData.js';
4
- import clsx from 'clsx';
5
- import { Spinner } from './spinner.js';
6
- import { Paginator } from './paginator.js';
7
6
  import { Button } from './button.js';
8
- import { Input } from './input.js';
9
- import { Select } from './select.js';
10
7
  import { CalendarInput } from './calendarInput.js';
8
+ import { Input } from './input.js';
11
9
  import { MultiSelect } from './multiselect.js';
10
+ import { Paginator } from './paginator.js';
11
+ import { Select } from './select.js';
12
+ import { Spinner } from './spinner.js';
12
13
 
13
14
  function parseDateRange(value) {
14
15
  try {
@@ -43,7 +44,11 @@ function Table({ columns, data, totalRecords, actions = [], isOrdered = true, ac
43
44
  }, [data]);
44
45
  useEffect(() => {
45
46
  const handleClickOutside = (event) => {
46
- if (filterModalRef.current && !filterModalRef.current.contains(event.target)) {
47
+ const target = event.target;
48
+ const isClickInsideFilter = filterModalRef.current && filterModalRef.current.contains(target);
49
+ const isClickInsideCalendar = (target instanceof HTMLElement && target.closest('.p-datepicker')) !==
50
+ null;
51
+ if (!isClickInsideFilter && !isClickInsideCalendar) {
47
52
  setOpenFilter(null);
48
53
  }
49
54
  };
@@ -59,7 +64,11 @@ function Table({ columns, data, totalRecords, actions = [], isOrdered = true, ac
59
64
  onFilterChange(filters);
60
65
  }
61
66
  };
62
- return (jsxRuntimeExports.jsxs("div", { children: [jsxRuntimeExports.jsxs("table", { className: "w-100", children: [jsxRuntimeExports.jsx("thead", { children: jsxRuntimeExports.jsxs("tr", { className: "bg-gray-100", children: [columns.map((column) => (jsxRuntimeExports.jsxs("th", { className: "bg-primary first:rounded-ss-lg font-bold text-background text-sm uppercase p-3 text-left", children: [jsxRuntimeExports.jsx("div", { children: openFilter === column.dataIndex && (jsxRuntimeExports.jsxs("div", { ref: filterModalRef, className: "absolute mt-6 bg-background border rounded-md shadow-md p-4 z-10 w-[276px] normal-case", children: [jsxRuntimeExports.jsxs("div", { className: "space-y-4 text-primary", children: [jsxRuntimeExports.jsxs("h1", { className: "text-primary text-sm", children: ["Filtrar por ", column.label] }), jsxRuntimeExports.jsxs("div", { className: "w-full", children: [column.filterType === 'text' && (jsxRuntimeExports.jsx(Input, { placeholder: "Digite para filtrar", value: filters[column.dataIndex] || "", onChange: (e) => setFilters((prev) => ({ ...prev, [column.dataIndex]: e })), mask: column?.mask })), column.filterType === 'select' && (jsxRuntimeExports.jsx(Select, { options: column.filterOptions || [], value: column.filterOptions?.find((option) => option.value === filters[column.dataIndex]) || null, onChange: (selected) => setFilters((prev) => ({
67
+ return (jsxRuntimeExports.jsxs("div", { children: [jsxRuntimeExports.jsxs("table", { className: "w-100", children: [jsxRuntimeExports.jsx("thead", { children: jsxRuntimeExports.jsxs("tr", { className: "bg-gray-100", children: [columns.map((column) => (jsxRuntimeExports.jsxs("th", { scope: "col", className: "bg-primary first:rounded-ss-lg font-bold text-background text-sm uppercase p-3 text-left", children: [jsxRuntimeExports.jsx("div", { children: openFilter === column.dataIndex && (jsxRuntimeExports.jsxs("div", { ref: filterModalRef, className: "absolute mt-6 bg-background border rounded-md shadow-md p-4 z-10 w-[276px] normal-case", children: [jsxRuntimeExports.jsxs("div", { className: "space-y-4 text-primary", children: [jsxRuntimeExports.jsxs("h1", { className: "text-primary text-sm", children: ["Filtrar por ", column.label] }), jsxRuntimeExports.jsxs("div", { className: "w-full", children: [column.filterType === 'text' && (jsxRuntimeExports.jsx(Input, { placeholder: "Digite para filtrar", value: filters[column.dataIndex] || '', onChange: (e) => setFilters((prev) => ({
68
+ ...prev,
69
+ [column.dataIndex]: e,
70
+ })), mask: column?.mask })), column.filterType === 'select' && (jsxRuntimeExports.jsx(Select, { options: column.filterOptions || [], value: column.filterOptions?.find((option) => option.value ===
71
+ filters[column.dataIndex]) || null, onChange: (selected) => setFilters((prev) => ({
63
72
  ...prev,
64
73
  [column.dataIndex]: selected?.value ?? null,
65
74
  })), placeholder: "Selecione uma op\u00E7\u00E3o", label: "" })), column.filterType === 'multiSelect' && (jsxRuntimeExports.jsx(MultiSelect, { options: column.filterOptions || [], value: (filters[column.dataIndex]
@@ -82,7 +91,9 @@ function Table({ columns, data, totalRecords, actions = [], isOrdered = true, ac
82
91
  const range = e?.value;
83
92
  setFilters((prev) => ({
84
93
  ...prev,
85
- [column.dataIndex]: range ? JSON.stringify(range) : '',
94
+ [column.dataIndex]: range
95
+ ? JSON.stringify(range)
96
+ : '',
86
97
  }));
87
98
  } }))] })] }), jsxRuntimeExports.jsxs("div", { className: "flex justify-between mt-4", children: [jsxRuntimeExports.jsx(Button, { variant: "outline", onClick: () => {
88
99
  setFilters((prev) => ({
@@ -98,10 +109,19 @@ function Table({ columns, data, totalRecords, actions = [], isOrdered = true, ac
98
109
  if (onFilterChange) {
99
110
  onFilterChange(updatedFilters);
100
111
  }
101
- }, label: "Limpar", width: "10", size: "small" }), jsxRuntimeExports.jsx(Button, { variant: "primary", onClick: () => handleFilter(), label: "Aplicar", width: "10", size: "small" })] })] })) }), column.label, isOrdered && (jsxRuntimeExports.jsx("i", { className: "pi pi-sort-alt pl-2 text-xs cursor-pointer", onClick: () => handleSort(column.dataIndex), "aria-label": `Ordenar por ${column.label}` })), column.filterable && (jsxRuntimeExports.jsx("i", { className: clsx("pl-2 text-xs cursor-pointer", filters[column.dataIndex] ? 'pi pi-filter-slash' : 'pi pi-filter'), onClick: () => setOpenFilter((prev) => prev === column.dataIndex ? null : column.dataIndex) }))] }, String(column.dataIndex)))), actions.length > 0 && (jsxRuntimeExports.jsx("th", { className: clsx('bg-primary rounded-se-lg font-bold text-background text-sm uppercase p-3 text-right pr-4', actionsHeaderClassName), children: "A\u00C7\u00D5ES" }))] }) }), jsxRuntimeExports.jsx("tbody", { children: isLoading ? (jsxRuntimeExports.jsx("tr", { children: jsxRuntimeExports.jsx("td", { colSpan: columns.length + (actions.length > 0 ? 1 : 0), className: "p-6 text-center bg-gray-50", children: jsxRuntimeExports.jsx("div", { className: "py-2 px-4 flex justify-center items-center gap-2", children: jsxRuntimeExports.jsx(Spinner, { size: "lg" }) }) }) })) : sortedData.length > 0 ? (sortedData.map((row, index) => (jsxRuntimeExports.jsxs("tr", { className: clsx(index % 2 === 0 ? 'bg-stoneBackground' : 'bg-background', 'text-primary text-base'), children: [columns.map((column) => {
102
- const value = row[column.dataIndex];
103
- return (jsxRuntimeExports.jsx("td", { className: clsx('p-3 text-sm text-left', typeof column.style === 'function' ? column.style(value, row) : column.style), children: column.render ? column.render(value, row) : String(value) }, String(column.dataIndex)));
104
- }), actions.length > 0 && (jsxRuntimeExports.jsx("td", { className: clsx('text-sm text-right flex flex-row justify-end p-3 gap-2', actionsColumnsClassName), children: actions.map((action, idx) => (jsxRuntimeExports.jsx("span", { className: clsx('cursor-pointer', action.disabled && 'opacity-50 pointer-events-none cursor-not-allowed'), onClick: () => {
112
+ }, label: "Limpar", width: "10", size: "small" }), jsxRuntimeExports.jsx(Button, { variant: "primary", onClick: () => handleFilter(), label: "Aplicar", width: "10", size: "small" })] })] })) }), column.label, isOrdered && (jsxRuntimeExports.jsx("i", { className: "pi pi-sort-alt pl-2 text-xs cursor-pointer", onClick: () => handleSort(column.dataIndex), "aria-label": `Ordenar por ${column.label}` })), column.filterable && (jsxRuntimeExports.jsx("i", { className: clsx('pl-2 text-xs cursor-pointer', filters[column.dataIndex]
113
+ ? 'pi pi-filter-slash'
114
+ : 'pi pi-filter'), onClick: () => setOpenFilter((prev) => prev === column.dataIndex
115
+ ? null
116
+ : column.dataIndex) }))] }, String(column.dataIndex)))), actions.length > 0 && (jsxRuntimeExports.jsx("th", { scope: "col", className: clsx('bg-primary rounded-se-lg font-bold text-background text-sm uppercase p-3 text-right pr-4', actionsHeaderClassName), children: "A\u00C7\u00D5ES" }))] }) }), jsxRuntimeExports.jsx("tbody", { children: isLoading ? (jsxRuntimeExports.jsx("tr", { children: jsxRuntimeExports.jsx("td", { colSpan: columns.length + (actions.length > 0 ? 1 : 0), className: "p-6 text-center bg-gray-50", children: jsxRuntimeExports.jsx("div", { className: "py-2 px-4 flex justify-center items-center gap-2", children: jsxRuntimeExports.jsx(Spinner, { size: "lg" }) }) }) })) : sortedData.length > 0 ? (sortedData.map((row, index) => (jsxRuntimeExports.jsxs("tr", { className: clsx(index % 2 === 0 ? 'bg-stoneBackground' : 'bg-background', 'text-primary text-base'), children: [columns.map((column) => {
117
+ const value = getNestedValue(row, column.dataIndex);
118
+ return (jsxRuntimeExports.jsx("td", { className: clsx('p-3 text-sm text-left', typeof column.style === 'function'
119
+ ? column.style(getNestedValue(row, column.dataIndex), row)
120
+ : column.style), children: column.render
121
+ ? column.render(value, row)
122
+ : String(value) }, String(column.dataIndex)));
123
+ }), actions.length > 0 && (jsxRuntimeExports.jsx("td", { className: clsx('text-sm text-right flex flex-row justify-end p-3 gap-2', actionsColumnsClassName), children: actions.map((action, idx) => (jsxRuntimeExports.jsx("span", { className: clsx('cursor-pointer', action.disabled &&
124
+ 'opacity-50 pointer-events-none cursor-not-allowed'), onClick: () => {
105
125
  if (!action.disabled)
106
126
  action.onClick(row);
107
127
  }, title: action.label, children: action.icon }, idx))) }))] }, index)))) : (jsxRuntimeExports.jsx("tr", { children: jsxRuntimeExports.jsxs("td", { colSpan: columns.length + (actions.length > 0 ? 1 : 0), className: "p-6 text-center text-primary bg-stoneBackground", children: [jsxRuntimeExports.jsx("i", { className: "pi pi-database mr-2" }), " N\u00E3o h\u00E1 dados dispon\u00EDveis."] }) })) })] }), sortedData.length > 0 && isPaginated && (jsxRuntimeExports.jsx(Paginator, { first: (currentPage - 1) * rowsPerPage, rows: rowsPerPage, totalRecords: totalRecords, onPageChange: (event) => {
@@ -1 +1 @@
1
- {"version":3,"file":"table.js","sources":["../../../../src/stories/components/table.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"table.js","sources":["../../../../src/stories/components/table.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
@@ -3,32 +3,32 @@ export * from './stories/components/accordion';
3
3
  export * from './stories/components/autoComplete';
4
4
  export * from './stories/components/breadcrumb';
5
5
  export * from './stories/components/button';
6
+ export * from './stories/components/calendarInput';
6
7
  export * from './stories/components/card';
7
8
  export * from './stories/components/chart';
8
9
  export * from './stories/components/dialog';
9
10
  export * from './stories/components/divider';
11
+ export * from './stories/components/emptyContent';
12
+ export * from './stories/components/expandablePanel';
13
+ export * from './stories/components/fileUpload';
10
14
  export * from './stories/components/filterButton';
11
15
  export * from './stories/components/header';
12
16
  export * from './stories/components/iconButton';
13
17
  export * from './stories/components/infoCard';
14
18
  export * from './stories/components/input';
19
+ export * from './stories/components/inputSwitch';
20
+ export * from './stories/components/inputTextArea';
15
21
  export * from './stories/components/internalMenu';
16
22
  export * from './stories/components/link';
17
23
  export * from './stories/components/megaMenu';
24
+ export * from './stories/components/modal';
25
+ export * from './stories/components/multiselect';
18
26
  export * from './stories/components/notification';
19
27
  export * from './stories/components/paginator';
20
28
  export * from './stories/components/radioButton';
29
+ export * from './stories/components/select';
21
30
  export * from './stories/components/sidebar';
22
31
  export * from './stories/components/skeleton';
23
32
  export * from './stories/components/spinner';
24
- export * from './stories/components/inputSwitch';
25
- export * from './stories/components/toast';
26
- export * from './stories/components/inputTextArea';
27
- export * from './stories/components/fileUpload';
28
- export * from './stories/components/modal';
29
- export * from './stories/components/expandablePanel';
30
- export * from './stories/components/emptyContent';
31
- export * from './stories/components/select';
32
- export * from './stories/components/calendarInput';
33
33
  export * from './stories/components/table';
34
- export * from './stories/components/multiselect';
34
+ export * from './stories/components/toast';
@@ -8,5 +8,6 @@ export type MultiSelectProps = {
8
8
  isLoading?: boolean;
9
9
  value: Option[] | null;
10
10
  onChange: (option: Option[] | null) => void;
11
+ isReadOnly?: boolean;
11
12
  };
12
13
  export declare function MultiSelect(props: MultiSelectProps): import("react/jsx-runtime").JSX.Element;
@@ -8,5 +8,6 @@ export type SingleSelectProps = {
8
8
  isLoading?: boolean;
9
9
  value: Option | null;
10
10
  onChange: (option: Option | null) => void;
11
+ isReadOnly?: boolean;
11
12
  };
12
13
  export declare function Select(props: SingleSelectProps): import("react/jsx-runtime").JSX.Element;
@@ -1,8 +1,8 @@
1
- import { SortDirection } from "../../types";
1
+ import { SortDirection } from '../../types';
2
2
  export type FilterType = 'text' | 'select' | 'multiSelect' | 'singleDate' | 'rangeDate';
3
3
  export type Column<T> = {
4
4
  label: string;
5
- dataIndex: keyof T;
5
+ dataIndex: string;
6
6
  style?: (value: T[keyof T], row: T) => string | string;
7
7
  render?: (value: T[keyof T], row: T) => React.ReactNode;
8
8
  filterable?: boolean;
@@ -0,0 +1 @@
1
+ export declare function getNestedValue(obj: any, path: string): any;
@@ -1,2 +1,2 @@
1
- import { SortDirection } from "../types";
2
- export declare function sortData<T>(data: T[], column: keyof T, direction: SortDirection): T[];
1
+ import { SortDirection } from '../types';
2
+ export declare function sortData<T>(data: T[], columnPath: string, direction: SortDirection): T[];
@@ -0,0 +1,9 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ function getNestedValue(obj, path) {
3
+ if (!obj || !path)
4
+ return undefined;
5
+ return path.split('.').reduce((acc, part) => acc?.[part], obj);
6
+ }
7
+
8
+ export { getNestedValue };
9
+ //# sourceMappingURL=nestedValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nestedValue.js","sources":["../../../src/utils/nestedValue.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACgB,SAAA,cAAc,CAAC,GAAQ,EAAE,IAAY,EAAA;AACnD,IAAA,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI;AAAE,QAAA,OAAO,SAAS;IACnC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,GAAG,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC;AAChE;;;;"}
@@ -1,8 +1,33 @@
1
- // import { SortDirection, TableData } from "../types"
2
- function sortData(data, column, direction) {
1
+ import { getNestedValue } from './nestedValue.js';
2
+
3
+ // import { SortDirection } from '../types'
4
+ // export function sortData<T>(
5
+ // data: T[],
6
+ // column: keyof T,
7
+ // direction: SortDirection
8
+ // ): T[] {
9
+ // return [...data].sort((a, b) => {
10
+ // const aValue = a[column]
11
+ // const bValue = b[column]
12
+ // if (typeof aValue === 'number' && typeof bValue === 'number') {
13
+ // return direction === 'ASC' ? aValue - bValue : bValue - aValue
14
+ // }
15
+ // if (aValue instanceof Date && bValue instanceof Date) {
16
+ // return direction === 'ASC'
17
+ // ? aValue.getTime() - bValue.getTime()
18
+ // : bValue.getTime() - aValue.getTime()
19
+ // }
20
+ // const aString = String(aValue).toLowerCase()
21
+ // const bString = String(bValue).toLowerCase()
22
+ // return direction === 'ASC'
23
+ // ? aString.localeCompare(bString)
24
+ // : bString.localeCompare(aString)
25
+ // })
26
+ // }
27
+ function sortData(data, columnPath, direction) {
3
28
  return [...data].sort((a, b) => {
4
- const aValue = a[column];
5
- const bValue = b[column];
29
+ const aValue = getNestedValue(a, columnPath);
30
+ const bValue = getNestedValue(b, columnPath);
6
31
  if (typeof aValue === 'number' && typeof bValue === 'number') {
7
32
  return direction === 'ASC' ? aValue - bValue : bValue - aValue;
8
33
  }
@@ -11,8 +36,8 @@ function sortData(data, column, direction) {
11
36
  ? aValue.getTime() - bValue.getTime()
12
37
  : bValue.getTime() - aValue.getTime();
13
38
  }
14
- const aString = String(aValue).toLowerCase();
15
- const bString = String(bValue).toLowerCase();
39
+ const aString = String(aValue || '').toLowerCase();
40
+ const bString = String(bValue || '').toLowerCase();
16
41
  return direction === 'ASC'
17
42
  ? aString.localeCompare(bString)
18
43
  : bString.localeCompare(aString);
@@ -1 +1 @@
1
- {"version":3,"file":"sortData.js","sources":["../../../src/utils/sortData.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;SAiCgB,QAAQ,CAAI,IAAS,EAAE,MAAe,EAAE,SAAwB,EAAA;AAC9E,IAAA,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAI;AAC7B,QAAA,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;AACxB,QAAA,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QAExB,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;AAC5D,YAAA,OAAO,SAAS,KAAK,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM;;QAGhE,IAAI,MAAM,YAAY,IAAI,IAAI,MAAM,YAAY,IAAI,EAAE;YACpD,OAAO,SAAS,KAAK;kBACjB,MAAM,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO;kBACjC,MAAM,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE;;QAGzC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE;QAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE;QAE5C,OAAO,SAAS,KAAK;AACnB,cAAE,OAAO,CAAC,aAAa,CAAC,OAAO;AAC/B,cAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC;AACpC,KAAC,CAAC;AACJ;;;;"}
1
+ {"version":3,"file":"sortData.js","sources":["../../../src/utils/sortData.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;AACA;AACA;AACA;SAEgB,QAAQ,CACtB,IAAS,EACT,UAAkB,EAClB,SAAwB,EAAA;AAExB,IAAA,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAI;QAC7B,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,EAAE,UAAU,CAAC;QAC5C,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,EAAE,UAAU,CAAC;QAE5C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;AAC5D,YAAA,OAAO,SAAS,KAAK,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM;;QAGhE,IAAI,MAAM,YAAY,IAAI,IAAI,MAAM,YAAY,IAAI,EAAE;YACpD,OAAO,SAAS,KAAK;kBACjB,MAAM,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO;kBACjC,MAAM,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE;;QAGzC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE;QAClD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE;QAElD,OAAO,SAAS,KAAK;AACnB,cAAE,OAAO,CAAC,aAAa,CAAC,OAAO;AAC/B,cAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC;AACpC,KAAC,CAAC;AACJ;;;;"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "karsten-design-system",
3
3
  "description": "Karsten Design System Components",
4
- "version": "1.0.97",
4
+ "version": "1.0.99",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "module": "./dist/index.js",