@rpcbase/ui 0.174.0 → 0.175.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 (304) hide show
  1. package/dist/index100.js +4 -5
  2. package/dist/index100.js.map +1 -1
  3. package/dist/index101.js +3 -3
  4. package/dist/index101.js.map +1 -1
  5. package/dist/index102.js +6 -4
  6. package/dist/index102.js.map +1 -1
  7. package/dist/index103.js +145 -6
  8. package/dist/index103.js.map +1 -1
  9. package/dist/index104.js +38 -144
  10. package/dist/index104.js.map +1 -1
  11. package/dist/index105.js +4 -39
  12. package/dist/index105.js.map +1 -1
  13. package/dist/index106.js +7 -4
  14. package/dist/index106.js.map +1 -1
  15. package/dist/index107.js +12 -6
  16. package/dist/index107.js.map +1 -1
  17. package/dist/index108.js +13 -13
  18. package/dist/index108.js.map +1 -1
  19. package/dist/index109.js +7 -13
  20. package/dist/index109.js.map +1 -1
  21. package/dist/index110.js +30 -6
  22. package/dist/index110.js.map +1 -1
  23. package/dist/index111.js +10 -31
  24. package/dist/index111.js.map +1 -1
  25. package/dist/index112.js +10 -10
  26. package/dist/index112.js.map +1 -1
  27. package/dist/index113.js +8 -10
  28. package/dist/index113.js.map +1 -1
  29. package/dist/index114.js +13 -8
  30. package/dist/index114.js.map +1 -1
  31. package/dist/index115.js +101 -13
  32. package/dist/index115.js.map +1 -1
  33. package/dist/index116.js +20 -102
  34. package/dist/index116.js.map +1 -1
  35. package/dist/index117.js +54 -20
  36. package/dist/index117.js.map +1 -1
  37. package/dist/index118.js +70 -51
  38. package/dist/index118.js.map +1 -1
  39. package/dist/index119.js +9 -72
  40. package/dist/index119.js.map +1 -1
  41. package/dist/index120.js +20 -9
  42. package/dist/index120.js.map +1 -1
  43. package/dist/index121.js +16 -20
  44. package/dist/index121.js.map +1 -1
  45. package/dist/index122.js +23 -16
  46. package/dist/index122.js.map +1 -1
  47. package/dist/index123.js +6 -23
  48. package/dist/index123.js.map +1 -1
  49. package/dist/index124.js +5 -6
  50. package/dist/index124.js.map +1 -1
  51. package/dist/index125.js +23 -5
  52. package/dist/index125.js.map +1 -1
  53. package/dist/index126.js +35 -24
  54. package/dist/index126.js.map +1 -1
  55. package/dist/index127.js +16 -35
  56. package/dist/index127.js.map +1 -1
  57. package/dist/index128.js +7 -16
  58. package/dist/index128.js.map +1 -1
  59. package/dist/index129.js +4 -6
  60. package/dist/index129.js.map +1 -1
  61. package/dist/index130.js +4 -4
  62. package/dist/index130.js.map +1 -1
  63. package/dist/index131.js +4 -4
  64. package/dist/index131.js.map +1 -1
  65. package/dist/index132.js +4 -4
  66. package/dist/index132.js.map +1 -1
  67. package/dist/index133.js +3 -4
  68. package/dist/index133.js.map +1 -1
  69. package/dist/index134.js +6 -3
  70. package/dist/index134.js.map +1 -1
  71. package/dist/index135.js +24 -7
  72. package/dist/index135.js.map +1 -1
  73. package/dist/index136.js +8 -24
  74. package/dist/index136.js.map +1 -1
  75. package/dist/index137.js +6 -7
  76. package/dist/index137.js.map +1 -1
  77. package/dist/index138.js +5 -6
  78. package/dist/index138.js.map +1 -1
  79. package/dist/index139.js +3 -5
  80. package/dist/index139.js.map +1 -1
  81. package/dist/index140.js +3 -3
  82. package/dist/index140.js.map +1 -1
  83. package/dist/index141.js +4 -3
  84. package/dist/index141.js.map +1 -1
  85. package/dist/index142.js +3 -4
  86. package/dist/index142.js.map +1 -1
  87. package/dist/index143.js +4 -3
  88. package/dist/index143.js.map +1 -1
  89. package/dist/index144.js +3 -4
  90. package/dist/index144.js.map +1 -1
  91. package/dist/index145.js +3 -3
  92. package/dist/index145.js.map +1 -1
  93. package/dist/index146.js +3 -3
  94. package/dist/index146.js.map +1 -1
  95. package/dist/index147.js +46 -3
  96. package/dist/index147.js.map +1 -1
  97. package/dist/index148.js.map +1 -1
  98. package/dist/index149.js +200 -41
  99. package/dist/index149.js.map +1 -1
  100. package/dist/index150.js +20 -204
  101. package/dist/index150.js.map +1 -1
  102. package/dist/index151.js +25 -22
  103. package/dist/index151.js.map +1 -1
  104. package/dist/index152.js +398 -23
  105. package/dist/index152.js.map +1 -1
  106. package/dist/index153.js +589 -383
  107. package/dist/index153.js.map +1 -1
  108. package/dist/index175.js +16 -67
  109. package/dist/index175.js.map +1 -1
  110. package/dist/index176.js +4 -179
  111. package/dist/index176.js.map +1 -1
  112. package/dist/index177.js +4 -45
  113. package/dist/index177.js.map +1 -1
  114. package/dist/index178.js +2 -2
  115. package/dist/index179.js +66 -8
  116. package/dist/index179.js.map +1 -1
  117. package/dist/index180.js +6 -66
  118. package/dist/index180.js.map +1 -1
  119. package/dist/index181.js +4 -19
  120. package/dist/index181.js.map +1 -1
  121. package/dist/index182.js +7 -16
  122. package/dist/index182.js.map +1 -1
  123. package/dist/index183.js +17 -5
  124. package/dist/index183.js.map +1 -1
  125. package/dist/index184.js +5 -5
  126. package/dist/index184.js.map +1 -1
  127. package/dist/index185.js +5 -6
  128. package/dist/index185.js.map +1 -1
  129. package/dist/index186.js +13 -4
  130. package/dist/index186.js.map +1 -1
  131. package/dist/index187.js +10 -7
  132. package/dist/index187.js.map +1 -1
  133. package/dist/index188.js +14 -17
  134. package/dist/index188.js.map +1 -1
  135. package/dist/index189.js +14 -5
  136. package/dist/index189.js.map +1 -1
  137. package/dist/index190.js +5 -5
  138. package/dist/index190.js.map +1 -1
  139. package/dist/index191.js +6 -13
  140. package/dist/index191.js.map +1 -1
  141. package/dist/index192.js +7 -10
  142. package/dist/index192.js.map +1 -1
  143. package/dist/index193.js +6 -14
  144. package/dist/index193.js.map +1 -1
  145. package/dist/index194.js +9 -14
  146. package/dist/index194.js.map +1 -1
  147. package/dist/index195.js +5 -5
  148. package/dist/index195.js.map +1 -1
  149. package/dist/index196.js +4 -5
  150. package/dist/index196.js.map +1 -1
  151. package/dist/index197.js +9 -7
  152. package/dist/index197.js.map +1 -1
  153. package/dist/index198.js +5 -6
  154. package/dist/index198.js.map +1 -1
  155. package/dist/index199.js +5 -9
  156. package/dist/index199.js.map +1 -1
  157. package/dist/index200.js +4 -5
  158. package/dist/index200.js.map +1 -1
  159. package/dist/index201.js +11 -5
  160. package/dist/index201.js.map +1 -1
  161. package/dist/index202.js +10 -9
  162. package/dist/index202.js.map +1 -1
  163. package/dist/index203.js +10 -5
  164. package/dist/index203.js.map +1 -1
  165. package/dist/index204.js +11 -5
  166. package/dist/index204.js.map +1 -1
  167. package/dist/index205.js +11 -4
  168. package/dist/index205.js.map +1 -1
  169. package/dist/index206.js +10 -11
  170. package/dist/index206.js.map +1 -1
  171. package/dist/index207.js +7 -10
  172. package/dist/index207.js.map +1 -1
  173. package/dist/index208.js +6 -10
  174. package/dist/index208.js.map +1 -1
  175. package/dist/index209.js +5 -11
  176. package/dist/index209.js.map +1 -1
  177. package/dist/index210.js +6 -11
  178. package/dist/index210.js.map +1 -1
  179. package/dist/index211.js +6 -9
  180. package/dist/index211.js.map +1 -1
  181. package/dist/index212.js +6 -7
  182. package/dist/index212.js.map +1 -1
  183. package/dist/index213.js +55 -6
  184. package/dist/index213.js.map +1 -1
  185. package/dist/index214.js +8 -5
  186. package/dist/index214.js.map +1 -1
  187. package/dist/index215.js +19 -6
  188. package/dist/index215.js.map +1 -1
  189. package/dist/index216.js +16 -7
  190. package/dist/index216.js.map +1 -1
  191. package/dist/index217.js +7 -6
  192. package/dist/index217.js.map +1 -1
  193. package/dist/index218.js +10 -55
  194. package/dist/index218.js.map +1 -1
  195. package/dist/index219.js +9 -15
  196. package/dist/index219.js.map +1 -1
  197. package/dist/index220.js +21 -7
  198. package/dist/index220.js.map +1 -1
  199. package/dist/index221.js +10 -10
  200. package/dist/index221.js.map +1 -1
  201. package/dist/index222.js +9 -10
  202. package/dist/index222.js.map +1 -1
  203. package/dist/index223.js +9 -21
  204. package/dist/index223.js.map +1 -1
  205. package/dist/index224.js +4 -10
  206. package/dist/index224.js.map +1 -1
  207. package/dist/index225.js +5 -9
  208. package/dist/index225.js.map +1 -1
  209. package/dist/index226.js +16 -9
  210. package/dist/index226.js.map +1 -1
  211. package/dist/index227.js +9 -4
  212. package/dist/index227.js.map +1 -1
  213. package/dist/index228.js +18 -5
  214. package/dist/index228.js.map +1 -1
  215. package/dist/index229.js +15 -16
  216. package/dist/index229.js.map +1 -1
  217. package/dist/index230.js +12 -9
  218. package/dist/index230.js.map +1 -1
  219. package/dist/index231.js +29 -18
  220. package/dist/index231.js.map +1 -1
  221. package/dist/index232.js +12 -15
  222. package/dist/index232.js.map +1 -1
  223. package/dist/index233.js +25 -12
  224. package/dist/index233.js.map +1 -1
  225. package/dist/index234.js +5 -29
  226. package/dist/index234.js.map +1 -1
  227. package/dist/index235.js +24 -12
  228. package/dist/index235.js.map +1 -1
  229. package/dist/index236.js +29 -26
  230. package/dist/index236.js.map +1 -1
  231. package/dist/index237.js +5 -6
  232. package/dist/index237.js.map +1 -1
  233. package/dist/index238.js +65 -22
  234. package/dist/index238.js.map +1 -1
  235. package/dist/index239.js +179 -27
  236. package/dist/index239.js.map +1 -1
  237. package/dist/index240.js +47 -5
  238. package/dist/index240.js.map +1 -1
  239. package/dist/index272.js +1 -1
  240. package/dist/index273.js +1 -1
  241. package/dist/index285.js +2 -2
  242. package/dist/index288.js +1 -1
  243. package/dist/index289.js +2 -2
  244. package/dist/index291.js +1 -1
  245. package/dist/index292.js +1 -1
  246. package/dist/index293.js +1 -1
  247. package/dist/index294.js +1 -1
  248. package/dist/index295.js +1 -1
  249. package/dist/index30.js +24 -24
  250. package/dist/index31.js +3 -3
  251. package/dist/index48.js +1 -1
  252. package/dist/index50.js +1 -1
  253. package/dist/index55.js +1 -1
  254. package/dist/index61.js +4 -4
  255. package/dist/index69.js +3 -3
  256. package/dist/index76.js +52 -606
  257. package/dist/index76.js.map +1 -1
  258. package/dist/index77.js +5 -52
  259. package/dist/index77.js.map +1 -1
  260. package/dist/index78.js +4 -4
  261. package/dist/index78.js.map +1 -1
  262. package/dist/index79.js +15 -4
  263. package/dist/index79.js.map +1 -1
  264. package/dist/index80.js +5 -15
  265. package/dist/index80.js.map +1 -1
  266. package/dist/index81.js +7 -5
  267. package/dist/index81.js.map +1 -1
  268. package/dist/index82.js +15 -6
  269. package/dist/index82.js.map +1 -1
  270. package/dist/index83.js +4 -16
  271. package/dist/index83.js.map +1 -1
  272. package/dist/index84.js +1 -1
  273. package/dist/index84.js.map +1 -1
  274. package/dist/index85.js +5 -4
  275. package/dist/index85.js.map +1 -1
  276. package/dist/index86.js +4 -4
  277. package/dist/index86.js.map +1 -1
  278. package/dist/index87.js +4 -5
  279. package/dist/index87.js.map +1 -1
  280. package/dist/index88.js +2 -2
  281. package/dist/index88.js.map +1 -1
  282. package/dist/index89.js +5 -3
  283. package/dist/index89.js.map +1 -1
  284. package/dist/index90.js +24 -6
  285. package/dist/index90.js.map +1 -1
  286. package/dist/index91.js +6 -24
  287. package/dist/index91.js.map +1 -1
  288. package/dist/index92.js +4 -6
  289. package/dist/index92.js.map +1 -1
  290. package/dist/index93.js +5 -3
  291. package/dist/index93.js.map +1 -1
  292. package/dist/index94.js +5 -6
  293. package/dist/index94.js.map +1 -1
  294. package/dist/index95.js +4 -5
  295. package/dist/index95.js.map +1 -1
  296. package/dist/index96.js +4 -3
  297. package/dist/index96.js.map +1 -1
  298. package/dist/index97.js +4 -5
  299. package/dist/index97.js.map +1 -1
  300. package/dist/index98.js +8 -4
  301. package/dist/index98.js.map +1 -1
  302. package/dist/index99.js +5 -8
  303. package/dist/index99.js.map +1 -1
  304. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index224.js","sources":["../../../node_modules/react-day-picker/dist/esm/helpers/getNavMonth.js"],"sourcesContent":["/**\n * Returns the start and end months for calendar navigation.\n *\n * @param props The DayPicker props, including navigation and layout options.\n * @param dateLib The date library to use for date manipulation.\n * @returns A tuple containing the start and end months for navigation.\n */\nexport function getNavMonths(props, dateLib) {\n let { startMonth, endMonth } = props;\n const { startOfYear, startOfDay, startOfMonth, endOfMonth, addYears, endOfYear, newDate, today, } = dateLib;\n // Handle deprecated code\n const { fromYear, toYear, fromMonth, toMonth } = props;\n if (!startMonth && fromMonth) {\n startMonth = fromMonth;\n }\n if (!startMonth && fromYear) {\n startMonth = dateLib.newDate(fromYear, 0, 1);\n }\n if (!endMonth && toMonth) {\n endMonth = toMonth;\n }\n if (!endMonth && toYear) {\n endMonth = newDate(toYear, 11, 31);\n }\n const hasYearDropdown = props.captionLayout === \"dropdown\" ||\n props.captionLayout === \"dropdown-years\";\n if (startMonth) {\n startMonth = startOfMonth(startMonth);\n }\n else if (fromYear) {\n startMonth = newDate(fromYear, 0, 1);\n }\n else if (!startMonth && hasYearDropdown) {\n startMonth = startOfYear(addYears(props.today ?? today(), -100));\n }\n if (endMonth) {\n endMonth = endOfMonth(endMonth);\n }\n else if (toYear) {\n endMonth = newDate(toYear, 11, 31);\n }\n else if (!endMonth && hasYearDropdown) {\n endMonth = endOfYear(props.today ?? today());\n }\n return [\n startMonth ? startOfDay(startMonth) : startMonth,\n endMonth ? startOfDay(endMonth) : endMonth,\n ];\n}\n"],"names":["getNavMonths","props","dateLib","startMonth","endMonth","startOfYear","startOfDay","startOfMonth","endOfMonth","addYears","endOfYear","newDate","today","fromYear","toYear","fromMonth","toMonth","hasYearDropdown"],"mappings":"AAOO,SAASA,EAAaC,GAAOC,GAAS;AACzC,MAAI,EAAE,YAAAC,GAAY,UAAAC,EAAQ,IAAKH;AAC/B,QAAM,EAAE,aAAAI,GAAa,YAAAC,GAAY,cAAAC,GAAc,YAAAC,GAAY,UAAAC,GAAU,WAAAC,GAAW,SAAAC,GAAS,OAAAC,EAAK,IAAMV,GAE9F,EAAE,UAAAW,GAAU,QAAAC,GAAQ,WAAAC,GAAW,SAAAC,EAAO,IAAKf;AACjD,EAAI,CAACE,KAAcY,MACfZ,IAAaY,IAEb,CAACZ,KAAcU,MACfV,IAAaD,EAAQ,QAAQW,GAAU,GAAG,CAAC,IAE3C,CAACT,KAAYY,MACbZ,IAAWY,IAEX,CAACZ,KAAYU,MACbV,IAAWO,EAAQG,GAAQ,IAAI,EAAE;AAErC,QAAMG,IAAkBhB,EAAM,kBAAkB,cAC5CA,EAAM,kBAAkB;AAC5B,SAAIE,IACAA,IAAaI,EAAaJ,CAAU,IAE/BU,IACLV,IAAaQ,EAAQE,GAAU,GAAG,CAAC,IAE9B,CAACV,KAAcc,MACpBd,IAAaE,EAAYI,EAASR,EAAM,SAASW,EAAK,GAAI,IAAI,CAAC,IAE/DR,IACAA,IAAWI,EAAWJ,CAAQ,IAEzBU,IACLV,IAAWO,EAAQG,GAAQ,IAAI,EAAE,IAE5B,CAACV,KAAYa,MAClBb,IAAWM,EAAUT,EAAM,SAASW,EAAK,CAAE,IAExC;AAAA,IACHT,KAAaG,EAAWH,CAAU;AAAA,IAClCC,KAAWE,EAAWF,CAAQ;AAAA,EACtC;AACA;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index224.js","sources":["../../../node_modules/react-day-picker/dist/esm/helpers/getWeeks.js"],"sourcesContent":["/**\n * Returns an array of calendar weeks from an array of calendar months.\n *\n * @param months The array of calendar months.\n * @returns An array of calendar weeks.\n */\nexport function getWeeks(months) {\n const initialWeeks = [];\n return months.reduce((weeks, month) => {\n return weeks.concat(month.weeks.slice());\n }, initialWeeks.slice());\n}\n"],"names":["getWeeks","months","initialWeeks","weeks","month"],"mappings":"AAMO,SAASA,EAASC,GAAQ;AAC7B,QAAMC,IAAe,CAAA;AACrB,SAAOD,EAAO,OAAO,CAACE,GAAOC,MAClBD,EAAM,OAAOC,EAAM,MAAM,MAAK,CAAE,GACxCF,EAAa,OAAO;AAC3B;","x_google_ignoreList":[0]}
package/dist/index225.js CHANGED
@@ -1,13 +1,9 @@
1
- function h(n, t, e, s) {
2
- if (e.disableNavigation)
3
- return;
4
- const { pagedNavigation: u, numberOfMonths: f = 1 } = e, { startOfMonth: a, addMonths: o, differenceInCalendarMonths: d } = s, i = u ? f : 1, r = a(n);
5
- if (!t)
6
- return o(r, i);
7
- if (!(d(t, n) < f))
8
- return o(r, i);
1
+ import { useState as o } from "react";
2
+ function a(t, e) {
3
+ const [u, n] = o(t);
4
+ return [e === void 0 ? u : e, n];
9
5
  }
10
6
  export {
11
- h as getNextMonth
7
+ a as useControlledValue
12
8
  };
13
9
  //# sourceMappingURL=index225.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index225.js","sources":["../../../node_modules/react-day-picker/dist/esm/helpers/getNextMonth.js"],"sourcesContent":["/**\n * Returns the next month the user can navigate to, based on the given options.\n *\n * The next month is not always the next calendar month:\n *\n * - If it is after the `calendarEndMonth`, it returns `undefined`.\n * - If paged navigation is enabled, it skips forward by the number of displayed\n * months.\n *\n * @param firstDisplayedMonth The first month currently displayed in the\n * calendar.\n * @param calendarEndMonth The latest month the user can navigate to.\n * @param options Navigation options, including `numberOfMonths` and\n * `pagedNavigation`.\n * @param dateLib The date library to use for date manipulation.\n * @returns The next month, or `undefined` if navigation is not possible.\n */\nexport function getNextMonth(firstDisplayedMonth, calendarEndMonth, options, dateLib) {\n if (options.disableNavigation) {\n return undefined;\n }\n const { pagedNavigation, numberOfMonths = 1 } = options;\n const { startOfMonth, addMonths, differenceInCalendarMonths } = dateLib;\n const offset = pagedNavigation ? numberOfMonths : 1;\n const month = startOfMonth(firstDisplayedMonth);\n if (!calendarEndMonth) {\n return addMonths(month, offset);\n }\n const monthsDiff = differenceInCalendarMonths(calendarEndMonth, firstDisplayedMonth);\n if (monthsDiff < numberOfMonths) {\n return undefined;\n }\n return addMonths(month, offset);\n}\n"],"names":["getNextMonth","firstDisplayedMonth","calendarEndMonth","options","dateLib","pagedNavigation","numberOfMonths","startOfMonth","addMonths","differenceInCalendarMonths","offset","month"],"mappings":"AAiBO,SAASA,EAAaC,GAAqBC,GAAkBC,GAASC,GAAS;AAClF,MAAID,EAAQ;AACR;AAEJ,QAAM,EAAE,iBAAAE,GAAiB,gBAAAC,IAAiB,EAAC,IAAKH,GAC1C,EAAE,cAAAI,GAAc,WAAAC,GAAW,4BAAAC,EAA0B,IAAKL,GAC1DM,IAASL,IAAkBC,IAAiB,GAC5CK,IAAQJ,EAAaN,CAAmB;AAC9C,MAAI,CAACC;AACD,WAAOM,EAAUG,GAAOD,CAAM;AAGlC,MAAI,EADeD,EAA2BP,GAAkBD,CAAmB,IAClEK;AAGjB,WAAOE,EAAUG,GAAOD,CAAM;AAClC;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index225.js","sources":["../../../node_modules/react-day-picker/dist/esm/helpers/useControlledValue.js"],"sourcesContent":["import { useState } from \"react\";\n/**\n * A custom hook for managing both controlled and uncontrolled component states.\n *\n * This hook allows a component to support both controlled and uncontrolled\n * states by determining whether the `controlledValue` is provided. If it is\n * undefined, the hook falls back to using the internal state.\n *\n * @example\n * // Uncontrolled usage\n * const [value, setValue] = useControlledValue(0, undefined);\n *\n * // Controlled usage\n * const [value, setValue] = useControlledValue(0, props.value);\n *\n * @template T - The type of the value.\n * @param defaultValue The initial value for the uncontrolled state.\n * @param controlledValue The value for the controlled state. If undefined, the\n * component will use the uncontrolled state.\n * @returns A tuple where the first element is the current value (either\n * controlled or uncontrolled) and the second element is a setter function to\n * update the value.\n */\nexport function useControlledValue(defaultValue, controlledValue) {\n const [uncontrolledValue, setValue] = useState(defaultValue);\n const value = controlledValue === undefined ? uncontrolledValue : controlledValue;\n return [value, setValue];\n}\n"],"names":["useControlledValue","defaultValue","controlledValue","uncontrolledValue","setValue","useState"],"mappings":";AAuBO,SAASA,EAAmBC,GAAcC,GAAiB;AAC9D,QAAM,CAACC,GAAmBC,CAAQ,IAAIC,EAASJ,CAAY;AAE3D,SAAO,CADOC,MAAoB,SAAYC,IAAoBD,GACnDE,CAAQ;AAC3B;","x_google_ignoreList":[0]}
package/dist/index226.js CHANGED
@@ -1,13 +1,20 @@
1
- function c(i, t, e, s) {
2
- if (e.disableNavigation)
3
- return;
4
- const { pagedNavigation: r, numberOfMonths: d } = e, { startOfMonth: u, addMonths: f, differenceInCalendarMonths: a } = s, o = r ? d ?? 1 : 1, n = u(i);
5
- if (!t)
6
- return f(n, -o);
7
- if (!(a(n, t) <= 0))
8
- return f(n, -o);
1
+ import { DayFlag as s } from "./index116.js";
2
+ var d;
3
+ (function(e) {
4
+ e[e.Today = 0] = "Today", e[e.Selected = 1] = "Selected", e[e.LastFocused = 2] = "LastFocused", e[e.FocusedModifier = 3] = "FocusedModifier";
5
+ })(d || (d = {}));
6
+ function l(e) {
7
+ return !e[s.disabled] && !e[s.hidden] && !e[s.outside];
8
+ }
9
+ function F(e, u, t, n) {
10
+ let f, c = -1;
11
+ for (const o of e) {
12
+ const a = u(o);
13
+ l(a) && (a[s.focused] && c < d.FocusedModifier ? (f = o, c = d.FocusedModifier) : n?.isEqualTo(o) && c < d.LastFocused ? (f = o, c = d.LastFocused) : t(o.date) && c < d.Selected ? (f = o, c = d.Selected) : a[s.today] && c < d.Today && (f = o, c = d.Today));
14
+ }
15
+ return f || (f = e.find((o) => l(u(o)))), f;
9
16
  }
10
17
  export {
11
- c as getPreviousMonth
18
+ F as calculateFocusTarget
12
19
  };
13
20
  //# sourceMappingURL=index226.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index226.js","sources":["../../../node_modules/react-day-picker/dist/esm/helpers/getPreviousMonth.js"],"sourcesContent":["/**\n * Returns the previous month the user can navigate to, based on the given\n * options.\n *\n * The previous month is not always the previous calendar month:\n *\n * - If it is before the `calendarStartMonth`, it returns `undefined`.\n * - If paged navigation is enabled, it skips back by the number of displayed\n * months.\n *\n * @param firstDisplayedMonth The first month currently displayed in the\n * calendar.\n * @param calendarStartMonth The earliest month the user can navigate to.\n * @param options Navigation options, including `numberOfMonths` and\n * `pagedNavigation`.\n * @param dateLib The date library to use for date manipulation.\n * @returns The previous month, or `undefined` if navigation is not possible.\n */\nexport function getPreviousMonth(firstDisplayedMonth, calendarStartMonth, options, dateLib) {\n if (options.disableNavigation) {\n return undefined;\n }\n const { pagedNavigation, numberOfMonths } = options;\n const { startOfMonth, addMonths, differenceInCalendarMonths } = dateLib;\n const offset = pagedNavigation ? (numberOfMonths ?? 1) : 1;\n const month = startOfMonth(firstDisplayedMonth);\n if (!calendarStartMonth) {\n return addMonths(month, -offset);\n }\n const monthsDiff = differenceInCalendarMonths(month, calendarStartMonth);\n if (monthsDiff <= 0) {\n return undefined;\n }\n return addMonths(month, -offset);\n}\n"],"names":["getPreviousMonth","firstDisplayedMonth","calendarStartMonth","options","dateLib","pagedNavigation","numberOfMonths","startOfMonth","addMonths","differenceInCalendarMonths","offset","month"],"mappings":"AAkBO,SAASA,EAAiBC,GAAqBC,GAAoBC,GAASC,GAAS;AACxF,MAAID,EAAQ;AACR;AAEJ,QAAM,EAAE,iBAAAE,GAAiB,gBAAAC,EAAc,IAAKH,GACtC,EAAE,cAAAI,GAAc,WAAAC,GAAW,4BAAAC,EAA0B,IAAKL,GAC1DM,IAASL,IAAmBC,KAAkB,IAAK,GACnDK,IAAQJ,EAAaN,CAAmB;AAC9C,MAAI,CAACC;AACD,WAAOM,EAAUG,GAAO,CAACD,CAAM;AAGnC,MAAI,EADeD,EAA2BE,GAAOT,CAAkB,KACrD;AAGlB,WAAOM,EAAUG,GAAO,CAACD,CAAM;AACnC;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index226.js","sources":["../../../node_modules/react-day-picker/dist/esm/helpers/calculateFocusTarget.js"],"sourcesContent":["import { DayFlag } from \"../UI.js\";\nvar FocusTargetPriority;\n(function (FocusTargetPriority) {\n FocusTargetPriority[FocusTargetPriority[\"Today\"] = 0] = \"Today\";\n FocusTargetPriority[FocusTargetPriority[\"Selected\"] = 1] = \"Selected\";\n FocusTargetPriority[FocusTargetPriority[\"LastFocused\"] = 2] = \"LastFocused\";\n FocusTargetPriority[FocusTargetPriority[\"FocusedModifier\"] = 3] = \"FocusedModifier\";\n})(FocusTargetPriority || (FocusTargetPriority = {}));\n/**\n * Determines if a day is focusable based on its modifiers.\n *\n * A day is considered focusable if it is not disabled, hidden, or outside the\n * displayed month.\n *\n * @param modifiers The modifiers applied to the day.\n * @returns `true` if the day is focusable, otherwise `false`.\n */\nfunction isFocusableDay(modifiers) {\n return (!modifiers[DayFlag.disabled] &&\n !modifiers[DayFlag.hidden] &&\n !modifiers[DayFlag.outside]);\n}\n/**\n * Calculates the focus target day based on priority.\n *\n * This function determines the day that should receive focus in the calendar,\n * prioritizing days with specific modifiers (e.g., \"focused\", \"today\") or\n * selection states.\n *\n * @param days The array of `CalendarDay` objects to evaluate.\n * @param getModifiers A function to retrieve the modifiers for a given day.\n * @param isSelected A function to determine if a day is selected.\n * @param lastFocused The last focused day, if any.\n * @returns The `CalendarDay` that should receive focus, or `undefined` if no\n * focusable day is found.\n */\nexport function calculateFocusTarget(days, getModifiers, isSelected, lastFocused) {\n let focusTarget;\n let foundFocusTargetPriority = -1;\n for (const day of days) {\n const modifiers = getModifiers(day);\n if (isFocusableDay(modifiers)) {\n if (modifiers[DayFlag.focused] &&\n foundFocusTargetPriority < FocusTargetPriority.FocusedModifier) {\n focusTarget = day;\n foundFocusTargetPriority = FocusTargetPriority.FocusedModifier;\n }\n else if (lastFocused?.isEqualTo(day) &&\n foundFocusTargetPriority < FocusTargetPriority.LastFocused) {\n focusTarget = day;\n foundFocusTargetPriority = FocusTargetPriority.LastFocused;\n }\n else if (isSelected(day.date) &&\n foundFocusTargetPriority < FocusTargetPriority.Selected) {\n focusTarget = day;\n foundFocusTargetPriority = FocusTargetPriority.Selected;\n }\n else if (modifiers[DayFlag.today] &&\n foundFocusTargetPriority < FocusTargetPriority.Today) {\n focusTarget = day;\n foundFocusTargetPriority = FocusTargetPriority.Today;\n }\n }\n }\n if (!focusTarget) {\n // Return the first day that is focusable\n focusTarget = days.find((day) => isFocusableDay(getModifiers(day)));\n }\n return focusTarget;\n}\n"],"names":["FocusTargetPriority","isFocusableDay","modifiers","DayFlag","calculateFocusTarget","days","getModifiers","isSelected","lastFocused","focusTarget","foundFocusTargetPriority","day"],"mappings":";AACA,IAAIA;AAAA,CACH,SAAUA,GAAqB;AAC5B,EAAAA,EAAoBA,EAAoB,QAAW,CAAC,IAAI,SACxDA,EAAoBA,EAAoB,WAAc,CAAC,IAAI,YAC3DA,EAAoBA,EAAoB,cAAiB,CAAC,IAAI,eAC9DA,EAAoBA,EAAoB,kBAAqB,CAAC,IAAI;AACtE,GAAGA,MAAwBA,IAAsB,CAAA,EAAG;AAUpD,SAASC,EAAeC,GAAW;AAC/B,SAAQ,CAACA,EAAUC,EAAQ,QAAQ,KAC/B,CAACD,EAAUC,EAAQ,MAAM,KACzB,CAACD,EAAUC,EAAQ,OAAO;AAClC;AAeO,SAASC,EAAqBC,GAAMC,GAAcC,GAAYC,GAAa;AAC9E,MAAIC,GACAC,IAA2B;AAC/B,aAAWC,KAAON,GAAM;AACpB,UAAMH,IAAYI,EAAaK,CAAG;AAClC,IAAIV,EAAeC,CAAS,MACpBA,EAAUC,EAAQ,OAAO,KACzBO,IAA2BV,EAAoB,mBAC/CS,IAAcE,GACdD,IAA2BV,EAAoB,mBAE1CQ,GAAa,UAAUG,CAAG,KAC/BD,IAA2BV,EAAoB,eAC/CS,IAAcE,GACdD,IAA2BV,EAAoB,eAE1CO,EAAWI,EAAI,IAAI,KACxBD,IAA2BV,EAAoB,YAC/CS,IAAcE,GACdD,IAA2BV,EAAoB,YAE1CE,EAAUC,EAAQ,KAAK,KAC5BO,IAA2BV,EAAoB,UAC/CS,IAAcE,GACdD,IAA2BV,EAAoB;AAAA,EAG3D;AACA,SAAKS,MAEDA,IAAcJ,EAAK,KAAK,CAACM,MAAQV,EAAeK,EAAaK,CAAG,CAAC,CAAC,IAE/DF;AACX;","x_google_ignoreList":[0]}
package/dist/index227.js CHANGED
@@ -1,8 +1,13 @@
1
- function i(e) {
2
- const t = [];
3
- return e.reduce((c, n) => c.concat(n.weeks.slice()), t.slice());
1
+ import { dateMatchModifiers as u } from "./index31.js";
2
+ import { getFocusableDate as g } from "./index268.js";
3
+ import { CalendarDay as m } from "./index175.js";
4
+ function h(t, i, a, d, f, e, n, s = 0) {
5
+ if (s > 365)
6
+ return;
7
+ const o = g(t, i, a.date, d, f, e, n), r = !!(e.disabled && u(o, e.disabled, n)), l = !!(e.hidden && u(o, e.hidden, n)), D = o, c = new m(o, D, n);
8
+ return !r && !l ? c : h(t, i, c, d, f, e, n, s + 1);
4
9
  }
5
10
  export {
6
- i as getWeeks
11
+ h as getNextFocus
7
12
  };
8
13
  //# sourceMappingURL=index227.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index227.js","sources":["../../../node_modules/react-day-picker/dist/esm/helpers/getWeeks.js"],"sourcesContent":["/**\n * Returns an array of calendar weeks from an array of calendar months.\n *\n * @param months The array of calendar months.\n * @returns An array of calendar weeks.\n */\nexport function getWeeks(months) {\n const initialWeeks = [];\n return months.reduce((weeks, month) => {\n return weeks.concat(month.weeks.slice());\n }, initialWeeks.slice());\n}\n"],"names":["getWeeks","months","initialWeeks","weeks","month"],"mappings":"AAMO,SAASA,EAASC,GAAQ;AAC7B,QAAMC,IAAe,CAAA;AACrB,SAAOD,EAAO,OAAO,CAACE,GAAOC,MAClBD,EAAM,OAAOC,EAAM,MAAM,MAAK,CAAE,GACxCF,EAAa,OAAO;AAC3B;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index227.js","sources":["../../../node_modules/react-day-picker/dist/esm/helpers/getNextFocus.js"],"sourcesContent":["import { CalendarDay } from \"../classes/index.js\";\nimport { dateMatchModifiers } from \"../utils/dateMatchModifiers.js\";\nimport { getFocusableDate } from \"./getFocusableDate.js\";\n/**\n * Determines the next focusable day in the calendar.\n *\n * This function recursively calculates the next focusable day based on the\n * movement direction and modifiers applied to the days.\n *\n * @param moveBy The unit of movement (e.g., \"day\", \"week\").\n * @param moveDir The direction of movement (\"before\" or \"after\").\n * @param refDay The currently focused day.\n * @param calendarStartMonth The earliest month the user can navigate to.\n * @param calendarEndMonth The latest month the user can navigate to.\n * @param props The DayPicker props, including modifiers and configuration\n * options.\n * @param dateLib The date library to use for date manipulation.\n * @param attempt The current recursion attempt (used to limit recursion depth).\n * @returns The next focusable day, or `undefined` if no focusable day is found.\n */\nexport function getNextFocus(moveBy, moveDir, refDay, calendarStartMonth, calendarEndMonth, props, dateLib, attempt = 0) {\n if (attempt > 365) {\n // Limit the recursion to 365 attempts\n return undefined;\n }\n const focusableDate = getFocusableDate(moveBy, moveDir, refDay.date, calendarStartMonth, calendarEndMonth, props, dateLib);\n const isDisabled = Boolean(props.disabled &&\n dateMatchModifiers(focusableDate, props.disabled, dateLib));\n const isHidden = Boolean(props.hidden && dateMatchModifiers(focusableDate, props.hidden, dateLib));\n const targetMonth = focusableDate;\n const focusDay = new CalendarDay(focusableDate, targetMonth, dateLib);\n if (!isDisabled && !isHidden) {\n return focusDay;\n }\n // Recursively attempt to find the next focusable date\n return getNextFocus(moveBy, moveDir, focusDay, calendarStartMonth, calendarEndMonth, props, dateLib, attempt + 1);\n}\n"],"names":["getNextFocus","moveBy","moveDir","refDay","calendarStartMonth","calendarEndMonth","props","dateLib","attempt","focusableDate","getFocusableDate","isDisabled","dateMatchModifiers","isHidden","targetMonth","focusDay","CalendarDay"],"mappings":";;;AAoBO,SAASA,EAAaC,GAAQC,GAASC,GAAQC,GAAoBC,GAAkBC,GAAOC,GAASC,IAAU,GAAG;AACrH,MAAIA,IAAU;AAEV;AAEJ,QAAMC,IAAgBC,EAAiBT,GAAQC,GAASC,EAAO,MAAMC,GAAoBC,GAAkBC,GAAOC,CAAO,GACnHI,IAAa,GAAQL,EAAM,YAC7BM,EAAmBH,GAAeH,EAAM,UAAUC,CAAO,IACvDM,IAAW,GAAQP,EAAM,UAAUM,EAAmBH,GAAeH,EAAM,QAAQC,CAAO,IAC1FO,IAAcL,GACdM,IAAW,IAAIC,EAAYP,GAAeK,GAAaP,CAAO;AACpE,SAAI,CAACI,KAAc,CAACE,IACTE,IAGJf,EAAaC,GAAQC,GAASa,GAAUX,GAAoBC,GAAkBC,GAAOC,GAASC,IAAU,CAAC;AACpH;","x_google_ignoreList":[0]}
package/dist/index228.js CHANGED
@@ -1,9 +1,22 @@
1
- import { useState as o } from "react";
2
- function a(t, e) {
3
- const [u, n] = o(t);
4
- return [e === void 0 ? u : e, n];
1
+ import { useControlledValue as x } from "./index225.js";
2
+ function C(i, d) {
3
+ const { selected: s, required: f, onSelect: l } = i, [r, m] = x(s, l ? s : void 0), e = l ? s : r, { isSameDay: o } = d, u = (t) => e?.some((c) => o(c, t)) ?? !1, { min: S, max: a } = i;
4
+ return {
5
+ selected: e,
6
+ select: (t, c, h) => {
7
+ let n = [...e ?? []];
8
+ if (u(t)) {
9
+ if (e?.length === S || f && e?.length === 1)
10
+ return;
11
+ n = e?.filter((y) => !o(y, t));
12
+ } else
13
+ e?.length === a ? n = [t] : n = [...n, t];
14
+ return l || m(n), l?.(n, t, c, h), n;
15
+ },
16
+ isSelected: u
17
+ };
5
18
  }
6
19
  export {
7
- a as useControlledValue
20
+ C as useMulti
8
21
  };
9
22
  //# sourceMappingURL=index228.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index228.js","sources":["../../../node_modules/react-day-picker/dist/esm/helpers/useControlledValue.js"],"sourcesContent":["import { useState } from \"react\";\n/**\n * A custom hook for managing both controlled and uncontrolled component states.\n *\n * This hook allows a component to support both controlled and uncontrolled\n * states by determining whether the `controlledValue` is provided. If it is\n * undefined, the hook falls back to using the internal state.\n *\n * @example\n * // Uncontrolled usage\n * const [value, setValue] = useControlledValue(0, undefined);\n *\n * // Controlled usage\n * const [value, setValue] = useControlledValue(0, props.value);\n *\n * @template T - The type of the value.\n * @param defaultValue The initial value for the uncontrolled state.\n * @param controlledValue The value for the controlled state. If undefined, the\n * component will use the uncontrolled state.\n * @returns A tuple where the first element is the current value (either\n * controlled or uncontrolled) and the second element is a setter function to\n * update the value.\n */\nexport function useControlledValue(defaultValue, controlledValue) {\n const [uncontrolledValue, setValue] = useState(defaultValue);\n const value = controlledValue === undefined ? uncontrolledValue : controlledValue;\n return [value, setValue];\n}\n"],"names":["useControlledValue","defaultValue","controlledValue","uncontrolledValue","setValue","useState"],"mappings":";AAuBO,SAASA,EAAmBC,GAAcC,GAAiB;AAC9D,QAAM,CAACC,GAAmBC,CAAQ,IAAIC,EAASJ,CAAY;AAE3D,SAAO,CADOC,MAAoB,SAAYC,IAAoBD,GACnDE,CAAQ;AAC3B;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index228.js","sources":["../../../node_modules/react-day-picker/dist/esm/selection/useMulti.js"],"sourcesContent":["import { useControlledValue } from \"../helpers/useControlledValue.js\";\n/**\n * Hook to manage multiple-date selection in the DayPicker component.\n *\n * @template T - The type of DayPicker props.\n * @param props - The DayPicker props.\n * @param dateLib - The date utility library instance.\n * @returns An object containing the selected dates, a function to select dates,\n * and a function to check if a date is selected.\n */\nexport function useMulti(props, dateLib) {\n const { selected: initiallySelected, required, onSelect, } = props;\n const [internallySelected, setSelected] = useControlledValue(initiallySelected, onSelect ? initiallySelected : undefined);\n const selected = !onSelect ? internallySelected : initiallySelected;\n const { isSameDay } = dateLib;\n const isSelected = (date) => {\n return selected?.some((d) => isSameDay(d, date)) ?? false;\n };\n const { min, max } = props;\n const select = (triggerDate, modifiers, e) => {\n let newDates = [...(selected ?? [])];\n if (isSelected(triggerDate)) {\n if (selected?.length === min) {\n // Min value reached, do nothing\n return;\n }\n if (required && selected?.length === 1) {\n // Required value already selected do nothing\n return;\n }\n newDates = selected?.filter((d) => !isSameDay(d, triggerDate));\n }\n else {\n if (selected?.length === max) {\n // Max value reached, reset the selection to date\n newDates = [triggerDate];\n }\n else {\n // Add the date to the selection\n newDates = [...newDates, triggerDate];\n }\n }\n if (!onSelect) {\n setSelected(newDates);\n }\n onSelect?.(newDates, triggerDate, modifiers, e);\n return newDates;\n };\n return {\n selected,\n select,\n isSelected,\n };\n}\n"],"names":["useMulti","props","dateLib","initiallySelected","required","onSelect","internallySelected","setSelected","useControlledValue","selected","isSameDay","isSelected","date","d","min","max","triggerDate","modifiers","e","newDates"],"mappings":";AAUO,SAASA,EAASC,GAAOC,GAAS;AACrC,QAAM,EAAE,UAAUC,GAAmB,UAAAC,GAAU,UAAAC,EAAQ,IAAMJ,GACvD,CAACK,GAAoBC,CAAW,IAAIC,EAAmBL,GAAmBE,IAAWF,IAAoB,MAAS,GAClHM,IAAYJ,IAAgCF,IAArBG,GACvB,EAAE,WAAAI,EAAS,IAAKR,GAChBS,IAAa,CAACC,MACTH,GAAU,KAAK,CAACI,MAAMH,EAAUG,GAAGD,CAAI,CAAC,KAAK,IAElD,EAAE,KAAAE,GAAK,KAAAC,EAAG,IAAKd;AA8BrB,SAAO;AAAA,IACH,UAAAQ;AAAA,IACA,QA/BW,CAACO,GAAaC,GAAWC,MAAM;AAC1C,UAAIC,IAAW,CAAC,GAAIV,KAAY,CAAA,CAAG;AACnC,UAAIE,EAAWK,CAAW,GAAG;AAKzB,YAJIP,GAAU,WAAWK,KAIrBV,KAAYK,GAAU,WAAW;AAEjC;AAEJ,QAAAU,IAAWV,GAAU,OAAO,CAACI,MAAM,CAACH,EAAUG,GAAGG,CAAW,CAAC;AAAA,MACjE;AAEI,QAAIP,GAAU,WAAWM,IAErBI,IAAW,CAACH,CAAW,IAIvBG,IAAW,CAAC,GAAGA,GAAUH,CAAW;AAG5C,aAAKX,KACDE,EAAYY,CAAQ,GAExBd,IAAWc,GAAUH,GAAaC,GAAWC,CAAC,GACvCC;AAAA,IACX;AAAA,IAII,YAAAR;AAAA,EACR;AACA;","x_google_ignoreList":[0]}
package/dist/index229.js CHANGED
@@ -1,20 +1,19 @@
1
- import { DayFlag as s } from "./index117.js";
2
- var d;
3
- (function(e) {
4
- e[e.Today = 0] = "Today", e[e.Selected = 1] = "Selected", e[e.LastFocused = 2] = "LastFocused", e[e.FocusedModifier = 3] = "FocusedModifier";
5
- })(d || (d = {}));
6
- function l(e) {
7
- return !e[s.disabled] && !e[s.hidden] && !e[s.outside];
8
- }
9
- function F(e, u, t, n) {
10
- let f, c = -1;
11
- for (const o of e) {
12
- const a = u(o);
13
- l(a) && (a[s.focused] && c < d.FocusedModifier ? (f = o, c = d.FocusedModifier) : n?.isEqualTo(o) && c < d.LastFocused ? (f = o, c = d.LastFocused) : t(o.date) && c < d.Selected ? (f = o, c = d.Selected) : a[s.today] && c < d.Today && (f = o, c = d.Today));
14
- }
15
- return f || (f = e.find((o) => l(u(o)))), f;
1
+ import { useControlledValue as x } from "./index225.js";
2
+ import { rangeIncludesDate as R } from "./index123.js";
3
+ import { addToRange as y } from "./index231.js";
4
+ import { rangeContainsModifiers as C } from "./index233.js";
5
+ function b(s, l) {
6
+ const { disabled: c, excludeDisabled: i, selected: d, required: f, onSelect: o } = s, [r, m] = x(d, o ? d : void 0), t = o ? d : r;
7
+ return {
8
+ selected: t,
9
+ select: (n, u, a) => {
10
+ const { min: S, max: p } = s, e = n ? y(n, t, S, p, f, l) : void 0;
11
+ return i && c && e?.from && e.to && C({ from: e.from, to: e.to }, c, l) && (e.from = n, e.to = void 0), o || m(e), o?.(e, n, u, a), e;
12
+ },
13
+ isSelected: (n) => t && R(t, n, !1, l)
14
+ };
16
15
  }
17
16
  export {
18
- F as calculateFocusTarget
17
+ b as useRange
19
18
  };
20
19
  //# sourceMappingURL=index229.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index229.js","sources":["../../../node_modules/react-day-picker/dist/esm/helpers/calculateFocusTarget.js"],"sourcesContent":["import { DayFlag } from \"../UI.js\";\nvar FocusTargetPriority;\n(function (FocusTargetPriority) {\n FocusTargetPriority[FocusTargetPriority[\"Today\"] = 0] = \"Today\";\n FocusTargetPriority[FocusTargetPriority[\"Selected\"] = 1] = \"Selected\";\n FocusTargetPriority[FocusTargetPriority[\"LastFocused\"] = 2] = \"LastFocused\";\n FocusTargetPriority[FocusTargetPriority[\"FocusedModifier\"] = 3] = \"FocusedModifier\";\n})(FocusTargetPriority || (FocusTargetPriority = {}));\n/**\n * Determines if a day is focusable based on its modifiers.\n *\n * A day is considered focusable if it is not disabled, hidden, or outside the\n * displayed month.\n *\n * @param modifiers The modifiers applied to the day.\n * @returns `true` if the day is focusable, otherwise `false`.\n */\nfunction isFocusableDay(modifiers) {\n return (!modifiers[DayFlag.disabled] &&\n !modifiers[DayFlag.hidden] &&\n !modifiers[DayFlag.outside]);\n}\n/**\n * Calculates the focus target day based on priority.\n *\n * This function determines the day that should receive focus in the calendar,\n * prioritizing days with specific modifiers (e.g., \"focused\", \"today\") or\n * selection states.\n *\n * @param days The array of `CalendarDay` objects to evaluate.\n * @param getModifiers A function to retrieve the modifiers for a given day.\n * @param isSelected A function to determine if a day is selected.\n * @param lastFocused The last focused day, if any.\n * @returns The `CalendarDay` that should receive focus, or `undefined` if no\n * focusable day is found.\n */\nexport function calculateFocusTarget(days, getModifiers, isSelected, lastFocused) {\n let focusTarget;\n let foundFocusTargetPriority = -1;\n for (const day of days) {\n const modifiers = getModifiers(day);\n if (isFocusableDay(modifiers)) {\n if (modifiers[DayFlag.focused] &&\n foundFocusTargetPriority < FocusTargetPriority.FocusedModifier) {\n focusTarget = day;\n foundFocusTargetPriority = FocusTargetPriority.FocusedModifier;\n }\n else if (lastFocused?.isEqualTo(day) &&\n foundFocusTargetPriority < FocusTargetPriority.LastFocused) {\n focusTarget = day;\n foundFocusTargetPriority = FocusTargetPriority.LastFocused;\n }\n else if (isSelected(day.date) &&\n foundFocusTargetPriority < FocusTargetPriority.Selected) {\n focusTarget = day;\n foundFocusTargetPriority = FocusTargetPriority.Selected;\n }\n else if (modifiers[DayFlag.today] &&\n foundFocusTargetPriority < FocusTargetPriority.Today) {\n focusTarget = day;\n foundFocusTargetPriority = FocusTargetPriority.Today;\n }\n }\n }\n if (!focusTarget) {\n // Return the first day that is focusable\n focusTarget = days.find((day) => isFocusableDay(getModifiers(day)));\n }\n return focusTarget;\n}\n"],"names":["FocusTargetPriority","isFocusableDay","modifiers","DayFlag","calculateFocusTarget","days","getModifiers","isSelected","lastFocused","focusTarget","foundFocusTargetPriority","day"],"mappings":";AACA,IAAIA;AAAA,CACH,SAAUA,GAAqB;AAC5B,EAAAA,EAAoBA,EAAoB,QAAW,CAAC,IAAI,SACxDA,EAAoBA,EAAoB,WAAc,CAAC,IAAI,YAC3DA,EAAoBA,EAAoB,cAAiB,CAAC,IAAI,eAC9DA,EAAoBA,EAAoB,kBAAqB,CAAC,IAAI;AACtE,GAAGA,MAAwBA,IAAsB,CAAA,EAAG;AAUpD,SAASC,EAAeC,GAAW;AAC/B,SAAQ,CAACA,EAAUC,EAAQ,QAAQ,KAC/B,CAACD,EAAUC,EAAQ,MAAM,KACzB,CAACD,EAAUC,EAAQ,OAAO;AAClC;AAeO,SAASC,EAAqBC,GAAMC,GAAcC,GAAYC,GAAa;AAC9E,MAAIC,GACAC,IAA2B;AAC/B,aAAWC,KAAON,GAAM;AACpB,UAAMH,IAAYI,EAAaK,CAAG;AAClC,IAAIV,EAAeC,CAAS,MACpBA,EAAUC,EAAQ,OAAO,KACzBO,IAA2BV,EAAoB,mBAC/CS,IAAcE,GACdD,IAA2BV,EAAoB,mBAE1CQ,GAAa,UAAUG,CAAG,KAC/BD,IAA2BV,EAAoB,eAC/CS,IAAcE,GACdD,IAA2BV,EAAoB,eAE1CO,EAAWI,EAAI,IAAI,KACxBD,IAA2BV,EAAoB,YAC/CS,IAAcE,GACdD,IAA2BV,EAAoB,YAE1CE,EAAUC,EAAQ,KAAK,KAC5BO,IAA2BV,EAAoB,UAC/CS,IAAcE,GACdD,IAA2BV,EAAoB;AAAA,EAG3D;AACA,SAAKS,MAEDA,IAAcJ,EAAK,KAAK,CAACM,MAAQV,EAAeK,EAAaK,CAAG,CAAC,CAAC,IAE/DF;AACX;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index229.js","sources":["../../../node_modules/react-day-picker/dist/esm/selection/useRange.js"],"sourcesContent":["import { useControlledValue } from \"../helpers/useControlledValue.js\";\nimport { addToRange, rangeContainsModifiers } from \"../utils/index.js\";\nimport { rangeIncludesDate } from \"../utils/rangeIncludesDate.js\";\n/**\n * Hook to manage range selection in the DayPicker component.\n *\n * @template T - The type of DayPicker props.\n * @param props - The DayPicker props.\n * @param dateLib - The date utility library instance.\n * @returns An object containing the selected range, a function to select a\n * range, and a function to check if a date is within the range.\n */\nexport function useRange(props, dateLib) {\n const { disabled, excludeDisabled, selected: initiallySelected, required, onSelect, } = props;\n const [internallySelected, setSelected] = useControlledValue(initiallySelected, onSelect ? initiallySelected : undefined);\n const selected = !onSelect ? internallySelected : initiallySelected;\n const isSelected = (date) => selected && rangeIncludesDate(selected, date, false, dateLib);\n const select = (triggerDate, modifiers, e) => {\n const { min, max } = props;\n const newRange = triggerDate\n ? addToRange(triggerDate, selected, min, max, required, dateLib)\n : undefined;\n if (excludeDisabled && disabled && newRange?.from && newRange.to) {\n if (rangeContainsModifiers({ from: newRange.from, to: newRange.to }, disabled, dateLib)) {\n // if a disabled days is found, the range is reset\n newRange.from = triggerDate;\n newRange.to = undefined;\n }\n }\n if (!onSelect) {\n setSelected(newRange);\n }\n onSelect?.(newRange, triggerDate, modifiers, e);\n return newRange;\n };\n return {\n selected,\n select,\n isSelected,\n };\n}\n"],"names":["useRange","props","dateLib","disabled","excludeDisabled","initiallySelected","required","onSelect","internallySelected","setSelected","useControlledValue","selected","triggerDate","modifiers","e","min","max","newRange","addToRange","rangeContainsModifiers","date","rangeIncludesDate"],"mappings":";;;;AAYO,SAASA,EAASC,GAAOC,GAAS;AACrC,QAAM,EAAE,UAAAC,GAAU,iBAAAC,GAAiB,UAAUC,GAAmB,UAAAC,GAAU,UAAAC,EAAQ,IAAMN,GAClF,CAACO,GAAoBC,CAAW,IAAIC,EAAmBL,GAAmBE,IAAWF,IAAoB,MAAS,GAClHM,IAAYJ,IAAgCF,IAArBG;AAoB7B,SAAO;AAAA,IACH,UAAAG;AAAA,IACA,QApBW,CAACC,GAAaC,GAAWC,MAAM;AAC1C,YAAM,EAAE,KAAAC,GAAK,KAAAC,EAAG,IAAKf,GACfgB,IAAWL,IACXM,EAAWN,GAAaD,GAAUI,GAAKC,GAAKV,GAAUJ,CAAO,IAC7D;AACN,aAAIE,KAAmBD,KAAYc,GAAU,QAAQA,EAAS,MACtDE,EAAuB,EAAE,MAAMF,EAAS,MAAM,IAAIA,EAAS,GAAE,GAAId,GAAUD,CAAO,MAElFe,EAAS,OAAOL,GAChBK,EAAS,KAAK,SAGjBV,KACDE,EAAYQ,CAAQ,GAExBV,IAAWU,GAAUL,GAAaC,GAAWC,CAAC,GACvCG;AAAA,IACX;AAAA,IAII,YAtBe,CAACG,MAAST,KAAYU,EAAkBV,GAAUS,GAAM,IAAOlB,CAAO;AAAA,EAuB7F;AACA;","x_google_ignoreList":[0]}
package/dist/index230.js CHANGED
@@ -1,13 +1,16 @@
1
- import { dateMatchModifiers as u } from "./index31.js";
2
- import { getFocusableDate as g } from "./index268.js";
3
- import { CalendarDay as m } from "./index182.js";
4
- function h(t, i, a, d, f, e, n, s = 0) {
5
- if (s > 365)
6
- return;
7
- const o = g(t, i, a.date, d, f, e, n), r = !!(e.disabled && u(o, e.disabled, n)), l = !!(e.hidden && u(o, e.hidden, n)), D = o, c = new m(o, D, n);
8
- return !r && !l ? c : h(t, i, c, d, f, e, n, s + 1);
1
+ import { useControlledValue as a } from "./index225.js";
2
+ function q(u, S) {
3
+ const { selected: c, required: s, onSelect: t } = u, [f, r] = a(c, t ? c : void 0), e = t ? c : f, { isSameDay: d } = S;
4
+ return {
5
+ selected: e,
6
+ select: (n, o, i) => {
7
+ let l = n;
8
+ return !s && e && e && d(n, e) && (l = void 0), t || r(l), t?.(l, n, o, i), l;
9
+ },
10
+ isSelected: (n) => e ? d(e, n) : !1
11
+ };
9
12
  }
10
13
  export {
11
- h as getNextFocus
14
+ q as useSingle
12
15
  };
13
16
  //# sourceMappingURL=index230.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index230.js","sources":["../../../node_modules/react-day-picker/dist/esm/helpers/getNextFocus.js"],"sourcesContent":["import { CalendarDay } from \"../classes/index.js\";\nimport { dateMatchModifiers } from \"../utils/dateMatchModifiers.js\";\nimport { getFocusableDate } from \"./getFocusableDate.js\";\n/**\n * Determines the next focusable day in the calendar.\n *\n * This function recursively calculates the next focusable day based on the\n * movement direction and modifiers applied to the days.\n *\n * @param moveBy The unit of movement (e.g., \"day\", \"week\").\n * @param moveDir The direction of movement (\"before\" or \"after\").\n * @param refDay The currently focused day.\n * @param calendarStartMonth The earliest month the user can navigate to.\n * @param calendarEndMonth The latest month the user can navigate to.\n * @param props The DayPicker props, including modifiers and configuration\n * options.\n * @param dateLib The date library to use for date manipulation.\n * @param attempt The current recursion attempt (used to limit recursion depth).\n * @returns The next focusable day, or `undefined` if no focusable day is found.\n */\nexport function getNextFocus(moveBy, moveDir, refDay, calendarStartMonth, calendarEndMonth, props, dateLib, attempt = 0) {\n if (attempt > 365) {\n // Limit the recursion to 365 attempts\n return undefined;\n }\n const focusableDate = getFocusableDate(moveBy, moveDir, refDay.date, calendarStartMonth, calendarEndMonth, props, dateLib);\n const isDisabled = Boolean(props.disabled &&\n dateMatchModifiers(focusableDate, props.disabled, dateLib));\n const isHidden = Boolean(props.hidden && dateMatchModifiers(focusableDate, props.hidden, dateLib));\n const targetMonth = focusableDate;\n const focusDay = new CalendarDay(focusableDate, targetMonth, dateLib);\n if (!isDisabled && !isHidden) {\n return focusDay;\n }\n // Recursively attempt to find the next focusable date\n return getNextFocus(moveBy, moveDir, focusDay, calendarStartMonth, calendarEndMonth, props, dateLib, attempt + 1);\n}\n"],"names":["getNextFocus","moveBy","moveDir","refDay","calendarStartMonth","calendarEndMonth","props","dateLib","attempt","focusableDate","getFocusableDate","isDisabled","dateMatchModifiers","isHidden","targetMonth","focusDay","CalendarDay"],"mappings":";;;AAoBO,SAASA,EAAaC,GAAQC,GAASC,GAAQC,GAAoBC,GAAkBC,GAAOC,GAASC,IAAU,GAAG;AACrH,MAAIA,IAAU;AAEV;AAEJ,QAAMC,IAAgBC,EAAiBT,GAAQC,GAASC,EAAO,MAAMC,GAAoBC,GAAkBC,GAAOC,CAAO,GACnHI,IAAa,GAAQL,EAAM,YAC7BM,EAAmBH,GAAeH,EAAM,UAAUC,CAAO,IACvDM,IAAW,GAAQP,EAAM,UAAUM,EAAmBH,GAAeH,EAAM,QAAQC,CAAO,IAC1FO,IAAcL,GACdM,IAAW,IAAIC,EAAYP,GAAeK,GAAaP,CAAO;AACpE,SAAI,CAACI,KAAc,CAACE,IACTE,IAGJf,EAAaC,GAAQC,GAASa,GAAUX,GAAoBC,GAAkBC,GAAOC,GAASC,IAAU,CAAC;AACpH;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index230.js","sources":["../../../node_modules/react-day-picker/dist/esm/selection/useSingle.js"],"sourcesContent":["import { useControlledValue } from \"../helpers/useControlledValue.js\";\n/**\n * Hook to manage single-date selection in the DayPicker component.\n *\n * @template T - The type of DayPicker props.\n * @param props - The DayPicker props.\n * @param dateLib - The date utility library instance.\n * @returns An object containing the selected date, a function to select a date,\n * and a function to check if a date is selected.\n */\nexport function useSingle(props, dateLib) {\n const { selected: initiallySelected, required, onSelect, } = props;\n const [internallySelected, setSelected] = useControlledValue(initiallySelected, onSelect ? initiallySelected : undefined);\n const selected = !onSelect ? internallySelected : initiallySelected;\n const { isSameDay } = dateLib;\n const isSelected = (compareDate) => {\n return selected ? isSameDay(selected, compareDate) : false;\n };\n const select = (triggerDate, modifiers, e) => {\n let newDate = triggerDate;\n if (!required && selected && selected && isSameDay(triggerDate, selected)) {\n // If the date is the same, clear the selection.\n newDate = undefined;\n }\n if (!onSelect) {\n setSelected(newDate);\n }\n if (required) {\n onSelect?.(newDate, triggerDate, modifiers, e);\n }\n else {\n onSelect?.(newDate, triggerDate, modifiers, e);\n }\n return newDate;\n };\n return {\n selected,\n select,\n isSelected,\n };\n}\n"],"names":["useSingle","props","dateLib","initiallySelected","required","onSelect","internallySelected","setSelected","useControlledValue","selected","isSameDay","triggerDate","modifiers","e","newDate","compareDate"],"mappings":";AAUO,SAASA,EAAUC,GAAOC,GAAS;AACtC,QAAM,EAAE,UAAUC,GAAmB,UAAAC,GAAU,UAAAC,EAAQ,IAAMJ,GACvD,CAACK,GAAoBC,CAAW,IAAIC,EAAmBL,GAAmBE,IAAWF,IAAoB,MAAS,GAClHM,IAAYJ,IAAgCF,IAArBG,GACvB,EAAE,WAAAI,EAAS,IAAKR;AAqBtB,SAAO;AAAA,IACH,UAAAO;AAAA,IACA,QAnBW,CAACE,GAAaC,GAAWC,MAAM;AAC1C,UAAIC,IAAUH;AACd,aAAI,CAACP,KAAYK,KAAYA,KAAYC,EAAUC,GAAaF,CAAQ,MAEpEK,IAAU,SAETT,KACDE,EAAYO,CAAO,GAGnBT,IAAWS,GAASH,GAAaC,GAAWC,CAAC,GAK1CC;AAAA,IACX;AAAA,IAII,YAvBe,CAACC,MACTN,IAAWC,EAAUD,GAAUM,CAAW,IAAI;AAAA,EAuB7D;AACA;","x_google_ignoreList":[0]}
package/dist/index231.js CHANGED
@@ -1,22 +1,33 @@
1
- import { useControlledValue as x } from "./index228.js";
2
- function C(i, d) {
3
- const { selected: s, required: f, onSelect: l } = i, [r, m] = x(s, l ? s : void 0), e = l ? s : r, { isSameDay: o } = d, u = (t) => e?.some((c) => o(c, t)) ?? !1, { min: S, max: a } = i;
4
- return {
5
- selected: e,
6
- select: (t, c, h) => {
7
- let n = [...e ?? []];
8
- if (u(t)) {
9
- if (e?.length === S || f && e?.length === 1)
10
- return;
11
- n = e?.filter((y) => !o(y, t));
12
- } else
13
- e?.length === a ? n = [t] : n = [...n, t];
14
- return l || m(n), l?.(n, t, c, h), n;
15
- },
16
- isSelected: u
17
- };
1
+ import { defaultDateLib as D } from "./index103.js";
2
+ function w(f, g, n = 0, s = 0, l = !1, u = D) {
3
+ const { from: o, to: i } = g || {}, { isSameDay: r, isAfter: m, isBefore: c } = u;
4
+ let e;
5
+ if (!o && !i)
6
+ e = { from: f, to: n > 0 ? void 0 : f };
7
+ else if (o && !i)
8
+ r(o, f) ? n === 0 ? e = { from: o, to: f } : l ? e = { from: o, to: void 0 } : e = void 0 : c(f, o) ? e = { from: f, to: o } : e = { from: o, to: f };
9
+ else if (o && i)
10
+ if (r(o, f) && r(i, f))
11
+ l ? e = { from: o, to: i } : e = void 0;
12
+ else if (r(o, f))
13
+ e = { from: o, to: n > 0 ? void 0 : f };
14
+ else if (r(i, f))
15
+ e = { from: f, to: n > 0 ? void 0 : f };
16
+ else if (c(f, o))
17
+ e = { from: f, to: i };
18
+ else if (m(f, o))
19
+ e = { from: o, to: f };
20
+ else if (m(f, i))
21
+ e = { from: o, to: f };
22
+ else
23
+ throw new Error("Invalid range");
24
+ if (e?.from && e?.to) {
25
+ const t = u.differenceInCalendarDays(e.to, e.from);
26
+ s > 0 && t > s ? e = { from: f, to: void 0 } : n > 1 && t < n && (e = { from: f, to: void 0 });
27
+ }
28
+ return e;
18
29
  }
19
30
  export {
20
- C as useMulti
31
+ w as addToRange
21
32
  };
22
33
  //# sourceMappingURL=index231.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index231.js","sources":["../../../node_modules/react-day-picker/dist/esm/selection/useMulti.js"],"sourcesContent":["import { useControlledValue } from \"../helpers/useControlledValue.js\";\n/**\n * Hook to manage multiple-date selection in the DayPicker component.\n *\n * @template T - The type of DayPicker props.\n * @param props - The DayPicker props.\n * @param dateLib - The date utility library instance.\n * @returns An object containing the selected dates, a function to select dates,\n * and a function to check if a date is selected.\n */\nexport function useMulti(props, dateLib) {\n const { selected: initiallySelected, required, onSelect, } = props;\n const [internallySelected, setSelected] = useControlledValue(initiallySelected, onSelect ? initiallySelected : undefined);\n const selected = !onSelect ? internallySelected : initiallySelected;\n const { isSameDay } = dateLib;\n const isSelected = (date) => {\n return selected?.some((d) => isSameDay(d, date)) ?? false;\n };\n const { min, max } = props;\n const select = (triggerDate, modifiers, e) => {\n let newDates = [...(selected ?? [])];\n if (isSelected(triggerDate)) {\n if (selected?.length === min) {\n // Min value reached, do nothing\n return;\n }\n if (required && selected?.length === 1) {\n // Required value already selected do nothing\n return;\n }\n newDates = selected?.filter((d) => !isSameDay(d, triggerDate));\n }\n else {\n if (selected?.length === max) {\n // Max value reached, reset the selection to date\n newDates = [triggerDate];\n }\n else {\n // Add the date to the selection\n newDates = [...newDates, triggerDate];\n }\n }\n if (!onSelect) {\n setSelected(newDates);\n }\n onSelect?.(newDates, triggerDate, modifiers, e);\n return newDates;\n };\n return {\n selected,\n select,\n isSelected,\n };\n}\n"],"names":["useMulti","props","dateLib","initiallySelected","required","onSelect","internallySelected","setSelected","useControlledValue","selected","isSameDay","isSelected","date","d","min","max","triggerDate","modifiers","e","newDates"],"mappings":";AAUO,SAASA,EAASC,GAAOC,GAAS;AACrC,QAAM,EAAE,UAAUC,GAAmB,UAAAC,GAAU,UAAAC,EAAQ,IAAMJ,GACvD,CAACK,GAAoBC,CAAW,IAAIC,EAAmBL,GAAmBE,IAAWF,IAAoB,MAAS,GAClHM,IAAYJ,IAAgCF,IAArBG,GACvB,EAAE,WAAAI,EAAS,IAAKR,GAChBS,IAAa,CAACC,MACTH,GAAU,KAAK,CAACI,MAAMH,EAAUG,GAAGD,CAAI,CAAC,KAAK,IAElD,EAAE,KAAAE,GAAK,KAAAC,EAAG,IAAKd;AA8BrB,SAAO;AAAA,IACH,UAAAQ;AAAA,IACA,QA/BW,CAACO,GAAaC,GAAWC,MAAM;AAC1C,UAAIC,IAAW,CAAC,GAAIV,KAAY,CAAA,CAAG;AACnC,UAAIE,EAAWK,CAAW,GAAG;AAKzB,YAJIP,GAAU,WAAWK,KAIrBV,KAAYK,GAAU,WAAW;AAEjC;AAEJ,QAAAU,IAAWV,GAAU,OAAO,CAACI,MAAM,CAACH,EAAUG,GAAGG,CAAW,CAAC;AAAA,MACjE;AAEI,QAAIP,GAAU,WAAWM,IAErBI,IAAW,CAACH,CAAW,IAIvBG,IAAW,CAAC,GAAGA,GAAUH,CAAW;AAG5C,aAAKX,KACDE,EAAYY,CAAQ,GAExBd,IAAWc,GAAUH,GAAaC,GAAWC,CAAC,GACvCC;AAAA,IACX;AAAA,IAII,YAAAR;AAAA,EACR;AACA;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index231.js","sources":["../../../node_modules/react-day-picker/dist/esm/utils/addToRange.js"],"sourcesContent":["import { defaultDateLib } from \"../classes/DateLib.js\";\n/**\n * Adds a date to an existing range, considering constraints like minimum and\n * maximum range size.\n *\n * @param date - The date to add to the range.\n * @param initialRange - The initial range to which the date will be added.\n * @param min - The minimum number of days in the range.\n * @param max - The maximum number of days in the range.\n * @param required - Whether the range must always include at least one date.\n * @param dateLib - The date utility library instance.\n * @returns The updated date range, or `undefined` if the range is cleared.\n * @group Utilities\n */\nexport function addToRange(date, initialRange, min = 0, max = 0, required = false, dateLib = defaultDateLib) {\n const { from, to } = initialRange || {};\n const { isSameDay, isAfter, isBefore } = dateLib;\n let range;\n if (!from && !to) {\n // the range is empty, add the date\n range = { from: date, to: min > 0 ? undefined : date };\n }\n else if (from && !to) {\n // adding date to an incomplete range\n if (isSameDay(from, date)) {\n // adding a date equal to the start of the range\n if (min === 0) {\n range = { from, to: date };\n }\n else if (required) {\n range = { from, to: undefined };\n }\n else {\n range = undefined;\n }\n }\n else if (isBefore(date, from)) {\n // adding a date before the start of the range\n range = { from: date, to: from };\n }\n else {\n // adding a date after the start of the range\n range = { from, to: date };\n }\n }\n else if (from && to) {\n // adding date to a complete range\n if (isSameDay(from, date) && isSameDay(to, date)) {\n // adding a date that is equal to both start and end of the range\n if (required) {\n range = { from, to };\n }\n else {\n range = undefined;\n }\n }\n else if (isSameDay(from, date)) {\n // adding a date equal to the the start of the range\n range = { from, to: min > 0 ? undefined : date };\n }\n else if (isSameDay(to, date)) {\n // adding a dare equal to the end of the range\n range = { from: date, to: min > 0 ? undefined : date };\n }\n else if (isBefore(date, from)) {\n // adding a date before the start of the range\n range = { from: date, to: to };\n }\n else if (isAfter(date, from)) {\n // adding a date after the start of the range\n range = { from, to: date };\n }\n else if (isAfter(date, to)) {\n // adding a date after the end of the range\n range = { from, to: date };\n }\n else {\n throw new Error(\"Invalid range\");\n }\n }\n // check for min / max\n if (range?.from && range?.to) {\n const diff = dateLib.differenceInCalendarDays(range.to, range.from);\n if (max > 0 && diff > max) {\n range = { from: date, to: undefined };\n }\n else if (min > 1 && diff < min) {\n range = { from: date, to: undefined };\n }\n }\n return range;\n}\n"],"names":["addToRange","date","initialRange","min","max","required","dateLib","defaultDateLib","from","to","isSameDay","isAfter","isBefore","range","diff"],"mappings":";AAcO,SAASA,EAAWC,GAAMC,GAAcC,IAAM,GAAGC,IAAM,GAAGC,IAAW,IAAOC,IAAUC,GAAgB;AACzG,QAAM,EAAE,MAAAC,GAAM,IAAAC,EAAE,IAAKP,KAAgB,CAAA,GAC/B,EAAE,WAAAQ,GAAW,SAAAC,GAAS,UAAAC,EAAQ,IAAKN;AACzC,MAAIO;AACJ,MAAI,CAACL,KAAQ,CAACC;AAEV,IAAAI,IAAQ,EAAE,MAAMZ,GAAM,IAAIE,IAAM,IAAI,SAAYF,EAAI;AAAA,WAE/CO,KAAQ,CAACC;AAEd,IAAIC,EAAUF,GAAMP,CAAI,IAEhBE,MAAQ,IACRU,IAAQ,EAAE,MAAAL,GAAM,IAAIP,EAAI,IAEnBI,IACLQ,IAAQ,EAAE,MAAAL,GAAM,IAAI,OAAS,IAG7BK,IAAQ,SAGPD,EAASX,GAAMO,CAAI,IAExBK,IAAQ,EAAE,MAAMZ,GAAM,IAAIO,EAAI,IAI9BK,IAAQ,EAAE,MAAAL,GAAM,IAAIP,EAAI;AAAA,WAGvBO,KAAQC;AAEb,QAAIC,EAAUF,GAAMP,CAAI,KAAKS,EAAUD,GAAIR,CAAI;AAE3C,MAAII,IACAQ,IAAQ,EAAE,MAAAL,GAAM,IAAAC,EAAE,IAGlBI,IAAQ;AAAA,aAGPH,EAAUF,GAAMP,CAAI;AAEzB,MAAAY,IAAQ,EAAE,MAAAL,GAAM,IAAIL,IAAM,IAAI,SAAYF,EAAI;AAAA,aAEzCS,EAAUD,GAAIR,CAAI;AAEvB,MAAAY,IAAQ,EAAE,MAAMZ,GAAM,IAAIE,IAAM,IAAI,SAAYF,EAAI;AAAA,aAE/CW,EAASX,GAAMO,CAAI;AAExB,MAAAK,IAAQ,EAAE,MAAMZ,GAAM,IAAIQ,EAAE;AAAA,aAEvBE,EAAQV,GAAMO,CAAI;AAEvB,MAAAK,IAAQ,EAAE,MAAAL,GAAM,IAAIP,EAAI;AAAA,aAEnBU,EAAQV,GAAMQ,CAAE;AAErB,MAAAI,IAAQ,EAAE,MAAAL,GAAM,IAAIP,EAAI;AAAA;AAGxB,YAAM,IAAI,MAAM,eAAe;AAIvC,MAAIY,GAAO,QAAQA,GAAO,IAAI;AAC1B,UAAMC,IAAOR,EAAQ,yBAAyBO,EAAM,IAAIA,EAAM,IAAI;AAClE,IAAIT,IAAM,KAAKU,IAAOV,IAClBS,IAAQ,EAAE,MAAMZ,GAAM,IAAI,OAAS,IAE9BE,IAAM,KAAKW,IAAOX,MACvBU,IAAQ,EAAE,MAAMZ,GAAM,IAAI,OAAS;AAAA,EAE3C;AACA,SAAOY;AACX;","x_google_ignoreList":[0]}
package/dist/index232.js CHANGED
@@ -1,19 +1,16 @@
1
- import { useControlledValue as x } from "./index228.js";
2
- import { rangeIncludesDate as R } from "./index124.js";
3
- import { addToRange as y } from "./index234.js";
4
- import { rangeContainsModifiers as C } from "./index236.js";
5
- function b(s, l) {
6
- const { disabled: c, excludeDisabled: i, selected: d, required: f, onSelect: o } = s, [r, m] = x(d, o ? d : void 0), t = o ? d : r;
7
- return {
8
- selected: t,
9
- select: (n, u, a) => {
10
- const { min: S, max: p } = s, e = n ? y(n, t, S, p, f, l) : void 0;
11
- return i && c && e?.from && e.to && C({ from: e.from, to: e.to }, c, l) && (e.from = n, e.to = void 0), o || m(e), o?.(e, n, u, a), e;
12
- },
13
- isSelected: (n) => t && R(t, n, !1, l)
14
- };
1
+ import { defaultDateLib as f } from "./index103.js";
2
+ function y(t, r, e = f) {
3
+ const n = Array.isArray(r) ? r : [r];
4
+ let a = t.from;
5
+ const i = e.differenceInCalendarDays(t.to, t.from), s = Math.min(i, 6);
6
+ for (let o = 0; o <= s; o++) {
7
+ if (n.includes(a.getDay()))
8
+ return !0;
9
+ a = e.addDays(a, 1);
10
+ }
11
+ return !1;
15
12
  }
16
13
  export {
17
- b as useRange
14
+ y as rangeContainsDayOfWeek
18
15
  };
19
16
  //# sourceMappingURL=index232.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index232.js","sources":["../../../node_modules/react-day-picker/dist/esm/selection/useRange.js"],"sourcesContent":["import { useControlledValue } from \"../helpers/useControlledValue.js\";\nimport { addToRange, rangeContainsModifiers } from \"../utils/index.js\";\nimport { rangeIncludesDate } from \"../utils/rangeIncludesDate.js\";\n/**\n * Hook to manage range selection in the DayPicker component.\n *\n * @template T - The type of DayPicker props.\n * @param props - The DayPicker props.\n * @param dateLib - The date utility library instance.\n * @returns An object containing the selected range, a function to select a\n * range, and a function to check if a date is within the range.\n */\nexport function useRange(props, dateLib) {\n const { disabled, excludeDisabled, selected: initiallySelected, required, onSelect, } = props;\n const [internallySelected, setSelected] = useControlledValue(initiallySelected, onSelect ? initiallySelected : undefined);\n const selected = !onSelect ? internallySelected : initiallySelected;\n const isSelected = (date) => selected && rangeIncludesDate(selected, date, false, dateLib);\n const select = (triggerDate, modifiers, e) => {\n const { min, max } = props;\n const newRange = triggerDate\n ? addToRange(triggerDate, selected, min, max, required, dateLib)\n : undefined;\n if (excludeDisabled && disabled && newRange?.from && newRange.to) {\n if (rangeContainsModifiers({ from: newRange.from, to: newRange.to }, disabled, dateLib)) {\n // if a disabled days is found, the range is reset\n newRange.from = triggerDate;\n newRange.to = undefined;\n }\n }\n if (!onSelect) {\n setSelected(newRange);\n }\n onSelect?.(newRange, triggerDate, modifiers, e);\n return newRange;\n };\n return {\n selected,\n select,\n isSelected,\n };\n}\n"],"names":["useRange","props","dateLib","disabled","excludeDisabled","initiallySelected","required","onSelect","internallySelected","setSelected","useControlledValue","selected","triggerDate","modifiers","e","min","max","newRange","addToRange","rangeContainsModifiers","date","rangeIncludesDate"],"mappings":";;;;AAYO,SAASA,EAASC,GAAOC,GAAS;AACrC,QAAM,EAAE,UAAAC,GAAU,iBAAAC,GAAiB,UAAUC,GAAmB,UAAAC,GAAU,UAAAC,EAAQ,IAAMN,GAClF,CAACO,GAAoBC,CAAW,IAAIC,EAAmBL,GAAmBE,IAAWF,IAAoB,MAAS,GAClHM,IAAYJ,IAAgCF,IAArBG;AAoB7B,SAAO;AAAA,IACH,UAAAG;AAAA,IACA,QApBW,CAACC,GAAaC,GAAWC,MAAM;AAC1C,YAAM,EAAE,KAAAC,GAAK,KAAAC,EAAG,IAAKf,GACfgB,IAAWL,IACXM,EAAWN,GAAaD,GAAUI,GAAKC,GAAKV,GAAUJ,CAAO,IAC7D;AACN,aAAIE,KAAmBD,KAAYc,GAAU,QAAQA,EAAS,MACtDE,EAAuB,EAAE,MAAMF,EAAS,MAAM,IAAIA,EAAS,GAAE,GAAId,GAAUD,CAAO,MAElFe,EAAS,OAAOL,GAChBK,EAAS,KAAK,SAGjBV,KACDE,EAAYQ,CAAQ,GAExBV,IAAWU,GAAUL,GAAaC,GAAWC,CAAC,GACvCG;AAAA,IACX;AAAA,IAII,YAtBe,CAACG,MAAST,KAAYU,EAAkBV,GAAUS,GAAM,IAAOlB,CAAO;AAAA,EAuB7F;AACA;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index232.js","sources":["../../../node_modules/react-day-picker/dist/esm/utils/rangeContainsDayOfWeek.js"],"sourcesContent":["import { defaultDateLib } from \"../classes/DateLib.js\";\n/**\n * Checks if a date range contains one or more specified days of the week.\n *\n * @since 9.2.2\n * @param range - The date range to check.\n * @param dayOfWeek - The day(s) of the week to check for (`0-6`, where `0` is\n * Sunday).\n * @param dateLib - The date utility library instance.\n * @returns `true` if the range contains the specified day(s) of the week,\n * otherwise `false`.\n * @group Utilities\n */\nexport function rangeContainsDayOfWeek(range, dayOfWeek, dateLib = defaultDateLib) {\n const dayOfWeekArr = !Array.isArray(dayOfWeek) ? [dayOfWeek] : dayOfWeek;\n let date = range.from;\n const totalDays = dateLib.differenceInCalendarDays(range.to, range.from);\n // iterate at maximum one week or the total days if the range is shorter than one week\n const totalDaysLimit = Math.min(totalDays, 6);\n for (let i = 0; i <= totalDaysLimit; i++) {\n if (dayOfWeekArr.includes(date.getDay())) {\n return true;\n }\n date = dateLib.addDays(date, 1);\n }\n return false;\n}\n"],"names":["rangeContainsDayOfWeek","range","dayOfWeek","dateLib","defaultDateLib","dayOfWeekArr","date","totalDays","totalDaysLimit","i"],"mappings":";AAaO,SAASA,EAAuBC,GAAOC,GAAWC,IAAUC,GAAgB;AAC/E,QAAMC,IAAgB,MAAM,QAAQH,CAAS,IAAkBA,IAAd,CAACA,CAAS;AAC3D,MAAII,IAAOL,EAAM;AACjB,QAAMM,IAAYJ,EAAQ,yBAAyBF,EAAM,IAAIA,EAAM,IAAI,GAEjEO,IAAiB,KAAK,IAAID,GAAW,CAAC;AAC5C,WAASE,IAAI,GAAGA,KAAKD,GAAgBC,KAAK;AACtC,QAAIJ,EAAa,SAASC,EAAK,OAAM,CAAE;AACnC,aAAO;AAEX,IAAAA,IAAOH,EAAQ,QAAQG,GAAM,CAAC;AAAA,EAClC;AACA,SAAO;AACX;","x_google_ignoreList":[0]}
package/dist/index233.js CHANGED
@@ -1,16 +1,29 @@
1
- import { useControlledValue as a } from "./index228.js";
2
- function q(u, S) {
3
- const { selected: c, required: s, onSelect: t } = u, [f, r] = a(c, t ? c : void 0), e = t ? c : f, { isSameDay: d } = S;
4
- return {
5
- selected: e,
6
- select: (n, o, i) => {
7
- let l = n;
8
- return !s && e && e && d(n, e) && (l = void 0), t || r(l), t?.(l, n, o, i), l;
9
- },
10
- isSelected: (n) => e ? d(e, n) : !1
11
- };
1
+ import { defaultDateLib as p } from "./index103.js";
2
+ import { dateMatchModifiers as s } from "./index31.js";
3
+ import { rangeContainsDayOfWeek as M } from "./index232.js";
4
+ import { rangeIncludesDate as l } from "./index123.js";
5
+ import { rangeOverlaps as y } from "./index234.js";
6
+ import { isDatesArray as a, isDateRange as A, isDayOfWeekType as C, isDateInterval as I, isDateAfterType as v, isDateBeforeType as F } from "./index125.js";
7
+ function d(n, t, f = p) {
8
+ const e = Array.isArray(t) ? t : [t];
9
+ if (e.filter((o) => typeof o != "function").some((o) => typeof o == "boolean" ? o : f.isDate(o) ? l(n, o, !1, f) : a(o, f) ? o.some((r) => l(n, r, !1, f)) : A(o) ? o.from && o.to ? y(n, { from: o.from, to: o.to }, f) : !1 : C(o) ? M(n, o.dayOfWeek, f) : I(o) ? f.isAfter(o.before, o.after) ? y(n, {
10
+ from: f.addDays(o.after, 1),
11
+ to: f.addDays(o.before, -1)
12
+ }, f) : s(n.from, o, f) || s(n.to, o, f) : v(o) || F(o) ? s(n.from, o, f) || s(n.to, o, f) : !1))
13
+ return !0;
14
+ const i = e.filter((o) => typeof o == "function");
15
+ if (i.length) {
16
+ let o = n.from;
17
+ const r = f.differenceInCalendarDays(n.to, n.from);
18
+ for (let u = 0; u <= r; u++) {
19
+ if (i.some((D) => D(o)))
20
+ return !0;
21
+ o = f.addDays(o, 1);
22
+ }
23
+ }
24
+ return !1;
12
25
  }
13
26
  export {
14
- q as useSingle
27
+ d as rangeContainsModifiers
15
28
  };
16
29
  //# sourceMappingURL=index233.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index233.js","sources":["../../../node_modules/react-day-picker/dist/esm/selection/useSingle.js"],"sourcesContent":["import { useControlledValue } from \"../helpers/useControlledValue.js\";\n/**\n * Hook to manage single-date selection in the DayPicker component.\n *\n * @template T - The type of DayPicker props.\n * @param props - The DayPicker props.\n * @param dateLib - The date utility library instance.\n * @returns An object containing the selected date, a function to select a date,\n * and a function to check if a date is selected.\n */\nexport function useSingle(props, dateLib) {\n const { selected: initiallySelected, required, onSelect, } = props;\n const [internallySelected, setSelected] = useControlledValue(initiallySelected, onSelect ? initiallySelected : undefined);\n const selected = !onSelect ? internallySelected : initiallySelected;\n const { isSameDay } = dateLib;\n const isSelected = (compareDate) => {\n return selected ? isSameDay(selected, compareDate) : false;\n };\n const select = (triggerDate, modifiers, e) => {\n let newDate = triggerDate;\n if (!required && selected && selected && isSameDay(triggerDate, selected)) {\n // If the date is the same, clear the selection.\n newDate = undefined;\n }\n if (!onSelect) {\n setSelected(newDate);\n }\n if (required) {\n onSelect?.(newDate, triggerDate, modifiers, e);\n }\n else {\n onSelect?.(newDate, triggerDate, modifiers, e);\n }\n return newDate;\n };\n return {\n selected,\n select,\n isSelected,\n };\n}\n"],"names":["useSingle","props","dateLib","initiallySelected","required","onSelect","internallySelected","setSelected","useControlledValue","selected","isSameDay","triggerDate","modifiers","e","newDate","compareDate"],"mappings":";AAUO,SAASA,EAAUC,GAAOC,GAAS;AACtC,QAAM,EAAE,UAAUC,GAAmB,UAAAC,GAAU,UAAAC,EAAQ,IAAMJ,GACvD,CAACK,GAAoBC,CAAW,IAAIC,EAAmBL,GAAmBE,IAAWF,IAAoB,MAAS,GAClHM,IAAYJ,IAAgCF,IAArBG,GACvB,EAAE,WAAAI,EAAS,IAAKR;AAqBtB,SAAO;AAAA,IACH,UAAAO;AAAA,IACA,QAnBW,CAACE,GAAaC,GAAWC,MAAM;AAC1C,UAAIC,IAAUH;AACd,aAAI,CAACP,KAAYK,KAAYA,KAAYC,EAAUC,GAAaF,CAAQ,MAEpEK,IAAU,SAETT,KACDE,EAAYO,CAAO,GAGnBT,IAAWS,GAASH,GAAaC,GAAWC,CAAC,GAK1CC;AAAA,IACX;AAAA,IAII,YAvBe,CAACC,MACTN,IAAWC,EAAUD,GAAUM,CAAW,IAAI;AAAA,EAuB7D;AACA;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index233.js","sources":["../../../node_modules/react-day-picker/dist/esm/utils/rangeContainsModifiers.js"],"sourcesContent":["import { defaultDateLib } from \"../classes/DateLib.js\";\nimport { dateMatchModifiers } from \"./dateMatchModifiers.js\";\nimport { rangeContainsDayOfWeek } from \"./rangeContainsDayOfWeek.js\";\nimport { rangeIncludesDate } from \"./rangeIncludesDate.js\";\nimport { rangeOverlaps } from \"./rangeOverlaps.js\";\nimport { isDateAfterType, isDateBeforeType, isDateInterval, isDateRange, isDatesArray, isDayOfWeekType, } from \"./typeguards.js\";\n/**\n * Checks if a date range contains dates that match the given modifiers.\n *\n * @since 9.2.2\n * @param range - The date range to check.\n * @param modifiers - The modifiers to match against.\n * @param dateLib - The date utility library instance.\n * @returns `true` if the range contains matching dates, otherwise `false`.\n * @group Utilities\n */\nexport function rangeContainsModifiers(range, modifiers, dateLib = defaultDateLib) {\n const matchers = Array.isArray(modifiers) ? modifiers : [modifiers];\n // Defer function matchers evaluation as they are the least performant.\n const nonFunctionMatchers = matchers.filter((matcher) => typeof matcher !== \"function\");\n const nonFunctionMatchersResult = nonFunctionMatchers.some((matcher) => {\n if (typeof matcher === \"boolean\")\n return matcher;\n if (dateLib.isDate(matcher)) {\n return rangeIncludesDate(range, matcher, false, dateLib);\n }\n if (isDatesArray(matcher, dateLib)) {\n return matcher.some((date) => rangeIncludesDate(range, date, false, dateLib));\n }\n if (isDateRange(matcher)) {\n if (matcher.from && matcher.to) {\n return rangeOverlaps(range, { from: matcher.from, to: matcher.to }, dateLib);\n }\n return false;\n }\n if (isDayOfWeekType(matcher)) {\n return rangeContainsDayOfWeek(range, matcher.dayOfWeek, dateLib);\n }\n if (isDateInterval(matcher)) {\n const isClosedInterval = dateLib.isAfter(matcher.before, matcher.after);\n if (isClosedInterval) {\n return rangeOverlaps(range, {\n from: dateLib.addDays(matcher.after, 1),\n to: dateLib.addDays(matcher.before, -1),\n }, dateLib);\n }\n return (dateMatchModifiers(range.from, matcher, dateLib) ||\n dateMatchModifiers(range.to, matcher, dateLib));\n }\n if (isDateAfterType(matcher) || isDateBeforeType(matcher)) {\n return (dateMatchModifiers(range.from, matcher, dateLib) ||\n dateMatchModifiers(range.to, matcher, dateLib));\n }\n return false;\n });\n if (nonFunctionMatchersResult) {\n return true;\n }\n const functionMatchers = matchers.filter((matcher) => typeof matcher === \"function\");\n if (functionMatchers.length) {\n let date = range.from;\n const totalDays = dateLib.differenceInCalendarDays(range.to, range.from);\n for (let i = 0; i <= totalDays; i++) {\n if (functionMatchers.some((matcher) => matcher(date))) {\n return true;\n }\n date = dateLib.addDays(date, 1);\n }\n }\n return false;\n}\n"],"names":["rangeContainsModifiers","range","modifiers","dateLib","defaultDateLib","matchers","matcher","rangeIncludesDate","isDatesArray","date","isDateRange","rangeOverlaps","isDayOfWeekType","rangeContainsDayOfWeek","isDateInterval","dateMatchModifiers","isDateAfterType","isDateBeforeType","functionMatchers","totalDays","i"],"mappings":";;;;;;AAgBO,SAASA,EAAuBC,GAAOC,GAAWC,IAAUC,GAAgB;AAC/E,QAAMC,IAAW,MAAM,QAAQH,CAAS,IAAIA,IAAY,CAACA,CAAS;AAsClE,MApC4BG,EAAS,OAAO,CAACC,MAAY,OAAOA,KAAY,UAAU,EAChC,KAAK,CAACA,MACpD,OAAOA,KAAY,YACZA,IACPH,EAAQ,OAAOG,CAAO,IACfC,EAAkBN,GAAOK,GAAS,IAAOH,CAAO,IAEvDK,EAAaF,GAASH,CAAO,IACtBG,EAAQ,KAAK,CAACG,MAASF,EAAkBN,GAAOQ,GAAM,IAAON,CAAO,CAAC,IAE5EO,EAAYJ,CAAO,IACfA,EAAQ,QAAQA,EAAQ,KACjBK,EAAcV,GAAO,EAAE,MAAMK,EAAQ,MAAM,IAAIA,EAAQ,GAAE,GAAIH,CAAO,IAExE,KAEPS,EAAgBN,CAAO,IAChBO,EAAuBZ,GAAOK,EAAQ,WAAWH,CAAO,IAE/DW,EAAeR,CAAO,IACGH,EAAQ,QAAQG,EAAQ,QAAQA,EAAQ,KAAK,IAE3DK,EAAcV,GAAO;AAAA,IACxB,MAAME,EAAQ,QAAQG,EAAQ,OAAO,CAAC;AAAA,IACtC,IAAIH,EAAQ,QAAQG,EAAQ,QAAQ,EAAE;AAAA,EAC1D,GAAmBH,CAAO,IAENY,EAAmBd,EAAM,MAAMK,GAASH,CAAO,KACnDY,EAAmBd,EAAM,IAAIK,GAASH,CAAO,IAEjDa,EAAgBV,CAAO,KAAKW,EAAiBX,CAAO,IAC5CS,EAAmBd,EAAM,MAAMK,GAASH,CAAO,KACnDY,EAAmBd,EAAM,IAAIK,GAASH,CAAO,IAE9C,EACV;AAEG,WAAO;AAEX,QAAMe,IAAmBb,EAAS,OAAO,CAACC,MAAY,OAAOA,KAAY,UAAU;AACnF,MAAIY,EAAiB,QAAQ;AACzB,QAAIT,IAAOR,EAAM;AACjB,UAAMkB,IAAYhB,EAAQ,yBAAyBF,EAAM,IAAIA,EAAM,IAAI;AACvE,aAASmB,IAAI,GAAGA,KAAKD,GAAWC,KAAK;AACjC,UAAIF,EAAiB,KAAK,CAACZ,MAAYA,EAAQG,CAAI,CAAC;AAChD,eAAO;AAEX,MAAAA,IAAON,EAAQ,QAAQM,GAAM,CAAC;AAAA,IAClC;AAAA,EACJ;AACA,SAAO;AACX;","x_google_ignoreList":[0]}