efficient-shell 11.8.0 → 11.10.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 (374) hide show
  1. package/README.md +9 -0
  2. package/dist/{Browser-NMILHEUX.js → Browser-FIRNNCSC.js} +17 -17
  3. package/dist/Calculator-ELI5Z3XW.js +29 -0
  4. package/dist/{CurrencyConverter-TAWZDMT4.js → CurrencyConverter-LU7QXMOI.js} +9 -9
  5. package/dist/{Documents-SDOY3ZA3.js → Documents-CE7YKNJM.js} +24 -24
  6. package/dist/Files-ARRIIZZ6.js +88 -0
  7. package/dist/{Notepad-DZSDABU7.js → Notepad-HNED2SWM.js} +10 -10
  8. package/dist/PdfViewer-ZRDIG2L2.js +1 -0
  9. package/dist/PomodoroTimer-ZJ432VPC.js +91 -0
  10. package/dist/{Preview-6Z6K5QLK.js → Preview-OGSYTTKC.js} +38 -38
  11. package/dist/Sidebar-ETWHTFNP.js +44 -0
  12. package/dist/Spreadsheet-4HZR2TUV.js +75 -0
  13. package/dist/{Stock-HJN2BSAD.js → Stock-4BOTUHWE.js} +3 -3
  14. package/dist/{Weather-G7AOUS36.js → Weather-NDUOK3P3.js} +21 -21
  15. package/dist/{WorldClock-GE3DGYYU.js → WorldClock-FH6NFTOM.js} +4 -4
  16. package/dist/ai/index.js +78 -78
  17. package/dist/apps/index.js +1 -1
  18. package/dist/bin/media-host-check.js +1 -1
  19. package/dist/bin/ui-check.js +1 -1
  20. package/dist/brand.css +1 -1
  21. package/dist/charts/BoxPlotChart.js +1 -1
  22. package/dist/charts/CandlestickChart.js +1 -1
  23. package/dist/charts/CartesianPlot.js +1 -1
  24. package/dist/charts/ChartBrush.js +1 -1
  25. package/dist/charts/ChartFrame.js +1 -1
  26. package/dist/charts/ChartSkeleton.js +1 -1
  27. package/dist/charts/ChartTooltip.js +1 -1
  28. package/dist/charts/ChordChart.js +1 -1
  29. package/dist/charts/ColumnChart.js +1 -1
  30. package/dist/charts/FunnelChart.js +1 -1
  31. package/dist/charts/HeatmapChart.js +1 -1
  32. package/dist/charts/HistogramChart.js +1 -1
  33. package/dist/charts/Meter.js +1 -1
  34. package/dist/charts/PieChart.js +1 -1
  35. package/dist/charts/RadarChart.js +1 -1
  36. package/dist/charts/RadialBarChart.js +1 -1
  37. package/dist/charts/RangeChart.js +1 -1
  38. package/dist/charts/RankedBars.js +1 -1
  39. package/dist/charts/SankeyChart.js +1 -1
  40. package/dist/charts/ScatterChart.js +1 -1
  41. package/dist/charts/SpecChart.js +1 -1
  42. package/dist/charts/StatTile.js +1 -1
  43. package/dist/charts/SunburstChart.js +1 -1
  44. package/dist/charts/TimeSeriesChart.js +1 -1
  45. package/dist/charts/TreemapChart.js +1 -1
  46. package/dist/charts/WaterfallChart.js +1 -1
  47. package/dist/{chunk-CD7UWMPX.js → chunk-276JUQXK.js} +1 -1
  48. package/dist/{chunk-6EIZOX6W.js → chunk-2CPYXRR2.js} +8 -8
  49. package/dist/{chunk-SXNQHIBY.js → chunk-2JTG3U5L.js} +1 -1
  50. package/dist/{chunk-NGLU2GKE.js → chunk-2UTCGWMZ.js} +3 -3
  51. package/dist/{chunk-JNQF5CBB.js → chunk-2V3LKX7G.js} +5 -5
  52. package/dist/{chunk-WDQI3FV6.js → chunk-36VIGB6J.js} +6 -6
  53. package/dist/{chunk-4XNVIKZZ.js → chunk-37JAU3U7.js} +3 -3
  54. package/dist/{chunk-DU4WEVNS.js → chunk-4L4GQW7P.js} +1 -1
  55. package/dist/chunk-4LQRLYB4.js +22 -0
  56. package/dist/{chunk-4EZIWLJJ.js → chunk-4UKPDURO.js} +1 -1
  57. package/dist/{chunk-SDDV3UCN.js → chunk-4VF66WBB.js} +12 -12
  58. package/dist/chunk-5CPRZ27M.js +28 -0
  59. package/dist/{chunk-YCWALB3A.js → chunk-5DZN6ZDE.js} +9 -9
  60. package/dist/{chunk-SS5SQMIB.js → chunk-5MGNT7XM.js} +2 -2
  61. package/dist/{chunk-EYPKBJYG.js → chunk-5PP435FL.js} +1 -1
  62. package/dist/chunk-5XVXYBIQ.js +8 -0
  63. package/dist/{chunk-EOWUUOVE.js → chunk-7N4P6LGD.js} +1 -1
  64. package/dist/chunk-7QRKZOXR.js +12 -0
  65. package/dist/{chunk-7TZV6G2F.js → chunk-A2SP4IZV.js} +1 -1
  66. package/dist/chunk-A4FCXZSY.js +8 -0
  67. package/dist/{chunk-JFV5CQN4.js → chunk-A65PRSKV.js} +4 -4
  68. package/dist/chunk-ABKCC7VB.js +9 -0
  69. package/dist/chunk-ABKFALDE.js +8 -0
  70. package/dist/{chunk-X5TZHOTI.js → chunk-AFROFSDW.js} +1 -1
  71. package/dist/chunk-AJ6HMM4P.js +20 -0
  72. package/dist/chunk-ALMBY7QO.js +6 -0
  73. package/dist/{chunk-72LJMEL6.js → chunk-B4D23ZLJ.js} +1 -1
  74. package/dist/{chunk-FXOYA2VJ.js → chunk-BAT5B2LE.js} +1 -1
  75. package/dist/{chunk-SHO35OPO.js → chunk-BXTSBORU.js} +3 -3
  76. package/dist/{chunk-47DO42IW.js → chunk-CFFT5OCV.js} +1 -1
  77. package/dist/{chunk-WOXQODYQ.js → chunk-D2BXHFYK.js} +1 -1
  78. package/dist/{chunk-RHDM7HRD.js → chunk-DGA4SO27.js} +2 -2
  79. package/dist/{chunk-OTVK7DJM.js → chunk-DH2DKQKS.js} +1 -1
  80. package/dist/{chunk-VAK5FQXH.js → chunk-DWR6RVX5.js} +4 -4
  81. package/dist/{chunk-LT6PG6UW.js → chunk-DXFG4H4V.js} +1 -1
  82. package/dist/{chunk-4TYIYL56.js → chunk-E2LRAOCL.js} +10 -10
  83. package/dist/{chunk-MS5APD3V.js → chunk-ED6HJBCO.js} +1 -1
  84. package/dist/{chunk-C764JODK.js → chunk-EMUZJMR3.js} +1 -1
  85. package/dist/chunk-EOVXFXVV.js +2 -0
  86. package/dist/{chunk-MXGDFO6A.js → chunk-EOYGTVNS.js} +5 -5
  87. package/dist/{chunk-FA5FBNWF.js → chunk-EP5BHBZQ.js} +1 -1
  88. package/dist/chunk-FBACFP4U.js +4 -0
  89. package/dist/{chunk-JFBL4PR3.js → chunk-FNMF42DQ.js} +2 -2
  90. package/dist/{chunk-ORIXCEKO.js → chunk-FOHOSUK3.js} +1 -1
  91. package/dist/{chunk-ECJKIPWU.js → chunk-FRNSCVPN.js} +1 -1
  92. package/dist/chunk-FSRHVB4A.js +9 -0
  93. package/dist/{chunk-YQFGRYEF.js → chunk-FTGA5IPI.js} +14 -14
  94. package/dist/{chunk-JPNAEN53.js → chunk-FZM3ZPW3.js} +1 -1
  95. package/dist/chunk-G2BZ7NCM.js +19 -0
  96. package/dist/{chunk-IXOL7Y3Z.js → chunk-GNWK77U7.js} +1 -1
  97. package/dist/{chunk-OPN4I565.js → chunk-GPCTDEXQ.js} +1 -1
  98. package/dist/{chunk-C6YAFZG3.js → chunk-GV5VNWPG.js} +2 -2
  99. package/dist/{chunk-JSG2AKCG.js → chunk-H5YD72OP.js} +1 -1
  100. package/dist/{chunk-RDYFZHT3.js → chunk-HBS4HYQM.js} +1 -1
  101. package/dist/{chunk-TQE6O2JA.js → chunk-HRXQCHKI.js} +3 -3
  102. package/dist/chunk-HTTICQBP.js +27 -0
  103. package/dist/{chunk-LJN77RG6.js → chunk-HWFBNYNI.js} +1 -1
  104. package/dist/chunk-HYNUJY6W.js +13 -0
  105. package/dist/{chunk-5CXFABVD.js → chunk-HYXDKY2L.js} +1 -1
  106. package/dist/{chunk-5F2AIDPY.js → chunk-IAUEISDQ.js} +9 -9
  107. package/dist/{chunk-OBJGUJIE.js → chunk-IDRAW6MT.js} +2 -2
  108. package/dist/chunk-IEHTZR5M.js +7 -0
  109. package/dist/chunk-IH2KC3NQ.js +5 -0
  110. package/dist/{chunk-RYLTVHCV.js → chunk-IKKQ4P4R.js} +12 -12
  111. package/dist/{chunk-MDYJVXWD.js → chunk-IW2QNPDG.js} +2 -2
  112. package/dist/chunk-IXSSBGRD.js +13 -0
  113. package/dist/{chunk-54NMFQMW.js → chunk-JADBOQ7S.js} +5 -5
  114. package/dist/{chunk-ZGOHRLXG.js → chunk-JGVKGEIV.js} +1 -1
  115. package/dist/{chunk-XYECIBVX.js → chunk-JJHPPTM6.js} +1 -1
  116. package/dist/{chunk-TMMNCXQT.js → chunk-KMSK6QQB.js} +1 -1
  117. package/dist/{chunk-4MBYFQOI.js → chunk-KPFYXVCO.js} +9 -9
  118. package/dist/{chunk-ZXVJL7MS.js → chunk-KZ6JVHFI.js} +1 -1
  119. package/dist/{chunk-4ULRP4Y4.js → chunk-L3RLB37Y.js} +1 -1
  120. package/dist/{chunk-ZD36QKQS.js → chunk-L433UT5E.js} +1 -1
  121. package/dist/{chunk-V6Y4OC6K.js → chunk-LCHU3ZG4.js} +8 -8
  122. package/dist/{chunk-VCMHBUKI.js → chunk-LE5LWALR.js} +1 -1
  123. package/dist/{chunk-VHF3CJVO.js → chunk-LLNWE7DR.js} +30 -30
  124. package/dist/{chunk-B634WHJ2.js → chunk-LNGLJA6K.js} +2 -2
  125. package/dist/{chunk-QVZKRROQ.js → chunk-LPTN55KO.js} +1 -1
  126. package/dist/chunk-LVHQJ5TW.js +9 -0
  127. package/dist/{chunk-AFYLVV74.js → chunk-LZJCULO7.js} +1 -1
  128. package/dist/{chunk-E6GDAV5R.js → chunk-MFDOGLFO.js} +3 -3
  129. package/dist/chunk-MG4IUKVP.js +11 -0
  130. package/dist/{chunk-SXQZ5GTA.js → chunk-MOL2ND6G.js} +6 -6
  131. package/dist/{chunk-4QK4WNPB.js → chunk-MQHUVZWM.js} +1 -1
  132. package/dist/{chunk-7ELJQL7J.js → chunk-MWKLLAJT.js} +1 -1
  133. package/dist/chunk-N3OJ47VK.js +1 -0
  134. package/dist/{chunk-RQDVAUXD.js → chunk-N5KO2IHG.js} +4 -4
  135. package/dist/chunk-N7645DNN.js +6 -0
  136. package/dist/{chunk-DGNAUGZ3.js → chunk-NFNDXE5O.js} +4 -4
  137. package/dist/{chunk-IDI3IOY4.js → chunk-NGUXPP5Q.js} +65 -65
  138. package/dist/{chunk-QQ2LDC6C.js → chunk-NJN5IKWO.js} +1 -1
  139. package/dist/{chunk-QYL26AB4.js → chunk-NSYCJTHE.js} +1 -1
  140. package/dist/chunk-NTKNM25F.js +15 -0
  141. package/dist/{chunk-IMDGMUE3.js → chunk-O4OFURPC.js} +1 -1
  142. package/dist/{chunk-5H4SWQGM.js → chunk-OE77XFOV.js} +1 -1
  143. package/dist/{chunk-DJW7CM3W.js → chunk-ONIL7WXO.js} +1 -1
  144. package/dist/{chunk-2E2SUEEE.js → chunk-OQG3XO4Y.js} +1 -1
  145. package/dist/{chunk-PVPMJ5G2.js → chunk-OS2KE6QG.js} +4 -4
  146. package/dist/{chunk-VQBEZNHC.js → chunk-OUXSI6X4.js} +1 -1
  147. package/dist/{chunk-CLTRQ7AQ.js → chunk-OYTRB237.js} +1 -1
  148. package/dist/{chunk-KTCM64DQ.js → chunk-OZEPYQ7E.js} +1 -1
  149. package/dist/{chunk-3NRQNKVP.js → chunk-P7NO3NGC.js} +11 -11
  150. package/dist/{chunk-SX5BSWTN.js → chunk-PAC4LK2N.js} +5 -5
  151. package/dist/{chunk-UEISJFZH.js → chunk-PBMAMVSE.js} +5 -5
  152. package/dist/{chunk-O3MBPAWZ.js → chunk-PC44XTGN.js} +1 -1
  153. package/dist/chunk-PEVWAJUR.js +7 -0
  154. package/dist/{chunk-6UBOLLBC.js → chunk-PMKR2BF2.js} +21 -21
  155. package/dist/{chunk-JH4ZCPHW.js → chunk-PR42NIDL.js} +10 -10
  156. package/dist/{chunk-FT3QRQWY.js → chunk-PTWKG635.js} +3 -3
  157. package/dist/{chunk-ESZHN7PV.js → chunk-QIEAZN6Z.js} +1 -1
  158. package/dist/{chunk-DQQKG46I.js → chunk-QIVIQUKB.js} +7 -7
  159. package/dist/{chunk-KQOY4RGP.js → chunk-QL5E3MU3.js} +1 -1
  160. package/dist/chunk-QRZBLNOQ.js +4 -0
  161. package/dist/{chunk-G3KXB7SP.js → chunk-QVAOSKFO.js} +11 -11
  162. package/dist/{chunk-2UO47XB4.js → chunk-R64OZ6TC.js} +26 -12
  163. package/dist/{chunk-SYZLS2JA.js → chunk-RDKIYORS.js} +1 -1
  164. package/dist/{chunk-JTMEFXRL.js → chunk-RDTKMSEK.js} +1 -1
  165. package/dist/{chunk-RRE2NNFS.js → chunk-RKL47W7I.js} +6 -6
  166. package/dist/{chunk-3V5GSTZI.js → chunk-RPTOAKLB.js} +1 -1
  167. package/dist/{chunk-LJAYUDN2.js → chunk-RQ6TC6RM.js} +1 -1
  168. package/dist/{chunk-T7PVHIXI.js → chunk-RSJLN3EG.js} +1 -1
  169. package/dist/{chunk-JQBVSPF5.js → chunk-S4FPYCUU.js} +3 -3
  170. package/dist/{chunk-SAP4YI2Y.js → chunk-SDAX6BXF.js} +1 -1
  171. package/dist/{chunk-KGSOOXA7.js → chunk-SIA3W7VE.js} +6 -6
  172. package/dist/{chunk-MTIP5DH2.js → chunk-SJQKEIS7.js} +3 -3
  173. package/dist/{chunk-OH5L6HYW.js → chunk-SXBOODCJ.js} +4 -4
  174. package/dist/{chunk-3IUPYCW3.js → chunk-SZTIP6T7.js} +1 -1
  175. package/dist/{chunk-IBS7647X.js → chunk-T2ZFXPQV.js} +21 -21
  176. package/dist/{chunk-XWFLIGDQ.js → chunk-TE6R53YD.js} +1 -1
  177. package/dist/{chunk-M4BPHBKI.js → chunk-TKE3EF2U.js} +1 -1
  178. package/dist/{chunk-XQZL6JDD.js → chunk-TURECNEK.js} +4 -4
  179. package/dist/{chunk-AWKJZSTO.js → chunk-U6IJL4Q5.js} +1 -1
  180. package/dist/{chunk-DUGYWX2R.js → chunk-U7T2ONAY.js} +2 -2
  181. package/dist/chunk-UGOSZLCD.js +14 -0
  182. package/dist/{chunk-355CRSFS.js → chunk-UIN2LUCZ.js} +13 -13
  183. package/dist/{chunk-P4VKU3SL.js → chunk-UZ7TKJRO.js} +1 -1
  184. package/dist/{chunk-BTRV3SMB.js → chunk-V6LPIDZ6.js} +1 -1
  185. package/dist/chunk-VNTJ7QO5.js +1 -0
  186. package/dist/{chunk-SL77N7VT.js → chunk-VTXCCFJ4.js} +3 -3
  187. package/dist/chunk-WB6E6CSH.js +14 -0
  188. package/dist/{chunk-CRILBBSU.js → chunk-WDZUPDNC.js} +1 -1
  189. package/dist/{chunk-CJH2BGXY.js → chunk-WGLHB6WE.js} +1 -1
  190. package/dist/{chunk-MDV7UQJD.js → chunk-WMS2DCRV.js} +10 -10
  191. package/dist/chunk-WQGBYFS3.js +8 -0
  192. package/dist/{chunk-PCTOL2FX.js → chunk-WTTXLWMK.js} +8 -8
  193. package/dist/{chunk-UGBYAVJV.js → chunk-WYSNMIZN.js} +1 -1
  194. package/dist/{chunk-EKCQ7XBZ.js → chunk-WZMZ3N5B.js} +2 -2
  195. package/dist/chunk-Y2LWUBXX.js +2 -0
  196. package/dist/{chunk-BW47XJLH.js → chunk-YGCVMPIU.js} +1 -1
  197. package/dist/{chunk-3XTSXZAC.js → chunk-YIFRSPUM.js} +10 -10
  198. package/dist/{chunk-EN5NXWT6.js → chunk-YKEB576T.js} +1 -1
  199. package/dist/{chunk-4TGZODSH.js → chunk-YM4XIO4K.js} +5 -5
  200. package/dist/chunk-YMBNVMFU.js +11 -0
  201. package/dist/{chunk-N7U622NC.js → chunk-YY5TUQS4.js} +3 -3
  202. package/dist/{chunk-LXL2UCUR.js → chunk-Z32K3LIJ.js} +1 -1
  203. package/dist/{chunk-P3RXXWXN.js → chunk-ZDDYTXPK.js} +6 -6
  204. package/dist/{chunk-X55LUERI.js → chunk-ZGQ6H2PU.js} +4 -4
  205. package/dist/{chunk-NU5HN3FZ.js → chunk-ZM2NOLT6.js} +12 -12
  206. package/dist/chunk-ZQJTLJUF.js +2 -0
  207. package/dist/{chunk-DANLBFBD.js → chunk-ZRLWE3JM.js} +1 -1
  208. package/dist/chunk-ZVEDA462.js +3 -0
  209. package/dist/{chunk-TGGUYAWA.js → chunk-ZWLOVJWN.js} +1 -1
  210. package/dist/data/DataTable.js +1 -1
  211. package/dist/data/EntityList.js +1 -1
  212. package/dist/data/Kanban.js +1 -1
  213. package/dist/data/ListFooter.js +1 -1
  214. package/dist/data/ListLoadError.js +1 -1
  215. package/dist/data/Pagination.js +1 -1
  216. package/dist/data/ResizableTable.js +1 -1
  217. package/dist/file-intake/index.js +1 -1
  218. package/dist/forms/AlignmentGrid.js +1 -1
  219. package/dist/forms/BorderInput.js +1 -1
  220. package/dist/forms/BrandAssetEditor.js +1 -1
  221. package/dist/forms/Button.js +1 -1
  222. package/dist/forms/Calendar.js +1 -1
  223. package/dist/forms/ColorPicker.js +1 -1
  224. package/dist/forms/ComposerAttachments.js +1 -1
  225. package/dist/forms/CornersInput.js +1 -1
  226. package/dist/forms/DatePicker.js +1 -1
  227. package/dist/forms/DateRangePicker.js +1 -1
  228. package/dist/forms/DateTimePicker.js +1 -1
  229. package/dist/forms/DisplayChips.js +1 -1
  230. package/dist/forms/FilePicker.js +1 -1
  231. package/dist/forms/FormErrorSummary.js +1 -1
  232. package/dist/forms/IconButton.js +1 -1
  233. package/dist/forms/IconPicker.js +1 -1
  234. package/dist/forms/ImageFocusPoint.js +1 -1
  235. package/dist/forms/Input.js +1 -1
  236. package/dist/forms/InputNumber.js +1 -1
  237. package/dist/forms/LinkPicker.d.ts +22 -0
  238. package/dist/forms/LinkPicker.js +1 -1
  239. package/dist/forms/MediaLibrary.js +1 -1
  240. package/dist/forms/MediaUploadField.js +1 -1
  241. package/dist/forms/MediaUploadGrid.js +1 -1
  242. package/dist/forms/MediaUsedInList.js +1 -1
  243. package/dist/forms/NumericKeypad.js +1 -1
  244. package/dist/forms/PictureTiles.js +1 -1
  245. package/dist/forms/PositionInput.js +1 -1
  246. package/dist/forms/RenameField.js +1 -1
  247. package/dist/forms/Segmented.js +1 -1
  248. package/dist/forms/Select.js +1 -1
  249. package/dist/forms/SidesInput.js +1 -1
  250. package/dist/forms/Slider.js +1 -1
  251. package/dist/forms/Snippet.js +1 -1
  252. package/dist/forms/SplitButton.js +1 -1
  253. package/dist/forms/TagInput.js +1 -1
  254. package/dist/forms/TextToolbar.js +1 -1
  255. package/dist/forms/TimePicker.js +1 -1
  256. package/dist/forms/WidthsBar.js +1 -1
  257. package/dist/forms/mediaLibraryMenu.js +1 -1
  258. package/dist/forms/mediaMoveItems.js +1 -1
  259. package/dist/forms/textAlign.js +1 -1
  260. package/dist/forms/useFileIntake.js +1 -1
  261. package/dist/icons/index.js +1 -1
  262. package/dist/index.js +666 -666
  263. package/dist/locales/zh-Hans.js +1 -1
  264. package/dist/map/index.js +3 -3
  265. package/dist/markdown/index.js +1 -1
  266. package/dist/page-tabs/index.js +5 -5
  267. package/dist/pdf/index.js +1 -1
  268. package/dist/shell/Accordion.js +1 -1
  269. package/dist/shell/AppUpdateBanner.js +1 -1
  270. package/dist/shell/Avatar.js +1 -1
  271. package/dist/shell/Banner.js +1 -1
  272. package/dist/shell/Breadcrumbs.js +1 -1
  273. package/dist/shell/BudgetBar.js +1 -1
  274. package/dist/shell/Card.js +1 -1
  275. package/dist/shell/ColoredBadge.js +1 -1
  276. package/dist/shell/ConfirmDialog.js +1 -1
  277. package/dist/shell/ContainerFillChart.js +1 -1
  278. package/dist/shell/ContextMenu.js +1 -1
  279. package/dist/shell/CountBadge.js +1 -1
  280. package/dist/shell/Dialog.js +1 -1
  281. package/dist/shell/Drawer.js +1 -1
  282. package/dist/shell/DropdownMenu.js +1 -1
  283. package/dist/shell/EditableGrid.js +1 -1
  284. package/dist/shell/EmptyState.js +1 -1
  285. package/dist/shell/GlobalSearch.js +1 -1
  286. package/dist/shell/HelpCenter.js +1 -1
  287. package/dist/shell/IconRail.js +1 -1
  288. package/dist/shell/ImageLightbox.js +1 -1
  289. package/dist/shell/ItemCount.js +1 -1
  290. package/dist/shell/LanguageSelect.js +1 -1
  291. package/dist/shell/Markdown.js +1 -1
  292. package/dist/shell/MetricBar.js +1 -1
  293. package/dist/shell/MetricBarLegend.js +1 -1
  294. package/dist/shell/MilestoneTimeline.js +1 -1
  295. package/dist/shell/PageHeader.js +1 -1
  296. package/dist/shell/PopupMenu.js +1 -1
  297. package/dist/shell/ProductionTimeline.js +1 -1
  298. package/dist/shell/ResizeHandle.js +1 -1
  299. package/dist/shell/Result.js +1 -1
  300. package/dist/shell/SearchableSelect.js +1 -1
  301. package/dist/shell/SettingReset.js +1 -1
  302. package/dist/shell/SettingRow.js +1 -1
  303. package/dist/shell/SidebarLayout.js +1 -1
  304. package/dist/shell/SidebarNav.js +1 -1
  305. package/dist/shell/SortableList.js +1 -1
  306. package/dist/shell/Statistic.js +1 -1
  307. package/dist/shell/StatusBadge.js +1 -1
  308. package/dist/shell/StepChain.js +1 -1
  309. package/dist/shell/Stepper.js +1 -1
  310. package/dist/shell/Tabs.js +1 -1
  311. package/dist/shell/TimeAgo.js +1 -1
  312. package/dist/shell/TimelineTrack.js +1 -1
  313. package/dist/shell/Tooltip.js +1 -1
  314. package/dist/shell/TopNav.js +1 -1
  315. package/dist/shell/TransferProgress.js +1 -1
  316. package/dist/shell/Tree.js +1 -1
  317. package/dist/shell/discardGuard.js +1 -1
  318. package/dist/shell/language.js +1 -1
  319. package/dist/shell/strings.d.ts +129 -0
  320. package/dist/shell/strings.js +1 -1
  321. package/dist/shell/toast.js +1 -1
  322. package/dist/telemetry/index.js +1 -1
  323. package/dist/templates/AuthScreen.js +1 -1
  324. package/dist/templates/ChatTemplate.js +1 -1
  325. package/dist/templates/CheckoutTemplate.js +1 -1
  326. package/dist/templates/DashboardTemplate.js +1 -1
  327. package/dist/templates/DataTablePage.js +1 -1
  328. package/dist/templates/EmailTemplate.js +1 -1
  329. package/dist/templates/ErrorBoundary.js +1 -1
  330. package/dist/templates/ErrorPage.js +1 -1
  331. package/dist/templates/FormLayoutPage.js +1 -1
  332. package/dist/templates/GalleryTemplate.js +1 -1
  333. package/dist/ui/index.js +1 -1
  334. package/dist/version.js +1 -1
  335. package/package.json +1 -1
  336. package/dist/Calculator-E7AMPGD5.js +0 -29
  337. package/dist/Files-YQWVU6KZ.js +0 -88
  338. package/dist/PdfViewer-Y3SAVADX.js +0 -1
  339. package/dist/PomodoroTimer-RAZE37BO.js +0 -91
  340. package/dist/Sidebar-GQX7UM3M.js +0 -44
  341. package/dist/Spreadsheet-Q5N5KXGP.js +0 -37
  342. package/dist/chunk-34H3CK7R.js +0 -22
  343. package/dist/chunk-56KADF2B.js +0 -11
  344. package/dist/chunk-77AQNJE2.js +0 -9
  345. package/dist/chunk-7DI3VQCF.js +0 -2
  346. package/dist/chunk-7GTUUBS2.js +0 -28
  347. package/dist/chunk-7INZ7O3A.js +0 -5
  348. package/dist/chunk-CZMSOB2T.js +0 -9
  349. package/dist/chunk-EUAC2T5D.js +0 -2
  350. package/dist/chunk-F3ZFCQGP.js +0 -4
  351. package/dist/chunk-FO6UPEZH.js +0 -7
  352. package/dist/chunk-FSUQTN34.js +0 -14
  353. package/dist/chunk-GDQJBQ5B.js +0 -1
  354. package/dist/chunk-GELPD7EY.js +0 -12
  355. package/dist/chunk-GOZO6LU2.js +0 -8
  356. package/dist/chunk-HCXIXV4E.js +0 -8
  357. package/dist/chunk-IYXNRNAF.js +0 -8
  358. package/dist/chunk-K4JQ3FQI.js +0 -2
  359. package/dist/chunk-L7XIGRIT.js +0 -6
  360. package/dist/chunk-LGDMGDSV.js +0 -14
  361. package/dist/chunk-LKTUUNGJ.js +0 -1
  362. package/dist/chunk-M3JNILT2.js +0 -19
  363. package/dist/chunk-PFKXPSOM.js +0 -6
  364. package/dist/chunk-PLK2WHZG.js +0 -27
  365. package/dist/chunk-RABYGQQU.js +0 -8
  366. package/dist/chunk-RK7MN5L5.js +0 -3
  367. package/dist/chunk-RPL4H6LE.js +0 -9
  368. package/dist/chunk-UGGHQYDN.js +0 -11
  369. package/dist/chunk-VAPSWR5Q.js +0 -13
  370. package/dist/chunk-WMHZA4EO.js +0 -4
  371. package/dist/chunk-WUAKIM2B.js +0 -7
  372. package/dist/chunk-XZAEEX2H.js +0 -13
  373. package/dist/chunk-YDMXW2Q4.js +0 -15
  374. package/dist/chunk-ZS3TIQQ4.js +0 -20
@@ -0,0 +1,75 @@
1
+ import{ColorPickerPanel as e}from"./chunk-IKKQ4P4R.js";import{Popover as t}from"./chunk-7JGR7WPD.js";import"./chunk-GV5VNWPG.js";import"./chunk-2NMW66P5.js";import{toDateKey as n}from"./chunk-2HMNOLKX.js";import"./chunk-S6OB6HJB.js";import{Checkbox_default as r}from"./chunk-CGZBDI6C.js";import{useContextMenu as o,ContextMenu as l}from"./chunk-5MGNT7XM.js";import{Input_default as i}from"./chunk-2UTCGWMZ.js";import{DropdownMenu as s}from"./chunk-IEHTZR5M.js";import"./chunk-DH2DKQKS.js";import{IconButton_default as c}from"./chunk-LE5LWALR.js";import"./chunk-AYZY3YNC.js";import{pad2 as a}from"./chunk-LF27WIN2.js";import{AboutApp as u}from"./chunk-YY5TUQS4.js";import{peekSpreadsheetPreviewStage as f,claimSpreadsheetPreviewStage as h,SPREADSHEET_PREVIEW_UPDATE_EVENT as d}from"./chunk-VTVSMRFX.js";import{useWindowDirty as m,WindowTitle as p}from"./chunk-NGUXPP5Q.js";import"./chunk-4LXCCZDM.js";import"./chunk-AW7TOB6N.js";import"./chunk-KNUR2UEG.js";import"./chunk-JDCM2VHG.js";import"./chunk-NSYCJTHE.js";import"./chunk-ZDMZM7HD.js";import"./chunk-5A7MWTXX.js";import"./chunk-OQG3XO4Y.js";import{confirmDestructive as g}from"./chunk-HTTICQBP.js";import"./chunk-IH2KC3NQ.js";import"./chunk-UZ7TKJRO.js";import"./chunk-3DVNXNTF.js";import"./chunk-FRNSCVPN.js";import"./chunk-VWGWZY7A.js";import"./chunk-7QSDPSXP.js";import"./chunk-YGCVMPIU.js";import"./chunk-PC44XTGN.js";import{toast_default as w}from"./chunk-MWKLLAJT.js";import"./chunk-2QY5BJLA.js";import"./chunk-UGTRSRIW.js";import"./chunk-KC3EX26K.js";import"./chunk-F3ZOO23R.js";import"./chunk-N3OJ47VK.js";import"./chunk-FZM3ZPW3.js";import"./chunk-CDAJKLGL.js";import{PopupMenu as b,PopupMenuItem as v,PopupMenuDivider as x}from"./chunk-QVAOSKFO.js";import"./chunk-URHGHXDN.js";import"./chunk-5QFPTDQF.js";import{Button_default as y}from"./chunk-EOVXFXVV.js";import"./chunk-UQYNPYF4.js";import"./chunk-TE6R53YD.js";import{Icon as C}from"./chunk-R64OZ6TC.js";import"./chunk-J75ZT2JQ.js";import"./chunk-R2VKEMZH.js";import"./chunk-MRJKZWWV.js";import"./chunk-WGLHB6WE.js";import"./chunk-NJN5IKWO.js";import"./chunk-PGN5ME7B.js";import"./chunk-62LW225J.js";import"./chunk-GLUJS42B.js";import{useBrowserLayoutEffect as k}from"./chunk-D65T4H6J.js";import"./chunk-STKJA4PV.js";import"./chunk-5FYDNH4Y.js";import"./chunk-LNXBTK7Q.js";import{registerModalEscapeInterceptor as N}from"./chunk-TWVUQUUD.js";import{useShellStrings as $}from"./chunk-VNTJ7QO5.js";import"./chunk-C3QOHMR6.js";import{forwardRef as M,useRef as A,useState as S,useEffect as E,useMemo as F,useCallback as R,useImperativeHandle as T}from"react";import{jsx as D,jsxs as U,Fragment as O}from"react/jsx-runtime";var I=1048576,L=16384;function P(e){let t=e+1,n="";for(;t>0;){const e=(t-1)%26;n=String.fromCharCode(65+e)+n,t=Math.floor((t-1)/26)}return n}function z(e){let t=0;for(const n of e.toUpperCase())t=26*t+(n.charCodeAt(0)-64);return t-1}function j(e,t){return`${P(t)}${e+1}`}function V(e,t){return{r1:Math.min(e.row,t.row),c1:Math.min(e.col,t.col),r2:Math.max(e.row,t.row),c2:Math.max(e.col,t.col)}}function W(e){const t=j(e.r1,e.c1);return e.r1===e.r2&&e.c1===e.c2?t:`${t}:${j(e.r2,e.c2)}`}function H(e,t,n){return t>=e.r1&&t<=e.r2&&n>=e.c1&&n<=e.c2}function K(e,t){return e.r1<=t.r2&&e.r2>=t.r1&&e.c1<=t.c2&&e.c2>=t.c1}var B=class extends Error{},G=String.raw`(\$?)([A-Za-z]{1,3})(\$?)(\d{1,7})`,X=new RegExp(`^${G}(?::${G})?(?![A-Za-z0-9_.(])`),Y=/^(\$?)([A-Za-z]{1,3}):(\$?)([A-Za-z]{1,3})(?![A-Za-z0-9_.(])/,Z=/^(\$?)(\d{1,7}):(\$?)(\d{1,7})(?![A-Za-z0-9_.(])/,_=/^(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?/,J=/^[A-Za-z_][A-Za-z0-9_.]*/,Q=/^#(?:REF!|N\/A|NAME\?|DIV\/0!|VALUE!|NUM!|NULL!)/i,q=/^(?:'((?:[^']|'')+)'|([A-Za-z_][A-Za-z0-9_.]*))!/;function ee(e,t,n,r){return{col:z(t),row:Number(r)-1,colAbs:"$"===e,rowAbs:"$"===n}}function te(e){let t=null,n=0;const r=q.exec(e);r&&(t=void 0!==r[1]?r[1].replace(/''/g,"'"):r[2],n=r[0].length);const o=e.slice(n),l=X.exec(o);if(l){const e=ee(l[1],l[2],l[3],l[4]);if(e.row<0||e.row>=I||e.col>=L)return null;const r=l[6]?ee(l[5],l[6],l[7],l[8]):null;return r&&(r.row<0||r.row>=I||r.col>=L)?null:{ref:{sheet:t,a:e,b:r},length:n+l[0].length}}const i=Y.exec(o);if(i){return{ref:{sheet:t,a:{col:z(i[2]),row:null,colAbs:"$"===i[1],rowAbs:!1},b:{col:z(i[4]),row:null,colAbs:"$"===i[3],rowAbs:!1}},length:n+i[0].length}}const s=Z.exec(o);if(s&&Number(s[2])>0&&Number(s[4])>0){return{ref:{sheet:t,a:{col:null,row:Number(s[2])-1,colAbs:!1,rowAbs:"$"===s[1]},b:{col:null,row:Number(s[4])-1,colAbs:!1,rowAbs:"$"===s[3]}},length:n+s[0].length}}return null}var ne=["<=",">=","<>","+","-","*","/","^","&","=","<",">","%","(",")",",",";"];function re(e){const t=[];let n=0;for(;n<e.length;){const r=e[n];if(/\s/.test(r)){n++;continue}const o=e.slice(n);if('"'===r){let r=n+1,o="",l=!1;for(;r<e.length;){if('"'===e[r]){if('"'===e[r+1]){o+='"',r+=2;continue}l=!0,r++;break}o+=e[r++]}if(!l)return{tokens:t,complete:!1};t.push({type:"string",value:o,start:n,end:r}),n=r;continue}if("#"===r){const e=Q.exec(o);if(!e)return{tokens:t,complete:!1};t.push({type:"error",value:e[0].toUpperCase(),start:n,end:n+e[0].length}),n+=e[0].length;continue}const l=te(o);if(l){t.push({type:"ref",ref:l.ref,start:n,end:n+l.length}),n+=l.length;continue}const i=_.exec(o);if(i){t.push({type:"number",value:Number(i[0]),start:n,end:n+i[0].length}),n+=i[0].length;continue}const s=J.exec(o);if(s){t.push({type:"ident",value:s[0],start:n,end:n+s[0].length}),n+=s[0].length;continue}const c=ne.find(e=>o.startsWith(e));if(!c)return{tokens:t,complete:!1};t.push({type:"op",value:c,start:n,end:n+c.length}),n+=c.length}return{tokens:t,complete:!0}}var oe={"=":1,"<>":1,"<":1,">":1,"<=":1,">=":1,"&":2,"+":3,"-":3,"*":4,"/":4,"^":6},le=class{constructor(e){this.tokens=e}tokens;pos=0;peek(){return this.tokens[this.pos]}isOp(e){const t=this.peek();return"op"===t?.type&&t.value===e}run(){const e=this.expression(0);if(this.pos<this.tokens.length)throw new B("Unexpected text");return e}expression(e){let t=this.prefix();for(;;){const n=this.peek();if("op"!==n?.type)break;if("%"===n.value){this.pos++,t={kind:"percent",arg:t};continue}const r=oe[n.value];if(void 0===r||r<=e)break;this.pos++,t={kind:"binary",op:n.value,left:t,right:this.expression(r)}}return t}prefix(){const e=this.peek();if(!e)throw new B("Formula ends early");switch(this.pos++,e.type){case"number":return{kind:"num",value:e.value};case"string":return{kind:"str",value:e.value};case"error":return{kind:"err",value:e.value};case"ref":return{kind:"ref",ref:e.ref};case"ident":{if(this.isOp("("))return this.call(e.value);const t=e.value.toUpperCase();return"TRUE"===t?{kind:"bool",value:!0}:"FALSE"===t?{kind:"bool",value:!1}:{kind:"err",value:"#NAME?"}}case"op":if("-"===e.value||"+"===e.value)return{kind:"unary",op:e.value,arg:this.expression(7)};if("("===e.value){const e=this.expression(0);if(!this.isOp(")"))throw new B("Missing )");return this.pos++,e}throw new B(`Unexpected ${e.value}`)}}call(e){this.pos++;const t=[];if(this.isOp(")"))return this.pos++,{kind:"call",name:e.toUpperCase(),args:t};for(;;){if(this.isOp(",")||this.isOp(";")||this.isOp(")")?t.push({kind:"empty"}):t.push(this.expression(0)),!this.isOp(",")&&!this.isOp(";")){if(this.isOp(")"))return this.pos++,{kind:"call",name:e.toUpperCase(),args:t};throw new B("Missing )")}this.pos++}}},ie=/* @__PURE__ */new Map;function se(e){return e.length>1&&"="===e[0]}function ce(e){return(null===e.col?"":`${e.colAbs?"$":""}${P(e.col)}`)+(null===e.row?"":`${e.rowAbs?"$":""}${e.row+1}`)}function ae(e){return(null===(t=e.sheet)?"":/^[A-Za-z_][A-Za-z0-9_.]*$/.test(t)&&!X.test(t)?`${t}!`:`'${t.replace(/'/g,"''")}'!`)+ce(e.a)+(e.b?`:${ce(e.b)}`:"");var t}function ue(e,t){if(!se(e))return e;const n=e.slice(1),{tokens:r}=re(n);let o="",l=0;for(const e of r){if("ref"!==e.type)continue;const r=t(e.ref);o+=n.slice(l,e.start)+(r?ae(r):"#REF!"),l=e.end}return`=${o}${n.slice(l)}`}function fe(e,t,n){const r=e=>{const r=null===e.row||e.rowAbs?e.row:e.row+t,o=null===e.col||e.colAbs?e.col:e.col+n;return null!==r&&(r<0||r>=I)||null!==o&&(o<0||o>=L)?null:{...e,row:r,col:o}};return ue(e,e=>{const t=r(e.a),n=e.b?r(e.b):null;return!t||e.b&&!n?null:{...e,a:t,b:n}})}function he(e){return e.colAbs||e.rowAbs?e.colAbs&&e.rowAbs?{...e,colAbs:!1,rowAbs:!0}:!e.colAbs&&e.rowAbs?{...e,colAbs:!0,rowAbs:!1}:{...e,colAbs:!1,rowAbs:!1}:{...e,colAbs:!0,rowAbs:!0}}var de={general:"General",number:"#,##0.00",percent:"0.00%",currency:'"$"#,##0.00',scientific:"0.00E+00",date:"yyyy-mm-dd",time:"h:mm:ss AM/PM",dateTime:"yyyy-mm-dd h:mm",text:"@"},me=864e5,pe=Date.UTC(1899,11,30);function ge(e,t,n){return Math.round((Date.UTC(e,t-1,n)-pe)/me)}function we(e){const t=Math.floor(e),n=new Date(pe+t*me),r=Math.round(86400*(e-t));return{year:n.getUTCFullYear(),month:n.getUTCMonth()+1,day:n.getUTCDate(),weekday:n.getUTCDay(),hours:Math.floor(r/3600)%24,minutes:Math.floor(r/60)%60,seconds:r%60}}var be=/\[(black|blue|cyan|green|magenta|red|white|yellow|color\s*\d+)\]/i;function ve(e){const t=[];let n="",r=!1;for(let o=0;o<e.length;o++){const l=e[o];"\\"!==l?('"'===l&&(r=!r),";"!==l||r?n+=l:(t.push(n),n="")):n+=l+(e[++o]??"")}return t.push(n),t}function xe(e){return e.replace(/\\./g,"").replace(/"[^"]*"/g,"").replace(/\[[^\]]*\]/g,"")}function ye(e){return!(!e||"General"===e||"@"===e)&&/[ymdhs]/i.test(xe(ve(e)[0]).replace(/E\+/gi,""))}var Ce=["January","February","March","April","May","June","July","August","September","October","November","December"],ke=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];function Ne(e,t){const n=we(t),r=/AM\/PM|A\/P/i.test(xe(e)),o=e.match(/"[^"]*"|\\.|\[[^\]]*\]|AM\/PM|A\/P|y+|m+|d+|h+|s+|./gi)??[];let l="";return o.forEach((e,t)=>{if('"'===e[0])l+=e.slice(1,-1);else if("\\"===e[0])l+=e.slice(1);else if("["===e[0])l+="";else if(/^AM\/PM$/i.test(e))l+=n.hours<12?"AM":"PM";else if(/^A\/P$/i.test(e))l+=n.hours<12?"A":"P";else if(/^y+$/i.test(e))l+=e.length<=2?a(n.year%100):String(n.year);else if(/^m+$/i.test(e))e.length<=2&&(e=>{for(let t=e-1;t>=0;t--){if(/^h+$/i.test(o[t]))return!0;if(/^[ymds]+$/i.test(o[t]))break}for(let t=e+1;t<o.length;t++){if(/^s+$/i.test(o[t]))return!0;if(/^[ymdh]+$/i.test(o[t]))break}return!1})(t)?l+=2===e.length?a(n.minutes):String(n.minutes):1===e.length?l+=String(n.month):2===e.length?l+=a(n.month):3===e.length?l+=Ce[n.month-1].slice(0,3):l+=Ce[n.month-1];else if(/^d+$/i.test(e))1===e.length?l+=String(n.day):2===e.length?l+=a(n.day):3===e.length?l+=ke[n.weekday].slice(0,3):l+=ke[n.weekday];else if(/^h+$/i.test(e)){const t=r?n.hours%12||12:n.hours;l+=2===e.length?a(t):String(t)}else/^s+$/i.test(e)?l+=2===e.length?a(n.seconds):String(n.seconds):l+=e}),l}function $e(e,t){const n=/[eE]([+-])(0+|\?+|#+)$/.exec(e);if(n){const r=(e.slice(0,n.index).split(".")[1]??"").length,[o,l]=t.toExponential(r).split("e"),i=Number(l);return`${o}E${i<0?"-":"+"===n[1]?"+":""}${String(Math.abs(i)).padStart(n[2].length,"0")}`}const[r,o=""]=e.split("."),l=/,+$/.exec(r)?.[0].length??0,i=/[#0?],[#0?]/.test(r),s=(r.match(/0/g)??[]).length,c=o.replace(/[^#0?]/g,"").length,a=(o.match(/0/g)??[]).length,u=t/1e3**l,f=Math.abs(u).toFixed(Math.min(c,20));let[h,d=""]=f.split(".");for(;d.length>a&&d.endsWith("0");)d=d.slice(0,-1);return"0"===h&&0===s&&(h=""),h=h.padStart(s,"0"),i&&(h=h.replace(/\B(?=(\d{3})+(?!\d))/g,",")),d?`${h}.${d}`:(o.includes("."),h)}function Me(e){if(!Number.isFinite(e))return String(e);if(0===e)return"0";const t=Math.abs(e);if(t>=1e11||t<1e-9){const[t,n]=e.toExponential(5).split("e"),r=Number(n);return`${t.replace(/\.?0+$/,"")}E${r<0?"-":"+"}${a(Math.abs(r))}`}return String(Number(e.toPrecision(10)))}var Ae={black:"#000000",blue:"#0000ff",cyan:"#00ffff",green:"#00a650",magenta:"#ff00ff",red:"#ff0000",white:"#ffffff",yellow:"#ffff00"};function Se(e,t){if(!t||"General"===t||"@"===t)return{text:Me(e),color:null};const n=ve(t);let r=n[0],o=!1;e<0&&n.length>1?(r=n[1],o=!0):0===e&&n.length>2&&(r=n[2]);const l=be.exec(r),i=l?Ae[l[1].toLowerCase()]??null:null;if(/general/i.test(xe(r)))return{text:r.replace(/\[[^\]]*\]/g,"").replace(/general/i,Me(o?-e:e)),color:i};if(ye(r))return e<0?{text:Me(e),color:i}:{text:Ne(r,e),color:i};const s=o?Math.abs(e):e,c=function(e,t){const n=e.match(/"[^"]*"|\\.|\[[^\]]*\]|_.|\*.|[#0?][#0?,.]*(?:[eE][+-][0?#]+)?%?|%|./g)??[],r=t*100**(xe(e).match(/%/g)??[]).length;let o="",l=!1;for(const e of n)if('"'===e[0])o+=e.slice(1,-1);else if("\\"===e[0])o+=e.slice(1);else if("["===e[0]){const t=/^\[\$([^-\]]*)/.exec(e);t&&(o+=t[1])}else if("_"===e[0])o+=" ";else if("*"===e[0])o+="";else if(/^[#0?]/.test(e)){const t=e.endsWith("%"),n=t?e.slice(0,-1):e;l||(o+=$e(n,r),l=!0),t&&(o+="%")}else o+=e;return l?o:`${o}`}(r,Math.abs(s)),a=!/[1-9]/.test(c);return{text:!o&&e<0&&!a?`-${c}`:c,color:i}}function Ee(e,t){if(!t||"General"===t||"@"===t)return e;const n=ve(t),r=n.length>=4?n[3]:n[0];return r.includes("@")?r.replace(/"([^"]*)"/g,"$1").replace(/\\(.)/g,"$1").replace(/@/g,e):e}var Fe=/^(-?)\s*([$€£¥])\s*(-?)\s*([\d,]*\.?\d+)$/,Re=/^[+-]?(?:\d{1,3}(?:,\d{3})+|\d+)?(?:\.\d+)?(?:[eE][+-]?\d+)?$/,Te=/^[+-]?0\d/,De=/^[+-]?\d{16,}$/,Ue=/^(\d{4})-(\d{1,2})-(\d{1,2})$/,Oe=/^(\d{1,2})[/.-](\d{1,2})[/.-](\d{2}|\d{4})$/;function Ie(){try{const e=new Intl.DateTimeFormat(void 0).formatToParts(new Date(2e3,11,31));return e.findIndex(e=>"day"===e.type)<e.findIndex(e=>"month"===e.type)}catch{return!0}}function Le(e,t,n){if(t<1||t>12||n<1||n>31)return!1;const r=new Date(Date.UTC(e,t-1,n));return r.getUTCMonth()===t-1&&r.getUTCDate()===n}function Pe(e){const t=e.trim();if(!t||Te.test(t)||De.test(t))return null;const n=Fe.exec(t);if(n){const e=Number(n[4].replace(/,/g,""));if(Number.isNaN(e))return null;return{value:"-"===n[1]||"-"===n[3]?-e:e,kind:"currency",format:`"${n[2]}"#,##0${n[4].includes(".")?".00":""}`}}if(t.endsWith("%")){const e=t.slice(0,-1).trim();if(!e||!Re.test(e))return null;return{value:Number(e.replace(/,/g,""))/100,kind:"percent",format:e.includes(".")?"0.00%":"0%"}}if(/\d/.test(t)&&Re.test(t))return{value:Number(t.replace(/,/g,"")),kind:"number",format:t.includes(",")?t.includes(".")?"#,##0.00":"#,##0":null};const r=Ue.exec(t);if(r&&Le(Number(r[1]),Number(r[2]),Number(r[3])))return{value:ge(Number(r[1]),Number(r[2]),Number(r[3])),kind:"date",format:de.date};const o=Oe.exec(t);if(o){const e=Number(o[1]),t=Number(o[2]),n=2===o[3].length?2e3+Number(o[3]):Number(o[3]),[r,l]=Ie()?[e,t]:[t,e];if(Le(n,l,r))return{value:ge(n,l,r),kind:"date",format:Ie()?"dd/mm/yyyy":"mm/dd/yyyy"}}return null}var ze=class{constructor(e){this.code=e}code;toString(){return this.code}},je=e=>"object"==typeof e&&null!==e&&!(e instanceof ze),Ve=e=>new ze(e),We=Ve("#VALUE!"),He=Ve("#DIV/0!"),Ke=Ve("#NUM!"),Be=Ve("#N/A"),Ge=Ve("#REF!"),Xe=Ve("#NAME?"),Ye=Ve("#CIRC!"),Ze=Ve("#ERROR!"),_e=/^-?(?:0|[1-9]\d{0,14})(?:\.\d+)?(?:[eE][+-]?\d+)?$/;function Je(e){if(""===e)return null;if("'"===e[0])return e.slice(1);if(_e.test(e))return Number(e);const t=e.toUpperCase();return"TRUE"===t||"FALSE"!==t&&e}function Qe(e){return je(e)?0===e.rows||0===e.cols?null:e.at(0,0):e}function qe(e){if(null===e)return 0;if("number"==typeof e)return e;if("boolean"==typeof e)return e?1:0;if(e instanceof ze)return e;if(""===e.trim())return We;const t=Pe(e);return t?t.value:We}function et(e){return null===e?"":"number"==typeof e?Me(e):"boolean"==typeof e?e?"TRUE":"FALSE":e instanceof ze?e.code:e}function tt(e){if(null===e)return!1;if("boolean"==typeof e)return e;if("number"==typeof e)return 0!==e;if(e instanceof ze)return e;const t=e.toUpperCase();return"TRUE"===t||"FALSE"!==t&&We}function nt(e,t){const n=e=>"number"==typeof e?0:"string"==typeof e?1:"boolean"==typeof e?2:3,r=null===e?"string"==typeof t?"":"boolean"!=typeof t&&0:e,o=null===t?"string"==typeof e?"":"boolean"!=typeof e&&0:t,l=n(r),i=n(o);if(l!==i)return l-i;if("number"==typeof r)return r-o;if("string"==typeof r){const e=r.toLowerCase(),t=o.toLowerCase();return e<t?-1:e>t?1:0}return"boolean"==typeof r?Number(r)-Number(o):0}function rt(e,t,n){if(t instanceof ze)return t;if(n instanceof ze)return n;switch(e){case"&":return et(t)+et(n);case"=":return 0===nt(t,n);case"<>":return 0!==nt(t,n);case"<":return nt(t,n)<0;case">":return nt(t,n)>0;case"<=":return nt(t,n)<=0;case">=":return nt(t,n)>=0}const r=qe(t),o=qe(n);if(r instanceof ze)return r;if(o instanceof ze)return o;switch(e){case"+":return r+o;case"-":return r-o;case"*":return r*o;case"/":return 0===o?He:r/o;case"^":{const e=r**o;return Number.isFinite(e)?e:Ke}}return We}function ot(e,t,n){return{rows:e,cols:t,at:n}}function lt(e,t,n){if(!je(e)&&!je(t))return n(e,t);const r=Math.max(je(e)?e.rows:1,je(t)?t.rows:1),o=Math.max(je(e)?e.cols:1,je(t)?t.cols:1),l=(e,t,n)=>{if(!je(e))return e;const r=1===e.rows?0:t,o=1===e.cols?0:n;return r<e.rows&&o<e.cols?e.at(r,o):Be};return ot(r,o,(r,o)=>n(l(e,r,o),l(t,r,o)))}function it(e,t){if(je(e))for(let n=0;n<e.rows;n++)for(let r=0;r<e.cols;r++)t(e.at(n,r),!0);else t(e,!1)}function st(e){const t=[];let n=null;for(const r of e)it(r,(e,r)=>{if(n)return;if(e instanceof ze)return void(n=e);if("number"==typeof e)return void t.push(e);if(r||null===e)return;const o=qe(e);o instanceof ze?n=o:t.push(o)});return n??t}function ct(e){return e.replace(/[.+^${}()|[\]\\]/g,"\\$&")}function at(e){let t="";for(let n=0;n<e.length;n++){const r=e[n];"~"===r&&n+1<e.length?t+=ct(e[++n]):t+="*"===r?"[\\s\\S]*":"?"===r?"[\\s\\S]":ct(r)}return new RegExp(`^${t}$`,"i")}var ut=(e,t)=>{if(void 0===e)return t??We;const n=Qe(e);return null===n&&void 0!==t?t:qe(n)},ft=e=>{if(void 0===e)return We;const t=Qe(e);return t instanceof ze?t:et(t)},ht=e=>t=>{const n=ut(t[0]);if(n instanceof ze)return n;const r=e(n);return Number.isFinite(r)?r:Ke},dt=e=>t=>{const n=st(t);return n instanceof ze?n:e(n)};var mt=e=>t=>{const n=ut(t[0]),r=ut(t[1],0);if(n instanceof ze)return n;if(r instanceof ze)return r;return(n<0?-1:1)*function(e,t,n){const r=10**t;return n(Number((e*r).toPrecision(15)))/r}(Math.abs(n),Math.trunc(r),e)};function pt(e,t){const n=e.length;if(n<(t?2:1))return He;const r=e.reduce((e,t)=>e+t,0)/n;return e.reduce((e,t)=>e+(t-r)**2,0)/(t?n-1:n)}function gt(e){return je(e)?e:ot(1,1,()=>e)}function wt(e,t){const n=t??e[0][0];for(const[t]of e)if(t.rows!==n.rows||t.cols!==n.cols)return We;const r=e.map(([,e])=>function(e){if("string"!=typeof e)return t=>null===e?null===t:null!==t&&0===nt(t,e);const t=/^(<=|>=|<>|=|<|>)?([\s\S]*)$/.exec(e),n=t[1]??"=",r=t[2],o=Pe(r);if(o){const e=o.value;return t=>{const r="number"==typeof t;switch(n){case"=":return r&&t===e;case"<>":return!(r&&t===e);case"<":return r&&t<e;case">":return r&&t>e;case"<=":return r&&t<=e;default:return r&&t>=e}}}if("="===n||"<>"===n){if(""===r)return e=>"="===n?null===e||""===e:null!==e&&""!==e;const e=at(r);return t=>{const r=null!==t&&!(t instanceof ze)&&e.test(et(t));return"="===n?r:!r}}return e=>{if("string"!=typeof e)return!1;const t=nt(e,r);return"<"===n?t<0:">"===n?t>0:"<="===n?t<=0:t>=0}}(e)),o=[];for(let t=0;t<n.rows;t++)for(let l=0;l<n.cols;l++)e.every(([e],n)=>r[n](e.at(t,l)))&&o.push(n.at(t,l));return o}function bt(e){let t=0;for(const n of e){if(n instanceof ze)return n;"number"==typeof n&&(t+=n)}return t}function vt(e){let t=0,n=0;for(const r of e){if(r instanceof ze)return r;"number"==typeof r&&(t+=r,n++)}return n?t/n:He}function xt(e,t){if((e.length-t)%2!=0||e.length-t<2)return We;const n=[];for(let r=t;r<e.length;r+=2){const t=Qe(e[r+1]);if(t instanceof ze)return t;n.push([gt(e[r]),t])}return n}function yt(e,t,n,r=!1){const o=Math.max(t.rows,t.cols),l=e=>t.rows>=t.cols?t.at(e,0):t.at(0,e);if(0===n){const t=r&&"string"==typeof e?at(e):null;for(let n=0;n<o;n++){const r=l(n);if(t?"string"==typeof r&&t.test(r):null!==r&&!(r instanceof ze)&&0===nt(r,e))return n}return-1}let i=-1;for(let t=0;t<o;t++){const r=l(t);if(null===r||r instanceof ze||typeof r!=typeof e)continue;const o=nt(r,e);(1===n?o<=0:o>=0)&&(-1===i||(1===n?nt(r,l(i))>0:nt(r,l(i))<0))&&(i=t)}return i}function Ct(e,t){const n=Qe(e[0]);if(n instanceof ze)return n;if(void 0===e[1])return We;const r=gt(e[1]),o=ut(e[2]);if(o instanceof ze)return o;const l=void 0===e[3]||null===e[3]||tt(Qe(e[3]));if(l instanceof ze)return l;const i=Math.trunc(o)-1,s=t?r.cols:r.rows,c=t?r.rows:r.cols;if(i<0)return We;if(i>=c)return Ge;const a=yt(n,t?ot(1,s,(e,t)=>r.at(0,t)):ot(s,1,e=>r.at(e,0)),l?1:0,!l);return-1===a?Be:t?r.at(i,a):r.at(a,i)}function kt(){const e=/* @__PURE__ */new Date;return ge(e.getFullYear(),e.getMonth()+1,e.getDate())+(3600*e.getHours()+60*e.getMinutes()+e.getSeconds())/86400}var Nt=e=>t=>{const n=ut(t[0]);return n instanceof ze?n:n<0?Ke:e(we(n))};function $t(e,t){const n=we(e),r=12*n.year+(n.month-1)+t;return{year:Math.floor(r/12),month:(r%12+12)%12+1,day:n.day}}function Mt(e,t){return new Date(Date.UTC(e,t,0)).getUTCDate()}function At(e){const t=we(e).weekday;return 0===t||6===t}var St=(e,t)=>{const n=[];for(let r=0;r<t.length;r++){const o=ut(e[r],t[r]);if(o instanceof ze)return o;n.push(o)}return n},Et={SUM:dt(e=>e.reduce((e,t)=>e+t,0)),AVERAGE:dt(e=>e.length?e.reduce((e,t)=>e+t,0)/e.length:He),MIN:dt(e=>e.length?Math.min(...e):0),MAX:dt(e=>e.length?Math.max(...e):0),PRODUCT:dt(e=>e.length?e.reduce((e,t)=>e*t,1):0),MEDIAN:dt(e=>{if(!e.length)return Ke;const t=[...e].sort((e,t)=>e-t),n=Math.floor(t.length/2);return t.length%2?t[n]:(t[n-1]+t[n])/2}),MODE:dt(e=>{const t=/* @__PURE__ */new Map;let n=null,r=1;for(const o of e){const e=(t.get(o)??0)+1;t.set(o,e),e>r&&(r=e,n=o)}return n??Be}),STDEV:dt(e=>{const t=pt(e,!0);return t instanceof ze?t:Math.sqrt(t)}),STDEVP:dt(e=>{const t=pt(e,!1);return t instanceof ze?t:Math.sqrt(t)}),VAR:dt(e=>pt(e,!0)),VARP:dt(e=>pt(e,!1)),COUNT:e=>{let t=0;for(const n of e)it(n,(e,n)=>{"number"==typeof e?t++:n||"boolean"!=typeof e?!n&&"string"==typeof e&&Pe(e)&&t++:t++});return t},COUNTA:e=>{let t=0;for(const n of e)it(n,e=>{null!==e&&t++});return t},COUNTBLANK:e=>{let t=0;for(const n of e)it(n,e=>{null!==e&&""!==e||t++});return t},ABS:ht(Math.abs),INT:ht(Math.floor),TRUNC:mt(Math.floor),ROUND:mt(Math.round),ROUNDUP:mt(Math.ceil),ROUNDDOWN:mt(Math.floor),SIGN:ht(Math.sign),SQRT:ht(Math.sqrt),EXP:ht(Math.exp),LN:ht(Math.log),LOG10:ht(Math.log10),SIN:ht(Math.sin),COS:ht(Math.cos),TAN:ht(Math.tan),LOG:e=>{const t=ut(e[0]),n=ut(e[1],10);if(t instanceof ze)return t;if(n instanceof ze)return n;const r=Math.log(t)/Math.log(n);return Number.isFinite(r)?r:Ke},MOD:e=>{const t=ut(e[0]),n=ut(e[1]);return t instanceof ze?t:n instanceof ze?n:0===n?He:t-n*Math.floor(t/n)},POWER:e=>rt("^",Qe(e[0]??null),Qe(e[1]??null)),PI:()=>Math.PI,RAND:()=>Math.random(),RANDBETWEEN:e=>{const t=ut(e[0]),n=ut(e[1]);if(t instanceof ze)return t;if(n instanceof ze)return n;const r=Math.ceil(t),o=Math.floor(n);return r>o?Ke:r+Math.floor(Math.random()*(o-r+1))},CEILING:e=>{const t=ut(e[0]),n=ut(e[1],1);return t instanceof ze?t:n instanceof ze?n:0===n?0:Math.ceil(Number((t/n).toPrecision(15)))*n},FLOOR:e=>{const t=ut(e[0]),n=ut(e[1],1);return t instanceof ze?t:n instanceof ze?n:0===n?He:Math.floor(Number((t/n).toPrecision(15)))*n},SUMIF:e=>{const t=Qe(e[1]??null);if(t instanceof ze)return t;const n=wt([[gt(e[0]),t]],void 0!==e[2]?gt(e[2]):null);return n instanceof ze?n:bt(n)},SUMIFS:e=>{const t=xt(e,1);if(t instanceof ze)return t;const n=wt(t,gt(e[0]));return n instanceof ze?n:bt(n)},AVERAGEIF:e=>{const t=Qe(e[1]??null);if(t instanceof ze)return t;const n=wt([[gt(e[0]),t]],void 0!==e[2]?gt(e[2]):null);return n instanceof ze?n:vt(n)},AVERAGEIFS:e=>{const t=xt(e,1);if(t instanceof ze)return t;const n=wt(t,gt(e[0]));return n instanceof ze?n:vt(n)},COUNTIF:e=>{const t=Qe(e[1]??null);if(t instanceof ze)return t;const n=wt([[gt(e[0]),t]],null);return n instanceof ze?n:n.length},COUNTIFS:e=>{const t=xt(e,0);if(t instanceof ze)return t;const n=wt(t,null);return n instanceof ze?n:n.length},SUMPRODUCT:e=>{if(!e.length)return We;const t=e.map(gt),{rows:n,cols:r}=t[0];if(t.some(e=>e.rows!==n||e.cols!==r))return We;let o=0;for(let e=0;e<n;e++)for(let n=0;n<r;n++){let r=1;for(const o of t){const l=o.at(e,n);if(l instanceof ze)return l;r*="number"==typeof l?l:"boolean"==typeof l&&1===t.length?Number(l):0}o+=r}return o},LARGE:e=>{const t=st([e[0]??null]),n=ut(e[1]);if(t instanceof ze)return t;if(n instanceof ze)return n;const r=[...t].sort((e,t)=>t-e);return n<1||n>r.length?Ke:r[Math.trunc(n)-1]},SMALL:e=>{const t=st([e[0]??null]),n=ut(e[1]);if(t instanceof ze)return t;if(n instanceof ze)return n;const r=[...t].sort((e,t)=>e-t);return n<1||n>r.length?Ke:r[Math.trunc(n)-1]},RANK:e=>{const t=ut(e[0]),n=st([e[1]??null]),r=ut(e[2],0);return t instanceof ze?t:n instanceof ze?n:r instanceof ze?r:n.includes(t)?1+n.filter(e=>r?e<t:e>t).length:Be},AND:e=>{let t=!1,n=!0,r=null;for(const o of e)it(o,(e,o)=>{if(r)return;if(o&&"string"==typeof e)return;if(null===e)return;const l=tt(e);l instanceof ze?r=l:(t=!0,l||(n=!1))});return r??(t?n:We)},OR:e=>{let t=!1,n=!1,r=null;for(const o of e)it(o,(e,o)=>{if(r)return;if(o&&"string"==typeof e)return;if(null===e)return;const l=tt(e);l instanceof ze?r=l:(t=!0,l&&(n=!0))});return r??(t?n:We)},XOR:e=>{let t=!1,n=null;for(const r of e)it(r,e=>{if(n||null===e)return;const r=tt(e);r instanceof ze?n=r:r&&(t=!t)});return n??t},NOT:e=>{const t=tt(Qe(e[0]??null));return t instanceof ze?t:!t},TRUE:()=>!0,FALSE:()=>!1,CONCAT:e=>{let t="",n=null;for(const r of e)it(r,e=>{e instanceof ze?n??=e:t+=et(e)});return n??t},TEXTJOIN:e=>{const t=ft(e[0]),n=tt(Qe(e[1]??null));if(t instanceof ze)return t;if(n instanceof ze)return n;const r=[];let o=null;for(const t of e.slice(2))it(t,e=>{if(e instanceof ze)return void(o??=e);const t=et(e);n&&""===t||r.push(t)});return o??r.join(t)},LEFT:e=>{const t=ft(e[0]),n=ut(e[1],1);return t instanceof ze?t:n instanceof ze?n:n<0?We:t.slice(0,Math.trunc(n))},RIGHT:e=>{const t=ft(e[0]),n=ut(e[1],1);return t instanceof ze?t:n instanceof ze?n:n<0?We:0===Math.trunc(n)?"":t.slice(-Math.trunc(n))},MID:e=>{const t=ft(e[0]),n=ut(e[1]),r=ut(e[2]);return t instanceof ze?t:n instanceof ze?n:r instanceof ze?r:n<1||r<0?We:t.slice(Math.trunc(n)-1,Math.trunc(n)-1+Math.trunc(r))},LEN:e=>{const t=ft(e[0]);return t instanceof ze?t:t.length},LOWER:e=>{const t=ft(e[0]);return t instanceof ze?t:t.toLowerCase()},UPPER:e=>{const t=ft(e[0]);return t instanceof ze?t:t.toUpperCase()},PROPER:e=>{const t=ft(e[0]);return t instanceof ze?t:t.toLowerCase().replace(/(^|[^\p{L}])(\p{L})/gu,(e,t,n)=>t+n.toUpperCase())},TRIM:e=>{const t=ft(e[0]);return t instanceof ze?t:t.trim().replace(/ +/g," ")},REPT:e=>{const t=ft(e[0]),n=ut(e[1]);return t instanceof ze?t:n instanceof ze?n:n<0||t.length*n>32767?We:t.repeat(Math.trunc(n))},EXACT:e=>{const t=ft(e[0]),n=ft(e[1]);return t instanceof ze?t:n instanceof ze?n:t===n},SUBSTITUTE:e=>{const t=ft(e[0]),n=ft(e[1]),r=ft(e[2]);if(t instanceof ze)return t;if(n instanceof ze)return n;if(r instanceof ze)return r;if(""===n)return t;if(void 0===e[3])return t.split(n).join(r);const o=ut(e[3]);if(o instanceof ze)return o;let l=-1;for(let e=0;e<o;e++)if(l=t.indexOf(n,l+1),-1===l)return t;return t.slice(0,l)+r+t.slice(l+n.length)},REPLACE:e=>{const t=ft(e[0]),n=ut(e[1]),r=ut(e[2]),o=ft(e[3]);return t instanceof ze?t:n instanceof ze?n:r instanceof ze?r:o instanceof ze?o:n<1||r<0?We:t.slice(0,n-1)+o+t.slice(n-1+r)},FIND:e=>{const t=ft(e[0]),n=ft(e[1]),r=ut(e[2],1);if(t instanceof ze)return t;if(n instanceof ze)return n;if(r instanceof ze)return r;const o=n.indexOf(t,r-1);return-1===o?We:o+1},SEARCH:e=>{const t=ft(e[0]),n=ft(e[1]),r=ut(e[2],1);if(t instanceof ze)return t;if(n instanceof ze)return n;if(r instanceof ze)return r;const o=new RegExp(at(t).source.slice(1,-1),"i").exec(n.slice(r-1));return o?o.index+r:We},TEXT:e=>{const t=Qe(e[0]??null),n=ft(e[1]);if(t instanceof ze)return t;if(n instanceof ze)return n;const r="string"==typeof t?Pe(t)?.value??null:null===t?0:"boolean"==typeof t?null:t;return null===r?Ee(et(t),n):Se(r,n).text},VALUE:e=>{const t=Qe(e[0]??null);return t instanceof ze||"number"==typeof t?t:Pe(et(t))?.value??We},VLOOKUP:e=>Ct(e,!1),HLOOKUP:e=>Ct(e,!0),XLOOKUP:e=>{const t=Qe(e[0]??null);if(t instanceof ze)return t;if(void 0===e[1]||void 0===e[2])return We;const n=gt(e[1]),r=gt(e[2]),o=ut(e[4],0);if(o instanceof ze)return o;const l=yt(t,n,1===o?-1:-1===o?1:0,2===o);return-1===l?void 0!==e[3]&&null!==Qe(e[3])?Qe(e[3]):Be:n.rows>=n.cols?r.at(l,0):r.at(0,l)},MATCH:e=>{const t=Qe(e[0]??null);if(t instanceof ze)return t;if(void 0===e[1])return We;const n=gt(e[1]),r=ut(e[2],1);if(r instanceof ze)return r;if(n.rows>1&&n.cols>1)return Be;const o=yt(t,n,0===r?0:r<0?-1:1,0===r);return-1===o?Be:o+1},INDEX:e=>{if(void 0===e[0])return We;const t=gt(e[0]),n=ut(e[1],0),r=ut(e[2],1===t.rows&&void 0===e[2]?0:1);if(n instanceof ze)return n;if(r instanceof ze)return r;const[o,l]=1===t.rows&&void 0===e[2]?[1,n]:[n,r];return o<0||l<0||o>t.rows||l>t.cols?Ge:0===o?ot(t.rows,1,e=>t.at(e,Math.max(l,1)-1)):0===l?ot(1,t.cols,(e,n)=>t.at(o-1,n)):t.at(Math.trunc(o)-1,Math.trunc(l)-1)},ROWS:e=>void 0===e[0]?We:gt(e[0]).rows,COLUMNS:e=>void 0===e[0]?We:gt(e[0]).cols,TODAY:()=>Math.floor(kt()),NOW:()=>kt(),DATE:e=>{const t=ut(e[0]),n=ut(e[1]),r=ut(e[2]);if(t instanceof ze)return t;if(n instanceof ze)return n;if(r instanceof ze)return r;const o=t<1900?t+1900:t;return ge(o,1,1)+Math.round((Date.UTC(o,n-1,r)-Date.UTC(o,0,1))/864e5)},TIME:e=>{const t=ut(e[0]),n=ut(e[1]),r=ut(e[2]);return t instanceof ze?t:n instanceof ze?n:r instanceof ze?r:(3600*t+60*n+r)/86400%1},YEAR:Nt(e=>e.year),MONTH:Nt(e=>e.month),DAY:Nt(e=>e.day),HOUR:Nt(e=>e.hours),MINUTE:Nt(e=>e.minutes),SECOND:Nt(e=>e.seconds),WEEKDAY:e=>{const t=ut(e[0]),n=ut(e[1],1);if(t instanceof ze)return t;if(n instanceof ze)return n;const r=we(t).weekday;return 1===n?r+1:2===n?(r+6)%7+1:3===n?(r+6)%7:Ke},EDATE:e=>{const t=ut(e[0]),n=ut(e[1]);if(t instanceof ze)return t;if(n instanceof ze)return n;const{year:r,month:o,day:l}=$t(t,Math.trunc(n));return ge(r,o,Math.min(l,Mt(r,o)))},EOMONTH:e=>{const t=ut(e[0]),n=ut(e[1]);if(t instanceof ze)return t;if(n instanceof ze)return n;const{year:r,month:o}=$t(t,Math.trunc(n));return ge(r,o,Mt(r,o))},DAYS:e=>{const t=ut(e[0]),n=ut(e[1]);return t instanceof ze?t:n instanceof ze?n:Math.trunc(t)-Math.trunc(n)},DATEDIF:e=>{const t=ut(e[0]),n=ut(e[1]),r=ft(e[2]);if(t instanceof ze)return t;if(n instanceof ze)return n;if(r instanceof ze)return r;if(t>n)return Ke;const o=we(t),l=we(n),i=12*(l.year-o.year)+(l.month-o.month)-(l.day<o.day?1:0);switch(r.toUpperCase()){case"D":return Math.trunc(n)-Math.trunc(t);case"M":return i;case"Y":return Math.floor(i/12);default:return Ke}},NETWORKDAYS:e=>{const t=ut(e[0]),n=ut(e[1]);if(t instanceof ze)return t;if(n instanceof ze)return n;const r=/* @__PURE__ */new Set;void 0!==e[2]&&it(e[2],e=>{"number"==typeof e&&r.add(Math.trunc(e))});const o=Math.trunc(Math.min(t,n)),l=Math.trunc(Math.max(t,n));if(l-o>366e3)return Ke;let i=0;for(let e=o;e<=l;e++)At(e)||r.has(e)||i++;return t<=n?i:-i},ISBLANK:e=>null===Qe(e[0]??null),ISNUMBER:e=>"number"==typeof Qe(e[0]??null),ISTEXT:e=>"string"==typeof Qe(e[0]??null),ISLOGICAL:e=>"boolean"==typeof Qe(e[0]??null),ISERROR:e=>Qe(e[0]??null)instanceof ze,ISNA:e=>{const t=Qe(e[0]??null);return t instanceof ze&&"#N/A"===t.code},N:e=>{const t=Qe(e[0]??null);return t instanceof ze||"number"==typeof t?t:"boolean"==typeof t?Number(t):0},NA:()=>Be,PMT:e=>{const t=St(e,[void 0,void 0,void 0,0,0]);return t instanceof ze?t:0===t[1]?Ke:function(e,t,n,r,o){if(0===e)return-(n+r)/t;const l=(1+e)**t;return-e*(n*l+r)/((l-1)*(1+e*o))}(t[0],t[1],t[2],t[3],t[4])},FV:e=>{const t=St(e,[void 0,void 0,void 0,0,0]);if(t instanceof ze)return t;const[n,r,o,l,i]=t;if(0===n)return-(l+o*r);const s=(1+n)**r;return-(l*s+o*(1+n*i)*(s-1)/n)},PV:e=>{const t=St(e,[void 0,void 0,void 0,0,0]);if(t instanceof ze)return t;const[n,r,o,l,i]=t;if(0===n)return-(l+o*r);const s=(1+n)**r;return-(l+o*(1+n*i)*(s-1)/n)/s},NPV:e=>{const t=ut(e[0]),n=st(e.slice(1));return t instanceof ze?t:n instanceof ze?n:n.reduce((e,n,r)=>e+n/(1+t)**(r+1),0)}};Et.CONCATENATE=Et.CONCAT,Et["STDEV.S"]=Et.STDEV,Et["STDEV.P"]=Et.STDEVP,Et["VAR.S"]=Et.VAR,Et["VAR.P"]=Et.VARP,Et["CEILING.MATH"]=Et.CEILING,Et["FLOOR.MATH"]=Et.FLOOR,Et["MODE.SNGL"]=Et.MODE,Et["RANK.EQ"]=Et.RANK;var Ft={IF:(e,t)=>{if(e.length<2)return We;const n=tt(Qe(t(e[0])));return n instanceof ze?n:n?t(e[1]):e.length>2&&t(e[2])},IFS:(e,t)=>{if(e.length<2||e.length%2)return We;for(let n=0;n<e.length;n+=2){const r=tt(Qe(t(e[n])));if(r instanceof ze)return r;if(r)return t(e[n+1])}return Be},IFERROR:(e,t)=>{if(e.length<1)return We;const n=Qe(t(e[0]));return n instanceof ze?e[1]?t(e[1]):"":n},IFNA:(e,t)=>{if(e.length<1)return We;const n=Qe(t(e[0]));return n instanceof ze&&"#N/A"===n.code?e[1]?t(e[1]):"":n},SWITCH:(e,t)=>{if(e.length<3)return We;const n=Qe(t(e[0]));if(n instanceof ze)return n;let r=1;for(;r+1<e.length;r+=2){const o=Qe(t(e[r]));if(o instanceof ze)return o;if(0===nt(n,o))return t(e[r+1])}return r<e.length?t(e[r]):Be},CHOOSE:(e,t)=>{if(e.length<2)return We;const n=qe(Qe(t(e[0])));if(n instanceof ze)return n;const r=Math.trunc(n);return r<1||r>=e.length?We:t(e[r])},ROW:(e,t,n)=>e.length?"ref"===e[0].kind&&null!==e[0].ref.a.row?e[0].ref.a.row+1:We:n.row+1,COLUMN:(e,t,n)=>e.length?"ref"===e[0].kind&&null!==e[0].ref.a.col?e[0].ref.a.col+1:We:n.col+1},Rt=[.../* @__PURE__ */new Set([...Object.keys(Et),...Object.keys(Ft)])].filter(e=>"TRUE"!==e&&"FALSE"!==e).sort();function Tt(e){const t=e.map(()=>/* @__PURE__ */new Map),n=e.map(()=>/* @__PURE__ */new Set),r=new Map(e.map((e,t)=>[e.name.toLowerCase(),t]));let o=0;const l=(r,l,i)=>{const c=e[r]?.cells[l]?.[i];if(void 0===c||""===c)return null;if(!se(c))return Je(c);const a=((e,t)=>2e4*e+t)(l,i),u=t[r].get(a);if(void 0!==u)return u;if(n[r].has(a))return Ye;let f;n[r].add(a),o++;try{const e=s(function(e){const t=ie.get(e);if(t){if(t instanceof B)throw t;return t}let n;try{const{tokens:t,complete:r}=re(e.slice(1));if(!r)throw new B("Unreadable text");n=new le(t).run()}catch(e){if(!(e instanceof B))throw e;n=e}if(ie.size>=2e4&&ie.clear(),ie.set(e,n),n instanceof B)throw n;return n}(c),{sheet:r,row:l,col:i});f=Qe(e),null===f&&(f=0)}catch(e){if(!(e instanceof B)){if(!(e instanceof RangeError)||o>1)throw e;return Ye}f=Ze}finally{o--,n[r].delete(a)}return t[r].set(a,f),f},i=(t,n)=>{let o=n.sheet;if(null!==t.sheet){const e=r.get(t.sheet.toLowerCase());if(void 0===e)return Ge;o=e}const i=t.b??t.a;if(null===t.b)return l(o,t.a.row,t.a.col);const s=Math.min(t.a.row??0,i.row??0),c=Math.min(t.a.col??0,i.col??0),a=null===t.a.row?(t=>e[t].cells.length)(o)-1:Math.max(t.a.row,i.row),u=null===t.a.col?(t=>e[t].cells.reduce((e,t)=>Math.max(e,t.length),0))(o)-1:Math.max(t.a.col,i.col);return ot(Math.max(0,a-s+1),Math.max(0,u-c+1),(e,t)=>l(o,s+e,c+t))},s=(e,t)=>{switch(e.kind){case"num":case"str":case"bool":return e.value;case"err":return Ve(e.value);case"empty":return null;case"ref":return i(e.ref,t);case"unary":return lt(s(e.arg,t),null,t=>{const n=t instanceof ze?t:qe(t);return n instanceof ze?n:"-"===e.op?-n:n});case"percent":return lt(s(e.arg,t),100,(e,t)=>rt("/",e,t));case"binary":return lt(s(e.left,t),s(e.right,t),(t,n)=>rt(e.op,t,n));case"call":{const n=Ft[e.name];if(n)return n(e.args,e=>s(e,t),t);const r=Et[e.name];return r?r(e.args.map(e=>s(e,t)),t):Xe}}};let c=!1;return{value:(t,n,r)=>e[t]?(c||(c=!0,e.forEach((e,t)=>{e.cells.forEach((e,n)=>e.forEach((e,r)=>{se(e)&&l(t,n,r)}));for(let n=e.cells.length-1;n>=0;n--){const r=e.cells[n];for(let e=r.length-1;e>=0;e--)se(r[e])&&l(t,n,e)}})),l(t,n,r)):null}}var Dt=100,Ut=10;function Ot(e,t=[]){return{id:crypto.randomUUID(),name:e,rowCount:Math.max(1e3,t.length+100),colCount:Math.max(26,t.reduce((e,t)=>Math.max(e,t.length),0)),cells:t,formats:{},colWidths:{},rowHeights:{},hiddenRows:[],hiddenCols:[],merges:[],frozenRows:0,frozenCols:0,filter:null}}var It=(e,t)=>`${e}:${t}`,Lt=(e,t,n)=>e.cells[t]?.[n]??"";function Pt(e,t){const n=new Set(e.map(e=>e.name.toLowerCase()));for(let r=e.length+1;;r++){const e=`${t} ${r}`;if(!n.has(e.toLowerCase()))return e}}function zt(e){return Tt(e)}function jt(e){let t=0,n=!1;for(const r of e)'"'===r?n=!n:n||"("!==r?n||")"!==r||t--:t++;return!n&&t>0?e+")".repeat(t):e}function Vt(e,t){if(se(e))return{raw:jt(e),numFmt:null};if(""===e||"'"===e[0])return{raw:e,numFmt:null};if("@"===t?.numFmt)return{raw:`'${e}`,numFmt:null};const n=Pe(e);return n?{raw:String(n.value),numFmt:n.format}:{raw:e,numFmt:null}}function Wt(e,t){if(se(e)||""===e)return e;const n=Je(e);if("number"!=typeof n||!t?.numFmt)return e;if(ye(t.numFmt)){const e=we(n),t=`${e.year}-${a(e.month)}-${a(e.day)}`;return Number.isInteger(n)?t:`${t} ${a(e.hours)}:${a(e.minutes)}:${a(e.seconds)}`}return/%/.test(t.numFmt)?`${Me(100*n)}%`:e}var Ht={text:"",color:null,align:"left",error:!1};function Kt(e,t,n,r,o){const l=Lt(e,r,o);return""===l?Ht:function(e,t,n){if(null===e)return Ht;if(e instanceof ze)return{text:e.code,color:null,align:"center",error:!0};if("boolean"==typeof e)return{text:e?"TRUE":"FALSE",color:null,align:"center",error:!1};const r=n?.numFmt;if("number"==typeof e){if(!(r&&"General"!==r||se(t)))return{text:t,color:null,align:"right",error:!1};const{text:n,color:o}=Se(e,r??"General");return{text:n,color:o,align:"right",error:!1}}return{text:r?Ee(e,r):e,color:null,align:"left",error:!1}}(n.value(t,r,o),l,e.formats[It(r,o)])}function Bt(e){let t=-1,n=-1;return e.cells.forEach((e,r)=>{for(let o=e.length-1;o>=0;o--)if(""!==e[o]){t=Math.max(t,r),n=Math.max(n,o);break}}),t<0?null:{row:t,col:n}}function Gt(e,t){if(!t.length)return e;const n=[...e.cells],r=/* @__PURE__ */new Set;let o=e.rowCount,l=e.colCount;for(const{row:e,col:i,raw:s}of t)if(""!==s||""!==(n[e]?.[i]??"")){for(;n.length<=e;)n.push([]);for(r.has(e)||(n[e]=[...n[e]],r.add(e));n[e].length<=i;)n[e].push("");n[e][i]=s,o=Math.max(o,e+1),l=Math.max(l,i+1)}return{...e,cells:n,rowCount:o,colCount:l}}function Xt(e,t,n,r){const o=It(t,n),l=e.formats[o],{raw:i,numFmt:s}=Vt(r,l),c=Gt(e,[{row:t,col:n,raw:i}]);return!s||l?.numFmt&&"General"!==l.numFmt?c:{...c,formats:{...c.formats,[o]:{...l,numFmt:s}}}}function Yt(e,t){for(let n=e.r1;n<=e.r2;n++)for(let r=e.c1;r<=e.c2;r++)t(n,r)}function Zt(e,t){const n=[];return Yt(function(e,t){const n=Math.min(t.r2,e.cells.length-1);return{...t,r2:Math.max(n,t.r1-1)}}(e,t),(t,r)=>{""!==Lt(e,t,r)&&n.push({row:t,col:r,raw:""})}),Gt(e,n)}function _t(e,t,n){const r={...e.formats},o=(e,t)=>{const o=It(e,t),l=n(r[o]??{});Object.keys(l).length?r[o]=l:delete r[o]};return Yt((t.r2-t.r1+1)*(t.c2-t.c1+1)>2e5?{...t,r2:Math.min(t.r2,Math.max(e.cells.length,2e3))}:t,o),{...e,formats:r}}function Jt(e,t,n){const r={...e};return void 0===n||!1===n?delete r[t]:r[t]=n,r}function Qt(e,t,n){const r={...e.formats};return Yt(t,(e,o)=>{const l=It(e,o),i=r[l]??{},s=((e,n)=>({...e===t.r1?{top:!0}:{},...e===t.r2?{bottom:!0}:{},...n===t.c1?{left:!0}:{},...n===t.c2?{right:!0}:{}}))(e,o);let c;switch(n){case"none":c={};break;case"all":c={top:!0,right:!0,bottom:!0,left:!0};break;case"outer":c={...i.border,...s};break;default:c=s[n]?{...i.border,[n]:!0}:i.border??{}}const a=Jt(i,"border",Object.keys(c).length?c:void 0);Object.keys(a).length?r[l]=a:delete r[l]}),{...e,formats:r}}function qt(e,t,n){return e.merges.find(e=>H(e,t,n))??null}function en(e,t){let n=t;for(let t=!0;t;){t=!1;for(const r of e.merges){if(!K(n,r))continue;const e={r1:Math.min(n.r1,r.r1),c1:Math.min(n.c1,r.c1),r2:Math.max(n.r2,r.r2),c2:Math.max(n.c2,r.c2)};e.r1===n.r1&&e.c1===n.c1&&e.r2===n.r2&&e.c2===n.c2||(n=e,t=!0)}}return n}function tn(e,t,n){const r=e[t].name.toLowerCase();return e.map((e,o)=>{let l=!1;const i=e.cells.map(e=>{let i=!1;const s=e.map(e=>{if(!se(e))return e;const l=ue(e,e=>(null===e.sheet?o===t:e.sheet.toLowerCase()===r)?n(e):e);return l!==e&&(i=!0),l});return i&&(l=!0),i?s:e});return l?{...e,cells:i}:e})}function nn(e,t,n){if(n>0)return e>=t?e+n:e;const r=t-n;return e>=t&&e<r?null:e>=r?e+n:e}function rn(e,t,n){const r={};for(const[o,l]of Object.entries(e)){const e=nn(Number(o),t,n);null!==e&&(r[e]=l)}return r}function on(e,t,n,r){const[o,l]="row"===t?[e.r1,e.r2]:[e.c1,e.c2];let i,s;if(r>0)i=o>=n?o+r:o,s=l>=n?l+r:l;else{const e=n-r;if(i=o<n?o:o>=e?o+r:n,s=l<n?l:l>=e?l+r:n-1,i>s)return null}return"row"===t?{...e,r1:i,r2:s}:{...e,c1:i,c2:s}}function ln(e,t,n,r,o){const l=tn(e,t,e=>function(e,t,n,r){const o=e=>"row"===t?e.row:e.col,l=(e,n)=>"row"===t?{...e,row:n}:{...e,col:n},i=o(e.a);if(null===i)return e;if(r>0){const t=e=>e>=n?e+r:e;return{...e,a:l(e.a,t(i)),b:e.b?l(e.b,t(o(e.b))):null}}const s=-r,c=n+s;if(!e.b)return i>=n&&i<c?null:{...e,a:l(e.a,i>=c?i-s:i)};const a=Math.min(i,o(e.b)),u=Math.max(i,o(e.b)),f=a<n?a:a>=c?a-s:n,h=u<n?u:u>=c?u-s:n-1;return f>h?null:{...e,a:l(e.a,f),b:l(e.b,h)}}(e,n,r,o));return l.map((e,l)=>{if(l!==t)return e;const i="row"===n?(()=>{const t=[...e.cells];return o>0?t.length>r&&t.splice(r,0,...Array.from({length:o},()=>[])):t.splice(r,-o),t})():e.cells.map(e=>{if(e.length<=r)return e;const t=[...e];return o>0?t.splice(r,0,...Array(o).fill("")):t.splice(r,-o),t}),s={};for(const[t,l]of Object.entries(e.formats)){const[e,i]=t.split(":").map(Number),c=nn("row"===n?e:i,r,o);null!==c&&(s["row"===n?It(c,i):It(e,c)]=l)}const c=e.merges.map(e=>on(e,n,r,o)).filter(e=>null!==e&&(e.r1!==e.r2||e.c1!==e.c2)),a=e=>e.map(e=>nn(e,r,o)).filter(e=>null!==e),u=e.filter?on(e.filter.range,n,r,o):null,f=e.filter&&u?{range:u,excluded:"col"===n?rn(e.filter.excluded,r,o):e.filter.excluded}:null,h=e=>r<e?o>0?e+o:Math.max(r,e+o):e;return{...e,cells:i,formats:s,merges:c,filter:f,rowCount:"row"===n?Math.max(1,e.rowCount+o):e.rowCount,colCount:"col"===n?Math.max(1,e.colCount+o):e.colCount,rowHeights:"row"===n?rn(e.rowHeights,r,o):e.rowHeights,colWidths:"col"===n?rn(e.colWidths,r,o):e.colWidths,hiddenRows:"row"===n?a(e.hiddenRows):e.hiddenRows,hiddenCols:"col"===n?a(e.hiddenCols):e.hiddenCols,frozenRows:"row"===n?h(e.frozenRows):e.frozenRows,frozenCols:"col"===n?h(e.frozenCols):e.frozenCols}})}function sn(e,t,n,r,o,l){const i=[];for(let e=r.r1;e<=r.r2;e++)i.push(e);const s=new Map(i.map(e=>[e,n.value(t,e,o)])),c=[...i].sort((e,t)=>{const n=s.get(e),r=s.get(t),o=null===n||""===n,i=null===r||""===r;if(o||i)return o===i?e-t:o?1:-1;if(n instanceof ze||r instanceof ze)return n instanceof ze?1:-1;const c=nt(n,r);return(l?c:-c)||e-t}),a=[],u={...e.formats},f=/* @__PURE__ */new Map;return Yt(r,(t,n)=>f.set(It(t,n),e.formats[It(t,n)])),c.forEach((t,n)=>{const o=r.r1+n;for(let n=r.c1;n<=r.c2;n++){const r=Lt(e,t,n);a.push({row:o,col:n,raw:se(r)?fe(r,o-t,0):r});const l=f.get(It(t,n));l?u[It(o,n)]=l:delete u[It(o,n)]}}),{...Gt(e,a),formats:u}}function cn(e,t){if(t.r1!==t.r2||t.c1!==t.c2)return t;const n=(t,n,r)=>{for(let o=n;o<=r;o++)if(""!==Lt(e,t,o))return!1;return!0},r=(t,n,r)=>{for(let o=n;o<=r;o++)if(""!==Lt(e,o,t))return!1;return!0};let{r1:o,r2:l,c1:i,c2:s}=t;for(let t=!0;t;)t=!1,o>0&&!n(o-1,i,s)&&(o--,t=!0),l<e.rowCount-1&&!n(l+1,i,s)&&(l++,t=!0),i>0&&!r(i-1,o,l)&&(i--,t=!0),s<e.colCount-1&&!r(s+1,o,l)&&(s++,t=!0);return{r1:o,c1:i,r2:l,c2:s}}var an=/^(.*?)(\d+)$/;function un(e,t){const n=e.length,r=e.map(e=>{if(se(e))return null;const t=Je(e);return"number"==typeof t?t:null});if(n>=2&&r.every(e=>null!==e)){const e=(r[n-1]-r[0])/(n-1);if(r.every((t,n)=>Math.abs(t-(r[0]+e*n))<1e-9))return String(Number((r[0]+e*t).toPrecision(15)))}const o=(t%n+n)%n,l=e[o];if("number"==typeof r[o]||se(l)||""===l||"'"===l[0])return l;const i=an.exec(l);if(i&&i[1]&&1===n){const e=Number(i[2])+t;if(e>=0)return i[1]+String(e).padStart(i[2].length,"0")}return l}function fn(e,t,n){const r=[],o={...e.formats},l=t.r2-t.r1+1,i=t.c2-t.c1+1,s=n.r1<t.r1||n.r2>t.r2;return Yt(n,(n,c)=>{if(H(t,n,c))return;let a,u,f;if(s){const r=Array.from({length:l},(n,r)=>Lt(e,t.r1+r,c)),o=n-t.r1;a=t.r1+(o%l+l)%l,u=c;const i=Lt(e,a,u);f=se(i)?fe(i,n-a,0):un(r,o)}else{const r=Array.from({length:i},(r,o)=>Lt(e,n,t.c1+o)),o=c-t.c1;a=n,u=t.c1+(o%i+i)%i;const l=Lt(e,a,u);f=se(l)?fe(l,0,c-u):un(r,o)}r.push({row:n,col:c,raw:f});const h=e.formats[It(a,u)];h?o[It(n,c)]=h:delete o[It(n,c)]}),{...Gt(e,r),formats:o}}function hn(e,t,n,r){const o=t.cells.length,l=t.cells[0]?.length??0,i=n.r2-n.r1+1,s=n.c2-n.c1+1,c=i%o===0&&s%l===0,a=c?i:o,u=c?s:l,f=[],h={...e.formats};for(let e=0;e<a;e++)for(let i=0;i<u;i++){const s=t.cells[e%o][i%l],c=n.r1+e,a=n.c1+i;if("formats"!==r){let n=s.raw;"values"===r?(n=s.value instanceof ze?s.value.code:null===s.value?"":et(s.value),"number"==typeof s.value&&(n=String(s.value))):se(n)&&!t.cut&&(n=fe(n,c-(t.range.r1+e%o),a-(t.range.c1+i%l))),f.push({row:c,col:a,raw:n})}"values"!==r&&(s.format?h[It(c,a)]=s.format:delete h[It(c,a)])}return{sheet:{...Gt(e,f),formats:h},range:{r1:n.r1,c1:n.c1,r2:n.r1+a-1,c2:n.c1+u-1}}}function dn(e,t){const n=t.matchCase?e:e.toLowerCase();return e=>{const r=t.matchCase?e:e.toLowerCase();return t.wholeCell?r===n:r.includes(n)}}function mn(e,t,n,r){if(se(e)&&!r.inFormulas)return e;if(r.wholeCell)return dn(t,r)(e)?n:e;const o=r.matchCase?"g":"gi";return e.replace(new RegExp(t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),o),()=>n)}function pn(e){const t=e.replace(/^/,""),n=t.slice(0,t.search(/\r?\n|$/)),r=n.includes("\t")&&!n.includes(",")||n.includes("\t")?"\t":",",o=[];let l=[],i="",s=!1,c=0;for(;c<t.length;){const e=t[c];if(s){if('"'===e){if('"'===t[c+1]){i+='"',c+=2;continue}s=!1,c++;continue}i+=e,c++}else'"'!==e||""!==i?e!==r?("\r"===e&&"\n"===t[c+1]&&c++,"\n"!==e&&"\r"!==e?(i+=e,c++):(l.push(i),o.push(l),l=[],i="",c++)):(l.push(i),i="",c++):(s=!0,c++)}return(""!==i||l.length)&&(l.push(i),o.push(l)),o.filter(e=>e.some(e=>""!==e))}function gn(e){return/[",\r\n]/.test(e)?`"${e.replace(/"/g,'""')}"`:e}function wn(e,t){const n=Ot(e),r={},o=t.map((e,t)=>e.map((e,n)=>{const{raw:o,numFmt:l}=Vt(e);return l&&(r[It(t,n)]={numFmt:l}),o}));return{...n,cells:o,formats:r,rowCount:Math.max(n.rowCount,o.length+100),colCount:Math.max(n.colCount,o.reduce((e,t)=>Math.max(e,t.length),0))}}var bn,vn=46,xn=24,yn=4/3;function Cn(e,t){const n=new Float64Array(e+1);for(let r=0;r<e;r++)n[r+1]=n[r]+t(r);return n}function kn(e,t){let n=0,r=e.length-2;for(;n<r;){const o=n+r+1>>1;e[o]<=t?n=o:r=o-1}return n}function Nn(e,t){if(void 0===bn)try{bn=document.createElement("canvas").getContext("2d")}catch{bn=null}const n=(t?.fontSize??Ut)*yn;return bn?(bn.font=`${t?.italic?"italic ":""}${t?.bold?"bold ":""}${n}px system-ui, sans-serif`,bn.measureText(e).width):e.length*n*.55}var $n=M(function({sheet:e,sheetIndex:t,evaluator:n,filterHidden:r,selection:o,showGridlines:l,showFormulas:i,clipRange:s,highlights:c,pointing:a,onSelect:u,onPoint:f,onEdit:h,onFill:d,onResizeCol:m,onResizeRow:p,onAutoFitCol:g,onAutoFitRow:w,onHeaderMenu:b,onFilterButton:v,renderEditor:x,onKeyDown:y,onCopy:k,onCut:N,onPaste:M},O){const I=$().spreadsheet,L=A(null),[z,j]=S({x:0,y:0}),[W,H]=S({width:1e3,height:600}),[K,B]=S(null),[G,X]=S(null),[Y,Z]=S(null);E(()=>{const e=L.current;if(!e)return;const t=()=>{e.clientWidth&&e.clientHeight&&H({width:e.clientWidth,height:e.clientHeight})};if(t(),"undefined"==typeof ResizeObserver)return;const n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[]);const _=F(()=>{const r=/* @__PURE__ */new Map;for(const[o,l]of Object.entries(e.formats)){if(!l.fontSize&&!l.wrap)continue;const[i,s]=o.split(":").map(Number);if(void 0!==e.rowHeights[i])continue;const c=(l.fontSize??Ut)*yn*1.4;let a=1;if(l.wrap&&""!==Lt(e,i,s)){const r=(e.colWidths[s]??Dt)-8;a=Kt(e,t,n,i,s).text.split("\n").reduce((e,t)=>e+Math.max(1,Math.ceil(Nn(t,l)/Math.max(r,1))),0)}const u=Math.ceil(c*a+6);u>(r.get(i)??24)&&r.set(i,u)}return r},[e,t,n]),J=F(()=>new Set(e.hiddenRows),[e.hiddenRows]),Q=F(()=>new Set(e.hiddenCols),[e.hiddenCols]),q=F(()=>Cn(e.rowCount,t=>J.has(t)||r.has(t)?0:G?.row===t?G.height:e.rowHeights[t]??_.get(t)??24),[e.rowCount,e.rowHeights,J,r,_,G]),ee=F(()=>Cn(e.colCount,t=>Q.has(t)?0:K?.col===t?K.width:e.colWidths[t]??Dt),[e.colCount,e.colWidths,Q,K]),te=Math.min(e.frozenRows,e.rowCount),ne=Math.min(e.frozenCols,e.colCount),re=q[te],oe=ee[ne],le=ee[e.colCount],ie=q[e.rowCount],se=R(e=>vn+ee[e]-(e>=ne?z.x:0),[ee,ne,z.x]),ce=R(e=>xn+q[e]-(e>=te?z.y:0),[q,te,z.y]),ae=R(e=>{const t=L.current;if(!t)return;const n=t.clientWidth-vn-oe,r=t.clientHeight-xn-re;let{scrollLeft:o,scrollTop:l}=t;if(e.col>=ne){const t=ee[e.col]-oe,r=ee[e.col+1]-oe;t<o?o=t:r>o+n&&(o=r-n)}if(e.row>=te){const t=q[e.row]-re,n=q[e.row+1]-re;t<l?l=t:n>l+r&&(l=n-r)}t.scrollTo(o,l)},[ee,q,oe,re,ne,te]);T(O,()=>({focus:()=>L.current?.focus({preventScroll:!0}),scrollTo:ae,measureColumn:r=>{let o=0;for(let l=0;l<e.cells.length;l++){if(""===Lt(e,l,r))continue;const i=e.formats[It(l,r)];o=Math.max(o,Nn(Kt(e,t,n,l,r).text,i))}return Math.ceil(o+8+4)}}),[ae,e,t,n]);const ue=R((e,t)=>{const n=L.current.getBoundingClientRect(),r=e-n.left-vn,o=t-n.top-xn,l=r<oe?r:r+L.current.scrollLeft,i=o<re?o:o+L.current.scrollTop;return{row:kn(q,Math.max(0,Math.min(i,ie-1))),col:kn(ee,Math.max(0,Math.min(l,le-1)))}},[ee,q,oe,re,le,ie]),fe=R((e,t)=>{const n=L.current,r=t=>{const r=n.getBoundingClientRect();t.clientY>r.bottom-4?n.scrollBy(0,24):t.clientY<r.top+xn&&n.scrollBy(0,-24),t.clientX>r.right-4?n.scrollBy(24,0):t.clientX<r.left+vn&&n.scrollBy(-24,0),e(t)},o=e=>{window.removeEventListener("pointermove",r),window.removeEventListener("pointerup",o),window.removeEventListener("pointercancel",o),t(e)};window.addEventListener("pointermove",r),window.addEventListener("pointerup",o),window.addEventListener("pointercancel",o)},[]),he=R((t,n)=>{const r=en(e,V(t,n));u({active:t,range:r})},[e,u]),de=Math.max(0,W.width-vn-oe),me=Math.max(0,W.height-xn-re),pe=kn(q,re+z.y),ge=kn(ee,oe+z.x),we=Math.min(e.rowCount-1,kn(q,re+z.y+me)),be=Math.min(e.colCount-1,kn(ee,oe+z.x+de)),ve=(r,o,s,c)=>{const a=[],u=[],f=/* @__PURE__ */new Set,h=(r,o,s)=>{const c=It(r,o);if(f.has(c))return;f.add(c);const h=s?s.r2:r,d=s?s.c2:o,m=ee[o],p=q[r],g=ee[d+1]-m,w=q[h+1]-p;if(g<=0||w<=0)return;const b=e.formats[c],v=Lt(e,r,o),x=i&&"="===v[0]?{text:v,color:null,align:"left",error:!1}:Kt(e,t,n,r,o),y=b?.border,C="1px solid var(--ink)",k=!!b?.fill||!!y||!!s,N=l?"1px solid var(--line-subtle)":"1px solid transparent",$={position:"absolute",left:m,top:p,width:g,height:w,boxSizing:"border-box",borderRight:y?.right?C:N,borderBottom:y?.bottom?C:N,borderTop:y?.top?C:void 0,borderLeft:y?.left?C:void 0,background:b?.fill??(s?"var(--surface)":void 0)};if((k||l)&&a.push(/* @__PURE__ */D("div",{style:$},`b${c}`)),!x.text)return;const M=b?.align??x.align;let A=x.text;"string"==typeof A&&!x.error&&"right"===x.align&&!b?.wrap&&Nn(A,b)>g-4&&(A="#".repeat(Math.max(1,Math.floor(g/8))));let S=g,E=0;if(!s&&!b?.wrap&&"left"===x.align&&Nn(A,b)>g-8){if("left"===M||"center"===M)for(let t=o+1;t<=Math.min(o+40,e.colCount-1)&&(""===Lt(e,r,t)&&!qt(e,r,t));t++)S+=ee[t+1]-ee[t];if("right"===M||"center"===M)for(let t=o-1;t>=Math.max(o-40,0)&&(""===Lt(e,r,t)&&!qt(e,r,t));t--)E+=ee[t+1]-ee[t]}const F=b?.vAlign??"bottom",R=x.error?"var(--danger-text)":x.color??b?.color;u.push(
2
+ /* @__PURE__ */D("div",{"data-cell":c,className:"pointer-events-none",style:{position:"absolute",left:m-E,top:p,width:S+E,height:w,boxSizing:"border-box",padding:"0 4px",overflow:"hidden",display:"flex",alignItems:"top"===F?"flex-start":"middle"===F?"center":"flex-end",justifyContent:b?.wrap?void 0:"right"===M?"flex-end":"center"===M?"center":"flex-start",textAlign:M,whiteSpace:b?.wrap?"pre-wrap":"pre",wordBreak:b?.wrap?"break-word":void 0,fontSize:(b?.fontSize??Ut)*yn,lineHeight:1.3,paddingBottom:"bottom"===F?2:void 0,fontWeight:b?.bold?700:void 0,fontStyle:b?.italic?"italic":void 0,textDecoration:[b?.underline?"underline":"",b?.strike?"line-through":""].join(" ").trim()||void 0,color:R},children:/* @__PURE__ */D("span",{style:b?.wrap?{width:"100%"}:void 0,children:A})},`t${c}`))};for(let t=r;t<=o;t++)for(let n=s;n<=c;n++){const r=qt(e,t,n);(!r||r.r1===t&&r.c1===n)&&h(t,n,r)}for(const t of e.merges)(t.r1<r||t.c1<s)&&t.r2>=r&&t.r1<=o&&t.c2>=s&&t.c1<=c&&h(t.r1,t.c1,t);return[...a,...u]},xe=(t,n,r,l)=>{const i=[],a=(e,o,s,c)=>{e.r2<t||e.r1>n||e.c2<r||e.c1>l||i.push(
3
+ /* @__PURE__ */D("div",{style:{position:"absolute",boxSizing:"border-box",pointerEvents:"none",left:ee[e.c1],top:q[e.r1],width:ee[e.c2+1]-ee[e.c1],height:q[e.r2+1]-q[e.r1],...s},children:c},o))},u=o.range,f=u.r1!==u.r2||u.c1!==u.c2,h=qt(e,o.active.row,o.active.col),d=!!h&&h.r1===u.r1&&h.r2===u.r2&&h.c1===u.c1&&h.c2===u.c2;return a(u,"sel",{background:f&&!d?"color-mix(in srgb, var(--accent-fill) 12%, transparent)":void 0,border:"2px solid var(--accent-fill)"}),Y&&a(Y,"fill",{border:"1px dashed var(--ink-muted)"}),s&&a(s,"clip",{border:"2px dashed var(--accent-fill)"}),c.forEach((e,t)=>a(e.range,`ref${t}`,{border:`2px solid ${e.color}`,background:`color-mix(in srgb, ${e.color} 10%, transparent)`})),i},ye=[];te&&ne&&ye.push({key:"corner",left:vn,top:xn,width:oe,height:re,offsetX:0,offsetY:0,r1:0,r2:te-1,c1:0,c2:ne-1}),te&&ye.push({key:"top",left:vn+oe,top:xn,width:de,height:re,offsetX:z.x,offsetY:0,r1:0,r2:te-1,c1:ge,c2:be}),ne&&ye.push({key:"left",left:vn,top:xn+re,width:oe,height:me,offsetX:0,offsetY:z.y,r1:pe,r2:we,c1:0,c2:ne-1}),ye.push({key:"main",left:vn+oe,top:xn+re,width:de,height:me,offsetX:z.x,offsetY:z.y,r1:pe,r2:we,c1:ge,c2:be});const Ce=o.range,ke=[];for(let e=0;e<ne;e++)ke.push(e);for(let e=ge;e<=be;e++)ke.push(e);const Ne=[];for(let e=0;e<te;e++)Ne.push(e);for(let e=pe;e<=we;e++)Ne.push(e);const $e=0===Ce.r1&&Ce.r2===e.rowCount-1,Me=0===Ce.c1&&Ce.c2===e.colCount-1,Ae="absolute flex items-center justify-center select-none text-xs border-r border-b border-line",Se="bg-accent-tint text-accent-text",Ee="bg-surface-sunken text-ink-muted",Fe=Ce.r2<te||Ce.r2>=pe,Re=se(Ce.c2+1),Te=ce(Ce.r2+1),De=Fe&&!a&&Re>=vn&&Te>=xn&&Re<=W.width&&Te<=W.height,Ue=qt(e,o.active.row,o.active.col)??{r1:o.active.row,c1:o.active.col,r2:o.active.row,c2:o.active.col},Oe={x:se(Ue.c1),y:ce(Ue.r1),width:ee[Ue.c2+1]-ee[Ue.c1],height:q[Ue.r2+1]-q[Ue.r1],viewportWidth:W.width,viewportHeight:W.height},{filter:Ie}=e,Le=Ie?.range.r1??-1,Pe=[];if(Ie&&(Le<te||Le>=pe&&Le<=we))for(let e=Ie.range.c1;e<=Ie.range.c2;e++)ee[e+1]>ee[e]&&(e<ne||e>=ge&&e<=be)&&Pe.push(e);/* @__PURE__ */
4
+ return D("div",{ref:L,tabIndex:0,role:"grid","aria-label":e.name,"aria-rowcount":e.rowCount,"aria-colcount":e.colCount,className:"relative h-full w-full overflow-auto outline-none bg-surface text-ink",onScroll:e=>j({x:e.currentTarget.scrollLeft,y:e.currentTarget.scrollTop}),onKeyDown:y,onCopy:k,onCut:N,onPaste:M,children:/* @__PURE__ */D("div",{style:{width:vn+le,height:xn+ie},children:/* @__PURE__ */U("div",{className:"sticky top-0 left-0 overflow-hidden",style:{width:W.width,height:W.height},children:[
5
+ /* @__PURE__ */U("div",{className:"absolute inset-0",onPointerDown:t=>{if(0!==t.button)return;const n=ue(t.clientX,t.clientY);if(a)return t.preventDefault(),f(V(n,n),!1),void fe(e=>f(V(n,ue(e.clientX,e.clientY)),!1),e=>f(V(n,ue(e.clientX,e.clientY)),!0));if(L.current?.focus({preventScroll:!0}),t.detail>=2)return t.preventDefault(),void h(n);const r=t.shiftKey?o.active:qt(e,n.row,n.col)?{row:qt(e,n.row,n.col).r1,col:qt(e,n.row,n.col).c1}:n;he(r,n),fe(e=>he(r,ue(e.clientX,e.clientY)),()=>{})},onContextMenu:e=>b(e,"cell",ue(e.clientX,e.clientY)),children:[ye.map(e=>/* @__PURE__ */D("div",{className:"absolute overflow-hidden",style:{left:e.left,top:e.top,width:e.width,height:e.height},children:/* @__PURE__ */U("div",{className:"absolute",style:{left:-e.offsetX,top:-e.offsetY,width:le,height:ie},children:[ve(e.r1,e.r2,e.c1,e.c2),xe(e.r1,e.r2,e.c1,e.c2)]})},e.key)),re>0&&/* @__PURE__ */D("div",{className:"absolute bg-line-strong pointer-events-none",style:{left:0,right:0,top:xn+re-1,height:2}}),oe>0&&/* @__PURE__ */D("div",{className:"absolute bg-line-strong pointer-events-none",style:{top:0,bottom:0,left:vn+oe-1,width:2}})]}),Pe.map(e=>{const t=se(e+1),n=ce(Le),r=q[Le+1]-q[Le],o=(Ie?.excluded[e]?.length??0)>0;/* @__PURE__ */
6
+ return D("button",{type:"button","aria-label":I.filterColumn(P(e)),onClick:t=>{t.stopPropagation(),v(e,t.currentTarget.getBoundingClientRect())},onPointerDown:e=>e.stopPropagation(),className:`absolute flex items-center justify-center rounded border ${o?"":"border-line"} ${o?"border-accent-fill bg-accent-tint":"bg-surface hover:bg-surface-sunken"}`,style:{left:t-19,top:n+Math.max(0,(r-17)/2),width:17,height:17},children:/* @__PURE__ */D(C,{name:"filter",size:11})},e)}),De&&/* @__PURE__ */D("div",{"aria-label":I.fillHandle,className:"absolute bg-accent-fill border border-surface cursor-crosshair",style:{left:Re-5,top:Te-5,width:8,height:8},onPointerDown:e=>{e.preventDefault(),e.stopPropagation();const t=o.range;let n=null;fe(e=>{n=(e=>{const n=ue(e.clientX,e.clientY);return(n.row>t.r2?n.row-t.r2:n.row<t.r1?t.r1-n.row:0)>=(n.col>t.c2?n.col-t.c2:n.col<t.c1?t.c1-n.col:0)?{...t,r1:Math.min(t.r1,n.row),r2:Math.max(t.r2,n.row)}:{...t,c1:Math.min(t.c1,n.col),c2:Math.max(t.c2,n.col)}})(e),Z(n)},()=>{Z(null),!n||n.r1===t.r1&&n.r2===t.r2&&n.c1===t.c1&&n.c2===t.c2||d(n)})}}),
7
+ /* @__PURE__ */D("div",{className:"absolute top-0 overflow-hidden bg-surface-sunken",style:{left:vn,right:0,height:xn},children:ke.map(t=>{const n=ee[t+1]-ee[t];if(n<=0)return null;const r=ee[t]-(t>=ne?z.x:0),l=t>=Ce.c1&&t<=Ce.c2;/* @__PURE__ */
8
+ return U("div",{className:`${Ae} ${l?Se:Ee} ${l&&$e?"font-semibold":""}`,style:{left:r,top:0,width:n,height:xn},onPointerDown:n=>((t,n)=>{if(0!==t.button)return;L.current?.focus({preventScroll:!0});const r=t.shiftKey?o.active.col:n,l=t=>{const n={r1:0,c1:Math.min(r,t),r2:e.rowCount-1,c2:Math.max(r,t)};u({active:{row:0,col:r},range:n})};l(n),fe(e=>l(ue(e.clientX,e.clientY).col),()=>{})})(n,t),onContextMenu:e=>b(e,"col",{row:0,col:t}),children:[P(t),
9
+ /* @__PURE__ */D("div",{className:"absolute top-0 bottom-0 cursor-col-resize",style:{right:-3,width:7},onPointerDown:e=>((e,t)=>{e.preventDefault(),e.stopPropagation();const n=e.clientX,r=ee[t+1]-ee[t],o=e=>Math.max(16,Math.round(r+e.clientX-n));fe(e=>B({col:t,width:o(e)}),e=>{B(null),o(e)!==r&&m(t,o(e))})})(e,t),onDoubleClick:e=>{e.stopPropagation(),g(t)}})]},t)})}),
10
+ /* @__PURE__ */D("div",{className:"absolute left-0 overflow-hidden bg-surface-sunken",style:{top:xn,bottom:0,width:vn},children:Ne.map(t=>{const n=q[t+1]-q[t];if(n<=0)return null;const r=q[t]-(t>=te?z.y:0),l=t>=Ce.r1&&t<=Ce.r2;/* @__PURE__ */
11
+ return U("div",{className:`${Ae} ${l?Se:Ee} ${l&&Me?"font-semibold":""}`,style:{left:0,top:r,width:vn,height:n},onPointerDown:n=>((t,n)=>{if(0!==t.button)return;L.current?.focus({preventScroll:!0});const r=t.shiftKey?o.active.row:n,l=t=>{const n={r1:Math.min(r,t),c1:0,r2:Math.max(r,t),c2:e.colCount-1};u({active:{row:r,col:0},range:n})};l(n),fe(e=>l(ue(e.clientX,e.clientY).row),()=>{})})(n,t),onContextMenu:e=>b(e,"row",{row:t,col:0}),children:[t+1,
12
+ /* @__PURE__ */D("div",{className:"absolute left-0 right-0 cursor-row-resize",style:{bottom:-3,height:7},onPointerDown:e=>((e,t)=>{e.preventDefault(),e.stopPropagation();const n=e.clientY,r=q[t+1]-q[t],o=e=>Math.max(12,Math.round(r+e.clientY-n));fe(e=>X({row:t,height:o(e)}),e=>{X(null),o(e)!==r&&p(t,o(e))})})(e,t),onDoubleClick:e=>{e.stopPropagation(),w(t)}})]},t)})}),
13
+ /* @__PURE__ */D("div",{role:"button","aria-label":I.selectAll,className:`${Ae} top-0 left-0 cursor-pointer bg-surface-sunken hover:bg-line`,style:{width:vn,height:xn},onPointerDown:t=>{t.preventDefault(),L.current?.focus({preventScroll:!0}),u({active:{row:0,col:0},range:{r1:0,c1:0,r2:e.rowCount-1,c2:e.colCount-1}})},onContextMenu:e=>b(e,"corner",{row:0,col:0})}),x?.(Oe)]})})})}),Mn=["#000000","#434343","#666666","#999999","#cccccc","#efefef","#ffffff","#c00000","#ff0000","#ffc000","#ffff00","#92d050","#00b050","#00b0f0","#0070c0","#002060","#7030a0","#f4cccc","#fce5cd","#fff2cc","#d9ead3","#d0e0e3","#c9daf8","#d9d2e9","#ead1dc"],An=["#1a73e8","#d93025","#7b1fa2","#188038","#e37400","#c5221f"];function Sn(e,t){let n=!1;for(let r=0;r<t;r++)'"'===e[r]&&(n=!n);return n}function En(e,t){if("="!==e[0]||Sn(e,t))return null;const n=/[A-Za-z][A-Za-z0-9.]*$/.exec(e.slice(0,t));if(!n)return null;if("!"===e[n.index-1]||"("===e[t])return null;const r=n[0].toUpperCase(),o=Rt.filter(e=>e.startsWith(r));return o.length?{start:n.index,prefix:r,matches:o.slice(0,8)}:null}var Fn={ABS:"value",AND:"condition1, [condition2, ...]",AVERAGE:"value1, [value2, ...]",AVERAGEIF:"range, criterion, [average_range]",AVERAGEIFS:"average_range, range1, criterion1, ...",CEILING:"value, [factor]","CEILING.MATH":"value, [factor]",CHOOSE:"index, choice1, [choice2, ...]",COLUMN:"[cell]",COLUMNS:"range",CONCAT:"value1, [value2, ...]",CONCATENATE:"value1, [value2, ...]",COS:"angle",COUNT:"value1, [value2, ...]",COUNTA:"value1, [value2, ...]",COUNTBLANK:"range",COUNTIF:"range, criterion",COUNTIFS:"range1, criterion1, ...",DATE:"year, month, day",DATEDIF:"start, end, unit",DAY:"date",DAYS:"end, start",EDATE:"start, months",EOMONTH:"start, months",EXACT:"text1, text2",EXP:"value",FIND:"find, within, [start]",FLOOR:"value, [factor]","FLOOR.MATH":"value, [factor]",FV:"rate, periods, payment, [present], [type]",HLOOKUP:"key, range, row, [approximate]",HOUR:"time",IF:"condition, if_true, [if_false]",IFERROR:"value, [if_error]",IFNA:"value, [if_na]",IFS:"condition1, value1, ...",INDEX:"range, row, [column]",INT:"value",ISBLANK:"value",ISERROR:"value",ISLOGICAL:"value",ISNA:"value",ISNUMBER:"value",ISTEXT:"value",LARGE:"range, k",LEFT:"text, [count]",LEN:"text",LN:"value",LOG:"value, [base]",LOG10:"value",LOWER:"text",MATCH:"key, range, [type]",MAX:"value1, [value2, ...]",MEDIAN:"value1, [value2, ...]",MID:"text, start, count",MIN:"value1, [value2, ...]",MINUTE:"time",MOD:"value, divisor",MODE:"value1, [value2, ...]","MODE.SNGL":"value1, [value2, ...]",MONTH:"date",N:"value",NA:"",NETWORKDAYS:"start, end, [holidays]",NOT:"condition",NOW:"",NPV:"rate, value1, [value2, ...]",OR:"condition1, [condition2, ...]",PI:"",PMT:"rate, periods, present, [future], [type]",POWER:"value, exponent",PRODUCT:"value1, [value2, ...]",PROPER:"text",PV:"rate, periods, payment, [future], [type]",RAND:"",RANDBETWEEN:"low, high",RANK:"value, range, [ascending]","RANK.EQ":"value, range, [ascending]",REPLACE:"text, start, count, new",REPT:"text, count",RIGHT:"text, [count]",ROUND:"value, [places]",ROUNDDOWN:"value, [places]",ROUNDUP:"value, [places]",ROW:"[cell]",ROWS:"range",SEARCH:"find, within, [start]",SECOND:"time",SIGN:"value",SIN:"angle",SMALL:"range, k",SQRT:"value",STDEV:"value1, [value2, ...]","STDEV.P":"value1, [value2, ...]","STDEV.S":"value1, [value2, ...]",STDEVP:"value1, [value2, ...]",SUBSTITUTE:"text, find, new, [occurrence]",SUM:"value1, [value2, ...]",SUMIF:"range, criterion, [sum_range]",SUMIFS:"sum_range, range1, criterion1, ...",SUMPRODUCT:"range1, [range2, ...]",SWITCH:"value, case1, result1, ..., [default]",TAN:"angle",TEXT:"value, format",TEXTJOIN:"delimiter, skip_blank, value1, ...",TIME:"hour, minute, second",TODAY:"",TRIM:"text",TRUNC:"value, [places]",UPPER:"text",VALUE:"text",VAR:"value1, [value2, ...]","VAR.P":"value1, [value2, ...]","VAR.S":"value1, [value2, ...]",VARP:"value1, [value2, ...]",VLOOKUP:"key, range, column, [approximate]",WEEKDAY:"date, [type]",XLOOKUP:"key, lookup_range, result_range, [if_not_found], [match_mode]",XOR:"condition1, [condition2, ...]",YEAR:"date"},Rn=(()=>{const e=new Uint32Array(256);for(let t=0;t<256;t++){let n=t;for(let e=0;e<8;e++)n=1&n?3988292384^n>>>1:n>>>1;e[t]=n>>>0}return e})();function Tn(e){let t=4294967295;for(let n=0;n<e.length;n++)t=Rn[255&(t^e[n])]^t>>>8;return(4294967295^t)>>>0}async function Dn(e,t){const n=t.writable.getWriter();return n.write(e).then(()=>n.close()).catch(()=>{}),new Uint8Array(await new Response(t.readable).arrayBuffer())}async function Un(e){return"undefined"==typeof CompressionStream?null:Dn(e,new CompressionStream("deflate-raw"))}async function On(e){return Dn(e,new DecompressionStream("deflate-raw"))}var In=/* @__PURE__ */new Set(["CONCAT","IFS","SWITCH","TEXTJOIN","XLOOKUP","XOR","IFNA","DAYS","STDEV.S","STDEV.P","VAR.S","VAR.P","MODE.SNGL","RANK.EQ","CEILING.MATH","FLOOR.MATH"]);function Ln(e){const{tokens:t}=re(e);let n="",r=0;for(const o of t){if("ident"!==o.type)continue;const t=o.value.replace(/^_xlfn\.(?:_xlws\.)?/i,"").replace(/^_xlws\./i,"");t!==o.value&&(n+=e.slice(r,o.start)+t,r=o.end)}return`=${n}${e.slice(r)}`}function Pn(e){return e.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F]/g,"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")}var zn='<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\n',jn="http://schemas.openxmlformats.org/spreadsheetml/2006/main",Vn="http://schemas.openxmlformats.org/officeDocument/2006/relationships";function Wn(e){return`FF${e.replace("#","").toUpperCase().padStart(6,"0").slice(0,6)}`}var Hn=class{fonts=['<font><sz val="10"/><name val="Arial"/></font>'];fills=['<fill><patternFill patternType="none"/></fill>','<fill><patternFill patternType="gray125"/></fill>'];borders=["<border><left/><right/><top/><bottom/><diagonal/></border>"];numFmts=[];xfs=['<xf numFmtId="0" fontId="0" fillId="0" borderId="0" xfId="0"/>'];seen=/* @__PURE__ */new Map;index(e,t){const n=e.indexOf(t);return n>=0?n:(e.push(t),e.length-1)}add(e){if(!e||!Object.keys(e).length)return 0;const t=JSON.stringify(e),n=this.seen.get(t);if(void 0!==n)return n;const r=this.index(this.fonts,`<font>${e.bold?"<b/>":""}${e.italic?"<i/>":""}${e.strike?"<strike/>":""}${e.underline?"<u/>":""}<sz val="${e.fontSize??Ut}"/>${e.color?`<color rgb="${Wn(e.color)}"/>`:""}<name val="Arial"/></font>`),o=e.fill?this.index(this.fills,`<fill><patternFill patternType="solid"><fgColor rgb="${Wn(e.fill)}"/><bgColor indexed="64"/></patternFill></fill>`):0,l=(e,t)=>t?`<${e} style="thin"><color auto="1"/></${e}>`:`<${e}/>`,i=e.border??{},s=this.index(this.borders,`<border>${l("left",i.left)}${l("right",i.right)}${l("top",i.top)}${l("bottom",i.bottom)}<diagonal/></border>`);let c=0;e.numFmt&&"General"!==e.numFmt&&(c="@"===e.numFmt?49:164+this.index(this.numFmts,e.numFmt));const a=e.align||e.vAlign||e.wrap?`<alignment${e.align?` horizontal="${e.align}"`:""}${e.vAlign?` vertical="${"middle"===e.vAlign?"center":e.vAlign}"`:""}${e.wrap?' wrapText="1"':""}/>`:"",u=`<xf numFmtId="${c}" fontId="${r}" fillId="${o}" borderId="${s}" xfId="0" applyFont="1"${o?' applyFill="1"':""}${s?' applyBorder="1"':""}${c?' applyNumberFormat="1"':""}${a?' applyAlignment="1"':""}${a?`>${a}</xf>`:"/>"}`;return this.xfs.push(u),this.seen.set(t,this.xfs.length-1),this.xfs.length-1}toXml(){const e=this.numFmts.length?`<numFmts count="${this.numFmts.length}">${this.numFmts.map((e,t)=>`<numFmt numFmtId="${164+t}" formatCode="${Pn(e)}"/>`).join("")}</numFmts>`:"";return`${zn}<styleSheet xmlns="${jn}">${e}<fonts count="${this.fonts.length}">${this.fonts.join("")}</fonts><fills count="${this.fills.length}">${this.fills.join("")}</fills><borders count="${this.borders.length}">${this.borders.join("")}</borders><cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs><cellXfs count="${this.xfs.length}">${this.xfs.join("")}</cellXfs><cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles></styleSheet>`}};function Kn(e,t,n,r,o,l){const i=`${P(o)}${r+1}`,s=e.cells[r]?.[o]??"",c=e.formats[It(r,o)],a=l.add(c),u=a?` s="${a}"`:"";if(""===s)return a?`<c r="${i}"${u}/>`:"";const f=n.value(t,r,o);if(se(s)){const e=`<f>${Pn(function(e){const t=e.slice(1),{tokens:n}=re(t);let r="",o=0;for(let e=0;e<n.length;e++){const l=n[e],i=n[e+1];"ident"===l.type&&"op"===i?.type&&"("===i.value&&In.has(l.value.toUpperCase())&&(r+=`${t.slice(o,l.start)}_xlfn.${l.value.toUpperCase()}`,o=l.end)}return r+t.slice(o)}(s))}</f>`;if("number"==typeof f)return`<c r="${i}"${u}>${e}<v>${f}</v></c>`;if("boolean"==typeof f)return`<c r="${i}"${u} t="b">${e}<v>${f?1:0}</v></c>`;if(f instanceof ze){return`<c r="${i}"${u} t="e">${e}<v>${/^#(?:REF!|N\/A|NAME\?|DIV\/0!|VALUE!|NUM!|NULL!)$/.test(f.code)?f.code:"#VALUE!"}</v></c>`}return`<c r="${i}"${u} t="str">${e}<v>${Pn(null===f?"":f)}</v></c>`}if("number"==typeof f)return`<c r="${i}"${u}><v>${f}</v></c>`;if("boolean"==typeof f)return`<c r="${i}"${u} t="b"><v>${f?1:0}</v></c>`;const h=String(f??"");return`<c r="${i}"${u} t="inlineStr"><is><t${h!==h.trim()||/\n/.test(h)?' xml:space="preserve"':""}>${Pn(h)}</t></is></c>`}function Bn(e,t,n,r){const o=Bt(e);let l=o?.row??0,i=o?.col??0;const s=/* @__PURE__ */new Map;for(const t of Object.keys(e.formats)){const[e,n]=t.split(":").map(Number);l=Math.max(l,e),i=Math.max(i,n),s.has(e)||s.set(e,[]),s.get(e).push(n)}const c=new Set(e.hiddenRows);for(const t of[...e.hiddenRows,...Object.keys(e.rowHeights).map(Number)])l=Math.max(l,t);const a=[];for(let o=0;o<=l;o++){const l=e.cells[o]??[],i=new Set(s.get(o)??[]);l.forEach((e,t)=>{""!==e&&i.add(t)});const u=e.rowHeights[o];if(!i.size&&void 0===u&&!c.has(o))continue;const f=[...i].sort((e,t)=>e-t).map(l=>Kn(e,t,n,o,l,r)).join(""),h=`${void 0!==u?` ht="${(.75*u).toFixed(2)}" customHeight="1"`:""}${c.has(o)?' hidden="1"':""}`;a.push(`<row r="${o+1}"${h}>${f}</row>`)}const u=new Set(e.hiddenCols),f=[.../* @__PURE__ */new Set([...Object.keys(e.colWidths).map(Number),...u])].sort((e,t)=>e-t),h=f.length?`<cols>${f.map(t=>`<col min="${t+1}" max="${t+1}" width="${(((e.colWidths[t]??Dt)-5)/7).toFixed(4)}" customWidth="1"${u.has(t)?' hidden="1"':""}/>`).join("")}</cols>`:"",{frozenRows:d,frozenCols:m}=e,p=d||m?`<pane${m?` xSplit="${m}"`:""}${d?` ySplit="${d}"`:""} topLeftCell="${P(m)}${d+1}" activePane="${d&&m?"bottomRight":d?"bottomLeft":"topRight"}" state="frozen"/>`:"",g=e.merges.length?`<mergeCells count="${e.merges.length}">${e.merges.map(e=>`<mergeCell ref="${W(e)}"/>`).join("")}</mergeCells>`:"",w=e.filter?`<autoFilter ref="${W(e.filter.range)}"/>`:"",b=e.tabColor?`<sheetPr><tabColor rgb="${Wn(e.tabColor)}"/></sheetPr>`:"";return`${zn}<worksheet xmlns="${jn}">${b}<dimension ref="A1:${P(i)}${l+1}"/><sheetViews><sheetView${0===t?' tabSelected="1"':""} workbookViewId="0">${p}</sheetView></sheetViews><sheetFormatPr defaultColWidth="${(95/7).toFixed(4)}" defaultRowHeight="${18..toFixed(2)}" customHeight="1"/>${h}<sheetData>${a.join("")}</sheetData>${w}${g}</worksheet>`}async function Gn(e,t){const n=new Hn,r=function(e){const t=/* @__PURE__ */new Set;return e.map((e,n)=>{const r=e.name.replace(/[[\]:*?/\\]/g," ").trim().slice(0,31)||`Sheet ${n+1}`;let o=r;for(let e=2;t.has(o.toLowerCase());e++)o=`${r.slice(0,28)} ${e}`;return t.add(o.toLowerCase()),o})}(e),o=e.map((e,r)=>({name:`xl/worksheets/sheet${r+1}.xml`,text:Bn(e,r,t,n)})),l=e.map((e,t)=>{return e.filter?`<definedName name="_xlnm._FilterDatabase" localSheetId="${t}" hidden="1">${Pn(`'${r[t].replace(/'/g,"''")}'!${n=e.filter.range,`$${P(n.c1)}$${n.r1+1}:$${P(n.c2)}$${n.r2+1}`}`)}</definedName>`:"";var n}).join("");return async function(e){const t=new TextEncoder,n=[],r=[];let o=0;for(const l of e){const e=t.encode(l.name),i=t.encode(l.text),s=await Un(i),c=null===s||s.length>=i.length,a=c?i:s,u=Tn(i),f=new Uint8Array(30+e.length),h=new DataView(f.buffer);h.setUint32(0,67324752,!0),h.setUint16(4,20,!0),h.setUint16(6,2048,!0),h.setUint16(8,c?0:8,!0),h.setUint32(14,u,!0),h.setUint32(18,a.length,!0),h.setUint32(22,i.length,!0),h.setUint16(26,e.length,!0),f.set(e,30);const d=new Uint8Array(46+e.length),m=new DataView(d.buffer);m.setUint32(0,33639248,!0),m.setUint16(4,20,!0),m.setUint16(6,20,!0),m.setUint16(8,2048,!0),m.setUint16(10,c?0:8,!0),m.setUint32(16,u,!0),m.setUint32(20,a.length,!0),m.setUint32(24,i.length,!0),m.setUint16(28,e.length,!0),m.setUint32(42,o,!0),d.set(e,46),n.push(f,a),r.push(d),o+=f.length+a.length}const l=r.reduce((e,t)=>e+t.length,0),i=new Uint8Array(22),s=new DataView(i.buffer);s.setUint32(0,101010256,!0),s.setUint16(8,e.length,!0),s.setUint16(10,e.length,!0),s.setUint32(12,l,!0),s.setUint32(16,o,!0);const c=new Uint8Array(o+l+22);let a=0;for(const e of[...n,...r,i])c.set(e,a),a+=e.length;return c}([{name:"[Content_Types].xml",text:`${zn}<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"><Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/><Default Extension="xml" ContentType="application/xml"/><Override PartName="/xl/workbook.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"/><Override PartName="/xl/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"/>${e.map((e,t)=>`<Override PartName="/xl/worksheets/sheet${t+1}.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"/>`).join("")}</Types>`},{name:"_rels/.rels",text:`${zn}<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="${Vn}/officeDocument" Target="xl/workbook.xml"/></Relationships>`},{name:"xl/workbook.xml",text:`${zn}<workbook xmlns="${jn}" xmlns:r="${Vn}"><sheets>${r.map((e,t)=>`<sheet name="${Pn(e)}" sheetId="${t+1}" r:id="rId${t+1}"/>`).join("")}</sheets>${l?`<definedNames>${l}</definedNames>`:""}<calcPr calcId="0" fullCalcOnLoad="1"/></workbook>`},{name:"xl/_rels/workbook.xml.rels",text:`${zn}<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">${e.map((e,t)=>`<Relationship Id="rId${t+1}" Type="${Vn}/worksheet" Target="worksheets/sheet${t+1}.xml"/>`).join("")}<Relationship Id="rId${e.length+1}" Type="${Vn}/styles" Target="styles.xml"/></Relationships>`},{name:"xl/styles.xml",text:n.toXml()},...o])}var Xn={1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",14:"dd/mm/yyyy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"dd/mm/yyyy h:mm",37:"#,##0;(#,##0)",38:"#,##0;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mm:ss.0",48:"##0.0E+0",49:"@"},Yn=["FFFFFF","000000","E7E6E6","44546A","4472C4","ED7D31","A5A5A5","FFC000","5B9BD5","70AD47","0563C1","954F72"],Zn={0:"000000",1:"FFFFFF",2:"FF0000",3:"00FF00",4:"0000FF",5:"FFFF00",6:"FF00FF",7:"00FFFF",8:"000000",9:"FFFFFF",10:"FF0000",11:"00FF00",12:"0000FF",13:"FFFF00",14:"FF00FF",15:"00FFFF"};function _n(e){if(!e)return;const t=e.getAttribute("rgb");if(t)return`#${t.slice(-6).toLowerCase()}`;const n=Number(e.getAttribute("tint")??0),r=e.getAttribute("theme");if(null!==r){const e=Yn[Number(r)];return e?`#${function(e,t){const n=n=>{const r=parseInt(e.slice(n,n+2),16),o=t<0?r*(1+t):r+(255-r)*t;return Math.round(o).toString(16).padStart(2,"0")};return`${n(0)}${n(2)}${n(4)}`}(e,n)}`.toLowerCase():void 0}const o=e.getAttribute("indexed");if(null!==o){const e=Zn[Number(o)];return e?`#${e}`.toLowerCase():void 0}}var Jn=e=>(new DOMParser).parseFromString(e,"application/xml"),Qn=(e,t)=>Array.from(e.getElementsByTagNameNS("*",t)),qn=(e,t)=>Qn(e,t)[0],er=(e,t)=>Array.from(e.children).filter(e=>e.localName===t);function tr(e){const t=/^([A-Z]+)(\d+)$/.exec(e);return{row:Number(t[2])-1,col:z(t[1])}}function nr(e){const[t,n=t]=e.replace(/\$/g,"").split(":"),r=tr(t),o=tr(n);return{r1:r.row,c1:r.col,r2:o.row,c2:o.col}}function rr(e,t,n,r){const o=Jn(t),l=Ot(e),i=[],s={},c=/* @__PURE__ */new Map;for(const e of Qn(o,"c")){const t=e.getAttribute("r");if(!t)continue;const{row:o,col:l}=tr(t),a=r[Number(e.getAttribute("s")??0)];a&&Object.keys(a).length&&(s[It(o,l)]=a);const u=er(e,"f")[0],f=er(e,"v")[0]?.textContent??"",h=e.getAttribute("t");let d="";if(u){const e=u.getAttribute("si");if("shared"===u.getAttribute("t")&&null!==e)if(u.textContent)c.set(e,{text:u.textContent,row:o,col:l}),d=Ln(u.textContent);else{const t=c.get(e);t&&(d=fe(Ln(t.text),o-t.row,l-t.col))}else u.textContent&&(d=Ln(u.textContent))}if(d||(d="s"===h?n[Number(f)]??"":"inlineStr"===h?Qn(e,"t").map(e=>e.textContent??"").join(""):"b"===h?"1"===f?"TRUE":"FALSE":f,"s"!==h&&"inlineStr"!==h&&"str"!==h||!/^(?:=|-?\d|'|true$|false$)/i.test(d)||(d=`'${d}`)),""!==d){for(;i.length<=o;)i.push([]);for(;i[o].length<=l;)i[o].push("");i[o][l]=d}}const a={},u=[];for(const e of Qn(o,"col")){const t=Number(e.getAttribute("min"))-1,n=Math.min(Number(e.getAttribute("max"))-1,t+500),r=Number(e.getAttribute("width")??0);for(let o=t;o<=n;o++)r&&"1"===e.getAttribute("customWidth")&&(a[o]=Math.round(7*r+5)),"1"===e.getAttribute("hidden")&&u.push(o)}const f={},h=[];for(const e of Qn(o,"row")){const t=Number(e.getAttribute("r"))-1,n=e.getAttribute("ht");n&&"1"===e.getAttribute("customHeight")&&(f[t]=Math.round(Number(n)/.75)),"1"===e.getAttribute("hidden")&&h.push(t)}const d=qn(o,"pane"),m="frozen"===d?.getAttribute("state"),p=qn(o,"autoFilter")?.getAttribute("ref"),g=_n(qn(o,"tabColor"));return{...l,tabColor:g,cells:i,formats:s,colWidths:a,rowHeights:f,hiddenCols:u,hiddenRows:h,merges:Qn(o,"mergeCell").map(e=>nr(e.getAttribute("ref")??"A1")),frozenRows:m?Number(d?.getAttribute("ySplit")??0):0,frozenCols:m?Number(d?.getAttribute("xSplit")??0):0,filter:p?{range:nr(p),excluded:{}}:null,rowCount:Math.max(l.rowCount,i.length+100),colCount:Math.max(l.colCount,i.reduce((e,t)=>Math.max(e,t.length),0))}}async function or(e){const t=await async function(e){const t=new DataView(e.buffer,e.byteOffset,e.byteLength);let n=-1;for(let r=e.length-22;r>=Math.max(0,e.length-66e3);r--)if(101010256===t.getUint32(r,!0)){n=r;break}if(n<0)throw new Error("Not a zip file");const r=t.getUint16(n+10,!0);let o=t.getUint32(n+16,!0);const l=new TextDecoder,i=/* @__PURE__ */new Map;for(let n=0;n<r;n++){const n=t.getUint16(o+10,!0),r=t.getUint32(o+20,!0),s=t.getUint16(o+28,!0),c=t.getUint16(o+30,!0),a=t.getUint16(o+32,!0),u=t.getUint32(o+42,!0),f=l.decode(e.subarray(o+46,o+46+s));if(o+=46+s+c+a,!/\.(xml|rels)$/i.test(f))continue;const h=u+30+t.getUint16(u+26,!0)+t.getUint16(u+28,!0),d=e.subarray(h,h+r);i.set(f,l.decode(8===n?await On(d):d))}return i}(e),n=t.get("xl/workbook.xml");if(!n)throw new Error("Not a workbook");const r=Jn(t.get("xl/_rels/workbook.xml.rels")??"<Relationships/>"),o=new Map(Qn(r,"Relationship").map(e=>[e.getAttribute("Id"),e.getAttribute("Target")??""])),l=t.get("xl/sharedStrings.xml")?Qn(Jn(t.get("xl/sharedStrings.xml")),"si").map(e=>Qn(e,"t").filter(e=>"rPh"!==e.parentElement?.localName).map(e=>e.textContent??"").join("")):[],i=function(e){if(!e)return[];const t=Jn(e),n=new Map(Qn(t,"numFmt").map(e=>[Number(e.getAttribute("numFmtId")),e.getAttribute("formatCode")??""])),r=qn(t,"fonts"),o=qn(t,"fills"),l=qn(t,"borders"),i=qn(t,"cellXfs");if(!i)return[];const s=r?er(r,"font"):[],c=o?er(o,"fill"):[],a=l?er(l,"border"):[],u=Number(s[0]?er(s[0],"sz")[0]?.getAttribute("val")??0:0);return er(i,"xf").map(e=>{const t={},r=Number(e.getAttribute("numFmtId")??0),o=n.get(r)??Xn[r];o&&"General"!==o&&(t.numFmt=o);const l=s[Number(e.getAttribute("fontId")??0)];if(l){er(l,"b").length&&(t.bold=!0),er(l,"i").length&&(t.italic=!0),er(l,"u").length&&(t.underline=!0),er(l,"strike").length&&(t.strike=!0);const e=Number(er(l,"sz")[0]?.getAttribute("val")??0);e&&e!==u&&(t.fontSize=e);const n=_n(er(l,"color")[0]);n&&"#000000"!==n&&(t.color=n)}const i=c[Number(e.getAttribute("fillId")??0)]?.getElementsByTagNameNS("*","patternFill")[0];if(i&&"solid"===i.getAttribute("patternType")){const e=_n(er(i,"fgColor")[0]);e&&(t.fill=e)}const f=a[Number(e.getAttribute("borderId")??0)];if(f){const e=e=>!!er(f,e)[0]?.getAttribute("style"),n={top:e("top"),right:e("right"),bottom:e("bottom"),left:e("left")};(n.top||n.right||n.bottom||n.left)&&(t.border={...n.top?{top:!0}:{},...n.right?{right:!0}:{},...n.bottom?{bottom:!0}:{},...n.left?{left:!0}:{}})}const h=er(e,"alignment")[0];if(h){const e=h.getAttribute("horizontal");"left"!==e&&"center"!==e&&"right"!==e||(t.align=e);const n=h.getAttribute("vertical");"top"!==n&&"bottom"!==n||(t.vAlign=n),"center"===n&&(t.vAlign="middle");const r=h.getAttribute("wrapText");"1"!==r&&"true"!==r||(t.wrap=!0)}return t})}(t.get("xl/styles.xml")),s=[];for(const e of Qn(Jn(n),"sheet")){const n=e.getAttribute("name")??`Sheet ${s.length+1}`,r=e.getAttributeNS(Vn,"id")??e.getAttribute("r:id"),c=o.get(r)??"",a=c.startsWith("/")?c.slice(1):`xl/${c}`,u=t.get(a);u&&s.push(rr(n,u,l,i))}if(!s.length)throw new Error("No sheets");return s}var lr=[8,9,10,11,12,14,16,18,20,24,28,36],ir="undefined"!=typeof navigator&&/Mac|iPhone|iPad/.test(navigator.platform),sr=ir?"⌘":"Ctrl+";function cr(e,t,n){const r=URL.createObjectURL(new Blob([e],{type:t})),o=document.createElement("a");o.href=r,o.download=n,o.click(),URL.revokeObjectURL(r)}function ar(){const a=$().spreadsheet,M=A(void 0);void 0===M.current&&(M.current=f());const T=A(M.current?.data??null),[P]=S(()=>{const e=M.current;if(!e)return null;const t=ur(e.data,a.sheetName(1));return t?{sheet:t,title:e.data.filename.replace(/\.(csv|tsv|txt)$/i,"")}:null}),[B,G]=S(()=>P?[P.sheet]:[Ot(a.sheetName(1))]),[X,Y]=S(0),[Z,_]=S(P?.title??a.untitled),[J,Q]=S(()=>M.current?.data.onEmail),q=A(B),ee=A([]),te=A([]),[,ne]=S(0),oe=R(e=>{const t=q.current,n=e(t);n!==t&&(ee.current.push(t),ee.current.length>100&&ee.current.shift(),te.current=[],q.current=n,G(n),ne(e=>e+1))},[]),le=R(e=>{ee.current=[],te.current=[],q.current=e,G(e),Y(0),ne(e=>e+1)},[]),ie=R(()=>{const e=ee.current.pop();e&&(te.current.push(q.current),q.current=e,G(e),Y(t=>Math.min(t,e.length-1)),ne(e=>e+1))},[]),ce=R(()=>{const e=te.current.pop();e&&(ee.current.push(q.current),q.current=e,G(e),Y(t=>Math.min(t,e.length-1)),ne(e=>e+1))},[]),ue=A(B);m(B!==ue.current);const me=R(e=>{const t=ur(e,a.sheetName(1));t&&(le([t]),ue.current=q.current,_(e.filename.replace(/\.(csv|tsv|txt)$/i,"")),Q(()=>e.onEmail))},[le,a]);E(()=>{const e=M.current;null!=e&&(h(e),e.data!==T.current&&me(e.data))},[]),E(()=>{const e=M.current?.token;if(null==e)return;const t=t=>{const n=t.detail;n&&n.token===e&&me(n.data)};return window.addEventListener(d,t),()=>window.removeEventListener(d,t)},[]);const pe=Math.min(X,B.length-1),ge=B[pe],we=F(()=>zt(B),[B]),be=F(()=>function(e,t,n){const r=/* @__PURE__ */new Set,{filter:o}=e;if(!o)return r;for(const[l,i]of Object.entries(o.excluded)){if(!i.length)continue;const s=Number(l),c=new Set(i);for(let l=o.range.r1+1;l<=o.range.r2;l++)c.has(Kt(e,t,n,l,s).text)&&r.add(l)}return r}(ge,pe,we),[ge,pe,we]),xe=A(null),Ce=A(null),[ke,Ne]=S({}),$e=ke[ge.id]??{active:{row:0,col:0},range:{r1:0,c1:0,r2:0,c2:0}},Me=A(X);Me.current=X;const Ae=R(e=>{Ne(t=>({...t,[q.current[Math.min(Me.current,q.current.length-1)].id]:e}))},[]),Ee=$e.active,Fe=ge.formats[It(Ee.row,Ee.col)]??{},Re=Lt(ge,Ee.row,Ee.col),[Te,De]=S(null),Ue=A(Te);Ue.current=Te;const[Oe,Ie]=S(null),[Le,Pe]=S(!0),[ze,je]=S(!1),[Ve,We]=S(null),[He,Ke]=S(null),[Be,Ge]=S(!1),[Xe,Ye]=S(null),[Ze,_e]=S(null),[Je,Qe]=S(!1),[qe,et]=S(""),[tt,nt]=S(""),[rt,ot]=S({matchCase:!1,wholeCell:!1,inFormulas:!1}),lt=A(null),it=A(null),st=A(null),ct=o(),at=o(),ut=R(()=>{xe.current?.focus(),setTimeout(()=>{const e=document.activeElement;e&&e!==document.body&&!e.closest("[aria-haspopup]")||xe.current?.focus()},0)},[]),ft=R(e=>{oe(t=>{const n=Math.min(Me.current,t.length-1),r=e(t[n]);return r===t[n]?t:t.map((e,t)=>t===n?r:e)})},[oe]),ht=A(null),dt=A(()=>!1);E(()=>N(()=>!!ht.current?.contains(document.activeElement)&&dt.current()),[]);const mt=R(e=>ge.hiddenRows.includes(e)||be.has(e),[ge.hiddenRows,be]),pt=R(e=>ge.hiddenCols.includes(e),[ge.hiddenCols]),gt=R(e=>{const t=qt(ge,e.row,e.col),n=t??{r1:e.row,c1:e.col,r2:e.row,c2:e.col};Ae({active:t?{row:t.r1,col:t.c1}:e,range:n}),xe.current?.scrollTo(e)},[ge,Ae]),wt=R((e,t,n)=>{let{row:r,col:o}=e;const l=qt(ge,r,o);l&&(t>0&&(r=l.r2),t<0&&(r=l.r1),n>0&&(o=l.c2),n<0&&(o=l.c1));do{r+=t,o+=n}while(r>=0&&r<ge.rowCount&&o>=0&&o<ge.colCount&&(mt(r)||pt(o)));return r<0||r>=ge.rowCount||o<0||o>=ge.colCount?e:{row:r,col:o}},[ge,mt,pt]),bt=R((e,t,n)=>{const r=e=>""!==Lt(ge,e.row,e.col);let o=e,l=wt(o,t,n);if(l===o)return o;if(r(o)&&r(l)){for(;r(l);)if(o=l,l=wt(o,t,n),l===o)return o;return o}for(;!r(l);)if(o=l,l=wt(o,t,n),l===o)return o;return l},[ge,wt]),vt=R(e=>{const t=en(ge,V($e.active,e));Ae({active:$e.active,range:t}),xe.current?.scrollTo(e)},[ge,$e.active,Ae]),xt=R(()=>{const{range:e,active:t}=$e;return{row:t.row===e.r1?e.r2:e.r1,col:t.col===e.c1?e.c2:e.c1}},[$e]),yt=A(null),Ct=R((e,t={})=>{const n=Lt(ge,e.row,e.col),r=t.text??Wt(n,ge.formats[It(e.row,e.col)]);Ie(e=>e?.cut?null:e),t.inBar||null!==yt.current||(yt.current=r.length),De({sheetId:ge.id,row:e.row,col:e.col,text:r,mode:t.mode??(void 0!==t.text?"enter":"edit"),inBar:!!t.inBar,caret:r.length,pick:null,suggestion:0})},[ge]),kt=R(e=>{const t=Ue.current;if(!t)return!1;Ue.current=null,De(null),oe(n=>{const r=n.findIndex(e=>e.id===t.sheetId);if(r<0)return n;const o=n[r];if(t.text===Wt(Lt(o,t.row,t.col),o.formats[It(t.row,t.col)])&&!e)return n;let l=o;if(e)for(let n=e.r1;n<=e.r2;n++)for(let r=e.c1;r<=e.c2;r++){const e=se(t.text)?fe(Vt(t.text).raw,n-t.row,r-t.col):t.text;l=Xt(l,n,r,e)}else l=Xt(l,t.row,t.col,t.text);return n.map((e,t)=>t===r?l:e)});const n=q.current.findIndex(e=>e.id===t.sheetId);return n>=0&&n!==Me.current&&Y(n),!0},[oe]),Nt=R(()=>{const e=Ue.current;if(Ue.current=null,De(null),e){const t=q.current.findIndex(t=>t.id===e.sheetId);t>=0&&t!==Me.current&&Y(t)}ut()},[ut]),$t=R((e,t)=>{gt(wt($e.active,e,t)),ut()},[ut,gt,$e.active,wt]);k(()=>{if(!Te)return;const e=Te.inBar?lt.current:it.current;e&&(document.activeElement!==e&&e.focus({preventScroll:!0}),null!==yt.current&&(e.setSelectionRange(yt.current,yt.current),yt.current=null))},[Te]);const Mt=R((e,t)=>{De(n=>n?{...n,text:e,caret:t,pick:null,suggestion:0}:n)},[]),At=Te?.sheetId===ge.id,St=Te?En(Te.text,Te.caret):null,Et=Te?function(e,t){if("="!==e[0])return null;const n=[];let r=!1;for(let o=1;o<t;o++){const t=e[o];if('"'===t&&(r=!r),!r)if("("===t){const t=/([A-Za-z][A-Za-z0-9.]*)$/.exec(e.slice(1,o));n.push({name:t?t[1].toUpperCase():"",argIndex:0})}else")"===t?n.pop():","!==t&&";"!==t||!n.length||n[n.length-1].argIndex++}for(let e=n.length-1;e>=0;e--)if(n[e].name)return n[e];return null}(Te.text,Te.caret):null,Ft=!!Te&&(null!==Te.pick||function(e,t){if("="!==e[0]||Sn(e,t))return!1;const n=e.slice(0,t).trimEnd(),r=e.slice(t).trimStart()[0];return!(void 0!==r&&!/[,;)+\-*/^&=<>%]/.test(r))&&/[=(,;+\-*/^&<>]$/.test(n)}(Te.text,Te.caret)),Rt=F(()=>Te?function(e,t,n,r,o){if("="!==e[0])return[];const l=[];let i=0;for(const s of re(e.slice(1)).tokens){if("ref"!==s.type)continue;const e=An[i++%An.length];if(!(null===s.ref.sheet?n:s.ref.sheet.toLowerCase()===t.toLowerCase()))continue;const c=s.ref.b??s.ref.a,a=V({row:s.ref.a.row??0,col:s.ref.a.col??0},{row:c.row??r-1,col:c.col??o-1});l.push({range:a,color:e})}return l}(Te.text,ge.name,At,ge.rowCount,ge.colCount):[],[Te,ge.name,ge.rowCount,ge.colCount,At]),Tt=R((e,t)=>{const n=Ue.current;if(!n)return;const r=ae({sheet:n.sheetId===q.current[Me.current].id?null:q.current[Me.current].name,a:{row:e.r1,col:e.c1,rowAbs:!1,colAbs:!1},b:e.r1===e.r2&&e.c1===e.c2?null:{row:e.r2,col:e.c2,rowAbs:!1,colAbs:!1}}),o=n.pick?.start??n.caret,l=n.pick?.end??n.caret,i=n.text.slice(0,o)+r+n.text.slice(l),s=o+r.length;yt.current=s,De({...n,text:i,caret:s,pick:t?null:{start:o,end:s}})},[]),Dt=R(e=>{const t=Ue.current,n=t?En(t.text,t.caret):null;if(!t||!n)return;const r=function(e,t,n,r){const o=`${r}(`;return{text:e.slice(0,n)+o+e.slice(t),caret:n+o.length}}(t.text,t.caret,n.start,e);yt.current=r.caret,De({...t,text:r.text,caret:r.caret,suggestion:0,pick:null})},[]),jt=e=>{if(Te){if(e.stopPropagation(),St){if("ArrowDown"===e.key||"ArrowUp"===e.key){e.preventDefault();const t=St.matches.length;return void De({...Te,suggestion:(Te.suggestion+("ArrowDown"===e.key?1:t-1))%t})}if("Tab"===e.key||"Enter"===e.key&&Te.suggestion>0)return e.preventDefault(),void Dt(St.matches[Te.suggestion])}if("Enter"===e.key){if(e.altKey){e.preventDefault();const{selectionStart:t,selectionEnd:n,value:r}=e.currentTarget,o=`${r.slice(0,t)}\n${r.slice(n)}`;return yt.current=t+1,void Mt(o,t+1)}return e.preventDefault(),e.ctrlKey||e.metaKey?(kt($e.range),void ut()):(kt(),void $t(e.shiftKey?-1:1,0))}if("Tab"===e.key)return e.preventDefault(),kt(),void $t(0,e.shiftKey?-1:1);if("F4"===e.key){e.preventDefault();const t=function(e,t){if("="!==e[0])return null;const n=t-1;for(const t of re(e.slice(1)).tokens){if("ref"!==t.type||n<t.start||n>t.end)continue;const r=ae({...t.ref,a:he(t.ref.a),b:t.ref.b?he(t.ref.b):null});return{text:`=${e.slice(1,t.start+1)}${r}${e.slice(t.end+1)}`,caret:t.start+1+r.length}}return null}(Te.text,e.currentTarget.selectionStart);return void(t&&(yt.current=t.caret,Mt(t.text,t.caret)))}"enter"!==Te.mode||Te.inBar||se(Te.text)||!e.key.startsWith("Arrow")||(e.preventDefault(),kt(),$t("ArrowDown"===e.key?1:"ArrowUp"===e.key?-1:0,"ArrowRight"===e.key?1:"ArrowLeft"===e.key?-1:0))}},Ht=e=>{const t=e.currentTarget.selectionStart;De(e=>e&&e.caret!==t?{...e,caret:t,pick:null}:e)},nn=R(e=>{kt(),e(),ut()},[kt,ut]),rn=A($e);rn.current=$e;const on=R(e=>{nn(()=>ft(t=>_t(t,rn.current.range,e)))},[nn,ft]),an=R(e=>{const t=!Fe[e];on(n=>Jt(n,e,t||void 0))},[Fe,on]),un=R(e=>{on(t=>Jt(t,"numFmt","General"===e?void 0:e))},[on]),bn=R(e=>{const t=we.value(pe,Ee.row,Ee.col),n=function(e,t,n){let r=e;if(!r||"General"===r){const e=null===n?0:Math.min(9,(String(n).split(".")[1]??"").length);r=e>0?`0.${"0".repeat(e)}`:"0"}return"@"===r||ye(r)?r:ve(r).map(e=>{const n=e.match(/"[^"]*"|\\.|\[[^\]]*\]|./g)??[];let r=-1,o=-1;return n.forEach((e,t)=>{"."===e&&-1===o&&(o=t),"0"!==e&&"#"!==e&&"?"!==e||(r=t)}),-1===r?e:(1===t?-1===o?n.splice(r+1,0,".","0"):n.splice(r+1,0,"0"):-1!==o&&(r-o===1?n.splice(o,2):n.splice(r,1)),n.join(""))}).join(";")}(Fe.numFmt??"General",e,"number"==typeof t?t:null);un(n)},[Ee,Fe.numFmt,we,pe,un]),vn=R((e,t)=>{const{range:n}=$e,[r,o]="row"===e?[n.r1,n.r2]:[n.c1,n.c2],l="row"===e?ge.rowCount:ge.colCount,i=o-r+1>=l?1:o-r+1;l+i>("row"===e?I:L)||nn(()=>oe(n=>ln(n,pe,e,t?o+1:r,i)))},[ge.colCount,ge.rowCount,oe,pe,nn,$e]),xn=R(e=>{const{range:t}=$e,[n,r]="row"===e?[t.r1,t.r2]:[t.c1,t.c2],o="row"===e?ge.rowCount:ge.colCount,l=Math.min(r-n+1,o-1);l<1||nn(()=>{oe(t=>ln(t,pe,e,n,-l)),gt({row:"row"===e?Math.min(n,o-l-1):$e.active.row,col:"col"===e?Math.min(n,o-l-1):$e.active.col})})},[ge.colCount,ge.rowCount,oe,pe,nn,gt,$e]),yn=R(e=>{const{range:t}=$e;nn(()=>ft(n=>{if("row"===e){const e=new Set(n.hiddenRows);for(let n=t.r1;n<=t.r2;n++)e.add(n);return{...n,hiddenRows:[...e]}}const r=new Set(n.hiddenCols);for(let e=t.c1;e<=t.c2;e++)r.add(e);return{...n,hiddenCols:[...r]}}))},[nn,$e,ft]),Cn=R(e=>{nn(()=>ft(t=>"row"===e?{...t,hiddenRows:[]}:{...t,hiddenCols:[]}))},[nn,ft]),kn=R(e=>{nn(()=>ft(t=>{const n=$e.range.r1===$e.range.r2&&$e.range.c1===$e.range.c2,r=0===$e.range.r1&&$e.range.r2===t.rowCount-1;let o=n?cn(t,$e.range):$e.range;return r&&(o={...o,r2:Math.max(o.r1,Bt(t)?.row??0)}),t.filter&&H(t.filter.range,$e.active.row,$e.active.col)&&(o={...t.filter.range,r1:t.filter.range.r1+1}),sn(t,pe,we,o,$e.active.col,e)}))},[we,pe,nn,$e,ft]),Nn=R(()=>{Ke(null),nn(()=>ft(e=>{if(e.filter)return{...e,filter:null};const t=cn(e,$e.range);return t.r1===t.r2?e:{...e,filter:{range:t,excluded:{}}}}))},[nn,$e.range,ft]),Rn=R(()=>{nn(()=>ft(e=>{return e.merges.some(e=>H($e.range,e.r1,e.c1))?(t=e,n=$e.range,{...t,merges:t.merges.filter(e=>!K(e,n))}):function(e,t){if(t.r1===t.r2&&t.c1===t.c2)return e;const n=[];Yt(t,(r,o)=>{r===t.r1&&o===t.c1||""===Lt(e,r,o)||n.push({row:r,col:o,raw:""})});const r=Gt(e,n);return{...r,merges:[...r.merges.filter(e=>!K(e,t)),t]}}(e,$e.range);var t,n}))},[nn,$e.range,ft]),Tn=R((e,t)=>{nn(()=>ft(n=>({...n,frozenRows:e??n.frozenRows,frozenCols:t??n.frozenCols})))},[nn,ft]),Dn=R(e=>{const{range:t,active:n}=$e,r=t.r1===t.r2&&t.c1===t.c2;let o="";if(r){const e=(e,t)=>"number"==typeof we.value(pe,e,t);let t=n.row;for(;t>0&&e(t-1,n.col);)t--;let r=n.col;for(;r>0&&e(n.row,r-1);)r--;t<n.row?o=W({r1:t,c1:n.col,r2:n.row-1,c2:n.col}):r<n.col&&(o=W({r1:n.row,c1:r,r2:n.row,c2:n.col-1}))}else o=W(t);const l=r?n:{row:t.r2+1,col:t.c1};kt(),r||gt(l);const i=`=${e}(${o})`;yt.current=i.length-1,Ct(l,{text:i})},[kt,we,pe,gt,$e,Ct]),Un=R((e,t)=>{const n=$e.range,r={...n,r2:Math.min(n.r2,Math.max(n.r1,ge.cells.length-1))},o=function(e,t,n,r,o){const l=[];for(let o=r.r1;o<=r.r2;o++){const i=[];for(let l=r.c1;l<=r.c2;l++){const r=Lt(e,o,l);i.push({raw:r,display:Kt(e,t,n,o,l).text,value:""===r?null:n.value(t,o,l),format:e.formats[It(o,l)]})}l.push(i)}return{sheetId:e.id,range:r,cut:o,cells:l,text:l.map(e=>e.map(e=>{return t=e.display,/["\t\n]/.test(t)?`"${t.replace(/"/g,'""')}"`:t;var t}).join("\t")).join("\n")}}(ge,pe,we,r,e);Ie(o),t?(t.preventDefault(),t.clipboardData.setData("text/plain",o.text)):navigator.clipboard?.writeText(o.text).catch(()=>{})},[ge,we,pe,$e.range]),On=R((e,t)=>{const{range:n}=$e;if(Oe&&Oe.text===e){if(Oe.cut){const e=q.current.findIndex(e=>e.id===Oe.sheetId);if(e<0)return;let t=null;return oe(r=>{const o=function(e,t,n,r,o){const{range:l}=n,i=o.r1-l.r1,s=o.c1-l.c1,c=e[r].name,a=t!==r,u=tn(e,t,e=>{const t=e.a.row,n=e.a.col,r=e.b?e.b.row:e.a.row,o=e.b?e.b.col:e.a.col;if(null===t||null===n||null===r||null===o)return e;if(!H(l,t,n)||!H(l,r,o))return e;const u=e=>({...e,row:e.row+i,col:e.col+s});return{...e,sheet:a?c:e.sheet,a:u(e.a),b:e.b?u(e.b):null}}),f=u.map((e,n)=>{if(n!==t)return e;const r={...e.formats};return Yt(l,(e,t)=>{delete r[It(e,t)]}),{...Zt(e,l),formats:r}}),h={...n,cells:n.cells.map((e,n)=>e.map((e,r)=>({...e,raw:Lt(u[t],l.r1+n,l.c1+r)})))},d={r1:o.r1,c1:o.c1,r2:o.r1+n.cells.length-1,c2:o.c1+(n.cells[0]?.length??1)-1},m=hn(f[r],h,d,"all");return{sheets:f.map((e,t)=>t===r?m.sheet:e),range:m.range}}(r,e,Oe,pe,n);return t=o.range,o.sheets}),t&&Ae({active:{row:t.r1,col:t.c1},range:t}),void Ie(null)}return void ft(e=>{const r=hn(e,Oe,n,t);return Ae({active:$e.active,range:r.range}),r.sheet})}if(!e)return;const r=function(e){const t=e.replace(/\r\n?/g,"\n").replace(/\n$/,"");if(!t.includes("\t")&&!t.includes("\n"))return[[t]];if(!t.includes('"'))return t.split("\n").map(e=>e.split("\t"));const n=pn(t.includes("\t")?t:`${t}\t`);return n.length?n:[[t]]}(e);ft(e=>{let t=e;r.forEach((e,r)=>e.forEach((e,o)=>{t=Xt(t,n.r1+r,n.c1+o,e)}));const o=r.reduce((e,t)=>Math.max(e,t.length),1);return Ae({active:$e.active,range:{r1:n.r1,c1:n.c1,r2:n.r1+r.length-1,c2:n.c1+o-1}}),t})},[Oe,oe,pe,$e,Ae,ft]),In=R(e=>{nn(()=>{const t=navigator.clipboard?.readText?.();t?t.then(t=>On(t,e)).catch(()=>{Oe&&On(Oe.text,e)}):Oe&&On(Oe.text,e)})},[Oe,On,nn]);dt.current=()=>Ue.current?(Nt(),!0):He?(Ke(null),ut(),!0):Xe?(Ye(null),ut(),!0):Be?(Ge(!1),ut(),!0):null!==Ze?(_e(null),ut(),!0):Je?(Qe(!1),ut(),!0):!(!Oe&&!Ve)&&(Ie(null),We(null),!0);const Ln=Z||a.spreadsheetFile,Pn=R(async()=>{kt();try{const e=q.current;cr(await Gn(e,zt(e)),"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",`${Ln}.xlsx`),ue.current=e,ne(e=>e+1)}catch{w.error(a.saveFailed)}},[kt,Ln,a]),zn=()=>{const e=q.current,t=Math.min(Me.current,e.length-1);return function(e,t,n){const r=Bt(e);if(!r)return"";const o=[];for(let l=0;l<=r.row;l++){const i=[];for(let o=0;o<=r.col;o++){const r=Lt(e,l,o),s=Kt(e,t,n,l,o).text;i.push(gn("'"===r[0]&&/^[=+\-@]/.test(s)?r:s))}o.push(i.join(","))}return o.join("\n")}(e[t],t,zt(e))},jn=F(()=>Je?function(e,t,n,r,o){if(!r)return[];const l=dn(r,o),i=[];return e.cells.forEach((r,s)=>r.forEach((r,c)=>{if(""===r)return;const a=o.inFormulas?r:Kt(e,t,n,s,c).text;l(a)&&i.push({row:s,col:c})})),i}(ge,pe,we,qe,rt):[],[ge,we,Je,rt,qe,pe]),Vn=jn.findIndex(e=>e.row===$e.active.row&&e.col===$e.active.col),Wn=e=>{if(!jn.length)return;const t=Vn<0?e>0?0:jn.length-1:(Vn+e+jn.length)%jn.length;gt(jn[t])},Hn=()=>{kt();const e=pe+1;oe(t=>{const n=Pt(t,a.sheetBase);return[...t.slice(0,e),Ot(n),...t.slice(e)]}),Y(e),ut()},Kn=()=>{if(!Xe)return;const{index:e,name:t}=Xe;Ye(null);const n=t.trim();n&&n!==B[e]?.name&&(B.some((t,r)=>r!==e&&t.name.toLowerCase()===n.toLowerCase())?w.error(a.sheetNameTaken):oe(t=>function(e,t,n){return tn(e,t,e=>null===e.sheet?e:{...e,sheet:n}).map((e,r)=>r===t?{...e,name:n}:e)}(t,e,n)))},Bn=async e=>{if(B.length<=1)return;if(null!==Bt(B[e])){if(!await g({title:a.deleteSheetTitle,message:a.deleteSheetMessage(B[e].name),confirmLabel:a.deleteSheet}))return}oe(t=>function(e,t){return tn(e,t,e=>null===e.sheet?e:null).filter((e,n)=>n!==t)}(t,e)),Y(t=>t>e||t>=B.length-1?Math.max(0,t-1):t)},Xn=(e,t)=>{const n=e+t;n<0||n>=B.length||(oe(t=>{const r=[...t],[o]=r.splice(e,1);return r.splice(n,0,o),r}),e===pe?Y(n):n===pe&&Y(e))},Yn=R(e=>{Ue.current&&kt(),Ae(e),Ve&&(ft(t=>_t(t,e.range,()=>Ve)),We(null))},[kt,Ve,Ae,ft]),Zn=R((e,t,n)=>{"cell"!==t||H($e.range,n.row,n.col)?"col"!==t||0===$e.range.r1&&$e.range.r2===ge.rowCount-1&&n.col>=$e.range.c1&&n.col<=$e.range.c2?"row"!==t||0===$e.range.c1&&$e.range.c2===ge.colCount-1&&n.row>=$e.range.r1&&n.row<=$e.range.r2||Ae({active:{row:n.row,col:0},range:{r1:n.row,c1:0,r2:n.row,c2:ge.colCount-1}}):Ae({active:{row:0,col:n.col},range:{r1:0,c1:n.col,r2:ge.rowCount-1,c2:n.col}}):gt(n),ct.open(e,{kind:t,pos:n})},[ge.colCount,ge.rowCount,ct,gt,$e.range,Ae]),_n=R((e,t)=>{if(!ge.filter)return;const n=function(e,t,n,r,o){const l=/* @__PURE__ */new Set;for(let i=r.r1+1;i<=r.r2;i++)l.add(Kt(e,t,n,i,o).text);return[...l].sort((e,t)=>e.localeCompare(t,void 0,{numeric:!0}))}(ge,pe,we,ge.filter.range,e);Ke({col:e,x:t.left,y:t.bottom+2,values:n,unticked:new Set(ge.filter.excluded[e]??[]),search:""})},[ge,we,pe]),Jn=(e,t)=>{Ke(null),nn(()=>ft(n=>{if(!n.filter)return n;const{range:r}=n.filter;return sn(n,pe,we,{...r,r1:r.r1+1},e,t)}))},Qn=F(()=>{const{range:e}=$e;return e.r1===e.r2&&e.c1===e.c2?null:function(e,t,n,r,o){let l,i=0,s=0,c=0,a=1/0,u=-1/0;const f=Math.min(r.r2,e.cells.length-1);for(let h=r.r1;h<=f;h++){if(o.has(h))continue;const f=e.cells[h];if(!f)continue;const d=Math.min(r.c2,f.length-1);for(let o=r.c1;o<=d;o++){if(""===f[o])continue;s++;const r=n.value(t,h,o);"number"==typeof r&&(c++,i+=r,r<a&&(a=r),r>u&&(u=r),l??=e.formats[It(h,o)]?.numFmt)}}return{sum:i,average:c?i/c:null,count:s,numbers:c,min:a,max:u,firstFormat:l}}(ge,pe,we,e,be)},[ge,we,be,pe,$e]),qn=e=>Se(Number(e.toPrecision(12)),Qn?.firstFormat??"#,##0.##").text,er=(e,t)=>/* @__PURE__ */U("span",{className:"flex w-full items-center justify-between gap-6",children:[
14
+ /* @__PURE__ */D("span",{children:e}),
15
+ /* @__PURE__ */D("span",{className:"text-xs text-ink-faint",children:t})]}),tr=(e,t,n,r={})=>({key:e,label:t,onSelect:n,...r}),nr=e=>({type:"divider",key:e}),rr=[{key:"general",label:a.formatGeneral,code:de.general},{key:"number",label:a.formatNumber,code:de.number},{key:"percent",label:a.formatPercent,code:de.percent},{key:"scientific",label:a.formatScientific,code:de.scientific},{key:"currency",label:a.formatCurrency,code:de.currency},{key:"date",label:a.formatDate,code:de.date},{key:"time",label:a.formatTime,code:de.time},{key:"dateTime",label:a.formatDateTime,code:de.dateTime},{key:"text",label:a.formatText,code:de.text}].map(e=>({type:"radio",key:e.key,label:e.label,checked:(Fe.numFmt??"General")===e.code,onSelect:()=>un(e.code)})),ar=[["all",a.bordersAll],["outer",a.bordersOuter],["top",a.bordersTop],["bottom",a.bordersBottom],["left",a.bordersLeft],["right",a.bordersRight],["none",a.bordersNone]].map(([e,t])=>tr(e,t,()=>nn(()=>ft(t=>Qt(t,$e.range,e))))),fr=[...["left","center","right"].map(e=>({type:"radio",key:e,label:"left"===e?a.alignLeft:"center"===e?a.alignCenter:a.alignRight,checked:Fe.align===e,onSelect:()=>on(t=>Jt(t,"align",e))})),nr("v"),...["top","middle","bottom"].map(e=>({type:"radio",key:e,label:"top"===e?a.alignTop:"middle"===e?a.alignMiddle:a.alignBottom,checked:(Fe.vAlign??"bottom")===e,onSelect:()=>on(t=>Jt(t,"vAlign",e))}))],hr=lr.map(e=>({type:"radio",key:String(e),label:String(e),checked:(Fe.fontSize??Ut)===e,onSelect:()=>on(t=>Jt(t,"fontSize",e===Ut?void 0:e))})),dr=["SUM","AVERAGE","COUNT","MAX","MIN"].map(e=>tr(e,e,()=>Dn(e))),mr=[...[0,1,2].map(e=>({type:"radio",key:`r${e}`,label:a.freezeRows(e),checked:ge.frozenRows===e,onSelect:()=>Tn(e,null)})),{type:"radio",key:"rUp",label:a.freezeUpToRow(Ee.row+1),checked:ge.frozenRows===Ee.row+1&&Ee.row>1,onSelect:()=>Tn(Ee.row+1,null)},nr("c"),...[0,1,2].map(e=>({type:"radio",key:`c${e}`,label:a.freezeColumns(e),checked:ge.frozenCols===e,onSelect:()=>Tn(null,e)})),{type:"radio",key:"cUp",label:a.freezeUpToColumn(j(0,Ee.col).replace(/\d+$/,"")),checked:ge.frozenCols===Ee.col+1&&Ee.col>1,onSelect:()=>Tn(null,Ee.col+1)}],pr=[tr("new",a.menuNew,()=>nn(()=>{oe(()=>[Ot(a.sheetName(1))]),Y(0),_(a.untitled)})),tr("open",a.menuOpen,()=>Ce.current?.click()),nr("a"),tr("xlsx",er(a.saveExcel,`${sr}S`),()=>{Pn()}),tr("csv",a.saveCsv,()=>nn(()=>cr(zn(),"text/csv",`${Ln}.csv`))),...J?[nr("b"),tr("email",a.email,()=>nn(()=>J(zn(),`${Ln}.csv`)))]:[]],gr=[tr("undo",er(a.undo,`${sr}Z`),()=>nn(ie),{disabled:0===ee.current.length}),tr("redo",er(a.redo,ir?"⇧⌘Z":"Ctrl+Y"),()=>nn(ce),{disabled:0===te.current.length}),nr("a"),tr("cut",er(a.cut,`${sr}X`),()=>nn(()=>Un(!0))),tr("copy",er(a.copy,`${sr}C`),()=>nn(()=>Un(!1))),tr("paste",er(a.paste,`${sr}V`),()=>In("all")),tr("pasteValues",a.pasteValues,()=>In("values")),tr("pasteFormats",a.pasteFormats,()=>In("formats")),nr("b"),tr("find",er(a.findReplace,`${sr}F`),()=>{Qe(!0),setTimeout(()=>st.current?.focus(),0)}),tr("clear",er(a.clearValues,"Delete"),()=>nn(()=>ft(e=>Zt(e,$e.range))))],wr=[{type:"submenu",key:"freeze",label:a.freeze,items:mr},{type:"checkbox",key:"gridlines",label:a.gridlines,checked:Le,onSelect:()=>Pe(e=>!e)},{type:"checkbox",key:"formulas",label:er(a.showFormulas,`${sr}\``),checked:ze,onSelect:()=>je(e=>!e)}],br=[tr("rowAbove",a.rowsAbove,()=>vn("row",!1)),tr("rowBelow",a.rowsBelow,()=>vn("row",!0)),tr("colLeft",a.columnsLeft,()=>vn("col",!1)),tr("colRight",a.columnsRight,()=>vn("col",!0)),nr("a"),tr("sheet",a.sheet,Hn),{type:"submenu",key:"fn",label:a.function,items:dr}],vr=[{type:"submenu",key:"number",label:a.number,items:rr},nr("a"),tr("bold",er(a.bold,`${sr}B`),()=>an("bold")),tr("italic",er(a.italic,`${sr}I`),()=>an("italic")),tr("underline",er(a.underline,`${sr}U`),()=>an("underline")),tr("strike",a.strikethrough,()=>an("strike")),{type:"submenu",key:"size",label:a.fontSize,items:hr},nr("b"),{type:"submenu",key:"align",label:a.alignment,items:fr},{type:"submenu",key:"borders",label:a.borders,items:ar},tr("wrap",a.wrapText,()=>an("wrap")),tr("merge",a.mergeCells,Rn),nr("c"),tr("clearFormat",a.clearFormatting,()=>nn(()=>ft(e=>_t(e,$e.range,()=>({})))))],xr=[tr("asc",a.sortAscending,()=>kn(!0)),tr("desc",a.sortDescending,()=>kn(!1)),nr("a"),{type:"checkbox",key:"filter",label:a.filter,checked:!!ge.filter,onSelect:Nn},nr("b"),tr("hideRows",a.hideRows,()=>yn("row")),tr("hideCols",a.hideColumns,()=>yn("col")),tr("unhideRows",a.unhideRows,()=>Cn("row"),{disabled:!ge.hiddenRows.length}),tr("unhideCols",a.unhideColumns,()=>Cn("col"),{disabled:!ge.hiddenCols.length})],yr="rounded px-2 py-0.5 text-xs text-ink-muted hover:bg-line-subtle hover:text-ink",Cr="inline-flex h-7 items-center gap-1 rounded px-2 text-xs text-ink-muted hover:bg-line-subtle hover:text-ink",kr=/* @__PURE__ */D("div",{className:"mx-1 h-4 w-px bg-line"}),Nr=e=>e.preventDefault(),$r=(e,t,n,r={})=>/* @__PURE__ */D(c,{"aria-label":e,title:e,size:"sm",variant:"ghost",onMouseDown:Nr,onClick:n,disabled:r.disabled,...void 0!==r.pressed?{"aria-pressed":r.pressed}:{},children:t}),Mr=(n,r,o)=>/* @__PURE__ */D(t,{triggerLabel:n,align:"start",triggerClassName:"inline-flex h-7 w-7 flex-col items-center justify-center rounded text-ink-muted hover:bg-line-subtle hover:text-ink",trigger:/* @__PURE__ */U(O,{children:[r,
16
+ /* @__PURE__ */D("span",{className:"h-0.5 w-4 rounded-sm",style:{background:Fe[o]??("color"===o?"var(--ink)":"var(--line)")}})]}),children:({close:t})=>/* @__PURE__ */D(e,{label:n,value:Fe[o]??"",presets:Mn,clearable:!0,dragWrites:"end",onChange:e=>{on(t=>Jt(t,o,e||void 0)),t()}})}),Ar=e=>{if(!Te||!At||Te.inBar)return null;const t=ge.formats[It(Te.row,Te.col)],n=(t?.fontSize??Ut)*(4/3),r=Math.min(Math.max(e.width,Te.text.length*n*.62+16),e.viewportWidth-e.x-4);/* @__PURE__ */
17
+ return D("textarea",{ref:it,"aria-label":a.cellEditor,value:Te.text,spellCheck:!1,rows:1,onChange:e=>Mt(e.target.value,e.target.selectionStart),onSelect:Ht,onKeyDown:jt,onPointerDown:e=>e.stopPropagation(),className:"absolute resize-none overflow-hidden border-2 border-accent-fill bg-surface text-ink outline-none",style:{left:e.x,top:e.y,width:r,minHeight:e.height,height:Math.max(e.height,Te.text.split("\n").length*n*1.35+6),padding:"0 2px",fontSize:n,lineHeight:1.3,fontWeight:t?.bold?700:void 0,fontStyle:t?.italic?"italic":void 0,background:t?.fill??void 0,color:t?.color??void 0}})},Sr=e=>{if(!Te||!At)return null;const t=e.y+e.height+2,n=Math.max(0,Math.min(e.x,e.viewportWidth-320));if(St)/* @__PURE__ */
18
+ return U("div",{role:"listbox","aria-label":a.functions,className:"absolute w-80 overflow-hidden rounded-lg border border-line bg-surface shadow-lg",style:{left:n,top:t},onPointerDown:e=>e.preventDefault(),children:[St.matches.map((e,t)=>/* @__PURE__ */U("div",{role:"option","aria-selected":t===Te.suggestion,onPointerDown:t=>{t.preventDefault(),t.stopPropagation(),Dt(e)},className:"flex cursor-pointer items-center justify-between gap-3 px-2 py-1 text-xs "+(t===Te.suggestion?"bg-accent-tint text-accent-text":"text-ink hover:bg-surface-sunken"),children:[
19
+ /* @__PURE__ */D("span",{className:"font-medium",children:e}),
20
+ /* @__PURE__ */D("span",{className:"truncate "+(t===Te.suggestion?"text-accent-text":"text-ink-muted"),children:a.functionHelp(e)})]},e)),
21
+ /* @__PURE__ */U("div",{className:"border-t border-line px-2 py-1 font-mono text-xs text-ink-muted",children:[St.matches[Te.suggestion],"(",Fn[St.matches[Te.suggestion]]??"",")"]})]});if(Et&&void 0!==Fn[Et.name]){const e=Fn[Et.name].split(", ");/* @__PURE__ */
22
+ return U("div",{className:"absolute max-w-md rounded-lg border border-line bg-surface px-2 py-1 text-xs text-ink-muted shadow-lg",style:{left:n,top:t},children:[
23
+ /* @__PURE__ */U("div",{className:"font-mono",children:[Et.name,"(",e.map((t,n)=>/* @__PURE__ */U("span",{children:[n>0?", ":"",
24
+ /* @__PURE__ */D("span",{className:n===Math.min(Et.argIndex,e.length-1)?"font-semibold text-ink":"",children:t})]},t+n)),")"]}),
25
+ /* @__PURE__ */D("div",{className:"mt-0.5",children:a.functionHelp(Et.name)})]})}return null},Er=He?He.values.filter(e=>e.toLowerCase().includes(He.search.toLowerCase())):[];/* @__PURE__ */
26
+ return U("div",{ref:ht,className:"flex h-full flex-col bg-surface text-ink",children:[
27
+ /* @__PURE__ */D(p,{title:`${Tr=Z||a.untitled,Tr.length>24?`${Tr.slice(0,23)}…`:Tr} - Spreadsheets`}),
28
+ /* @__PURE__ */D(u,{app:"spreadsheet"}),
29
+ /* @__PURE__ */D("input",{ref:Ce,type:"file",accept:".csv,.tsv,.txt,.xlsx,.xls,.ods",onChange:async e=>{const t=e.target.files?.[0];if(Ce.current&&(Ce.current.value=""),!t)return;const n=t.name.replace(/\.(csv|tsv|txt|xlsx|xls|ods)$/i,"");try{if(kt(),/\.(xlsx|xls|ods)$/i.test(t.name)){const e=new Uint8Array(await t.arrayBuffer()),n=/\.xlsx$/i.test(t.name)&&"undefined"!=typeof DecompressionStream?await or(e):await async function(e){const t=await(import("xlsx")),n=t.read(e,{type:"array",cellFormula:!0,cellNF:!0});return n.SheetNames.map(e=>{const r=n.Sheets[e],o=Ot(e),l=[],i={};if(r["!ref"]){const e=t.utils.decode_range(r["!ref"]);for(let n=e.s.r;n<=e.e.r;n++)for(let o=e.s.c;o<=e.e.c;o++){const e=r[t.utils.encode_cell({r:n,c:o})];if(!e||void 0===e.v&&!e.f)continue;const s=e.f?`=${e.f}`:"b"===e.t?e.v?"TRUE":"FALSE":String(e.v);l.push({row:n,col:o,raw:"s"===e.t&&/^(?:=|-?\d|'|true$|false$)/i.test(s)?`'${s}`:s}),e.z&&"General"!==e.z&&(i[It(n,o)]={numFmt:e.z})}}const s={};(r["!cols"]??[]).forEach((e,t)=>{e?.wpx&&(s[t]=e.wpx)});const c=(r["!merges"]??[]).map(e=>({r1:e.s.r,c1:e.s.c,r2:e.e.r,c2:e.e.c}));return{...Gt(o,l),formats:i,colWidths:s,merges:c}})}(e);oe(()=>n),Y(0)}else{const e=pn(await t.text());if(!e.length)return;ft(t=>({...wn(t.name,e),id:t.id}))}_(n)}catch{w.error(a.openFailed)}},className:"hidden"}),
30
+ /* @__PURE__ */U("div",{className:"flex shrink-0 items-center gap-1 border-b border-line bg-surface-sunken px-2 py-1",children:[Be?/* @__PURE__ */D("input",{type:"text",value:Z,autoFocus:!0,"aria-label":a.rename,onChange:e=>_(e.target.value),onBlur:()=>Ge(!1),onKeyDown:e=>{"Enter"===e.key&&(Ge(!1),ut())},className:"w-40 rounded border border-line bg-surface px-2 py-0.5 text-sm font-medium text-ink"}):/* @__PURE__ */D("button",{type:"button",onClick:()=>Ge(!0),title:a.rename,className:"max-w-[200px] truncate rounded px-2 py-0.5 text-sm font-medium text-ink hover:bg-line-subtle",children:Z||a.untitled}),
31
+ /* @__PURE__ */D(s,{trigger:a.menuFile,items:pr,align:"start",triggerClassName:yr}),
32
+ /* @__PURE__ */D(s,{trigger:a.menuEdit,items:gr,align:"start",triggerClassName:yr}),
33
+ /* @__PURE__ */D(s,{trigger:a.menuView,items:wr,align:"start",triggerClassName:yr}),
34
+ /* @__PURE__ */D(s,{trigger:a.menuInsert,items:br,align:"start",triggerClassName:yr}),
35
+ /* @__PURE__ */D(s,{trigger:a.menuFormat,items:vr,align:"start",triggerClassName:yr}),
36
+ /* @__PURE__ */D(s,{trigger:a.menuData,items:xr,align:"start",triggerClassName:yr})]}),
37
+ /* @__PURE__ */U("div",{className:"flex shrink-0 flex-wrap items-center gap-0.5 border-b border-line bg-surface-sunken px-2 py-1",children:[$r(a.undo,/* @__PURE__ */D(C,{name:"undo",size:16}),()=>nn(ie),{disabled:0===ee.current.length}),$r(a.redo,/* @__PURE__ */D(C,{name:"redo",size:16}),()=>nn(ce),{disabled:0===te.current.length}),$r(a.formatPainter,/* @__PURE__ */D(C,{name:"copy-style",size:16}),()=>We(e=>e?null:Fe),{pressed:!!Ve}),kr,$r(a.formatCurrency,/* @__PURE__ */D(C,{name:"dollar",size:16}),()=>un(Fe.numFmt===de.currency?"General":de.currency),{pressed:Fe.numFmt===de.currency}),$r(a.formatPercent,/* @__PURE__ */D(C,{name:"percent",size:16}),()=>un(/%/.test(Fe.numFmt??"")?"General":"0%"),{pressed:/%/.test(Fe.numFmt??"")}),$r(a.fewerDecimals,/* @__PURE__ */D("span",{className:"text-xs",children:".0"}),()=>bn(-1)),$r(a.moreDecimals,/* @__PURE__ */D("span",{className:"text-xs",children:".00"}),()=>bn(1)),
38
+ /* @__PURE__ */D(s,{trigger:/* @__PURE__ */U("span",{title:a.number,className:"flex items-center gap-0.5",children:["123",
39
+ /* @__PURE__ */D(C,{name:"chevron-down",size:12})]}),"aria-label":a.number,items:rr,align:"start",triggerClassName:Cr}),kr,
40
+ /* @__PURE__ */D(s,{trigger:/* @__PURE__ */U("span",{title:a.fontSize,className:"flex items-center gap-0.5",children:[Fe.fontSize??Ut,
41
+ /* @__PURE__ */D(C,{name:"chevron-down",size:12})]}),"aria-label":a.fontSize,items:hr,align:"start",triggerClassName:Cr}),$r(a.bold,/* @__PURE__ */D(C,{name:"bold",size:16}),()=>an("bold"),{pressed:!!Fe.bold}),$r(a.italic,/* @__PURE__ */D(C,{name:"italic",size:16}),()=>an("italic"),{pressed:!!Fe.italic}),$r(a.underline,/* @__PURE__ */D(C,{name:"underline",size:16}),()=>an("underline"),{pressed:!!Fe.underline}),$r(a.strikethrough,/* @__PURE__ */D(C,{name:"strike",size:16}),()=>an("strike"),{pressed:!!Fe.strike}),Mr(a.textColor,/* @__PURE__ */D(C,{name:"text-color",size:14}),"color"),Mr(a.fillColor,/* @__PURE__ */D(C,{name:"palette",size:14}),"fill"),kr,
42
+ /* @__PURE__ */D(s,{trigger:/* @__PURE__ */U("span",{title:a.borders,className:"flex items-center gap-0.5",children:[
43
+ /* @__PURE__ */D(C,{name:"border-all",size:16}),
44
+ /* @__PURE__ */D(C,{name:"chevron-down",size:12})]}),"aria-label":a.borders,items:ar,align:"start",triggerClassName:Cr}),$r(a.mergeCells,/* @__PURE__ */D(C,{name:"grid",size:16}),Rn,{pressed:ge.merges.some(e=>H(e,Ee.row,Ee.col))}),
45
+ /* @__PURE__ */D(s,{trigger:/* @__PURE__ */U("span",{title:a.alignment,className:"flex items-center gap-0.5",children:["center"===Fe.align?/* @__PURE__ */D(C,{name:"align-center",size:16}):"right"===Fe.align?/* @__PURE__ */D(C,{name:"align-right",size:16}):/* @__PURE__ */D(C,{name:"align-left",size:16}),
46
+ /* @__PURE__ */D(C,{name:"chevron-down",size:12})]}),"aria-label":a.alignment,items:fr,align:"start",triggerClassName:Cr}),$r(a.wrapText,/* @__PURE__ */D(C,{name:"wrap",size:16}),()=>an("wrap"),{pressed:!!Fe.wrap}),kr,$r(a.filter,/* @__PURE__ */D(C,{name:"filter",size:16}),Nn,{pressed:!!ge.filter}),$r(a.sortAscending,/* @__PURE__ */D(C,{name:"sort",size:16}),()=>kn(!0)),
47
+ /* @__PURE__ */D(s,{trigger:/* @__PURE__ */U("span",{title:a.functions,className:"flex items-center gap-0.5 text-sm",children:["Σ",
48
+ /* @__PURE__ */D(C,{name:"chevron-down",size:12})]}),"aria-label":a.functions,items:dr,align:"end",triggerClassName:Cr})]}),
49
+ /* @__PURE__ */U("div",{className:"flex shrink-0 items-start gap-1 border-b border-line bg-surface px-2 py-1",children:[
50
+ /* @__PURE__ */D("input",{type:"text","aria-label":a.nameBox,spellCheck:!1,value:Ze??(Te&&At?j(Te.row,Te.col):W($e.range)),onFocus:e=>{_e(e.target.value),e.target.select()},onChange:e=>_e(e.target.value),onBlur:()=>_e(null),onKeyDown:e=>{if("Enter"===e.key){const e=function(e){const t=/^\$?([A-Za-z]{1,3})\$?(\d{1,7})(?::\$?([A-Za-z]{1,3})\$?(\d{1,7}))?$/.exec(e.trim());if(!t)return null;const n={row:Number(t[2])-1,col:z(t[1])},r=t[3]?{row:Number(t[4])-1,col:z(t[3])}:n;return n.row<0||r.row<0?null:V(n,r)}(Ze??"");e&&e.r2<ge.rowCount&&e.c2<ge.colCount&&(Ae({active:{row:e.r1,col:e.c1},range:en(ge,e)}),xe.current?.scrollTo({row:e.r1,col:e.c1})),_e(null),ut()}},className:"w-20 shrink-0 rounded border border-line bg-surface px-2 py-0.5 text-center text-xs text-ink"}),
51
+ /* @__PURE__ */D("span",{className:"select-none pt-0.5 font-serif text-sm italic text-ink-faint","aria-hidden":"true",children:"fx"}),
52
+ /* @__PURE__ */D("textarea",{ref:lt,"aria-label":a.formulaBar,spellCheck:!1,rows:1,value:Te?Te.text:Wt(Re,Fe),onFocus:()=>{Te?Te.inBar||De({...Te,inBar:!0}):Ct(Ee,{inBar:!0,mode:"edit"})},onChange:e=>{Te&&Mt(e.target.value,e.target.selectionStart)},onSelect:Ht,onKeyDown:jt,className:"max-h-24 min-h-[22px] flex-1 resize-y rounded border border-line bg-surface px-2 py-0.5 font-mono text-xs text-ink outline-none focus:border-accent-fill"})]}),Je&&/* @__PURE__ */U("div",{className:"flex shrink-0 flex-wrap items-center gap-1 border-b border-line bg-surface-sunken px-2 py-1 text-xs",children:[
53
+ /* @__PURE__ */D("div",{className:"w-44",children:/* @__PURE__ */D(i,{ref:st,size:"sm","aria-label":a.find,placeholder:a.find,value:qe,onChange:e=>et(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),Wn(e.shiftKey?-1:1))}})}),
54
+ /* @__PURE__ */D("span",{className:"w-16 text-center text-ink-muted",children:qe?a.hitCount(Vn<0?0:Vn+1,jn.length):""}),$r(a.previous,/* @__PURE__ */D(C,{name:"arrow-up",size:14}),()=>Wn(-1)),$r(a.next,/* @__PURE__ */D(C,{name:"arrow-down",size:14}),()=>Wn(1)),
55
+ /* @__PURE__ */D("div",{className:"w-44",children:/* @__PURE__ */D(i,{size:"sm","aria-label":a.replaceWith,placeholder:a.replaceWith,value:tt,onChange:e=>nt(e.target.value)})}),
56
+ /* @__PURE__ */D(y,{size:"sm",variant:"secondary",disabled:!jn.length,onClick:()=>{if(Vn<0)return void Wn(1);const{row:e,col:t}=jn[Vn];ft(n=>{const r=mn(Lt(n,e,t),qe,tt,rt);return r===Lt(n,e,t)?n:Gt(n,[{row:e,col:t,raw:r}])}),Wn(1)},children:a.replace}),
57
+ /* @__PURE__ */D(y,{size:"sm",variant:"secondary",disabled:!jn.length,onClick:()=>{let e=0;ft(t=>{const n=[];for(const{row:e,col:r}of jn){const o=mn(Lt(t,e,r),qe,tt,rt);o!==Lt(t,e,r)&&n.push({row:e,col:r,raw:o})}return e=n.length,Gt(t,n)}),w.success(a.replacedCount(e))},children:a.replaceAll}),
58
+ /* @__PURE__ */D(r,{label:a.matchCase,checked:rt.matchCase,onChange:e=>ot(t=>({...t,matchCase:e}))}),
59
+ /* @__PURE__ */D(r,{label:a.wholeCell,checked:rt.wholeCell,onChange:e=>ot(t=>({...t,wholeCell:e}))}),
60
+ /* @__PURE__ */D(r,{label:a.inFormulas,checked:rt.inFormulas,onChange:e=>ot(t=>({...t,inFormulas:e}))}),
61
+ /* @__PURE__ */D("div",{className:"ml-auto",children:$r(a.close,/* @__PURE__ */D(C,{name:"close",size:14}),()=>{Qe(!1),ut()})})]}),
62
+ /* @__PURE__ */D("div",{className:"min-h-0 flex-1",children:/* @__PURE__ */D($n,{ref:xe,sheet:ge,sheetIndex:pe,evaluator:we,filterHidden:be,selection:$e,showGridlines:Le,showFormulas:ze,clipRange:Oe&&Oe.sheetId===ge.id?Oe.range:null,highlights:Rt,pointing:Ft,onSelect:Yn,onPoint:Tt,onEdit:e=>{kt(),gt(e),Ct(qt(ge,e.row,e.col)?{row:qt(ge,e.row,e.col).r1,col:qt(ge,e.row,e.col).c1}:e)},onFill:e=>{const t=$e.range;ft(n=>fn(n,t,e)),Ae({active:$e.active,range:e})},onResizeCol:(e,t)=>ft(n=>{const{range:r}=$e,o=0===r.r1&&r.r2===n.rowCount-1&&e>=r.c1&&e<=r.c2,l={...n.colWidths};if(o)for(let e=r.c1;e<=r.c2;e++)l[e]=t;else l[e]=t;return{...n,colWidths:l}}),onResizeRow:(e,t)=>ft(n=>({...n,rowHeights:{...n.rowHeights,[e]:t}})),onAutoFitCol:e=>{const t=Math.max(40,xe.current?.measureColumn(e)??0);ft(n=>({...n,colWidths:{...n.colWidths,[e]:t}}))},onAutoFitRow:e=>ft(t=>{const n={...t.rowHeights};return delete n[e],{...t,rowHeights:n}}),onHeaderMenu:Zn,onFilterButton:_n,renderEditor:e=>/* @__PURE__ */U(O,{children:[Ar(e),Sr(e)]}),onKeyDown:e=>{if(Te)return;const t=e.ctrlKey||e.metaKey,r=e.key,o=r.toLowerCase(),l="ArrowUp"===r?[-1,0]:"ArrowDown"===r?[1,0]:"ArrowLeft"===r?[0,-1]:"ArrowRight"===r?[0,1]:null;if(l){e.preventDefault();const n=e.shiftKey?xt():$e.active,r=t?bt(n,l[0],l[1]):wt(n,l[0],l[1]);return void(e.shiftKey?vt(r):gt(r))}if("Tab"===r||"Enter"===r){if(e.preventDefault(),"Enter"===r&&t)return;const n=$e.range.r1!==$e.range.r2||$e.range.c1!==$e.range.c2,o="Enter"===r?e.shiftKey?-1:1:0,l="Tab"===r?e.shiftKey?-1:1:0;if(n){const{range:e}=$e;let{row:t,col:n}=$e.active;return t+=o,n+=l,n>e.c2&&(n=e.c1,t=t+1>e.r2?e.r1:t+1),n<e.c1&&(n=e.c2,t=t-1<e.r1?e.r2:t-1),t>e.r2&&(t=e.r1,n=n+1>e.c2?e.c1:n+1),t<e.r1&&(t=e.r2,n=n-1<e.c1?e.c2:n-1),Ae({active:{row:t,col:n},range:e}),void xe.current?.scrollTo({row:t,col:n})}return void gt(wt($e.active,o,l))}if("Home"===r)return e.preventDefault(),void gt(t?{row:ge.frozenRows,col:ge.frozenCols}:{row:$e.active.row,col:0});if("End"===r){e.preventDefault();const n=Bt(ge);return void gt(t?{row:n?.row??0,col:n?.col??0}:{row:$e.active.row,col:Math.max(0,(ge.cells[$e.active.row]?.length??1)-1)})}if("PageDown"===r||"PageUp"===r){e.preventDefault();const t="PageDown"===r?25:-25;return void gt({row:Math.max(0,Math.min(ge.rowCount-1,$e.active.row+t)),col:$e.active.col})}if("Delete"===r||"Backspace"===r)return e.preventDefault(),void ft(e=>Zt(e,$e.range));if("F2"===r)return e.preventDefault(),void Ct($e.active);if(" "===r&&(t||e.shiftKey))return e.preventDefault(),void Ae(t?{active:$e.active,range:{r1:0,c1:$e.range.c1,r2:ge.rowCount-1,c2:$e.range.c2}}:{active:$e.active,range:{r1:$e.range.r1,c1:0,r2:$e.range.r2,c2:ge.colCount-1}});if(!t)return!e.altKey||"="!==r&&"≠"!==r?1!==r.length||e.altKey?void("Process"!==r&&229!==e.keyCode||Ct($e.active,{text:""})):(e.preventDefault(),void Ct($e.active,{text:r})):(e.preventDefault(),void Dn("SUM"));switch(o){case"z":return e.preventDefault(),void(e.shiftKey?ce():ie());case"y":return e.preventDefault(),void ce();case"a":return e.preventDefault(),void Ae({active:$e.active,range:{r1:0,c1:0,r2:ge.rowCount-1,c2:ge.colCount-1}});case"b":return e.preventDefault(),void an("bold");case"i":return e.preventDefault(),void an("italic");case"u":return e.preventDefault(),void an("underline");case"f":case"h":return e.preventDefault(),Qe(!0),void setTimeout(()=>st.current?.focus(),0);case"s":return e.preventDefault(),void Pn();case"d":{e.preventDefault();const{range:t}=$e;return void(t.r2>t.r1?ft(e=>fn(e,{...t,r2:t.r1},t)):t.r1>0&&ft(e=>fn(e,{...t,r1:t.r1-1,r2:t.r1-1},{...t,r1:t.r1-1})))}case"r":{e.preventDefault();const{range:t}=$e;return void(t.c2>t.c1?ft(e=>fn(e,{...t,c2:t.c1},t)):t.c1>0&&ft(e=>fn(e,{...t,c1:t.c1-1,c2:t.c1-1},{...t,c1:t.c1-1})))}case";":return e.preventDefault(),void ft(e=>Xt(e,$e.active.row,$e.active.col,n(/* @__PURE__ */new Date)));case"`":return e.preventDefault(),void je(e=>!e)}if(e.shiftKey){if("$"===r||"4"===r)return e.preventDefault(),void un(de.currency);if("%"===r||"5"===r)return e.preventDefault(),void un("0%")}},onCopy:e=>{Te||Un(!1,e)},onCut:e=>{Te||Un(!0,e)},onPaste:e=>{Te||(e.preventDefault(),On(e.clipboardData.getData("text/plain"),"all"))}})}),
63
+ /* @__PURE__ */U("div",{className:"flex shrink-0 items-center border-t border-line bg-surface-sunken",children:[
64
+ /* @__PURE__ */U("div",{className:"flex min-w-0 flex-1 items-center gap-0.5 overflow-x-auto px-1 py-1",children:[
65
+ /* @__PURE__ */D(c,{"aria-label":a.addSheet,title:a.addSheet,size:"sm",variant:"ghost",onClick:Hn,children:/* @__PURE__ */D(C,{name:"add",size:14})}),B.map((e,t)=>/* @__PURE__ */D("button",{type:"button",onClick:()=>(e=>{Te&&!Ft&&kt(),Y(e),Ke(null)})(t),onDoubleClick:()=>Ye({index:t,name:e.name}),onContextMenu:e=>at.open(e,t),style:e.tabColor?{boxShadow:`inset 0 -3px 0 ${e.tabColor}`}:void 0,className:"whitespace-nowrap rounded px-3 py-1 text-xs font-medium "+(t===pe?"bg-accent-tint text-accent-text":"text-ink-muted hover:bg-line-subtle hover:text-ink"),children:Xe?.index===t?/* @__PURE__ */D("input",{type:"text",value:Xe.name,autoFocus:!0,"aria-label":a.rename,onChange:e=>Ye({index:t,name:e.target.value}),onBlur:Kn,onKeyDown:e=>{e.stopPropagation(),"Enter"===e.key&&Kn()},onClick:e=>e.stopPropagation(),className:"w-24 rounded border border-accent-fill bg-surface px-1 text-xs text-ink outline-none"}):e.name},e.id))]}),Qn&&Qn.count>0&&/* @__PURE__ */U("div",{className:"flex shrink-0 items-center gap-3 border-l border-line px-3 py-1 text-xs text-ink-muted",children:[Qn.numbers>0&&/* @__PURE__ */U("span",{children:[a.statSum,": ",qn(Qn.sum)]}),null!==Qn.average&&/* @__PURE__ */U("span",{children:[a.statAverage,": ",qn(Qn.average)]}),
66
+ /* @__PURE__ */U("span",{children:[a.statCount,": ",Qn.count]}),Qn.numbers>0&&/* @__PURE__ */U("span",{children:[a.statMin,": ",qn(Qn.min)]}),Qn.numbers>0&&/* @__PURE__ */U("span",{children:[a.statMax,": ",qn(Qn.max)]})]})]}),ct.state&&/* @__PURE__ */D(l,{...ct.props,items:(Rr=ct.state.data.kind,[tr("cut",a.cut,()=>nn(()=>Un(!0))),tr("copy",a.copy,()=>nn(()=>Un(!1))),tr("paste",a.paste,()=>In("all")),tr("pasteValues",a.pasteValues,()=>In("values")),nr("a"),..."col"!==Rr?[tr("rowAbove",a.rowsAbove,()=>vn("row",!1)),tr("rowBelow",a.rowsBelow,()=>vn("row",!0))]:[],..."row"!==Rr?[tr("colLeft",a.columnsLeft,()=>vn("col",!1)),tr("colRight",a.columnsRight,()=>vn("col",!0))]:[],nr("b"),..."col"!==Rr?[tr("delRows",a.deleteRows,()=>xn("row"),{danger:!0})]:[],..."row"!==Rr?[tr("delCols",a.deleteColumns,()=>xn("col"),{danger:!0})]:[],tr("clear",a.clearValues,()=>nn(()=>ft(e=>Zt(e,$e.range)))),nr("c"),..."col"!==Rr?[tr("hideRows",a.hideRows,()=>yn("row"))]:[],..."row"!==Rr?[tr("hideCols",a.hideColumns,()=>yn("col"))]:[],..."col"!==Rr&&ge.hiddenRows.length?[tr("unhideRows",a.unhideRows,()=>Cn("row"))]:[],..."row"!==Rr&&ge.hiddenCols.length?[tr("unhideCols",a.unhideColumns,()=>Cn("col"))]:[]])}),at.state&&/* @__PURE__ */D(l,{...at.props,items:(Fr=at.state.data,[tr("rename",a.rename,()=>Ye({index:Fr,name:B[Fr].name})),tr("duplicate",a.duplicate,()=>{oe(e=>function(e,t,n){const r={...e[t],id:crypto.randomUUID(),name:n};return[...e.slice(0,t+1),r,...e.slice(t+1)]}(e,Fr,Pt(e,B[Fr].name))),Y(Fr+1)}),tr("left",a.moveLeft,()=>Xn(Fr,-1),{disabled:0===Fr}),tr("right",a.moveRight,()=>Xn(Fr,1),{disabled:Fr===B.length-1}),{type:"submenu",key:"colour",label:a.tabColor,items:[tr("none",a.noColor,()=>oe(e=>e.map((e,t)=>t===Fr?{...e,tabColor:void 0}:e))),...Mn.slice(7,17).map(e=>tr(e,/* @__PURE__ */U("span",{className:"flex items-center gap-2",children:[
67
+ /* @__PURE__ */D("span",{className:"inline-block h-3 w-3 rounded-sm",style:{background:e}}),e]}),()=>oe(t=>t.map((t,n)=>n===Fr?{...t,tabColor:e}:t))))]},nr("a"),tr("delete",a.deleteSheet,()=>{Bn(Fr)},{danger:!0,disabled:B.length<=1})])}),He&&/* @__PURE__ */U(b,{portal:!0,minWidth:230,onClose:()=>Ke(null),style:{position:"fixed",left:He.x,top:He.y},children:[
68
+ /* @__PURE__ */D(v,{onClick:()=>Jn(He.col,!0),children:a.sortAscending}),
69
+ /* @__PURE__ */D(v,{onClick:()=>Jn(He.col,!1),children:a.sortDescending}),
70
+ /* @__PURE__ */D(x,{}),
71
+ /* @__PURE__ */D("div",{className:"px-2 py-1",children:/* @__PURE__ */D(i,{size:"sm","aria-label":a.find,placeholder:a.find,value:He.search,onChange:e=>Ke({...He,search:e.target.value})})}),
72
+ /* @__PURE__ */D("div",{className:"max-h-52 overflow-y-auto px-2 py-1",children:Er.map(e=>/* @__PURE__ */D("div",{className:"py-0.5",children:/* @__PURE__ */D(r,{label:e||a.blank,checked:!He.unticked.has(e),onChange:t=>{const n=new Set(He.unticked);t?n.delete(e):n.add(e),Ke({...He,unticked:n})}})},e))}),
73
+ /* @__PURE__ */U("div",{className:"flex items-center justify-between gap-2 border-t border-line px-2 py-1",children:[
74
+ /* @__PURE__ */D(y,{size:"sm",variant:"ghost",onClick:()=>Ke({...He,unticked:/* @__PURE__ */new Set}),children:a.clear}),
75
+ /* @__PURE__ */D(y,{size:"sm",variant:"primary",onClick:()=>{if(!He)return;const{col:e,unticked:t}=He;Ke(null),nn(()=>ft(n=>{if(!n.filter)return n;const r={...n.filter.excluded};return t.size?r[e]=[...t]:delete r[e],{...n,filter:{...n.filter,excluded:r}}}))},children:a.apply})]})]})]});var Fr,Rr,Tr}function ur(e,t){const n=e.rows?e.rows.map(e=>e.map(e=>String(e??""))):pn(e.csv??"");return 0===n.length?null:wn(t,n)}export{ar as default};
@@ -1,4 +1,4 @@
1
- import{loadAppearance as e,WidgetSettingsModal as t}from"./chunk-WOXQODYQ.js";import{useWidgetSettings as n}from"./chunk-IDI3IOY4.js";import"./chunk-4LXCCZDM.js";import"./chunk-AW7TOB6N.js";import"./chunk-KNUR2UEG.js";import"./chunk-JDCM2VHG.js";import"./chunk-QYL26AB4.js";import"./chunk-ZDMZM7HD.js";import"./chunk-5A7MWTXX.js";import"./chunk-2E2SUEEE.js";import"./chunk-PLK2WHZG.js";import"./chunk-7INZ7O3A.js";import"./chunk-P4VKU3SL.js";import"./chunk-3DVNXNTF.js";import"./chunk-ECJKIPWU.js";import"./chunk-VWGWZY7A.js";import"./chunk-7QSDPSXP.js";import"./chunk-BW47XJLH.js";import"./chunk-O3MBPAWZ.js";import"./chunk-2QY5BJLA.js";import"./chunk-UGTRSRIW.js";import"./chunk-KC3EX26K.js";import"./chunk-F3ZOO23R.js";import"./chunk-JPNAEN53.js";import"./chunk-CDAJKLGL.js";import"./chunk-G3KXB7SP.js";import"./chunk-URHGHXDN.js";import"./chunk-5QFPTDQF.js";import"./chunk-7DI3VQCF.js";import"./chunk-UQYNPYF4.js";import"./chunk-XWFLIGDQ.js";import"./chunk-2UO47XB4.js";import"./chunk-J75ZT2JQ.js";import"./chunk-R2VKEMZH.js";import"./chunk-MRJKZWWV.js";import"./chunk-CJH2BGXY.js";import"./chunk-QQ2LDC6C.js";import"./chunk-PGN5ME7B.js";import"./chunk-62LW225J.js";import"./chunk-GLUJS42B.js";import"./chunk-D65T4H6J.js";import"./chunk-STKJA4PV.js";import"./chunk-TWVUQUUD.js";import"./chunk-GDQJBQ5B.js";import"./chunk-C3QOHMR6.js";import"./chunk-5FYDNH4Y.js";import"./chunk-LNXBTK7Q.js";import{useState as r,useCallback as c}from"react";import{jsxs as s,Fragment as i,jsx as a}from"react/jsx-runtime";var o=["AAPL","MSFT","GOOGL","TSLA","NVDA"],m="stock_symbols",l="stock_appearance",h={AAPL:{price:229.87,change:1.42,changePct:.62},MSFT:{price:451.16,change:-2.31,changePct:-.51},GOOGL:{price:178.34,change:.89,changePct:.5},AMZN:{price:201.45,change:-1.08,changePct:-.53},TSLA:{price:248.92,change:6.74,changePct:2.78},NVDA:{price:134.81,change:-3.12,changePct:-2.26},META:{price:563.27,change:4.55,changePct:.81}},p=Object.keys(h);function u(){try{const e=JSON.parse(localStorage.getItem(m)||"");if(Array.isArray(e)&&e.length)return e.slice(0,8)}catch{}return o}var d=e=>`${e>=0?"+":""}${e.toFixed(2)}`;function g(){const[o,g]=r(u),[k,x]=r(()=>e(l)),[j,N]=r(!1),[b,f]=r([]),[y,v]=r(k),[A,D]=r(""),S=c(()=>{f([...o]),v({...k}),D(""),N(!0)},[o,k]);n(S);const P=()=>{const e=A.trim().toUpperCase();!e||b.includes(e)||b.length>=8||(f(t=>[...t,e]),D(""))},C=p.filter(e=>!b.includes(e));/* @__PURE__ */
1
+ import{loadAppearance as e,WidgetSettingsModal as t}from"./chunk-D2BXHFYK.js";import{useWidgetSettings as n}from"./chunk-NGUXPP5Q.js";import"./chunk-4LXCCZDM.js";import"./chunk-AW7TOB6N.js";import"./chunk-KNUR2UEG.js";import"./chunk-JDCM2VHG.js";import"./chunk-NSYCJTHE.js";import"./chunk-ZDMZM7HD.js";import"./chunk-5A7MWTXX.js";import"./chunk-OQG3XO4Y.js";import"./chunk-HTTICQBP.js";import"./chunk-IH2KC3NQ.js";import"./chunk-UZ7TKJRO.js";import"./chunk-3DVNXNTF.js";import"./chunk-FRNSCVPN.js";import"./chunk-VWGWZY7A.js";import"./chunk-7QSDPSXP.js";import"./chunk-YGCVMPIU.js";import"./chunk-PC44XTGN.js";import"./chunk-2QY5BJLA.js";import"./chunk-UGTRSRIW.js";import"./chunk-KC3EX26K.js";import"./chunk-F3ZOO23R.js";import"./chunk-FZM3ZPW3.js";import"./chunk-CDAJKLGL.js";import"./chunk-QVAOSKFO.js";import"./chunk-URHGHXDN.js";import"./chunk-5QFPTDQF.js";import"./chunk-EOVXFXVV.js";import"./chunk-UQYNPYF4.js";import"./chunk-TE6R53YD.js";import"./chunk-R64OZ6TC.js";import"./chunk-J75ZT2JQ.js";import"./chunk-R2VKEMZH.js";import"./chunk-MRJKZWWV.js";import"./chunk-WGLHB6WE.js";import"./chunk-NJN5IKWO.js";import"./chunk-PGN5ME7B.js";import"./chunk-62LW225J.js";import"./chunk-GLUJS42B.js";import"./chunk-D65T4H6J.js";import"./chunk-STKJA4PV.js";import"./chunk-5FYDNH4Y.js";import"./chunk-LNXBTK7Q.js";import"./chunk-TWVUQUUD.js";import"./chunk-VNTJ7QO5.js";import"./chunk-C3QOHMR6.js";import{useState as r,useCallback as c}from"react";import{jsxs as s,Fragment as i,jsx as a}from"react/jsx-runtime";var o=["AAPL","MSFT","GOOGL","TSLA","NVDA"],m="stock_symbols",l="stock_appearance",h={AAPL:{price:229.87,change:1.42,changePct:.62},MSFT:{price:451.16,change:-2.31,changePct:-.51},GOOGL:{price:178.34,change:.89,changePct:.5},AMZN:{price:201.45,change:-1.08,changePct:-.53},TSLA:{price:248.92,change:6.74,changePct:2.78},NVDA:{price:134.81,change:-3.12,changePct:-2.26},META:{price:563.27,change:4.55,changePct:.81}},p=Object.keys(h);function u(){try{const e=JSON.parse(localStorage.getItem(m)||"");if(Array.isArray(e)&&e.length)return e.slice(0,8)}catch{}return o}var d=e=>`${e>=0?"+":""}${e.toFixed(2)}`;function g(){const[o,g]=r(u),[k,x]=r(()=>e(l)),[j,N]=r(!1),[b,f]=r([]),[y,v]=r(k),[P,S]=r(""),T=c(()=>{f([...o]),v({...k}),S(""),N(!0)},[o,k]);n(T);const A=()=>{const e=P.trim().toUpperCase();!e||b.includes(e)||b.length>=8||(f(t=>[...t,e]),S(""))},C=p.filter(e=>!b.includes(e));/* @__PURE__ */
2
2
  return s(i,{children:[
3
3
  /* @__PURE__ */a("div",{style:{backgroundColor:`rgb(var(--taskbar-bg-rgb, 243 244 246) / ${k.activeOpacity/100})`,backdropFilter:k.activeBlur>0?`blur(${k.activeBlur}px)`:void 0},children:/* @__PURE__ */a("div",{className:"px-4 py-3",children:0===o.length?/* @__PURE__ */a("div",{className:"text-xs text-gray-500 text-center py-6",children:"No symbols yet — add some in settings."}):/* @__PURE__ */a("div",{className:"space-y-0.5",children:o.map(e=>{const t=h[e],n=(t?.change??0)>=0,r=t?t.change>0?"text-green-600":t.change<0?"text-red-600":"text-gray-500":"text-gray-400";/* @__PURE__ */
4
4
  return s("div",{className:"flex items-center justify-between px-2 py-2 border-b border-gray-200 last:border-0",children:[
@@ -11,6 +11,6 @@ return s("div",{className:"flex items-center justify-between px-2 py-2 border-b
11
11
  /* @__PURE__ */s("div",{className:"space-y-1 mb-2",children:[b.map((e,t)=>/* @__PURE__ */s("div",{className:"flex items-center justify-between py-1 px-2 bg-gray-50 rounded",children:[
12
12
  /* @__PURE__ */a("span",{className:"text-sm font-semibold text-gray-700",children:e}),
13
13
  /* @__PURE__ */a("button",{onClick:()=>f(e=>e.filter((e,n)=>n!==t)),className:"text-red-400 hover:text-red-600",children:"×"})]},t)),0===b.length&&/* @__PURE__ */a("p",{className:"text-2xs text-ink-faintest italic",children:"No symbols — add a ticker below."})]}),b.length<8?/* @__PURE__ */s("div",{className:"flex items-center gap-2",children:[
14
- /* @__PURE__ */a("input",{value:A,onChange:e=>D(e.target.value),onKeyDown:e=>{"Enter"===e.key&&P()},placeholder:"e.g. NVDA",className:"flex-1 bg-gray-50 border border-gray-200 rounded px-2 py-1 text-sm uppercase focus:outline-none focus:ring-1 focus:ring-blue-500"}),
15
- /* @__PURE__ */a("button",{onClick:P,className:"text-sm font-medium text-blue-600 hover:text-blue-800 px-2",children:"+ Add"})]}):/* @__PURE__ */s("p",{className:"text-2xs text-ink-faintest italic",children:["Max ",8," symbols — remove one to add another."]}),C.length>0&&b.length<8&&/* @__PURE__ */a("div",{className:"flex flex-wrap gap-2 mt-2",children:C.map(e=>/* @__PURE__ */a("button",{onClick:()=>f(t=>t.length<8?[...t,e]:t),className:"text-2xs font-medium text-gray-600 bg-gray-100 hover:bg-gray-200 rounded px-2 py-0.5 transition-colors",children:e},e))}),
14
+ /* @__PURE__ */a("input",{value:P,onChange:e=>S(e.target.value),onKeyDown:e=>{"Enter"===e.key&&A()},placeholder:"e.g. NVDA",className:"flex-1 bg-gray-50 border border-gray-200 rounded px-2 py-1 text-sm uppercase focus:outline-none focus:ring-1 focus:ring-blue-500"}),
15
+ /* @__PURE__ */a("button",{onClick:A,className:"text-sm font-medium text-blue-600 hover:text-blue-800 px-2",children:"+ Add"})]}):/* @__PURE__ */s("p",{className:"text-2xs text-ink-faintest italic",children:["Max ",8," symbols — remove one to add another."]}),C.length>0&&b.length<8&&/* @__PURE__ */a("div",{className:"flex flex-wrap gap-2 mt-2",children:C.map(e=>/* @__PURE__ */a("button",{onClick:()=>f(t=>t.length<8?[...t,e]:t),className:"text-2xs font-medium text-gray-600 bg-gray-100 hover:bg-gray-200 rounded px-2 py-0.5 transition-colors",children:e},e))}),
16
16
  /* @__PURE__ */a("p",{className:"text-2xs text-ink-faintest mt-2",children:"Demo prices — static sample data, no live feed."})]})})]})}export{g as default};
@@ -1,4 +1,4 @@
1
- import{fetchCityWeather as e,getCondition as t,AVAILABLE_CITIES as a,toFahrenheit as r}from"./chunk-FBDZGO3V.js";import{loadAppearance as n,WidgetSettingsModal as i}from"./chunk-WOXQODYQ.js";import{pad2 as s}from"./chunk-LF27WIN2.js";import{useWidgetSettings as o}from"./chunk-IDI3IOY4.js";import"./chunk-4LXCCZDM.js";import"./chunk-AW7TOB6N.js";import"./chunk-KNUR2UEG.js";import"./chunk-JDCM2VHG.js";import"./chunk-QYL26AB4.js";import"./chunk-ZDMZM7HD.js";import"./chunk-5A7MWTXX.js";import"./chunk-2E2SUEEE.js";import"./chunk-PLK2WHZG.js";import"./chunk-7INZ7O3A.js";import"./chunk-P4VKU3SL.js";import"./chunk-3DVNXNTF.js";import"./chunk-ECJKIPWU.js";import"./chunk-VWGWZY7A.js";import"./chunk-7QSDPSXP.js";import"./chunk-BW47XJLH.js";import"./chunk-O3MBPAWZ.js";import"./chunk-2QY5BJLA.js";import"./chunk-UGTRSRIW.js";import{useShellPrefs as l}from"./chunk-KC3EX26K.js";import"./chunk-F3ZOO23R.js";import"./chunk-JPNAEN53.js";import"./chunk-CDAJKLGL.js";import"./chunk-G3KXB7SP.js";import"./chunk-URHGHXDN.js";import"./chunk-5QFPTDQF.js";import"./chunk-7DI3VQCF.js";import"./chunk-UQYNPYF4.js";import"./chunk-XWFLIGDQ.js";import"./chunk-2UO47XB4.js";import"./chunk-J75ZT2JQ.js";import{LoadingSpinner as c}from"./chunk-R2VKEMZH.js";import"./chunk-MRJKZWWV.js";import"./chunk-CJH2BGXY.js";import"./chunk-QQ2LDC6C.js";import"./chunk-PGN5ME7B.js";import"./chunk-62LW225J.js";import"./chunk-GLUJS42B.js";import"./chunk-D65T4H6J.js";import"./chunk-STKJA4PV.js";import"./chunk-TWVUQUUD.js";import"./chunk-GDQJBQ5B.js";import"./chunk-C3QOHMR6.js";import"./chunk-5FYDNH4Y.js";import"./chunk-LNXBTK7Q.js";import{useState as d,useEffect as m,useCallback as h}from"react";import{jsx as p,jsxs as u,Fragment as f}from"react/jsx-runtime";var y="weather_city",g="weather_appearance",x={useFahrenheit:!1,showLocalTime:!0,use24Hour:!1};function b(){const e="undefined"!=typeof localStorage?localStorage.getItem(y):null;if(e&&a[e])return e;try{const e=JSON.parse(localStorage.getItem("weather_cities")||"");if(Array.isArray(e)&&e[0]&&a[e[0]])return localStorage.setItem(y,e[0]),e[0]}catch{}return function(){try{const e=Intl.DateTimeFormat().resolvedOptions().timeZone;for(const[t,r]of Object.entries(a))if(r.tz===e)return t}catch{}return"London"}()}var w=r;function k(e,t=!1){try{if(t){const t=new Intl.DateTimeFormat("en-US",{timeZone:e,hour:"numeric",minute:"2-digit",hour12:!1}).formatToParts(/* @__PURE__ */new Date),a=parseInt(t.find(e=>"hour"===e.type)?.value||"0"),r=parseInt(t.find(e=>"minute"===e.type)?.value||"0");return`${s(a)}:${s(r)}`}const a=new Intl.DateTimeFormat("en-US",{timeZone:e,hour:"numeric",minute:"2-digit",hour12:!0}).formatToParts(/* @__PURE__ */new Date),r=parseInt(a.find(e=>"hour"===e.type)?.value||"12"),n=parseInt(a.find(e=>"minute"===e.type)?.value||"0"),i=a.find(e=>"dayPeriod"===e.type)?.value||"";return`${r}:${s(n)} ${i}`}catch{return""}}function v(){/* @__PURE__ */
1
+ import{fetchCityWeather as e,getCondition as t,AVAILABLE_CITIES as a,toFahrenheit as r}from"./chunk-FBDZGO3V.js";import{loadAppearance as n,WidgetSettingsModal as i}from"./chunk-D2BXHFYK.js";import{pad2 as s}from"./chunk-LF27WIN2.js";import{useWidgetSettings as o}from"./chunk-NGUXPP5Q.js";import"./chunk-4LXCCZDM.js";import"./chunk-AW7TOB6N.js";import"./chunk-KNUR2UEG.js";import"./chunk-JDCM2VHG.js";import"./chunk-NSYCJTHE.js";import"./chunk-ZDMZM7HD.js";import"./chunk-5A7MWTXX.js";import"./chunk-OQG3XO4Y.js";import"./chunk-HTTICQBP.js";import"./chunk-IH2KC3NQ.js";import"./chunk-UZ7TKJRO.js";import"./chunk-3DVNXNTF.js";import"./chunk-FRNSCVPN.js";import"./chunk-VWGWZY7A.js";import"./chunk-7QSDPSXP.js";import"./chunk-YGCVMPIU.js";import"./chunk-PC44XTGN.js";import"./chunk-2QY5BJLA.js";import"./chunk-UGTRSRIW.js";import{useShellPrefs as l}from"./chunk-KC3EX26K.js";import"./chunk-F3ZOO23R.js";import"./chunk-FZM3ZPW3.js";import"./chunk-CDAJKLGL.js";import"./chunk-QVAOSKFO.js";import"./chunk-URHGHXDN.js";import"./chunk-5QFPTDQF.js";import"./chunk-EOVXFXVV.js";import"./chunk-UQYNPYF4.js";import"./chunk-TE6R53YD.js";import"./chunk-R64OZ6TC.js";import"./chunk-J75ZT2JQ.js";import{LoadingSpinner as c}from"./chunk-R2VKEMZH.js";import"./chunk-MRJKZWWV.js";import"./chunk-WGLHB6WE.js";import"./chunk-NJN5IKWO.js";import"./chunk-PGN5ME7B.js";import"./chunk-62LW225J.js";import"./chunk-GLUJS42B.js";import"./chunk-D65T4H6J.js";import"./chunk-STKJA4PV.js";import"./chunk-5FYDNH4Y.js";import"./chunk-LNXBTK7Q.js";import"./chunk-TWVUQUUD.js";import"./chunk-VNTJ7QO5.js";import"./chunk-C3QOHMR6.js";import{useState as d,useEffect as m,useCallback as h}from"react";import{jsx as p,jsxs as u,Fragment as f}from"react/jsx-runtime";var y="weather_city",g="weather_appearance",x={useFahrenheit:!1,showLocalTime:!0,use24Hour:!1};function b(){const e="undefined"!=typeof localStorage?localStorage.getItem(y):null;if(e&&a[e])return e;try{const e=JSON.parse(localStorage.getItem("weather_cities")||"");if(Array.isArray(e)&&e[0]&&a[e[0]])return localStorage.setItem(y,e[0]),e[0]}catch{}return function(){try{const e=Intl.DateTimeFormat().resolvedOptions().timeZone;for(const[t,r]of Object.entries(a))if(r.tz===e)return t}catch{}return"London"}()}var w=r;function k(e,t=!1){try{if(t){const t=new Intl.DateTimeFormat("en-US",{timeZone:e,hour:"numeric",minute:"2-digit",hour12:!1}).formatToParts(/* @__PURE__ */new Date),a=parseInt(t.find(e=>"hour"===e.type)?.value||"0"),r=parseInt(t.find(e=>"minute"===e.type)?.value||"0");return`${s(a)}:${s(r)}`}const a=new Intl.DateTimeFormat("en-US",{timeZone:e,hour:"numeric",minute:"2-digit",hour12:!0}).formatToParts(/* @__PURE__ */new Date),r=parseInt(a.find(e=>"hour"===e.type)?.value||"12"),n=parseInt(a.find(e=>"minute"===e.type)?.value||"0"),i=a.find(e=>"dayPeriod"===e.type)?.value||"";return`${r}:${s(n)} ${i}`}catch{return""}}function v(){/* @__PURE__ */
2
2
  return u("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:[
3
3
  /* @__PURE__ */p("div",{className:"absolute -top-5 -right-5 w-24 h-24",style:{animation:"wx-sun-rays 70s linear infinite"},children:/* @__PURE__ */p("svg",{viewBox:"0 0 100 100",className:"w-full h-full",children:Array.from({length:12}).map((e,t)=>/* @__PURE__ */p("rect",{x:49,y:3,width:2,height:14,rx:1,fill:"rgba(255, 232, 130, 0.55)",transform:`rotate(${30*t} 50 50)`},t))})}),
4
4
  /* @__PURE__ */p("div",{className:"absolute top-1 right-1 w-10 h-10 rounded-full",style:{background:"radial-gradient(circle at 35% 35%, #fff8cc 0%, #ffd84a 55%, #ff9e2a 100%)",boxShadow:"0 0 18px 5px rgba(255, 200, 80, 0.55)",animation:"wx-sun-pulse 4.5s ease-in-out infinite"}})]})}function N(){const e=Array.from({length:16}).map((e,t)=>({left:(53*t+11)%95+"%",top:(37*t+9)%78+"%",size:1+13*t%3,delay:.41*t%4+"s",duration:2.5+7*t%5*.6+"s"}));/* @__PURE__ */
@@ -17,44 +17,44 @@ return u("div",{className:"absolute inset-0 overflow-hidden pointer-events-none"
17
17
  return u("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:[
18
18
  /* @__PURE__ */p("div",{className:"absolute",style:{top:"8%",animation:"wx-drift-cloud 42s linear infinite"},children:/* @__PURE__ */p(a,{scale:.9})}),
19
19
  /* @__PURE__ */p("div",{className:"absolute",style:{top:"40%",animation:"wx-drift-cloud 60s linear -22s infinite",opacity:.85},children:/* @__PURE__ */p(a,{scale:1.25})}),
20
- /* @__PURE__ */p("div",{className:"absolute",style:{top:"68%",animation:"wx-drift-cloud 78s linear -45s infinite",opacity:.7},children:/* @__PURE__ */p(a,{scale:.75})})]})}function D({heavy:e=!1}){const t=e?26:16,a=["wx-rain-a","wx-rain-b","wx-rain-c"],r=Array.from({length:t}).map((e,r)=>({left:(100*r/t+11*r%7)%100+"%",delay:.087*r%1.3+"s",height:12+r%4*5+"px",duration:.7+r%3*.18+"s",variant:a[r%a.length]}));/* @__PURE__ */
21
- return p("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:r.map((e,t)=>/* @__PURE__ */p("div",{className:"absolute",style:{left:e.left,top:"-20px",width:"1px",height:e.height,background:"linear-gradient(180deg, rgba(180,210,255,0) 0%, rgba(220,235,255,0.85) 90%, rgba(255,255,255,0.95) 100%)",transform:"rotate(8deg)",animation:`${e.variant} ${e.duration} linear ${e.delay} infinite`,transformOrigin:"top"}},t))})}function L(){const e=["wx-snow-a","wx-snow-b","wx-snow-c"],t=Array.from({length:16}).map((t,a)=>({left:(100*a/16+13*a%5)%100+"%",delay:.43*a%5+"s",duration:4.5+a%5+"s",size:3+a%4*1.4,opacity:.65+7*a%4*.08,variant:e[a%e.length]}));/* @__PURE__ */
22
- return p("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:t.map((e,t)=>/* @__PURE__ */p("div",{className:"absolute rounded-full bg-white",style:{left:e.left,top:"-12px",width:e.size,height:e.size,opacity:e.opacity,boxShadow:"0 0 4px rgba(255,255,255,0.65)",animation:`${e.variant} ${e.duration} linear ${e.delay} infinite`}},t))})}function S(){/* @__PURE__ */
20
+ /* @__PURE__ */p("div",{className:"absolute",style:{top:"68%",animation:"wx-drift-cloud 78s linear -45s infinite",opacity:.7},children:/* @__PURE__ */p(a,{scale:.75})})]})}function T({heavy:e=!1}){const t=e?26:16,a=["wx-rain-a","wx-rain-b","wx-rain-c"],r=Array.from({length:t}).map((e,r)=>({left:(100*r/t+11*r%7)%100+"%",delay:.087*r%1.3+"s",height:12+r%4*5+"px",duration:.7+r%3*.18+"s",variant:a[r%a.length]}));/* @__PURE__ */
21
+ return p("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:r.map((e,t)=>/* @__PURE__ */p("div",{className:"absolute",style:{left:e.left,top:"-20px",width:"1px",height:e.height,background:"linear-gradient(180deg, rgba(180,210,255,0) 0%, rgba(220,235,255,0.85) 90%, rgba(255,255,255,0.95) 100%)",transform:"rotate(8deg)",animation:`${e.variant} ${e.duration} linear ${e.delay} infinite`,transformOrigin:"top"}},t))})}function S(){const e=["wx-snow-a","wx-snow-b","wx-snow-c"],t=Array.from({length:16}).map((t,a)=>({left:(100*a/16+13*a%5)%100+"%",delay:.43*a%5+"s",duration:4.5+a%5+"s",size:3+a%4*1.4,opacity:.65+7*a%4*.08,variant:e[a%e.length]}));/* @__PURE__ */
22
+ return p("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:t.map((e,t)=>/* @__PURE__ */p("div",{className:"absolute rounded-full bg-white",style:{left:e.left,top:"-12px",width:e.size,height:e.size,opacity:e.opacity,boxShadow:"0 0 4px rgba(255,255,255,0.65)",animation:`${e.variant} ${e.duration} linear ${e.delay} infinite`}},t))})}function C(){/* @__PURE__ */
23
23
  return u("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:[
24
- /* @__PURE__ */p(D,{heavy:!0}),
24
+ /* @__PURE__ */p(T,{heavy:!0}),
25
25
  /* @__PURE__ */p("div",{className:"absolute inset-0 bg-white",style:{animation:"wx-flash 6s ease-out infinite"}}),
26
- /* @__PURE__ */p("div",{className:"absolute inset-y-0 right-1/3 flex items-center justify-center pointer-events-none",style:{animation:"wx-bolt 6s ease-out infinite"},children:/* @__PURE__ */p("svg",{viewBox:"0 0 18 60",className:"h-4/5",style:{filter:"drop-shadow(0 0 6px rgba(255, 240, 150, 0.95)) drop-shadow(0 0 14px rgba(255, 220, 90, 0.7))"},children:/* @__PURE__ */p("path",{d:"M11 0 L2 28 L8 30 L4 60 L16 24 L9 22 Z",fill:"rgba(255, 250, 200, 0.98)",stroke:"rgba(255, 255, 255, 0.9)",strokeWidth:.3})})})]})}function C(){/* @__PURE__ */
27
- return p("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:Array.from({length:4}).map((e,t)=>/* @__PURE__ */p("div",{className:"absolute left-0 right-0",style:{top:10+22*t+"%",height:"14px",background:"linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.55) 50%, rgba(255,255,255,0) 100%)",filter:"blur(2px)",animation:`wx-fog-drift ${10+3*t}s ease-in-out ${.7*t}s infinite alternate`}},t))})}function I({code:e,isDay:t}){return 0===e||1===e?/* @__PURE__ */p(t?v:N,{}):2===e?/* @__PURE__ */u(f,{children:[/* @__PURE__ */p(t?v:N,{}),
28
- /* @__PURE__ */p(j,{tone:t?"light":"dark"})]}):3===e?/* @__PURE__ */p(j,{tone:t?"light":"dark"}):45===e||48===e?/* @__PURE__ */p(C,{}):[51,53,61,80,81].includes(e)?/* @__PURE__ */p(D,{}):[55,63,65,82].includes(e)?/* @__PURE__ */p(D,{heavy:!0}):[71,73,75].includes(e)?/* @__PURE__ */p(L,{}):[95,96,99].includes(e)?/* @__PURE__ */p(S,{}):null}function $(){const[r,s]=d(b),[v,N]=d(()=>n(g)),[j,D]=d(null),[L,S]=d(!0),[,C]=d(0);m(()=>{const e=setInterval(()=>C(e=>e+1),6e4);return()=>clearInterval(e)},[]);const[$,F]=d(!1),[T,A]=d(r),[B,H]=d(v),{prefs:O,save:Q}=l(),W={...x,...O.weather_prefs??{}},[X,J]=d(W);o(h(()=>{A(r),H({...v}),J({...W}),F(!0)},[r,v,W])),m(()=>{let t=!1;return S(!0),e(r).then(e=>{t||(D(e),S(!1))}),()=>{t=!0}},[r]);const P=e=>W.useFahrenheit?`${w(e)}°F`:`${e}°`;if(L&&!j)/* @__PURE__ */
26
+ /* @__PURE__ */p("div",{className:"absolute inset-y-0 right-1/3 flex items-center justify-center pointer-events-none",style:{animation:"wx-bolt 6s ease-out infinite"},children:/* @__PURE__ */p("svg",{viewBox:"0 0 18 60",className:"h-4/5",style:{filter:"drop-shadow(0 0 6px rgba(255, 240, 150, 0.95)) drop-shadow(0 0 14px rgba(255, 220, 90, 0.7))"},children:/* @__PURE__ */p("path",{d:"M11 0 L2 28 L8 30 L4 60 L16 24 L9 22 Z",fill:"rgba(255, 250, 200, 0.98)",stroke:"rgba(255, 255, 255, 0.9)",strokeWidth:.3})})})]})}function D(){/* @__PURE__ */
27
+ return p("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",children:Array.from({length:4}).map((e,t)=>/* @__PURE__ */p("div",{className:"absolute left-0 right-0",style:{top:10+22*t+"%",height:"14px",background:"linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.55) 50%, rgba(255,255,255,0) 100%)",filter:"blur(2px)",animation:`wx-fog-drift ${10+3*t}s ease-in-out ${.7*t}s infinite alternate`}},t))})}function F({code:e,isDay:t}){return 0===e||1===e?/* @__PURE__ */p(t?v:N,{}):2===e?/* @__PURE__ */u(f,{children:[/* @__PURE__ */p(t?v:N,{}),
28
+ /* @__PURE__ */p(j,{tone:t?"light":"dark"})]}):3===e?/* @__PURE__ */p(j,{tone:t?"light":"dark"}):45===e||48===e?/* @__PURE__ */p(D,{}):[51,53,61,80,81].includes(e)?/* @__PURE__ */p(T,{}):[55,63,65,82].includes(e)?/* @__PURE__ */p(T,{heavy:!0}):[71,73,75].includes(e)?/* @__PURE__ */p(S,{}):[95,96,99].includes(e)?/* @__PURE__ */p(C,{}):null}function $(){const[r,s]=d(b),[v,N]=d(()=>n(g)),[j,T]=d(null),[S,C]=d(!0),[,D]=d(0);m(()=>{const e=setInterval(()=>D(e=>e+1),6e4);return()=>clearInterval(e)},[]);const[$,H]=d(!1),[L,O]=d(r),[I,X]=d(v),{prefs:A,save:P}=l(),Z={...x,...A.weather_prefs??{}},[J,W]=d(Z);o(h(()=>{O(r),X({...v}),W({...Z}),H(!0)},[r,v,Z])),m(()=>{let t=!1;return C(!0),e(r).then(e=>{t||(T(e),C(!1))}),()=>{t=!0}},[r]);const B=e=>Z.useFahrenheit?`${w(e)}°F`:`${e}°`;if(S&&!j)/* @__PURE__ */
29
29
  return p("div",{className:"flex items-center justify-center h-full bg-gradient-to-b from-sky-400 to-blue-500 rounded-lg text-on-accent/80 text-xs",style:{minHeight:110},children:/* @__PURE__ */p(c,{size:"sm",padding:"",label:"Loading"})});if(!j)/* @__PURE__ */
30
- return p("div",{className:"flex items-center justify-center h-full bg-slate-700 rounded-lg text-white/80 text-xs",style:{minHeight:110},children:"Couldn't load weather"});const[Z,G,U]=t(j.code,j.isDay);/* @__PURE__ */
30
+ return p("div",{className:"flex items-center justify-center h-full bg-slate-700 rounded-lg text-white/80 text-xs",style:{minHeight:110},children:"Couldn't load weather"});const[G,Q,V]=t(j.code,j.isDay);/* @__PURE__ */
31
31
  return u(f,{children:[
32
32
  /* @__PURE__ */p("style",{children:"\n@keyframes wx-rain-a { 0% { transform: translate(0,-20px); opacity: 0; } 10% { opacity: 0.95; } 100% { transform: translate(8px,140px); opacity: 0; } }\n@keyframes wx-rain-b { 0% { transform: translate(0,-20px); opacity: 0; } 12% { opacity: 0.85; } 100% { transform: translate(12px,140px); opacity: 0; } }\n@keyframes wx-rain-c { 0% { transform: translate(0,-20px); opacity: 0; } 10% { opacity: 1; } 100% { transform: translate(5px,140px); opacity: 0; } }\n@keyframes wx-snow-a { 0% { transform: translate(0,-12px) rotate(0deg); opacity: 0; } 10% { opacity: 0.9; } 50% { transform: translate(10px,55px) rotate(180deg); } 100% { transform: translate(-4px,140px) rotate(360deg); opacity: 0; } }\n@keyframes wx-snow-b { 0% { transform: translate(0,-12px) rotate(0deg); opacity: 0; } 10% { opacity: 0.85; } 50% { transform: translate(-12px,55px) rotate(-180deg); } 100% { transform: translate(6px,140px) rotate(-360deg); opacity: 0; } }\n@keyframes wx-snow-c { 0% { transform: translate(0,-12px); opacity: 0; } 10% { opacity: 0.7; } 100% { transform: translate(2px,140px); opacity: 0; } }\n@keyframes wx-drift-cloud { 0% { transform: translateX(-40%); } 100% { transform: translateX(140%); } }\n@keyframes wx-twinkle { 0%, 100% { opacity: 0.25; transform: scale(1); } 50% { opacity: 1; transform: scale(1.6); } }\n@keyframes wx-flash { 0%, 86%, 100% { opacity: 0; } 87% { opacity: 0.95; } 88% { opacity: 0.15; } 89% { opacity: 0.85; } 90% { opacity: 0; } }\n@keyframes wx-bolt { 0%, 86%, 90%, 100% { opacity: 0; } 87% { opacity: 1; } 89% { opacity: 0.85; } }\n@keyframes wx-sun-pulse { 0%, 100% { transform: scale(1); opacity: 0.65; } 50% { transform: scale(1.12); opacity: 0.95; } }\n@keyframes wx-sun-rays { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }\n@keyframes wx-fog-drift { 0% { transform: translateX(-25%); opacity: 0.3; } 50% { opacity: 0.65; } 100% { transform: translateX(25%); opacity: 0.3; } }\n@keyframes wx-shooting-star { 0%, 95% { opacity: 0; transform: translate(0,0) scale(0); } 96% { opacity: 1; transform: translate(0,0) scale(1); } 100% { opacity: 0; transform: translate(40px,30px) scale(1); } }\n"}),
33
- /* @__PURE__ */p("div",{className:"rounded-lg overflow-hidden",style:{backgroundColor:`rgba(15, 23, 42, ${v.activeOpacity/100})`,backdropFilter:v.activeBlur>0?`blur(${v.activeBlur}px)`:void 0},children:/* @__PURE__ */u("div",{className:`relative rounded-lg overflow-hidden text-white bg-gradient-to-br ${U}`,style:{height:110},children:[
34
- /* @__PURE__ */p(I,{code:j.code,isDay:j.isDay}),
33
+ /* @__PURE__ */p("div",{className:"rounded-lg overflow-hidden",style:{backgroundColor:`rgba(15, 23, 42, ${v.activeOpacity/100})`,backdropFilter:v.activeBlur>0?`blur(${v.activeBlur}px)`:void 0},children:/* @__PURE__ */u("div",{className:`relative rounded-lg overflow-hidden text-white bg-gradient-to-br ${V}`,style:{height:110},children:[
34
+ /* @__PURE__ */p(F,{code:j.code,isDay:j.isDay}),
35
35
  /* @__PURE__ */u("div",{className:"relative z-10 px-3 py-3 flex flex-col h-full justify-between",children:[
36
36
  /* @__PURE__ */u("div",{className:"flex items-start justify-between gap-2",children:[
37
37
  /* @__PURE__ */u("div",{className:"min-w-0 flex-1",children:[
38
- /* @__PURE__ */p("div",{className:"text-base font-semibold leading-tight truncate drop-shadow-sm",children:j.city}),W.showLocalTime&&/* @__PURE__ */p("div",{className:"text-2xs opacity-90 leading-tight tabular-nums drop-shadow-sm",children:k(j.timezone,W.use24Hour)})]}),
39
- /* @__PURE__ */p("div",{className:"text-3xl font-extralight leading-none tracking-tight tabular-nums shrink-0 drop-shadow-sm",children:P(j.temp)})]}),
38
+ /* @__PURE__ */p("div",{className:"text-base font-semibold leading-tight truncate drop-shadow-sm",children:j.city}),Z.showLocalTime&&/* @__PURE__ */p("div",{className:"text-2xs opacity-90 leading-tight tabular-nums drop-shadow-sm",children:k(j.timezone,Z.use24Hour)})]}),
39
+ /* @__PURE__ */p("div",{className:"text-3xl font-extralight leading-none tracking-tight tabular-nums shrink-0 drop-shadow-sm",children:B(j.temp)})]}),
40
40
  /* @__PURE__ */u("div",{className:"flex items-end justify-between gap-2",children:[
41
41
  /* @__PURE__ */u("div",{className:"flex items-center gap-2 min-w-0",children:[
42
- /* @__PURE__ */p("span",{className:"text-lg leading-none drop-shadow-sm",children:G}),
43
- /* @__PURE__ */p("span",{className:"text-2xs font-medium drop-shadow-sm truncate",children:Z})]}),
44
- /* @__PURE__ */u("span",{className:"text-2xs opacity-90 tabular-nums drop-shadow-sm shrink-0",children:["H:",P(j.high)," L:",P(j.low)]})]})]})]})}),
45
- /* @__PURE__ */u(i,{open:$,onClose:()=>F(!1),title:"Weather Settings",appearance:B,onAppearanceChange:H,onSave:()=>{s(T),N(B),Q({weather_prefs:X}),localStorage.setItem(y,T),localStorage.setItem(g,JSON.stringify(B)),F(!1)},children:[
42
+ /* @__PURE__ */p("span",{className:"text-lg leading-none drop-shadow-sm",children:Q}),
43
+ /* @__PURE__ */p("span",{className:"text-2xs font-medium drop-shadow-sm truncate",children:G})]}),
44
+ /* @__PURE__ */u("span",{className:"text-2xs opacity-90 tabular-nums drop-shadow-sm shrink-0",children:["H:",B(j.high)," L:",B(j.low)]})]})]})]})}),
45
+ /* @__PURE__ */u(i,{open:$,onClose:()=>H(!1),title:"Weather Settings",appearance:I,onAppearanceChange:X,onSave:()=>{s(L),N(I),P({weather_prefs:J}),localStorage.setItem(y,L),localStorage.setItem(g,JSON.stringify(I)),H(!1)},children:[
46
46
  /* @__PURE__ */p("div",{className:"space-y-3",children:/* @__PURE__ */u("div",{children:[
47
47
  /* @__PURE__ */p("h3",{className:"text-sm font-semibold text-gray-700 mb-2",children:"Display"}),
48
48
  /* @__PURE__ */u("div",{className:"flex items-center gap-3 mb-2",children:[
49
49
  /* @__PURE__ */p("span",{className:"text-sm text-gray-600 w-24",children:"Temperature"}),
50
- /* @__PURE__ */p("div",{className:"flex gap-1",children:[{key:!1,label:"°C"},{key:!0,label:"°F"}].map(e=>/* @__PURE__ */p("button",{onClick:()=>J(t=>({...t,useFahrenheit:e.key})),className:"px-3 py-1 text-xs font-medium rounded-lg border transition-colors "+(X.useFahrenheit===e.key?"bg-blue-600 text-white border-blue-600":"bg-white text-gray-700 border-gray-300 hover:bg-gray-50"),children:e.label},String(e.key)))})]}),
50
+ /* @__PURE__ */p("div",{className:"flex gap-1",children:[{key:!1,label:"°C"},{key:!0,label:"°F"}].map(e=>/* @__PURE__ */p("button",{onClick:()=>W(t=>({...t,useFahrenheit:e.key})),className:"px-3 py-1 text-xs font-medium rounded-lg border transition-colors "+(J.useFahrenheit===e.key?"bg-blue-600 text-white border-blue-600":"bg-white text-gray-700 border-gray-300 hover:bg-gray-50"),children:e.label},String(e.key)))})]}),
51
51
  /* @__PURE__ */u("div",{className:"flex items-center gap-3 mb-2",children:[
52
52
  /* @__PURE__ */p("span",{className:"text-sm text-gray-600 w-24",children:"Time Format"}),
53
- /* @__PURE__ */p("div",{className:"flex gap-1",children:[{key:!1,label:"AM/PM"},{key:!0,label:"24H"}].map(e=>/* @__PURE__ */p("button",{onClick:()=>J(t=>({...t,use24Hour:e.key})),className:"px-3 py-1 text-xs font-medium rounded-lg border transition-colors "+(X.use24Hour===e.key?"bg-blue-600 text-white border-blue-600":"bg-white text-gray-700 border-gray-300 hover:bg-gray-50"),children:e.label},String(e.key)))})]}),
53
+ /* @__PURE__ */p("div",{className:"flex gap-1",children:[{key:!1,label:"AM/PM"},{key:!0,label:"24H"}].map(e=>/* @__PURE__ */p("button",{onClick:()=>W(t=>({...t,use24Hour:e.key})),className:"px-3 py-1 text-xs font-medium rounded-lg border transition-colors "+(J.use24Hour===e.key?"bg-blue-600 text-white border-blue-600":"bg-white text-gray-700 border-gray-300 hover:bg-gray-50"),children:e.label},String(e.key)))})]}),
54
54
  /* @__PURE__ */u("label",{className:"flex items-center gap-2 cursor-pointer",children:[
55
- /* @__PURE__ */p("input",{type:"checkbox",checked:X.showLocalTime,onChange:e=>J(t=>({...t,showLocalTime:e.target.checked})),className:"rounded border-gray-300 text-blue-600 h-3.5 w-3.5"}),
55
+ /* @__PURE__ */p("input",{type:"checkbox",checked:J.showLocalTime,onChange:e=>W(t=>({...t,showLocalTime:e.target.checked})),className:"rounded border-gray-300 text-blue-600 h-3.5 w-3.5"}),
56
56
  /* @__PURE__ */p("span",{className:"text-sm text-gray-600",children:"Show local time"})]})]})}),
57
57
  /* @__PURE__ */u("div",{children:[
58
58
  /* @__PURE__ */p("h3",{className:"text-sm font-semibold text-gray-700 mb-2",children:"City"}),
59
- /* @__PURE__ */p("select",{value:T,onChange:e=>A(e.target.value),className:"w-full bg-surface-sunken border border-line rounded px-2 h-8 text-sm focus:outline-none focus:ring-1 focus:ring-blue-500",children:Object.keys(a).map(e=>/* @__PURE__ */p("option",{value:e,children:e},e))}),
59
+ /* @__PURE__ */p("select",{value:L,onChange:e=>O(e.target.value),className:"w-full bg-surface-sunken border border-line rounded px-2 h-8 text-sm focus:outline-none focus:ring-1 focus:ring-blue-500",children:Object.keys(a).map(e=>/* @__PURE__ */p("option",{value:e,children:e},e))}),
60
60
  /* @__PURE__ */p("p",{className:"mt-1 text-2xs text-ink-faintest",children:"Auto-detected from your timezone; change if needed."})]})]})]})}export{$ as default};