react-native-bikram-sambat 0.1.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 (367) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +340 -0
  3. package/lib/commonjs/accessibility/index.js +25 -0
  4. package/lib/commonjs/accessibility/index.js.map +1 -0
  5. package/lib/commonjs/accessibility/labels.js +20 -0
  6. package/lib/commonjs/accessibility/labels.js.map +1 -0
  7. package/lib/commonjs/calendar/calendar-types.js +6 -0
  8. package/lib/commonjs/calendar/calendar-types.js.map +1 -0
  9. package/lib/commonjs/calendar/get-calendar-month-grid.js +114 -0
  10. package/lib/commonjs/calendar/get-calendar-month-grid.js.map +1 -0
  11. package/lib/commonjs/calendar/index.js +13 -0
  12. package/lib/commonjs/calendar/index.js.map +1 -0
  13. package/lib/commonjs/components/NepaliCalendar/CalendarDay.js +137 -0
  14. package/lib/commonjs/components/NepaliCalendar/CalendarDay.js.map +1 -0
  15. package/lib/commonjs/components/NepaliCalendar/CalendarGrid.js +116 -0
  16. package/lib/commonjs/components/NepaliCalendar/CalendarGrid.js.map +1 -0
  17. package/lib/commonjs/components/NepaliCalendar/CalendarHeader.js +114 -0
  18. package/lib/commonjs/components/NepaliCalendar/CalendarHeader.js.map +1 -0
  19. package/lib/commonjs/components/NepaliCalendar/CalendarWeekdays.js +44 -0
  20. package/lib/commonjs/components/NepaliCalendar/CalendarWeekdays.js.map +1 -0
  21. package/lib/commonjs/components/NepaliCalendar/NepaliCalendar.js +288 -0
  22. package/lib/commonjs/components/NepaliCalendar/NepaliCalendar.js.map +1 -0
  23. package/lib/commonjs/components/NepaliCalendar/index.js +13 -0
  24. package/lib/commonjs/components/NepaliCalendar/index.js.map +1 -0
  25. package/lib/commonjs/components/NepaliCalendar/types.js +6 -0
  26. package/lib/commonjs/components/NepaliCalendar/types.js.map +1 -0
  27. package/lib/commonjs/components/NepaliDatePicker/DatePickerModal.js +185 -0
  28. package/lib/commonjs/components/NepaliDatePicker/DatePickerModal.js.map +1 -0
  29. package/lib/commonjs/components/NepaliDatePicker/NepaliDatePicker.js +148 -0
  30. package/lib/commonjs/components/NepaliDatePicker/NepaliDatePicker.js.map +1 -0
  31. package/lib/commonjs/components/NepaliDatePicker/index.js +20 -0
  32. package/lib/commonjs/components/NepaliDatePicker/index.js.map +1 -0
  33. package/lib/commonjs/components/NepaliDatePicker/types.js +6 -0
  34. package/lib/commonjs/components/NepaliDatePicker/types.js.map +1 -0
  35. package/lib/commonjs/components/NepaliRangePicker/NepaliRangePicker.js +187 -0
  36. package/lib/commonjs/components/NepaliRangePicker/NepaliRangePicker.js.map +1 -0
  37. package/lib/commonjs/components/NepaliRangePicker/RangePickerModal.js +275 -0
  38. package/lib/commonjs/components/NepaliRangePicker/RangePickerModal.js.map +1 -0
  39. package/lib/commonjs/components/NepaliRangePicker/index.js +57 -0
  40. package/lib/commonjs/components/NepaliRangePicker/index.js.map +1 -0
  41. package/lib/commonjs/components/NepaliRangePicker/range-utils.js +70 -0
  42. package/lib/commonjs/components/NepaliRangePicker/range-utils.js.map +1 -0
  43. package/lib/commonjs/components/NepaliRangePicker/types.js +6 -0
  44. package/lib/commonjs/components/NepaliRangePicker/types.js.map +1 -0
  45. package/lib/commonjs/core/arithmetic.js +36 -0
  46. package/lib/commonjs/core/arithmetic.js.map +1 -0
  47. package/lib/commonjs/core/bsData.js +89 -0
  48. package/lib/commonjs/core/bsData.js.map +1 -0
  49. package/lib/commonjs/core/conversion.js +53 -0
  50. package/lib/commonjs/core/conversion.js.map +1 -0
  51. package/lib/commonjs/core/dateKey.js +31 -0
  52. package/lib/commonjs/core/dateKey.js.map +1 -0
  53. package/lib/commonjs/core/epochDay.js +47 -0
  54. package/lib/commonjs/core/epochDay.js.map +1 -0
  55. package/lib/commonjs/core/format/format.js +86 -0
  56. package/lib/commonjs/core/format/format.js.map +1 -0
  57. package/lib/commonjs/core/format/index.js +20 -0
  58. package/lib/commonjs/core/format/index.js.map +1 -0
  59. package/lib/commonjs/core/format/parse.js +41 -0
  60. package/lib/commonjs/core/format/parse.js.map +1 -0
  61. package/lib/commonjs/core/format/tokens.js +9 -0
  62. package/lib/commonjs/core/format/tokens.js.map +1 -0
  63. package/lib/commonjs/core/index.js +116 -0
  64. package/lib/commonjs/core/index.js.map +1 -0
  65. package/lib/commonjs/core/locale/en.js +15 -0
  66. package/lib/commonjs/core/locale/en.js.map +1 -0
  67. package/lib/commonjs/core/locale/index.js +20 -0
  68. package/lib/commonjs/core/locale/index.js.map +1 -0
  69. package/lib/commonjs/core/locale/ne.js +15 -0
  70. package/lib/commonjs/core/locale/ne.js.map +1 -0
  71. package/lib/commonjs/core/locale/types.js +2 -0
  72. package/lib/commonjs/core/locale/types.js.map +1 -0
  73. package/lib/commonjs/core/numerals/index.js +19 -0
  74. package/lib/commonjs/core/numerals/index.js.map +1 -0
  75. package/lib/commonjs/core/numerals/nepali-numerals.js +28 -0
  76. package/lib/commonjs/core/numerals/nepali-numerals.js.map +1 -0
  77. package/lib/commonjs/core/types.js +2 -0
  78. package/lib/commonjs/core/types.js.map +1 -0
  79. package/lib/commonjs/core/validation.js +125 -0
  80. package/lib/commonjs/core/validation.js.map +1 -0
  81. package/lib/commonjs/core/validation.test.js +248 -0
  82. package/lib/commonjs/core/validation.test.js.map +1 -0
  83. package/lib/commonjs/exports.test.js +133 -0
  84. package/lib/commonjs/exports.test.js.map +1 -0
  85. package/lib/commonjs/index.js +94 -0
  86. package/lib/commonjs/index.js.map +1 -0
  87. package/lib/commonjs/package.json +1 -0
  88. package/lib/commonjs/phase2.test.js +446 -0
  89. package/lib/commonjs/phase2.test.js.map +1 -0
  90. package/lib/commonjs/phase3.test.js +91 -0
  91. package/lib/commonjs/phase3.test.js.map +1 -0
  92. package/lib/commonjs/phase4.test.js +89 -0
  93. package/lib/commonjs/phase4.test.js.map +1 -0
  94. package/lib/commonjs/phase5.test.js +246 -0
  95. package/lib/commonjs/phase5.test.js.map +1 -0
  96. package/lib/commonjs/phase7.test.js +284 -0
  97. package/lib/commonjs/phase7.test.js.map +1 -0
  98. package/lib/commonjs/range-helpers.test.js +182 -0
  99. package/lib/commonjs/range-helpers.test.js.map +1 -0
  100. package/lib/commonjs/theme/create-theme.js +37 -0
  101. package/lib/commonjs/theme/create-theme.js.map +1 -0
  102. package/lib/commonjs/theme/default-theme.js +99 -0
  103. package/lib/commonjs/theme/default-theme.js.map +1 -0
  104. package/lib/commonjs/theme/index.js +26 -0
  105. package/lib/commonjs/theme/index.js.map +1 -0
  106. package/lib/commonjs/theme/types.js +6 -0
  107. package/lib/commonjs/theme/types.js.map +1 -0
  108. package/lib/commonjs/utils/date-helpers.js +106 -0
  109. package/lib/commonjs/utils/date-helpers.js.map +1 -0
  110. package/lib/commonjs/utils/index.js +49 -0
  111. package/lib/commonjs/utils/index.js.map +1 -0
  112. package/lib/module/accessibility/index.js +4 -0
  113. package/lib/module/accessibility/index.js.map +1 -0
  114. package/lib/module/accessibility/labels.js +15 -0
  115. package/lib/module/accessibility/labels.js.map +1 -0
  116. package/lib/module/calendar/calendar-types.js +4 -0
  117. package/lib/module/calendar/calendar-types.js.map +1 -0
  118. package/lib/module/calendar/get-calendar-month-grid.js +111 -0
  119. package/lib/module/calendar/get-calendar-month-grid.js.map +1 -0
  120. package/lib/module/calendar/index.js +4 -0
  121. package/lib/module/calendar/index.js.map +1 -0
  122. package/lib/module/components/NepaliCalendar/CalendarDay.js +132 -0
  123. package/lib/module/components/NepaliCalendar/CalendarDay.js.map +1 -0
  124. package/lib/module/components/NepaliCalendar/CalendarGrid.js +111 -0
  125. package/lib/module/components/NepaliCalendar/CalendarGrid.js.map +1 -0
  126. package/lib/module/components/NepaliCalendar/CalendarHeader.js +109 -0
  127. package/lib/module/components/NepaliCalendar/CalendarHeader.js.map +1 -0
  128. package/lib/module/components/NepaliCalendar/CalendarWeekdays.js +39 -0
  129. package/lib/module/components/NepaliCalendar/CalendarWeekdays.js.map +1 -0
  130. package/lib/module/components/NepaliCalendar/NepaliCalendar.js +283 -0
  131. package/lib/module/components/NepaliCalendar/NepaliCalendar.js.map +1 -0
  132. package/lib/module/components/NepaliCalendar/index.js +4 -0
  133. package/lib/module/components/NepaliCalendar/index.js.map +1 -0
  134. package/lib/module/components/NepaliCalendar/types.js +4 -0
  135. package/lib/module/components/NepaliCalendar/types.js.map +1 -0
  136. package/lib/module/components/NepaliDatePicker/DatePickerModal.js +180 -0
  137. package/lib/module/components/NepaliDatePicker/DatePickerModal.js.map +1 -0
  138. package/lib/module/components/NepaliDatePicker/NepaliDatePicker.js +143 -0
  139. package/lib/module/components/NepaliDatePicker/NepaliDatePicker.js.map +1 -0
  140. package/lib/module/components/NepaliDatePicker/index.js +5 -0
  141. package/lib/module/components/NepaliDatePicker/index.js.map +1 -0
  142. package/lib/module/components/NepaliDatePicker/types.js +4 -0
  143. package/lib/module/components/NepaliDatePicker/types.js.map +1 -0
  144. package/lib/module/components/NepaliRangePicker/NepaliRangePicker.js +182 -0
  145. package/lib/module/components/NepaliRangePicker/NepaliRangePicker.js.map +1 -0
  146. package/lib/module/components/NepaliRangePicker/RangePickerModal.js +270 -0
  147. package/lib/module/components/NepaliRangePicker/RangePickerModal.js.map +1 -0
  148. package/lib/module/components/NepaliRangePicker/index.js +6 -0
  149. package/lib/module/components/NepaliRangePicker/index.js.map +1 -0
  150. package/lib/module/components/NepaliRangePicker/range-utils.js +61 -0
  151. package/lib/module/components/NepaliRangePicker/range-utils.js.map +1 -0
  152. package/lib/module/components/NepaliRangePicker/types.js +4 -0
  153. package/lib/module/components/NepaliRangePicker/types.js.map +1 -0
  154. package/lib/module/core/arithmetic.js +29 -0
  155. package/lib/module/core/arithmetic.js.map +1 -0
  156. package/lib/module/core/bsData.js +82 -0
  157. package/lib/module/core/bsData.js.map +1 -0
  158. package/lib/module/core/conversion.js +48 -0
  159. package/lib/module/core/conversion.js.map +1 -0
  160. package/lib/module/core/dateKey.js +26 -0
  161. package/lib/module/core/dateKey.js.map +1 -0
  162. package/lib/module/core/epochDay.js +39 -0
  163. package/lib/module/core/epochDay.js.map +1 -0
  164. package/lib/module/core/format/format.js +82 -0
  165. package/lib/module/core/format/format.js.map +1 -0
  166. package/lib/module/core/format/index.js +5 -0
  167. package/lib/module/core/format/index.js.map +1 -0
  168. package/lib/module/core/format/parse.js +37 -0
  169. package/lib/module/core/format/parse.js.map +1 -0
  170. package/lib/module/core/format/tokens.js +5 -0
  171. package/lib/module/core/format/tokens.js.map +1 -0
  172. package/lib/module/core/index.js +13 -0
  173. package/lib/module/core/index.js.map +1 -0
  174. package/lib/module/core/locale/en.js +11 -0
  175. package/lib/module/core/locale/en.js.map +1 -0
  176. package/lib/module/core/locale/index.js +5 -0
  177. package/lib/module/core/locale/index.js.map +1 -0
  178. package/lib/module/core/locale/ne.js +11 -0
  179. package/lib/module/core/locale/ne.js.map +1 -0
  180. package/lib/module/core/locale/types.js +2 -0
  181. package/lib/module/core/locale/types.js.map +1 -0
  182. package/lib/module/core/numerals/index.js +4 -0
  183. package/lib/module/core/numerals/index.js.map +1 -0
  184. package/lib/module/core/numerals/nepali-numerals.js +23 -0
  185. package/lib/module/core/numerals/nepali-numerals.js.map +1 -0
  186. package/lib/module/core/types.js +2 -0
  187. package/lib/module/core/types.js.map +1 -0
  188. package/lib/module/core/validation.js +115 -0
  189. package/lib/module/core/validation.js.map +1 -0
  190. package/lib/module/core/validation.test.js +248 -0
  191. package/lib/module/core/validation.test.js.map +1 -0
  192. package/lib/module/exports.test.js +133 -0
  193. package/lib/module/exports.test.js.map +1 -0
  194. package/lib/module/index.js +11 -0
  195. package/lib/module/index.js.map +1 -0
  196. package/lib/module/package.json +1 -0
  197. package/lib/module/phase2.test.js +446 -0
  198. package/lib/module/phase2.test.js.map +1 -0
  199. package/lib/module/phase3.test.js +91 -0
  200. package/lib/module/phase3.test.js.map +1 -0
  201. package/lib/module/phase4.test.js +89 -0
  202. package/lib/module/phase4.test.js.map +1 -0
  203. package/lib/module/phase5.test.js +246 -0
  204. package/lib/module/phase5.test.js.map +1 -0
  205. package/lib/module/phase7.test.js +284 -0
  206. package/lib/module/phase7.test.js.map +1 -0
  207. package/lib/module/range-helpers.test.js +182 -0
  208. package/lib/module/range-helpers.test.js.map +1 -0
  209. package/lib/module/theme/create-theme.js +33 -0
  210. package/lib/module/theme/create-theme.js.map +1 -0
  211. package/lib/module/theme/default-theme.js +95 -0
  212. package/lib/module/theme/default-theme.js.map +1 -0
  213. package/lib/module/theme/index.js +5 -0
  214. package/lib/module/theme/index.js.map +1 -0
  215. package/lib/module/theme/types.js +4 -0
  216. package/lib/module/theme/types.js.map +1 -0
  217. package/lib/module/utils/date-helpers.js +96 -0
  218. package/lib/module/utils/date-helpers.js.map +1 -0
  219. package/lib/module/utils/index.js +4 -0
  220. package/lib/module/utils/index.js.map +1 -0
  221. package/lib/typescript/src/accessibility/index.d.ts +2 -0
  222. package/lib/typescript/src/accessibility/index.d.ts.map +1 -0
  223. package/lib/typescript/src/accessibility/labels.d.ts +6 -0
  224. package/lib/typescript/src/accessibility/labels.d.ts.map +1 -0
  225. package/lib/typescript/src/calendar/calendar-types.d.ts +23 -0
  226. package/lib/typescript/src/calendar/calendar-types.d.ts.map +1 -0
  227. package/lib/typescript/src/calendar/get-calendar-month-grid.d.ts +3 -0
  228. package/lib/typescript/src/calendar/get-calendar-month-grid.d.ts.map +1 -0
  229. package/lib/typescript/src/calendar/index.d.ts +3 -0
  230. package/lib/typescript/src/calendar/index.d.ts.map +1 -0
  231. package/lib/typescript/src/components/NepaliCalendar/CalendarDay.d.ts +23 -0
  232. package/lib/typescript/src/components/NepaliCalendar/CalendarDay.d.ts.map +1 -0
  233. package/lib/typescript/src/components/NepaliCalendar/CalendarGrid.d.ts +25 -0
  234. package/lib/typescript/src/components/NepaliCalendar/CalendarGrid.d.ts.map +1 -0
  235. package/lib/typescript/src/components/NepaliCalendar/CalendarHeader.d.ts +17 -0
  236. package/lib/typescript/src/components/NepaliCalendar/CalendarHeader.d.ts.map +1 -0
  237. package/lib/typescript/src/components/NepaliCalendar/CalendarWeekdays.d.ts +11 -0
  238. package/lib/typescript/src/components/NepaliCalendar/CalendarWeekdays.d.ts.map +1 -0
  239. package/lib/typescript/src/components/NepaliCalendar/NepaliCalendar.d.ts +4 -0
  240. package/lib/typescript/src/components/NepaliCalendar/NepaliCalendar.d.ts.map +1 -0
  241. package/lib/typescript/src/components/NepaliCalendar/index.d.ts +3 -0
  242. package/lib/typescript/src/components/NepaliCalendar/index.d.ts.map +1 -0
  243. package/lib/typescript/src/components/NepaliCalendar/types.d.ts +52 -0
  244. package/lib/typescript/src/components/NepaliCalendar/types.d.ts.map +1 -0
  245. package/lib/typescript/src/components/NepaliDatePicker/DatePickerModal.d.ts +4 -0
  246. package/lib/typescript/src/components/NepaliDatePicker/DatePickerModal.d.ts.map +1 -0
  247. package/lib/typescript/src/components/NepaliDatePicker/NepaliDatePicker.d.ts +4 -0
  248. package/lib/typescript/src/components/NepaliDatePicker/NepaliDatePicker.d.ts.map +1 -0
  249. package/lib/typescript/src/components/NepaliDatePicker/index.d.ts +4 -0
  250. package/lib/typescript/src/components/NepaliDatePicker/index.d.ts.map +1 -0
  251. package/lib/typescript/src/components/NepaliDatePicker/types.d.ts +50 -0
  252. package/lib/typescript/src/components/NepaliDatePicker/types.d.ts.map +1 -0
  253. package/lib/typescript/src/components/NepaliRangePicker/NepaliRangePicker.d.ts +4 -0
  254. package/lib/typescript/src/components/NepaliRangePicker/NepaliRangePicker.d.ts.map +1 -0
  255. package/lib/typescript/src/components/NepaliRangePicker/RangePickerModal.d.ts +4 -0
  256. package/lib/typescript/src/components/NepaliRangePicker/RangePickerModal.d.ts.map +1 -0
  257. package/lib/typescript/src/components/NepaliRangePicker/index.d.ts +5 -0
  258. package/lib/typescript/src/components/NepaliRangePicker/index.d.ts.map +1 -0
  259. package/lib/typescript/src/components/NepaliRangePicker/range-utils.d.ts +13 -0
  260. package/lib/typescript/src/components/NepaliRangePicker/range-utils.d.ts.map +1 -0
  261. package/lib/typescript/src/components/NepaliRangePicker/types.d.ts +61 -0
  262. package/lib/typescript/src/components/NepaliRangePicker/types.d.ts.map +1 -0
  263. package/lib/typescript/src/core/arithmetic.d.ts +6 -0
  264. package/lib/typescript/src/core/arithmetic.d.ts.map +1 -0
  265. package/lib/typescript/src/core/bsData.d.ts +39 -0
  266. package/lib/typescript/src/core/bsData.d.ts.map +1 -0
  267. package/lib/typescript/src/core/conversion.d.ts +4 -0
  268. package/lib/typescript/src/core/conversion.d.ts.map +1 -0
  269. package/lib/typescript/src/core/dateKey.d.ts +4 -0
  270. package/lib/typescript/src/core/dateKey.d.ts.map +1 -0
  271. package/lib/typescript/src/core/epochDay.d.ts +7 -0
  272. package/lib/typescript/src/core/epochDay.d.ts.map +1 -0
  273. package/lib/typescript/src/core/format/format.d.ts +8 -0
  274. package/lib/typescript/src/core/format/format.d.ts.map +1 -0
  275. package/lib/typescript/src/core/format/index.d.ts +5 -0
  276. package/lib/typescript/src/core/format/index.d.ts.map +1 -0
  277. package/lib/typescript/src/core/format/parse.d.ts +7 -0
  278. package/lib/typescript/src/core/format/parse.d.ts.map +1 -0
  279. package/lib/typescript/src/core/format/tokens.d.ts +4 -0
  280. package/lib/typescript/src/core/format/tokens.d.ts.map +1 -0
  281. package/lib/typescript/src/core/index.d.ts +11 -0
  282. package/lib/typescript/src/core/index.d.ts.map +1 -0
  283. package/lib/typescript/src/core/locale/en.d.ts +3 -0
  284. package/lib/typescript/src/core/locale/en.d.ts.map +1 -0
  285. package/lib/typescript/src/core/locale/index.d.ts +4 -0
  286. package/lib/typescript/src/core/locale/index.d.ts.map +1 -0
  287. package/lib/typescript/src/core/locale/ne.d.ts +3 -0
  288. package/lib/typescript/src/core/locale/ne.d.ts.map +1 -0
  289. package/lib/typescript/src/core/locale/types.d.ts +11 -0
  290. package/lib/typescript/src/core/locale/types.d.ts.map +1 -0
  291. package/lib/typescript/src/core/numerals/index.d.ts +2 -0
  292. package/lib/typescript/src/core/numerals/index.d.ts.map +1 -0
  293. package/lib/typescript/src/core/numerals/nepali-numerals.d.ts +3 -0
  294. package/lib/typescript/src/core/numerals/nepali-numerals.d.ts.map +1 -0
  295. package/lib/typescript/src/core/types.d.ts +14 -0
  296. package/lib/typescript/src/core/types.d.ts.map +1 -0
  297. package/lib/typescript/src/core/validation.d.ts +17 -0
  298. package/lib/typescript/src/core/validation.d.ts.map +1 -0
  299. package/lib/typescript/src/index.d.ts +9 -0
  300. package/lib/typescript/src/index.d.ts.map +1 -0
  301. package/lib/typescript/src/theme/create-theme.d.ts +6 -0
  302. package/lib/typescript/src/theme/create-theme.d.ts.map +1 -0
  303. package/lib/typescript/src/theme/default-theme.d.ts +4 -0
  304. package/lib/typescript/src/theme/default-theme.d.ts.map +1 -0
  305. package/lib/typescript/src/theme/index.d.ts +4 -0
  306. package/lib/typescript/src/theme/index.d.ts.map +1 -0
  307. package/lib/typescript/src/theme/types.d.ts +43 -0
  308. package/lib/typescript/src/theme/types.d.ts.map +1 -0
  309. package/lib/typescript/src/utils/date-helpers.d.ts +27 -0
  310. package/lib/typescript/src/utils/date-helpers.d.ts.map +1 -0
  311. package/lib/typescript/src/utils/index.d.ts +2 -0
  312. package/lib/typescript/src/utils/index.d.ts.map +1 -0
  313. package/package.json +85 -0
  314. package/src/accessibility/index.ts +5 -0
  315. package/src/accessibility/labels.ts +22 -0
  316. package/src/calendar/calendar-types.ts +25 -0
  317. package/src/calendar/get-calendar-month-grid.ts +125 -0
  318. package/src/calendar/index.ts +2 -0
  319. package/src/components/NepaliCalendar/CalendarDay.tsx +198 -0
  320. package/src/components/NepaliCalendar/CalendarGrid.tsx +159 -0
  321. package/src/components/NepaliCalendar/CalendarHeader.tsx +126 -0
  322. package/src/components/NepaliCalendar/CalendarWeekdays.tsx +49 -0
  323. package/src/components/NepaliCalendar/NepaliCalendar.tsx +279 -0
  324. package/src/components/NepaliCalendar/index.ts +6 -0
  325. package/src/components/NepaliCalendar/types.ts +62 -0
  326. package/src/components/NepaliDatePicker/DatePickerModal.tsx +220 -0
  327. package/src/components/NepaliDatePicker/NepaliDatePicker.tsx +171 -0
  328. package/src/components/NepaliDatePicker/index.ts +3 -0
  329. package/src/components/NepaliDatePicker/types.ts +70 -0
  330. package/src/components/NepaliRangePicker/NepaliRangePicker.tsx +206 -0
  331. package/src/components/NepaliRangePicker/RangePickerModal.tsx +336 -0
  332. package/src/components/NepaliRangePicker/index.ts +11 -0
  333. package/src/components/NepaliRangePicker/range-utils.ts +75 -0
  334. package/src/components/NepaliRangePicker/types.ts +84 -0
  335. package/src/core/arithmetic.ts +34 -0
  336. package/src/core/bsData.ts +115 -0
  337. package/src/core/conversion.ts +73 -0
  338. package/src/core/dateKey.ts +31 -0
  339. package/src/core/epochDay.ts +49 -0
  340. package/src/core/format/format.ts +108 -0
  341. package/src/core/format/index.ts +4 -0
  342. package/src/core/format/parse.ts +68 -0
  343. package/src/core/format/tokens.ts +35 -0
  344. package/src/core/index.ts +10 -0
  345. package/src/core/locale/en.ts +23 -0
  346. package/src/core/locale/index.ts +3 -0
  347. package/src/core/locale/ne.ts +31 -0
  348. package/src/core/locale/types.ts +12 -0
  349. package/src/core/numerals/index.ts +1 -0
  350. package/src/core/numerals/nepali-numerals.ts +27 -0
  351. package/src/core/types.ts +15 -0
  352. package/src/core/validation.test.ts +207 -0
  353. package/src/core/validation.ts +141 -0
  354. package/src/exports.test.ts +135 -0
  355. package/src/index.ts +8 -0
  356. package/src/phase2.test.ts +424 -0
  357. package/src/phase3.test.ts +83 -0
  358. package/src/phase4.test.ts +86 -0
  359. package/src/phase5.test.ts +257 -0
  360. package/src/phase7.test.ts +307 -0
  361. package/src/range-helpers.test.ts +153 -0
  362. package/src/theme/create-theme.ts +29 -0
  363. package/src/theme/default-theme.ts +99 -0
  364. package/src/theme/index.ts +3 -0
  365. package/src/theme/types.ts +44 -0
  366. package/src/utils/date-helpers.ts +146 -0
  367. package/src/utils/index.ts +9 -0
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+
3
+ import { createBSDateKey } from '../core/dateKey';
4
+ import { getBSMonthLength } from '../core/validation';
5
+ import { getSupportedBSYearRange } from '../core/bsData';
6
+ import { compareBS } from '../core/arithmetic';
7
+ import { toAD } from '../core/conversion';
8
+ import { todayBS } from '../core/arithmetic';
9
+ function getWeekday(bsDate) {
10
+ const ad = toAD(bsDate);
11
+ const utcDate = new Date(Date.UTC(ad.year, ad.month - 1, ad.day));
12
+ return utcDate.getUTCDay();
13
+ }
14
+ function safeGetBSMonthLength(year, month) {
15
+ try {
16
+ return getBSMonthLength(year, month);
17
+ } catch {
18
+ return null;
19
+ }
20
+ }
21
+ function safeCreateBSDateKey(date) {
22
+ try {
23
+ return createBSDateKey(date);
24
+ } catch {
25
+ return `${date.year}-${String(date.month).padStart(2, '0')}-${String(date.day).padStart(2, '0')}`;
26
+ }
27
+ }
28
+ function isDateInRange(year) {
29
+ const range = getSupportedBSYearRange();
30
+ return year >= range.min && year <= range.max;
31
+ }
32
+ function makeCell(year, month, day, inCurrentMonth, todayDate, minDate, maxDate) {
33
+ const date = {
34
+ calendar: 'BS',
35
+ year,
36
+ month,
37
+ day
38
+ };
39
+ const key = safeCreateBSDateKey(date);
40
+ const inRange = isDateInRange(year);
41
+ const isToday = inRange && todayDate !== null && compareBS(date, todayDate) === 0;
42
+ const isDisabled = !inRange || minDate !== undefined && compareBS(date, minDate) < 0 || maxDate !== undefined && compareBS(date, maxDate) > 0;
43
+ return {
44
+ key,
45
+ date,
46
+ day,
47
+ inCurrentMonth,
48
+ isToday,
49
+ isDisabled
50
+ };
51
+ }
52
+ export function getCalendarMonthGrid(options) {
53
+ const {
54
+ year,
55
+ month,
56
+ weekStartsOn = 0,
57
+ minDate,
58
+ maxDate
59
+ } = options;
60
+ const monthLength = getBSMonthLength(year, month);
61
+ const firstDay = {
62
+ calendar: 'BS',
63
+ year,
64
+ month,
65
+ day: 1
66
+ };
67
+ const firstWeekday = getWeekday(firstDay);
68
+ const leadingDays = (firstWeekday - weekStartsOn + 7) % 7;
69
+ let prevMonth = month - 1;
70
+ let prevYear = year;
71
+ if (prevMonth < 1) {
72
+ prevMonth = 12;
73
+ prevYear -= 1;
74
+ }
75
+ const prevMonthLength = safeGetBSMonthLength(prevYear, prevMonth) ?? 30;
76
+ let todayDate = null;
77
+ try {
78
+ todayDate = options.today ?? todayBS();
79
+ } catch {
80
+ todayDate = null;
81
+ }
82
+ const cells = [];
83
+ for (let i = 0; i < leadingDays; i++) {
84
+ const day = prevMonthLength - leadingDays + i + 1;
85
+ cells.push(makeCell(prevYear, prevMonth, day, false, todayDate, minDate, maxDate));
86
+ }
87
+ for (let day = 1; day <= monthLength; day++) {
88
+ cells.push(makeCell(year, month, day, true, todayDate, minDate, maxDate));
89
+ }
90
+ let nextMonth = month + 1;
91
+ let nextYear = year;
92
+ if (nextMonth > 12) {
93
+ nextMonth = 1;
94
+ nextYear += 1;
95
+ }
96
+ let trailingDay = 1;
97
+ while (cells.length % 7 !== 0) {
98
+ cells.push(makeCell(nextYear, nextMonth, trailingDay, false, todayDate, minDate, maxDate));
99
+ trailingDay += 1;
100
+ }
101
+ const weeks = [];
102
+ for (let i = 0; i < cells.length; i += 7) {
103
+ weeks.push(cells.slice(i, i + 7));
104
+ }
105
+ return {
106
+ year,
107
+ month,
108
+ weeks
109
+ };
110
+ }
111
+ //# sourceMappingURL=get-calendar-month-grid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createBSDateKey","getBSMonthLength","getSupportedBSYearRange","compareBS","toAD","todayBS","getWeekday","bsDate","ad","utcDate","Date","UTC","year","month","day","getUTCDay","safeGetBSMonthLength","safeCreateBSDateKey","date","String","padStart","isDateInRange","range","min","max","makeCell","inCurrentMonth","todayDate","minDate","maxDate","calendar","key","inRange","isToday","isDisabled","undefined","getCalendarMonthGrid","options","weekStartsOn","monthLength","firstDay","firstWeekday","leadingDays","prevMonth","prevYear","prevMonthLength","today","cells","i","push","nextMonth","nextYear","trailingDay","length","weeks","slice"],"sourceRoot":"../../../src","sources":["calendar/get-calendar-month-grid.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export { getCalendarMonthGrid } from './get-calendar-month-grid';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getCalendarMonthGrid"],"sourceRoot":"../../../src","sources":["calendar/index.ts"],"mappings":";;AACA,SAASA,oBAAoB,QAAQ,2BAA2B","ignoreList":[]}
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+
3
+ import React, { memo, useMemo } from 'react';
4
+ import { Pressable, Text, View, StyleSheet } from 'react-native';
5
+ import { toNepaliNumerals } from '../../core/numerals';
6
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
+ export const CalendarDay = /*#__PURE__*/memo(function CalendarDay({
8
+ date,
9
+ day,
10
+ selected,
11
+ today,
12
+ disabled,
13
+ inCurrentMonth,
14
+ marked,
15
+ numerals,
16
+ theme,
17
+ onPress,
18
+ rangeStart,
19
+ rangeEnd,
20
+ inRange,
21
+ locale
22
+ }) {
23
+ const displayDay = useMemo(() => numerals === 'devanagari' ? toNepaliNumerals(day) : String(day), [day, numerals]);
24
+ const isRangeEndpoint = rangeStart || rangeEnd;
25
+ const textColor = useMemo(() => {
26
+ if (disabled) return theme.colors.disabledText;
27
+ if (isRangeEndpoint) return theme.colors.primaryText;
28
+ if (inRange) return theme.colors.rangeText;
29
+ if (selected) return theme.colors.primaryText;
30
+ if (!inCurrentMonth) return theme.colors.outsideMonthText;
31
+ if (marked?.textColor) return marked.textColor;
32
+ return theme.colors.text;
33
+ }, [disabled, isRangeEndpoint, inRange, selected, inCurrentMonth, marked?.textColor, theme.colors.disabledText, theme.colors.primaryText, theme.colors.rangeText, theme.colors.outsideMonthText, theme.colors.text]);
34
+ const backgroundColor = useMemo(() => {
35
+ if (isRangeEndpoint) {
36
+ return rangeStart ? theme.colors.rangeStartBackground : theme.colors.rangeEndBackground;
37
+ }
38
+ if (inRange) return theme.colors.rangeBackground;
39
+ if (selected) return theme.colors.primary;
40
+ return undefined;
41
+ }, [isRangeEndpoint, rangeStart, inRange, selected, theme.colors.rangeStartBackground, theme.colors.rangeEndBackground, theme.colors.rangeBackground, theme.colors.primary]);
42
+ const accessibilityLabel = useMemo(() => {
43
+ const parts = [];
44
+ if (locale) {
45
+ try {
46
+ const {
47
+ formatBS
48
+ } = require('../../core/format');
49
+ parts.push(formatBS(date, 'yyyy MMMM d', {
50
+ locale
51
+ }));
52
+ } catch {
53
+ parts.push(`${date.year}/${date.month}/${day}`);
54
+ }
55
+ } else {
56
+ parts.push(`${date.year}/${date.month}/${day}`);
57
+ }
58
+ if (rangeStart) parts.push('range start');
59
+ if (rangeEnd) parts.push('range end');
60
+ if (inRange && !rangeStart && !rangeEnd) parts.push('in selected range');
61
+ if (selected && !inRange) parts.push('selected');
62
+ if (today) parts.push('today');
63
+ if (disabled) parts.push('disabled');
64
+ if (!inCurrentMonth) parts.push('outside month');
65
+ if (marked?.label) parts.push(marked.label);
66
+ return parts.join(', ');
67
+ }, [date, day, locale, rangeStart, rangeEnd, inRange, selected, today, disabled, inCurrentMonth, marked?.label]);
68
+ const containerStyle = [styles.dayContainer, backgroundColor && {
69
+ backgroundColor
70
+ }, today && !isRangeEndpoint && !selected && !inRange && {
71
+ borderWidth: 1,
72
+ borderColor: theme.colors.todayBorder
73
+ }, disabled && styles.dayDisabled, inRange && !isRangeEndpoint && styles.dayInRange, rangeStart && styles.dayRangeStart, rangeEnd && styles.dayRangeEnd];
74
+ return /*#__PURE__*/_jsxs(Pressable, {
75
+ style: containerStyle,
76
+ onPress: onPress,
77
+ disabled: disabled,
78
+ accessibilityRole: "button",
79
+ accessibilityLabel: accessibilityLabel,
80
+ accessibilityState: {
81
+ disabled,
82
+ selected: selected || isRangeEndpoint
83
+ },
84
+ children: [/*#__PURE__*/_jsx(Text, {
85
+ style: [styles.dayText, {
86
+ color: textColor
87
+ }],
88
+ children: displayDay
89
+ }), marked && !disabled && /*#__PURE__*/_jsx(View, {
90
+ style: [styles.marker, {
91
+ backgroundColor: marked.color ?? theme.colors.marker
92
+ }]
93
+ })]
94
+ });
95
+ });
96
+ const styles = StyleSheet.create({
97
+ dayContainer: {
98
+ alignItems: 'center',
99
+ justifyContent: 'center',
100
+ height: 40,
101
+ width: 40,
102
+ borderRadius: 20,
103
+ position: 'relative'
104
+ },
105
+ dayInRange: {
106
+ borderRadius: 0
107
+ },
108
+ dayRangeStart: {
109
+ borderTopLeftRadius: 20,
110
+ borderBottomLeftRadius: 20
111
+ },
112
+ dayRangeEnd: {
113
+ borderTopRightRadius: 20,
114
+ borderBottomRightRadius: 20
115
+ },
116
+ dayText: {
117
+ fontSize: 15,
118
+ textAlign: 'center',
119
+ lineHeight: 20
120
+ },
121
+ dayDisabled: {
122
+ opacity: 0.5
123
+ },
124
+ marker: {
125
+ position: 'absolute',
126
+ bottom: 4,
127
+ width: 4,
128
+ height: 4,
129
+ borderRadius: 2
130
+ }
131
+ });
132
+ //# sourceMappingURL=CalendarDay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","memo","useMemo","Pressable","Text","View","StyleSheet","toNepaliNumerals","jsx","_jsx","jsxs","_jsxs","CalendarDay","date","day","selected","today","disabled","inCurrentMonth","marked","numerals","theme","onPress","rangeStart","rangeEnd","inRange","locale","displayDay","String","isRangeEndpoint","textColor","colors","disabledText","primaryText","rangeText","outsideMonthText","text","backgroundColor","rangeStartBackground","rangeEndBackground","rangeBackground","primary","undefined","accessibilityLabel","parts","formatBS","require","push","year","month","label","join","containerStyle","styles","dayContainer","borderWidth","borderColor","todayBorder","dayDisabled","dayInRange","dayRangeStart","dayRangeEnd","style","accessibilityRole","accessibilityState","children","dayText","color","marker","create","alignItems","justifyContent","height","width","borderRadius","position","borderTopLeftRadius","borderBottomLeftRadius","borderTopRightRadius","borderBottomRightRadius","fontSize","textAlign","lineHeight","opacity","bottom"],"sourceRoot":"../../../../src","sources":["components/NepaliCalendar/CalendarDay.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+
3
+ import React, { memo, useCallback, useMemo } from 'react';
4
+ import { View, StyleSheet } from 'react-native';
5
+ import { compareBS } from '../../core';
6
+ import { isRangeStart, isRangeEnd, isDateInRange } from '../NepaliRangePicker/range-utils';
7
+ import { CalendarDay } from './CalendarDay';
8
+ import { jsx as _jsx } from "react/jsx-runtime";
9
+ export const CalendarGrid = /*#__PURE__*/memo(function CalendarGrid({
10
+ grid,
11
+ value,
12
+ today,
13
+ numerals,
14
+ theme,
15
+ markedDates,
16
+ disabledDates,
17
+ onChange,
18
+ renderDay,
19
+ rangeValue,
20
+ locale
21
+ }) {
22
+ const isDateDisabledByList = useCallback((date, dateKey) => {
23
+ if (Array.isArray(disabledDates)) {
24
+ return disabledDates.includes(dateKey);
25
+ }
26
+ if (typeof disabledDates === 'function') {
27
+ return disabledDates(date);
28
+ }
29
+ return false;
30
+ }, [disabledDates]);
31
+ const rows = useMemo(() => {
32
+ const hasRange = rangeValue?.start != null;
33
+ return grid.weeks.map((week, weekIndex) => /*#__PURE__*/_jsx(View, {
34
+ style: styles.weekRow,
35
+ children: week.map(cell => {
36
+ const dateKey = cell.key;
37
+ const isSelected = value !== null && compareBS(cell.date, value) === 0;
38
+ const isTodayCell = today !== null && compareBS(cell.date, today) === 0;
39
+ const marked = markedDates?.[dateKey];
40
+ const explicitlyDisabled = marked?.disabled ?? false;
41
+ const disabled = explicitlyDisabled || cell.isDisabled || isDateDisabledByList(cell.date, dateKey);
42
+ const rangeStart = hasRange && isRangeStart(cell.date, rangeValue);
43
+ const rangeEnd = hasRange && isRangeEnd(cell.date, rangeValue);
44
+ const inRange = hasRange && isDateInRange(cell.date, rangeValue);
45
+ const handlePress = () => {
46
+ if (!disabled) {
47
+ onChange(cell.date);
48
+ }
49
+ };
50
+ const dayProps = {
51
+ date: cell.date,
52
+ dateKey,
53
+ day: cell.day,
54
+ selected: isSelected,
55
+ today: isTodayCell,
56
+ disabled,
57
+ inCurrentMonth: cell.inCurrentMonth,
58
+ marked,
59
+ onPress: handlePress,
60
+ rangeStart,
61
+ rangeEnd,
62
+ inRange
63
+ };
64
+ if (renderDay) {
65
+ return /*#__PURE__*/_jsx(View, {
66
+ style: styles.dayCell,
67
+ children: renderDay(dayProps)
68
+ }, dateKey);
69
+ }
70
+ return /*#__PURE__*/_jsx(View, {
71
+ style: styles.dayCell,
72
+ children: /*#__PURE__*/_jsx(CalendarDay, {
73
+ date: cell.date,
74
+ day: cell.day,
75
+ selected: isSelected,
76
+ today: isTodayCell,
77
+ disabled: disabled,
78
+ inCurrentMonth: cell.inCurrentMonth,
79
+ marked: marked,
80
+ numerals: numerals,
81
+ theme: theme,
82
+ onPress: handlePress,
83
+ rangeStart: rangeStart,
84
+ rangeEnd: rangeEnd,
85
+ inRange: inRange,
86
+ locale: locale
87
+ })
88
+ }, dateKey);
89
+ })
90
+ }, weekIndex));
91
+ }, [grid.weeks, value, today, numerals, theme, markedDates, isDateDisabledByList, onChange, renderDay, rangeValue, locale]);
92
+ return /*#__PURE__*/_jsx(View, {
93
+ style: styles.grid,
94
+ children: rows
95
+ });
96
+ });
97
+ const styles = StyleSheet.create({
98
+ grid: {
99
+ paddingHorizontal: 8,
100
+ paddingBottom: 8
101
+ },
102
+ weekRow: {
103
+ flexDirection: 'row',
104
+ justifyContent: 'space-around'
105
+ },
106
+ dayCell: {
107
+ flex: 1,
108
+ alignItems: 'center'
109
+ }
110
+ });
111
+ //# sourceMappingURL=CalendarGrid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","memo","useCallback","useMemo","View","StyleSheet","compareBS","isRangeStart","isRangeEnd","isDateInRange","CalendarDay","jsx","_jsx","CalendarGrid","grid","value","today","numerals","theme","markedDates","disabledDates","onChange","renderDay","rangeValue","locale","isDateDisabledByList","date","dateKey","Array","isArray","includes","rows","hasRange","start","weeks","map","week","weekIndex","style","styles","weekRow","children","cell","key","isSelected","isTodayCell","marked","explicitlyDisabled","disabled","isDisabled","rangeStart","rangeEnd","inRange","handlePress","dayProps","day","selected","inCurrentMonth","onPress","dayCell","create","paddingHorizontal","paddingBottom","flexDirection","justifyContent","flex","alignItems"],"sourceRoot":"../../../../src","sources":["components/NepaliCalendar/CalendarGrid.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+
3
+ import React, { memo, useCallback } from 'react';
4
+ import { View, Text, Pressable, StyleSheet } from 'react-native';
5
+ import { formatBS } from '../../core/format';
6
+ import { toNepaliNumerals } from '../../core/numerals';
7
+ import { clampBSDateToSupportedRange } from '../../core/validation';
8
+ import { HEADER_PREV_MONTH_LABEL, HEADER_NEXT_MONTH_LABEL } from '../../accessibility';
9
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
+ function safeFormatHeader(year, month, locale, numerals) {
11
+ const safeDate = clampBSDateToSupportedRange({
12
+ calendar: 'BS',
13
+ year,
14
+ month: Math.max(1, Math.min(12, month)),
15
+ day: 1
16
+ });
17
+ try {
18
+ return formatBS(safeDate, 'MMMM yyyy', {
19
+ locale,
20
+ numerals
21
+ });
22
+ } catch {
23
+ const monthName = safeDate.month >= 1 && safeDate.month <= 12 ? locale.months[safeDate.month - 1] : `Month ${safeDate.month}`;
24
+ const yearStr = numerals === 'devanagari' ? toNepaliNumerals(safeDate.year) : String(safeDate.year);
25
+ return `${monthName} ${yearStr}`;
26
+ }
27
+ }
28
+ export const CalendarHeader = /*#__PURE__*/memo(function CalendarHeader({
29
+ year,
30
+ month,
31
+ locale,
32
+ numerals,
33
+ theme,
34
+ onPrevMonth,
35
+ onNextMonth,
36
+ canGoPrev,
37
+ canGoNext
38
+ }) {
39
+ const title = safeFormatHeader(year, month, locale, numerals);
40
+ const handlePrev = useCallback(() => {
41
+ if (canGoPrev) onPrevMonth();
42
+ }, [canGoPrev, onPrevMonth]);
43
+ const handleNext = useCallback(() => {
44
+ if (canGoNext) onNextMonth();
45
+ }, [canGoNext, onNextMonth]);
46
+ return /*#__PURE__*/_jsxs(View, {
47
+ style: styles.header,
48
+ children: [/*#__PURE__*/_jsx(Pressable, {
49
+ style: [styles.navButton, !canGoPrev && styles.navButtonDisabled],
50
+ onPress: handlePrev,
51
+ disabled: !canGoPrev,
52
+ accessibilityRole: "button",
53
+ accessibilityLabel: HEADER_PREV_MONTH_LABEL,
54
+ children: /*#__PURE__*/_jsx(Text, {
55
+ style: [styles.navText, {
56
+ color: theme.colors.text
57
+ }],
58
+ children: "\u2039"
59
+ })
60
+ }), /*#__PURE__*/_jsx(Text, {
61
+ style: [styles.title, {
62
+ color: theme.colors.text
63
+ }],
64
+ children: title
65
+ }), /*#__PURE__*/_jsx(Pressable, {
66
+ style: [styles.navButton, !canGoNext && styles.navButtonDisabled],
67
+ onPress: handleNext,
68
+ disabled: !canGoNext,
69
+ accessibilityRole: "button",
70
+ accessibilityLabel: HEADER_NEXT_MONTH_LABEL,
71
+ children: /*#__PURE__*/_jsx(Text, {
72
+ style: [styles.navText, {
73
+ color: theme.colors.text
74
+ }],
75
+ children: "\u203A"
76
+ })
77
+ })]
78
+ });
79
+ });
80
+ const styles = StyleSheet.create({
81
+ header: {
82
+ flexDirection: 'row',
83
+ alignItems: 'center',
84
+ justifyContent: 'space-between',
85
+ paddingHorizontal: 16,
86
+ paddingVertical: 12
87
+ },
88
+ title: {
89
+ fontSize: 18,
90
+ fontWeight: '600',
91
+ flex: 1,
92
+ textAlign: 'center'
93
+ },
94
+ navButton: {
95
+ width: 40,
96
+ height: 40,
97
+ alignItems: 'center',
98
+ justifyContent: 'center',
99
+ borderRadius: 20
100
+ },
101
+ navButtonDisabled: {
102
+ opacity: 0.3
103
+ },
104
+ navText: {
105
+ fontSize: 24,
106
+ fontWeight: '400'
107
+ }
108
+ });
109
+ //# sourceMappingURL=CalendarHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","memo","useCallback","View","Text","Pressable","StyleSheet","formatBS","toNepaliNumerals","clampBSDateToSupportedRange","HEADER_PREV_MONTH_LABEL","HEADER_NEXT_MONTH_LABEL","jsx","_jsx","jsxs","_jsxs","safeFormatHeader","year","month","locale","numerals","safeDate","calendar","Math","max","min","day","monthName","months","yearStr","String","CalendarHeader","theme","onPrevMonth","onNextMonth","canGoPrev","canGoNext","title","handlePrev","handleNext","style","styles","header","children","navButton","navButtonDisabled","onPress","disabled","accessibilityRole","accessibilityLabel","navText","color","colors","text","create","flexDirection","alignItems","justifyContent","paddingHorizontal","paddingVertical","fontSize","fontWeight","flex","textAlign","width","height","borderRadius","opacity"],"sourceRoot":"../../../../src","sources":["components/NepaliCalendar/CalendarHeader.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ import React, { memo, useMemo } from 'react';
4
+ import { View, Text, StyleSheet } from 'react-native';
5
+ import { jsx as _jsx } from "react/jsx-runtime";
6
+ export const CalendarWeekdays = /*#__PURE__*/memo(function CalendarWeekdays({
7
+ locale,
8
+ weekStartsOn,
9
+ theme
10
+ }) {
11
+ const weekdays = useMemo(() => {
12
+ const ordered = [...locale.weekdaysShort];
13
+ return ordered.slice(weekStartsOn).concat(ordered.slice(0, weekStartsOn));
14
+ }, [locale.weekdaysShort, weekStartsOn]);
15
+ return /*#__PURE__*/_jsx(View, {
16
+ style: styles.weekdaysRow,
17
+ children: weekdays.map((day, index) => /*#__PURE__*/_jsx(Text, {
18
+ style: [styles.weekdayText, {
19
+ color: theme.colors.mutedText
20
+ }],
21
+ children: day
22
+ }, index))
23
+ });
24
+ });
25
+ const styles = StyleSheet.create({
26
+ weekdaysRow: {
27
+ flexDirection: 'row',
28
+ justifyContent: 'space-around',
29
+ paddingHorizontal: 8,
30
+ paddingBottom: 8
31
+ },
32
+ weekdayText: {
33
+ flex: 1,
34
+ textAlign: 'center',
35
+ fontSize: 12,
36
+ fontWeight: '500'
37
+ }
38
+ });
39
+ //# sourceMappingURL=CalendarWeekdays.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","memo","useMemo","View","Text","StyleSheet","jsx","_jsx","CalendarWeekdays","locale","weekStartsOn","theme","weekdays","ordered","weekdaysShort","slice","concat","style","styles","weekdaysRow","children","map","day","index","weekdayText","color","colors","mutedText","create","flexDirection","justifyContent","paddingHorizontal","paddingBottom","flex","textAlign","fontSize","fontWeight"],"sourceRoot":"../../../../src","sources":["components/NepaliCalendar/CalendarWeekdays.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,IAAI,EAAEC,OAAO,QAAQ,OAAO;AAC5C,SAASC,IAAI,EAAEC,IAAI,EAAEC,UAAU,QAAQ,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAUtD,OAAO,MAAMC,gBAAgB,gBAAGP,IAAI,CAAC,SAASO,gBAAgBA,CAAC;EAC7DC,MAAM;EACNC,YAAY;EACZC;AACqB,CAAC,EAAE;EACxB,MAAMC,QAAQ,GAAGV,OAAO,CAAC,MAAM;IAC7B,MAAMW,OAAO,GAAG,CAAC,GAAGJ,MAAM,CAACK,aAAa,CAAC;IACzC,OAAOD,OAAO,CAACE,KAAK,CAACL,YAAY,CAAC,CAACM,MAAM,CAACH,OAAO,CAACE,KAAK,CAAC,CAAC,EAAEL,YAAY,CAAC,CAAC;EAC3E,CAAC,EAAE,CAACD,MAAM,CAACK,aAAa,EAAEJ,YAAY,CAAC,CAAC;EAExC,oBACEH,IAAA,CAACJ,IAAI;IAACc,KAAK,EAAEC,MAAM,CAACC,WAAY;IAAAC,QAAA,EAC7BR,QAAQ,CAACS,GAAG,CAAC,CAACC,GAAG,EAAEC,KAAK,kBACvBhB,IAAA,CAACH,IAAI;MAEHa,KAAK,EAAE,CAACC,MAAM,CAACM,WAAW,EAAE;QAAEC,KAAK,EAAEd,KAAK,CAACe,MAAM,CAACC;MAAU,CAAC,CAAE;MAAAP,QAAA,EAE9DE;IAAG,GAHCC,KAID,CACP;EAAC,CACE,CAAC;AAEX,CAAC,CAAC;AAEF,MAAML,MAAM,GAAGb,UAAU,CAACuB,MAAM,CAAC;EAC/BT,WAAW,EAAE;IACXU,aAAa,EAAE,KAAK;IACpBC,cAAc,EAAE,cAAc;IAC9BC,iBAAiB,EAAE,CAAC;IACpBC,aAAa,EAAE;EACjB,CAAC;EACDR,WAAW,EAAE;IACXS,IAAI,EAAE,CAAC;IACPC,SAAS,EAAE,QAAQ;IACnBC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}