@bolio-ui/core 3.0.0-alpha.0 → 3.0.0-alpha.2

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 (249) hide show
  1. package/dist/BolioUIProvider/index.js +3 -3
  2. package/dist/Calendar/Calendar.d.ts +1 -0
  3. package/dist/Calendar/index.js +2 -2
  4. package/dist/Carousel/Carousel.d.ts +21 -0
  5. package/dist/Carousel/index.d.ts +3 -0
  6. package/dist/Carousel/index.js +14 -0
  7. package/dist/Collapse/Collapse.d.ts +3 -0
  8. package/dist/Collapse/index.js +3 -3
  9. package/dist/ColorInput/ColorInput.d.ts +24 -0
  10. package/dist/ColorInput/index.d.ts +3 -0
  11. package/dist/ColorInput/index.js +20 -0
  12. package/dist/ColorPicker/ColorPicker.d.ts +17 -0
  13. package/dist/ColorPicker/color-utils.d.ts +10 -0
  14. package/dist/ColorPicker/index.d.ts +3 -0
  15. package/dist/ColorPicker/index.js +14 -0
  16. package/dist/Command/index.js +4 -4
  17. package/dist/ContextMenu/ContextMenu.d.ts +13 -0
  18. package/dist/ContextMenu/index.d.ts +3 -0
  19. package/dist/ContextMenu/index.js +25 -0
  20. package/dist/CssBaseline/index.js +2 -2
  21. package/dist/DatePicker/index.js +3 -3
  22. package/dist/DateRangePicker/DateRangePicker.d.ts +29 -0
  23. package/dist/DateRangePicker/index.d.ts +3 -0
  24. package/dist/DateRangePicker/index.js +19 -0
  25. package/dist/Drawer/index.js +2 -2
  26. package/dist/Dropzone/Dropzone.d.ts +25 -0
  27. package/dist/Dropzone/DropzoneThumbnail.d.ts +9 -0
  28. package/dist/Dropzone/index.d.ts +3 -0
  29. package/dist/Dropzone/index.js +14 -0
  30. package/dist/ImageZoom/ImageZoom.d.ts +14 -0
  31. package/dist/ImageZoom/index.d.ts +3 -0
  32. package/dist/ImageZoom/index.js +17 -0
  33. package/dist/Menu/index.js +3 -3
  34. package/dist/Modal/index.js +2 -2
  35. package/dist/PinInput/PinInput.d.ts +25 -0
  36. package/dist/PinInput/index.d.ts +3 -0
  37. package/dist/PinInput/index.js +16 -0
  38. package/dist/SegmentedControl/SegmentedControl.d.ts +16 -0
  39. package/dist/SegmentedControl/SegmentedControlContext.d.ts +10 -0
  40. package/dist/SegmentedControl/SegmentedControlItem.d.ts +13 -0
  41. package/dist/SegmentedControl/index.d.ts +10 -0
  42. package/dist/SegmentedControl/index.js +14 -0
  43. package/dist/Select/SelectDropdown.d.ts +2 -0
  44. package/dist/Select/index.js +6 -6
  45. package/dist/Slider/index.js +3 -3
  46. package/dist/Splitter/Splitter.d.ts +14 -0
  47. package/dist/Splitter/SplitterContext.d.ts +6 -0
  48. package/dist/Splitter/SplitterPanel.d.ts +13 -0
  49. package/dist/Splitter/index.d.ts +9 -0
  50. package/dist/Splitter/index.js +14 -0
  51. package/dist/Table/Table.d.ts +11 -1
  52. package/dist/Table/TableBody.d.ts +8 -2
  53. package/dist/Table/TableColumn.d.ts +2 -0
  54. package/dist/Table/TableHead.d.ts +9 -1
  55. package/dist/Table/TableSelectBox.d.ts +9 -0
  56. package/dist/Table/TableTypes.d.ts +8 -0
  57. package/dist/Table/index.d.ts +1 -1
  58. package/dist/Table/index.js +3 -3
  59. package/dist/TagsInput/TagsInput.d.ts +26 -0
  60. package/dist/TagsInput/index.d.ts +3 -0
  61. package/dist/TagsInput/index.js +17 -0
  62. package/dist/Tour/Tour.d.ts +26 -0
  63. package/dist/Tour/index.d.ts +3 -0
  64. package/dist/Tour/index.js +23 -0
  65. package/dist/Tree/Tree.d.ts +17 -0
  66. package/dist/Tree/TreeContext.d.ts +17 -0
  67. package/dist/Tree/TreeNode.d.ts +8 -0
  68. package/dist/Tree/index.d.ts +3 -0
  69. package/dist/Tree/index.js +14 -0
  70. package/dist/chunk-2A4BSQ66.js +130 -0
  71. package/dist/{chunk-HIFS4JIO.js → chunk-2EYJZXS4.js} +7 -7
  72. package/dist/chunk-3S6G7WGK.js +109 -0
  73. package/dist/chunk-4X4ELIMQ.js +231 -0
  74. package/dist/{chunk-UVVBMWR4.js → chunk-AG2NWQYL.js} +18 -4
  75. package/dist/chunk-BHQRX76X.js +275 -0
  76. package/dist/{chunk-YHZFOVVI.js → chunk-DIMJQLWY.js} +27 -37
  77. package/dist/chunk-FFEAKF3A.js +220 -0
  78. package/dist/{chunk-6BCLZSSK.js → chunk-FL6J36B7.js} +5 -4
  79. package/dist/chunk-G4KB56RO.js +217 -0
  80. package/dist/chunk-IJGIEX5J.js +211 -0
  81. package/dist/chunk-K6UULETP.js +244 -0
  82. package/dist/chunk-MDSRXACM.js +212 -0
  83. package/dist/chunk-OKZRHSSG.js +271 -0
  84. package/dist/{chunk-IBC5BABS.js → chunk-P245HSVB.js} +190 -155
  85. package/dist/chunk-REWKR7S3.js +109 -0
  86. package/dist/chunk-STYC6O24.js +232 -0
  87. package/dist/{chunk-FQU5SKDF.js → chunk-WFGUAR7K.js} +58 -24
  88. package/dist/{chunk-6KMHJRCY.js → chunk-WIIDIZYK.js} +4 -1
  89. package/dist/chunk-X4TPC7HS.js +160 -0
  90. package/dist/{chunk-TKICX5R6.js → chunk-ZNDN2VPZ.js} +225 -33
  91. package/dist/css/Button-ButtonIcon.css +3 -2
  92. package/dist/css/ButtonDropdown-ButtonDropdownItem.css +0 -1
  93. package/dist/css/Calendar.css +11 -1
  94. package/dist/css/Carousel.css +127 -0
  95. package/dist/css/Collapse.css +29 -9
  96. package/dist/css/ColorInput.css +95 -0
  97. package/dist/css/ColorPicker.css +183 -0
  98. package/dist/css/ContextMenu.css +17 -0
  99. package/dist/css/DatePicker.css +1 -1
  100. package/dist/css/DateRangePicker.css +113 -0
  101. package/dist/css/Dropzone.css +160 -0
  102. package/dist/css/ImageZoom.css +93 -0
  103. package/dist/css/Input.css +3 -3
  104. package/dist/css/NumberInput.css +4 -4
  105. package/dist/css/PinInput.css +40 -0
  106. package/dist/css/SegmentedControl-SegmentedControlItem.css +65 -0
  107. package/dist/css/SegmentedControl.css +13 -0
  108. package/dist/css/Select-SelectDropdown.css +4 -2
  109. package/dist/css/Select-SelectMultipleValue.css +1 -0
  110. package/dist/css/Select-SelectOption.css +27 -7
  111. package/dist/css/Select.css +2 -1
  112. package/dist/css/Splitter.css +77 -0
  113. package/dist/css/Table-TableBody.css +10 -0
  114. package/dist/css/Table-TableHead.css +41 -0
  115. package/dist/css/Table-TableSelectBox.css +11 -0
  116. package/dist/css/TagsInput.css +99 -0
  117. package/dist/css/Tour.css +81 -0
  118. package/dist/css/Tree.css +88 -0
  119. package/dist/index.d.ts +27 -1
  120. package/dist/index.js +98 -46
  121. package/dist/styles.css +3902 -2520
  122. package/esm/BolioUIProvider/index.js +2 -2
  123. package/esm/Calendar/Calendar.d.ts +1 -0
  124. package/esm/Calendar/index.js +1 -1
  125. package/esm/Carousel/Carousel.d.ts +21 -0
  126. package/esm/Carousel/index.d.ts +3 -0
  127. package/esm/Carousel/index.js +14 -0
  128. package/esm/Collapse/Collapse.d.ts +3 -0
  129. package/esm/Collapse/index.js +2 -2
  130. package/esm/ColorInput/ColorInput.d.ts +24 -0
  131. package/esm/ColorInput/index.d.ts +3 -0
  132. package/esm/ColorInput/index.js +20 -0
  133. package/esm/ColorPicker/ColorPicker.d.ts +17 -0
  134. package/esm/ColorPicker/color-utils.d.ts +10 -0
  135. package/esm/ColorPicker/index.d.ts +3 -0
  136. package/esm/ColorPicker/index.js +14 -0
  137. package/esm/Command/index.js +4 -4
  138. package/esm/ContextMenu/ContextMenu.d.ts +13 -0
  139. package/esm/ContextMenu/index.d.ts +3 -0
  140. package/esm/ContextMenu/index.js +25 -0
  141. package/esm/CssBaseline/index.js +1 -1
  142. package/esm/DatePicker/index.js +2 -2
  143. package/esm/DateRangePicker/DateRangePicker.d.ts +29 -0
  144. package/esm/DateRangePicker/index.d.ts +3 -0
  145. package/esm/DateRangePicker/index.js +19 -0
  146. package/esm/Drawer/index.js +2 -2
  147. package/esm/Dropzone/Dropzone.d.ts +25 -0
  148. package/esm/Dropzone/DropzoneThumbnail.d.ts +9 -0
  149. package/esm/Dropzone/index.d.ts +3 -0
  150. package/esm/Dropzone/index.js +14 -0
  151. package/esm/ImageZoom/ImageZoom.d.ts +14 -0
  152. package/esm/ImageZoom/index.d.ts +3 -0
  153. package/esm/ImageZoom/index.js +17 -0
  154. package/esm/Menu/index.js +2 -2
  155. package/esm/Modal/index.js +2 -2
  156. package/esm/PinInput/PinInput.d.ts +25 -0
  157. package/esm/PinInput/index.d.ts +3 -0
  158. package/esm/PinInput/index.js +16 -0
  159. package/esm/SegmentedControl/SegmentedControl.d.ts +16 -0
  160. package/esm/SegmentedControl/SegmentedControlContext.d.ts +10 -0
  161. package/esm/SegmentedControl/SegmentedControlItem.d.ts +13 -0
  162. package/esm/SegmentedControl/index.d.ts +10 -0
  163. package/esm/SegmentedControl/index.js +14 -0
  164. package/esm/Select/SelectDropdown.d.ts +2 -0
  165. package/esm/Select/index.js +5 -5
  166. package/esm/Slider/index.js +2 -2
  167. package/esm/Splitter/Splitter.d.ts +14 -0
  168. package/esm/Splitter/SplitterContext.d.ts +6 -0
  169. package/esm/Splitter/SplitterPanel.d.ts +13 -0
  170. package/esm/Splitter/index.d.ts +9 -0
  171. package/esm/Splitter/index.js +14 -0
  172. package/esm/Table/Table.d.ts +11 -1
  173. package/esm/Table/TableBody.d.ts +8 -2
  174. package/esm/Table/TableColumn.d.ts +2 -0
  175. package/esm/Table/TableHead.d.ts +9 -1
  176. package/esm/Table/TableSelectBox.d.ts +9 -0
  177. package/esm/Table/TableTypes.d.ts +8 -0
  178. package/esm/Table/index.d.ts +1 -1
  179. package/esm/Table/index.js +2 -2
  180. package/esm/TagsInput/TagsInput.d.ts +26 -0
  181. package/esm/TagsInput/index.d.ts +3 -0
  182. package/esm/TagsInput/index.js +17 -0
  183. package/esm/Tour/Tour.d.ts +26 -0
  184. package/esm/Tour/index.d.ts +3 -0
  185. package/esm/Tour/index.js +23 -0
  186. package/esm/Tree/Tree.d.ts +17 -0
  187. package/esm/Tree/TreeContext.d.ts +17 -0
  188. package/esm/Tree/TreeNode.d.ts +8 -0
  189. package/esm/Tree/index.d.ts +3 -0
  190. package/esm/Tree/index.js +14 -0
  191. package/esm/chunk-2A4BSQ66.js +130 -0
  192. package/esm/{chunk-HIFS4JIO.js → chunk-2EYJZXS4.js} +4 -4
  193. package/esm/chunk-3S6G7WGK.js +109 -0
  194. package/esm/chunk-4X4ELIMQ.js +231 -0
  195. package/esm/{chunk-UVVBMWR4.js → chunk-AG2NWQYL.js} +18 -4
  196. package/esm/chunk-BHQRX76X.js +275 -0
  197. package/esm/{chunk-YHZFOVVI.js → chunk-DIMJQLWY.js} +27 -37
  198. package/esm/chunk-FFEAKF3A.js +220 -0
  199. package/esm/{chunk-6BCLZSSK.js → chunk-FL6J36B7.js} +4 -3
  200. package/esm/chunk-G4KB56RO.js +217 -0
  201. package/esm/chunk-IJGIEX5J.js +211 -0
  202. package/esm/chunk-K6UULETP.js +244 -0
  203. package/esm/chunk-MDSRXACM.js +212 -0
  204. package/esm/chunk-OKZRHSSG.js +271 -0
  205. package/esm/chunk-P245HSVB.js +450 -0
  206. package/esm/chunk-REWKR7S3.js +109 -0
  207. package/esm/chunk-STYC6O24.js +232 -0
  208. package/esm/{chunk-FQU5SKDF.js → chunk-WFGUAR7K.js} +60 -26
  209. package/esm/{chunk-6KMHJRCY.js → chunk-WIIDIZYK.js} +4 -1
  210. package/esm/chunk-X4TPC7HS.js +160 -0
  211. package/esm/chunk-ZNDN2VPZ.js +543 -0
  212. package/esm/css/Button-ButtonIcon.css +3 -2
  213. package/esm/css/ButtonDropdown-ButtonDropdownItem.css +0 -1
  214. package/esm/css/Calendar.css +11 -1
  215. package/esm/css/Carousel.css +127 -0
  216. package/esm/css/Collapse.css +29 -9
  217. package/esm/css/ColorInput.css +95 -0
  218. package/esm/css/ColorPicker.css +183 -0
  219. package/esm/css/ContextMenu.css +17 -0
  220. package/esm/css/DatePicker.css +1 -1
  221. package/esm/css/DateRangePicker.css +113 -0
  222. package/esm/css/Dropzone.css +160 -0
  223. package/esm/css/ImageZoom.css +93 -0
  224. package/esm/css/Input.css +3 -3
  225. package/esm/css/NumberInput.css +4 -4
  226. package/esm/css/PinInput.css +40 -0
  227. package/esm/css/SegmentedControl-SegmentedControlItem.css +65 -0
  228. package/esm/css/SegmentedControl.css +13 -0
  229. package/esm/css/Select-SelectDropdown.css +4 -2
  230. package/esm/css/Select-SelectMultipleValue.css +1 -0
  231. package/esm/css/Select-SelectOption.css +27 -7
  232. package/esm/css/Select.css +2 -1
  233. package/esm/css/Splitter.css +77 -0
  234. package/esm/css/Table-TableBody.css +10 -0
  235. package/esm/css/Table-TableHead.css +41 -0
  236. package/esm/css/Table-TableSelectBox.css +11 -0
  237. package/esm/css/TagsInput.css +99 -0
  238. package/esm/css/Tour.css +81 -0
  239. package/esm/css/Tree.css +88 -0
  240. package/esm/index.d.ts +27 -1
  241. package/esm/index.js +115 -63
  242. package/esm/styles.css +3564 -2182
  243. package/package.json +3 -3
  244. package/esm/chunk-IBC5BABS.js +0 -415
  245. package/esm/chunk-TKICX5R6.js +0 -351
  246. package/dist/{chunk-2PRUFY2Q.js → chunk-4ZGR7UMX.js} +2 -2
  247. package/dist/{chunk-FLK7EAOE.js → chunk-IUZV5Y27.js} +2 -2
  248. package/esm/{chunk-2PRUFY2Q.js → chunk-4ZGR7UMX.js} +3 -3
  249. package/esm/{chunk-FLK7EAOE.js → chunk-IUZV5Y27.js} +3 -3
@@ -53,7 +53,7 @@ var getISOWeek = (date) => {
53
53
  };
54
54
 
55
55
  // css-module-source:/Users/brunnoandrade/Desktop/BolioUI/bolio-ui/core/Calendar/Calendar.module.css.bolio-css-module-source
56
- var Calendar_module_css_default = { "calendar": "Calendar-module_calendar__KlHdi", "header": "Calendar-module_header__d6VGN", "title": "Calendar-module_title__r0GX1", "table": "Calendar-module_table__q-H-S", "th": "Calendar-module_th__N9m4h", "td": "Calendar-module_td__YyI6L", "button": "Calendar-module_button__h3ZK-", "navButton": "Calendar-module_navButton__jmnwu", "dayButton": "Calendar-module_dayButton__-4eeR", "today": "Calendar-module_today__fx9vj", "selected": "Calendar-module_selected__kIUsl", "outside": "Calendar-module_outside__cSs5z", "inRange": "Calendar-module_inRange__0XK-F", "rangeStart": "Calendar-module_rangeStart__T1amH", "rangeEnd": "Calendar-module_rangeEnd__B55oD", "weekNumber": "Calendar-module_weekNumber__J1hkP" };
56
+ var Calendar_module_css_default = { "calendar": "Calendar-module_calendar__KlHdi", "months": "Calendar-module_months__vypnr", "header": "Calendar-module_header__d6VGN", "navSpacer": "Calendar-module_navSpacer__TcVxJ", "title": "Calendar-module_title__r0GX1", "table": "Calendar-module_table__q-H-S", "th": "Calendar-module_th__N9m4h", "td": "Calendar-module_td__YyI6L", "button": "Calendar-module_button__h3ZK-", "navButton": "Calendar-module_navButton__jmnwu", "dayButton": "Calendar-module_dayButton__-4eeR", "today": "Calendar-module_today__fx9vj", "selected": "Calendar-module_selected__kIUsl", "outside": "Calendar-module_outside__cSs5z", "inRange": "Calendar-module_inRange__0XK-F", "rangeStart": "Calendar-module_rangeStart__T1amH", "rangeEnd": "Calendar-module_rangeEnd__B55oD", "weekNumber": "Calendar-module_weekNumber__J1hkP" };
57
57
 
58
58
  // core/Calendar/Calendar.tsx
59
59
  var _jsxruntime = require('react/jsx-runtime');
@@ -70,6 +70,7 @@ var CalendarComponent = _react2.default.forwardRef(
70
70
  weekStartsOn = 0,
71
71
  showOutsideDays = false,
72
72
  showWeekNumbers = false,
73
+ numberOfMonths = 1,
73
74
  month: customMonth,
74
75
  defaultMonth,
75
76
  onMonthChange,
@@ -102,6 +103,14 @@ var CalendarComponent = _react2.default.forwardRef(
102
103
  maxDay
103
104
  )
104
105
  );
106
+ const count = Math.max(1, Math.floor(numberOfMonths));
107
+ const focusedIndex = focused.getFullYear() * 12 + focused.getMonth();
108
+ const [viewStart, setViewStart] = _react.useState.call(void 0, focusedIndex);
109
+ let first = viewStart;
110
+ if (focusedIndex < first) first = focusedIndex;
111
+ else if (focusedIndex > first + count - 1)
112
+ first = focusedIndex - (count - 1);
113
+ if (first !== viewStart) setViewStart(first);
105
114
  const gridRef = _react.useRef.call(void 0, null);
106
115
  const moveFocus = _react.useRef.call(void 0, autoFocus);
107
116
  const time = anchor ? anchor.getTime() : null;
@@ -113,6 +122,7 @@ var CalendarComponent = _react2.default.forwardRef(
113
122
  _react.useEffect.call(void 0, () => {
114
123
  if (monthTime === null) return;
115
124
  const target = new Date(monthTime);
125
+ setViewStart(target.getFullYear() * 12 + target.getMonth());
116
126
  setFocused(
117
127
  (last) => last.getFullYear() === target.getFullYear() && last.getMonth() === target.getMonth() ? last : clampDate(target, minDay, maxDay)
118
128
  );
@@ -150,47 +160,58 @@ var CalendarComponent = _react2.default.forwardRef(
150
160
  }),
151
161
  [formats, weekStartsOn]
152
162
  );
153
- const year = focused.getFullYear();
154
- const month = focused.getMonth();
155
- const weeks = _react.useMemo.call(void 0, () => {
156
- const offset = (new Date(year, month, 1).getDay() - weekStartsOn + 7) % 7;
157
- const total = new Date(year, month + 1, 0).getDate();
158
- const cells = [
159
- ...Array.from(
160
- { length: offset },
161
- (_, index) => showOutsideDays ? new Date(year, month, index - offset + 1) : null
162
- ),
163
- ...Array.from(
164
- { length: total },
165
- (_, index) => new Date(year, month, index + 1)
166
- )
167
- ];
168
- while (cells.length % 7)
169
- cells.push(
170
- showOutsideDays ? new Date(year, month, cells.length - offset + 1) : null
163
+ const outsideDays = showOutsideDays && count === 1;
164
+ const monthViews = _react.useMemo.call(void 0,
165
+ () => Array.from({ length: count }, (_, step) => {
166
+ const index = first + step;
167
+ const year = Math.floor(index / 12);
168
+ const month = index % 12;
169
+ const offset = (new Date(year, month, 1).getDay() - weekStartsOn + 7) % 7;
170
+ const total = new Date(year, month + 1, 0).getDate();
171
+ const cells = [
172
+ ...Array.from(
173
+ { length: offset },
174
+ (_2, cell) => outsideDays ? new Date(year, month, cell - offset + 1) : null
175
+ ),
176
+ ...Array.from(
177
+ { length: total },
178
+ (_2, cell) => new Date(year, month, cell + 1)
179
+ )
180
+ ];
181
+ while (cells.length % 7)
182
+ cells.push(
183
+ outsideDays ? new Date(year, month, cells.length - offset + 1) : null
184
+ );
185
+ const weeks = Array.from(
186
+ { length: cells.length / 7 },
187
+ (_2, row) => cells.slice(row * 7, row * 7 + 7)
171
188
  );
172
- return Array.from(
173
- { length: cells.length / 7 },
174
- (_, index) => cells.slice(index * 7, index * 7 + 7)
175
- );
176
- }, [year, month, weekStartsOn, showOutsideDays]);
177
- const lastMonth = _react.useRef.call(void 0, `${year}-${month}`);
189
+ return { year, month, date: new Date(year, month, 1), weeks };
190
+ }),
191
+ [first, count, weekStartsOn, outsideDays]
192
+ );
193
+ const firstMonth = monthViews[0];
194
+ const lastMonthView = monthViews[count - 1];
195
+ const lastMonth = _react.useRef.call(void 0, first);
178
196
  _react.useEffect.call(void 0, () => {
179
- const key = `${year}-${month}`;
180
- if (key === lastMonth.current) return;
181
- lastMonth.current = key;
182
- if (onMonthChange) onMonthChange(new Date(year, month, 1));
183
- }, [year, month]);
197
+ if (first === lastMonth.current) return;
198
+ lastMonth.current = first;
199
+ if (onMonthChange) onMonthChange(firstMonth.date);
200
+ }, [first]);
184
201
  const isDisabled = (date) => Boolean(
185
202
  minDay && date < minDay || maxDay && date > maxDay || shouldDisableDate && shouldDisableDate(date)
186
203
  );
187
204
  const today = /* @__PURE__ */ new Date();
188
205
  const previousDisabled = Boolean(
189
- minDay && new Date(year, month, 0) < minDay
206
+ minDay && new Date(firstMonth.year, firstMonth.month, 0) < minDay
190
207
  );
191
208
  const nextDisabled = Boolean(
192
- maxDay && new Date(year, month + 1, 1) > maxDay
209
+ maxDay && new Date(lastMonthView.year, lastMonthView.month + 1, 1) > maxDay
193
210
  );
211
+ const goToMonth = (step) => {
212
+ setViewStart(first + step);
213
+ setFocused(clampDate(addMonths(focused, step), minDay, maxDay));
214
+ };
194
215
  const commit = (next) => {
195
216
  if (customValue === void 0) setSelfValue(next);
196
217
  if (onChange) onChange(next);
@@ -263,139 +284,153 @@ var CalendarComponent = _react2.default.forwardRef(
263
284
  "--calendar-week-color": theme.palette.accents_4,
264
285
  ...style
265
286
  };
266
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
287
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
267
288
  "div",
268
289
  {
269
290
  ref,
270
291
  className: _chunk5KUROAEPjs.use_classes_default.call(void 0, Calendar_module_css_default.calendar, className),
271
292
  style: calendarStyle,
272
293
  ...props,
273
- children: [
274
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: Calendar_module_css_default.header, children: [
275
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
276
- "button",
277
- {
278
- type: "button",
279
- className: _chunk5KUROAEPjs.joinClasses.call(void 0, Calendar_module_css_default.button, Calendar_module_css_default.navButton),
280
- "aria-label": previousLabel,
281
- disabled: previousDisabled,
282
- onClick: () => setFocused(clampDate(addMonths(focused, -1), minDay, maxDay)),
283
- children: "\u2039"
284
- }
285
- ),
286
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { id: headingId, className: Calendar_module_css_default.title, "aria-live": "polite", children: formats.month.format(focused) }),
287
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
288
- "button",
289
- {
290
- type: "button",
291
- className: _chunk5KUROAEPjs.joinClasses.call(void 0, Calendar_module_css_default.button, Calendar_module_css_default.navButton),
292
- "aria-label": nextLabel,
293
- disabled: nextDisabled,
294
- onClick: () => setFocused(clampDate(addMonths(focused, 1), minDay, maxDay)),
295
- children: "\u203A"
296
- }
297
- )
298
- ] }),
299
- /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
300
- "table",
301
- {
302
- ref: gridRef,
303
- role: "grid",
304
- "aria-labelledby": headingId,
305
- className: Calendar_module_css_default.table,
306
- "aria-multiselectable": mode !== "single" || void 0,
307
- onMouseLeave: () => setHovered(null),
308
- children: [
309
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "thead", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "tr", { role: "row", children: [
310
- showWeekNumbers && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "th", { role: "columnheader", className: Calendar_module_css_default.th }),
311
- weekdays.map((weekday) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
312
- "th",
313
- {
314
- role: "columnheader",
315
- scope: "col",
316
- className: Calendar_module_css_default.th,
317
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "abbr", { title: weekday.long, children: weekday.short })
318
- },
319
- weekday.long
320
- ))
321
- ] }) }),
322
- /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "tbody", { children: weeks.map((week, index) => {
323
- const reference = week.find(Boolean);
324
- const weekNumber = getISOWeek(
325
- addDays(reference, 3 - week.indexOf(reference))
326
- );
327
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "tr", { role: "row", children: [
328
- showWeekNumbers && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
329
- "th",
330
- {
331
- role: "rowheader",
332
- scope: "row",
333
- className: Calendar_module_css_default.weekNumber,
334
- "aria-label": `${weekLabel} ${weekNumber}`,
335
- children: weekNumber
336
- }
337
- ),
338
- week.map((date, cell) => {
339
- if (!date)
340
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
341
- "td",
342
- {
343
- role: "gridcell",
344
- className: Calendar_module_css_default.td,
345
- "aria-hidden": "true"
346
- },
347
- cell
348
- );
349
- const selectedDay = isSelected(date);
350
- const outside = date.getMonth() !== month;
351
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
352
- "td",
294
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
295
+ "div",
296
+ {
297
+ ref: gridRef,
298
+ className: Calendar_module_css_default.months,
299
+ onMouseLeave: () => setHovered(null),
300
+ children: monthViews.map(({ month, date: monthDate, weeks }, step) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: Calendar_module_css_default.month, children: [
301
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: Calendar_module_css_default.header, children: [
302
+ step === 0 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
303
+ "button",
304
+ {
305
+ type: "button",
306
+ className: _chunk5KUROAEPjs.joinClasses.call(void 0, Calendar_module_css_default.button, Calendar_module_css_default.navButton),
307
+ "aria-label": previousLabel,
308
+ disabled: previousDisabled,
309
+ onClick: () => goToMonth(-1),
310
+ children: "\u2039"
311
+ }
312
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: Calendar_module_css_default.navSpacer, "aria-hidden": "true" }),
313
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
314
+ "div",
315
+ {
316
+ id: `${headingId}-${step}`,
317
+ className: Calendar_module_css_default.title,
318
+ "aria-live": "polite",
319
+ children: formats.month.format(monthDate)
320
+ }
321
+ ),
322
+ step === count - 1 ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
323
+ "button",
324
+ {
325
+ type: "button",
326
+ className: _chunk5KUROAEPjs.joinClasses.call(void 0, Calendar_module_css_default.button, Calendar_module_css_default.navButton),
327
+ "aria-label": nextLabel,
328
+ disabled: nextDisabled,
329
+ onClick: () => goToMonth(1),
330
+ children: "\u203A"
331
+ }
332
+ ) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: Calendar_module_css_default.navSpacer, "aria-hidden": "true" })
333
+ ] }),
334
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
335
+ "table",
336
+ {
337
+ role: "grid",
338
+ "aria-labelledby": `${headingId}-${step}`,
339
+ className: Calendar_module_css_default.table,
340
+ "aria-multiselectable": mode !== "single" || void 0,
341
+ children: [
342
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "thead", { children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "tr", { role: "row", children: [
343
+ showWeekNumbers && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "th", { role: "columnheader", className: Calendar_module_css_default.th }),
344
+ weekdays.map((weekday) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
345
+ "th",
353
346
  {
354
- role: "gridcell",
355
- className: _chunk5KUROAEPjs.joinClasses.call(void 0, Calendar_module_css_default.td, {
356
- [Calendar_module_css_default.inRange]: isInRange(date),
357
- [Calendar_module_css_default.rangeStart]: Boolean(
358
- low && isSameDay(date, low) && high
359
- ),
360
- [Calendar_module_css_default.rangeEnd]: Boolean(
361
- high && isSameDay(date, high) && low
362
- )
363
- }),
364
- "aria-selected": selectedDay || isInRange(date),
365
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
366
- "button",
347
+ role: "columnheader",
348
+ scope: "col",
349
+ className: Calendar_module_css_default.th,
350
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "abbr", { title: weekday.long, children: weekday.short })
351
+ },
352
+ weekday.long
353
+ ))
354
+ ] }) }),
355
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "tbody", { children: weeks.map((week, index) => {
356
+ const reference = week.find(Boolean);
357
+ const weekNumber = getISOWeek(
358
+ addDays(reference, 3 - week.indexOf(reference))
359
+ );
360
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "tr", { role: "row", children: [
361
+ showWeekNumbers && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
362
+ "th",
363
+ {
364
+ role: "rowheader",
365
+ scope: "row",
366
+ className: Calendar_module_css_default.weekNumber,
367
+ "aria-label": `${weekLabel} ${weekNumber}`,
368
+ children: weekNumber
369
+ }
370
+ ),
371
+ week.map((date, cell) => {
372
+ if (!date)
373
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
374
+ "td",
375
+ {
376
+ role: "gridcell",
377
+ className: Calendar_module_css_default.td,
378
+ "aria-hidden": "true"
379
+ },
380
+ cell
381
+ );
382
+ const selectedDay = isSelected(date);
383
+ const outside = date.getMonth() !== month;
384
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
385
+ "td",
367
386
  {
368
- type: "button",
369
- "data-date": toISO(date),
370
- "aria-label": formats.day.format(date),
371
- "aria-current": isSameDay(date, today) ? "date" : void 0,
372
- className: _chunk5KUROAEPjs.joinClasses.call(void 0,
373
- Calendar_module_css_default.button,
374
- Calendar_module_css_default.dayButton,
387
+ role: "gridcell",
388
+ className: _chunk5KUROAEPjs.joinClasses.call(void 0, Calendar_module_css_default.td, {
389
+ [Calendar_module_css_default.inRange]: isInRange(date),
390
+ [Calendar_module_css_default.rangeStart]: Boolean(
391
+ low && isSameDay(date, low) && high
392
+ ),
393
+ [Calendar_module_css_default.rangeEnd]: Boolean(
394
+ high && isSameDay(date, high) && low
395
+ )
396
+ }),
397
+ "aria-selected": selectedDay || isInRange(date),
398
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
399
+ "button",
375
400
  {
376
- [Calendar_module_css_default.selected]: selectedDay,
377
- [Calendar_module_css_default.today]: isSameDay(date, today),
378
- [Calendar_module_css_default.outside]: outside
401
+ type: "button",
402
+ "data-date": toISO(date),
403
+ "aria-label": formats.day.format(date),
404
+ "aria-current": isSameDay(date, today) ? "date" : void 0,
405
+ className: _chunk5KUROAEPjs.joinClasses.call(void 0,
406
+ Calendar_module_css_default.button,
407
+ Calendar_module_css_default.dayButton,
408
+ {
409
+ [Calendar_module_css_default.selected]: selectedDay,
410
+ [Calendar_module_css_default.today]: isSameDay(date, today),
411
+ [Calendar_module_css_default.outside]: outside
412
+ }
413
+ ),
414
+ tabIndex: isSameDay(date, focused) ? 0 : -1,
415
+ disabled: isDisabled(date),
416
+ onClick: () => select(date),
417
+ onMouseEnter: () => isRange && setHovered(date),
418
+ onKeyDown: (event) => keyDownHandler(event, date),
419
+ children: date.getDate()
379
420
  }
380
- ),
381
- tabIndex: isSameDay(date, focused) ? 0 : -1,
382
- disabled: isDisabled(date),
383
- onClick: () => select(date),
384
- onMouseEnter: () => isRange && setHovered(date),
385
- onKeyDown: (event) => keyDownHandler(event, date),
386
- children: date.getDate()
387
- }
388
- )
389
- },
390
- cell
391
- );
392
- })
393
- ] }, index);
394
- }) })
395
- ]
396
- }
397
- )
398
- ]
421
+ )
422
+ },
423
+ cell
424
+ );
425
+ })
426
+ ] }, index);
427
+ }) })
428
+ ]
429
+ }
430
+ )
431
+ ] }, step))
432
+ }
433
+ )
399
434
  }
400
435
  );
401
436
  }
@@ -0,0 +1,109 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2
+
3
+ var _chunkTWIOSRRPjs = require('./chunk-TWIOSRRP.js');
4
+
5
+
6
+ var _chunk5KUROAEPjs = require('./chunk-5KUROAEP.js');
7
+
8
+ // core/ImageZoom/ImageZoom.tsx
9
+ var _react = require('react'); var _react2 = _interopRequireDefault(_react);
10
+
11
+ // css-module-source:/Users/brunnoandrade/Desktop/BolioUI/bolio-ui/core/ImageZoom/ImageZoom.module.css.bolio-css-module-source
12
+ var ImageZoom_module_css_default = { "trigger": "ImageZoom-module_trigger__-42Bz", "dialog": "ImageZoom-module_dialog__TjA9E", "figure": "ImageZoom-module_figure__YIBq1", "zoomed": "ImageZoom-module_zoomed__7gfCP", "caption": "ImageZoom-module_caption__6SFRA", "close": "ImageZoom-module_close__iEiwJ" };
13
+
14
+ // core/ImageZoom/ImageZoom.tsx
15
+ var _jsxruntime = require('react/jsx-runtime');
16
+ var ImageZoom = _react2.default.forwardRef(
17
+ ({
18
+ src,
19
+ alt,
20
+ zoomSrc,
21
+ caption,
22
+ closeLabel = "Close",
23
+ className = "",
24
+ ...imageProps
25
+ }, ref) => {
26
+ const [open, setOpen] = _react.useState.call(void 0, false);
27
+ const dialog = _react.useRef.call(void 0, null);
28
+ _react.useEffect.call(void 0, () => {
29
+ var _a;
30
+ if (open) (_a = dialog.current) == null ? void 0 : _a.showModal();
31
+ }, [open]);
32
+ return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
33
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
34
+ "button",
35
+ {
36
+ ref,
37
+ type: "button",
38
+ className: _chunk5KUROAEPjs.use_classes_default.call(void 0, ImageZoom_module_css_default.trigger, className),
39
+ "aria-haspopup": "dialog",
40
+ onClick: () => setOpen(true),
41
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkTWIOSRRPjs.Image_default, { src, alt, ...imageProps })
42
+ }
43
+ ),
44
+ open && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
45
+ "dialog",
46
+ {
47
+ ref: dialog,
48
+ "aria-label": alt,
49
+ className: ImageZoom_module_css_default.dialog,
50
+ onClose: () => setOpen(false),
51
+ onKeyDown: (event) => {
52
+ var _a;
53
+ if (event.key === "Escape") (_a = dialog.current) == null ? void 0 : _a.close();
54
+ },
55
+ onClick: (event) => {
56
+ var _a;
57
+ if (event.target === event.currentTarget) (_a = dialog.current) == null ? void 0 : _a.close();
58
+ },
59
+ children: [
60
+ /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "figure", { className: ImageZoom_module_css_default.figure, children: [
61
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: zoomSrc || src, alt, className: ImageZoom_module_css_default.zoomed }),
62
+ caption && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "figcaption", { className: ImageZoom_module_css_default.caption, children: caption })
63
+ ] }),
64
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
65
+ "button",
66
+ {
67
+ type: "button",
68
+ className: ImageZoom_module_css_default.close,
69
+ "aria-label": closeLabel,
70
+ onClick: () => {
71
+ var _a;
72
+ return (_a = dialog.current) == null ? void 0 : _a.close();
73
+ },
74
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
75
+ "svg",
76
+ {
77
+ viewBox: "0 0 24 24",
78
+ width: "1.5em",
79
+ height: "1.5em",
80
+ "aria-hidden": "true",
81
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
82
+ "path",
83
+ {
84
+ d: "M6 6l12 12M18 6L6 18",
85
+ fill: "none",
86
+ stroke: "currentColor",
87
+ strokeWidth: "2",
88
+ strokeLinecap: "round"
89
+ }
90
+ )
91
+ }
92
+ )
93
+ }
94
+ )
95
+ ]
96
+ }
97
+ )
98
+ ] });
99
+ }
100
+ );
101
+ ImageZoom.displayName = "BolioUIImageZoom";
102
+ var ImageZoom_default = ImageZoom;
103
+
104
+ // core/ImageZoom/index.ts
105
+ var ImageZoom_default2 = ImageZoom_default;
106
+
107
+
108
+
109
+ exports.ImageZoom_default = ImageZoom_default2;