@rpcbase/ui 0.197.0 → 0.199.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 (470) hide show
  1. package/dist/index100.js +4 -5
  2. package/dist/index100.js.map +1 -1
  3. package/dist/index101.js +605 -4
  4. package/dist/index101.js.map +1 -1
  5. package/dist/index102.js +52 -9
  6. package/dist/index102.js.map +1 -1
  7. package/dist/index103.js +4 -5
  8. package/dist/index103.js.map +1 -1
  9. package/dist/index104.js +3 -3
  10. package/dist/index104.js.map +1 -1
  11. package/dist/index105.js +15 -4
  12. package/dist/index105.js.map +1 -1
  13. package/dist/index106.js +4 -5
  14. package/dist/index106.js.map +1 -1
  15. package/dist/index107.js +7 -145
  16. package/dist/index107.js.map +1 -1
  17. package/dist/index108.js +16 -39
  18. package/dist/index108.js.map +1 -1
  19. package/dist/index109.js +4 -4
  20. package/dist/index109.js.map +1 -1
  21. package/dist/index110.js +4 -7
  22. package/dist/index110.js.map +1 -1
  23. package/dist/index111.js +5 -13
  24. package/dist/index111.js.map +1 -1
  25. package/dist/index112.js +5 -13
  26. package/dist/index112.js.map +1 -1
  27. package/dist/index113.js +4 -7
  28. package/dist/index113.js.map +1 -1
  29. package/dist/index114.js +4 -31
  30. package/dist/index114.js.map +1 -1
  31. package/dist/index115.js +6 -10
  32. package/dist/index115.js.map +1 -1
  33. package/dist/index116.js +24 -10
  34. package/dist/index116.js.map +1 -1
  35. package/dist/index117.js +6 -8
  36. package/dist/index117.js.map +1 -1
  37. package/dist/index118.js +4 -13
  38. package/dist/index118.js.map +1 -1
  39. package/dist/index119.js +6 -101
  40. package/dist/index119.js.map +1 -1
  41. package/dist/index120.js +6 -20
  42. package/dist/index120.js.map +1 -1
  43. package/dist/index121.js +4 -53
  44. package/dist/index121.js.map +1 -1
  45. package/dist/index122.js +5 -72
  46. package/dist/index122.js.map +1 -1
  47. package/dist/index123.js +4 -9
  48. package/dist/index123.js.map +1 -1
  49. package/dist/index124.js +8 -20
  50. package/dist/index124.js.map +1 -1
  51. package/dist/index125.js +5 -16
  52. package/dist/index125.js.map +1 -1
  53. package/dist/index126.js +4 -23
  54. package/dist/index126.js.map +1 -1
  55. package/dist/index127.js +4 -6
  56. package/dist/index127.js.map +1 -1
  57. package/dist/index128.js +6 -5
  58. package/dist/index128.js.map +1 -1
  59. package/dist/index129.js +145 -23
  60. package/dist/index129.js.map +1 -1
  61. package/dist/index130.js +39 -34
  62. package/dist/index130.js.map +1 -1
  63. package/dist/index131.js +5 -16
  64. package/dist/index131.js.map +1 -1
  65. package/dist/index132.js +7 -6
  66. package/dist/index132.js.map +1 -1
  67. package/dist/index133.js +13 -4
  68. package/dist/index133.js.map +1 -1
  69. package/dist/index134.js +13 -4
  70. package/dist/index134.js.map +1 -1
  71. package/dist/index135.js +7 -4
  72. package/dist/index135.js.map +1 -1
  73. package/dist/index136.js +31 -4
  74. package/dist/index136.js.map +1 -1
  75. package/dist/index137.js +10 -3
  76. package/dist/index137.js.map +1 -1
  77. package/dist/index138.js +10 -6
  78. package/dist/index138.js.map +1 -1
  79. package/dist/index139.js +9 -24
  80. package/dist/index139.js.map +1 -1
  81. package/dist/index140.js +13 -7
  82. package/dist/index140.js.map +1 -1
  83. package/dist/index141.js +101 -6
  84. package/dist/index141.js.map +1 -1
  85. package/dist/index142.js +20 -6
  86. package/dist/index142.js.map +1 -1
  87. package/dist/index143.js +53 -3
  88. package/dist/index143.js.map +1 -1
  89. package/dist/index144.js +72 -3
  90. package/dist/index144.js.map +1 -1
  91. package/dist/index145.js +9 -4
  92. package/dist/index145.js.map +1 -1
  93. package/dist/index146.js +20 -3
  94. package/dist/index146.js.map +1 -1
  95. package/dist/index147.js +16 -4
  96. package/dist/index147.js.map +1 -1
  97. package/dist/index148.js +23 -3
  98. package/dist/index148.js.map +1 -1
  99. package/dist/index149.js +6 -3
  100. package/dist/index149.js.map +1 -1
  101. package/dist/index150.js +5 -3
  102. package/dist/index150.js.map +1 -1
  103. package/dist/index151.js +19 -42
  104. package/dist/index151.js.map +1 -1
  105. package/dist/index152.js +35 -6
  106. package/dist/index152.js.map +1 -1
  107. package/dist/index153.js +16 -69
  108. package/dist/index153.js.map +1 -1
  109. package/dist/index154.js +7 -2
  110. package/dist/index154.js.map +1 -1
  111. package/dist/index155.js +4 -363
  112. package/dist/index155.js.map +1 -1
  113. package/dist/index156.js +4 -261
  114. package/dist/index156.js.map +1 -1
  115. package/dist/index157.js +4 -60
  116. package/dist/index157.js.map +1 -1
  117. package/dist/index158.js +4 -46
  118. package/dist/index158.js.map +1 -1
  119. package/dist/index159.js +3 -169
  120. package/dist/index159.js.map +1 -1
  121. package/dist/index160.js +6 -109
  122. package/dist/index160.js.map +1 -1
  123. package/dist/index161.js +24 -25
  124. package/dist/index161.js.map +1 -1
  125. package/dist/index162.js +8 -8
  126. package/dist/index162.js.map +1 -1
  127. package/dist/index163.js +6 -4
  128. package/dist/index163.js.map +1 -1
  129. package/dist/index164.js +5 -5
  130. package/dist/index164.js.map +1 -1
  131. package/dist/index165.js +3 -4
  132. package/dist/index165.js.map +1 -1
  133. package/dist/index166.js +3 -466
  134. package/dist/index166.js.map +1 -1
  135. package/dist/index167.js +4 -185
  136. package/dist/index167.js.map +1 -1
  137. package/dist/index168.js +3 -107
  138. package/dist/index168.js.map +1 -1
  139. package/dist/index169.js +4 -262
  140. package/dist/index169.js.map +1 -1
  141. package/dist/index170.js +3 -9
  142. package/dist/index170.js.map +1 -1
  143. package/dist/index171.js +3 -42
  144. package/dist/index171.js.map +1 -1
  145. package/dist/index172.js +3 -4
  146. package/dist/index172.js.map +1 -1
  147. package/dist/index173.js.map +1 -1
  148. package/dist/index174.js +41 -200
  149. package/dist/index174.js.map +1 -1
  150. package/dist/index175.js +204 -20
  151. package/dist/index175.js.map +1 -1
  152. package/dist/index176.js +22 -25
  153. package/dist/index176.js.map +1 -1
  154. package/dist/index177.js +23 -398
  155. package/dist/index177.js.map +1 -1
  156. package/dist/index178.js +383 -589
  157. package/dist/index178.js.map +1 -1
  158. package/dist/index179.js +13 -58
  159. package/dist/index179.js.map +1 -1
  160. package/dist/index180.js +154 -8
  161. package/dist/index180.js.map +1 -1
  162. package/dist/index181.js +28 -64
  163. package/dist/index181.js.map +1 -1
  164. package/dist/index182.js +9 -19
  165. package/dist/index182.js.map +1 -1
  166. package/dist/index183.js +46 -14
  167. package/dist/index183.js.map +1 -1
  168. package/dist/index184.js +11 -5
  169. package/dist/index184.js.map +1 -1
  170. package/dist/index185.js +43 -4
  171. package/dist/index185.js.map +1 -1
  172. package/dist/index186.js +95 -6
  173. package/dist/index186.js.map +1 -1
  174. package/dist/index187.js +86 -4
  175. package/dist/index187.js.map +1 -1
  176. package/dist/index188.js +105 -7
  177. package/dist/index188.js.map +1 -1
  178. package/dist/index189.js +52 -17
  179. package/dist/index189.js.map +1 -1
  180. package/dist/index19.js +299 -295
  181. package/dist/index19.js.map +1 -1
  182. package/dist/index190.js +11 -5
  183. package/dist/index190.js.map +1 -1
  184. package/dist/index191.js +37 -5
  185. package/dist/index191.js.map +1 -1
  186. package/dist/index192.js +8 -13
  187. package/dist/index192.js.map +1 -1
  188. package/dist/index193.js +116 -10
  189. package/dist/index193.js.map +1 -1
  190. package/dist/index194.js +17 -14
  191. package/dist/index194.js.map +1 -1
  192. package/dist/index195.js +15 -14
  193. package/dist/index195.js.map +1 -1
  194. package/dist/index196.js +3 -5
  195. package/dist/index196.js.map +1 -1
  196. package/dist/index197.js +36 -6
  197. package/dist/index197.js.map +1 -1
  198. package/dist/index198.js +20 -7
  199. package/dist/index198.js.map +1 -1
  200. package/dist/index199.js +9 -6
  201. package/dist/index199.js.map +1 -1
  202. package/dist/index200.js +8 -9
  203. package/dist/index200.js.map +1 -1
  204. package/dist/index201.js +67 -5
  205. package/dist/index201.js.map +1 -1
  206. package/dist/index202.js +180 -5
  207. package/dist/index202.js.map +1 -1
  208. package/dist/index203.js +46 -9
  209. package/dist/index203.js.map +1 -1
  210. package/dist/index204.js +19 -5
  211. package/dist/index204.js.map +1 -1
  212. package/dist/index205.js +28 -5
  213. package/dist/index205.js.map +1 -1
  214. package/dist/index206.js +16 -4
  215. package/dist/index206.js.map +1 -1
  216. package/dist/index207.js +58 -11
  217. package/dist/index207.js.map +1 -1
  218. package/dist/index208.js +8 -10
  219. package/dist/index208.js.map +1 -1
  220. package/dist/index209.js +66 -10
  221. package/dist/index209.js.map +1 -1
  222. package/dist/index210.js +19 -11
  223. package/dist/index210.js.map +1 -1
  224. package/dist/index211.js +16 -11
  225. package/dist/index211.js.map +1 -1
  226. package/dist/index212.js +5 -10
  227. package/dist/index212.js.map +1 -1
  228. package/dist/index213.js +5 -7
  229. package/dist/index213.js.map +1 -1
  230. package/dist/index214.js +6 -6
  231. package/dist/index214.js.map +1 -1
  232. package/dist/index215.js +4 -5
  233. package/dist/index215.js.map +1 -1
  234. package/dist/index216.js +7 -6
  235. package/dist/index216.js.map +1 -1
  236. package/dist/index217.js +17 -7
  237. package/dist/index217.js.map +1 -1
  238. package/dist/index218.js +5 -6
  239. package/dist/index218.js.map +1 -1
  240. package/dist/index219.js +5 -55
  241. package/dist/index219.js.map +1 -1
  242. package/dist/index220.js +13 -16
  243. package/dist/index220.js.map +1 -1
  244. package/dist/index221.js +10 -7
  245. package/dist/index221.js.map +1 -1
  246. package/dist/index222.js +14 -10
  247. package/dist/index222.js.map +1 -1
  248. package/dist/index223.js +14 -10
  249. package/dist/index223.js.map +1 -1
  250. package/dist/index224.js +5 -21
  251. package/dist/index224.js.map +1 -1
  252. package/dist/index225.js +6 -10
  253. package/dist/index225.js.map +1 -1
  254. package/dist/index226.js +7 -9
  255. package/dist/index226.js.map +1 -1
  256. package/dist/index227.js +6 -9
  257. package/dist/index227.js.map +1 -1
  258. package/dist/index228.js +9 -4
  259. package/dist/index228.js.map +1 -1
  260. package/dist/index229.js +5 -5
  261. package/dist/index229.js.map +1 -1
  262. package/dist/index230.js +5 -16
  263. package/dist/index230.js.map +1 -1
  264. package/dist/index231.js +9 -9
  265. package/dist/index231.js.map +1 -1
  266. package/dist/index232.js +5 -18
  267. package/dist/index232.js.map +1 -1
  268. package/dist/index233.js +5 -15
  269. package/dist/index233.js.map +1 -1
  270. package/dist/index234.js +4 -12
  271. package/dist/index234.js.map +1 -1
  272. package/dist/index235.js +11 -29
  273. package/dist/index235.js.map +1 -1
  274. package/dist/index236.js +10 -12
  275. package/dist/index236.js.map +1 -1
  276. package/dist/index237.js +10 -25
  277. package/dist/index237.js.map +1 -1
  278. package/dist/index238.js +11 -5
  279. package/dist/index238.js.map +1 -1
  280. package/dist/index239.js +11 -13
  281. package/dist/index239.js.map +1 -1
  282. package/dist/index24.js +1 -1
  283. package/dist/index240.js +10 -154
  284. package/dist/index240.js.map +1 -1
  285. package/dist/index241.js +6 -29
  286. package/dist/index241.js.map +1 -1
  287. package/dist/index242.js +6 -9
  288. package/dist/index242.js.map +1 -1
  289. package/dist/index243.js +5 -48
  290. package/dist/index243.js.map +1 -1
  291. package/dist/index244.js +6 -11
  292. package/dist/index244.js.map +1 -1
  293. package/dist/index245.js +7 -44
  294. package/dist/index245.js.map +1 -1
  295. package/dist/index246.js +6 -95
  296. package/dist/index246.js.map +1 -1
  297. package/dist/index247.js +54 -85
  298. package/dist/index247.js.map +1 -1
  299. package/dist/index248.js +13 -102
  300. package/dist/index248.js.map +1 -1
  301. package/dist/index249.js +7 -52
  302. package/dist/index249.js.map +1 -1
  303. package/dist/index250.js +9 -10
  304. package/dist/index250.js.map +1 -1
  305. package/dist/index251.js +9 -36
  306. package/dist/index251.js.map +1 -1
  307. package/dist/index252.js +21 -8
  308. package/dist/index252.js.map +1 -1
  309. package/dist/index253.js +10 -116
  310. package/dist/index253.js.map +1 -1
  311. package/dist/index254.js +9 -17
  312. package/dist/index254.js.map +1 -1
  313. package/dist/index255.js +9 -15
  314. package/dist/index255.js.map +1 -1
  315. package/dist/index256.js +4 -3
  316. package/dist/index256.js.map +1 -1
  317. package/dist/index257.js +5 -36
  318. package/dist/index257.js.map +1 -1
  319. package/dist/index258.js +15 -19
  320. package/dist/index258.js.map +1 -1
  321. package/dist/index259.js +9 -9
  322. package/dist/index259.js.map +1 -1
  323. package/dist/index260.js +18 -8
  324. package/dist/index260.js.map +1 -1
  325. package/dist/index261.js +15 -24
  326. package/dist/index261.js.map +1 -1
  327. package/dist/index262.js +13 -29
  328. package/dist/index262.js.map +1 -1
  329. package/dist/index263.js +30 -5
  330. package/dist/index263.js.map +1 -1
  331. package/dist/index264.js +11 -18
  332. package/dist/index264.js.map +1 -1
  333. package/dist/index265.js +23 -26
  334. package/dist/index265.js.map +1 -1
  335. package/dist/index266.js +5 -16
  336. package/dist/index266.js.map +1 -1
  337. package/dist/index267.js +22 -65
  338. package/dist/index267.js.map +1 -1
  339. package/dist/index268.js +27 -179
  340. package/dist/index268.js.map +1 -1
  341. package/dist/index269.js +5 -47
  342. package/dist/index269.js.map +1 -1
  343. package/dist/index270.js +20 -4
  344. package/dist/index270.js.map +1 -1
  345. package/dist/index271.js +5 -19
  346. package/dist/index271.js.map +1 -1
  347. package/dist/index272.js +19 -13
  348. package/dist/index272.js.map +1 -1
  349. package/dist/index273.js +12 -20
  350. package/dist/index273.js.map +1 -1
  351. package/dist/index275.js +1 -1
  352. package/dist/index277.js +5 -5
  353. package/dist/index278.js +1 -1
  354. package/dist/index289.js +2 -2
  355. package/dist/index292.js +1 -1
  356. package/dist/index293.js +2 -2
  357. package/dist/index295.js +1 -1
  358. package/dist/index296.js +1 -1
  359. package/dist/index297.js +1 -1
  360. package/dist/index298.js +1 -1
  361. package/dist/index299.js +69 -65
  362. package/dist/index299.js.map +1 -1
  363. package/dist/index300.js +8 -68
  364. package/dist/index300.js.map +1 -1
  365. package/dist/index301.js +14 -9
  366. package/dist/index301.js.map +1 -1
  367. package/dist/index302.js +66 -14
  368. package/dist/index302.js.map +1 -1
  369. package/dist/index303.js +64 -65
  370. package/dist/index303.js.map +1 -1
  371. package/dist/index32.js +24 -24
  372. package/dist/index33.js +3 -3
  373. package/dist/index36.js +1 -1
  374. package/dist/index37.js +2 -2
  375. package/dist/index40.js +2 -2
  376. package/dist/index41.js +16 -16
  377. package/dist/index45.js +1 -1
  378. package/dist/index46.js +1 -1
  379. package/dist/index49.js +1 -1
  380. package/dist/index50.js +1 -1
  381. package/dist/index51.js +205 -2
  382. package/dist/index51.js.map +1 -1
  383. package/dist/index52.js +6 -2
  384. package/dist/index52.js.map +1 -1
  385. package/dist/index53.js +8 -2
  386. package/dist/index53.js.map +1 -1
  387. package/dist/index54.js +6 -2
  388. package/dist/index54.js.map +1 -1
  389. package/dist/index56.js +1 -1
  390. package/dist/index60.js +2 -205
  391. package/dist/index60.js.map +1 -1
  392. package/dist/index61.js +2 -4
  393. package/dist/index61.js.map +1 -1
  394. package/dist/index62.js +3 -47
  395. package/dist/index62.js.map +1 -1
  396. package/dist/index63.js +45 -48
  397. package/dist/index63.js.map +1 -1
  398. package/dist/index64.js +50 -7
  399. package/dist/index64.js.map +1 -1
  400. package/dist/index65.js +7 -14
  401. package/dist/index65.js.map +1 -1
  402. package/dist/index66.js +14 -133
  403. package/dist/index66.js.map +1 -1
  404. package/dist/index67.js +133 -10
  405. package/dist/index67.js.map +1 -1
  406. package/dist/index68.js +10 -216
  407. package/dist/index68.js.map +1 -1
  408. package/dist/index69.js +216 -12
  409. package/dist/index69.js.map +1 -1
  410. package/dist/index70.js +13 -47
  411. package/dist/index70.js.map +1 -1
  412. package/dist/index71.js +44 -47
  413. package/dist/index71.js.map +1 -1
  414. package/dist/index72.js +50 -4
  415. package/dist/index72.js.map +1 -1
  416. package/dist/index73.js +4 -6
  417. package/dist/index73.js.map +1 -1
  418. package/dist/index74.js +6 -28
  419. package/dist/index74.js.map +1 -1
  420. package/dist/index75.js +28 -50
  421. package/dist/index75.js.map +1 -1
  422. package/dist/index76.js +50 -9
  423. package/dist/index76.js.map +1 -1
  424. package/dist/index77.js +9 -6
  425. package/dist/index77.js.map +1 -1
  426. package/dist/index78.js +2 -8
  427. package/dist/index78.js.map +1 -1
  428. package/dist/index79.js +2 -6
  429. package/dist/index79.js.map +1 -1
  430. package/dist/index80.js +6 -52
  431. package/dist/index80.js.map +1 -1
  432. package/dist/index81.js +68 -4
  433. package/dist/index81.js.map +1 -1
  434. package/dist/index82.js +2 -5
  435. package/dist/index82.js.map +1 -1
  436. package/dist/index83.js +363 -15
  437. package/dist/index83.js.map +1 -1
  438. package/dist/index84.js +261 -5
  439. package/dist/index84.js.map +1 -1
  440. package/dist/index85.js +60 -7
  441. package/dist/index85.js.map +1 -1
  442. package/dist/index86.js +46 -16
  443. package/dist/index86.js.map +1 -1
  444. package/dist/index87.js +169 -4
  445. package/dist/index87.js.map +1 -1
  446. package/dist/index88.js +109 -4
  447. package/dist/index88.js.map +1 -1
  448. package/dist/index89.js +24 -5
  449. package/dist/index89.js.map +1 -1
  450. package/dist/index90.js +8 -6
  451. package/dist/index90.js.map +1 -1
  452. package/dist/index91.js +4 -4
  453. package/dist/index91.js.map +1 -1
  454. package/dist/index92.js +5 -4
  455. package/dist/index92.js.map +1 -1
  456. package/dist/index93.js +4 -6
  457. package/dist/index93.js.map +1 -1
  458. package/dist/index94.js +466 -24
  459. package/dist/index94.js.map +1 -1
  460. package/dist/index95.js +185 -6
  461. package/dist/index95.js.map +1 -1
  462. package/dist/index96.js +107 -4
  463. package/dist/index96.js.map +1 -1
  464. package/dist/index97.js +262 -6
  465. package/dist/index97.js.map +1 -1
  466. package/dist/index98.js +9 -5
  467. package/dist/index98.js.map +1 -1
  468. package/dist/index99.js +42 -4
  469. package/dist/index99.js.map +1 -1
  470. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index178.js","sources":["../../../node_modules/@radix-ui/react-menu/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/menu.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs, composeRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { useFocusGuards } from \"@radix-ui/react-focus-guards\";\nimport { FocusScope } from \"@radix-ui/react-focus-scope\";\nimport { useId } from \"@radix-ui/react-id\";\nimport * as PopperPrimitive from \"@radix-ui/react-popper\";\nimport { createPopperScope } from \"@radix-ui/react-popper\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive, dispatchDiscreteCustomEvent } from \"@radix-ui/react-primitive\";\nimport * as RovingFocusGroup from \"@radix-ui/react-roving-focus\";\nimport { createRovingFocusGroupScope } from \"@radix-ui/react-roving-focus\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { hideOthers } from \"aria-hidden\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { jsx } from \"react/jsx-runtime\";\nvar SELECTION_KEYS = [\"Enter\", \" \"];\nvar FIRST_KEYS = [\"ArrowDown\", \"PageUp\", \"Home\"];\nvar LAST_KEYS = [\"ArrowUp\", \"PageDown\", \"End\"];\nvar FIRST_LAST_KEYS = [...FIRST_KEYS, ...LAST_KEYS];\nvar SUB_OPEN_KEYS = {\n ltr: [...SELECTION_KEYS, \"ArrowRight\"],\n rtl: [...SELECTION_KEYS, \"ArrowLeft\"]\n};\nvar SUB_CLOSE_KEYS = {\n ltr: [\"ArrowLeft\"],\n rtl: [\"ArrowRight\"]\n};\nvar MENU_NAME = \"Menu\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(MENU_NAME);\nvar [createMenuContext, createMenuScope] = createContextScope(MENU_NAME, [\n createCollectionScope,\n createPopperScope,\n createRovingFocusGroupScope\n]);\nvar usePopperScope = createPopperScope();\nvar useRovingFocusGroupScope = createRovingFocusGroupScope();\nvar [MenuProvider, useMenuContext] = createMenuContext(MENU_NAME);\nvar [MenuRootProvider, useMenuRootContext] = createMenuContext(MENU_NAME);\nvar Menu = (props) => {\n const { __scopeMenu, open = false, children, dir, onOpenChange, modal = true } = props;\n const popperScope = usePopperScope(__scopeMenu);\n const [content, setContent] = React.useState(null);\n const isUsingKeyboardRef = React.useRef(false);\n const handleOpenChange = useCallbackRef(onOpenChange);\n const direction = useDirection(dir);\n React.useEffect(() => {\n const handleKeyDown = () => {\n isUsingKeyboardRef.current = true;\n document.addEventListener(\"pointerdown\", handlePointer, { capture: true, once: true });\n document.addEventListener(\"pointermove\", handlePointer, { capture: true, once: true });\n };\n const handlePointer = () => isUsingKeyboardRef.current = false;\n document.addEventListener(\"keydown\", handleKeyDown, { capture: true });\n return () => {\n document.removeEventListener(\"keydown\", handleKeyDown, { capture: true });\n document.removeEventListener(\"pointerdown\", handlePointer, { capture: true });\n document.removeEventListener(\"pointermove\", handlePointer, { capture: true });\n };\n }, []);\n return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsx(\n MenuProvider,\n {\n scope: __scopeMenu,\n open,\n onOpenChange: handleOpenChange,\n content,\n onContentChange: setContent,\n children: /* @__PURE__ */ jsx(\n MenuRootProvider,\n {\n scope: __scopeMenu,\n onClose: React.useCallback(() => handleOpenChange(false), [handleOpenChange]),\n isUsingKeyboardRef,\n dir: direction,\n modal,\n children\n }\n )\n }\n ) });\n};\nMenu.displayName = MENU_NAME;\nvar ANCHOR_NAME = \"MenuAnchor\";\nvar MenuAnchor = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, ...anchorProps } = props;\n const popperScope = usePopperScope(__scopeMenu);\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { ...popperScope, ...anchorProps, ref: forwardedRef });\n }\n);\nMenuAnchor.displayName = ANCHOR_NAME;\nvar PORTAL_NAME = \"MenuPortal\";\nvar [PortalProvider, usePortalContext] = createMenuContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar MenuPortal = (props) => {\n const { __scopeMenu, forceMount, children, container } = props;\n const context = useMenuContext(PORTAL_NAME, __scopeMenu);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeMenu, forceMount, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children }) }) });\n};\nMenuPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"MenuContent\";\nvar [MenuContentProvider, useMenuContentContext] = createMenuContext(CONTENT_NAME);\nvar MenuContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeMenu);\n const { forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = useMenuContext(CONTENT_NAME, props.__scopeMenu);\n const rootContext = useMenuRootContext(CONTENT_NAME, props.__scopeMenu);\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeMenu, children: rootContext.modal ? /* @__PURE__ */ jsx(MenuRootContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(MenuRootContentNonModal, { ...contentProps, ref: forwardedRef }) }) }) });\n }\n);\nvar MenuRootContentModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = useMenuContext(CONTENT_NAME, props.__scopeMenu);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n React.useEffect(() => {\n const content = ref.current;\n if (content) return hideOthers(content);\n }, []);\n return /* @__PURE__ */ jsx(\n MenuContentImpl,\n {\n ...props,\n ref: composedRefs,\n trapFocus: context.open,\n disableOutsidePointerEvents: context.open,\n disableOutsideScroll: true,\n onFocusOutside: composeEventHandlers(\n props.onFocusOutside,\n (event) => event.preventDefault(),\n { checkForDefaultPrevented: false }\n ),\n onDismiss: () => context.onOpenChange(false)\n }\n );\n }\n);\nvar MenuRootContentNonModal = React.forwardRef((props, forwardedRef) => {\n const context = useMenuContext(CONTENT_NAME, props.__scopeMenu);\n return /* @__PURE__ */ jsx(\n MenuContentImpl,\n {\n ...props,\n ref: forwardedRef,\n trapFocus: false,\n disableOutsidePointerEvents: false,\n disableOutsideScroll: false,\n onDismiss: () => context.onOpenChange(false)\n }\n );\n});\nvar Slot = createSlot(\"MenuContent.ScrollLock\");\nvar MenuContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeMenu,\n loop = false,\n trapFocus,\n onOpenAutoFocus,\n onCloseAutoFocus,\n disableOutsidePointerEvents,\n onEntryFocus,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n onDismiss,\n disableOutsideScroll,\n ...contentProps\n } = props;\n const context = useMenuContext(CONTENT_NAME, __scopeMenu);\n const rootContext = useMenuRootContext(CONTENT_NAME, __scopeMenu);\n const popperScope = usePopperScope(__scopeMenu);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenu);\n const getItems = useCollection(__scopeMenu);\n const [currentItemId, setCurrentItemId] = React.useState(null);\n const contentRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, contentRef, context.onContentChange);\n const timerRef = React.useRef(0);\n const searchRef = React.useRef(\"\");\n const pointerGraceTimerRef = React.useRef(0);\n const pointerGraceIntentRef = React.useRef(null);\n const pointerDirRef = React.useRef(\"right\");\n const lastPointerXRef = React.useRef(0);\n const ScrollLockWrapper = disableOutsideScroll ? RemoveScroll : React.Fragment;\n const scrollLockWrapperProps = disableOutsideScroll ? { as: Slot, allowPinchZoom: true } : void 0;\n const handleTypeaheadSearch = (key) => {\n const search = searchRef.current + key;\n const items = getItems().filter((item) => !item.disabled);\n const currentItem = document.activeElement;\n const currentMatch = items.find((item) => item.ref.current === currentItem)?.textValue;\n const values = items.map((item) => item.textValue);\n const nextMatch = getNextMatch(values, search, currentMatch);\n const newItem = items.find((item) => item.textValue === nextMatch)?.ref.current;\n (function updateSearch(value) {\n searchRef.current = value;\n window.clearTimeout(timerRef.current);\n if (value !== \"\") timerRef.current = window.setTimeout(() => updateSearch(\"\"), 1e3);\n })(search);\n if (newItem) {\n setTimeout(() => newItem.focus());\n }\n };\n React.useEffect(() => {\n return () => window.clearTimeout(timerRef.current);\n }, []);\n useFocusGuards();\n const isPointerMovingToSubmenu = React.useCallback((event) => {\n const isMovingTowards = pointerDirRef.current === pointerGraceIntentRef.current?.side;\n return isMovingTowards && isPointerInGraceArea(event, pointerGraceIntentRef.current?.area);\n }, []);\n return /* @__PURE__ */ jsx(\n MenuContentProvider,\n {\n scope: __scopeMenu,\n searchRef,\n onItemEnter: React.useCallback(\n (event) => {\n if (isPointerMovingToSubmenu(event)) event.preventDefault();\n },\n [isPointerMovingToSubmenu]\n ),\n onItemLeave: React.useCallback(\n (event) => {\n if (isPointerMovingToSubmenu(event)) return;\n contentRef.current?.focus();\n setCurrentItemId(null);\n },\n [isPointerMovingToSubmenu]\n ),\n onTriggerLeave: React.useCallback(\n (event) => {\n if (isPointerMovingToSubmenu(event)) event.preventDefault();\n },\n [isPointerMovingToSubmenu]\n ),\n pointerGraceTimerRef,\n onPointerGraceIntentChange: React.useCallback((intent) => {\n pointerGraceIntentRef.current = intent;\n }, []),\n children: /* @__PURE__ */ jsx(ScrollLockWrapper, { ...scrollLockWrapperProps, children: /* @__PURE__ */ jsx(\n FocusScope,\n {\n asChild: true,\n trapped: trapFocus,\n onMountAutoFocus: composeEventHandlers(onOpenAutoFocus, (event) => {\n event.preventDefault();\n contentRef.current?.focus({ preventScroll: true });\n }),\n onUnmountAutoFocus: onCloseAutoFocus,\n children: /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n onDismiss,\n children: /* @__PURE__ */ jsx(\n RovingFocusGroup.Root,\n {\n asChild: true,\n ...rovingFocusGroupScope,\n dir: rootContext.dir,\n orientation: \"vertical\",\n loop,\n currentTabStopId: currentItemId,\n onCurrentTabStopIdChange: setCurrentItemId,\n onEntryFocus: composeEventHandlers(onEntryFocus, (event) => {\n if (!rootContext.isUsingKeyboardRef.current) event.preventDefault();\n }),\n preventScrollOnEntryFocus: true,\n children: /* @__PURE__ */ jsx(\n PopperPrimitive.Content,\n {\n role: \"menu\",\n \"aria-orientation\": \"vertical\",\n \"data-state\": getOpenState(context.open),\n \"data-radix-menu-content\": \"\",\n dir: rootContext.dir,\n ...popperScope,\n ...contentProps,\n ref: composedRefs,\n style: { outline: \"none\", ...contentProps.style },\n onKeyDown: composeEventHandlers(contentProps.onKeyDown, (event) => {\n const target = event.target;\n const isKeyDownInside = target.closest(\"[data-radix-menu-content]\") === event.currentTarget;\n const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;\n const isCharacterKey = event.key.length === 1;\n if (isKeyDownInside) {\n if (event.key === \"Tab\") event.preventDefault();\n if (!isModifierKey && isCharacterKey) handleTypeaheadSearch(event.key);\n }\n const content = contentRef.current;\n if (event.target !== content) return;\n if (!FIRST_LAST_KEYS.includes(event.key)) return;\n event.preventDefault();\n const items = getItems().filter((item) => !item.disabled);\n const candidateNodes = items.map((item) => item.ref.current);\n if (LAST_KEYS.includes(event.key)) candidateNodes.reverse();\n focusFirst(candidateNodes);\n }),\n onBlur: composeEventHandlers(props.onBlur, (event) => {\n if (!event.currentTarget.contains(event.target)) {\n window.clearTimeout(timerRef.current);\n searchRef.current = \"\";\n }\n }),\n onPointerMove: composeEventHandlers(\n props.onPointerMove,\n whenMouse((event) => {\n const target = event.target;\n const pointerXHasChanged = lastPointerXRef.current !== event.clientX;\n if (event.currentTarget.contains(target) && pointerXHasChanged) {\n const newDir = event.clientX > lastPointerXRef.current ? \"right\" : \"left\";\n pointerDirRef.current = newDir;\n lastPointerXRef.current = event.clientX;\n }\n })\n )\n }\n )\n }\n )\n }\n )\n }\n ) })\n }\n );\n }\n);\nMenuContent.displayName = CONTENT_NAME;\nvar GROUP_NAME = \"MenuGroup\";\nvar MenuGroup = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, ...groupProps } = props;\n return /* @__PURE__ */ jsx(Primitive.div, { role: \"group\", ...groupProps, ref: forwardedRef });\n }\n);\nMenuGroup.displayName = GROUP_NAME;\nvar LABEL_NAME = \"MenuLabel\";\nvar MenuLabel = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, ...labelProps } = props;\n return /* @__PURE__ */ jsx(Primitive.div, { ...labelProps, ref: forwardedRef });\n }\n);\nMenuLabel.displayName = LABEL_NAME;\nvar ITEM_NAME = \"MenuItem\";\nvar ITEM_SELECT = \"menu.itemSelect\";\nvar MenuItem = React.forwardRef(\n (props, forwardedRef) => {\n const { disabled = false, onSelect, ...itemProps } = props;\n const ref = React.useRef(null);\n const rootContext = useMenuRootContext(ITEM_NAME, props.__scopeMenu);\n const contentContext = useMenuContentContext(ITEM_NAME, props.__scopeMenu);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const isPointerDownRef = React.useRef(false);\n const handleSelect = () => {\n const menuItem = ref.current;\n if (!disabled && menuItem) {\n const itemSelectEvent = new CustomEvent(ITEM_SELECT, { bubbles: true, cancelable: true });\n menuItem.addEventListener(ITEM_SELECT, (event) => onSelect?.(event), { once: true });\n dispatchDiscreteCustomEvent(menuItem, itemSelectEvent);\n if (itemSelectEvent.defaultPrevented) {\n isPointerDownRef.current = false;\n } else {\n rootContext.onClose();\n }\n }\n };\n return /* @__PURE__ */ jsx(\n MenuItemImpl,\n {\n ...itemProps,\n ref: composedRefs,\n disabled,\n onClick: composeEventHandlers(props.onClick, handleSelect),\n onPointerDown: (event) => {\n props.onPointerDown?.(event);\n isPointerDownRef.current = true;\n },\n onPointerUp: composeEventHandlers(props.onPointerUp, (event) => {\n if (!isPointerDownRef.current) event.currentTarget?.click();\n }),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n const isTypingAhead = contentContext.searchRef.current !== \"\";\n if (disabled || isTypingAhead && event.key === \" \") return;\n if (SELECTION_KEYS.includes(event.key)) {\n event.currentTarget.click();\n event.preventDefault();\n }\n })\n }\n );\n }\n);\nMenuItem.displayName = ITEM_NAME;\nvar MenuItemImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, disabled = false, textValue, ...itemProps } = props;\n const contentContext = useMenuContentContext(ITEM_NAME, __scopeMenu);\n const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenu);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const [isFocused, setIsFocused] = React.useState(false);\n const [textContent, setTextContent] = React.useState(\"\");\n React.useEffect(() => {\n const menuItem = ref.current;\n if (menuItem) {\n setTextContent((menuItem.textContent ?? \"\").trim());\n }\n }, [itemProps.children]);\n return /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeMenu,\n disabled,\n textValue: textValue ?? textContent,\n children: /* @__PURE__ */ jsx(RovingFocusGroup.Item, { asChild: true, ...rovingFocusGroupScope, focusable: !disabled, children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"menuitem\",\n \"data-highlighted\": isFocused ? \"\" : void 0,\n \"aria-disabled\": disabled || void 0,\n \"data-disabled\": disabled ? \"\" : void 0,\n ...itemProps,\n ref: composedRefs,\n onPointerMove: composeEventHandlers(\n props.onPointerMove,\n whenMouse((event) => {\n if (disabled) {\n contentContext.onItemLeave(event);\n } else {\n contentContext.onItemEnter(event);\n if (!event.defaultPrevented) {\n const item = event.currentTarget;\n item.focus({ preventScroll: true });\n }\n }\n })\n ),\n onPointerLeave: composeEventHandlers(\n props.onPointerLeave,\n whenMouse((event) => contentContext.onItemLeave(event))\n ),\n onFocus: composeEventHandlers(props.onFocus, () => setIsFocused(true)),\n onBlur: composeEventHandlers(props.onBlur, () => setIsFocused(false))\n }\n ) })\n }\n );\n }\n);\nvar CHECKBOX_ITEM_NAME = \"MenuCheckboxItem\";\nvar MenuCheckboxItem = React.forwardRef(\n (props, forwardedRef) => {\n const { checked = false, onCheckedChange, ...checkboxItemProps } = props;\n return /* @__PURE__ */ jsx(ItemIndicatorProvider, { scope: props.__scopeMenu, checked, children: /* @__PURE__ */ jsx(\n MenuItem,\n {\n role: \"menuitemcheckbox\",\n \"aria-checked\": isIndeterminate(checked) ? \"mixed\" : checked,\n ...checkboxItemProps,\n ref: forwardedRef,\n \"data-state\": getCheckedState(checked),\n onSelect: composeEventHandlers(\n checkboxItemProps.onSelect,\n () => onCheckedChange?.(isIndeterminate(checked) ? true : !checked),\n { checkForDefaultPrevented: false }\n )\n }\n ) });\n }\n);\nMenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;\nvar RADIO_GROUP_NAME = \"MenuRadioGroup\";\nvar [RadioGroupProvider, useRadioGroupContext] = createMenuContext(\n RADIO_GROUP_NAME,\n { value: void 0, onValueChange: () => {\n } }\n);\nvar MenuRadioGroup = React.forwardRef(\n (props, forwardedRef) => {\n const { value, onValueChange, ...groupProps } = props;\n const handleValueChange = useCallbackRef(onValueChange);\n return /* @__PURE__ */ jsx(RadioGroupProvider, { scope: props.__scopeMenu, value, onValueChange: handleValueChange, children: /* @__PURE__ */ jsx(MenuGroup, { ...groupProps, ref: forwardedRef }) });\n }\n);\nMenuRadioGroup.displayName = RADIO_GROUP_NAME;\nvar RADIO_ITEM_NAME = \"MenuRadioItem\";\nvar MenuRadioItem = React.forwardRef(\n (props, forwardedRef) => {\n const { value, ...radioItemProps } = props;\n const context = useRadioGroupContext(RADIO_ITEM_NAME, props.__scopeMenu);\n const checked = value === context.value;\n return /* @__PURE__ */ jsx(ItemIndicatorProvider, { scope: props.__scopeMenu, checked, children: /* @__PURE__ */ jsx(\n MenuItem,\n {\n role: \"menuitemradio\",\n \"aria-checked\": checked,\n ...radioItemProps,\n ref: forwardedRef,\n \"data-state\": getCheckedState(checked),\n onSelect: composeEventHandlers(\n radioItemProps.onSelect,\n () => context.onValueChange?.(value),\n { checkForDefaultPrevented: false }\n )\n }\n ) });\n }\n);\nMenuRadioItem.displayName = RADIO_ITEM_NAME;\nvar ITEM_INDICATOR_NAME = \"MenuItemIndicator\";\nvar [ItemIndicatorProvider, useItemIndicatorContext] = createMenuContext(\n ITEM_INDICATOR_NAME,\n { checked: false }\n);\nvar MenuItemIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, forceMount, ...itemIndicatorProps } = props;\n const indicatorContext = useItemIndicatorContext(ITEM_INDICATOR_NAME, __scopeMenu);\n return /* @__PURE__ */ jsx(\n Presence,\n {\n present: forceMount || isIndeterminate(indicatorContext.checked) || indicatorContext.checked === true,\n children: /* @__PURE__ */ jsx(\n Primitive.span,\n {\n ...itemIndicatorProps,\n ref: forwardedRef,\n \"data-state\": getCheckedState(indicatorContext.checked)\n }\n )\n }\n );\n }\n);\nMenuItemIndicator.displayName = ITEM_INDICATOR_NAME;\nvar SEPARATOR_NAME = \"MenuSeparator\";\nvar MenuSeparator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, ...separatorProps } = props;\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"separator\",\n \"aria-orientation\": \"horizontal\",\n ...separatorProps,\n ref: forwardedRef\n }\n );\n }\n);\nMenuSeparator.displayName = SEPARATOR_NAME;\nvar ARROW_NAME = \"MenuArrow\";\nvar MenuArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeMenu, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeMenu);\n return /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });\n }\n);\nMenuArrow.displayName = ARROW_NAME;\nvar SUB_NAME = \"MenuSub\";\nvar [MenuSubProvider, useMenuSubContext] = createMenuContext(SUB_NAME);\nvar MenuSub = (props) => {\n const { __scopeMenu, children, open = false, onOpenChange } = props;\n const parentMenuContext = useMenuContext(SUB_NAME, __scopeMenu);\n const popperScope = usePopperScope(__scopeMenu);\n const [trigger, setTrigger] = React.useState(null);\n const [content, setContent] = React.useState(null);\n const handleOpenChange = useCallbackRef(onOpenChange);\n React.useEffect(() => {\n if (parentMenuContext.open === false) handleOpenChange(false);\n return () => handleOpenChange(false);\n }, [parentMenuContext.open, handleOpenChange]);\n return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsx(\n MenuProvider,\n {\n scope: __scopeMenu,\n open,\n onOpenChange: handleOpenChange,\n content,\n onContentChange: setContent,\n children: /* @__PURE__ */ jsx(\n MenuSubProvider,\n {\n scope: __scopeMenu,\n contentId: useId(),\n triggerId: useId(),\n trigger,\n onTriggerChange: setTrigger,\n children\n }\n )\n }\n ) });\n};\nMenuSub.displayName = SUB_NAME;\nvar SUB_TRIGGER_NAME = \"MenuSubTrigger\";\nvar MenuSubTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const context = useMenuContext(SUB_TRIGGER_NAME, props.__scopeMenu);\n const rootContext = useMenuRootContext(SUB_TRIGGER_NAME, props.__scopeMenu);\n const subContext = useMenuSubContext(SUB_TRIGGER_NAME, props.__scopeMenu);\n const contentContext = useMenuContentContext(SUB_TRIGGER_NAME, props.__scopeMenu);\n const openTimerRef = React.useRef(null);\n const { pointerGraceTimerRef, onPointerGraceIntentChange } = contentContext;\n const scope = { __scopeMenu: props.__scopeMenu };\n const clearOpenTimer = React.useCallback(() => {\n if (openTimerRef.current) window.clearTimeout(openTimerRef.current);\n openTimerRef.current = null;\n }, []);\n React.useEffect(() => clearOpenTimer, [clearOpenTimer]);\n React.useEffect(() => {\n const pointerGraceTimer = pointerGraceTimerRef.current;\n return () => {\n window.clearTimeout(pointerGraceTimer);\n onPointerGraceIntentChange(null);\n };\n }, [pointerGraceTimerRef, onPointerGraceIntentChange]);\n return /* @__PURE__ */ jsx(MenuAnchor, { asChild: true, ...scope, children: /* @__PURE__ */ jsx(\n MenuItemImpl,\n {\n id: subContext.triggerId,\n \"aria-haspopup\": \"menu\",\n \"aria-expanded\": context.open,\n \"aria-controls\": subContext.contentId,\n \"data-state\": getOpenState(context.open),\n ...props,\n ref: composeRefs(forwardedRef, subContext.onTriggerChange),\n onClick: (event) => {\n props.onClick?.(event);\n if (props.disabled || event.defaultPrevented) return;\n event.currentTarget.focus();\n if (!context.open) context.onOpenChange(true);\n },\n onPointerMove: composeEventHandlers(\n props.onPointerMove,\n whenMouse((event) => {\n contentContext.onItemEnter(event);\n if (event.defaultPrevented) return;\n if (!props.disabled && !context.open && !openTimerRef.current) {\n contentContext.onPointerGraceIntentChange(null);\n openTimerRef.current = window.setTimeout(() => {\n context.onOpenChange(true);\n clearOpenTimer();\n }, 100);\n }\n })\n ),\n onPointerLeave: composeEventHandlers(\n props.onPointerLeave,\n whenMouse((event) => {\n clearOpenTimer();\n const contentRect = context.content?.getBoundingClientRect();\n if (contentRect) {\n const side = context.content?.dataset.side;\n const rightSide = side === \"right\";\n const bleed = rightSide ? -5 : 5;\n const contentNearEdge = contentRect[rightSide ? \"left\" : \"right\"];\n const contentFarEdge = contentRect[rightSide ? \"right\" : \"left\"];\n contentContext.onPointerGraceIntentChange({\n area: [\n // Apply a bleed on clientX to ensure that our exit point is\n // consistently within polygon bounds\n { x: event.clientX + bleed, y: event.clientY },\n { x: contentNearEdge, y: contentRect.top },\n { x: contentFarEdge, y: contentRect.top },\n { x: contentFarEdge, y: contentRect.bottom },\n { x: contentNearEdge, y: contentRect.bottom }\n ],\n side\n });\n window.clearTimeout(pointerGraceTimerRef.current);\n pointerGraceTimerRef.current = window.setTimeout(\n () => contentContext.onPointerGraceIntentChange(null),\n 300\n );\n } else {\n contentContext.onTriggerLeave(event);\n if (event.defaultPrevented) return;\n contentContext.onPointerGraceIntentChange(null);\n }\n })\n ),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n const isTypingAhead = contentContext.searchRef.current !== \"\";\n if (props.disabled || isTypingAhead && event.key === \" \") return;\n if (SUB_OPEN_KEYS[rootContext.dir].includes(event.key)) {\n context.onOpenChange(true);\n context.content?.focus();\n event.preventDefault();\n }\n })\n }\n ) });\n }\n);\nMenuSubTrigger.displayName = SUB_TRIGGER_NAME;\nvar SUB_CONTENT_NAME = \"MenuSubContent\";\nvar MenuSubContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeMenu);\n const { forceMount = portalContext.forceMount, ...subContentProps } = props;\n const context = useMenuContext(CONTENT_NAME, props.__scopeMenu);\n const rootContext = useMenuRootContext(CONTENT_NAME, props.__scopeMenu);\n const subContext = useMenuSubContext(SUB_CONTENT_NAME, props.__scopeMenu);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx(\n MenuContentImpl,\n {\n id: subContext.contentId,\n \"aria-labelledby\": subContext.triggerId,\n ...subContentProps,\n ref: composedRefs,\n align: \"start\",\n side: rootContext.dir === \"rtl\" ? \"left\" : \"right\",\n disableOutsidePointerEvents: false,\n disableOutsideScroll: false,\n trapFocus: false,\n onOpenAutoFocus: (event) => {\n if (rootContext.isUsingKeyboardRef.current) ref.current?.focus();\n event.preventDefault();\n },\n onCloseAutoFocus: (event) => event.preventDefault(),\n onFocusOutside: composeEventHandlers(props.onFocusOutside, (event) => {\n if (event.target !== subContext.trigger) context.onOpenChange(false);\n }),\n onEscapeKeyDown: composeEventHandlers(props.onEscapeKeyDown, (event) => {\n rootContext.onClose();\n event.preventDefault();\n }),\n onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {\n const isKeyDownInside = event.currentTarget.contains(event.target);\n const isCloseKey = SUB_CLOSE_KEYS[rootContext.dir].includes(event.key);\n if (isKeyDownInside && isCloseKey) {\n context.onOpenChange(false);\n subContext.trigger?.focus();\n event.preventDefault();\n }\n })\n }\n ) }) }) });\n }\n);\nMenuSubContent.displayName = SUB_CONTENT_NAME;\nfunction getOpenState(open) {\n return open ? \"open\" : \"closed\";\n}\nfunction isIndeterminate(checked) {\n return checked === \"indeterminate\";\n}\nfunction getCheckedState(checked) {\n return isIndeterminate(checked) ? \"indeterminate\" : checked ? \"checked\" : \"unchecked\";\n}\nfunction focusFirst(candidates) {\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate.focus();\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nfunction getNextMatch(values, search, currentMatch) {\n const isRepeated = search.length > 1 && Array.from(search).every((char) => char === search[0]);\n const normalizedSearch = isRepeated ? search[0] : search;\n const currentMatchIndex = currentMatch ? values.indexOf(currentMatch) : -1;\n let wrappedValues = wrapArray(values, Math.max(currentMatchIndex, 0));\n const excludeCurrentMatch = normalizedSearch.length === 1;\n if (excludeCurrentMatch) wrappedValues = wrappedValues.filter((v) => v !== currentMatch);\n const nextMatch = wrappedValues.find(\n (value) => value.toLowerCase().startsWith(normalizedSearch.toLowerCase())\n );\n return nextMatch !== currentMatch ? nextMatch : void 0;\n}\nfunction isPointInPolygon(point, polygon) {\n const { x, y } = point;\n let inside = false;\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n const ii = polygon[i];\n const jj = polygon[j];\n const xi = ii.x;\n const yi = ii.y;\n const xj = jj.x;\n const yj = jj.y;\n const intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;\n if (intersect) inside = !inside;\n }\n return inside;\n}\nfunction isPointerInGraceArea(event, area) {\n if (!area) return false;\n const cursorPos = { x: event.clientX, y: event.clientY };\n return isPointInPolygon(cursorPos, area);\n}\nfunction whenMouse(handler) {\n return (event) => event.pointerType === \"mouse\" ? handler(event) : void 0;\n}\nvar Root3 = Menu;\nvar Anchor2 = MenuAnchor;\nvar Portal = MenuPortal;\nvar Content2 = MenuContent;\nvar Group = MenuGroup;\nvar Label = MenuLabel;\nvar Item2 = MenuItem;\nvar CheckboxItem = MenuCheckboxItem;\nvar RadioGroup = MenuRadioGroup;\nvar RadioItem = MenuRadioItem;\nvar ItemIndicator = MenuItemIndicator;\nvar Separator = MenuSeparator;\nvar Arrow2 = MenuArrow;\nvar Sub = MenuSub;\nvar SubTrigger = MenuSubTrigger;\nvar SubContent = MenuSubContent;\nexport {\n Anchor2 as Anchor,\n Arrow2 as Arrow,\n CheckboxItem,\n Content2 as Content,\n Group,\n Item2 as Item,\n ItemIndicator,\n Label,\n Menu,\n MenuAnchor,\n MenuArrow,\n MenuCheckboxItem,\n MenuContent,\n MenuGroup,\n MenuItem,\n MenuItemIndicator,\n MenuLabel,\n MenuPortal,\n MenuRadioGroup,\n MenuRadioItem,\n MenuSeparator,\n MenuSub,\n MenuSubContent,\n MenuSubTrigger,\n Portal,\n RadioGroup,\n RadioItem,\n Root3 as Root,\n Separator,\n Sub,\n SubContent,\n SubTrigger,\n createMenuScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["SELECTION_KEYS","FIRST_KEYS","LAST_KEYS","FIRST_LAST_KEYS","SUB_OPEN_KEYS","SUB_CLOSE_KEYS","MENU_NAME","Collection","useCollection","createCollectionScope","createCollection","createMenuContext","createMenuScope","createContextScope","createPopperScope","createRovingFocusGroupScope","usePopperScope","useRovingFocusGroupScope","MenuProvider","useMenuContext","MenuRootProvider","useMenuRootContext","Menu","props","__scopeMenu","open","children","dir","onOpenChange","modal","popperScope","content","setContent","React","isUsingKeyboardRef","handleOpenChange","useCallbackRef","direction","useDirection","handleKeyDown","handlePointer","jsx","PopperPrimitive.Root","ANCHOR_NAME","MenuAnchor","forwardedRef","anchorProps","PopperPrimitive.Anchor","PORTAL_NAME","PortalProvider","usePortalContext","MenuPortal","forceMount","container","context","Presence","PortalPrimitive","CONTENT_NAME","MenuContentProvider","useMenuContentContext","MenuContent","portalContext","contentProps","rootContext","MenuRootContentModal","MenuRootContentNonModal","ref","composedRefs","useComposedRefs","hideOthers","MenuContentImpl","composeEventHandlers","event","Slot","createSlot","loop","trapFocus","onOpenAutoFocus","onCloseAutoFocus","disableOutsidePointerEvents","onEntryFocus","onEscapeKeyDown","onPointerDownOutside","onFocusOutside","onInteractOutside","onDismiss","disableOutsideScroll","rovingFocusGroupScope","getItems","currentItemId","setCurrentItemId","contentRef","timerRef","searchRef","pointerGraceTimerRef","pointerGraceIntentRef","pointerDirRef","lastPointerXRef","ScrollLockWrapper","RemoveScroll","scrollLockWrapperProps","handleTypeaheadSearch","key","search","items","item","currentItem","currentMatch","values","nextMatch","getNextMatch","newItem","updateSearch","value","useFocusGuards","isPointerMovingToSubmenu","isPointerInGraceArea","intent","FocusScope","DismissableLayer","RovingFocusGroup.Root","PopperPrimitive.Content","getOpenState","isKeyDownInside","isModifierKey","isCharacterKey","candidateNodes","focusFirst","whenMouse","target","pointerXHasChanged","newDir","GROUP_NAME","MenuGroup","groupProps","Primitive","LABEL_NAME","MenuLabel","labelProps","ITEM_NAME","ITEM_SELECT","MenuItem","disabled","onSelect","itemProps","contentContext","isPointerDownRef","handleSelect","menuItem","itemSelectEvent","dispatchDiscreteCustomEvent","MenuItemImpl","isTypingAhead","textValue","isFocused","setIsFocused","textContent","setTextContent","RovingFocusGroup.Item","CHECKBOX_ITEM_NAME","MenuCheckboxItem","checked","onCheckedChange","checkboxItemProps","ItemIndicatorProvider","isIndeterminate","getCheckedState","RADIO_GROUP_NAME","RadioGroupProvider","useRadioGroupContext","MenuRadioGroup","onValueChange","handleValueChange","RADIO_ITEM_NAME","MenuRadioItem","radioItemProps","ITEM_INDICATOR_NAME","useItemIndicatorContext","MenuItemIndicator","itemIndicatorProps","indicatorContext","SEPARATOR_NAME","MenuSeparator","separatorProps","ARROW_NAME","MenuArrow","arrowProps","PopperPrimitive.Arrow","SUB_NAME","MenuSubProvider","useMenuSubContext","SUB_TRIGGER_NAME","MenuSubTrigger","subContext","openTimerRef","onPointerGraceIntentChange","scope","clearOpenTimer","pointerGraceTimer","composeRefs","contentRect","side","rightSide","bleed","contentNearEdge","contentFarEdge","SUB_CONTENT_NAME","MenuSubContent","subContentProps","isCloseKey","candidates","PREVIOUSLY_FOCUSED_ELEMENT","candidate","wrapArray","array","startIndex","_","index","normalizedSearch","char","currentMatchIndex","wrappedValues","v","isPointInPolygon","point","polygon","x","y","inside","i","j","ii","jj","xi","yi","xj","yj","area","cursorPos","handler","Root3","Anchor2","Portal","Content2","Group","Label","Item2","CheckboxItem","RadioGroup","RadioItem","ItemIndicator","Separator","Arrow2","SubTrigger","SubContent"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index178.js","sources":["../../../node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs"],"sourcesContent":["import { rectToClientRect, arrow as arrow$1, autoPlacement as autoPlacement$1, detectOverflow as detectOverflow$1, flip as flip$1, hide as hide$1, inline as inline$1, limitShift as limitShift$1, offset as offset$1, shift as shift$1, size as size$1, computePosition as computePosition$1 } from '@floating-ui/core';\nimport { round, createCoords, max, min, floor } from '@floating-ui/utils';\nimport { getComputedStyle as getComputedStyle$1, isHTMLElement, isElement, getWindow, isWebKit, getFrameElement, getNodeScroll, getDocumentElement, isTopLayer, getNodeName, isOverflowElement, getOverflowAncestors, getParentNode, isLastTraversableNode, isContainingBlock, isTableElement, getContainingBlock } from '@floating-ui/utils/dom';\nexport { getOverflowAncestors } from '@floating-ui/utils/dom';\n\nfunction getCssDimensions(element) {\n const css = getComputedStyle$1(element);\n // In testing environments, the `width` and `height` properties are empty\n // strings for SVG elements, returning NaN. Fallback to `0` in this case.\n let width = parseFloat(css.width) || 0;\n let height = parseFloat(css.height) || 0;\n const hasOffset = isHTMLElement(element);\n const offsetWidth = hasOffset ? element.offsetWidth : width;\n const offsetHeight = hasOffset ? element.offsetHeight : height;\n const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;\n if (shouldFallback) {\n width = offsetWidth;\n height = offsetHeight;\n }\n return {\n width,\n height,\n $: shouldFallback\n };\n}\n\nfunction unwrapElement(element) {\n return !isElement(element) ? element.contextElement : element;\n}\n\nfunction getScale(element) {\n const domElement = unwrapElement(element);\n if (!isHTMLElement(domElement)) {\n return createCoords(1);\n }\n const rect = domElement.getBoundingClientRect();\n const {\n width,\n height,\n $\n } = getCssDimensions(domElement);\n let x = ($ ? round(rect.width) : rect.width) / width;\n let y = ($ ? round(rect.height) : rect.height) / height;\n\n // 0, NaN, or Infinity should always fallback to 1.\n\n if (!x || !Number.isFinite(x)) {\n x = 1;\n }\n if (!y || !Number.isFinite(y)) {\n y = 1;\n }\n return {\n x,\n y\n };\n}\n\nconst noOffsets = /*#__PURE__*/createCoords(0);\nfunction getVisualOffsets(element) {\n const win = getWindow(element);\n if (!isWebKit() || !win.visualViewport) {\n return noOffsets;\n }\n return {\n x: win.visualViewport.offsetLeft,\n y: win.visualViewport.offsetTop\n };\n}\nfunction shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n if (!floatingOffsetParent || isFixed && floatingOffsetParent !== getWindow(element)) {\n return false;\n }\n return isFixed;\n}\n\nfunction getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n const clientRect = element.getBoundingClientRect();\n const domElement = unwrapElement(element);\n let scale = createCoords(1);\n if (includeScale) {\n if (offsetParent) {\n if (isElement(offsetParent)) {\n scale = getScale(offsetParent);\n }\n } else {\n scale = getScale(element);\n }\n }\n const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);\n let x = (clientRect.left + visualOffsets.x) / scale.x;\n let y = (clientRect.top + visualOffsets.y) / scale.y;\n let width = clientRect.width / scale.x;\n let height = clientRect.height / scale.y;\n if (domElement) {\n const win = getWindow(domElement);\n const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;\n let currentWin = win;\n let currentIFrame = getFrameElement(currentWin);\n while (currentIFrame && offsetParent && offsetWin !== currentWin) {\n const iframeScale = getScale(currentIFrame);\n const iframeRect = currentIFrame.getBoundingClientRect();\n const css = getComputedStyle$1(currentIFrame);\n const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;\n const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;\n x *= iframeScale.x;\n y *= iframeScale.y;\n width *= iframeScale.x;\n height *= iframeScale.y;\n x += left;\n y += top;\n currentWin = getWindow(currentIFrame);\n currentIFrame = getFrameElement(currentWin);\n }\n }\n return rectToClientRect({\n width,\n height,\n x,\n y\n });\n}\n\n// If <html> has a CSS width greater than the viewport, then this will be\n// incorrect for RTL.\nfunction getWindowScrollBarX(element, rect) {\n const leftScroll = getNodeScroll(element).scrollLeft;\n if (!rect) {\n return getBoundingClientRect(getDocumentElement(element)).left + leftScroll;\n }\n return rect.left + leftScroll;\n}\n\nfunction getHTMLOffset(documentElement, scroll) {\n const htmlRect = documentElement.getBoundingClientRect();\n const x = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect);\n const y = htmlRect.top + scroll.scrollTop;\n return {\n x,\n y\n };\n}\n\nfunction convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {\n let {\n elements,\n rect,\n offsetParent,\n strategy\n } = _ref;\n const isFixed = strategy === 'fixed';\n const documentElement = getDocumentElement(offsetParent);\n const topLayer = elements ? isTopLayer(elements.floating) : false;\n if (offsetParent === documentElement || topLayer && isFixed) {\n return rect;\n }\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n let scale = createCoords(1);\n const offsets = createCoords(0);\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isHTMLElement(offsetParent)) {\n const offsetRect = getBoundingClientRect(offsetParent);\n scale = getScale(offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n }\n }\n const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);\n return {\n width: rect.width * scale.x,\n height: rect.height * scale.y,\n x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x + htmlOffset.x,\n y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y + htmlOffset.y\n };\n}\n\nfunction getClientRects(element) {\n return Array.from(element.getClientRects());\n}\n\n// Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable.\nfunction getDocumentRect(element) {\n const html = getDocumentElement(element);\n const scroll = getNodeScroll(element);\n const body = element.ownerDocument.body;\n const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);\n const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);\n let x = -scroll.scrollLeft + getWindowScrollBarX(element);\n const y = -scroll.scrollTop;\n if (getComputedStyle$1(body).direction === 'rtl') {\n x += max(html.clientWidth, body.clientWidth) - width;\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\n// Safety check: ensure the scrollbar space is reasonable in case this\n// calculation is affected by unusual styles.\n// Most scrollbars leave 15-18px of space.\nconst SCROLLBAR_MAX = 25;\nfunction getViewportRect(element, strategy) {\n const win = getWindow(element);\n const html = getDocumentElement(element);\n const visualViewport = win.visualViewport;\n let width = html.clientWidth;\n let height = html.clientHeight;\n let x = 0;\n let y = 0;\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n const visualViewportBased = isWebKit();\n if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n const windowScrollbarX = getWindowScrollBarX(html);\n // <html> `overflow: hidden` + `scrollbar-gutter: stable` reduces the\n // visual width of the <html> but this is not considered in the size\n // of `html.clientWidth`.\n if (windowScrollbarX <= 0) {\n const doc = html.ownerDocument;\n const body = doc.body;\n const bodyStyles = getComputedStyle(body);\n const bodyMarginInline = doc.compatMode === 'CSS1Compat' ? parseFloat(bodyStyles.marginLeft) + parseFloat(bodyStyles.marginRight) || 0 : 0;\n const clippingStableScrollbarWidth = Math.abs(html.clientWidth - body.clientWidth - bodyMarginInline);\n if (clippingStableScrollbarWidth <= SCROLLBAR_MAX) {\n width -= clippingStableScrollbarWidth;\n }\n } else if (windowScrollbarX <= SCROLLBAR_MAX) {\n // If the <body> scrollbar is on the left, the width needs to be extended\n // by the scrollbar amount so there isn't extra space on the right.\n width += windowScrollbarX;\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\nconst absoluteOrFixed = /*#__PURE__*/new Set(['absolute', 'fixed']);\n// Returns the inner client rect, subtracting scrollbars if present.\nfunction getInnerBoundingClientRect(element, strategy) {\n const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');\n const top = clientRect.top + element.clientTop;\n const left = clientRect.left + element.clientLeft;\n const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);\n const width = element.clientWidth * scale.x;\n const height = element.clientHeight * scale.y;\n const x = left * scale.x;\n const y = top * scale.y;\n return {\n width,\n height,\n x,\n y\n };\n}\nfunction getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {\n let rect;\n if (clippingAncestor === 'viewport') {\n rect = getViewportRect(element, strategy);\n } else if (clippingAncestor === 'document') {\n rect = getDocumentRect(getDocumentElement(element));\n } else if (isElement(clippingAncestor)) {\n rect = getInnerBoundingClientRect(clippingAncestor, strategy);\n } else {\n const visualOffsets = getVisualOffsets(element);\n rect = {\n x: clippingAncestor.x - visualOffsets.x,\n y: clippingAncestor.y - visualOffsets.y,\n width: clippingAncestor.width,\n height: clippingAncestor.height\n };\n }\n return rectToClientRect(rect);\n}\nfunction hasFixedPositionAncestor(element, stopNode) {\n const parentNode = getParentNode(element);\n if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {\n return false;\n }\n return getComputedStyle$1(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);\n}\n\n// A \"clipping ancestor\" is an `overflow` element with the characteristic of\n// clipping (or hiding) child elements. This returns all clipping ancestors\n// of the given element up the tree.\nfunction getClippingElementAncestors(element, cache) {\n const cachedResult = cache.get(element);\n if (cachedResult) {\n return cachedResult;\n }\n let result = getOverflowAncestors(element, [], false).filter(el => isElement(el) && getNodeName(el) !== 'body');\n let currentContainingBlockComputedStyle = null;\n const elementIsFixed = getComputedStyle$1(element).position === 'fixed';\n let currentNode = elementIsFixed ? getParentNode(element) : element;\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {\n const computedStyle = getComputedStyle$1(currentNode);\n const currentNodeIsContaining = isContainingBlock(currentNode);\n if (!currentNodeIsContaining && computedStyle.position === 'fixed') {\n currentContainingBlockComputedStyle = null;\n }\n const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && absoluteOrFixed.has(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);\n if (shouldDropCurrentNode) {\n // Drop non-containing blocks.\n result = result.filter(ancestor => ancestor !== currentNode);\n } else {\n // Record last containing block for next iteration.\n currentContainingBlockComputedStyle = computedStyle;\n }\n currentNode = getParentNode(currentNode);\n }\n cache.set(element, result);\n return result;\n}\n\n// Gets the maximum area that the element is visible in due to any number of\n// clipping ancestors.\nfunction getClippingRect(_ref) {\n let {\n element,\n boundary,\n rootBoundary,\n strategy\n } = _ref;\n const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary);\n const clippingAncestors = [...elementClippingAncestors, rootBoundary];\n const firstClippingAncestor = clippingAncestors[0];\n const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {\n const rect = getClientRectFromClippingAncestor(element, clippingAncestor, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromClippingAncestor(element, firstClippingAncestor, strategy));\n return {\n width: clippingRect.right - clippingRect.left,\n height: clippingRect.bottom - clippingRect.top,\n x: clippingRect.left,\n y: clippingRect.top\n };\n}\n\nfunction getDimensions(element) {\n const {\n width,\n height\n } = getCssDimensions(element);\n return {\n width,\n height\n };\n}\n\nfunction getRectRelativeToOffsetParent(element, offsetParent, strategy) {\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n const documentElement = getDocumentElement(offsetParent);\n const isFixed = strategy === 'fixed';\n const rect = getBoundingClientRect(element, true, isFixed, offsetParent);\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n const offsets = createCoords(0);\n\n // If the <body> scrollbar appears on the left (e.g. RTL systems). Use\n // Firefox with layout.scrollbar.side = 3 in about:config to test this.\n function setLeftRTLScrollbarOffset() {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isOffsetParentAnElement) {\n const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n } else if (documentElement) {\n setLeftRTLScrollbarOffset();\n }\n }\n if (isFixed && !isOffsetParentAnElement && documentElement) {\n setLeftRTLScrollbarOffset();\n }\n const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);\n const x = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;\n const y = rect.top + scroll.scrollTop - offsets.y - htmlOffset.y;\n return {\n x,\n y,\n width: rect.width,\n height: rect.height\n };\n}\n\nfunction isStaticPositioned(element) {\n return getComputedStyle$1(element).position === 'static';\n}\n\nfunction getTrueOffsetParent(element, polyfill) {\n if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {\n return null;\n }\n if (polyfill) {\n return polyfill(element);\n }\n let rawOffsetParent = element.offsetParent;\n\n // Firefox returns the <html> element as the offsetParent if it's non-static,\n // while Chrome and Safari return the <body> element. The <body> element must\n // be used to perform the correct calculations even if the <html> element is\n // non-static.\n if (getDocumentElement(element) === rawOffsetParent) {\n rawOffsetParent = rawOffsetParent.ownerDocument.body;\n }\n return rawOffsetParent;\n}\n\n// Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\nfunction getOffsetParent(element, polyfill) {\n const win = getWindow(element);\n if (isTopLayer(element)) {\n return win;\n }\n if (!isHTMLElement(element)) {\n let svgOffsetParent = getParentNode(element);\n while (svgOffsetParent && !isLastTraversableNode(svgOffsetParent)) {\n if (isElement(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {\n return svgOffsetParent;\n }\n svgOffsetParent = getParentNode(svgOffsetParent);\n }\n return win;\n }\n let offsetParent = getTrueOffsetParent(element, polyfill);\n while (offsetParent && isTableElement(offsetParent) && isStaticPositioned(offsetParent)) {\n offsetParent = getTrueOffsetParent(offsetParent, polyfill);\n }\n if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned(offsetParent) && !isContainingBlock(offsetParent)) {\n return win;\n }\n return offsetParent || getContainingBlock(element) || win;\n}\n\nconst getElementRects = async function (data) {\n const getOffsetParentFn = this.getOffsetParent || getOffsetParent;\n const getDimensionsFn = this.getDimensions;\n const floatingDimensions = await getDimensionsFn(data.floating);\n return {\n reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),\n floating: {\n x: 0,\n y: 0,\n width: floatingDimensions.width,\n height: floatingDimensions.height\n }\n };\n};\n\nfunction isRTL(element) {\n return getComputedStyle$1(element).direction === 'rtl';\n}\n\nconst platform = {\n convertOffsetParentRelativeRectToViewportRelativeRect,\n getDocumentElement,\n getClippingRect,\n getOffsetParent,\n getElementRects,\n getClientRects,\n getDimensions,\n getScale,\n isElement,\n isRTL\n};\n\nfunction rectsAreEqual(a, b) {\n return a.x === b.x && a.y === b.y && a.width === b.width && a.height === b.height;\n}\n\n// https://samthor.au/2021/observing-dom/\nfunction observeMove(element, onMove) {\n let io = null;\n let timeoutId;\n const root = getDocumentElement(element);\n function cleanup() {\n var _io;\n clearTimeout(timeoutId);\n (_io = io) == null || _io.disconnect();\n io = null;\n }\n function refresh(skip, threshold) {\n if (skip === void 0) {\n skip = false;\n }\n if (threshold === void 0) {\n threshold = 1;\n }\n cleanup();\n const elementRectForRootMargin = element.getBoundingClientRect();\n const {\n left,\n top,\n width,\n height\n } = elementRectForRootMargin;\n if (!skip) {\n onMove();\n }\n if (!width || !height) {\n return;\n }\n const insetTop = floor(top);\n const insetRight = floor(root.clientWidth - (left + width));\n const insetBottom = floor(root.clientHeight - (top + height));\n const insetLeft = floor(left);\n const rootMargin = -insetTop + \"px \" + -insetRight + \"px \" + -insetBottom + \"px \" + -insetLeft + \"px\";\n const options = {\n rootMargin,\n threshold: max(0, min(1, threshold)) || 1\n };\n let isFirstUpdate = true;\n function handleObserve(entries) {\n const ratio = entries[0].intersectionRatio;\n if (ratio !== threshold) {\n if (!isFirstUpdate) {\n return refresh();\n }\n if (!ratio) {\n // If the reference is clipped, the ratio is 0. Throttle the refresh\n // to prevent an infinite loop of updates.\n timeoutId = setTimeout(() => {\n refresh(false, 1e-7);\n }, 1000);\n } else {\n refresh(false, ratio);\n }\n }\n if (ratio === 1 && !rectsAreEqual(elementRectForRootMargin, element.getBoundingClientRect())) {\n // It's possible that even though the ratio is reported as 1, the\n // element is not actually fully within the IntersectionObserver's root\n // area anymore. This can happen under performance constraints. This may\n // be a bug in the browser's IntersectionObserver implementation. To\n // work around this, we compare the element's bounding rect now with\n // what it was at the time we created the IntersectionObserver. If they\n // are not equal then the element moved, so we refresh.\n refresh();\n }\n isFirstUpdate = false;\n }\n\n // Older browsers don't support a `document` as the root and will throw an\n // error.\n try {\n io = new IntersectionObserver(handleObserve, {\n ...options,\n // Handle <iframe>s\n root: root.ownerDocument\n });\n } catch (_e) {\n io = new IntersectionObserver(handleObserve, options);\n }\n io.observe(element);\n }\n refresh(true);\n return cleanup;\n}\n\n/**\n * Automatically updates the position of the floating element when necessary.\n * Should only be called when the floating element is mounted on the DOM or\n * visible on the screen.\n * @returns cleanup function that should be invoked when the floating element is\n * removed from the DOM or hidden from the screen.\n * @see https://floating-ui.com/docs/autoUpdate\n */\nfunction autoUpdate(reference, floating, update, options) {\n if (options === void 0) {\n options = {};\n }\n const {\n ancestorScroll = true,\n ancestorResize = true,\n elementResize = typeof ResizeObserver === 'function',\n layoutShift = typeof IntersectionObserver === 'function',\n animationFrame = false\n } = options;\n const referenceEl = unwrapElement(reference);\n const ancestors = ancestorScroll || ancestorResize ? [...(referenceEl ? getOverflowAncestors(referenceEl) : []), ...getOverflowAncestors(floating)] : [];\n ancestors.forEach(ancestor => {\n ancestorScroll && ancestor.addEventListener('scroll', update, {\n passive: true\n });\n ancestorResize && ancestor.addEventListener('resize', update);\n });\n const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update) : null;\n let reobserveFrame = -1;\n let resizeObserver = null;\n if (elementResize) {\n resizeObserver = new ResizeObserver(_ref => {\n let [firstEntry] = _ref;\n if (firstEntry && firstEntry.target === referenceEl && resizeObserver) {\n // Prevent update loops when using the `size` middleware.\n // https://github.com/floating-ui/floating-ui/issues/1740\n resizeObserver.unobserve(floating);\n cancelAnimationFrame(reobserveFrame);\n reobserveFrame = requestAnimationFrame(() => {\n var _resizeObserver;\n (_resizeObserver = resizeObserver) == null || _resizeObserver.observe(floating);\n });\n }\n update();\n });\n if (referenceEl && !animationFrame) {\n resizeObserver.observe(referenceEl);\n }\n resizeObserver.observe(floating);\n }\n let frameId;\n let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;\n if (animationFrame) {\n frameLoop();\n }\n function frameLoop() {\n const nextRefRect = getBoundingClientRect(reference);\n if (prevRefRect && !rectsAreEqual(prevRefRect, nextRefRect)) {\n update();\n }\n prevRefRect = nextRefRect;\n frameId = requestAnimationFrame(frameLoop);\n }\n update();\n return () => {\n var _resizeObserver2;\n ancestors.forEach(ancestor => {\n ancestorScroll && ancestor.removeEventListener('scroll', update);\n ancestorResize && ancestor.removeEventListener('resize', update);\n });\n cleanupIo == null || cleanupIo();\n (_resizeObserver2 = resizeObserver) == null || _resizeObserver2.disconnect();\n resizeObserver = null;\n if (animationFrame) {\n cancelAnimationFrame(frameId);\n }\n };\n}\n\n/**\n * Resolves with an object of overflow side offsets that determine how much the\n * element is overflowing a given clipping boundary on each side.\n * - positive = overflowing the boundary by that number of pixels\n * - negative = how many pixels left before it will overflow\n * - 0 = lies flush with the boundary\n * @see https://floating-ui.com/docs/detectOverflow\n */\nconst detectOverflow = detectOverflow$1;\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset = offset$1;\n\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = autoPlacement$1;\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = shift$1;\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = flip$1;\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = size$1;\n\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = hide$1;\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow = arrow$1;\n\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = inline$1;\n\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = limitShift$1;\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a given reference element.\n */\nconst computePosition = (reference, floating, options) => {\n // This caches the expensive `getClippingElementAncestors` function so that\n // multiple lifecycle resets re-use the same result. It only lives for a\n // single call. If other functions become expensive, we can add them as well.\n const cache = new Map();\n const mergedOptions = {\n platform,\n ...options\n };\n const platformWithCache = {\n ...mergedOptions.platform,\n _c: cache\n };\n return computePosition$1(reference, floating, {\n ...mergedOptions,\n platform: platformWithCache\n });\n};\n\nexport { arrow, autoPlacement, autoUpdate, computePosition, detectOverflow, flip, hide, inline, limitShift, offset, platform, shift, size };\n"],"names":["getCssDimensions","element","css","getComputedStyle$1","width","height","hasOffset","isHTMLElement","offsetWidth","offsetHeight","shouldFallback","round","unwrapElement","isElement","getScale","domElement","createCoords","rect","$","x","y","noOffsets","getVisualOffsets","win","getWindow","isWebKit","shouldAddVisualOffsets","isFixed","floatingOffsetParent","getBoundingClientRect","includeScale","isFixedStrategy","offsetParent","clientRect","scale","visualOffsets","offsetWin","currentWin","currentIFrame","getFrameElement","iframeScale","iframeRect","left","top","rectToClientRect","getWindowScrollBarX","leftScroll","getNodeScroll","getDocumentElement","getHTMLOffset","documentElement","scroll","htmlRect","convertOffsetParentRelativeRectToViewportRelativeRect","_ref","elements","strategy","topLayer","isTopLayer","offsets","isOffsetParentAnElement","getNodeName","isOverflowElement","offsetRect","htmlOffset","getClientRects","getDocumentRect","html","body","max","SCROLLBAR_MAX","getViewportRect","visualViewport","visualViewportBased","windowScrollbarX","doc","bodyStyles","bodyMarginInline","clippingStableScrollbarWidth","absoluteOrFixed","getInnerBoundingClientRect","getClientRectFromClippingAncestor","clippingAncestor","hasFixedPositionAncestor","stopNode","parentNode","getParentNode","isLastTraversableNode","getClippingElementAncestors","cache","cachedResult","result","getOverflowAncestors","el","currentContainingBlockComputedStyle","elementIsFixed","currentNode","computedStyle","currentNodeIsContaining","isContainingBlock","ancestor","getClippingRect","boundary","rootBoundary","clippingAncestors","firstClippingAncestor","clippingRect","accRect","min","getDimensions","getRectRelativeToOffsetParent","setLeftRTLScrollbarOffset","isStaticPositioned","getTrueOffsetParent","polyfill","rawOffsetParent","getOffsetParent","svgOffsetParent","isTableElement","getContainingBlock","getElementRects","data","getOffsetParentFn","getDimensionsFn","floatingDimensions","isRTL","platform","rectsAreEqual","a","b","observeMove","onMove","io","timeoutId","root","cleanup","_io","refresh","skip","threshold","elementRectForRootMargin","insetTop","floor","insetRight","insetBottom","insetLeft","options","isFirstUpdate","handleObserve","entries","ratio","autoUpdate","reference","floating","update","ancestorScroll","ancestorResize","elementResize","layoutShift","animationFrame","referenceEl","ancestors","cleanupIo","reobserveFrame","resizeObserver","firstEntry","_resizeObserver","frameId","prevRefRect","frameLoop","nextRefRect","_resizeObserver2","offset","offset$1","shift","shift$1","flip","flip$1","size","size$1","hide","hide$1","arrow","arrow$1","limitShift","limitShift$1","computePosition","mergedOptions","platformWithCache","computePosition$1"],"mappings":"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","x_google_ignoreList":[0]}
package/dist/index179.js CHANGED
@@ -1,62 +1,17 @@
1
- import { tzName as r } from "./index180.js";
2
- import { TZDateMini as s } from "./index181.js";
3
- class o extends s {
4
- //#region static
5
- static tz(t, ...e) {
6
- return e.length ? new o(...e, t) : new o(Date.now(), t);
7
- }
8
- //#endregion
9
- //#region representation
10
- toISOString() {
11
- const [t, e, n] = this.tzComponents(), i = `${t}${e}:${n}`;
12
- return this.internal.toISOString().slice(0, -1) + i;
13
- }
14
- toString() {
15
- return `${this.toDateString()} ${this.toTimeString()}`;
16
- }
17
- toDateString() {
18
- const [t, e, n, i] = this.internal.toUTCString().split(" ");
19
- return `${t?.slice(0, -1)} ${n} ${e} ${i}`;
20
- }
21
- toTimeString() {
22
- const t = this.internal.toUTCString().split(" ")[4], [e, n, i] = this.tzComponents();
23
- return `${t} GMT${e}${n}${i} (${r(this.timeZone, this)})`;
24
- }
25
- toLocaleString(t, e) {
26
- return Date.prototype.toLocaleString.call(this, t, {
27
- ...e,
28
- timeZone: e?.timeZone || this.timeZone
29
- });
30
- }
31
- toLocaleDateString(t, e) {
32
- return Date.prototype.toLocaleDateString.call(this, t, {
33
- ...e,
34
- timeZone: e?.timeZone || this.timeZone
35
- });
36
- }
37
- toLocaleTimeString(t, e) {
38
- return Date.prototype.toLocaleTimeString.call(this, t, {
39
- ...e,
40
- timeZone: e?.timeZone || this.timeZone
41
- });
42
- }
43
- //#endregion
44
- //#region private
45
- tzComponents() {
46
- const t = this.getTimezoneOffset(), e = t > 0 ? "-" : "+", n = String(Math.floor(Math.abs(t) / 60)).padStart(2, "0"), i = String(Math.abs(t) % 60).padStart(2, "0");
47
- return [e, n, i];
48
- }
49
- //#endregion
50
- withTimeZone(t) {
51
- return new o(+this, t);
52
- }
53
- //#region date-fns integration
54
- [/* @__PURE__ */ Symbol.for("constructDateFrom")](t) {
55
- return new o(+new Date(t), this.timeZone);
56
- }
57
- //#endregion
1
+ import h from "./index94.js";
2
+ function L(i, r, u) {
3
+ return s(i, r, void 0, u);
4
+ }
5
+ function s(i, r, u, e) {
6
+ r && (e = new h(e.metadata), e.selectNumberingPlan(r));
7
+ var f = e.type(u), n = f && f.possibleLengths() || e.possibleLengths();
8
+ if (!n)
9
+ return "IS_POSSIBLE";
10
+ var t = i.length, l = n[0];
11
+ return l === t ? "IS_POSSIBLE" : l > t ? "TOO_SHORT" : n[n.length - 1] < t ? "TOO_LONG" : n.indexOf(t, 1) >= 0 ? "IS_POSSIBLE" : "INVALID_LENGTH";
58
12
  }
59
13
  export {
60
- o as TZDate
14
+ s as checkNumberLengthForType,
15
+ L as default
61
16
  };
62
17
  //# sourceMappingURL=index179.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index179.js","sources":["../../../node_modules/@date-fns/tz/date/index.js"],"sourcesContent":["import { tzName } from \"../tzName/index.js\";\nimport { TZDateMini } from \"./mini.js\";\nexport class TZDate extends TZDateMini {\n //#region static\n\n static tz(tz, ...args) {\n return args.length ? new TZDate(...args, tz) : new TZDate(Date.now(), tz);\n }\n\n //#endregion\n\n //#region representation\n\n toISOString() {\n const [sign, hours, minutes] = this.tzComponents();\n const tz = `${sign}${hours}:${minutes}`;\n return this.internal.toISOString().slice(0, -1) + tz;\n }\n toString() {\n // \"Tue Aug 13 2024 07:50:19 GMT+0800 (Singapore Standard Time)\";\n return `${this.toDateString()} ${this.toTimeString()}`;\n }\n toDateString() {\n // toUTCString returns RFC 7231 (\"Mon, 12 Aug 2024 23:36:08 GMT\")\n const [day, date, month, year] = this.internal.toUTCString().split(\" \");\n // \"Tue Aug 13 2024\"\n return `${day?.slice(0, -1) /* Remove \",\" */} ${month} ${date} ${year}`;\n }\n toTimeString() {\n // toUTCString returns RFC 7231 (\"Mon, 12 Aug 2024 23:36:08 GMT\")\n const time = this.internal.toUTCString().split(\" \")[4];\n const [sign, hours, minutes] = this.tzComponents();\n // \"07:42:23 GMT+0800 (Singapore Standard Time)\"\n return `${time} GMT${sign}${hours}${minutes} (${tzName(this.timeZone, this)})`;\n }\n toLocaleString(locales, options) {\n return Date.prototype.toLocaleString.call(this, locales, {\n ...options,\n timeZone: options?.timeZone || this.timeZone\n });\n }\n toLocaleDateString(locales, options) {\n return Date.prototype.toLocaleDateString.call(this, locales, {\n ...options,\n timeZone: options?.timeZone || this.timeZone\n });\n }\n toLocaleTimeString(locales, options) {\n return Date.prototype.toLocaleTimeString.call(this, locales, {\n ...options,\n timeZone: options?.timeZone || this.timeZone\n });\n }\n\n //#endregion\n\n //#region private\n\n tzComponents() {\n const offset = this.getTimezoneOffset();\n const sign = offset > 0 ? \"-\" : \"+\";\n const hours = String(Math.floor(Math.abs(offset) / 60)).padStart(2, \"0\");\n const minutes = String(Math.abs(offset) % 60).padStart(2, \"0\");\n return [sign, hours, minutes];\n }\n\n //#endregion\n\n withTimeZone(timeZone) {\n return new TZDate(+this, timeZone);\n }\n\n //#region date-fns integration\n\n [Symbol.for(\"constructDateFrom\")](date) {\n return new TZDate(+new Date(date), this.timeZone);\n }\n\n //#endregion\n}"],"names":["TZDate","TZDateMini","tz","args","sign","hours","minutes","day","date","month","year","time","tzName","locales","options","offset","timeZone"],"mappings":";;AAEO,MAAMA,UAAeC,EAAW;AAAA;AAAA,EAGrC,OAAO,GAAGC,MAAOC,GAAM;AACrB,WAAOA,EAAK,SAAS,IAAIH,EAAO,GAAGG,GAAMD,CAAE,IAAI,IAAIF,EAAO,KAAK,IAAG,GAAIE,CAAE;AAAA,EAC1E;AAAA;AAAA;AAAA,EAMA,cAAc;AACZ,UAAM,CAACE,GAAMC,GAAOC,CAAO,IAAI,KAAK,aAAY,GAC1CJ,IAAK,GAAGE,CAAI,GAAGC,CAAK,IAAIC,CAAO;AACrC,WAAO,KAAK,SAAS,YAAW,EAAG,MAAM,GAAG,EAAE,IAAIJ;AAAA,EACpD;AAAA,EACA,WAAW;AAET,WAAO,GAAG,KAAK,aAAY,CAAE,IAAI,KAAK,aAAY,CAAE;AAAA,EACtD;AAAA,EACA,eAAe;AAEb,UAAM,CAACK,GAAKC,GAAMC,GAAOC,CAAI,IAAI,KAAK,SAAS,cAAc,MAAM,GAAG;AAEtE,WAAO,GAAGH,GAAK,MAAM,GAAG,EAAE,CAAC,IAAqBE,CAAK,IAAID,CAAI,IAAIE,CAAI;AAAA,EACvE;AAAA,EACA,eAAe;AAEb,UAAMC,IAAO,KAAK,SAAS,YAAW,EAAG,MAAM,GAAG,EAAE,CAAC,GAC/C,CAACP,GAAMC,GAAOC,CAAO,IAAI,KAAK,aAAY;AAEhD,WAAO,GAAGK,CAAI,OAAOP,CAAI,GAAGC,CAAK,GAAGC,CAAO,KAAKM,EAAO,KAAK,UAAU,IAAI,CAAC;AAAA,EAC7E;AAAA,EACA,eAAeC,GAASC,GAAS;AAC/B,WAAO,KAAK,UAAU,eAAe,KAAK,MAAMD,GAAS;AAAA,MACvD,GAAGC;AAAA,MACH,UAAUA,GAAS,YAAY,KAAK;AAAA,IAC1C,CAAK;AAAA,EACH;AAAA,EACA,mBAAmBD,GAASC,GAAS;AACnC,WAAO,KAAK,UAAU,mBAAmB,KAAK,MAAMD,GAAS;AAAA,MAC3D,GAAGC;AAAA,MACH,UAAUA,GAAS,YAAY,KAAK;AAAA,IAC1C,CAAK;AAAA,EACH;AAAA,EACA,mBAAmBD,GAASC,GAAS;AACnC,WAAO,KAAK,UAAU,mBAAmB,KAAK,MAAMD,GAAS;AAAA,MAC3D,GAAGC;AAAA,MACH,UAAUA,GAAS,YAAY,KAAK;AAAA,IAC1C,CAAK;AAAA,EACH;AAAA;AAAA;AAAA,EAMA,eAAe;AACb,UAAMC,IAAS,KAAK,kBAAiB,GAC/BX,IAAOW,IAAS,IAAI,MAAM,KAC1BV,IAAQ,OAAO,KAAK,MAAM,KAAK,IAAIU,CAAM,IAAI,EAAE,CAAC,EAAE,SAAS,GAAG,GAAG,GACjET,IAAU,OAAO,KAAK,IAAIS,CAAM,IAAI,EAAE,EAAE,SAAS,GAAG,GAAG;AAC7D,WAAO,CAACX,GAAMC,GAAOC,CAAO;AAAA,EAC9B;AAAA;AAAA,EAIA,aAAaU,GAAU;AACrB,WAAO,IAAIhB,EAAO,CAAC,MAAMgB,CAAQ;AAAA,EACnC;AAAA;AAAA,EAIA,CAAC,uBAAO,IAAI,mBAAmB,CAAC,EAAER,GAAM;AACtC,WAAO,IAAIR,EAAO,CAAC,IAAI,KAAKQ,CAAI,GAAG,KAAK,QAAQ;AAAA,EAClD;AAAA;AAGF;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index179.js","sources":["../../../node_modules/libphonenumber-js/es6/helpers/checkNumberLength.js"],"sourcesContent":["import Metadata from '../metadata.js';\nimport mergeArrays from './mergeArrays.js';\nexport default function checkNumberLength(nationalNumber, country, metadata) {\n return checkNumberLengthForType(nationalNumber, country, undefined, metadata);\n}\n\n// Checks whether a number is possible for a certain `country` based on the number length.\n//\n// This function is not supported by metadata generated with ancient versions of\n// `libphonenumber-js` (before version `1.0.18`) which didn't include \"possible lengths\".\n//\n// There was also a known issue with `checkNumberLength()` function:\n// if a number is possible only in a certain `country` among several `countries`\n// that share the same \"country calling code\", that function would check\n// the possibility of the phone number only in the \"main\" `country` for the \"country calling code\"\n// and would not check if it's actually be possible in the speciifc `country`.\n//\n// For example, \"+1310xxxx\" numbers are valid in Canada.\n// However, they are not possible in the US due to being too short.\n// Since Canada and the US share the same country calling code — \"+1\" —\n// `checkNumberLength()` function used to return not \"IS_POSSIBLE\" for \"+1310xxxx\" numbers.\n//\n// In such cases, when using \"/max\" metadata, `isValid()` could output `true`\n// but at the same time `isPossible()` could output `false`, which was contradictory.\n//\n// See https://issuetracker.google.com/issues/335892662 for the discusson in Google's issues.\n//\n// The solution suggested by Google was implemented: an optional `country` argument\n// was added to `checkNumberLength()` function. If present, that `country` will be used\n// to check phone number length for that specific `country` rather than the \"main\" country\n// for the shared \"country calling code\".\n//\nexport function checkNumberLengthForType(nationalNumber, country, type, metadata) {\n // If the exact `country` is specified, it's no necessarily already selected in `metadata`.\n // Most likely, in cases when there're multiple countries corresponding to the same\n // \"country calling code\", the \"main\" country for that \"country calling code\" will be selected.\n if (country) {\n metadata = new Metadata(metadata.metadata);\n metadata.selectNumberingPlan(country);\n }\n var type_info = metadata.type(type);\n\n // There should always be \"<possiblePengths/>\" set for every type element.\n // This is declared in the XML schema.\n // For size efficiency, where a sub-description (e.g. fixed-line)\n // has the same \"<possiblePengths/>\" as the \"general description\", this is missing,\n // so we fall back to the \"general description\". Where no numbers of the type\n // exist at all, there is one possible length (-1) which is guaranteed\n // not to match the length of any real phone number.\n var possible_lengths = type_info && type_info.possibleLengths() || metadata.possibleLengths();\n // let local_lengths = type_info && type.possibleLengthsLocal() || metadata.possibleLengthsLocal()\n\n // Metadata before version `1.0.18` didn't contain `possible_lengths`.\n if (!possible_lengths) {\n return 'IS_POSSIBLE';\n }\n if (type === 'FIXED_LINE_OR_MOBILE') {\n // No such country in metadata.\n /* istanbul ignore next */\n if (!metadata.type('FIXED_LINE')) {\n // The rare case has been encountered where no fixedLine data is available\n // (true for some non-geographic entities), so we just check mobile.\n return checkNumberLengthForType(nationalNumber, country, 'MOBILE', metadata);\n }\n var mobile_type = metadata.type('MOBILE');\n if (mobile_type) {\n // Merge the mobile data in if there was any. \"Concat\" creates a new\n // array, it doesn't edit possible_lengths in place, so we don't need a copy.\n // Note that when adding the possible lengths from mobile, we have\n // to again check they aren't empty since if they are this indicates\n // they are the same as the general desc and should be obtained from there.\n possible_lengths = mergeArrays(possible_lengths, mobile_type.possibleLengths());\n // The current list is sorted; we need to merge in the new list and\n // re-sort (duplicates are okay). Sorting isn't so expensive because\n // the lists are very small.\n\n // if (local_lengths) {\n // \tlocal_lengths = mergeArrays(local_lengths, mobile_type.possibleLengthsLocal())\n // } else {\n // \tlocal_lengths = mobile_type.possibleLengthsLocal()\n // }\n }\n }\n // If the type doesn't exist then return 'INVALID_LENGTH'.\n else if (type && !type_info) {\n return 'INVALID_LENGTH';\n }\n var actual_length = nationalNumber.length;\n\n // In `libphonenumber-js` all \"local-only\" formats are dropped for simplicity.\n // // This is safe because there is never an overlap beween the possible lengths\n // // and the local-only lengths; this is checked at build time.\n // if (local_lengths && local_lengths.indexOf(nationalNumber.length) >= 0)\n // {\n // \treturn 'IS_POSSIBLE_LOCAL_ONLY'\n // }\n\n var minimum_length = possible_lengths[0];\n if (minimum_length === actual_length) {\n return 'IS_POSSIBLE';\n }\n if (minimum_length > actual_length) {\n return 'TOO_SHORT';\n }\n if (possible_lengths[possible_lengths.length - 1] < actual_length) {\n return 'TOO_LONG';\n }\n\n // We skip the first element since we've already checked it.\n return possible_lengths.indexOf(actual_length, 1) >= 0 ? 'IS_POSSIBLE' : 'INVALID_LENGTH';\n}\n//# sourceMappingURL=checkNumberLength.js.map"],"names":["checkNumberLength","nationalNumber","country","metadata","checkNumberLengthForType","type","Metadata","type_info","possible_lengths","actual_length","minimum_length"],"mappings":";AAEe,SAASA,EAAkBC,GAAgBC,GAASC,GAAU;AAC3E,SAAOC,EAAyBH,GAAgBC,GAAS,QAAWC,CAAQ;AAC9E;AA4BO,SAASC,EAAyBH,GAAgBC,GAASG,GAAMF,GAAU;AAIhF,EAAID,MACFC,IAAW,IAAIG,EAASH,EAAS,QAAQ,GACzCA,EAAS,oBAAoBD,CAAO;AAEtC,MAAIK,IAAYJ,EAAS,KAAKE,CAAI,GAS9BG,IAAmBD,KAAaA,EAAU,gBAAe,KAAMJ,EAAS,gBAAe;AAI3F,MAAI,CAACK;AACH,WAAO;AAiCT,MAAIC,IAAgBR,EAAe,QAU/BS,IAAiBF,EAAiB,CAAC;AACvC,SAAIE,MAAmBD,IACd,gBAELC,IAAiBD,IACZ,cAELD,EAAiBA,EAAiB,SAAS,CAAC,IAAIC,IAC3C,aAIFD,EAAiB,QAAQC,GAAe,CAAC,KAAK,IAAI,gBAAgB;AAC3E;","x_google_ignoreList":[0]}
package/dist/index180.js CHANGED
@@ -1,12 +1,158 @@
1
- function o(e, n, t = "long") {
2
- return new Intl.DateTimeFormat("en-US", {
3
- // Enforces engine to render the time. Without the option JavaScriptCore omits it.
4
- hour: "numeric",
5
- timeZone: e,
6
- timeZoneName: t
7
- }).format(n).split(/\s/g).slice(2).join(" ");
1
+ function s(t) {
2
+ "@babel/helpers - typeof";
3
+ return s = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(e) {
4
+ return typeof e;
5
+ } : function(e) {
6
+ return e && typeof Symbol == "function" && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e;
7
+ }, s(t);
8
+ }
9
+ function f(t, e) {
10
+ if (!(t instanceof e)) throw new TypeError("Cannot call a class as a function");
11
+ }
12
+ function l(t, e) {
13
+ for (var r = 0; r < e.length; r++) {
14
+ var n = e[r];
15
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(t, g(n.key), n);
16
+ }
17
+ }
18
+ function p(t, e, r) {
19
+ return e && l(t.prototype, e), Object.defineProperty(t, "prototype", { writable: !1 }), t;
20
+ }
21
+ function g(t) {
22
+ var e = x(t, "string");
23
+ return s(e) == "symbol" ? e : e + "";
24
+ }
25
+ function x(t, e) {
26
+ if (s(t) != "object" || !t) return t;
27
+ var r = t[Symbol.toPrimitive];
28
+ if (r !== void 0) {
29
+ var n = r.call(t, e);
30
+ if (s(n) != "object") return n;
31
+ throw new TypeError("@@toPrimitive must return a primitive value.");
32
+ }
33
+ return String(t);
34
+ }
35
+ var y = /* @__PURE__ */ (function() {
36
+ function t() {
37
+ f(this, t);
38
+ }
39
+ return p(t, [{
40
+ key: "parse",
41
+ value: function(r) {
42
+ if (this.context = [{
43
+ or: !0,
44
+ instructions: []
45
+ }], this.parsePattern(r), this.context.length !== 1)
46
+ throw new Error("Non-finalized contexts left when pattern parse ended");
47
+ var n = this.context[0], i = n.branches, o = n.instructions;
48
+ if (i)
49
+ return {
50
+ op: "|",
51
+ args: i.concat([a(o)])
52
+ };
53
+ if (o.length === 0)
54
+ throw new Error("Pattern is required");
55
+ return o.length === 1 ? o[0] : o;
56
+ }
57
+ }, {
58
+ key: "startContext",
59
+ value: function(r) {
60
+ this.context.push(r);
61
+ }
62
+ }, {
63
+ key: "endContext",
64
+ value: function() {
65
+ this.context.pop();
66
+ }
67
+ }, {
68
+ key: "getContext",
69
+ value: function() {
70
+ return this.context[this.context.length - 1];
71
+ }
72
+ }, {
73
+ key: "parsePattern",
74
+ value: function(r) {
75
+ if (!r)
76
+ throw new Error("Pattern is required");
77
+ var n = r.match(w);
78
+ if (!n) {
79
+ if (C.test(r))
80
+ throw new Error("Illegal characters found in a pattern: ".concat(r));
81
+ this.getContext().instructions = this.getContext().instructions.concat(r.split(""));
82
+ return;
83
+ }
84
+ var i = n[1], o = r.slice(0, n.index), c = r.slice(n.index + i.length);
85
+ switch (i) {
86
+ case "(?:":
87
+ o && this.parsePattern(o), this.startContext({
88
+ or: !0,
89
+ instructions: [],
90
+ branches: []
91
+ });
92
+ break;
93
+ case ")":
94
+ if (!this.getContext().or)
95
+ throw new Error('")" operator must be preceded by "(?:" operator');
96
+ if (o && this.parsePattern(o), this.getContext().instructions.length === 0)
97
+ throw new Error('No instructions found after "|" operator in an "or" group');
98
+ var h = this.getContext(), u = h.branches;
99
+ u.push(a(this.getContext().instructions)), this.endContext(), this.getContext().instructions.push({
100
+ op: "|",
101
+ args: u
102
+ });
103
+ break;
104
+ case "|":
105
+ if (!this.getContext().or)
106
+ throw new Error('"|" operator can only be used inside "or" groups');
107
+ if (o && this.parsePattern(o), !this.getContext().branches)
108
+ if (this.context.length === 1)
109
+ this.getContext().branches = [];
110
+ else
111
+ throw new Error('"branches" not found in an "or" group context');
112
+ this.getContext().branches.push(a(this.getContext().instructions)), this.getContext().instructions = [];
113
+ break;
114
+ case "[":
115
+ o && this.parsePattern(o), this.startContext({
116
+ oneOfSet: !0
117
+ });
118
+ break;
119
+ case "]":
120
+ if (!this.getContext().oneOfSet)
121
+ throw new Error('"]" operator must be preceded by "[" operator');
122
+ this.endContext(), this.getContext().instructions.push({
123
+ op: "[]",
124
+ args: b(o)
125
+ });
126
+ break;
127
+ /* istanbul ignore next */
128
+ default:
129
+ throw new Error("Unknown operator: ".concat(i));
130
+ }
131
+ c && this.parsePattern(c);
132
+ }
133
+ }]);
134
+ })();
135
+ function b(t) {
136
+ for (var e = [], r = 0; r < t.length; ) {
137
+ if (t[r] === "-") {
138
+ if (r === 0 || r === t.length - 1)
139
+ throw new Error("Couldn't parse a one-of set pattern: ".concat(t));
140
+ for (var n = t[r - 1].charCodeAt(0) + 1, i = t[r + 1].charCodeAt(0) - 1, o = n; o <= i; )
141
+ e.push(String.fromCharCode(o)), o++;
142
+ } else
143
+ e.push(t[r]);
144
+ r++;
145
+ }
146
+ return e;
147
+ }
148
+ var C = /[\(\)\[\]\?\:\|]/, w = new RegExp(
149
+ // any of:
150
+ "(\\||\\(\\?\\:|\\)|\\[|\\])"
151
+ );
152
+ function a(t) {
153
+ return t.length === 1 ? t[0] : t;
8
154
  }
9
155
  export {
10
- o as tzName
156
+ y as default
11
157
  };
12
158
  //# sourceMappingURL=index180.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index180.js","sources":["../../../node_modules/@date-fns/tz/tzName/index.js"],"sourcesContent":["/**\n * Time zone name format.\n */\n\n/**\n * The function returns the time zone name for the given date in the specified\n * time zone.\n *\n * It uses the `Intl.DateTimeFormat` API and by default outputs the time zone\n * name in a long format, e.g. \"Pacific Standard Time\" or\n * \"Singapore Standard Time\".\n *\n * It is possible to specify the format as the third argument using one of the following options\n *\n * - \"short\": e.g. \"EDT\" or \"GMT+8\".\n * - \"long\": e.g. \"Eastern Daylight Time\".\n * - \"shortGeneric\": e.g. \"ET\" or \"Singapore Time\".\n * - \"longGeneric\": e.g. \"Eastern Time\" or \"Singapore Standard Time\".\n *\n * These options correspond to TR35 tokens `z..zzz`, `zzzz`, `v`, and `vvvv` respectively: https://www.unicode.org/reports/tr35/tr35-dates.html#dfst-zone\n *\n * @param timeZone - Time zone name (IANA or UTC offset)\n * @param date - Date object to get the time zone name for\n * @param format - Optional format of the time zone name. Defaults to \"long\". Can be \"short\", \"long\", \"shortGeneric\", or \"longGeneric\".\n *\n * @returns Time zone name (e.g. \"Singapore Standard Time\")\n */\nexport function tzName(timeZone, date, format = \"long\") {\n return new Intl.DateTimeFormat(\"en-US\", {\n // Enforces engine to render the time. Without the option JavaScriptCore omits it.\n hour: \"numeric\",\n timeZone: timeZone,\n timeZoneName: format\n }).format(date).split(/\\s/g) // Format.JS uses non-breaking spaces\n .slice(2) // Skip the hour and AM/PM parts\n .join(\" \");\n}"],"names":["tzName","timeZone","date","format"],"mappings":"AA2BO,SAASA,EAAOC,GAAUC,GAAMC,IAAS,QAAQ;AACtD,SAAO,IAAI,KAAK,eAAe,SAAS;AAAA;AAAA,IAEtC,MAAM;AAAA,IACN,UAAUF;AAAA,IACV,cAAcE;AAAA,EAClB,CAAG,EAAE,OAAOD,CAAI,EAAE,MAAM,KAAK,EAC1B,MAAM,CAAC,EACP,KAAK,GAAG;AACX;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index180.js","sources":["../../../node_modules/libphonenumber-js/es6/AsYouTypeFormatter.PatternParser.js"],"sourcesContent":["function _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError(\"Cannot call a class as a function\"); }\nfunction _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, \"value\" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }\nfunction _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, \"prototype\", { writable: !1 }), e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nvar PatternParser = /*#__PURE__*/function () {\n function PatternParser() {\n _classCallCheck(this, PatternParser);\n }\n return _createClass(PatternParser, [{\n key: \"parse\",\n value: function parse(pattern) {\n this.context = [{\n or: true,\n instructions: []\n }];\n this.parsePattern(pattern);\n if (this.context.length !== 1) {\n throw new Error('Non-finalized contexts left when pattern parse ended');\n }\n var _this$context$ = this.context[0],\n branches = _this$context$.branches,\n instructions = _this$context$.instructions;\n if (branches) {\n return {\n op: '|',\n args: branches.concat([expandSingleElementArray(instructions)])\n };\n }\n\n /* istanbul ignore if */\n if (instructions.length === 0) {\n throw new Error('Pattern is required');\n }\n if (instructions.length === 1) {\n return instructions[0];\n }\n return instructions;\n }\n }, {\n key: \"startContext\",\n value: function startContext(context) {\n this.context.push(context);\n }\n }, {\n key: \"endContext\",\n value: function endContext() {\n this.context.pop();\n }\n }, {\n key: \"getContext\",\n value: function getContext() {\n return this.context[this.context.length - 1];\n }\n }, {\n key: \"parsePattern\",\n value: function parsePattern(pattern) {\n if (!pattern) {\n throw new Error('Pattern is required');\n }\n var match = pattern.match(OPERATOR);\n if (!match) {\n if (ILLEGAL_CHARACTER_REGEXP.test(pattern)) {\n throw new Error(\"Illegal characters found in a pattern: \".concat(pattern));\n }\n this.getContext().instructions = this.getContext().instructions.concat(pattern.split(''));\n return;\n }\n var operator = match[1];\n var before = pattern.slice(0, match.index);\n var rightPart = pattern.slice(match.index + operator.length);\n switch (operator) {\n case '(?:':\n if (before) {\n this.parsePattern(before);\n }\n this.startContext({\n or: true,\n instructions: [],\n branches: []\n });\n break;\n case ')':\n if (!this.getContext().or) {\n throw new Error('\")\" operator must be preceded by \"(?:\" operator');\n }\n if (before) {\n this.parsePattern(before);\n }\n if (this.getContext().instructions.length === 0) {\n throw new Error('No instructions found after \"|\" operator in an \"or\" group');\n }\n var _this$getContext = this.getContext(),\n branches = _this$getContext.branches;\n branches.push(expandSingleElementArray(this.getContext().instructions));\n this.endContext();\n this.getContext().instructions.push({\n op: '|',\n args: branches\n });\n break;\n case '|':\n if (!this.getContext().or) {\n throw new Error('\"|\" operator can only be used inside \"or\" groups');\n }\n if (before) {\n this.parsePattern(before);\n }\n // The top-level is an implicit \"or\" group, if required.\n if (!this.getContext().branches) {\n // `branches` are not defined only for the root implicit \"or\" operator.\n /* istanbul ignore else */\n if (this.context.length === 1) {\n this.getContext().branches = [];\n } else {\n throw new Error('\"branches\" not found in an \"or\" group context');\n }\n }\n this.getContext().branches.push(expandSingleElementArray(this.getContext().instructions));\n this.getContext().instructions = [];\n break;\n case '[':\n if (before) {\n this.parsePattern(before);\n }\n this.startContext({\n oneOfSet: true\n });\n break;\n case ']':\n if (!this.getContext().oneOfSet) {\n throw new Error('\"]\" operator must be preceded by \"[\" operator');\n }\n this.endContext();\n this.getContext().instructions.push({\n op: '[]',\n args: parseOneOfSet(before)\n });\n break;\n\n /* istanbul ignore next */\n default:\n throw new Error(\"Unknown operator: \".concat(operator));\n }\n if (rightPart) {\n this.parsePattern(rightPart);\n }\n }\n }]);\n}();\nexport { PatternParser as default };\nfunction parseOneOfSet(pattern) {\n var values = [];\n var i = 0;\n while (i < pattern.length) {\n if (pattern[i] === '-') {\n if (i === 0 || i === pattern.length - 1) {\n throw new Error(\"Couldn't parse a one-of set pattern: \".concat(pattern));\n }\n var prevValue = pattern[i - 1].charCodeAt(0) + 1;\n var nextValue = pattern[i + 1].charCodeAt(0) - 1;\n var value = prevValue;\n while (value <= nextValue) {\n values.push(String.fromCharCode(value));\n value++;\n }\n } else {\n values.push(pattern[i]);\n }\n i++;\n }\n return values;\n}\nvar ILLEGAL_CHARACTER_REGEXP = /[\\(\\)\\[\\]\\?\\:\\|]/;\nvar OPERATOR = new RegExp(\n// any of:\n'(' +\n// or operator\n'\\\\|' +\n// or\n'|' +\n// or group start\n'\\\\(\\\\?\\\\:' +\n// or\n'|' +\n// or group end\n'\\\\)' +\n// or\n'|' +\n// one-of set start\n'\\\\[' +\n// or\n'|' +\n// one-of set end\n'\\\\]' + ')');\nfunction expandSingleElementArray(array) {\n if (array.length === 1) {\n return array[0];\n }\n return array;\n}\n//# sourceMappingURL=AsYouTypeFormatter.PatternParser.js.map"],"names":["_typeof","o","_classCallCheck","a","n","_defineProperties","e","r","t","_toPropertyKey","_createClass","i","_toPrimitive","PatternParser","pattern","_this$context$","branches","instructions","expandSingleElementArray","context","match","OPERATOR","ILLEGAL_CHARACTER_REGEXP","operator","before","rightPart","_this$getContext","parseOneOfSet","values","prevValue","nextValue","value","array"],"mappings":"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","x_google_ignoreList":[0]}