@tecsinapse/cortex-react 1.2.2 → 1.3.0-beta.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.
Files changed (150) hide show
  1. package/dist/cjs/components/Avatar.js +3 -2
  2. package/dist/cjs/components/BaseSnackbar.js +13 -0
  3. package/dist/cjs/components/BreadcrumbItem.js +2 -1
  4. package/dist/cjs/components/Breadcrumbs.js +1 -1
  5. package/dist/cjs/components/Button.js +10 -1
  6. package/dist/cjs/components/Calendar.js +22 -0
  7. package/dist/cjs/components/CalendarCell.js +51 -0
  8. package/dist/cjs/components/CalendarGrid.js +23 -0
  9. package/dist/cjs/components/CalendarGridBodyRows.js +12 -0
  10. package/dist/cjs/components/CalendarGridHeaderRow.js +12 -0
  11. package/dist/cjs/components/CalendarHeader.js +40 -0
  12. package/dist/cjs/components/Card.js +1 -1
  13. package/dist/cjs/components/DateSegment.js +12 -0
  14. package/dist/cjs/components/DefaultSnack.js +27 -0
  15. package/dist/cjs/components/Drawer.js +3 -1
  16. package/dist/cjs/components/GroupButton.js +43 -0
  17. package/dist/cjs/components/Input.js +5 -3
  18. package/dist/cjs/components/Modal.js +6 -13
  19. package/dist/cjs/components/ProgressBar.js +71 -0
  20. package/dist/cjs/components/RangeCalendar.js +44 -0
  21. package/dist/cjs/components/SearchInput.js +19 -9
  22. package/dist/cjs/components/Select.js +4 -4
  23. package/dist/cjs/components/Skeleton.js +4 -1
  24. package/dist/cjs/components/Table.js +8 -14
  25. package/dist/cjs/components/TextArea.js +2 -0
  26. package/dist/cjs/components/TimeField.js +12 -0
  27. package/dist/cjs/components/TimeFieldInput.js +22 -0
  28. package/dist/cjs/components/Toggle.js +17 -9
  29. package/dist/cjs/components/utils.js +5 -4
  30. package/dist/cjs/hooks/useCalendar.js +27 -0
  31. package/dist/cjs/hooks/useCalendarCell.js +35 -0
  32. package/dist/cjs/hooks/useCalendarGrid.js +14 -0
  33. package/dist/cjs/hooks/useTimeField.js +32 -0
  34. package/dist/cjs/index.js +37 -16
  35. package/dist/cjs/service/SnackbarSonner.js +54 -0
  36. package/dist/cjs/styles/calendar-cell.js +40 -0
  37. package/dist/cjs/styles/groupButton.js +16 -0
  38. package/dist/cjs/styles/progressBar.js +21 -0
  39. package/dist/esm/components/Avatar.js +4 -3
  40. package/dist/esm/components/BaseSnackbar.js +11 -0
  41. package/dist/esm/components/BreadcrumbItem.js +2 -1
  42. package/dist/esm/components/Breadcrumbs.js +1 -1
  43. package/dist/esm/components/Button.js +10 -1
  44. package/dist/esm/components/Calendar.js +20 -0
  45. package/dist/esm/components/CalendarCell.js +49 -0
  46. package/dist/esm/components/CalendarGrid.js +21 -0
  47. package/dist/esm/components/CalendarGridBodyRows.js +10 -0
  48. package/dist/esm/components/CalendarGridHeaderRow.js +10 -0
  49. package/dist/esm/components/CalendarHeader.js +38 -0
  50. package/dist/esm/components/Card.js +1 -1
  51. package/dist/esm/components/DateSegment.js +10 -0
  52. package/dist/esm/components/DefaultSnack.js +25 -0
  53. package/dist/esm/components/Drawer.js +3 -1
  54. package/dist/esm/components/GroupButton.js +41 -0
  55. package/dist/esm/components/Input.js +5 -3
  56. package/dist/esm/components/Modal.js +6 -13
  57. package/dist/esm/components/ProgressBar.js +69 -0
  58. package/dist/esm/components/RangeCalendar.js +42 -0
  59. package/dist/esm/components/SearchInput.js +19 -9
  60. package/dist/esm/components/Select.js +4 -4
  61. package/dist/esm/components/Skeleton.js +4 -1
  62. package/dist/esm/components/Table.js +9 -14
  63. package/dist/esm/components/TextArea.js +2 -0
  64. package/dist/esm/components/TimeField.js +10 -0
  65. package/dist/esm/components/TimeFieldInput.js +20 -0
  66. package/dist/esm/components/Toggle.js +17 -9
  67. package/dist/esm/components/utils.js +5 -4
  68. package/dist/esm/hooks/useCalendar.js +25 -0
  69. package/dist/esm/hooks/useCalendarCell.js +33 -0
  70. package/dist/esm/hooks/useCalendarGrid.js +12 -0
  71. package/dist/esm/hooks/useTimeField.js +30 -0
  72. package/dist/esm/index.js +18 -7
  73. package/dist/esm/service/SnackbarSonner.js +52 -0
  74. package/dist/esm/styles/calendar-cell.js +38 -0
  75. package/dist/esm/styles/groupButton.js +14 -0
  76. package/dist/esm/styles/progressBar.js +19 -0
  77. package/dist/types/components/BaseSnackbar.d.ts +9 -0
  78. package/dist/types/components/BreadcrumbItem.d.ts +1 -3
  79. package/dist/types/components/Calendar.d.ts +6 -0
  80. package/dist/types/components/CalendarCell.d.ts +8 -0
  81. package/dist/types/components/CalendarGrid.d.ts +6 -0
  82. package/dist/types/components/CalendarGridBodyRows.d.ts +6 -0
  83. package/dist/types/components/CalendarGridHeaderRow.d.ts +5 -0
  84. package/dist/types/components/CalendarHeader.d.ts +6 -0
  85. package/dist/types/components/DateSegment.d.ts +7 -0
  86. package/dist/types/components/DefaultSnack.d.ts +6 -0
  87. package/dist/types/components/Drawer.d.ts +1 -1
  88. package/dist/types/components/GroupButton.d.ts +19 -0
  89. package/dist/types/components/Input.d.ts +2 -2
  90. package/dist/types/components/Modal.d.ts +2 -2
  91. package/dist/types/components/ProgressBar.d.ts +9 -0
  92. package/dist/types/components/RangeCalendar.d.ts +10 -0
  93. package/dist/types/components/SearchInput.d.ts +0 -1
  94. package/dist/types/components/Select.d.ts +0 -1
  95. package/dist/types/components/Skeleton.d.ts +4 -2
  96. package/dist/types/components/Table.d.ts +0 -1
  97. package/dist/types/components/TimeField.d.ts +7 -0
  98. package/dist/types/components/TimeFieldInput.d.ts +10 -0
  99. package/dist/types/components/index.d.ts +13 -7
  100. package/dist/types/components/utils.d.ts +1 -1
  101. package/dist/types/hooks/index.d.ts +3 -0
  102. package/dist/types/hooks/useCalendar.d.ts +10 -0
  103. package/dist/types/hooks/useCalendarCell.d.ts +18 -0
  104. package/dist/types/hooks/useCalendarGrid.d.ts +10 -0
  105. package/dist/types/hooks/useTimeField.d.ts +7 -0
  106. package/dist/types/index.d.ts +2 -0
  107. package/dist/types/provider/SnackbarProvider.d.ts +10 -0
  108. package/dist/types/service/ISnackbar.d.ts +7 -0
  109. package/dist/types/service/SnackbarSonner.d.ts +7 -0
  110. package/dist/types/service/index.d.ts +2 -0
  111. package/dist/types/styles/calendar-cell.d.ts +199 -0
  112. package/dist/types/styles/groupButton.d.ts +77 -0
  113. package/dist/types/styles/index.d.ts +3 -0
  114. package/dist/types/styles/progressBar.d.ts +78 -0
  115. package/dist/types/tests/Avatar.test.d.ts +1 -0
  116. package/dist/types/tests/Badge.test.d.ts +1 -0
  117. package/dist/types/tests/BreadcrumbItem.test.d.ts +1 -0
  118. package/dist/types/tests/Breadcrumbs.test.d.ts +1 -0
  119. package/dist/types/tests/Button.test.d.ts +1 -0
  120. package/dist/types/tests/Calendar.test.d.ts +1 -0
  121. package/dist/types/tests/CalendarCell.test.d.ts +1 -0
  122. package/dist/types/tests/CalendarGridBodyRows.test.d.ts +1 -0
  123. package/dist/types/tests/CalendarGridHeaderRow.test.d.ts +1 -0
  124. package/dist/types/tests/CalendarHeader.test.d.ts +1 -0
  125. package/dist/types/tests/Card.test.d.ts +1 -0
  126. package/dist/types/tests/DateSegment.test.d.ts +1 -0
  127. package/dist/types/tests/DefaultSnack.test.d.ts +1 -0
  128. package/dist/types/tests/Drawer.test.d.ts +1 -0
  129. package/dist/types/tests/GroupButton.test.d.ts +1 -0
  130. package/dist/types/tests/Hint.test.d.ts +1 -0
  131. package/dist/types/tests/Input.test.d.ts +1 -0
  132. package/dist/types/tests/Modal.test.d.ts +1 -0
  133. package/dist/types/tests/ProgressBar.test.d.ts +1 -0
  134. package/dist/types/tests/SearchInput.test.d.ts +1 -0
  135. package/dist/types/tests/Select.test.d.ts +1 -0
  136. package/dist/types/tests/Skeleton.test.d.ts +1 -0
  137. package/dist/types/tests/Snackbar.test.d.ts +1 -0
  138. package/dist/types/tests/Table.test.d.ts +1 -0
  139. package/dist/types/tests/Tag.test.d.ts +1 -0
  140. package/dist/types/tests/TextArea.test.d.ts +1 -0
  141. package/dist/types/tests/TimeField.test.d.ts +1 -0
  142. package/dist/types/tests/TimeFieldInput.test.d.ts +1 -0
  143. package/dist/types/tests/Toggle.test.d.ts +1 -0
  144. package/dist/types/tests/useCalendarCell.test.d.ts +1 -0
  145. package/dist/types/tests/useDebouncedState.test.d.ts +1 -0
  146. package/dist/types/tests/utils.test.d.ts +1 -0
  147. package/package.json +10 -5
  148. package/dist/cjs/components/Snackbar.js +0 -18
  149. package/dist/esm/components/Snackbar.js +0 -16
  150. package/dist/types/components/Snackbar.d.ts +0 -9
@@ -7,46 +7,40 @@ const THead = ({
7
7
  children,
8
8
  className,
9
9
  ...rest
10
- }) => /* @__PURE__ */ React.createElement("thead", { className: cortexCore.tHead({ className }), ...rest }, children);
10
+ }) => /* @__PURE__ */ React.createElement("thead", { className: cortexCore.tHead({ className }), "data-testid": "thead", ...rest }, children);
11
11
  const TRow = ({
12
12
  children,
13
13
  className,
14
14
  ...rest
15
- }) => /* @__PURE__ */ React.createElement("tr", { className: cortexCore.tRow({ className }), ...rest }, children);
15
+ }) => /* @__PURE__ */ React.createElement("tr", { className: cortexCore.tRow({ className }), "data-testid": "trow", ...rest }, children);
16
16
  const THeadCell = ({
17
17
  children,
18
18
  className,
19
19
  ...rest
20
- }) => /* @__PURE__ */ React.createElement("th", { className: cortexCore.tHeadCell({ className }), ...rest }, children);
20
+ }) => /* @__PURE__ */ React.createElement("th", { className: cortexCore.tHeadCell({ className }), "data-testid": "thead-cell", ...rest }, children);
21
21
  const TRowHeader = ({
22
22
  children
23
- }) => /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("tr", { className: cortexCore.tRow() }, children), /* @__PURE__ */ React.createElement("tr", { className: cortexCore.tRow() }, /* @__PURE__ */ React.createElement("td", { colSpan: 99 }, /* @__PURE__ */ React.createElement("hr", { className: cortexCore.hr() }))));
23
+ }) => /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("tr", { className: cortexCore.tRow(), "data-testid": "trow-header" }, children), /* @__PURE__ */ React.createElement("tr", { className: cortexCore.tRow() }, /* @__PURE__ */ React.createElement("td", { colSpan: 99 }, /* @__PURE__ */ React.createElement("hr", { className: cortexCore.hr() }))));
24
24
  const TCell = ({
25
25
  children,
26
26
  className,
27
27
  ...rest
28
- }) => /* @__PURE__ */ React.createElement("td", { className: cortexCore.tCell({ className }), ...rest }, children);
28
+ }) => /* @__PURE__ */ React.createElement("td", { className: cortexCore.tCell({ className }), "data-testid": "tcell", ...rest }, children);
29
29
  const TFoot = ({
30
30
  children,
31
31
  className,
32
32
  ...rest
33
- }) => /* @__PURE__ */ React.createElement("tfoot", { className: cortexCore.tFoot({ className }), ...rest }, children);
33
+ }) => /* @__PURE__ */ React.createElement("tfoot", { className: cortexCore.tFoot({ className }), "data-testid": "tfoot", ...rest }, children);
34
34
  const Table = ({
35
35
  children,
36
36
  className,
37
37
  ...rest
38
- }) => /* @__PURE__ */ React.createElement("table", { className: cortexCore.tRoot({ className }), ...rest }, children);
39
- const Hr = ({
40
- children,
41
- className,
42
- ...rest
43
- }) => /* @__PURE__ */ React.createElement("hr", { className: cortexCore.hr({ className }), ...rest }, children);
38
+ }) => /* @__PURE__ */ React.createElement("table", { className: cortexCore.tRoot({ className }), "data-testid": "table", ...rest }, children);
44
39
  const Td = ({
45
40
  children,
46
41
  ...rest
47
- }) => /* @__PURE__ */ React.createElement("td", { ...rest }, children);
42
+ }) => /* @__PURE__ */ React.createElement("td", { ...rest, "data-testid": "td" }, children);
48
43
 
49
- exports.Hr = Hr;
50
44
  exports.TCell = TCell;
51
45
  exports.TFoot = TFoot;
52
46
  exports.THead = THead;
@@ -14,6 +14,7 @@ const Box = React.forwardRef(
14
14
  return /* @__PURE__ */ React.createElement("div", { className: "flex w-full flex-col" }, /* @__PURE__ */ React.createElement(
15
15
  "textarea",
16
16
  {
17
+ "data-testid": "textarea-box",
17
18
  ref,
18
19
  id: id ?? name,
19
20
  name,
@@ -48,6 +49,7 @@ const Face = React.forwardRef(
48
49
  {
49
50
  ref,
50
51
  className: clsx.clsx(cortexCore.input(variants), className),
52
+ "data-testid": "textarea-face",
51
53
  id: "textarea-face",
52
54
  ...rest
53
55
  },
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var DateSegment = require('./DateSegment.js');
5
+ var useTimeField = require('../hooks/useTimeField.js');
6
+
7
+ const TimeField = (props) => {
8
+ const { fieldProps, ref, state } = useTimeField.useTimeField(props);
9
+ return /* @__PURE__ */ React.createElement("div", { ...fieldProps, ref, className: "flex flex-row" }, state.segments.map((segment, i) => /* @__PURE__ */ React.createElement(DateSegment.DateSegment, { key: i, segment, state })));
10
+ };
11
+
12
+ module.exports = TimeField;
@@ -0,0 +1,22 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var Input = require('./Input.js');
5
+ var cortexCore = require('@tecsinapse/cortex-core');
6
+ var TimeField = require('./TimeField.js');
7
+
8
+ const TimeFieldInput = (props) => {
9
+ const { onChange, value, label, variants } = props;
10
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(
11
+ Input.Input.Face,
12
+ {
13
+ variants,
14
+ className: "flex flex-row",
15
+ "data-testid": "time-field-input"
16
+ },
17
+ /* @__PURE__ */ React.createElement("span", { className: cortexCore.labelStyle({}) }, label),
18
+ /* @__PURE__ */ React.createElement("div", { className: cortexCore.inputBox("", label) }, /* @__PURE__ */ React.createElement(TimeField, { onChange, value }))
19
+ ));
20
+ };
21
+
22
+ exports.TimeFieldInput = TimeFieldInput;
@@ -1,18 +1,26 @@
1
1
  'use strict';
2
2
 
3
- var React = require('react');
4
3
  var cortexCore = require('@tecsinapse/cortex-core');
4
+ var React = require('react');
5
5
 
6
6
  const Toggle = React.forwardRef((props, ref) => {
7
- return /* @__PURE__ */ React.createElement("div", { className: "flex flex-row items-center gap-x-centi" }, /* @__PURE__ */ React.createElement("label", { className: cortexCore.styleLabelElement() }, /* @__PURE__ */ React.createElement(
8
- "input",
7
+ return /* @__PURE__ */ React.createElement(
8
+ "div",
9
9
  {
10
- type: "checkbox",
11
- className: cortexCore.styleInputElement(),
12
- ref,
13
- ...props
14
- }
15
- ), /* @__PURE__ */ React.createElement("div", { className: cortexCore.toggle() })));
10
+ className: "flex flex-row items-center gap-x-centi",
11
+ "data-testid": "toggle-div"
12
+ },
13
+ /* @__PURE__ */ React.createElement("label", { className: cortexCore.styleLabelElement() }, /* @__PURE__ */ React.createElement(
14
+ "input",
15
+ {
16
+ type: "checkbox",
17
+ className: cortexCore.styleInputElement(),
18
+ ref,
19
+ "data-testid": "toggle-input",
20
+ ...props
21
+ }
22
+ ), /* @__PURE__ */ React.createElement("div", { className: cortexCore.toggle() }))
23
+ );
16
24
  });
17
25
 
18
26
  exports.Toggle = Toggle;
@@ -1,11 +1,12 @@
1
1
  'use strict';
2
2
 
3
- const getInitialsName = (name) => {
3
+ const getNameInitials = (name) => {
4
4
  const nameSplit = name.split(" ");
5
- if (nameSplit.length > 1) {
6
- return nameSplit.slice(0, 2).map((name2) => name2[0]).join("");
5
+ const length = nameSplit.length;
6
+ if (length > 1) {
7
+ return `${nameSplit[0][0]}${nameSplit[length - 1][0]}`;
7
8
  }
8
9
  return name[0];
9
10
  };
10
11
 
11
- exports.getInitialsName = getInitialsName;
12
+ exports.getNameInitials = getNameInitials;
@@ -0,0 +1,27 @@
1
+ 'use strict';
2
+
3
+ var date = require('@internationalized/date');
4
+ var reactAria = require('react-aria');
5
+ var reactStately = require('react-stately');
6
+
7
+ const useCalendar = ({ value, onChange }) => {
8
+ const { locale } = reactAria.useLocale();
9
+ const state = reactStately.useCalendarState({
10
+ locale,
11
+ createCalendar: date.createCalendar,
12
+ defaultValue: new date.CalendarDate(
13
+ value.getFullYear(),
14
+ value.getMonth(),
15
+ value.getDate()
16
+ ),
17
+ onChange: (value2) => onChange(value2.toDate(date.getLocalTimeZone()))
18
+ });
19
+ const { calendarProps, title } = reactAria.useCalendar({}, state);
20
+ return {
21
+ calendarProps,
22
+ title,
23
+ state
24
+ };
25
+ };
26
+
27
+ exports.useCalendar = useCalendar;
@@ -0,0 +1,35 @@
1
+ 'use strict';
2
+
3
+ var date = require('@internationalized/date');
4
+ var React = require('react');
5
+ var reactAria = require('react-aria');
6
+
7
+ const useCalendarCell = ({ state, date: date$1 }) => {
8
+ const ref = React.useRef(null);
9
+ const {
10
+ cellProps,
11
+ buttonProps,
12
+ isSelected,
13
+ isOutsideVisibleRange,
14
+ formattedDate
15
+ } = reactAria.useCalendarCell({ date: date$1 }, state, ref);
16
+ const rangeStateHighlitedRange = state?.highlightedRange;
17
+ const isSameDayStart = rangeStateHighlitedRange ? date.isSameDay(date$1, state?.highlightedRange?.start) : void 0;
18
+ const isSameDayEnd = rangeStateHighlitedRange ? date.isSameDay(date$1, state?.highlightedRange?.end) : void 0;
19
+ const isSelectionStart = isSameDayStart && !isSameDayEnd;
20
+ const isSelectionEnd = isSameDayEnd && !isSameDayStart;
21
+ const inRange = date$1 > rangeStateHighlitedRange?.start && date$1 < rangeStateHighlitedRange?.end;
22
+ return {
23
+ ref,
24
+ cellProps,
25
+ buttonProps,
26
+ isSelected,
27
+ isOutsideVisibleRange,
28
+ formattedDate,
29
+ isSelectionStart,
30
+ isSelectionEnd,
31
+ inRange
32
+ };
33
+ };
34
+
35
+ exports.useCalendarCell = useCalendarCell;
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ var reactAria = require('react-aria');
4
+
5
+ const useCalendarGrid = ({ state }) => {
6
+ const { gridProps, headerProps, weekDays } = reactAria.useCalendarGrid({}, state);
7
+ return {
8
+ gridProps,
9
+ headerProps,
10
+ weekDays
11
+ };
12
+ };
13
+
14
+ exports.useCalendarGrid = useCalendarGrid;
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var reactAria = require('react-aria');
5
+ var reactStately = require('react-stately');
6
+ var date = require('@internationalized/date');
7
+
8
+ const useTimeField = (props) => {
9
+ const { value, onChange } = props;
10
+ const { locale } = reactAria.useLocale();
11
+ const state = reactStately.useTimeFieldState({
12
+ value: new date.Time(value?.hour, value?.minute),
13
+ onChange: (timeValue) => onChange({ hour: timeValue.hour, minute: timeValue.minute }),
14
+ locale
15
+ });
16
+ const ref = React.useRef(null);
17
+ const { fieldProps } = reactAria.useTimeField(
18
+ {
19
+ "aria-label": "time-field",
20
+ hourCycle: 24
21
+ },
22
+ state,
23
+ ref
24
+ );
25
+ return {
26
+ fieldProps,
27
+ ref,
28
+ state
29
+ };
30
+ };
31
+
32
+ exports.useTimeField = useTimeField;
package/dist/cjs/index.js CHANGED
@@ -1,28 +1,46 @@
1
1
  'use strict';
2
2
 
3
+ var Avatar = require('./components/Avatar.js');
3
4
  var Badge = require('./components/Badge.js');
5
+ var BaseSnackbar = require('./components/BaseSnackbar.js');
6
+ var Breadcrumbs = require('./components/Breadcrumbs.js');
4
7
  var Button = require('./components/Button.js');
8
+ var Calendar = require('./components/Calendar.js');
5
9
  var Card = require('./components/Card.js');
10
+ var DefaultSnack = require('./components/DefaultSnack.js');
11
+ var Drawer = require('./components/Drawer.js');
12
+ var GroupButton = require('./components/GroupButton.js');
6
13
  var Hint = require('./components/Hint.js');
7
14
  var Input = require('./components/Input.js');
8
15
  var Modal = require('./components/Modal.js');
16
+ var ProgressBar = require('./components/ProgressBar.js');
17
+ var RangeCalendar = require('./components/RangeCalendar.js');
9
18
  var Select = require('./components/Select.js');
10
- var Snackbar = require('./components/Snackbar.js');
19
+ var Skeleton = require('./components/Skeleton.js');
20
+ var Table = require('./components/Table.js');
11
21
  var Tag = require('./components/Tag.js');
12
- var Toggle = require('./components/Toggle.js');
13
22
  var TextArea = require('./components/TextArea.js');
14
- var Table = require('./components/Table.js');
15
- var Drawer = require('./components/Drawer.js');
16
- var Breadcrumbs = require('./components/Breadcrumbs.js');
17
- var Avatar = require('./components/Avatar.js');
18
- var Skeleton = require('./components/Skeleton.js');
23
+ var Toggle = require('./components/Toggle.js');
24
+ var TimeFieldInput = require('./components/TimeFieldInput.js');
25
+ var SnackbarSonner = require('./service/SnackbarSonner.js');
26
+ var useCalendar = require('./hooks/useCalendar.js');
27
+ var useCalendarCell = require('./hooks/useCalendarCell.js');
28
+ var useCalendarGrid = require('./hooks/useCalendarGrid.js');
29
+ var useDebouncedState = require('./hooks/useDebouncedState.js');
19
30
 
20
31
 
21
32
 
33
+ exports.Avatar = Avatar.Avatar;
22
34
  exports.Badge = Badge.Badge;
23
35
  exports.BadgeAnchor = Badge.BadgeAnchor;
36
+ exports.BaseSnackbar = BaseSnackbar.BaseSnackbar;
37
+ exports.Breadcrumbs = Breadcrumbs.Breadcrumbs;
24
38
  exports.Button = Button.Button;
39
+ exports.Calendar = Calendar.Calendar;
25
40
  exports.Card = Card.Card;
41
+ exports.DefaultSnack = DefaultSnack.DefaultSnack;
42
+ exports.Drawer = Drawer.Drawer;
43
+ exports.GroupButton = GroupButton.GroupButton;
26
44
  exports.Hint = Hint.Hint;
27
45
  exports.Box = Input.Box;
28
46
  exports.Face = Input.Face;
@@ -31,12 +49,10 @@ exports.Left = Input.Left;
31
49
  exports.Right = Input.Right;
32
50
  exports.Root = Input.Root;
33
51
  exports.Modal = Modal.Modal;
52
+ exports.ProgressBar = ProgressBar.ProgressBar;
53
+ exports.RangeCalendar = RangeCalendar.RangeCalendar;
34
54
  exports.Select = Select.Select;
35
- exports.Snackbar = Snackbar.Snackbar;
36
- exports.Tag = Tag.Tag;
37
- exports.Toggle = Toggle.Toggle;
38
- exports.TextArea = TextArea.TextArea;
39
- exports.Hr = Table.Hr;
55
+ exports.Skeleton = Skeleton.Skeleton;
40
56
  exports.TCell = Table.TCell;
41
57
  exports.TFoot = Table.TFoot;
42
58
  exports.THead = Table.THead;
@@ -45,7 +61,12 @@ exports.TRow = Table.TRow;
45
61
  exports.TRowHeader = Table.TRowHeader;
46
62
  exports.Table = Table.Table;
47
63
  exports.Td = Table.Td;
48
- exports.Drawer = Drawer.Drawer;
49
- exports.Breadcrumbs = Breadcrumbs.Breadcrumbs;
50
- exports.Avatar = Avatar.Avatar;
51
- exports.Skeleton = Skeleton.Skeleton;
64
+ exports.Tag = Tag.Tag;
65
+ exports.TextArea = TextArea.TextArea;
66
+ exports.Toggle = Toggle.Toggle;
67
+ exports.TimeFieldInput = TimeFieldInput.TimeFieldInput;
68
+ exports.SnackbarSonner = SnackbarSonner.SnackbarSonner;
69
+ exports.useCalendar = useCalendar.useCalendar;
70
+ exports.useCalendarCell = useCalendarCell.useCalendarCell;
71
+ exports.useCalendarGrid = useCalendarGrid.useCalendarGrid;
72
+ exports.useDebouncedState = useDebouncedState.useDebouncedState;
@@ -0,0 +1,54 @@
1
+ 'use strict';
2
+
3
+ var sonner = require('sonner');
4
+ var React = require('react');
5
+ require('clsx');
6
+ require('../components/Badge.js');
7
+ require('../components/BaseSnackbar.js');
8
+ require('react-icons/md');
9
+ require('../components/Card.js');
10
+ require('../components/Button.js');
11
+ require('@internationalized/date');
12
+ require('react-aria');
13
+ require('react-stately');
14
+ require('../components/CalendarCell.js');
15
+ require('@tecsinapse/cortex-core');
16
+ require('react-icons/fa');
17
+ var DefaultSnack = require('../components/DefaultSnack.js');
18
+ require('../components/GroupButton.js');
19
+ require('../components/Hint.js');
20
+ require('../components/Input.js');
21
+ require('../components/Modal.js');
22
+ require('../styles/calendar-cell.js');
23
+ require('../styles/groupButton.js');
24
+ require('../styles/progressBar.js');
25
+ require('../components/Select.js');
26
+ require('../components/Tag.js');
27
+ require('../components/TextArea.js');
28
+ require('../components/Toggle.js');
29
+
30
+ class SnackbarSonner {
31
+ custom(Component, options) {
32
+ return sonner.toast.custom(() => Component, {
33
+ ...options,
34
+ duration: options?.duration ?? 5e3
35
+ });
36
+ }
37
+ show(type, message, options) {
38
+ return sonner.toast.custom(
39
+ (t) => {
40
+ return /* @__PURE__ */ React.createElement(
41
+ DefaultSnack.DefaultSnack,
42
+ {
43
+ text: message,
44
+ variants: { intent: type },
45
+ onDismiss: () => sonner.toast.dismiss(t)
46
+ }
47
+ );
48
+ },
49
+ { ...options, duration: options?.duration ?? 5e3 }
50
+ );
51
+ }
52
+ }
53
+
54
+ exports.SnackbarSonner = SnackbarSonner;
@@ -0,0 +1,40 @@
1
+ 'use strict';
2
+
3
+ var tailwindVariants = require('tailwind-variants');
4
+
5
+ const calendarCell = tailwindVariants.tv({
6
+ slots: {
7
+ cell: "text-center rounded-mili text-black",
8
+ button: "flex aspect-square items-center justify-center"
9
+ },
10
+ variants: {
11
+ isSelected: {
12
+ true: {
13
+ cell: "bg-primary-medium text-white"
14
+ }
15
+ },
16
+ isSelectionStart: {
17
+ true: {
18
+ cell: "bg-primary-medium rounded-r-none text-white"
19
+ }
20
+ },
21
+ isSelectionEnd: {
22
+ true: {
23
+ cell: "bg-primary-medium rounded-l-none text-white"
24
+ }
25
+ },
26
+ inRange: {
27
+ true: {
28
+ cell: "bg-primary-light rounded-none text-black"
29
+ }
30
+ },
31
+ isOutsideVisibleRange: {
32
+ true: {
33
+ cell: "text-secondary-light cursor-default",
34
+ button: "cursor-default"
35
+ }
36
+ }
37
+ }
38
+ });
39
+
40
+ exports.calendarCell = calendarCell;
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ var tailwindVariants = require('tailwind-variants');
4
+
5
+ const groupButton = tailwindVariants.tv({
6
+ slots: {
7
+ button: "border-[1px] border-secondary-medium px-centi py-mili items-center flex text-sub font-bold",
8
+ inactive: "bg-white text-secondary-medium disabled:bg-secondary-light",
9
+ firstButton: "first:rounded-l-mili first:border-r-0",
10
+ lastButton: "last:rounded-r-mili last:border-l-0",
11
+ container: "flex flex-row flex-1 h-[2rem] w-[500px]",
12
+ active: "text-white bg-secondary-medium"
13
+ }
14
+ });
15
+
16
+ exports.groupButton = groupButton;
@@ -0,0 +1,21 @@
1
+ 'use strict';
2
+
3
+ var tailwindVariants = require('tailwind-variants');
4
+
5
+ const progressBarFilled = tailwindVariants.tv({
6
+ base: "h-full first:rounded-l-pill last:rounded-r-pill",
7
+ variants: {
8
+ intentProgress: {
9
+ default: "bg-primary-medium",
10
+ error: "bg-error-medium",
11
+ info: "bg-info-medium",
12
+ warning: "bg-warning-medium",
13
+ success: "bg-success-medium"
14
+ },
15
+ showAnimation: {
16
+ true: "transition-[width] duration-1000 ease-linear"
17
+ }
18
+ }
19
+ });
20
+
21
+ exports.progressBarFilled = progressBarFilled;
@@ -1,6 +1,6 @@
1
1
  import clsx from 'clsx';
2
2
  import React from 'react';
3
- import { getInitialsName } from './utils.js';
3
+ import { getNameInitials } from './utils.js';
4
4
 
5
5
  const Avatar = ({ src, name, className, ...rest }) => {
6
6
  const [hasError, setHasError] = React.useState(false);
@@ -22,9 +22,10 @@ const Avatar = ({ src, name, className, ...rest }) => {
22
22
  src,
23
23
  alt: name,
24
24
  className: "rounded-pill",
25
- onError: () => setHasError(true)
25
+ onError: () => setHasError(true),
26
+ "data-testid": "avatar-img"
26
27
  }
27
- ) : /* @__PURE__ */ React.createElement("p", { className: "font-bold text-white text-base" }, getInitialsName(name))
28
+ ) : /* @__PURE__ */ React.createElement("p", { className: "font-bold text-white text-base", "data-testid": "avatar-p" }, getNameInitials(name))
28
29
  );
29
30
  };
30
31
 
@@ -0,0 +1,11 @@
1
+ import React, { forwardRef } from 'react';
2
+ import { snackbar } from '@tecsinapse/cortex-core';
3
+
4
+ const BaseSnackbar = forwardRef(
5
+ (props, ref) => {
6
+ const { children, show, variants } = props;
7
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, show ? /* @__PURE__ */ React.createElement("div", { className: snackbar(variants), ref, "data-testid": "snackbar" }, children) : /* @__PURE__ */ React.createElement(React.Fragment, null));
8
+ }
9
+ );
10
+
11
+ export { BaseSnackbar };
@@ -16,7 +16,8 @@ const BreadcrumbItem = ({
16
16
  ), !isLast ? /* @__PURE__ */ React.createElement(
17
17
  MdOutlineKeyboardDoubleArrowRight,
18
18
  {
19
- className: "mt-[0.125rem] text-primary-medium"
19
+ className: "mt-[0.125rem] text-primary-medium",
20
+ "data-testid": "breadcrumb-item-icon"
20
21
  }
21
22
  ) : /* @__PURE__ */ React.createElement(React.Fragment, null)));
22
23
  };
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { Card } from './Card.js';
3
2
  import { BreadcrumbItem } from './BreadcrumbItem.js';
3
+ import { Card } from './Card.js';
4
4
 
5
5
  const Breadcrumbs = (props) => {
6
6
  const { breadcrumbs, ...rest } = props;
@@ -3,7 +3,16 @@ import { button } from '@tecsinapse/cortex-core';
3
3
 
4
4
  const Button = forwardRef((props, ref) => {
5
5
  const { variants, children, ...rest } = props;
6
- return /* @__PURE__ */ React.createElement("button", { className: button(variants), ref, ...rest }, children);
6
+ return /* @__PURE__ */ React.createElement(
7
+ "button",
8
+ {
9
+ className: button(variants),
10
+ ref,
11
+ "data-testid": "button",
12
+ ...rest
13
+ },
14
+ children
15
+ );
7
16
  });
8
17
 
9
18
  export { Button };
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { useCalendar } from '../hooks/useCalendar.js';
3
+ import '@internationalized/date';
4
+ import 'react-aria';
5
+ import { CalendarGrid } from './CalendarGrid.js';
6
+ import { CalendarHeader } from './CalendarHeader.js';
7
+
8
+ const Calendar = ({ value, onChange }) => {
9
+ const { calendarProps, title, state } = useCalendar({ value, onChange });
10
+ return /* @__PURE__ */ React.createElement("div", { ...calendarProps, className: "calendar", "data-testid": "calendar-div" }, /* @__PURE__ */ React.createElement(
11
+ CalendarHeader,
12
+ {
13
+ onClickPrevButton: () => state.focusPreviousPage(),
14
+ onClickNextButton: () => state.focusNextPage(),
15
+ title
16
+ }
17
+ ), /* @__PURE__ */ React.createElement(CalendarGrid, { state }));
18
+ };
19
+
20
+ export { Calendar };
@@ -0,0 +1,49 @@
1
+ import React from 'react';
2
+ import '@internationalized/date';
3
+ import 'react-aria';
4
+ import 'react-stately';
5
+ import { useCalendarCell } from '../hooks/useCalendarCell.js';
6
+ import { calendarCell } from '../styles/calendar-cell.js';
7
+ import '../styles/groupButton.js';
8
+ import '../styles/progressBar.js';
9
+ import { Td } from './Table.js';
10
+
11
+ const { cell, button } = calendarCell();
12
+ const CalendarCell = ({ state, date }) => {
13
+ const {
14
+ ref,
15
+ cellProps,
16
+ buttonProps,
17
+ isSelected,
18
+ isOutsideVisibleRange,
19
+ formattedDate,
20
+ isSelectionStart,
21
+ isSelectionEnd,
22
+ inRange
23
+ } = useCalendarCell({ state, date });
24
+ return /* @__PURE__ */ React.createElement(
25
+ Td,
26
+ {
27
+ ...cellProps,
28
+ "data-testid": "calendar-cell-td",
29
+ className: cell({
30
+ isOutsideVisibleRange,
31
+ isSelected,
32
+ isSelectionStart,
33
+ isSelectionEnd,
34
+ inRange
35
+ })
36
+ },
37
+ /* @__PURE__ */ React.createElement(
38
+ "div",
39
+ {
40
+ ...buttonProps,
41
+ ref,
42
+ className: button({ isOutsideVisibleRange })
43
+ },
44
+ formattedDate
45
+ )
46
+ );
47
+ };
48
+
49
+ export { CalendarCell };