@rpcbase/ui 0.210.0 → 0.212.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 (641) hide show
  1. package/dist/index.js +73 -25
  2. package/dist/index.js.map +1 -0
  3. package/dist/index10.js +666 -18
  4. package/dist/index10.js.map +1 -1
  5. package/dist/index100.js +46 -9
  6. package/dist/index100.js.map +1 -1
  7. package/dist/index101.js +7 -14
  8. package/dist/index101.js.map +1 -1
  9. package/dist/index102.js +50 -10
  10. package/dist/index102.js.map +1 -1
  11. package/dist/index103.js +233 -15
  12. package/dist/index103.js.map +1 -1
  13. package/dist/index104.js +25 -21
  14. package/dist/index104.js.map +1 -1
  15. package/dist/index105.js +27 -27
  16. package/dist/index105.js.map +1 -1
  17. package/dist/index106.js +404 -9
  18. package/dist/index106.js.map +1 -1
  19. package/dist/index107.js +609 -9
  20. package/dist/index107.js.map +1 -1
  21. package/dist/index108.js +55 -10
  22. package/dist/index108.js.map +1 -1
  23. package/dist/index109.js +6 -8
  24. package/dist/index109.js.map +1 -1
  25. package/dist/index11.js +459 -1673
  26. package/dist/index11.js.map +1 -1
  27. package/dist/index110.js +7 -8
  28. package/dist/index110.js.map +1 -1
  29. package/dist/index111.js +17 -7
  30. package/dist/index111.js.map +1 -1
  31. package/dist/index112.js +8 -11
  32. package/dist/index112.js.map +1 -1
  33. package/dist/index113.js +10 -10
  34. package/dist/index113.js.map +1 -1
  35. package/dist/index114.js +19 -37
  36. package/dist/index114.js.map +1 -1
  37. package/dist/index115.js +6 -9
  38. package/dist/index115.js.map +1 -1
  39. package/dist/index116.js +7 -8
  40. package/dist/index116.js.map +1 -1
  41. package/dist/index117.js +8 -10
  42. package/dist/index117.js.map +1 -1
  43. package/dist/index118.js +8 -12
  44. package/dist/index118.js.map +1 -1
  45. package/dist/index119.js +6 -7
  46. package/dist/index119.js.map +1 -1
  47. package/dist/index12.js +79 -10
  48. package/dist/index12.js.map +1 -1
  49. package/dist/index120.js +6 -8
  50. package/dist/index120.js.map +1 -1
  51. package/dist/index121.js +8 -7
  52. package/dist/index121.js.map +1 -1
  53. package/dist/index122.js +27 -8
  54. package/dist/index122.js.map +1 -1
  55. package/dist/index123.js +9 -9
  56. package/dist/index123.js.map +1 -1
  57. package/dist/index124.js +6 -7
  58. package/dist/index124.js.map +1 -1
  59. package/dist/index125.js +8 -7
  60. package/dist/index125.js.map +1 -1
  61. package/dist/index126.js +8 -10
  62. package/dist/index126.js.map +1 -1
  63. package/dist/index127.js +8 -60
  64. package/dist/index127.js.map +1 -1
  65. package/dist/index128.js +8 -9
  66. package/dist/index128.js.map +1 -1
  67. package/dist/index129.js +8 -23
  68. package/dist/index129.js.map +1 -1
  69. package/dist/index13.js +23 -21
  70. package/dist/index13.js.map +1 -1
  71. package/dist/index130.js +11 -22
  72. package/dist/index130.js.map +1 -1
  73. package/dist/index131.js +8 -37
  74. package/dist/index131.js.map +1 -1
  75. package/dist/index132.js +7 -8
  76. package/dist/index132.js.map +1 -1
  77. package/dist/index133.js +7 -11
  78. package/dist/index133.js.map +1 -1
  79. package/dist/index134.js +9 -17
  80. package/dist/index134.js.map +1 -1
  81. package/dist/index135.js +148 -13
  82. package/dist/index135.js.map +1 -1
  83. package/dist/index136.js +42 -9
  84. package/dist/index136.js.map +1 -1
  85. package/dist/index137.js +7 -8
  86. package/dist/index137.js.map +1 -1
  87. package/dist/index138.js +10 -8
  88. package/dist/index138.js.map +1 -1
  89. package/dist/index139.js +16 -8
  90. package/dist/index139.js.map +1 -1
  91. package/dist/index14.js +20 -194
  92. package/dist/index14.js.map +1 -1
  93. package/dist/index140.js +16 -8
  94. package/dist/index140.js.map +1 -1
  95. package/dist/index141.js +10 -7
  96. package/dist/index141.js.map +1 -1
  97. package/dist/index142.js +34 -9
  98. package/dist/index142.js.map +1 -1
  99. package/dist/index143.js +14 -24
  100. package/dist/index143.js.map +1 -1
  101. package/dist/index144.js +13 -11
  102. package/dist/index144.js.map +1 -1
  103. package/dist/index145.js +11 -10
  104. package/dist/index145.js.map +1 -1
  105. package/dist/index146.js +16 -9
  106. package/dist/index146.js.map +1 -1
  107. package/dist/index147.js +104 -9
  108. package/dist/index147.js.map +1 -1
  109. package/dist/index148.js +23 -8
  110. package/dist/index148.js.map +1 -1
  111. package/dist/index149.js +56 -7
  112. package/dist/index149.js.map +1 -1
  113. package/dist/index15.js +30 -33
  114. package/dist/index15.js.map +1 -1
  115. package/dist/index150.js +75 -8
  116. package/dist/index150.js.map +1 -1
  117. package/dist/index151.js +12 -7
  118. package/dist/index151.js.map +1 -1
  119. package/dist/index152.js +23 -8
  120. package/dist/index152.js.map +1 -1
  121. package/dist/index153.js +19 -7
  122. package/dist/index153.js.map +1 -1
  123. package/dist/index154.js +26 -7
  124. package/dist/index154.js.map +1 -1
  125. package/dist/index155.js +9 -7
  126. package/dist/index155.js.map +1 -1
  127. package/dist/index156.js +9 -32
  128. package/dist/index156.js.map +1 -1
  129. package/dist/index157.js +26 -35
  130. package/dist/index157.js.map +1 -1
  131. package/dist/index158.js +38 -19
  132. package/dist/index158.js.map +1 -1
  133. package/dist/index159.js +19 -15
  134. package/dist/index159.js.map +1 -1
  135. package/dist/index16.js +268 -57
  136. package/dist/index16.js.map +1 -1
  137. package/dist/index160.js +9 -12
  138. package/dist/index160.js.map +1 -1
  139. package/dist/index161.js +7 -19
  140. package/dist/index161.js.map +1 -1
  141. package/dist/index162.js +7 -89
  142. package/dist/index162.js.map +1 -1
  143. package/dist/index163.js +7 -50
  144. package/dist/index163.js.map +1 -1
  145. package/dist/index164.js +7 -20
  146. package/dist/index164.js.map +1 -1
  147. package/dist/index165.js +6 -11
  148. package/dist/index165.js.map +1 -1
  149. package/dist/index166.js +9 -13
  150. package/dist/index166.js.map +1 -1
  151. package/dist/index167.js +27 -9
  152. package/dist/index167.js.map +1 -1
  153. package/dist/index168.js +10 -25
  154. package/dist/index168.js.map +1 -1
  155. package/dist/index169.js +9 -10
  156. package/dist/index169.js.map +1 -1
  157. package/dist/index17.js +179 -9
  158. package/dist/index17.js.map +1 -1
  159. package/dist/index170.js +8 -9
  160. package/dist/index170.js.map +1 -1
  161. package/dist/index171.js +6 -9
  162. package/dist/index171.js.map +1 -1
  163. package/dist/index172.js +6 -7
  164. package/dist/index172.js.map +1 -1
  165. package/dist/index173.js +7 -9
  166. package/dist/index173.js.map +1 -1
  167. package/dist/index174.js +6 -70
  168. package/dist/index174.js.map +1 -1
  169. package/dist/index175.js +7 -20
  170. package/dist/index175.js.map +1 -1
  171. package/dist/index176.js +6 -15
  172. package/dist/index176.js.map +1 -1
  173. package/dist/index177.js +6 -12
  174. package/dist/index177.js.map +1 -1
  175. package/dist/index178.js +6 -23
  176. package/dist/index178.js.map +1 -1
  177. package/dist/index179.js +16 -20
  178. package/dist/index179.js.map +1 -1
  179. package/dist/index18.js +469 -27
  180. package/dist/index18.js.map +1 -1
  181. package/dist/index180.js +158 -59
  182. package/dist/index180.js.map +1 -1
  183. package/dist/index181.js +33 -13
  184. package/dist/index181.js.map +1 -1
  185. package/dist/index182.js +12 -9
  186. package/dist/index182.js.map +1 -1
  187. package/dist/index183.js +51 -29
  188. package/dist/index183.js.map +1 -1
  189. package/dist/index184.js +14 -29
  190. package/dist/index184.js.map +1 -1
  191. package/dist/index185.js +47 -16
  192. package/dist/index185.js.map +1 -1
  193. package/dist/index186.js +98 -16
  194. package/dist/index186.js.map +1 -1
  195. package/dist/index187.js +90 -10
  196. package/dist/index187.js.map +1 -1
  197. package/dist/index188.js +109 -27
  198. package/dist/index188.js.map +1 -1
  199. package/dist/index189.js +55 -388
  200. package/dist/index189.js.map +1 -1
  201. package/dist/index19.js +266 -65
  202. package/dist/index19.js.map +1 -1
  203. package/dist/index190.js +15 -499
  204. package/dist/index190.js.map +1 -1
  205. package/dist/index191.js +39 -132
  206. package/dist/index191.js.map +1 -1
  207. package/dist/index192.js +11 -55
  208. package/dist/index192.js.map +1 -1
  209. package/dist/index193.js +6 -80
  210. package/dist/index193.js.map +1 -1
  211. package/dist/index194.js +12 -902
  212. package/dist/index194.js.map +1 -1
  213. package/dist/index195.js +119 -22
  214. package/dist/index195.js.map +1 -1
  215. package/dist/index196.js +21 -452
  216. package/dist/index196.js.map +1 -1
  217. package/dist/index197.js +18 -7
  218. package/dist/index197.js.map +1 -1
  219. package/dist/index198.js +38 -59
  220. package/dist/index198.js.map +1 -1
  221. package/dist/index199.js +23 -64
  222. package/dist/index199.js.map +1 -1
  223. package/dist/index2.js +8 -10
  224. package/dist/index2.js.map +1 -0
  225. package/dist/index20.js +5 -43
  226. package/dist/index20.js.map +1 -1
  227. package/dist/index200.js +11 -63
  228. package/dist/index200.js.map +1 -1
  229. package/dist/index201.js +22 -11
  230. package/dist/index201.js.map +1 -1
  231. package/dist/index202.js +31 -19
  232. package/dist/index202.js.map +1 -1
  233. package/dist/index203.js +20 -148
  234. package/dist/index203.js.map +1 -1
  235. package/dist/index204.js +28 -7
  236. package/dist/index204.js.map +1 -1
  237. package/dist/index205.js +32 -14
  238. package/dist/index205.js.map +1 -1
  239. package/dist/index206.js +7 -107
  240. package/dist/index206.js.map +1 -1
  241. package/dist/index207.js +65 -355
  242. package/dist/index207.js.map +1 -1
  243. package/dist/index208.js +184 -99
  244. package/dist/index208.js.map +1 -1
  245. package/dist/index209.js +49 -329
  246. package/dist/index209.js.map +1 -1
  247. package/dist/index21.js +28 -11
  248. package/dist/index21.js.map +1 -1
  249. package/dist/index210.js +60 -212
  250. package/dist/index210.js.map +1 -1
  251. package/dist/index211.js +12 -22
  252. package/dist/index211.js.map +1 -1
  253. package/dist/index212.js +69 -30
  254. package/dist/index212.js.map +1 -1
  255. package/dist/index213.js +21 -189
  256. package/dist/index213.js.map +1 -1
  257. package/dist/index214.js +20 -21
  258. package/dist/index214.js.map +1 -1
  259. package/dist/index215.js +9 -65
  260. package/dist/index215.js.map +1 -1
  261. package/dist/index216.js +8 -46
  262. package/dist/index216.js.map +1 -1
  263. package/dist/index217.js +9 -12
  264. package/dist/index217.js.map +1 -1
  265. package/dist/index218.js +8 -28
  266. package/dist/index218.js.map +1 -1
  267. package/dist/index219.js +9 -47
  268. package/dist/index219.js.map +1 -1
  269. package/dist/index22.js +48 -16
  270. package/dist/index22.js.map +1 -1
  271. package/dist/index220.js +19 -20
  272. package/dist/index220.js.map +1 -1
  273. package/dist/index221.js +8 -6
  274. package/dist/index221.js.map +1 -1
  275. package/dist/index222.js +7 -7
  276. package/dist/index222.js.map +1 -1
  277. package/dist/index223.js +15 -23
  278. package/dist/index223.js.map +1 -1
  279. package/dist/index224.js +12 -27
  280. package/dist/index224.js.map +1 -1
  281. package/dist/index225.js +16 -70
  282. package/dist/index225.js.map +1 -1
  283. package/dist/index226.js +16 -17
  284. package/dist/index226.js.map +1 -1
  285. package/dist/index227.js +8 -7
  286. package/dist/index227.js.map +1 -1
  287. package/dist/index228.js +8 -53
  288. package/dist/index228.js.map +1 -1
  289. package/dist/index229.js +9 -8
  290. package/dist/index229.js.map +1 -1
  291. package/dist/index23.js +37 -109
  292. package/dist/index23.js.map +1 -1
  293. package/dist/index230.js +7 -28
  294. package/dist/index230.js.map +1 -1
  295. package/dist/index231.js +57 -16
  296. package/dist/index231.js.map +1 -1
  297. package/dist/index232.js +11 -12
  298. package/dist/index232.js.map +1 -1
  299. package/dist/index233.js +8 -3
  300. package/dist/index233.js.map +1 -0
  301. package/dist/index234.js +7 -28
  302. package/dist/index234.js.map +1 -1
  303. package/dist/index235.js +11 -71
  304. package/dist/index235.js.map +1 -1
  305. package/dist/index236.js +8 -3
  306. package/dist/index236.js.map +1 -0
  307. package/dist/index237.js +7 -14
  308. package/dist/index237.js.map +1 -1
  309. package/dist/index238.js +6 -53
  310. package/dist/index238.js.map +1 -1
  311. package/dist/index239.js +13 -117
  312. package/dist/index239.js.map +1 -1
  313. package/dist/index24.js +227 -11
  314. package/dist/index24.js.map +1 -1
  315. package/dist/index240.js +13 -9
  316. package/dist/index240.js.map +1 -1
  317. package/dist/index241.js +13 -16
  318. package/dist/index241.js.map +1 -1
  319. package/dist/index242.js +13 -689
  320. package/dist/index242.js.map +1 -1
  321. package/dist/index243.js +14 -256
  322. package/dist/index243.js.map +1 -1
  323. package/dist/index244.js +13 -704
  324. package/dist/index244.js.map +1 -1
  325. package/dist/index245.js +9 -7433
  326. package/dist/index245.js.map +1 -1
  327. package/dist/index246.js +8 -9
  328. package/dist/index246.js.map +1 -1
  329. package/dist/index247.js +7 -15
  330. package/dist/index247.js.map +1 -1
  331. package/dist/index248.js +8 -8
  332. package/dist/index248.js.map +1 -1
  333. package/dist/index249.js +9 -462
  334. package/dist/index249.js.map +1 -1
  335. package/dist/index25.js +32 -23
  336. package/dist/index25.js.map +1 -1
  337. package/dist/index250.js +9 -41
  338. package/dist/index250.js.map +1 -1
  339. package/dist/index251.js +19 -22
  340. package/dist/index251.js.map +1 -1
  341. package/dist/index252.js +10 -30
  342. package/dist/index252.js.map +1 -1
  343. package/dist/index253.js +13 -7
  344. package/dist/index253.js.map +1 -1
  345. package/dist/index254.js +14 -62
  346. package/dist/index254.js.map +1 -1
  347. package/dist/index255.js +24 -10
  348. package/dist/index255.js.map +1 -1
  349. package/dist/index256.js +13 -15
  350. package/dist/index256.js.map +1 -1
  351. package/dist/index257.js +13 -6
  352. package/dist/index257.js.map +1 -1
  353. package/dist/index258.js +12 -19
  354. package/dist/index258.js.map +1 -1
  355. package/dist/index259.js +7 -28
  356. package/dist/index259.js.map +1 -1
  357. package/dist/index26.js +16 -60
  358. package/dist/index26.js.map +1 -1
  359. package/dist/index260.js +9 -47
  360. package/dist/index260.js.map +1 -1
  361. package/dist/index261.js +19 -16
  362. package/dist/index261.js.map +1 -1
  363. package/dist/index262.js +12 -28
  364. package/dist/index262.js.map +1 -1
  365. package/dist/index263.js +21 -20
  366. package/dist/index263.js.map +1 -1
  367. package/dist/index264.js +18 -38
  368. package/dist/index264.js.map +1 -1
  369. package/dist/index265.js +15 -8
  370. package/dist/index265.js.map +1 -1
  371. package/dist/index266.js +32 -12
  372. package/dist/index266.js.map +1 -1
  373. package/dist/index267.js +15 -11
  374. package/dist/index267.js.map +1 -1
  375. package/dist/index268.js +28 -12
  376. package/dist/index268.js.map +1 -1
  377. package/dist/index269.js +8 -13
  378. package/dist/index269.js.map +1 -1
  379. package/dist/index27.js +2924 -58
  380. package/dist/index27.js.map +1 -1
  381. package/dist/index270.js +23 -10
  382. package/dist/index270.js.map +1 -1
  383. package/dist/index271.js +8 -77
  384. package/dist/index271.js.map +1 -1
  385. package/dist/index272.js +5 -174
  386. package/dist/index272.js.map +1 -1
  387. package/dist/index273.js +27 -118
  388. package/dist/index273.js.map +1 -1
  389. package/dist/index274.js +115 -17
  390. package/dist/index274.js.map +1 -1
  391. package/dist/index275.js +17 -82
  392. package/dist/index275.js.map +1 -1
  393. package/dist/index276.js +528 -45
  394. package/dist/index276.js.map +1 -1
  395. package/dist/index277.js +129 -17
  396. package/dist/index277.js.map +1 -1
  397. package/dist/index278.js +137 -20
  398. package/dist/index278.js.map +1 -1
  399. package/dist/index279.js +8 -103
  400. package/dist/index279.js.map +1 -1
  401. package/dist/index28.js +6 -1
  402. package/dist/index28.js.map +1 -0
  403. package/dist/index280.js +21 -60
  404. package/dist/index280.js.map +1 -1
  405. package/dist/index281.js +16 -112
  406. package/dist/index281.js.map +1 -1
  407. package/dist/index282.js +65 -72
  408. package/dist/index282.js.map +1 -1
  409. package/dist/index283.js +72 -117
  410. package/dist/index283.js.map +1 -1
  411. package/dist/index284.js +12 -59
  412. package/dist/index284.js.map +1 -1
  413. package/dist/index285.js +17 -47
  414. package/dist/index285.js.map +1 -1
  415. package/dist/index286.js +69 -146
  416. package/dist/index286.js.map +1 -1
  417. package/dist/index287.js +8 -143
  418. package/dist/index287.js.map +1 -1
  419. package/dist/index288.js +8 -258
  420. package/dist/index288.js.map +1 -1
  421. package/dist/index289.js +7 -244
  422. package/dist/index289.js.map +1 -1
  423. package/dist/index29.js +40 -5
  424. package/dist/index29.js.map +1 -0
  425. package/dist/index290.js +19 -302
  426. package/dist/index290.js.map +1 -1
  427. package/dist/index291.js +11 -8
  428. package/dist/index291.js.map +1 -1
  429. package/dist/index292.js +8 -9
  430. package/dist/index292.js.map +1 -1
  431. package/dist/index293.js +7 -10
  432. package/dist/index293.js.map +1 -1
  433. package/dist/index294.js +548 -9
  434. package/dist/index294.js.map +1 -1
  435. package/dist/index295.js +50 -10
  436. package/dist/index295.js.map +1 -1
  437. package/dist/index296.js +20 -24
  438. package/dist/index296.js.map +1 -1
  439. package/dist/index297.js +8 -13
  440. package/dist/index297.js.map +1 -1
  441. package/dist/index298.js +11 -130
  442. package/dist/index298.js.map +1 -1
  443. package/dist/index299.js +9 -167
  444. package/dist/index299.js.map +1 -1
  445. package/dist/index3.js +181 -6
  446. package/dist/index3.js.map +1 -1
  447. package/dist/index30.js +6 -8
  448. package/dist/index30.js.map +1 -1
  449. package/dist/index300.js +11 -72
  450. package/dist/index300.js.map +1 -1
  451. package/dist/index301.js +14 -112
  452. package/dist/index301.js.map +1 -1
  453. package/dist/index302.js +12 -495
  454. package/dist/index302.js.map +1 -1
  455. package/dist/index303.js +15 -65
  456. package/dist/index303.js.map +1 -1
  457. package/dist/index304.js +7 -7
  458. package/dist/index304.js.map +1 -1
  459. package/dist/index305.js +25 -30
  460. package/dist/index305.js.map +1 -1
  461. package/dist/index306.js +6 -67
  462. package/dist/index306.js.map +1 -1
  463. package/dist/index307.js +58 -155
  464. package/dist/index307.js.map +1 -1
  465. package/dist/index308.js +71 -65
  466. package/dist/index308.js.map +1 -1
  467. package/dist/index309.js +32 -563
  468. package/dist/index309.js.map +1 -1
  469. package/dist/index31.js +128 -9
  470. package/dist/index31.js.map +1 -1
  471. package/dist/index310.js +11 -213
  472. package/dist/index310.js.map +1 -1
  473. package/dist/index311.js +156 -335
  474. package/dist/index311.js.map +1 -1
  475. package/dist/index312.js +110 -271
  476. package/dist/index312.js.map +1 -1
  477. package/dist/index313.js +26 -0
  478. package/dist/index313.js.map +1 -0
  479. package/dist/index314.js +16 -0
  480. package/dist/index314.js.map +1 -0
  481. package/dist/index315.js +31 -0
  482. package/dist/index315.js.map +1 -0
  483. package/dist/index316.js +8 -0
  484. package/dist/index316.js.map +1 -0
  485. package/dist/index317.js +19 -0
  486. package/dist/index317.js.map +1 -0
  487. package/dist/index318.js +32 -0
  488. package/dist/index318.js.map +1 -0
  489. package/dist/index319.js +16 -0
  490. package/dist/index319.js.map +1 -0
  491. package/dist/index32.js +234 -8
  492. package/dist/index32.js.map +1 -1
  493. package/dist/index320.js +10 -0
  494. package/dist/index320.js.map +1 -0
  495. package/dist/index33.js +26 -10
  496. package/dist/index33.js.map +1 -1
  497. package/dist/index34.js +54 -14
  498. package/dist/index34.js.map +1 -1
  499. package/dist/index35.js +24 -8
  500. package/dist/index35.js.map +1 -1
  501. package/dist/index36.js +133 -11
  502. package/dist/index36.js.map +1 -1
  503. package/dist/index37.js +225 -12
  504. package/dist/index37.js.map +1 -1
  505. package/dist/index38.js +94 -16
  506. package/dist/index38.js.map +1 -1
  507. package/dist/index39.js +121 -9
  508. package/dist/index39.js.map +1 -1
  509. package/dist/index4.js +28 -25
  510. package/dist/index4.js.map +1 -1
  511. package/dist/index40.js +8 -9
  512. package/dist/index40.js.map +1 -1
  513. package/dist/index41.js +847 -10
  514. package/dist/index41.js.map +1 -1
  515. package/dist/index42.js +60 -13
  516. package/dist/index42.js.map +1 -1
  517. package/dist/index43.js +10 -11
  518. package/dist/index43.js.map +1 -1
  519. package/dist/index44.js +5 -9
  520. package/dist/index44.js.map +1 -1
  521. package/dist/index45.js +14 -8
  522. package/dist/index45.js.map +1 -1
  523. package/dist/index46.js +21 -14
  524. package/dist/index46.js.map +1 -1
  525. package/dist/index47.js +10 -14
  526. package/dist/index47.js.map +1 -1
  527. package/dist/index48.js +5 -11
  528. package/dist/index48.js.map +1 -1
  529. package/dist/index49.js +26 -7
  530. package/dist/index49.js.map +1 -1
  531. package/dist/index5.js +41 -34
  532. package/dist/index5.js.map +1 -1
  533. package/dist/index50.js +236 -9
  534. package/dist/index50.js.map +1 -1
  535. package/dist/index51.js +9 -9
  536. package/dist/index51.js.map +1 -1
  537. package/dist/index52.js +36 -9
  538. package/dist/index52.js.map +1 -1
  539. package/dist/index53.js +29 -12
  540. package/dist/index53.js.map +1 -1
  541. package/dist/index54.js +10 -16
  542. package/dist/index54.js.map +1 -1
  543. package/dist/index55.js +14 -9
  544. package/dist/index55.js.map +1 -1
  545. package/dist/index56.js +5 -10
  546. package/dist/index56.js.map +1 -1
  547. package/dist/index57.js +5 -10
  548. package/dist/index57.js.map +1 -1
  549. package/dist/index58.js +5 -17
  550. package/dist/index58.js.map +1 -1
  551. package/dist/index59.js +5 -11
  552. package/dist/index59.js.map +1 -1
  553. package/dist/index6.js +469 -42
  554. package/dist/index6.js.map +1 -1
  555. package/dist/index60.js +208 -12
  556. package/dist/index60.js.map +1 -1
  557. package/dist/index61.js +8 -70
  558. package/dist/index61.js.map +1 -1
  559. package/dist/index62.js +10 -10
  560. package/dist/index62.js.map +1 -1
  561. package/dist/index63.js +8 -33
  562. package/dist/index63.js.map +1 -1
  563. package/dist/index64.js +7 -13
  564. package/dist/index64.js.map +1 -1
  565. package/dist/index65.js +50 -18
  566. package/dist/index65.js.map +1 -1
  567. package/dist/index66.js +53 -203
  568. package/dist/index66.js.map +1 -1
  569. package/dist/index67.js +10 -23
  570. package/dist/index67.js.map +1 -1
  571. package/dist/index68.js +17 -19
  572. package/dist/index68.js.map +1 -1
  573. package/dist/index69.js +136 -125
  574. package/dist/index69.js.map +1 -1
  575. package/dist/index7.js +138 -224
  576. package/dist/index7.js.map +1 -1
  577. package/dist/index70.js +13 -21
  578. package/dist/index70.js.map +1 -1
  579. package/dist/index71.js +219 -11
  580. package/dist/index71.js.map +1 -1
  581. package/dist/index72.js +16 -13
  582. package/dist/index72.js.map +1 -1
  583. package/dist/index73.js +49 -16
  584. package/dist/index73.js.map +1 -1
  585. package/dist/index74.js +52 -12
  586. package/dist/index74.js.map +1 -1
  587. package/dist/index75.js +7 -13
  588. package/dist/index75.js.map +1 -1
  589. package/dist/index76.js +8 -7
  590. package/dist/index76.js.map +1 -1
  591. package/dist/index77.js +30 -44
  592. package/dist/index77.js.map +1 -1
  593. package/dist/index78.js +52 -383
  594. package/dist/index78.js.map +1 -1
  595. package/dist/index79.js +11 -41
  596. package/dist/index79.js.map +1 -1
  597. package/dist/index8.js +875 -37
  598. package/dist/index8.js.map +1 -1
  599. package/dist/index80.js +46 -21
  600. package/dist/index80.js.map +1 -1
  601. package/dist/index81.js +8 -60
  602. package/dist/index81.js.map +1 -1
  603. package/dist/index82.js +72 -11
  604. package/dist/index82.js.map +1 -1
  605. package/dist/index83.js +5 -9
  606. package/dist/index83.js.map +1 -1
  607. package/dist/index84.js +367 -9
  608. package/dist/index84.js.map +1 -1
  609. package/dist/index85.js +265 -9
  610. package/dist/index85.js.map +1 -1
  611. package/dist/index86.js +64 -9
  612. package/dist/index86.js.map +1 -1
  613. package/dist/index87.js +50 -10
  614. package/dist/index87.js.map +1 -1
  615. package/dist/index88.js +173 -10
  616. package/dist/index88.js.map +1 -1
  617. package/dist/index89.js +113 -14
  618. package/dist/index89.js.map +1 -1
  619. package/dist/index9.js +8 -33
  620. package/dist/index9.js.map +1 -1
  621. package/dist/index90.js +27 -10
  622. package/dist/index90.js.map +1 -1
  623. package/dist/index91.js +11 -10
  624. package/dist/index91.js.map +1 -1
  625. package/dist/index92.js +7 -8
  626. package/dist/index92.js.map +1 -1
  627. package/dist/index93.js +8 -10
  628. package/dist/index93.js.map +1 -1
  629. package/dist/index94.js +7 -50
  630. package/dist/index94.js.map +1 -1
  631. package/dist/index95.js +469 -108
  632. package/dist/index95.js.map +1 -1
  633. package/dist/index96.js +188 -13
  634. package/dist/index96.js.map +1 -1
  635. package/dist/index97.js +110 -9
  636. package/dist/index97.js.map +1 -1
  637. package/dist/index98.js +265 -9
  638. package/dist/index98.js.map +1 -1
  639. package/dist/index99.js +12 -8
  640. package/dist/index99.js.map +1 -1
  641. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"index8.js","names":["useEffect","useRef","KEYBOARD_SCROLL_KEYS","Set","useUserScrollIntent","t0","$","_c","timeoutMs","undefined","isUserScrollRef","timeoutRef","t1","t2","window","current","markUserScroll","clearTimeout","setTimeout","handleKeyDown","event","has","key","addEventListener","passive","removeEventListener"],"sources":["../src/helpers/useUserScrollIntent.ts"],"sourcesContent":["import { useEffect, useRef } from \"react\"\n\n\nconst KEYBOARD_SCROLL_KEYS = new Set([\n \" \",\n \"Spacebar\",\n \"PageUp\",\n \"PageDown\",\n \"Home\",\n \"End\",\n \"ArrowDown\",\n \"ArrowUp\",\n])\n\nexport function useUserScrollIntent(timeoutMs = 1000) {\n const isUserScrollRef = useRef(false)\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null)\n\n useEffect(() => {\n if (typeof window === \"undefined\") {\n return\n }\n\n if (timeoutMs <= 0) {\n isUserScrollRef.current = false\n return\n }\n\n const markUserScroll = () => {\n isUserScrollRef.current = true\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current)\n }\n timeoutRef.current = setTimeout(() => {\n isUserScrollRef.current = false\n }, timeoutMs)\n }\n\n const handleKeyDown = (event: KeyboardEvent) => {\n if (KEYBOARD_SCROLL_KEYS.has(event.key)) {\n markUserScroll()\n }\n }\n\n window.addEventListener(\"touchmove\", markUserScroll, { passive: true })\n window.addEventListener(\"wheel\", markUserScroll, { passive: true })\n window.addEventListener(\"keydown\", handleKeyDown)\n\n return () => {\n window.removeEventListener(\"touchmove\", markUserScroll)\n window.removeEventListener(\"wheel\", markUserScroll)\n window.removeEventListener(\"keydown\", handleKeyDown)\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current)\n }\n }\n }, [timeoutMs])\n\n return isUserScrollRef\n}\n\n"],"mappings":";;;AAGA,IAAME,IAAuB,IAAIC,IAAI;CACnC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD,CAAC;AAEF,SAAOC,EAAAC,GAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,EAA6BC,IAAAH,MAAAI,KAAAA,IAAA,MAAAJ,GAClCK,IAAwBT,EAAO,GAAM,EACrCU,IAAmBV,EAA6C,KAAK,EAAAW,GAAAC;AAwCtD,QAxCsDP,EAAA,OAAAE,KAwCvDI,IAAAN,EAAA,IAAAO,IAAAP,EAAA,OAtCJM,UAAA;AACR,MAAI,OAAOE,SAAW,IAAW;AAIjC,MAAIN,KAAa,GAAC;AAChBE,KAAeK,UAAW;AAAH;;EAIzB,IAAAC,UAAuB;AAKrBL,GAJAD,EAAeK,UAAW,IACtBJ,EAAUI,WACZE,aAAaN,EAAUI,QAAS,EAElCJ,EAAUI,UAAWG,iBAAW;AAC9BR,MAAeK,UAAW;MACzBP,EAFe;KAKpBW,KAAsBC,MAAA;AACpB,GAAIlB,EAAoBmB,IAAKD,EAAKE,IAAK,IACrCN,GAAgB;;AAM6B,SAFjDF,OAAMS,iBAAkB,aAAaP,GAAgB,EAAAQ,SAAW,IAAM,CAAC,EACvEV,OAAMS,iBAAkB,SAASP,GAAgB,EAAAQ,SAAW,IAAM,CAAC,EACnEV,OAAMS,iBAAkB,WAAWJ,EAAc,QAE1C;AAIL,GAHAL,OAAMW,oBAAqB,aAAaT,EAAe,EACvDF,OAAMW,oBAAqB,SAAST,EAAe,EACnDF,OAAMW,oBAAqB,WAAWN,EAAc,EAChDR,EAAUI,WACZE,aAAaN,EAAUI,QAAS;;IAGnCF,IAAA,CAACL,EAAU,EAAAF,EAAA,KAAAE,GAAAF,EAAA,KAAAM,GAAAN,EAAA,KAAAO,IAtCdb,EAAUY,GAsCPC,EAAY,EAERH"}
1
+ {"version":3,"file":"index8.js","sources":["../src/components/FilesUploadField/index.tsx"],"sourcesContent":["import { useEffect, useMemo, useRef, useState, type ReactNode } from \"react\"\nimport { createPortal } from \"react-dom\"\nimport { DismissableLayerBranch } from \"@radix-ui/react-dismissable-layer\"\nimport type { DragEndEvent } from \"@dnd-kit/core\"\nimport { DndContext, DragOverlay, KeyboardSensor, PointerSensor, closestCenter, useSensor, useSensors } from \"@dnd-kit/core\"\nimport {\n SortableContext,\n arrayMove,\n rectSortingStrategy,\n sortableKeyboardCoordinates,\n useSortable,\n} from \"@dnd-kit/sortable\"\nimport { CSS } from \"@dnd-kit/utilities\"\nimport { Loader2, Maximize2, Plus, X } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\n\n\nexport type FilesUploadFieldFile = {\n id: string\n url: string\n alt?: string\n uploadKey?: string\n}\n\nconst TENANT_ID_QUERY_PARAM = \"rb-tenant-id\"\n\ntype FileUploadsInitResponse = {\n ok: boolean\n error?: string\n uploadId?: string\n uploadKey?: string\n chunkSize?: number\n chunksTotal?: number\n}\n\ntype FileUploadsStatusResponse = {\n ok: boolean\n error?: string\n status?: \"uploading\" | \"assembling\" | \"done\" | \"error\"\n chunkSize?: number\n chunksTotal?: number\n received?: number[]\n fileId?: string\n}\n\ntype FileUploadsCompleteResponse = {\n ok: boolean\n error?: string\n fileId?: string\n}\n\nconst sha256Hex = async (data: ArrayBuffer): Promise<string | null> => {\n if (typeof crypto === \"undefined\" || typeof crypto.subtle === \"undefined\") return null\n try {\n const digest = await crypto.subtle.digest(\"SHA-256\", data)\n const bytes = Array.from(new Uint8Array(digest))\n return bytes.map((b) => b.toString(16).padStart(2, \"0\")).join(\"\")\n } catch {\n return null\n }\n}\n\nconst readTenantIdFromLocation = (): string | null => {\n if (typeof window === \"undefined\") return null\n const raw = new URLSearchParams(window.location.search || \"\").get(TENANT_ID_QUERY_PARAM)\n const normalized = raw?.trim() ?? \"\"\n return normalized ? normalized : null\n}\n\nconst withTenant = (path: string, tenantId: string | null): string => {\n if (!tenantId) return path\n const sep = path.includes(\"?\") ? \"&\" : \"?\"\n return `${path}${sep}${TENANT_ID_QUERY_PARAM}=${encodeURIComponent(tenantId)}`\n}\n\nconst postJson = async <T,>(\n url: string,\n body: unknown,\n options?: { headers?: Record<string, string>; signal?: AbortSignal },\n): Promise<{ ok: boolean; status: number; data: T }> => {\n const response = await fetch(url, {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...(options?.headers ?? {}) },\n credentials: \"include\",\n body: JSON.stringify(body),\n signal: options?.signal,\n })\n\n const payload = await response.json().catch(() => ({}))\n return { ok: response.ok, status: response.status, data: payload as T }\n}\n\nconst getJson = async <T,>(\n url: string,\n options?: { headers?: Record<string, string>; signal?: AbortSignal },\n): Promise<{ ok: boolean; status: number; data: T }> => {\n const response = await fetch(url, {\n credentials: \"include\",\n headers: options?.headers,\n signal: options?.signal,\n })\n const payload = await response.json().catch(() => ({}))\n return { ok: response.ok, status: response.status, data: payload as T }\n}\n\nconst putOctetStream = async ({\n url,\n body,\n sha256,\n uploadKey,\n signal,\n}: {\n url: string\n body: ArrayBuffer\n sha256?: string\n uploadKey?: string\n signal?: AbortSignal\n}): Promise<{ ok: boolean; status: number }> => {\n const headers: Record<string, string> = {\n \"Content-Type\": \"application/octet-stream\",\n }\n if (sha256) headers[\"X-Chunk-SHA256\"] = sha256\n if (uploadKey) headers[\"X-Upload-Key\"] = uploadKey\n\n const response = await fetch(url, {\n method: \"PUT\",\n credentials: \"include\",\n headers,\n body,\n signal,\n })\n\n return { ok: response.ok, status: response.status }\n}\n\nconst defaultUpload: UploadHandler = async (file, onProgress, options) => {\n const tenantId = readTenantIdFromLocation()\n\n const initRes = await postJson<FileUploadsInitResponse>(\n withTenant(\"/api/rb/file-uploads\", tenantId),\n {\n filename: file.name,\n mimeType: file.type || \"application/octet-stream\",\n ...(typeof options?.isPublic === \"boolean\" ? { isPublic: options.isPublic } : {}),\n totalSize: file.size,\n },\n { signal: options?.signal },\n )\n\n if (!initRes.ok || !(initRes.data as any)?.ok) {\n throw new Error((initRes.data as any)?.error ?? `Init failed (${initRes.status})`)\n }\n\n const uploadId = String((initRes.data as any)?.uploadId ?? \"\")\n const uploadKey = typeof (initRes.data as any)?.uploadKey === \"string\" ? String((initRes.data as any).uploadKey) : null\n const chunkSize = Number((initRes.data as any)?.chunkSize ?? 0)\n const chunksTotal = Number((initRes.data as any)?.chunksTotal ?? 0)\n\n if (!uploadId || !chunkSize || !chunksTotal) {\n throw new Error(\"Upload init missing required fields\")\n }\n\n const doUploadChunk = async (index: number) => {\n const start = index * chunkSize\n const end = Math.min(file.size, start + chunkSize)\n const slice = file.slice(start, end)\n const body = await slice.arrayBuffer()\n const sha = await sha256Hex(body)\n\n const res = await putOctetStream({\n url: withTenant(`/api/rb/file-uploads/${encodeURIComponent(uploadId)}/chunks/${index}`, tenantId),\n body,\n sha256: sha ?? undefined,\n uploadKey: uploadKey ?? undefined,\n signal: options?.signal,\n })\n\n if (res.status === 204) return\n throw new Error(`Chunk ${index} failed (${res.status})`)\n }\n\n const uploadChunks = async (indices: number[], alreadyUploaded = 0) => {\n let uploaded = alreadyUploaded\n\n for (const idx of indices) {\n await doUploadChunk(idx)\n uploaded += 1\n const pct = Math.min(99, Math.floor((uploaded / chunksTotal) * 99))\n onProgress(pct)\n }\n }\n\n const allIndices = Array.from({ length: chunksTotal }, (_, i) => i)\n await uploadChunks(allIndices, 0)\n\n const complete = async (): Promise<string> => {\n const completeRes = await postJson<FileUploadsCompleteResponse>(\n withTenant(`/api/rb/file-uploads/${encodeURIComponent(uploadId)}/complete`, tenantId),\n {},\n { headers: uploadKey ? { \"X-Upload-Key\": uploadKey } : undefined, signal: options?.signal },\n )\n\n if (completeRes.ok && (completeRes.data as any)?.ok) {\n const fileId = String((completeRes.data as any)?.fileId ?? \"\")\n if (!fileId) throw new Error(\"Upload completed without fileId\")\n return fileId\n }\n\n const code = String((completeRes.data as any)?.error ?? \"\")\n if (completeRes.status !== 409 || code !== \"missing_chunks\") {\n throw new Error(code || `Complete failed (${completeRes.status})`)\n }\n\n const statusRes = await getJson<FileUploadsStatusResponse>(\n withTenant(`/api/rb/file-uploads/${encodeURIComponent(uploadId)}/status`, tenantId),\n { headers: uploadKey ? { \"X-Upload-Key\": uploadKey } : undefined, signal: options?.signal },\n )\n\n if (!statusRes.ok || !(statusRes.data as any)?.ok) {\n throw new Error((statusRes.data as any)?.error ?? `Status failed (${statusRes.status})`)\n }\n\n const received = Array.isArray((statusRes.data as any)?.received) ? (statusRes.data as any).received : []\n const present = new Set<number>(received)\n const missing: number[] = []\n for (let i = 0; i < chunksTotal; i += 1) {\n if (!present.has(i)) missing.push(i)\n }\n\n if (!missing.length) {\n throw new Error(\"missing_chunks\")\n }\n\n await uploadChunks(missing, present.size)\n return complete()\n }\n\n const fileId = await complete()\n\n onProgress(100)\n return {\n id: fileId,\n url: withTenant(`/api/rb/files/${encodeURIComponent(fileId)}`, tenantId),\n alt: file.name,\n ...(uploadKey ? { uploadKey } : {}),\n }\n}\n\nfunction SortableTile({\n item,\n isHovered,\n enableImagePreview,\n renderItem,\n onHoverEnter,\n onHoverLeave,\n onRemove,\n onRetry,\n startFullscreen,\n isUploading,\n isError,\n tileClasses,\n disabled,\n isDraggingExternal,\n removeButtonAriaLabel,\n}: {\n item: FileWithState\n isHovered: boolean\n enableImagePreview: boolean\n renderItem?: (props: FilesUploadFieldRenderItemProps) => ReactNode\n onHoverEnter: () => void\n onHoverLeave: () => void\n onRemove: (id: string) => void\n onRetry: (id: string) => void\n startFullscreen: (id: string) => void\n isUploading: boolean\n isError: boolean\n tileClasses: string\n disabled: boolean\n isDraggingExternal: boolean\n removeButtonAriaLabel: string\n}) {\n const { setNodeRef, attributes, listeners, transform, transition, isDragging } = useSortable({\n id: item.id,\n disabled,\n })\n\n const tileRef = useRef<HTMLDivElement | null>(null)\n const previewRef = useRef<HTMLDivElement | null>(null)\n const [previewPosition, setPreviewPosition] = useState<{ left: number; top: number } | null>(null)\n\n const updatePreviewPosition = () => {\n const el = tileRef.current\n if (!el) return\n const rect = el.getBoundingClientRect()\n setPreviewPosition({ left: rect.left + rect.width / 2, top: rect.top - 10 })\n }\n\n useEffect(() => {\n if (!enableImagePreview || !isHovered) {\n setPreviewPosition(null)\n return\n }\n\n updatePreviewPosition()\n\n let raf = 0\n const schedule = () => {\n if (raf) cancelAnimationFrame(raf)\n raf = requestAnimationFrame(() => {\n raf = 0\n updatePreviewPosition()\n })\n }\n\n window.addEventListener(\"resize\", schedule)\n window.addEventListener(\"scroll\", schedule, true)\n return () => {\n if (raf) cancelAnimationFrame(raf)\n window.removeEventListener(\"resize\", schedule)\n window.removeEventListener(\"scroll\", schedule, true)\n }\n }, [enableImagePreview, isHovered])\n\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n }\n\n const tileContent = renderItem\n ? renderItem({\n file: { id: item.id, url: item.url, alt: item.alt, uploadKey: item.uploadKey },\n previewUrl: item.previewUrl,\n status: item.status,\n progress: item.progress,\n fileName: item.fileName,\n })\n : enableImagePreview\n ? (\n <img\n src={item.previewUrl}\n alt={item.alt ?? \"Uploaded file\"}\n className={cn(\n \"size-full rounded-md object-cover\",\n isUploading && \"opacity-75\",\n isError && \"grayscale\"\n )}\n />\n )\n : (\n <div className=\"flex size-full items-center justify-center rounded-md bg-slate-100 px-2 text-center text-[10px] font-medium text-slate-700 dark:bg-slate-800 dark:text-slate-200\">\n <span className=\"w-full truncate\">{item.fileName ?? item.alt ?? \"Fichier\"}</span>\n </div>\n )\n\n return (\n <div\n ref={(node) => {\n tileRef.current = node\n setNodeRef(node)\n }}\n style={style}\n className={cn(\n tileClasses,\n isDragging && \"z-20 ring-2 ring-primary shadow-xl\",\n isDraggingExternal && \"opacity-0\",\n !disabled && \"cursor-grab active:cursor-grabbing\",\n isDragging && \"cursor-grabbing\",\n disabled && \"cursor-default\"\n )}\n onMouseEnter={() => {\n updatePreviewPosition()\n onHoverEnter()\n }}\n onMouseLeave={(event) => {\n const next = event.relatedTarget\n if (next instanceof Node && previewRef.current?.contains(next)) return\n onHoverLeave()\n }}\n {...attributes}\n {...listeners}\n >\n {tileContent}\n\n <button\n type=\"button\"\n onClick={() => {\n if (disabled) return\n onRemove(item.id)\n }}\n disabled={disabled}\n className=\"absolute right-1 top-1 inline-flex size-6 items-center justify-center rounded-full bg-white text-slate-700 shadow-sm transition hover:scale-105 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-primary dark:bg-slate-900 dark:text-slate-200\"\n aria-label={removeButtonAriaLabel}\n >\n <X className=\"h-4 w-4\" />\n </button>\n\n {enableImagePreview &&\n isHovered &&\n previewPosition &&\n (() => {\n const preview = (\n <DismissableLayerBranch>\n <div\n ref={previewRef}\n className=\"pointer-events-auto fixed z-[60] w-52 -translate-x-1/2 -translate-y-full rounded-xl border border-slate-200 bg-white/95 p-3 shadow-2xl backdrop-blur dark:border-slate-700 dark:bg-slate-900/95\"\n style={{ left: previewPosition.left, top: previewPosition.top }}\n onMouseEnter={() => {\n updatePreviewPosition()\n onHoverEnter()\n }}\n onMouseLeave={(event) => {\n const next = event.relatedTarget\n if (next instanceof Node && tileRef.current?.contains(next)) return\n onHoverLeave()\n }}\n >\n <div className=\"relative overflow-hidden rounded-lg\">\n <img src={item.url} alt={item.alt ?? \"Preview\"} className=\"h-40 w-full object-cover\" />\n <button\n type=\"button\"\n onClick={() => startFullscreen(item.id)}\n className=\"absolute right-2 top-2 inline-flex items-center justify-center rounded-full bg-black/70 p-2 text-white transition hover:bg-black\"\n aria-label=\"Plein écran\"\n >\n <Maximize2 className=\"h-3.5 w-3.5\" />\n </button>\n </div>\n </div>\n </DismissableLayerBranch>\n )\n\n if (typeof document === \"undefined\") return preview\n return createPortal(preview, document.body)\n })()}\n\n {isUploading && (\n <div className=\"absolute inset-0 z-20 flex flex-col items-center justify-center gap-2 rounded-lg bg-black/40 text-white\">\n <Loader2 className=\"h-5 w-5 animate-spin\" />\n <div className=\"h-1.5 w-5/6 rounded-full bg-white/20\">\n <div className=\"h-full rounded-full bg-primary\" style={{ width: `${item.progress}%` }} />\n </div>\n <div className=\"text-xs font-semibold\">{item.progress}%</div>\n </div>\n )}\n\n {isError && (\n <div className=\"absolute inset-0 z-10 flex flex-col items-center justify-center gap-2 rounded-lg bg-red-600/70 text-white\">\n <div className=\"text-xs font-semibold\">Échec</div>\n <button\n type=\"button\"\n onClick={() => onRetry(item.id)}\n disabled={disabled}\n className=\"rounded-full bg-white/90 px-3 py-1 text-xs font-semibold text-red-700 shadow-sm transition hover:bg-white focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white\"\n >\n Réessayer\n </button>\n </div>\n )}\n </div>\n )\n}\n\ntype UploadResult = FilesUploadFieldFile | Promise<FilesUploadFieldFile>\n\ntype UploadHandler = (\n file: File,\n onProgress: (progress: number) => void,\n options?: { signal?: AbortSignal; isPublic?: boolean },\n) => UploadResult\n\nexport type FilesUploadFieldRenderItemProps = {\n file: FilesUploadFieldFile\n previewUrl: string\n status: \"uploaded\" | \"uploading\" | \"error\"\n progress: number\n fileName?: string\n}\n\nexport type FilesUploadFieldProps = {\n initialFiles?: FilesUploadFieldFile[]\n onChange?: (files: FilesUploadFieldFile[]) => void\n upload?: UploadHandler\n uploadIsPublic?: boolean\n disabled?: boolean\n onUploadingChange?: (isUploading: boolean) => void\n accept?: string | string[]\n renderHeader?: () => ReactNode\n renderItem?: (props: FilesUploadFieldRenderItemProps) => ReactNode\n addButtonAriaLabel?: string\n removeButtonAriaLabel?: string\n}\n\ntype FileWithState = FilesUploadFieldFile & {\n previewUrl: string\n status: \"uploaded\" | \"uploading\" | \"error\"\n progress: number\n fileName?: string\n}\n\nfunction toPreview(file: File) {\n return URL.createObjectURL(file)\n}\n\nexport function FilesUploadField({\n initialFiles = [],\n onChange,\n upload = defaultUpload,\n uploadIsPublic = false,\n disabled = false,\n onUploadingChange,\n accept,\n renderHeader,\n renderItem,\n addButtonAriaLabel = \"Ajouter un fichier\",\n removeButtonAriaLabel = \"Supprimer le fichier\",\n}: FilesUploadFieldProps) {\n const fileInputRef = useRef<HTMLInputElement>(null)\n const [images, setImages] = useState<FileWithState[]>(() =>\n initialFiles.map((file) => ({ ...file, previewUrl: file.url, status: \"uploaded\", progress: 100 }))\n )\n const [dragActive, setDragActive] = useState(false)\n const [fullscreenIndex, setFullscreenIndex] = useState<number | null>(null)\n const [hoveredId, setHoveredId] = useState<string | null>(null)\n const [activeId, setActiveId] = useState<string | null>(null)\n const hoverTimeoutRef = useRef<number | null>(null)\n const skipNotifyRef = useRef(true)\n const imagesRef = useRef<FileWithState[]>([])\n const lastInitialImagesRef = useRef<FilesUploadFieldFile[]>(initialFiles)\n const onChangeRef = useRef(onChange)\n const onUploadingChangeRef = useRef(onUploadingChange)\n const replacedIdRef = useRef<Map<string, string>>(new Map())\n const fileRef = useRef<Map<string, File>>(new Map())\n const abortRef = useRef<Map<string, AbortController>>(new Map())\n const objectUrlRef = useRef<Map<string, string>>(new Map())\n const sensors = useSensors(\n useSensor(PointerSensor, { activationConstraint: { distance: 6 } }),\n useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates })\n )\n\n useEffect(() => {\n return () => {\n for (const controller of abortRef.current.values()) {\n try {\n controller.abort()\n } catch {\n //\n }\n }\n abortRef.current.clear()\n fileRef.current.clear()\n replacedIdRef.current.clear()\n\n for (const url of objectUrlRef.current.values()) {\n if (typeof URL !== \"undefined\") {\n try {\n URL.revokeObjectURL(url)\n } catch {\n //\n }\n }\n }\n objectUrlRef.current.clear()\n }\n }, [])\n\n useEffect(() => {\n if (typeof document === \"undefined\") return\n if (activeId) {\n document.body.style.cursor = \"grabbing\"\n return () => {\n document.body.style.cursor = \"\"\n }\n }\n document.body.style.cursor = \"\"\n }, [activeId])\n\n useEffect(() => {\n imagesRef.current = images\n }, [images])\n\n useEffect(() => {\n onChangeRef.current = onChange\n }, [onChange])\n\n useEffect(() => {\n onUploadingChangeRef.current = onUploadingChange\n }, [onUploadingChange])\n\n useEffect(() => {\n const previous = lastInitialImagesRef.current\n const samePropValue =\n previous.length === initialFiles.length &&\n previous.every((img, index) => {\n const next = initialFiles[index]\n return next && img.id === next.id && img.url === next.url && img.alt === next.alt\n })\n\n if (samePropValue) return\n lastInitialImagesRef.current = initialFiles\n\n const prepared: FileWithState[] = initialFiles.map((img) => ({\n ...img,\n previewUrl: img.url,\n status: \"uploaded\",\n progress: 100,\n }))\n\n const preparedRawIds = new Set(prepared.map((img) => img.id))\n for (const [tempId, finalId] of replacedIdRef.current.entries()) {\n if (preparedRawIds.has(finalId)) {\n replacedIdRef.current.delete(tempId)\n }\n }\n\n const currentIds = new Set(imagesRef.current.map((img) => img.id))\n const hasStaleInitialImages = prepared.some((img) => {\n const mapped = replacedIdRef.current.get(img.id)\n return mapped ? currentIds.has(mapped) : false\n })\n if (hasStaleInitialImages) return\n\n const preparedIds = new Set(prepared.map((img) => img.id))\n for (const img of imagesRef.current) {\n if (preparedIds.has(img.id)) continue\n\n const controller = abortRef.current.get(img.id)\n if (controller) {\n abortRef.current.delete(img.id)\n try {\n controller.abort()\n } catch {\n //\n }\n }\n\n fileRef.current.delete(img.id)\n\n const tempUrl = objectUrlRef.current.get(img.id)\n if (tempUrl) {\n objectUrlRef.current.delete(img.id)\n try {\n URL.revokeObjectURL(tempUrl)\n } catch {\n //\n }\n }\n }\n\n setImages((current) => {\n const sameLength = current.length === prepared.length\n const sameContent =\n sameLength &&\n current.every((item, index) => {\n const next = prepared[index]\n return next && item.id === next.id && item.url === next.url && item.alt === next.alt && item.uploadKey === next.uploadKey\n })\n\n if (sameContent) return current\n\n skipNotifyRef.current = true\n return prepared\n })\n }, [initialFiles])\n\n useEffect(() => {\n if (skipNotifyRef.current) {\n skipNotifyRef.current = false\n return\n }\n\n onChangeRef.current?.(images.map(({ id, url, alt, uploadKey }) => ({ id, url, alt, uploadKey })))\n }, [images])\n\n useEffect(() => {\n onUploadingChangeRef.current?.(images.some((img) => img.status === \"uploading\"))\n }, [images])\n\n useEffect(() => {\n if (fullscreenIndex === null) {\n return\n }\n\n const handleKey = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n setFullscreenIndex(null)\n return\n }\n\n if (event.key === \"ArrowRight\") {\n setFullscreenIndex((current) => {\n if (current === null) return current\n return (current + 1) % images.length\n })\n return\n }\n\n if (event.key === \"ArrowLeft\") {\n setFullscreenIndex((current) => {\n if (current === null) return current\n return (current - 1 + images.length) % images.length\n })\n }\n }\n\n window.addEventListener(\"keydown\", handleKey)\n return () => window.removeEventListener(\"keydown\", handleKey)\n }, [fullscreenIndex, images.length])\n\n const handleFiles = async (files: FileList | File[]) => {\n if (disabled) return\n const list = Array.from(files)\n\n const uploads = list.map((file) => {\n const previewUrl = toPreview(file)\n const tempId = crypto.randomUUID()\n\n objectUrlRef.current.set(tempId, previewUrl)\n fileRef.current.set(tempId, file)\n\n const next: FileWithState = {\n id: tempId,\n url: previewUrl,\n previewUrl,\n alt: file.name,\n status: \"uploading\",\n progress: 0,\n fileName: file.name,\n }\n\n setImages((current) => [...current, next])\n\n const updateProgress = (value: number) => {\n const nextValue = Math.max(0, Math.min(99, value))\n setImages((current) =>\n current.map((item) =>\n item.id === tempId ? { ...item, progress: nextValue, status: \"uploading\" } : item\n )\n )\n }\n\n const finalize = async () => {\n const controller = new AbortController()\n abortRef.current.set(tempId, controller)\n\n try {\n const result = await upload(file, updateProgress, { signal: controller.signal, isPublic: uploadIsPublic })\n replacedIdRef.current.set(tempId, result.id)\n\n const tempUrl = objectUrlRef.current.get(tempId)\n if (tempUrl) {\n objectUrlRef.current.delete(tempId)\n try {\n URL.revokeObjectURL(tempUrl)\n } catch {\n //\n }\n }\n\n abortRef.current.delete(tempId)\n fileRef.current.delete(tempId)\n\n setImages((current) =>\n current.map((item) =>\n item.id === tempId\n ? {\n ...item,\n ...result,\n previewUrl: result.url,\n url: result.url,\n status: \"uploaded\",\n progress: 100,\n }\n : item\n )\n )\n } catch (error) {\n abortRef.current.delete(tempId)\n if (controller.signal.aborted) {\n fileRef.current.delete(tempId)\n const tempUrl = objectUrlRef.current.get(tempId)\n if (tempUrl) {\n objectUrlRef.current.delete(tempId)\n try {\n URL.revokeObjectURL(tempUrl)\n } catch {\n //\n }\n }\n return\n }\n console.error(\"Upload failed\", error)\n setImages((current) =>\n current.map((item) =>\n item.id === tempId\n ? { ...item, status: \"error\", progress: Math.max(0, Math.min(99, item.progress)) }\n : item\n )\n )\n }\n }\n\n return finalize()\n })\n\n await Promise.allSettled(uploads)\n }\n\n const onFileInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (!event.target.files) return\n void handleFiles(event.target.files)\n event.target.value = \"\"\n }\n\n const openFileDialog = () => {\n if (disabled) return\n fileInputRef.current?.click()\n }\n\n const removeImage = (id: string) => {\n const controller = abortRef.current.get(id)\n if (controller) {\n abortRef.current.delete(id)\n try {\n controller.abort()\n } catch {\n //\n }\n }\n\n fileRef.current.delete(id)\n\n const tempUrl = objectUrlRef.current.get(id)\n if (tempUrl) {\n objectUrlRef.current.delete(id)\n try {\n URL.revokeObjectURL(tempUrl)\n } catch {\n //\n }\n }\n\n setImages((current) => current.filter((item) => item.id !== id))\n }\n\n const retryUpload = (id: string) => {\n if (disabled) return\n const file = fileRef.current.get(id)\n if (!file) return\n\n const existingController = abortRef.current.get(id)\n if (existingController) {\n try {\n existingController.abort()\n } catch {\n //\n }\n abortRef.current.delete(id)\n }\n\n setImages((current) =>\n current.map((item) => (item.id === id ? { ...item, status: \"uploading\", progress: 0 } : item))\n )\n\n const updateProgress = (value: number) => {\n const nextValue = Math.max(0, Math.min(99, value))\n setImages((current) =>\n current.map((item) => (item.id === id ? { ...item, progress: nextValue, status: \"uploading\" } : item))\n )\n }\n\n const controller = new AbortController()\n abortRef.current.set(id, controller)\n\n void (async () => {\n try {\n const result = await upload(file, updateProgress, { signal: controller.signal, isPublic: uploadIsPublic })\n replacedIdRef.current.set(id, result.id)\n\n const tempUrl = objectUrlRef.current.get(id)\n if (tempUrl) {\n objectUrlRef.current.delete(id)\n try {\n URL.revokeObjectURL(tempUrl)\n } catch {\n //\n }\n }\n\n abortRef.current.delete(id)\n fileRef.current.delete(id)\n\n setImages((current) =>\n current.map((item) =>\n item.id === id\n ? { ...item, ...result, previewUrl: result.url, url: result.url, status: \"uploaded\", progress: 100 }\n : item\n )\n )\n } catch (error) {\n abortRef.current.delete(id)\n if (controller.signal.aborted) return\n console.error(\"Retry failed\", error)\n setImages((current) => current.map((item) => (item.id === id ? { ...item, status: \"error\" } : item)))\n }\n })()\n }\n\n const startFullscreen = (id: string) => {\n const index = images.findIndex((item) => item.id === id)\n if (index !== -1) {\n setFullscreenIndex(index)\n }\n }\n\n const handleDragStart = (event: DragEndEvent) => {\n setActiveId(String(event.active.id))\n }\n\n const handleDragEnd = (event: DragEndEvent) => {\n const { active, over } = event\n if (!over) {\n setActiveId(null)\n return\n }\n\n const activeId = String(active.id)\n const overId = String(over.id)\n\n if (activeId !== overId) {\n setImages((current) => {\n const oldIndex = current.findIndex((item) => item.id === activeId)\n const newIndex = current.findIndex((item) => item.id === overId)\n if (oldIndex === -1 || newIndex === -1) return current\n return arrayMove(current, oldIndex, newIndex)\n })\n }\n\n setActiveId(null)\n }\n\n const handleDragCancel = () => {\n setActiveId(null)\n }\n\n const clearHoverTimeout = () => {\n if (hoverTimeoutRef.current !== null) {\n window.clearTimeout(hoverTimeoutRef.current)\n hoverTimeoutRef.current = null\n }\n }\n\n const fullscreenImage = useMemo(() => {\n if (fullscreenIndex === null) return null\n return images[fullscreenIndex] ?? null\n }, [fullscreenIndex, images])\n\n const containerClasses = cn(\n \"rounded-xl border border-dashed border-slate-300 bg-white/70 p-4 shadow-sm transition-colors dark:border-slate-700 dark:bg-slate-900/60\",\n dragActive && \"border-primary ring-2 ring-primary/50\",\n disabled && \"opacity-70\"\n )\n\n const tileBaseClasses = \"group relative size-20 overflow-visible rounded-lg border border-slate-200 bg-slate-50 shadow-inner transition hover:shadow md:size-24 dark:border-slate-700 dark:bg-slate-800\"\n\n const acceptAttr = useMemo(() => {\n if (!accept) return undefined\n if (Array.isArray(accept)) return accept.join(\",\")\n return accept\n }, [accept])\n\n const enableImagePreview = useMemo(() => {\n if (renderItem) return false\n if (!acceptAttr) return false\n const tokens = acceptAttr.split(\",\").map((value) => value.trim()).filter(Boolean)\n if (!tokens.length) return false\n return tokens.every((token) => token === \"image/*\" || token.startsWith(\"image/\"))\n }, [acceptAttr, renderItem])\n\n const toRenderItemProps = (item: FileWithState): FilesUploadFieldRenderItemProps => ({\n file: { id: item.id, url: item.url, alt: item.alt, uploadKey: item.uploadKey },\n previewUrl: item.previewUrl,\n status: item.status,\n progress: item.progress,\n fileName: item.fileName,\n })\n\n const dragOverlayContent = activeId\n ? (() => {\n const activeItem = images.find((item) => item.id === activeId)\n if (!activeItem) return null\n\n if (renderItem) {\n const rendered = renderItem(toRenderItemProps(activeItem))\n if (rendered === null || rendered === undefined || rendered === false) return null\n return (\n <div className=\"pointer-events-none\">\n <div className=\"h-24 w-24 overflow-hidden rounded-lg shadow-2xl\">{rendered}</div>\n </div>\n )\n }\n\n if (!enableImagePreview) return null\n return (\n <div className=\"pointer-events-none\">\n <img\n src={activeItem.previewUrl}\n alt={activeItem.alt ?? \"Dragged image\"}\n className=\"h-24 w-24 rounded-lg object-cover shadow-2xl\"\n />\n </div>\n )\n })()\n : null\n\n const hideActiveTile = dragOverlayContent !== null && dragOverlayContent !== undefined\n\n return (\n <div\n onDragOver={(event) => {\n event.preventDefault()\n if (!disabled) {\n setDragActive(true)\n }\n }}\n onDragLeave={() => setDragActive(false)}\n onDrop={(event) => {\n event.preventDefault()\n setDragActive(false)\n if (event.dataTransfer.files?.length) {\n void handleFiles(event.dataTransfer.files)\n }\n }}\n className={containerClasses}\n >\n {renderHeader ? <div className=\"mb-3\">{renderHeader()}</div> : null}\n\n <DndContext\n sensors={disabled ? undefined : sensors}\n collisionDetection={closestCenter}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n onDragCancel={handleDragCancel}\n >\n <SortableContext items={images.map((item) => item.id)} strategy={rectSortingStrategy}>\n <div className=\"flex flex-wrap gap-3\">\n {images.map((item) => {\n const isUploading = item.status === \"uploading\"\n const isError = item.status === \"error\"\n\n return (\n <SortableTile\n key={item.id}\n item={item}\n isHovered={hoveredId === item.id}\n enableImagePreview={enableImagePreview}\n renderItem={renderItem}\n onHoverEnter={() => {\n clearHoverTimeout()\n setHoveredId(item.id)\n }}\n onHoverLeave={() => {\n clearHoverTimeout()\n hoverTimeoutRef.current = window.setTimeout(() => {\n setHoveredId((current) => (current === item.id ? null : current))\n hoverTimeoutRef.current = null\n }, 120)\n }}\n onRemove={removeImage}\n onRetry={retryUpload}\n startFullscreen={startFullscreen}\n isUploading={isUploading}\n isError={isError}\n tileClasses={tileBaseClasses}\n disabled={disabled}\n isDraggingExternal={hideActiveTile && activeId === item.id}\n removeButtonAriaLabel={removeButtonAriaLabel}\n />\n )\n })}\n\n <button\n type=\"button\"\n onClick={openFileDialog}\n disabled={disabled}\n className={cn(\n tileBaseClasses,\n \"flex items-center justify-center border-dashed bg-white text-slate-500 hover:border-slate-300 dark:bg-slate-900\"\n )}\n aria-label={addButtonAriaLabel}\n >\n <div className=\"flex flex-col items-center gap-1\">\n <div className=\"flex size-9 items-center justify-center rounded-full border border-slate-300 bg-slate-100 text-slate-600 shadow-inner dark:border-slate-700 dark:bg-slate-800 dark:text-slate-200\">\n <Plus className=\"h-5 w-5\" />\n </div>\n <span className=\"text-xs font-medium\">Ajouter</span>\n </div>\n </button>\n </div>\n </SortableContext>\n {(() => {\n const overlay = <DragOverlay>{dragOverlayContent}</DragOverlay>\n\n if (typeof document === \"undefined\") return overlay\n return createPortal(overlay, document.body)\n })()}\n </DndContext>\n\n <input\n ref={fileInputRef}\n type=\"file\"\n accept={acceptAttr}\n multiple\n className=\"hidden\"\n onChange={onFileInputChange}\n aria-hidden\n />\n\n {enableImagePreview && fullscreenImage && (\n <div className=\"fixed inset-0 z-50 flex items-center justify-center bg-black/90\">\n <button\n type=\"button\"\n className=\"absolute left-6 top-1/2 -translate-y-1/2 rounded-full bg-white/10 p-3 text-white shadow-lg transition hover:bg-white/20 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white\"\n onClick={() =>\n setFullscreenIndex((current) => {\n if (current === null) return current\n return (current - 1 + images.length) % images.length\n })\n }\n aria-label=\"Précédent\"\n >\n <svg viewBox=\"0 0 24 24\" className=\"h-6 w-6\" stroke=\"currentColor\" strokeWidth={2} fill=\"none\">\n <path d=\"M15 18l-6-6 6-6\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n </button>\n <div className=\"relative max-h-[80vh] max-w-4xl\">\n <img\n src={fullscreenImage.url}\n alt={fullscreenImage.alt ?? \"Fullscreen\"}\n className=\"max-h-[80vh] max-w-full rounded-lg object-contain shadow-2xl\"\n />\n <button\n type=\"button\"\n className=\"absolute right-3 top-3 inline-flex size-9 items-center justify-center rounded-full bg-black/70 text-white transition hover:bg-black focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white\"\n onClick={() => setFullscreenIndex(null)}\n aria-label=\"Fermer\"\n >\n <X className=\"h-5 w-5\" />\n </button>\n </div>\n <button\n type=\"button\"\n className=\"absolute right-6 top-1/2 -translate-y-1/2 rounded-full bg-white/10 p-3 text-white shadow-lg transition hover:bg-white/20 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white\"\n onClick={() =>\n setFullscreenIndex((current) => {\n if (current === null) return current\n return (current + 1) % images.length\n })\n }\n aria-label=\"Suivant\"\n >\n <svg viewBox=\"0 0 24 24\" className=\"h-6 w-6\" stroke=\"currentColor\" strokeWidth={2} fill=\"none\">\n <path d=\"M9 6l6 6-6 6\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n </button>\n </div>\n )}\n </div>\n )\n}\n"],"names":["TENANT_ID_QUERY_PARAM","sha256Hex","data","crypto","subtle","digest","Array","from","Uint8Array","map","b","toString","padStart","join","readTenantIdFromLocation","window","normalized","URLSearchParams","location","search","get","trim","withTenant","path","tenantId","sep","includes","encodeURIComponent","postJson","url","body","options","response","fetch","method","headers","credentials","JSON","stringify","signal","payload","json","catch","ok","status","getJson","putOctetStream","sha256","uploadKey","defaultUpload","file","onProgress","initRes","filename","name","mimeType","type","isPublic","totalSize","size","Error","error","uploadId","String","chunkSize","Number","chunksTotal","doUploadChunk","index","start","end","Math","min","slice","arrayBuffer","sha","res","undefined","uploadChunks","indices","alreadyUploaded","uploaded","idx","pct","floor","allIndices","length","_","i","complete","completeRes","fileId","code","statusRes","received","isArray","present","Set","missing","has","push","id","alt","SortableTile","t0","$","_c","item","isHovered","enableImagePreview","renderItem","onHoverEnter","onHoverLeave","onRemove","onRetry","startFullscreen","isUploading","isError","tileClasses","disabled","isDraggingExternal","removeButtonAriaLabel","t1","setNodeRef","attributes","listeners","transform","transition","isDragging","useSortable","tileRef","useRef","previewRef","previewPosition","setPreviewPosition","useState","t2","Symbol","for","el","current","rect","getBoundingClientRect","left","width","top","updatePreviewPosition","t3","t4","raf","schedule","cancelAnimationFrame","requestAnimationFrame","addEventListener","removeEventListener","useEffect","t5","CSS","Transform","t6","style","t7","fileName","previewUrl","progress","jsx","cn","tileContent","t8","node","t9","t10","t11","t12","t13","t14","t15","t16","event","next","relatedTarget","Node","contains","t17","t18","X","t19","t20","preview","DismissableLayerBranch","event_0","next_0","jsxs","Maximize2","document","createPortal","t21","Loader2","t22","t23","toPreview","URL","createObjectURL","FilesUploadField","initialFiles","onChange","upload","uploadIsPublic","onUploadingChange","accept","renderHeader","addButtonAriaLabel","fileInputRef","_temp","images","setImages","dragActive","setDragActive","fullscreenIndex","setFullscreenIndex","hoveredId","setHoveredId","activeId","setActiveId","hoverTimeoutRef","skipNotifyRef","imagesRef","lastInitialImagesRef","onChangeRef","onUploadingChangeRef","Map","replacedIdRef","fileRef","abortRef","objectUrlRef","activationConstraint","distance","coordinateGetter","sortableKeyboardCoordinates","sensors","useSensors","useSensor","PointerSensor","KeyboardSensor","controller","values","abort","clear","revokeObjectURL","cursor","_temp2","t24","t25","t26","t27","previous","every","img","prepared","_temp3","preparedRawIds","_temp4","tempId","finalId","entries","delete","currentIds","_temp5","some","img_3","mapped","preparedIds","_temp6","img_5","controller_0","tempUrl","index_0","t28","t29","_temp7","t30","t31","_temp8","t32","t33","handleKey","key","current_0","current_1","t34","files","uploads","file_0","tempId_0","randomUUID","set","next_1","current_2","updateProgress","value","nextValue","max","current_3","item_0","controller_1","AbortController","result","tempUrl_1","current_5","item_2","t35","aborted","tempUrl_0","console","current_4","item_1","finalize","Promise","allSettled","handleFiles","target","onFileInputChange","t36","click","openFileDialog","t37","id_0","controller_2","tempUrl_2","current_6","filter","item_3","removeImage","t38","id_1","file_1","existingController","current_7","item_4","updateProgress_0","value_0","nextValue_0","current_8","item_5","controller_3","result_0","tempUrl_3","current_10","item_7","t39","current_9","item_6","retryUpload","id_2","index_1","findIndex","item_8","t40","event_1","active","handleDragStart","t41","event_2","over","activeId_0","overId","current_11","oldIndex","item_9","newIndex","item_10","arrayMove","handleDragEnd","t42","handleDragCancel","t43","clearTimeout","clearHoverTimeout","t44","bb0","fullscreenImage","t45","t46","t47","containerClasses","t48","bb1","t49","acceptAttr","bb2","tokens","split","_temp9","Boolean","_temp0","toRenderItemProps","_temp1","t50","activeItem","find","item_12","rendered","dragOverlayContent","hideActiveTile","t51","event_3","preventDefault","t52","t53","event_4","dataTransfer","t54","t55","t56","_temp10","t57","item_14","setTimeout","current_12","tileBaseClasses","t58","t59","Plus","t60","t61","t62","SortableContext","rectSortingStrategy","t63","bb3","t64","DragOverlay","overlay","t65","DndContext","closestCenter","t66","current_13","current_14","t67","item_13","item_11","token","startsWith","value_1","img_6","url_0","img_4","img_2","img_1","img_0"],"mappings":"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"}
package/dist/index80.js CHANGED
@@ -1,25 +1,50 @@
1
- //#region ../../node_modules/date-fns/_lib/protectedTokens.js
2
- var e = /^D+$/, t = /^Y+$/, n = [
3
- "D",
4
- "DD",
5
- "YY",
6
- "YYYY"
7
- ];
8
- function r(t) {
9
- return e.test(t);
1
+ import * as l from "react";
2
+ import { composeRefs as m } from "./index53.js";
3
+ import { j as u } from "./index30.js";
4
+ // @__NO_SIDE_EFFECTS__
5
+ function x(e) {
6
+ const r = /* @__PURE__ */ y(e), t = l.forwardRef((o, n) => {
7
+ const { children: i, ...c } = o, s = l.Children.toArray(i), a = s.find(g);
8
+ if (a) {
9
+ const f = a.props.children, d = s.map((p) => p === a ? l.Children.count(f) > 1 ? l.Children.only(null) : l.isValidElement(f) ? f.props.children : null : p);
10
+ return /* @__PURE__ */ u.jsx(r, { ...c, ref: n, children: l.isValidElement(f) ? l.cloneElement(f, void 0, d) : null });
11
+ }
12
+ return /* @__PURE__ */ u.jsx(r, { ...c, ref: n, children: i });
13
+ });
14
+ return t.displayName = `${e}.Slot`, t;
10
15
  }
11
- function i(e) {
12
- return t.test(e);
16
+ // @__NO_SIDE_EFFECTS__
17
+ function y(e) {
18
+ const r = l.forwardRef((t, o) => {
19
+ const { children: n, ...i } = t;
20
+ if (l.isValidElement(n)) {
21
+ const c = R(n), s = C(i, n.props);
22
+ return n.type !== l.Fragment && (s.ref = o ? m(o, c) : c), l.cloneElement(n, s);
23
+ }
24
+ return l.Children.count(n) > 1 ? l.Children.only(null) : null;
25
+ });
26
+ return r.displayName = `${e}.SlotClone`, r;
13
27
  }
14
- function a(e, t, r) {
15
- let i = o(e, t, r);
16
- if (console.warn(i), n.includes(e)) throw RangeError(i);
28
+ var E = /* @__PURE__ */ Symbol("radix.slottable");
29
+ function g(e) {
30
+ return l.isValidElement(e) && typeof e.type == "function" && "__radixId" in e.type && e.type.__radixId === E;
17
31
  }
18
- function o(e, t, n) {
19
- let r = e[0] === "Y" ? "years" : "days of the month";
20
- return `Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`;
32
+ function C(e, r) {
33
+ const t = { ...r };
34
+ for (const o in r) {
35
+ const n = e[o], i = r[o];
36
+ /^on[A-Z]/.test(o) ? n && i ? t[o] = (...s) => {
37
+ const a = i(...s);
38
+ return n(...s), a;
39
+ } : n && (t[o] = n) : o === "style" ? t[o] = { ...n, ...i } : o === "className" && (t[o] = [n, i].filter(Boolean).join(" "));
40
+ }
41
+ return { ...e, ...t };
21
42
  }
22
- //#endregion
23
- export { r as isProtectedDayOfYearToken, i as isProtectedWeekYearToken, a as warnOrThrowProtectedError };
24
-
25
- //# sourceMappingURL=index80.js.map
43
+ function R(e) {
44
+ let r = Object.getOwnPropertyDescriptor(e.props, "ref")?.get, t = r && "isReactWarning" in r && r.isReactWarning;
45
+ return t ? e.ref : (r = Object.getOwnPropertyDescriptor(e, "ref")?.get, t = r && "isReactWarning" in r && r.isReactWarning, t ? e.props.ref : e.props.ref || e.ref);
46
+ }
47
+ export {
48
+ x as createSlot
49
+ };
50
+ //# sourceMappingURL=index80.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index80.js","names":[],"sources":["../../../node_modules/date-fns/_lib/protectedTokens.js"],"sourcesContent":["const dayOfYearTokenRE = /^D+$/;\nconst weekYearTokenRE = /^Y+$/;\n\nconst throwTokens = [\"D\", \"DD\", \"YY\", \"YYYY\"];\n\nexport function isProtectedDayOfYearToken(token) {\n return dayOfYearTokenRE.test(token);\n}\n\nexport function isProtectedWeekYearToken(token) {\n return weekYearTokenRE.test(token);\n}\n\nexport function warnOrThrowProtectedError(token, format, input) {\n const _message = message(token, format, input);\n console.warn(_message);\n if (throwTokens.includes(token)) throw new RangeError(_message);\n}\n\nfunction message(token, format, input) {\n const subject = token[0] === \"Y\" ? \"years\" : \"days of the month\";\n return `Use \\`${token.toLowerCase()}\\` instead of \\`${token}\\` (in \\`${format}\\`) for formatting ${subject} to the input \\`${input}\\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`;\n}\n"],"x_google_ignoreList":[0],"mappings":";AAAA,IAAM,IAAmB,QACnB,IAAkB,QAElB,IAAc;CAAC;CAAK;CAAM;CAAM;CAAO;AAE7C,SAAgB,EAA0B,GAAO;AAC/C,QAAO,EAAiB,KAAK,EAAM;;AAGrC,SAAgB,EAAyB,GAAO;AAC9C,QAAO,EAAgB,KAAK,EAAM;;AAGpC,SAAgB,EAA0B,GAAO,GAAQ,GAAO;CAC9D,IAAM,IAAW,EAAQ,GAAO,GAAQ,EAAM;AAE9C,KADA,QAAQ,KAAK,EAAS,EAClB,EAAY,SAAS,EAAM,CAAE,OAAU,WAAW,EAAS;;AAGjE,SAAS,EAAQ,GAAO,GAAQ,GAAO;CACrC,IAAM,IAAU,EAAM,OAAO,MAAM,UAAU;AAC7C,QAAO,SAAS,EAAM,aAAa,CAAC,kBAAkB,EAAM,WAAW,EAAO,qBAAqB,EAAQ,kBAAkB,EAAM"}
1
+ {"version":3,"file":"index80.js","sources":["../../../node_modules/@radix-ui/react-primitive/node_modules/@radix-ui/react-slot/dist/index.mjs"],"sourcesContent":["// src/slot.tsx\nimport * as React from \"react\";\nimport { composeRefs } from \"@radix-ui/react-compose-refs\";\nimport { Fragment as Fragment2, jsx } from \"react/jsx-runtime\";\n// @__NO_SIDE_EFFECTS__\nfunction createSlot(ownerName) {\n const SlotClone = /* @__PURE__ */ createSlotClone(ownerName);\n const Slot2 = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n const childrenArray = React.Children.toArray(children);\n const slottable = childrenArray.find(isSlottable);\n if (slottable) {\n const newElement = slottable.props.children;\n const newChildren = childrenArray.map((child) => {\n if (child === slottable) {\n if (React.Children.count(newElement) > 1) return React.Children.only(null);\n return React.isValidElement(newElement) ? newElement.props.children : null;\n } else {\n return child;\n }\n });\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: React.isValidElement(newElement) ? React.cloneElement(newElement, void 0, newChildren) : null });\n }\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children });\n });\n Slot2.displayName = `${ownerName}.Slot`;\n return Slot2;\n}\nvar Slot = /* @__PURE__ */ createSlot(\"Slot\");\n// @__NO_SIDE_EFFECTS__\nfunction createSlotClone(ownerName) {\n const SlotClone = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n if (React.isValidElement(children)) {\n const childrenRef = getElementRef(children);\n const props2 = mergeProps(slotProps, children.props);\n if (children.type !== React.Fragment) {\n props2.ref = forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef;\n }\n return React.cloneElement(children, props2);\n }\n return React.Children.count(children) > 1 ? React.Children.only(null) : null;\n });\n SlotClone.displayName = `${ownerName}.SlotClone`;\n return SlotClone;\n}\nvar SLOTTABLE_IDENTIFIER = Symbol(\"radix.slottable\");\n// @__NO_SIDE_EFFECTS__\nfunction createSlottable(ownerName) {\n const Slottable2 = ({ children }) => {\n return /* @__PURE__ */ jsx(Fragment2, { children });\n };\n Slottable2.displayName = `${ownerName}.Slottable`;\n Slottable2.__radixId = SLOTTABLE_IDENTIFIER;\n return Slottable2;\n}\nvar Slottable = /* @__PURE__ */ createSlottable(\"Slottable\");\nfunction isSlottable(child) {\n return React.isValidElement(child) && typeof child.type === \"function\" && \"__radixId\" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;\n}\nfunction mergeProps(slotProps, childProps) {\n const overrideProps = { ...childProps };\n for (const propName in childProps) {\n const slotPropValue = slotProps[propName];\n const childPropValue = childProps[propName];\n const isHandler = /^on[A-Z]/.test(propName);\n if (isHandler) {\n if (slotPropValue && childPropValue) {\n overrideProps[propName] = (...args) => {\n const result = childPropValue(...args);\n slotPropValue(...args);\n return result;\n };\n } else if (slotPropValue) {\n overrideProps[propName] = slotPropValue;\n }\n } else if (propName === \"style\") {\n overrideProps[propName] = { ...slotPropValue, ...childPropValue };\n } else if (propName === \"className\") {\n overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(\" \");\n }\n }\n return { ...slotProps, ...overrideProps };\n}\nfunction getElementRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nexport {\n Slot as Root,\n Slot,\n Slottable,\n createSlot,\n createSlottable\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["createSlot","ownerName","SlotClone","createSlotClone","Slot2","React","props","forwardedRef","children","slotProps","childrenArray","slottable","isSlottable","newElement","newChildren","child","jsx","childrenRef","getElementRef","props2","mergeProps","composeRefs","SLOTTABLE_IDENTIFIER","childProps","overrideProps","propName","slotPropValue","childPropValue","args","result","element","getter","mayWarn"],"mappings":"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","x_google_ignoreList":[0]}
package/dist/index81.js CHANGED
@@ -1,61 +1,9 @@
1
- import e from "./index32.js";
2
- import { getDefaultOptions as t } from "./index35.js";
3
- import n from "./index50.js";
4
- import r from "./index70.js";
5
- import { formatters as i } from "./index78.js";
6
- import { longFormatters as a } from "./index79.js";
7
- import { isProtectedDayOfYearToken as o, isProtectedWeekYearToken as s, warnOrThrowProtectedError as c } from "./index80.js";
8
- //#region ../../node_modules/date-fns/format.js
9
- var l = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g, u = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g, d = /^'([^]*?)'?$/, f = /''/g, p = /[a-zA-Z]/;
10
- function m(d, f, m) {
11
- let g = t(), _ = m?.locale ?? g.locale ?? r, v = m?.firstWeekContainsDate ?? m?.locale?.options?.firstWeekContainsDate ?? g.firstWeekContainsDate ?? g.locale?.options?.firstWeekContainsDate ?? 1, y = m?.weekStartsOn ?? m?.locale?.options?.weekStartsOn ?? g.weekStartsOn ?? g.locale?.options?.weekStartsOn ?? 0, b = e(d, m?.in);
12
- if (!n(b)) throw RangeError("Invalid time value");
13
- let x = f.match(u).map((e) => {
14
- let t = e[0];
15
- if (t === "p" || t === "P") {
16
- let n = a[t];
17
- return n(e, _.formatLong);
18
- }
19
- return e;
20
- }).join("").match(l).map((e) => {
21
- if (e === "''") return {
22
- isToken: !1,
23
- value: "'"
24
- };
25
- let t = e[0];
26
- if (t === "'") return {
27
- isToken: !1,
28
- value: h(e)
29
- };
30
- if (i[t]) return {
31
- isToken: !0,
32
- value: e
33
- };
34
- if (t.match(p)) throw RangeError("Format string contains an unescaped latin alphabet character `" + t + "`");
35
- return {
36
- isToken: !1,
37
- value: e
38
- };
39
- });
40
- _.localize.preprocessor && (x = _.localize.preprocessor(b, x));
41
- let S = {
42
- firstWeekContainsDate: v,
43
- weekStartsOn: y,
44
- locale: _
45
- };
46
- return x.map((e) => {
47
- if (!e.isToken) return e.value;
48
- let t = e.value;
49
- (!m?.useAdditionalWeekYearTokens && s(t) || !m?.useAdditionalDayOfYearTokens && o(t)) && c(t, f, String(d));
50
- let n = i[t[0]];
51
- return n(b, t, _.localize, S);
52
- }).join("");
1
+ import e from "./index83.js";
2
+ function o(a, r) {
3
+ var t = Array.prototype.slice.call(r);
4
+ return t.push(e), a.apply(this, t);
53
5
  }
54
- function h(e) {
55
- let t = e.match(d);
56
- return t ? t[1].replace(f, "'") : e;
57
- }
58
- //#endregion
59
- export { m as default };
60
-
61
- //# sourceMappingURL=index81.js.map
6
+ export {
7
+ o as default
8
+ };
9
+ //# sourceMappingURL=index81.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index81.js","names":["defaultLocale"],"sources":["../../../node_modules/date-fns/format.js"],"sourcesContent":["import { defaultLocale } from \"./_lib/defaultLocale.js\";\nimport { getDefaultOptions } from \"./_lib/defaultOptions.js\";\nimport { formatters } from \"./_lib/format/formatters.js\";\nimport { longFormatters } from \"./_lib/format/longFormatters.js\";\nimport {\n isProtectedDayOfYearToken,\n isProtectedWeekYearToken,\n warnOrThrowProtectedError,\n} from \"./_lib/protectedTokens.js\";\nimport { isValid } from \"./isValid.js\";\nimport { toDate } from \"./toDate.js\";\n\n// Rexports of internal for libraries to use.\n// See: https://github.com/date-fns/date-fns/issues/3638#issuecomment-1877082874\nexport { formatters, longFormatters };\n\n// This RegExp consists of three parts separated by `|`:\n// - [yYQqMLwIdDecihHKkms]o matches any available ordinal number token\n// (one of the certain letters followed by `o`)\n// - (\\w)\\1* matches any sequences of the same letter\n// - '' matches two quote characters in a row\n// - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('),\n// except a single quote symbol, which ends the sequence.\n// Two quote characters do not end the sequence.\n// If there is no matching single quote\n// then the sequence will continue until the end of the string.\n// - . matches any single character unmatched by previous parts of the RegExps\nconst formattingTokensRegExp =\n /[yYQqMLwIdDecihHKkms]o|(\\w)\\1*|''|'(''|[^'])+('|$)|./g;\n\n// This RegExp catches symbols escaped by quotes, and also\n// sequences of symbols P, p, and the combinations like `PPPPPPPppppp`\nconst longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;\n\nconst escapedStringRegExp = /^'([^]*?)'?$/;\nconst doubleQuoteRegExp = /''/g;\nconst unescapedLatinCharacterRegExp = /[a-zA-Z]/;\n\nexport { format as formatDate };\n\n/**\n * The {@link format} function options.\n */\n\n/**\n * @name format\n * @alias formatDate\n * @category Common Helpers\n * @summary Format the date.\n *\n * @description\n * Return the formatted date string in the given format. The result may vary by locale.\n *\n * > ⚠️ Please note that the `format` tokens differ from Moment.js and other libraries.\n * > See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * The characters wrapped between two single quotes characters (') are escaped.\n * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote.\n * (see the last example)\n *\n * Format of the string is based on Unicode Technical Standard #35:\n * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * with a few additions (see note 7 below the table).\n *\n * Accepted patterns:\n * | Unit | Pattern | Result examples | Notes |\n * |---------------------------------|---------|-----------------------------------|-------|\n * | Era | G..GGG | AD, BC | |\n * | | GGGG | Anno Domini, Before Christ | 2 |\n * | | GGGGG | A, B | |\n * | Calendar year | y | 44, 1, 1900, 2017 | 5 |\n * | | yo | 44th, 1st, 0th, 17th | 5,7 |\n * | | yy | 44, 01, 00, 17 | 5 |\n * | | yyy | 044, 001, 1900, 2017 | 5 |\n * | | yyyy | 0044, 0001, 1900, 2017 | 5 |\n * | | yyyyy | ... | 3,5 |\n * | Local week-numbering year | Y | 44, 1, 1900, 2017 | 5 |\n * | | Yo | 44th, 1st, 1900th, 2017th | 5,7 |\n * | | YY | 44, 01, 00, 17 | 5,8 |\n * | | YYY | 044, 001, 1900, 2017 | 5 |\n * | | YYYY | 0044, 0001, 1900, 2017 | 5,8 |\n * | | YYYYY | ... | 3,5 |\n * | ISO week-numbering year | R | -43, 0, 1, 1900, 2017 | 5,7 |\n * | | RR | -43, 00, 01, 1900, 2017 | 5,7 |\n * | | RRR | -043, 000, 001, 1900, 2017 | 5,7 |\n * | | RRRR | -0043, 0000, 0001, 1900, 2017 | 5,7 |\n * | | RRRRR | ... | 3,5,7 |\n * | Extended year | u | -43, 0, 1, 1900, 2017 | 5 |\n * | | uu | -43, 01, 1900, 2017 | 5 |\n * | | uuu | -043, 001, 1900, 2017 | 5 |\n * | | uuuu | -0043, 0001, 1900, 2017 | 5 |\n * | | uuuuu | ... | 3,5 |\n * | Quarter (formatting) | Q | 1, 2, 3, 4 | |\n * | | Qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | QQ | 01, 02, 03, 04 | |\n * | | QQQ | Q1, Q2, Q3, Q4 | |\n * | | QQQQ | 1st quarter, 2nd quarter, ... | 2 |\n * | | QQQQQ | 1, 2, 3, 4 | 4 |\n * | Quarter (stand-alone) | q | 1, 2, 3, 4 | |\n * | | qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | qq | 01, 02, 03, 04 | |\n * | | qqq | Q1, Q2, Q3, Q4 | |\n * | | qqqq | 1st quarter, 2nd quarter, ... | 2 |\n * | | qqqqq | 1, 2, 3, 4 | 4 |\n * | Month (formatting) | M | 1, 2, ..., 12 | |\n * | | Mo | 1st, 2nd, ..., 12th | 7 |\n * | | MM | 01, 02, ..., 12 | |\n * | | MMM | Jan, Feb, ..., Dec | |\n * | | MMMM | January, February, ..., December | 2 |\n * | | MMMMM | J, F, ..., D | |\n * | Month (stand-alone) | L | 1, 2, ..., 12 | |\n * | | Lo | 1st, 2nd, ..., 12th | 7 |\n * | | LL | 01, 02, ..., 12 | |\n * | | LLL | Jan, Feb, ..., Dec | |\n * | | LLLL | January, February, ..., December | 2 |\n * | | LLLLL | J, F, ..., D | |\n * | Local week of year | w | 1, 2, ..., 53 | |\n * | | wo | 1st, 2nd, ..., 53th | 7 |\n * | | ww | 01, 02, ..., 53 | |\n * | ISO week of year | I | 1, 2, ..., 53 | 7 |\n * | | Io | 1st, 2nd, ..., 53th | 7 |\n * | | II | 01, 02, ..., 53 | 7 |\n * | Day of month | d | 1, 2, ..., 31 | |\n * | | do | 1st, 2nd, ..., 31st | 7 |\n * | | dd | 01, 02, ..., 31 | |\n * | Day of year | D | 1, 2, ..., 365, 366 | 9 |\n * | | Do | 1st, 2nd, ..., 365th, 366th | 7 |\n * | | DD | 01, 02, ..., 365, 366 | 9 |\n * | | DDD | 001, 002, ..., 365, 366 | |\n * | | DDDD | ... | 3 |\n * | Day of week (formatting) | E..EEE | Mon, Tue, Wed, ..., Sun | |\n * | | EEEE | Monday, Tuesday, ..., Sunday | 2 |\n * | | EEEEE | M, T, W, T, F, S, S | |\n * | | EEEEEE | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | ISO day of week (formatting) | i | 1, 2, 3, ..., 7 | 7 |\n * | | io | 1st, 2nd, ..., 7th | 7 |\n * | | ii | 01, 02, ..., 07 | 7 |\n * | | iii | Mon, Tue, Wed, ..., Sun | 7 |\n * | | iiii | Monday, Tuesday, ..., Sunday | 2,7 |\n * | | iiiii | M, T, W, T, F, S, S | 7 |\n * | | iiiiii | Mo, Tu, We, Th, Fr, Sa, Su | 7 |\n * | Local day of week (formatting) | e | 2, 3, 4, ..., 1 | |\n * | | eo | 2nd, 3rd, ..., 1st | 7 |\n * | | ee | 02, 03, ..., 01 | |\n * | | eee | Mon, Tue, Wed, ..., Sun | |\n * | | eeee | Monday, Tuesday, ..., Sunday | 2 |\n * | | eeeee | M, T, W, T, F, S, S | |\n * | | eeeeee | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | Local day of week (stand-alone) | c | 2, 3, 4, ..., 1 | |\n * | | co | 2nd, 3rd, ..., 1st | 7 |\n * | | cc | 02, 03, ..., 01 | |\n * | | ccc | Mon, Tue, Wed, ..., Sun | |\n * | | cccc | Monday, Tuesday, ..., Sunday | 2 |\n * | | ccccc | M, T, W, T, F, S, S | |\n * | | cccccc | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | AM, PM | a..aa | AM, PM | |\n * | | aaa | am, pm | |\n * | | aaaa | a.m., p.m. | 2 |\n * | | aaaaa | a, p | |\n * | AM, PM, noon, midnight | b..bb | AM, PM, noon, midnight | |\n * | | bbb | am, pm, noon, midnight | |\n * | | bbbb | a.m., p.m., noon, midnight | 2 |\n * | | bbbbb | a, p, n, mi | |\n * | Flexible day period | B..BBB | at night, in the morning, ... | |\n * | | BBBB | at night, in the morning, ... | 2 |\n * | | BBBBB | at night, in the morning, ... | |\n * | Hour [1-12] | h | 1, 2, ..., 11, 12 | |\n * | | ho | 1st, 2nd, ..., 11th, 12th | 7 |\n * | | hh | 01, 02, ..., 11, 12 | |\n * | Hour [0-23] | H | 0, 1, 2, ..., 23 | |\n * | | Ho | 0th, 1st, 2nd, ..., 23rd | 7 |\n * | | HH | 00, 01, 02, ..., 23 | |\n * | Hour [0-11] | K | 1, 2, ..., 11, 0 | |\n * | | Ko | 1st, 2nd, ..., 11th, 0th | 7 |\n * | | KK | 01, 02, ..., 11, 00 | |\n * | Hour [1-24] | k | 24, 1, 2, ..., 23 | |\n * | | ko | 24th, 1st, 2nd, ..., 23rd | 7 |\n * | | kk | 24, 01, 02, ..., 23 | |\n * | Minute | m | 0, 1, ..., 59 | |\n * | | mo | 0th, 1st, ..., 59th | 7 |\n * | | mm | 00, 01, ..., 59 | |\n * | Second | s | 0, 1, ..., 59 | |\n * | | so | 0th, 1st, ..., 59th | 7 |\n * | | ss | 00, 01, ..., 59 | |\n * | Fraction of second | S | 0, 1, ..., 9 | |\n * | | SS | 00, 01, ..., 99 | |\n * | | SSS | 000, 001, ..., 999 | |\n * | | SSSS | ... | 3 |\n * | Timezone (ISO-8601 w/ Z) | X | -08, +0530, Z | |\n * | | XX | -0800, +0530, Z | |\n * | | XXX | -08:00, +05:30, Z | |\n * | | XXXX | -0800, +0530, Z, +123456 | 2 |\n * | | XXXXX | -08:00, +05:30, Z, +12:34:56 | |\n * | Timezone (ISO-8601 w/o Z) | x | -08, +0530, +00 | |\n * | | xx | -0800, +0530, +0000 | |\n * | | xxx | -08:00, +05:30, +00:00 | 2 |\n * | | xxxx | -0800, +0530, +0000, +123456 | |\n * | | xxxxx | -08:00, +05:30, +00:00, +12:34:56 | |\n * | Timezone (GMT) | O...OOO | GMT-8, GMT+5:30, GMT+0 | |\n * | | OOOO | GMT-08:00, GMT+05:30, GMT+00:00 | 2 |\n * | Timezone (specific non-locat.) | z...zzz | GMT-8, GMT+5:30, GMT+0 | 6 |\n * | | zzzz | GMT-08:00, GMT+05:30, GMT+00:00 | 2,6 |\n * | Seconds timestamp | t | 512969520 | 7 |\n * | | tt | ... | 3,7 |\n * | Milliseconds timestamp | T | 512969520900 | 7 |\n * | | TT | ... | 3,7 |\n * | Long localized date | P | 04/29/1453 | 7 |\n * | | PP | Apr 29, 1453 | 7 |\n * | | PPP | April 29th, 1453 | 7 |\n * | | PPPP | Friday, April 29th, 1453 | 2,7 |\n * | Long localized time | p | 12:00 AM | 7 |\n * | | pp | 12:00:00 AM | 7 |\n * | | ppp | 12:00:00 AM GMT+2 | 7 |\n * | | pppp | 12:00:00 AM GMT+02:00 | 2,7 |\n * | Combination of date and time | Pp | 04/29/1453, 12:00 AM | 7 |\n * | | PPpp | Apr 29, 1453, 12:00:00 AM | 7 |\n * | | PPPppp | April 29th, 1453 at ... | 7 |\n * | | PPPPpppp| Friday, April 29th, 1453 at ... | 2,7 |\n * Notes:\n * 1. \"Formatting\" units (e.g. formatting quarter) in the default en-US locale\n * are the same as \"stand-alone\" units, but are different in some languages.\n * \"Formatting\" units are declined according to the rules of the language\n * in the context of a date. \"Stand-alone\" units are always nominative singular:\n *\n * `format(new Date(2017, 10, 6), 'do LLLL', {locale: cs}) //=> '6. listopad'`\n *\n * `format(new Date(2017, 10, 6), 'do MMMM', {locale: cs}) //=> '6. listopadu'`\n *\n * 2. Any sequence of the identical letters is a pattern, unless it is escaped by\n * the single quote characters (see below).\n * If the sequence is longer than listed in table (e.g. `EEEEEEEEEEE`)\n * the output will be the same as default pattern for this unit, usually\n * the longest one (in case of ISO weekdays, `EEEE`). Default patterns for units\n * are marked with \"2\" in the last column of the table.\n *\n * `format(new Date(2017, 10, 6), 'MMM') //=> 'Nov'`\n *\n * `format(new Date(2017, 10, 6), 'MMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMM') //=> 'N'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMMM') //=> 'November'`\n *\n * 3. Some patterns could be unlimited length (such as `yyyyyyyy`).\n * The output will be padded with zeros to match the length of the pattern.\n *\n * `format(new Date(2017, 10, 6), 'yyyyyyyy') //=> '00002017'`\n *\n * 4. `QQQQQ` and `qqqqq` could be not strictly numerical in some locales.\n * These tokens represent the shortest form of the quarter.\n *\n * 5. The main difference between `y` and `u` patterns are B.C. years:\n *\n * | Year | `y` | `u` |\n * |------|-----|-----|\n * | AC 1 | 1 | 1 |\n * | BC 1 | 1 | 0 |\n * | BC 2 | 2 | -1 |\n *\n * Also `yy` always returns the last two digits of a year,\n * while `uu` pads single digit years to 2 characters and returns other years unchanged:\n *\n * | Year | `yy` | `uu` |\n * |------|------|------|\n * | 1 | 01 | 01 |\n * | 14 | 14 | 14 |\n * | 376 | 76 | 376 |\n * | 1453 | 53 | 1453 |\n *\n * The same difference is true for local and ISO week-numbering years (`Y` and `R`),\n * except local week-numbering years are dependent on `options.weekStartsOn`\n * and `options.firstWeekContainsDate` (compare [getISOWeekYear](https://date-fns.org/docs/getISOWeekYear)\n * and [getWeekYear](https://date-fns.org/docs/getWeekYear)).\n *\n * 6. Specific non-location timezones are currently unavailable in `date-fns`,\n * so right now these tokens fall back to GMT timezones.\n *\n * 7. These patterns are not in the Unicode Technical Standard #35:\n * - `i`: ISO day of week\n * - `I`: ISO week of year\n * - `R`: ISO week-numbering year\n * - `t`: seconds timestamp\n * - `T`: milliseconds timestamp\n * - `o`: ordinal number modifier\n * - `P`: long localized date\n * - `p`: long localized time\n *\n * 8. `YY` and `YYYY` tokens represent week-numbering years but they are often confused with years.\n * You should enable `options.useAdditionalWeekYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * 9. `D` and `DD` tokens represent days of the year but they are often confused with days of the month.\n * You should enable `options.useAdditionalDayOfYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * @param date - The original date\n * @param format - The string of tokens\n * @param options - An object with options\n *\n * @returns The formatted date string\n *\n * @throws `date` must not be Invalid Date\n * @throws `options.locale` must contain `localize` property\n * @throws `options.locale` must contain `formatLong` property\n * @throws use `yyyy` instead of `YYYY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws use `yy` instead of `YY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws use `d` instead of `D` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws use `dd` instead of `DD` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws format string contains an unescaped latin alphabet character\n *\n * @example\n * // Represent 11 February 2014 in middle-endian format:\n * const result = format(new Date(2014, 1, 11), 'MM/dd/yyyy')\n * //=> '02/11/2014'\n *\n * @example\n * // Represent 2 July 2014 in Esperanto:\n * import { eoLocale } from 'date-fns/locale/eo'\n * const result = format(new Date(2014, 6, 2), \"do 'de' MMMM yyyy\", {\n * locale: eoLocale\n * })\n * //=> '2-a de julio 2014'\n *\n * @example\n * // Escape string by single quote characters:\n * const result = format(new Date(2014, 6, 2, 15), \"h 'o''clock'\")\n * //=> \"3 o'clock\"\n */\nexport function format(date, formatStr, options) {\n const defaultOptions = getDefaultOptions();\n const locale = options?.locale ?? defaultOptions.locale ?? defaultLocale;\n\n const firstWeekContainsDate =\n options?.firstWeekContainsDate ??\n options?.locale?.options?.firstWeekContainsDate ??\n defaultOptions.firstWeekContainsDate ??\n defaultOptions.locale?.options?.firstWeekContainsDate ??\n 1;\n\n const weekStartsOn =\n options?.weekStartsOn ??\n options?.locale?.options?.weekStartsOn ??\n defaultOptions.weekStartsOn ??\n defaultOptions.locale?.options?.weekStartsOn ??\n 0;\n\n const originalDate = toDate(date, options?.in);\n\n if (!isValid(originalDate)) {\n throw new RangeError(\"Invalid time value\");\n }\n\n let parts = formatStr\n .match(longFormattingTokensRegExp)\n .map((substring) => {\n const firstCharacter = substring[0];\n if (firstCharacter === \"p\" || firstCharacter === \"P\") {\n const longFormatter = longFormatters[firstCharacter];\n return longFormatter(substring, locale.formatLong);\n }\n return substring;\n })\n .join(\"\")\n .match(formattingTokensRegExp)\n .map((substring) => {\n // Replace two single quote characters with one single quote character\n if (substring === \"''\") {\n return { isToken: false, value: \"'\" };\n }\n\n const firstCharacter = substring[0];\n if (firstCharacter === \"'\") {\n return { isToken: false, value: cleanEscapedString(substring) };\n }\n\n if (formatters[firstCharacter]) {\n return { isToken: true, value: substring };\n }\n\n if (firstCharacter.match(unescapedLatinCharacterRegExp)) {\n throw new RangeError(\n \"Format string contains an unescaped latin alphabet character `\" +\n firstCharacter +\n \"`\",\n );\n }\n\n return { isToken: false, value: substring };\n });\n\n // invoke localize preprocessor (only for french locales at the moment)\n if (locale.localize.preprocessor) {\n parts = locale.localize.preprocessor(originalDate, parts);\n }\n\n const formatterOptions = {\n firstWeekContainsDate,\n weekStartsOn,\n locale,\n };\n\n return parts\n .map((part) => {\n if (!part.isToken) return part.value;\n\n const token = part.value;\n\n if (\n (!options?.useAdditionalWeekYearTokens &&\n isProtectedWeekYearToken(token)) ||\n (!options?.useAdditionalDayOfYearTokens &&\n isProtectedDayOfYearToken(token))\n ) {\n warnOrThrowProtectedError(token, formatStr, String(date));\n }\n\n const formatter = formatters[token[0]];\n return formatter(originalDate, token, locale.localize, formatterOptions);\n })\n .join(\"\");\n}\n\nfunction cleanEscapedString(input) {\n const matched = input.match(escapedStringRegExp);\n\n if (!matched) {\n return input;\n }\n\n return matched[1].replace(doubleQuoteRegExp, \"'\");\n}\n\n// Fallback for modularized imports:\nexport default format;\n"],"x_google_ignoreList":[0],"mappings":";;;;;;;;AA2BA,IAAM,IACJ,yDAII,IAA6B,qCAE7B,IAAsB,gBACtB,IAAoB,OACpB,IAAgC;AAoStC,SAAgB,EAAO,GAAM,GAAW,GAAS;CAC/C,IAAM,IAAiB,GAAmB,EACpC,IAAS,GAAS,UAAU,EAAe,UAAUA,GAErD,IACJ,GAAS,yBACT,GAAS,QAAQ,SAAS,yBAC1B,EAAe,yBACf,EAAe,QAAQ,SAAS,yBAChC,GAEI,IACJ,GAAS,gBACT,GAAS,QAAQ,SAAS,gBAC1B,EAAe,gBACf,EAAe,QAAQ,SAAS,gBAChC,GAEI,IAAe,EAAO,GAAM,GAAS,GAAG;AAE9C,KAAI,CAAC,EAAQ,EAAa,CACxB,OAAU,WAAW,qBAAqB;CAG5C,IAAI,IAAQ,EACT,MAAM,EAA2B,CACjC,KAAK,MAAc;EAClB,IAAM,IAAiB,EAAU;AACjC,MAAI,MAAmB,OAAO,MAAmB,KAAK;GACpD,IAAM,IAAgB,EAAe;AACrC,UAAO,EAAc,GAAW,EAAO,WAAW;;AAEpD,SAAO;GACP,CACD,KAAK,GAAG,CACR,MAAM,EAAuB,CAC7B,KAAK,MAAc;AAElB,MAAI,MAAc,KAChB,QAAO;GAAE,SAAS;GAAO,OAAO;GAAK;EAGvC,IAAM,IAAiB,EAAU;AACjC,MAAI,MAAmB,IACrB,QAAO;GAAE,SAAS;GAAO,OAAO,EAAmB,EAAU;GAAE;AAGjE,MAAI,EAAW,GACb,QAAO;GAAE,SAAS;GAAM,OAAO;GAAW;AAG5C,MAAI,EAAe,MAAM,EAA8B,CACrD,OAAU,WACR,mEACE,IACA,IACH;AAGH,SAAO;GAAE,SAAS;GAAO,OAAO;GAAW;GAC3C;AAGJ,CAAI,EAAO,SAAS,iBAClB,IAAQ,EAAO,SAAS,aAAa,GAAc,EAAM;CAG3D,IAAM,IAAmB;EACvB;EACA;EACA;EACD;AAED,QAAO,EACJ,KAAK,MAAS;AACb,MAAI,CAAC,EAAK,QAAS,QAAO,EAAK;EAE/B,IAAM,IAAQ,EAAK;AAEnB,GACG,CAAC,GAAS,+BACT,EAAyB,EAAM,IAChC,CAAC,GAAS,gCACT,EAA0B,EAAM,KAElC,EAA0B,GAAO,GAAW,OAAO,EAAK,CAAC;EAG3D,IAAM,IAAY,EAAW,EAAM;AACnC,SAAO,EAAU,GAAc,GAAO,EAAO,UAAU,EAAiB;GACxE,CACD,KAAK,GAAG;;AAGb,SAAS,EAAmB,GAAO;CACjC,IAAM,IAAU,EAAM,MAAM,EAAoB;AAMhD,QAJK,IAIE,EAAQ,GAAG,QAAQ,GAAmB,IAAI,GAHxC"}
1
+ {"version":3,"file":"index81.js","sources":["../../../node_modules/libphonenumber-js/min/exports/withMetadataArgument.js"],"sourcesContent":["// Importing from a \".js\" file is a workaround for Node.js \"ES Modules\"\r\n// importing system which is even uncapable of importing \"*.json\" files.\r\nimport metadata from '../../metadata.min.json.js'\r\n\r\nexport default function withMetadataArgument(func, _arguments) {\r\n\tvar args = Array.prototype.slice.call(_arguments)\r\n\targs.push(metadata)\r\n\treturn func.apply(this, args)\r\n}"],"names":["withMetadataArgument","func","_arguments","args","metadata"],"mappings":";AAIe,SAASA,EAAqBC,GAAMC,GAAY;AAC9D,MAAIC,IAAO,MAAM,UAAU,MAAM,KAAKD,CAAU;AAChD,SAAAC,EAAK,KAAKC,CAAQ,GACXH,EAAK,MAAM,MAAME,CAAI;AAC7B;","x_google_ignoreList":[0]}
package/dist/index82.js CHANGED
@@ -1,11 +1,72 @@
1
- import e from "./index31.js";
2
- import t from "./index32.js";
3
- //#region ../../node_modules/date-fns/getDaysInMonth.js
4
- function n(n, r) {
5
- let i = t(n, r?.in), a = i.getFullYear(), o = i.getMonth(), s = e(i, 0);
6
- return s.setFullYear(a, o + 1, 0), s.setHours(0, 0, 0, 0), s.getDate();
7
- }
8
- //#endregion
9
- export { n as default };
10
-
11
- //# sourceMappingURL=index82.js.map
1
+ import m from "./index188.js";
2
+ import p from "./index189.js";
3
+ import y from "./index187.js";
4
+ import b from "./index95.js";
5
+ import l from "./index179.js";
6
+ function i(e) {
7
+ "@babel/helpers - typeof";
8
+ return i = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(r) {
9
+ return typeof r;
10
+ } : function(r) {
11
+ return r && typeof Symbol == "function" && r.constructor === Symbol && r !== Symbol.prototype ? "symbol" : typeof r;
12
+ }, i(e);
13
+ }
14
+ function c(e, r) {
15
+ var t = Object.keys(e);
16
+ if (Object.getOwnPropertySymbols) {
17
+ var o = Object.getOwnPropertySymbols(e);
18
+ r && (o = o.filter(function(n) {
19
+ return Object.getOwnPropertyDescriptor(e, n).enumerable;
20
+ })), t.push.apply(t, o);
21
+ }
22
+ return t;
23
+ }
24
+ function f(e) {
25
+ for (var r = 1; r < arguments.length; r++) {
26
+ var t = arguments[r] != null ? arguments[r] : {};
27
+ r % 2 ? c(Object(t), !0).forEach(function(o) {
28
+ s(e, o, t[o]);
29
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : c(Object(t)).forEach(function(o) {
30
+ Object.defineProperty(e, o, Object.getOwnPropertyDescriptor(t, o));
31
+ });
32
+ }
33
+ return e;
34
+ }
35
+ function s(e, r, t) {
36
+ return (r = g(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e;
37
+ }
38
+ function g(e) {
39
+ var r = O(e, "string");
40
+ return i(r) == "symbol" ? r : r + "";
41
+ }
42
+ function O(e, r) {
43
+ if (i(e) != "object" || !e) return e;
44
+ var t = e[Symbol.toPrimitive];
45
+ if (t !== void 0) {
46
+ var o = t.call(e, r);
47
+ if (i(o) != "object") return o;
48
+ throw new TypeError("@@toPrimitive must return a primitive value.");
49
+ }
50
+ return (r === "string" ? String : Number)(e);
51
+ }
52
+ function h() {
53
+ var e = m(arguments), r = e.text, t = e.options, o = e.metadata;
54
+ t = f(f({}, t), {}, {
55
+ extract: !1
56
+ });
57
+ try {
58
+ var n = p(r, t, o);
59
+ o = new b(o), o.selectNumberingPlan(n.countryCallingCode);
60
+ var u = l(n.nationalNumber, n.country, o);
61
+ if (u !== "IS_POSSIBLE")
62
+ return u;
63
+ } catch (a) {
64
+ if (a instanceof y)
65
+ return a.message;
66
+ throw a;
67
+ }
68
+ }
69
+ export {
70
+ h as default
71
+ };
72
+ //# sourceMappingURL=index82.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index82.js","names":[],"sources":["../../../node_modules/date-fns/getDaysInMonth.js"],"sourcesContent":["import { constructFrom } from \"./constructFrom.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link getDaysInMonth} function options.\n */\n\n/**\n * @name getDaysInMonth\n * @category Month Helpers\n * @summary Get the number of days in a month of the given date.\n *\n * @description\n * Get the number of days in a month of the given date, considering the context if provided.\n *\n * @param date - The given date\n * @param options - An object with options\n *\n * @returns The number of days in a month\n *\n * @example\n * // How many days are in February 2000?\n * const result = getDaysInMonth(new Date(2000, 1))\n * //=> 29\n */\nexport function getDaysInMonth(date, options) {\n const _date = toDate(date, options?.in);\n const year = _date.getFullYear();\n const monthIndex = _date.getMonth();\n const lastDayOfMonth = constructFrom(_date, 0);\n lastDayOfMonth.setFullYear(year, monthIndex + 1, 0);\n lastDayOfMonth.setHours(0, 0, 0, 0);\n return lastDayOfMonth.getDate();\n}\n\n// Fallback for modularized imports:\nexport default getDaysInMonth;\n"],"x_google_ignoreList":[0],"mappings":";;;AAyBA,SAAgB,EAAe,GAAM,GAAS;CAC5C,IAAM,IAAQ,EAAO,GAAM,GAAS,GAAG,EACjC,IAAO,EAAM,aAAa,EAC1B,IAAa,EAAM,UAAU,EAC7B,IAAiB,EAAc,GAAO,EAAE;AAG9C,QAFA,EAAe,YAAY,GAAM,IAAa,GAAG,EAAE,EACnD,EAAe,SAAS,GAAG,GAAG,GAAG,EAAE,EAC5B,EAAe,SAAS"}
1
+ {"version":3,"file":"index82.js","sources":["../../../node_modules/libphonenumber-js/es6/validatePhoneNumberLength.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 ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, 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); }\nimport normalizeArguments from './normalizeArguments.js';\nimport parsePhoneNumberWithError from './parsePhoneNumberWithError_.js';\nimport ParseError from './ParseError.js';\nimport Metadata from './metadata.js';\nimport checkNumberLength from './helpers/checkNumberLength.js';\nexport default function validatePhoneNumberLength() {\n var _normalizeArguments = normalizeArguments(arguments),\n text = _normalizeArguments.text,\n options = _normalizeArguments.options,\n metadata = _normalizeArguments.metadata;\n options = _objectSpread(_objectSpread({}, options), {}, {\n extract: false\n });\n\n // Parse phone number.\n try {\n var phoneNumber = parsePhoneNumberWithError(text, options, metadata);\n metadata = new Metadata(metadata);\n metadata.selectNumberingPlan(phoneNumber.countryCallingCode);\n var result = checkNumberLength(phoneNumber.nationalNumber, phoneNumber.country, metadata);\n if (result !== 'IS_POSSIBLE') {\n return result;\n }\n } catch (error) {\n /* istanbul ignore else */\n if (error instanceof ParseError) {\n return error.message;\n } else {\n throw error;\n }\n }\n}\n//# sourceMappingURL=validatePhoneNumberLength.js.map"],"names":["_typeof","o","ownKeys","r","_objectSpread","_defineProperty","_toPropertyKey","t","i","_toPrimitive","e","validatePhoneNumberLength","_normalizeArguments","normalizeArguments","text","options","metadata","phoneNumber","parsePhoneNumberWithError","Metadata","result","checkNumberLength","error","ParseError"],"mappings":";;;;;AAAA,SAASA,EAAQC,GAAG;AAAE;AAA2B,SAAOD,IAAwB,OAAO,UAArB,cAA2C,OAAO,OAAO,YAA1B,WAAqC,SAAUC,GAAG;AAAE,WAAO,OAAOA;AAAA,EAAG,IAAI,SAAUA,GAAG;AAAE,WAAOA,KAAmB,OAAO,UAArB,cAA+BA,EAAE,gBAAgB,UAAUA,MAAM,OAAO,YAAY,WAAW,OAAOA;AAAA,EAAG,GAAGD,EAAQC,CAAC;AAAG;AAC7T,SAASC,EAAQ,GAAG,GAAG;AAAE,MAAI,IAAI,OAAO,KAAK,CAAC;AAAG,MAAI,OAAO,uBAAuB;AAAE,QAAI,IAAI,OAAO,sBAAsB,CAAC;AAAG,UAAM,IAAI,EAAE,OAAO,SAAUC,GAAG;AAAE,aAAO,OAAO,yBAAyB,GAAGA,CAAC,EAAE;AAAA,IAAY,CAAC,IAAI,EAAE,KAAK,MAAM,GAAG,CAAC;AAAA,EAAG;AAAE,SAAO;AAAG;AAC9P,SAASC,EAAc,GAAG;AAAE,WAAS,IAAI,GAAG,IAAI,UAAU,QAAQ,KAAK;AAAE,QAAI,IAAY,UAAU,CAAC,KAAnB,OAAuB,UAAU,CAAC,IAAI,CAAA;AAAI,QAAI,IAAIF,EAAQ,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,SAAUC,GAAG;AAAE,MAAAE,EAAgB,GAAGF,GAAG,EAAEA,CAAC,CAAC;AAAA,IAAG,CAAC,IAAI,OAAO,4BAA4B,OAAO,iBAAiB,GAAG,OAAO,0BAA0B,CAAC,CAAC,IAAID,EAAQ,OAAO,CAAC,CAAC,EAAE,QAAQ,SAAUC,GAAG;AAAE,aAAO,eAAe,GAAGA,GAAG,OAAO,yBAAyB,GAAGA,CAAC,CAAC;AAAA,IAAG,CAAC;AAAA,EAAG;AAAE,SAAO;AAAG;AACtb,SAASE,EAAgB,GAAG,GAAG,GAAG;AAAE,UAAQ,IAAIC,EAAe,CAAC,MAAM,IAAI,OAAO,eAAe,GAAG,GAAG,EAAE,OAAO,GAAG,YAAY,IAAI,cAAc,IAAI,UAAU,GAAE,CAAE,IAAI,EAAE,CAAC,IAAI,GAAG;AAAG;AACnL,SAASA,EAAeC,GAAG;AAAE,MAAIC,IAAIC,EAAaF,GAAG,QAAQ;AAAG,SAAmBP,EAAQQ,CAAC,KAArB,WAAyBA,IAAIA,IAAI;AAAI;AAC5G,SAASC,EAAaF,GAAG,GAAG;AAAE,MAAgBP,EAAQO,CAAC,KAArB,YAA0B,CAACA,EAAG,QAAOA;AAAG,MAAIG,IAAIH,EAAE,OAAO,WAAW;AAAG,MAAeG,MAAX,QAAc;AAAE,QAAIF,IAAIE,EAAE,KAAKH,GAAG,CAAc;AAAG,QAAgBP,EAAQQ,CAAC,KAArB,SAAwB,QAAOA;AAAG,UAAM,IAAI,UAAU,8CAA8C;AAAA,EAAG;AAAE,UAAqB,MAAb,WAAiB,SAAS,QAAQD,CAAC;AAAG;AAM5S,SAASI,IAA4B;AAClD,MAAIC,IAAsBC,EAAmB,SAAS,GACpDC,IAAOF,EAAoB,MAC3BG,IAAUH,EAAoB,SAC9BI,IAAWJ,EAAoB;AACjC,EAAAG,IAAUX,EAAcA,EAAc,CAAA,GAAIW,CAAO,GAAG,CAAA,GAAI;AAAA,IACtD,SAAS;AAAA,EACb,CAAG;AAGD,MAAI;AACF,QAAIE,IAAcC,EAA0BJ,GAAMC,GAASC,CAAQ;AACnE,IAAAA,IAAW,IAAIG,EAASH,CAAQ,GAChCA,EAAS,oBAAoBC,EAAY,kBAAkB;AAC3D,QAAIG,IAASC,EAAkBJ,EAAY,gBAAgBA,EAAY,SAASD,CAAQ;AACxF,QAAII,MAAW;AACb,aAAOA;AAAA,EAEX,SAASE,GAAO;AAEd,QAAIA,aAAiBC;AACnB,aAAOD,EAAM;AAEb,UAAMA;AAAA,EAEV;AACF;","x_google_ignoreList":[0]}