@performant-software/core-data 2.3.10-beta.8 → 2.3.10

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 (1183) hide show
  1. package/dist/index.cjs105.js +1 -1
  2. package/dist/index.cjs106.js +1 -1
  3. package/dist/index.cjs109.js +1 -1
  4. package/dist/index.cjs110.js +1 -1
  5. package/dist/index.cjs111.js +1 -1
  6. package/dist/index.cjs114.js +1 -1
  7. package/dist/index.cjs115.js +1 -1
  8. package/dist/index.cjs116.js +1 -1
  9. package/dist/index.cjs118.js +1 -1
  10. package/dist/index.cjs119.js +1 -1
  11. package/dist/index.cjs120.js +1 -1
  12. package/dist/index.cjs123.js +1 -1
  13. package/dist/index.cjs125.js +1 -1
  14. package/dist/index.cjs126.js +1 -1
  15. package/dist/index.cjs130.js +1 -1
  16. package/dist/index.cjs131.js +1 -1
  17. package/dist/index.cjs132.js +1 -1
  18. package/dist/index.cjs133.js +1 -1
  19. package/dist/index.cjs134.js +1 -1
  20. package/dist/index.cjs161.js +1 -1
  21. package/dist/index.cjs162.js +1 -1
  22. package/dist/index.cjs163.js +1 -1
  23. package/dist/index.cjs164.js +1 -1
  24. package/dist/index.cjs165.js +1 -1
  25. package/dist/index.cjs166.js +1 -1
  26. package/dist/index.cjs167.js +1 -1
  27. package/dist/index.cjs168.js +1 -1
  28. package/dist/index.cjs177.js +1 -1
  29. package/dist/index.cjs180.js +1 -1
  30. package/dist/index.cjs181.js +1 -1
  31. package/dist/index.cjs182.js +1 -1
  32. package/dist/index.cjs186.js +1 -1
  33. package/dist/index.cjs187.js +1 -1
  34. package/dist/index.cjs188.js +1 -1
  35. package/dist/index.cjs189.js +1 -1
  36. package/dist/index.cjs192.js +1 -1
  37. package/dist/index.cjs198.js +1 -1
  38. package/dist/index.cjs199.js +1 -1
  39. package/dist/index.cjs200.js +1 -1
  40. package/dist/index.cjs201.js +1 -1
  41. package/dist/index.cjs202.js +1 -1
  42. package/dist/index.cjs203.js +1 -1
  43. package/dist/index.cjs206.js +1 -1
  44. package/dist/index.cjs207.js +1 -1
  45. package/dist/index.cjs209.js +1 -1
  46. package/dist/index.cjs210.js +1 -1
  47. package/dist/index.cjs211.js +1 -1
  48. package/dist/index.cjs212.js +1 -1
  49. package/dist/index.cjs213.js +1 -1
  50. package/dist/index.cjs214.js +1 -1
  51. package/dist/index.cjs216.js +1 -1
  52. package/dist/index.cjs216.js.map +1 -1
  53. package/dist/index.cjs217.js +1 -1
  54. package/dist/index.cjs217.js.map +1 -1
  55. package/dist/index.cjs218.js +1 -1
  56. package/dist/index.cjs218.js.map +1 -1
  57. package/dist/index.cjs219.js +1 -1
  58. package/dist/index.cjs219.js.map +1 -1
  59. package/dist/index.cjs220.js +1 -1
  60. package/dist/index.cjs220.js.map +1 -1
  61. package/dist/index.cjs221.js +1 -1
  62. package/dist/index.cjs221.js.map +1 -1
  63. package/dist/index.cjs222.js +1 -1
  64. package/dist/index.cjs222.js.map +1 -1
  65. package/dist/index.cjs223.js +1 -1
  66. package/dist/index.cjs223.js.map +1 -1
  67. package/dist/index.cjs224.js +1 -1
  68. package/dist/index.cjs224.js.map +1 -1
  69. package/dist/index.cjs225.js +1 -1
  70. package/dist/index.cjs225.js.map +1 -1
  71. package/dist/index.cjs226.js +1 -1
  72. package/dist/index.cjs226.js.map +1 -1
  73. package/dist/index.cjs227.js +1 -1
  74. package/dist/index.cjs227.js.map +1 -1
  75. package/dist/index.cjs228.js +1 -1
  76. package/dist/index.cjs228.js.map +1 -1
  77. package/dist/index.cjs229.js +1 -1
  78. package/dist/index.cjs229.js.map +1 -1
  79. package/dist/index.cjs230.js +1 -1
  80. package/dist/index.cjs230.js.map +1 -1
  81. package/dist/index.cjs231.js +1 -1
  82. package/dist/index.cjs231.js.map +1 -1
  83. package/dist/index.cjs232.js +1 -1
  84. package/dist/index.cjs232.js.map +1 -1
  85. package/dist/index.cjs233.js +1 -1
  86. package/dist/index.cjs233.js.map +1 -1
  87. package/dist/index.cjs234.js +1 -1
  88. package/dist/index.cjs234.js.map +1 -1
  89. package/dist/index.cjs235.js +1 -1
  90. package/dist/index.cjs235.js.map +1 -1
  91. package/dist/index.cjs236.js +1 -1
  92. package/dist/index.cjs236.js.map +1 -1
  93. package/dist/index.cjs237.js +1 -1
  94. package/dist/index.cjs237.js.map +1 -1
  95. package/dist/index.cjs238.js +1 -1
  96. package/dist/index.cjs238.js.map +1 -1
  97. package/dist/index.cjs239.js +1 -1
  98. package/dist/index.cjs239.js.map +1 -1
  99. package/dist/index.cjs240.js +1 -1
  100. package/dist/index.cjs240.js.map +1 -1
  101. package/dist/index.cjs241.js +1 -1
  102. package/dist/index.cjs241.js.map +1 -1
  103. package/dist/index.cjs242.js +1 -1
  104. package/dist/index.cjs242.js.map +1 -1
  105. package/dist/index.cjs243.js +1 -1
  106. package/dist/index.cjs243.js.map +1 -1
  107. package/dist/index.cjs244.js +1 -1
  108. package/dist/index.cjs244.js.map +1 -1
  109. package/dist/index.cjs245.js +1 -1
  110. package/dist/index.cjs245.js.map +1 -1
  111. package/dist/index.cjs246.js +1 -6
  112. package/dist/index.cjs246.js.map +1 -1
  113. package/dist/index.cjs247.js +1 -1
  114. package/dist/index.cjs247.js.map +1 -1
  115. package/dist/index.cjs248.js +6 -2
  116. package/dist/index.cjs248.js.map +1 -1
  117. package/dist/index.cjs249.js +1 -3
  118. package/dist/index.cjs249.js.map +1 -1
  119. package/dist/index.cjs250.js +2 -1
  120. package/dist/index.cjs250.js.map +1 -1
  121. package/dist/index.cjs251.js +3 -1
  122. package/dist/index.cjs251.js.map +1 -1
  123. package/dist/index.cjs252.js +1 -8
  124. package/dist/index.cjs252.js.map +1 -1
  125. package/dist/index.cjs253.js +1 -13
  126. package/dist/index.cjs253.js.map +1 -1
  127. package/dist/index.cjs254.js +8 -1
  128. package/dist/index.cjs254.js.map +1 -1
  129. package/dist/index.cjs255.js +13 -17
  130. package/dist/index.cjs255.js.map +1 -1
  131. package/dist/index.cjs256.js +1 -1
  132. package/dist/index.cjs256.js.map +1 -1
  133. package/dist/index.cjs257.js +17 -1
  134. package/dist/index.cjs257.js.map +1 -1
  135. package/dist/index.cjs258.js +1 -1
  136. package/dist/index.cjs258.js.map +1 -1
  137. package/dist/index.cjs259.js +1 -1
  138. package/dist/index.cjs259.js.map +1 -1
  139. package/dist/index.cjs260.js +1 -1
  140. package/dist/index.cjs260.js.map +1 -1
  141. package/dist/index.cjs261.js +1 -1
  142. package/dist/index.cjs261.js.map +1 -1
  143. package/dist/index.cjs262.js +1 -1
  144. package/dist/index.cjs262.js.map +1 -1
  145. package/dist/index.cjs263.js +1 -1
  146. package/dist/index.cjs263.js.map +1 -1
  147. package/dist/index.cjs264.js +1 -1
  148. package/dist/index.cjs264.js.map +1 -1
  149. package/dist/index.cjs265.js +1 -1
  150. package/dist/index.cjs265.js.map +1 -1
  151. package/dist/index.cjs266.js +1 -1
  152. package/dist/index.cjs266.js.map +1 -1
  153. package/dist/index.cjs267.js +1 -1
  154. package/dist/index.cjs267.js.map +1 -1
  155. package/dist/index.cjs268.js +1 -1
  156. package/dist/index.cjs268.js.map +1 -1
  157. package/dist/index.cjs269.js +1 -1
  158. package/dist/index.cjs269.js.map +1 -1
  159. package/dist/index.cjs270.js +1 -1
  160. package/dist/index.cjs270.js.map +1 -1
  161. package/dist/index.cjs271.js +1 -1
  162. package/dist/index.cjs271.js.map +1 -1
  163. package/dist/index.cjs273.js +1 -1
  164. package/dist/index.cjs274.js +1 -1
  165. package/dist/index.cjs275.js +1 -1
  166. package/dist/index.cjs276.js +1 -1
  167. package/dist/index.cjs277.js +1 -1
  168. package/dist/index.cjs278.js +1 -1
  169. package/dist/index.cjs279.js +1 -1
  170. package/dist/index.cjs280.js +1 -1
  171. package/dist/index.cjs281.js +1 -1
  172. package/dist/index.cjs282.js +1 -1
  173. package/dist/index.cjs292.js +1 -1
  174. package/dist/index.cjs298.js +1 -1
  175. package/dist/index.cjs310.js +1 -1
  176. package/dist/index.cjs427.js +1 -1
  177. package/dist/index.cjs428.js +1 -1
  178. package/dist/index.cjs431.js +1 -1
  179. package/dist/index.cjs456.js +1 -6
  180. package/dist/index.cjs456.js.map +1 -1
  181. package/dist/index.cjs457.js +1 -6
  182. package/dist/index.cjs457.js.map +1 -1
  183. package/dist/index.cjs458.js +1 -1
  184. package/dist/index.cjs458.js.map +1 -1
  185. package/dist/index.cjs459.js +1 -1
  186. package/dist/index.cjs459.js.map +1 -1
  187. package/dist/index.cjs460.js +1 -1
  188. package/dist/index.cjs460.js.map +1 -1
  189. package/dist/index.cjs461.js +1 -1
  190. package/dist/index.cjs461.js.map +1 -1
  191. package/dist/index.cjs462.js +1 -1
  192. package/dist/index.cjs462.js.map +1 -1
  193. package/dist/index.cjs463.js +1 -1
  194. package/dist/index.cjs463.js.map +1 -1
  195. package/dist/index.cjs464.js +1 -1
  196. package/dist/index.cjs464.js.map +1 -1
  197. package/dist/index.cjs465.js +1 -1
  198. package/dist/index.cjs465.js.map +1 -1
  199. package/dist/index.cjs466.js +1 -1
  200. package/dist/index.cjs466.js.map +1 -1
  201. package/dist/index.cjs467.js +1 -1
  202. package/dist/index.cjs467.js.map +1 -1
  203. package/dist/index.cjs468.js +1 -1
  204. package/dist/index.cjs468.js.map +1 -1
  205. package/dist/index.cjs469.js +1 -1
  206. package/dist/index.cjs469.js.map +1 -1
  207. package/dist/index.cjs470.js +1 -1
  208. package/dist/index.cjs470.js.map +1 -1
  209. package/dist/index.cjs471.js +1 -1
  210. package/dist/index.cjs471.js.map +1 -1
  211. package/dist/index.cjs472.js +1 -1
  212. package/dist/index.cjs472.js.map +1 -1
  213. package/dist/index.cjs473.js +1 -1
  214. package/dist/index.cjs473.js.map +1 -1
  215. package/dist/index.cjs474.js +1 -1
  216. package/dist/index.cjs474.js.map +1 -1
  217. package/dist/index.cjs475.js +6 -1
  218. package/dist/index.cjs475.js.map +1 -1
  219. package/dist/index.cjs476.js +6 -1
  220. package/dist/index.cjs476.js.map +1 -1
  221. package/dist/index.cjs477.js +1 -1
  222. package/dist/index.cjs477.js.map +1 -1
  223. package/dist/index.cjs478.js +1 -1
  224. package/dist/index.cjs478.js.map +1 -1
  225. package/dist/index.cjs479.js +1 -1
  226. package/dist/index.cjs479.js.map +1 -1
  227. package/dist/index.cjs480.js +1 -1
  228. package/dist/index.cjs480.js.map +1 -1
  229. package/dist/index.cjs481.js +1 -1
  230. package/dist/index.cjs481.js.map +1 -1
  231. package/dist/index.cjs482.js +1 -1
  232. package/dist/index.cjs482.js.map +1 -1
  233. package/dist/index.cjs483.js +1 -1
  234. package/dist/index.cjs483.js.map +1 -1
  235. package/dist/index.cjs494.js +1 -1
  236. package/dist/index.cjs496.js +1 -1
  237. package/dist/index.cjs496.js.map +1 -1
  238. package/dist/index.cjs497.js +1 -1
  239. package/dist/index.cjs497.js.map +1 -1
  240. package/dist/index.cjs498.js +1 -1
  241. package/dist/index.cjs498.js.map +1 -1
  242. package/dist/index.cjs499.js +1 -1
  243. package/dist/index.cjs499.js.map +1 -1
  244. package/dist/index.cjs50.js +1 -1
  245. package/dist/index.cjs50.js.map +1 -1
  246. package/dist/index.cjs500.js +1 -1
  247. package/dist/index.cjs500.js.map +1 -1
  248. package/dist/index.cjs501.js +1 -1
  249. package/dist/index.cjs501.js.map +1 -1
  250. package/dist/index.cjs502.js +1 -1
  251. package/dist/index.cjs502.js.map +1 -1
  252. package/dist/index.cjs503.js +1 -1
  253. package/dist/index.cjs503.js.map +1 -1
  254. package/dist/index.cjs504.js +1 -1
  255. package/dist/index.cjs504.js.map +1 -1
  256. package/dist/index.cjs505.js +1 -1
  257. package/dist/index.cjs505.js.map +1 -1
  258. package/dist/index.cjs508.js +1 -1
  259. package/dist/index.cjs508.js.map +1 -1
  260. package/dist/index.cjs509.js +1 -1
  261. package/dist/index.cjs509.js.map +1 -1
  262. package/dist/index.cjs511.js +1 -1
  263. package/dist/index.cjs511.js.map +1 -1
  264. package/dist/index.cjs512.js +1 -1
  265. package/dist/index.cjs512.js.map +1 -1
  266. package/dist/index.cjs513.js +1 -1
  267. package/dist/index.cjs513.js.map +1 -1
  268. package/dist/index.cjs514.js +1 -1
  269. package/dist/index.cjs514.js.map +1 -1
  270. package/dist/index.cjs515.js +1 -1
  271. package/dist/index.cjs515.js.map +1 -1
  272. package/dist/index.cjs516.js +1 -1
  273. package/dist/index.cjs516.js.map +1 -1
  274. package/dist/index.cjs517.js +1 -1
  275. package/dist/index.cjs517.js.map +1 -1
  276. package/dist/index.cjs518.js +1 -1
  277. package/dist/index.cjs518.js.map +1 -1
  278. package/dist/index.cjs519.js +1 -1
  279. package/dist/index.cjs519.js.map +1 -1
  280. package/dist/index.cjs520.js +1 -1
  281. package/dist/index.cjs520.js.map +1 -1
  282. package/dist/index.cjs521.js +1 -1
  283. package/dist/index.cjs521.js.map +1 -1
  284. package/dist/index.cjs522.js +1 -1
  285. package/dist/index.cjs522.js.map +1 -1
  286. package/dist/index.cjs523.js +1 -1
  287. package/dist/index.cjs523.js.map +1 -1
  288. package/dist/index.cjs524.js +1 -1
  289. package/dist/index.cjs524.js.map +1 -1
  290. package/dist/index.cjs525.js +1 -1
  291. package/dist/index.cjs525.js.map +1 -1
  292. package/dist/index.cjs526.js +1 -1
  293. package/dist/index.cjs526.js.map +1 -1
  294. package/dist/index.cjs527.js +1 -1
  295. package/dist/index.cjs527.js.map +1 -1
  296. package/dist/index.cjs531.js +1 -1
  297. package/dist/index.cjs532.js +1 -1
  298. package/dist/index.cjs555.js +1 -1
  299. package/dist/index.cjs557.js +1 -1
  300. package/dist/index.cjs559.js +1 -1
  301. package/dist/index.cjs573.js +1 -1
  302. package/dist/index.cjs574.js +1 -1
  303. package/dist/index.cjs583.js +1 -1
  304. package/dist/index.cjs584.js +1 -1
  305. package/dist/index.cjs584.js.map +1 -1
  306. package/dist/index.cjs585.js +1 -1
  307. package/dist/index.cjs585.js.map +1 -1
  308. package/dist/index.cjs587.js +1 -1
  309. package/dist/index.cjs591.js +1 -1
  310. package/dist/index.cjs593.js +1 -1
  311. package/dist/index.cjs594.js +1 -1
  312. package/dist/index.cjs595.js +1 -1
  313. package/dist/index.cjs595.js.map +1 -1
  314. package/dist/index.cjs596.js +1 -1
  315. package/dist/index.cjs596.js.map +1 -1
  316. package/dist/index.cjs597.js +1 -1
  317. package/dist/index.cjs597.js.map +1 -1
  318. package/dist/index.cjs598.js +1 -1
  319. package/dist/index.cjs598.js.map +1 -1
  320. package/dist/index.cjs599.js +1 -1
  321. package/dist/index.cjs599.js.map +1 -1
  322. package/dist/index.cjs600.js +1 -1
  323. package/dist/index.cjs600.js.map +1 -1
  324. package/dist/index.cjs601.js +1 -1
  325. package/dist/index.cjs601.js.map +1 -1
  326. package/dist/index.cjs602.js +1 -1
  327. package/dist/index.cjs602.js.map +1 -1
  328. package/dist/index.cjs603.js +1 -1
  329. package/dist/index.cjs603.js.map +1 -1
  330. package/dist/index.cjs604.js +1 -1
  331. package/dist/index.cjs604.js.map +1 -1
  332. package/dist/index.cjs605.js +1 -1
  333. package/dist/index.cjs605.js.map +1 -1
  334. package/dist/index.cjs606.js +1 -1
  335. package/dist/index.cjs606.js.map +1 -1
  336. package/dist/index.cjs607.js +1 -1
  337. package/dist/index.cjs607.js.map +1 -1
  338. package/dist/index.cjs608.js +1 -1
  339. package/dist/index.cjs608.js.map +1 -1
  340. package/dist/index.cjs609.js +1 -1
  341. package/dist/index.cjs609.js.map +1 -1
  342. package/dist/index.cjs610.js +1 -1
  343. package/dist/index.cjs610.js.map +1 -1
  344. package/dist/index.cjs611.js +1 -1
  345. package/dist/index.cjs611.js.map +1 -1
  346. package/dist/index.cjs612.js +1 -1
  347. package/dist/index.cjs612.js.map +1 -1
  348. package/dist/index.cjs613.js +1 -1
  349. package/dist/index.cjs613.js.map +1 -1
  350. package/dist/index.cjs614.js +1 -1
  351. package/dist/index.cjs614.js.map +1 -1
  352. package/dist/index.cjs615.js +1 -1
  353. package/dist/index.cjs615.js.map +1 -1
  354. package/dist/index.cjs616.js +1 -1
  355. package/dist/index.cjs616.js.map +1 -1
  356. package/dist/index.cjs617.js +1 -1
  357. package/dist/index.cjs617.js.map +1 -1
  358. package/dist/index.cjs618.js +1 -1
  359. package/dist/index.cjs618.js.map +1 -1
  360. package/dist/index.cjs619.js +1 -1
  361. package/dist/index.cjs619.js.map +1 -1
  362. package/dist/index.cjs620.js +1 -1
  363. package/dist/index.cjs620.js.map +1 -1
  364. package/dist/index.cjs621.js +1 -1
  365. package/dist/index.cjs621.js.map +1 -1
  366. package/dist/index.cjs622.js +1 -1
  367. package/dist/index.cjs622.js.map +1 -1
  368. package/dist/index.cjs623.js +1 -1
  369. package/dist/index.cjs623.js.map +1 -1
  370. package/dist/index.cjs624.js +1 -1
  371. package/dist/index.cjs624.js.map +1 -1
  372. package/dist/index.cjs625.js +1 -1
  373. package/dist/index.cjs625.js.map +1 -1
  374. package/dist/index.cjs626.js +1 -1
  375. package/dist/index.cjs626.js.map +1 -1
  376. package/dist/index.cjs627.js +1 -1
  377. package/dist/index.cjs627.js.map +1 -1
  378. package/dist/index.cjs628.js +1 -1
  379. package/dist/index.cjs628.js.map +1 -1
  380. package/dist/index.cjs629.js +1 -1
  381. package/dist/index.cjs629.js.map +1 -1
  382. package/dist/index.cjs630.js +1 -1
  383. package/dist/index.cjs630.js.map +1 -1
  384. package/dist/index.cjs631.js +1 -1
  385. package/dist/index.cjs631.js.map +1 -1
  386. package/dist/index.cjs632.js +1 -1
  387. package/dist/index.cjs633.js +1 -1
  388. package/dist/index.cjs633.js.map +1 -1
  389. package/dist/index.cjs634.js +1 -1
  390. package/dist/index.cjs634.js.map +1 -1
  391. package/dist/index.cjs635.js +1 -4
  392. package/dist/index.cjs635.js.map +1 -1
  393. package/dist/index.cjs636.js +2 -1
  394. package/dist/index.cjs636.js.map +1 -1
  395. package/dist/index.cjs637.js +1 -1
  396. package/dist/index.cjs638.js +1 -1
  397. package/dist/index.cjs638.js.map +1 -1
  398. package/dist/index.cjs639.js +1 -1
  399. package/dist/index.cjs639.js.map +1 -1
  400. package/dist/index.cjs640.js +1 -1
  401. package/dist/index.cjs640.js.map +1 -1
  402. package/dist/index.cjs641.js +1 -2
  403. package/dist/index.cjs641.js.map +1 -1
  404. package/dist/index.cjs642.js +2 -1
  405. package/dist/index.cjs642.js.map +1 -1
  406. package/dist/index.cjs643.js +1 -1
  407. package/dist/index.cjs643.js.map +1 -1
  408. package/dist/index.cjs644.js +1 -1
  409. package/dist/index.cjs644.js.map +1 -1
  410. package/dist/index.cjs645.js +1 -2
  411. package/dist/index.cjs645.js.map +1 -1
  412. package/dist/index.cjs646.js +4 -1
  413. package/dist/index.cjs646.js.map +1 -1
  414. package/dist/index.cjs648.js +1 -1
  415. package/dist/index.cjs649.js +1 -1
  416. package/dist/index.cjs650.js +1 -1
  417. package/dist/index.cjs650.js.map +1 -1
  418. package/dist/index.cjs651.js +1 -1
  419. package/dist/index.cjs651.js.map +1 -1
  420. package/dist/index.cjs659.js +1 -1
  421. package/dist/index.cjs661.js +1 -1
  422. package/dist/index.cjs661.js.map +1 -1
  423. package/dist/index.cjs662.js +1 -1
  424. package/dist/index.cjs662.js.map +1 -1
  425. package/dist/index.cjs663.js +1 -1
  426. package/dist/index.cjs663.js.map +1 -1
  427. package/dist/index.cjs668.js +1 -1
  428. package/dist/index.cjs668.js.map +1 -1
  429. package/dist/index.cjs669.js +1 -1
  430. package/dist/index.cjs669.js.map +1 -1
  431. package/dist/index.cjs670.js +1 -1
  432. package/dist/index.cjs670.js.map +1 -1
  433. package/dist/index.cjs671.js +1 -1
  434. package/dist/index.cjs671.js.map +1 -1
  435. package/dist/index.cjs672.js +1 -1
  436. package/dist/index.cjs672.js.map +1 -1
  437. package/dist/index.cjs673.js +1 -1
  438. package/dist/index.cjs673.js.map +1 -1
  439. package/dist/index.cjs674.js +1 -1
  440. package/dist/index.cjs674.js.map +1 -1
  441. package/dist/index.cjs675.js +1 -1
  442. package/dist/index.cjs675.js.map +1 -1
  443. package/dist/index.cjs676.js +1 -1
  444. package/dist/index.cjs676.js.map +1 -1
  445. package/dist/index.cjs677.js +1 -1
  446. package/dist/index.cjs677.js.map +1 -1
  447. package/dist/index.cjs678.js +1 -1
  448. package/dist/index.cjs678.js.map +1 -1
  449. package/dist/index.cjs679.js +1 -1
  450. package/dist/index.cjs679.js.map +1 -1
  451. package/dist/index.cjs680.js +1 -1
  452. package/dist/index.cjs680.js.map +1 -1
  453. package/dist/index.cjs681.js +1 -1
  454. package/dist/index.cjs681.js.map +1 -1
  455. package/dist/index.cjs682.js +1 -1
  456. package/dist/index.cjs682.js.map +1 -1
  457. package/dist/index.cjs683.js +1 -1
  458. package/dist/index.cjs683.js.map +1 -1
  459. package/dist/index.cjs684.js +1 -1
  460. package/dist/index.cjs684.js.map +1 -1
  461. package/dist/index.cjs685.js +1 -1
  462. package/dist/index.cjs685.js.map +1 -1
  463. package/dist/index.cjs686.js +1 -1
  464. package/dist/index.cjs686.js.map +1 -1
  465. package/dist/index.cjs687.js +1 -1
  466. package/dist/index.cjs687.js.map +1 -1
  467. package/dist/index.cjs688.js +1 -1
  468. package/dist/index.cjs688.js.map +1 -1
  469. package/dist/index.cjs689.js +1 -1
  470. package/dist/index.cjs689.js.map +1 -1
  471. package/dist/index.cjs690.js +1 -1
  472. package/dist/index.cjs690.js.map +1 -1
  473. package/dist/index.cjs691.js +1 -1
  474. package/dist/index.cjs691.js.map +1 -1
  475. package/dist/index.cjs692.js +1 -38
  476. package/dist/index.cjs692.js.map +1 -1
  477. package/dist/index.cjs693.js +38 -1
  478. package/dist/index.cjs693.js.map +1 -1
  479. package/dist/index.cjs694.js +1 -1
  480. package/dist/index.cjs694.js.map +1 -1
  481. package/dist/index.cjs695.js +1 -1
  482. package/dist/index.cjs695.js.map +1 -1
  483. package/dist/index.cjs696.js +1 -1
  484. package/dist/index.cjs696.js.map +1 -1
  485. package/dist/index.cjs697.js +1 -1
  486. package/dist/index.cjs697.js.map +1 -1
  487. package/dist/index.cjs698.js +1 -1
  488. package/dist/index.cjs698.js.map +1 -1
  489. package/dist/index.cjs699.js +1 -1
  490. package/dist/index.cjs699.js.map +1 -1
  491. package/dist/index.cjs70.js +1 -1
  492. package/dist/index.cjs70.js.map +1 -1
  493. package/dist/index.cjs700.js +1 -1
  494. package/dist/index.cjs700.js.map +1 -1
  495. package/dist/index.cjs701.js +1 -1
  496. package/dist/index.cjs701.js.map +1 -1
  497. package/dist/index.cjs702.js +1 -1
  498. package/dist/index.cjs702.js.map +1 -1
  499. package/dist/index.cjs703.js +1 -1
  500. package/dist/index.cjs704.js +1 -1
  501. package/dist/index.cjs704.js.map +1 -1
  502. package/dist/index.cjs706.js +1 -1
  503. package/dist/index.cjs706.js.map +1 -1
  504. package/dist/index.cjs708.js +1 -1
  505. package/dist/index.cjs708.js.map +1 -1
  506. package/dist/index.cjs709.js +1 -1
  507. package/dist/index.cjs709.js.map +1 -1
  508. package/dist/index.cjs71.js +1 -1
  509. package/dist/index.cjs71.js.map +1 -1
  510. package/dist/index.cjs710.js +1 -1
  511. package/dist/index.cjs710.js.map +1 -1
  512. package/dist/index.cjs712.js +1 -1
  513. package/dist/index.cjs714.js +1 -1
  514. package/dist/index.cjs714.js.map +1 -1
  515. package/dist/index.cjs716.js +1 -1
  516. package/dist/index.cjs716.js.map +1 -1
  517. package/dist/index.cjs718.js +1 -1
  518. package/dist/index.cjs718.js.map +1 -1
  519. package/dist/index.cjs719.js +1 -1
  520. package/dist/index.cjs720.js +1 -1
  521. package/dist/index.cjs720.js.map +1 -1
  522. package/dist/index.cjs723.js +1 -1
  523. package/dist/index.cjs724.js +1 -1
  524. package/dist/index.cjs725.js +1 -1
  525. package/dist/index.cjs726.js +1 -1
  526. package/dist/index.cjs727.js +1 -1
  527. package/dist/index.cjs728.js +1 -1
  528. package/dist/index.cjs740.js +1 -1
  529. package/dist/index.cjs741.js +1 -1
  530. package/dist/index.cjs742.js +1 -38
  531. package/dist/index.cjs742.js.map +1 -1
  532. package/dist/index.cjs743.js +1 -1
  533. package/dist/index.cjs743.js.map +1 -1
  534. package/dist/index.cjs744.js +1 -1
  535. package/dist/index.cjs744.js.map +1 -1
  536. package/dist/index.cjs745.js +1 -1
  537. package/dist/index.cjs745.js.map +1 -1
  538. package/dist/index.cjs748.js +1 -1
  539. package/dist/index.cjs748.js.map +1 -1
  540. package/dist/index.cjs750.js +38 -1
  541. package/dist/index.cjs750.js.map +1 -1
  542. package/dist/index.cjs751.js +1 -1
  543. package/dist/index.cjs751.js.map +1 -1
  544. package/dist/index.cjs752.js +1 -1
  545. package/dist/index.cjs752.js.map +1 -1
  546. package/dist/index.cjs753.js +1 -1
  547. package/dist/index.cjs766.js +1 -1
  548. package/dist/index.cjs766.js.map +1 -1
  549. package/dist/index.cjs767.js +1 -1
  550. package/dist/index.cjs767.js.map +1 -1
  551. package/dist/index.cjs77.js +1 -1
  552. package/dist/index.cjs774.js +1 -1
  553. package/dist/index.cjs776.js +1 -1
  554. package/dist/index.cjs777.js +1 -1
  555. package/dist/index.cjs784.js +1 -1
  556. package/dist/index.cjs784.js.map +1 -1
  557. package/dist/index.cjs785.js +1 -1
  558. package/dist/index.cjs785.js.map +1 -1
  559. package/dist/index.cjs786.js +1 -1
  560. package/dist/index.cjs786.js.map +1 -1
  561. package/dist/index.cjs787.js +1 -1
  562. package/dist/index.cjs787.js.map +1 -1
  563. package/dist/index.cjs806.js +1 -1
  564. package/dist/index.cjs811.js +1 -1
  565. package/dist/index.cjs812.js +1 -1
  566. package/dist/index.cjs812.js.map +1 -1
  567. package/dist/index.cjs813.js +1 -1
  568. package/dist/index.cjs813.js.map +1 -1
  569. package/dist/index.cjs814.js +1 -1
  570. package/dist/index.cjs814.js.map +1 -1
  571. package/dist/index.cjs815.js +1 -2
  572. package/dist/index.cjs815.js.map +1 -1
  573. package/dist/index.cjs816.js +2 -1
  574. package/dist/index.cjs816.js.map +1 -1
  575. package/dist/index.cjs817.js +1 -1
  576. package/dist/index.cjs817.js.map +1 -1
  577. package/dist/index.cjs818.js +1 -1
  578. package/dist/index.cjs818.js.map +1 -1
  579. package/dist/index.es105.js +1 -1
  580. package/dist/index.es106.js +1 -1
  581. package/dist/index.es109.js +2 -2
  582. package/dist/index.es110.js +4 -4
  583. package/dist/index.es111.js +12 -12
  584. package/dist/index.es114.js +1 -1
  585. package/dist/index.es115.js +1 -1
  586. package/dist/index.es116.js +1 -1
  587. package/dist/index.es118.js +3 -3
  588. package/dist/index.es119.js +1 -1
  589. package/dist/index.es120.js +1 -1
  590. package/dist/index.es123.js +3 -3
  591. package/dist/index.es125.js +1 -1
  592. package/dist/index.es126.js +1 -1
  593. package/dist/index.es130.js +1 -1
  594. package/dist/index.es131.js +4 -4
  595. package/dist/index.es132.js +2 -2
  596. package/dist/index.es133.js +1 -1
  597. package/dist/index.es134.js +1 -1
  598. package/dist/index.es161.js +1 -1
  599. package/dist/index.es162.js +1 -1
  600. package/dist/index.es163.js +1 -1
  601. package/dist/index.es164.js +1 -1
  602. package/dist/index.es165.js +1 -1
  603. package/dist/index.es166.js +1 -1
  604. package/dist/index.es167.js +1 -1
  605. package/dist/index.es168.js +1 -1
  606. package/dist/index.es177.js +1 -1
  607. package/dist/index.es180.js +1 -1
  608. package/dist/index.es181.js +1 -1
  609. package/dist/index.es182.js +1 -1
  610. package/dist/index.es186.js +2 -2
  611. package/dist/index.es187.js +1 -1
  612. package/dist/index.es188.js +7 -7
  613. package/dist/index.es189.js +1 -1
  614. package/dist/index.es192.js +1 -1
  615. package/dist/index.es198.js +1 -1
  616. package/dist/index.es199.js +1 -1
  617. package/dist/index.es200.js +13 -13
  618. package/dist/index.es201.js +1 -1
  619. package/dist/index.es202.js +3 -3
  620. package/dist/index.es203.js +2 -2
  621. package/dist/index.es206.js +3 -3
  622. package/dist/index.es207.js +8 -8
  623. package/dist/index.es209.js +4 -4
  624. package/dist/index.es210.js +4 -4
  625. package/dist/index.es211.js +8 -8
  626. package/dist/index.es212.js +15 -15
  627. package/dist/index.es213.js +2 -2
  628. package/dist/index.es214.js +2 -2
  629. package/dist/index.es216.js +25 -11
  630. package/dist/index.es216.js.map +1 -1
  631. package/dist/index.es217.js +24 -35
  632. package/dist/index.es217.js.map +1 -1
  633. package/dist/index.es218.js +9 -77
  634. package/dist/index.es218.js.map +1 -1
  635. package/dist/index.es219.js +34 -10
  636. package/dist/index.es219.js.map +1 -1
  637. package/dist/index.es220.js +78 -11
  638. package/dist/index.es220.js.map +1 -1
  639. package/dist/index.es221.js +11 -4
  640. package/dist/index.es221.js.map +1 -1
  641. package/dist/index.es222.js +3 -179
  642. package/dist/index.es222.js.map +1 -1
  643. package/dist/index.es223.js +45 -21
  644. package/dist/index.es223.js.map +1 -1
  645. package/dist/index.es224.js +13 -24
  646. package/dist/index.es224.js.map +1 -1
  647. package/dist/index.es225.js +47 -378
  648. package/dist/index.es225.js.map +1 -1
  649. package/dist/index.es226.js +56 -515
  650. package/dist/index.es226.js.map +1 -1
  651. package/dist/index.es227.js +6 -10
  652. package/dist/index.es227.js.map +1 -1
  653. package/dist/index.es228.js +134 -4
  654. package/dist/index.es228.js.map +1 -1
  655. package/dist/index.es229.js +16 -44
  656. package/dist/index.es229.js.map +1 -1
  657. package/dist/index.es230.js +183 -11
  658. package/dist/index.es230.js.map +1 -1
  659. package/dist/index.es231.js +213 -47
  660. package/dist/index.es231.js.map +1 -1
  661. package/dist/index.es232.js +12 -58
  662. package/dist/index.es232.js.map +1 -1
  663. package/dist/index.es233.js +196 -6
  664. package/dist/index.es233.js.map +1 -1
  665. package/dist/index.es234.js +44 -131
  666. package/dist/index.es234.js.map +1 -1
  667. package/dist/index.es235.js +10 -18
  668. package/dist/index.es235.js.map +1 -1
  669. package/dist/index.es236.js +4 -186
  670. package/dist/index.es236.js.map +1 -1
  671. package/dist/index.es237.js +10 -216
  672. package/dist/index.es237.js.map +1 -1
  673. package/dist/index.es238.js +12 -12
  674. package/dist/index.es238.js.map +1 -1
  675. package/dist/index.es239.js +3 -196
  676. package/dist/index.es239.js.map +1 -1
  677. package/dist/index.es240.js +178 -45
  678. package/dist/index.es240.js.map +1 -1
  679. package/dist/index.es241.js +21 -9
  680. package/dist/index.es241.js.map +1 -1
  681. package/dist/index.es242.js +25 -4
  682. package/dist/index.es242.js.map +1 -1
  683. package/dist/index.es243.js +379 -25
  684. package/dist/index.es243.js.map +1 -1
  685. package/dist/index.es244.js +515 -71
  686. package/dist/index.es244.js.map +1 -1
  687. package/dist/index.es245.js +28 -6
  688. package/dist/index.es245.js.map +1 -1
  689. package/dist/index.es246.js +75 -19
  690. package/dist/index.es246.js.map +1 -1
  691. package/dist/index.es247.js +5 -70
  692. package/dist/index.es247.js.map +1 -1
  693. package/dist/index.es248.js +17 -68
  694. package/dist/index.es248.js.map +1 -1
  695. package/dist/index.es249.js +68 -68
  696. package/dist/index.es249.js.map +1 -1
  697. package/dist/index.es250.js +68 -2
  698. package/dist/index.es250.js.map +1 -1
  699. package/dist/index.es251.js +71 -2
  700. package/dist/index.es251.js.map +1 -1
  701. package/dist/index.es252.js +2 -91
  702. package/dist/index.es252.js.map +1 -1
  703. package/dist/index.es253.js +2 -86
  704. package/dist/index.es253.js.map +1 -1
  705. package/dist/index.es254.js +87 -38
  706. package/dist/index.es254.js.map +1 -1
  707. package/dist/index.es255.js +76 -58
  708. package/dist/index.es255.js.map +1 -1
  709. package/dist/index.es256.js +42 -2
  710. package/dist/index.es256.js.map +1 -1
  711. package/dist/index.es257.js +66 -1632
  712. package/dist/index.es257.js.map +1 -1
  713. package/dist/index.es258.js +2 -35
  714. package/dist/index.es258.js.map +1 -1
  715. package/dist/index.es259.js +1609 -241
  716. package/dist/index.es259.js.map +1 -1
  717. package/dist/index.es260.js +34 -3
  718. package/dist/index.es260.js.map +1 -1
  719. package/dist/index.es261.js +266 -21
  720. package/dist/index.es261.js.map +1 -1
  721. package/dist/index.es262.js +3 -1339
  722. package/dist/index.es262.js.map +1 -1
  723. package/dist/index.es263.js +20 -49
  724. package/dist/index.es263.js.map +1 -1
  725. package/dist/index.es264.js +1339 -5
  726. package/dist/index.es264.js.map +1 -1
  727. package/dist/index.es265.js +50 -5
  728. package/dist/index.es265.js.map +1 -1
  729. package/dist/index.es266.js +5 -24
  730. package/dist/index.es266.js.map +1 -1
  731. package/dist/index.es267.js +5 -25
  732. package/dist/index.es267.js.map +1 -1
  733. package/dist/index.es268.js +24 -23
  734. package/dist/index.es268.js.map +1 -1
  735. package/dist/index.es269.js +14 -22
  736. package/dist/index.es269.js.map +1 -1
  737. package/dist/index.es270.js +17 -15
  738. package/dist/index.es270.js.map +1 -1
  739. package/dist/index.es271.js +23 -17
  740. package/dist/index.es271.js.map +1 -1
  741. package/dist/index.es273.js +1 -1
  742. package/dist/index.es274.js +1 -1
  743. package/dist/index.es275.js +1 -1
  744. package/dist/index.es276.js +1 -1
  745. package/dist/index.es277.js +2 -2
  746. package/dist/index.es278.js +1 -1
  747. package/dist/index.es279.js +5 -5
  748. package/dist/index.es280.js +2 -2
  749. package/dist/index.es281.js +6 -6
  750. package/dist/index.es282.js +2 -2
  751. package/dist/index.es292.js +3 -3
  752. package/dist/index.es298.js +3 -3
  753. package/dist/index.es310.js +3 -3
  754. package/dist/index.es427.js +1 -1
  755. package/dist/index.es428.js +1 -1
  756. package/dist/index.es431.js +1 -1
  757. package/dist/index.es456.js +73 -40
  758. package/dist/index.es456.js.map +1 -1
  759. package/dist/index.es457.js +14 -18
  760. package/dist/index.es457.js.map +1 -1
  761. package/dist/index.es458.js +28 -71
  762. package/dist/index.es458.js.map +1 -1
  763. package/dist/index.es459.js +40 -13
  764. package/dist/index.es459.js.map +1 -1
  765. package/dist/index.es460.js +5 -29
  766. package/dist/index.es460.js.map +1 -1
  767. package/dist/index.es461.js +16 -40
  768. package/dist/index.es461.js.map +1 -1
  769. package/dist/index.es462.js +9 -6
  770. package/dist/index.es462.js.map +1 -1
  771. package/dist/index.es463.js +16 -17
  772. package/dist/index.es463.js.map +1 -1
  773. package/dist/index.es464.js +16 -9
  774. package/dist/index.es464.js.map +1 -1
  775. package/dist/index.es465.js +23 -15
  776. package/dist/index.es465.js.map +1 -1
  777. package/dist/index.es466.js +45 -15
  778. package/dist/index.es466.js.map +1 -1
  779. package/dist/index.es467.js +13 -22
  780. package/dist/index.es467.js.map +1 -1
  781. package/dist/index.es468.js +25 -46
  782. package/dist/index.es468.js.map +1 -1
  783. package/dist/index.es469.js +52 -15
  784. package/dist/index.es469.js.map +1 -1
  785. package/dist/index.es470.js +27 -25
  786. package/dist/index.es470.js.map +1 -1
  787. package/dist/index.es471.js +4 -51
  788. package/dist/index.es471.js.map +1 -1
  789. package/dist/index.es472.js +4 -26
  790. package/dist/index.es472.js.map +1 -1
  791. package/dist/index.es473.js +4 -4
  792. package/dist/index.es473.js.map +1 -1
  793. package/dist/index.es474.js +12 -4
  794. package/dist/index.es474.js.map +1 -1
  795. package/dist/index.es475.js +40 -5
  796. package/dist/index.es475.js.map +1 -1
  797. package/dist/index.es476.js +18 -13
  798. package/dist/index.es476.js.map +1 -1
  799. package/dist/index.es477.js +11 -9
  800. package/dist/index.es477.js.map +1 -1
  801. package/dist/index.es478.js +9 -12
  802. package/dist/index.es478.js.map +1 -1
  803. package/dist/index.es479.js +4 -4
  804. package/dist/index.es479.js.map +1 -1
  805. package/dist/index.es480.js +11 -12
  806. package/dist/index.es480.js.map +1 -1
  807. package/dist/index.es481.js +27 -9
  808. package/dist/index.es481.js.map +1 -1
  809. package/dist/index.es482.js +29 -6
  810. package/dist/index.es482.js.map +1 -1
  811. package/dist/index.es483.js +5 -15
  812. package/dist/index.es483.js.map +1 -1
  813. package/dist/index.es494.js +2 -2
  814. package/dist/index.es496.js +8 -27
  815. package/dist/index.es496.js.map +1 -1
  816. package/dist/index.es497.js +13 -29
  817. package/dist/index.es497.js.map +1 -1
  818. package/dist/index.es498.js +5 -5
  819. package/dist/index.es498.js.map +1 -1
  820. package/dist/index.es499.js +13 -11
  821. package/dist/index.es499.js.map +1 -1
  822. package/dist/index.es50.js +211 -170
  823. package/dist/index.es50.js.map +1 -1
  824. package/dist/index.es500.js +9 -9
  825. package/dist/index.es500.js.map +1 -1
  826. package/dist/index.es501.js +5 -4
  827. package/dist/index.es501.js.map +1 -1
  828. package/dist/index.es502.js +15 -12
  829. package/dist/index.es502.js.map +1 -1
  830. package/dist/index.es503.js +10 -2
  831. package/dist/index.es503.js.map +1 -1
  832. package/dist/index.es504.js +2 -322
  833. package/dist/index.es504.js.map +1 -1
  834. package/dist/index.es505.js +322 -2
  835. package/dist/index.es505.js.map +1 -1
  836. package/dist/index.es506.js +2 -2
  837. package/dist/index.es507.js +2 -2
  838. package/dist/index.es508.js +2 -15
  839. package/dist/index.es508.js.map +1 -1
  840. package/dist/index.es509.js +15 -2
  841. package/dist/index.es509.js.map +1 -1
  842. package/dist/index.es510.js +2 -2
  843. package/dist/index.es511.js +2 -48
  844. package/dist/index.es511.js.map +1 -1
  845. package/dist/index.es512.js +36 -26
  846. package/dist/index.es512.js.map +1 -1
  847. package/dist/index.es513.js +36 -41
  848. package/dist/index.es513.js.map +1 -1
  849. package/dist/index.es514.js +43 -2
  850. package/dist/index.es514.js.map +1 -1
  851. package/dist/index.es515.js +2 -16
  852. package/dist/index.es515.js.map +1 -1
  853. package/dist/index.es516.js +16 -2
  854. package/dist/index.es516.js.map +1 -1
  855. package/dist/index.es517.js +2 -16
  856. package/dist/index.es517.js.map +1 -1
  857. package/dist/index.es518.js +13 -13
  858. package/dist/index.es518.js.map +1 -1
  859. package/dist/index.es519.js +14 -16
  860. package/dist/index.es519.js.map +1 -1
  861. package/dist/index.es520.js +16 -18
  862. package/dist/index.es520.js.map +1 -1
  863. package/dist/index.es521.js +20 -2
  864. package/dist/index.es521.js.map +1 -1
  865. package/dist/index.es522.js +2 -10
  866. package/dist/index.es522.js.map +1 -1
  867. package/dist/index.es523.js +6 -29
  868. package/dist/index.es523.js.map +1 -1
  869. package/dist/index.es524.js +29 -5
  870. package/dist/index.es524.js.map +1 -1
  871. package/dist/index.es525.js +5 -29
  872. package/dist/index.es525.js.map +1 -1
  873. package/dist/index.es526.js +29 -5
  874. package/dist/index.es526.js.map +1 -1
  875. package/dist/index.es527.js +5 -6
  876. package/dist/index.es527.js.map +1 -1
  877. package/dist/index.es531.js +1 -1
  878. package/dist/index.es532.js +1 -1
  879. package/dist/index.es555.js +1 -1
  880. package/dist/index.es557.js +1 -1
  881. package/dist/index.es559.js +1 -1
  882. package/dist/index.es573.js +1 -1
  883. package/dist/index.es574.js +2 -2
  884. package/dist/index.es583.js +1 -1
  885. package/dist/index.es584.js +3 -5
  886. package/dist/index.es584.js.map +1 -1
  887. package/dist/index.es585.js +5 -3
  888. package/dist/index.es585.js.map +1 -1
  889. package/dist/index.es587.js +8 -8
  890. package/dist/index.es591.js +1 -1
  891. package/dist/index.es593.js +5 -5
  892. package/dist/index.es594.js +1 -1
  893. package/dist/index.es595.js +156 -2
  894. package/dist/index.es595.js.map +1 -1
  895. package/dist/index.es596.js +104 -2
  896. package/dist/index.es596.js.map +1 -1
  897. package/dist/index.es597.js +16 -21
  898. package/dist/index.es597.js.map +1 -1
  899. package/dist/index.es598.js +7 -156
  900. package/dist/index.es598.js.map +1 -1
  901. package/dist/index.es599.js +2 -104
  902. package/dist/index.es599.js.map +1 -1
  903. package/dist/index.es600.js +2 -17
  904. package/dist/index.es600.js.map +1 -1
  905. package/dist/index.es601.js +22 -2
  906. package/dist/index.es601.js.map +1 -1
  907. package/dist/index.es602.js +2 -96
  908. package/dist/index.es602.js.map +1 -1
  909. package/dist/index.es603.js +86 -265
  910. package/dist/index.es603.js.map +1 -1
  911. package/dist/index.es604.js +227 -81
  912. package/dist/index.es604.js.map +1 -1
  913. package/dist/index.es605.js +81 -120
  914. package/dist/index.es605.js.map +1 -1
  915. package/dist/index.es606.js +119 -82
  916. package/dist/index.es606.js.map +1 -1
  917. package/dist/index.es607.js +75 -72
  918. package/dist/index.es607.js.map +1 -1
  919. package/dist/index.es608.js +76 -81
  920. package/dist/index.es608.js.map +1 -1
  921. package/dist/index.es609.js +80 -75
  922. package/dist/index.es609.js.map +1 -1
  923. package/dist/index.es610.js +76 -65
  924. package/dist/index.es610.js.map +1 -1
  925. package/dist/index.es611.js +53 -53
  926. package/dist/index.es611.js.map +1 -1
  927. package/dist/index.es612.js +35 -35
  928. package/dist/index.es612.js.map +1 -1
  929. package/dist/index.es613.js +56 -56
  930. package/dist/index.es613.js.map +1 -1
  931. package/dist/index.es614.js +69 -77
  932. package/dist/index.es614.js.map +1 -1
  933. package/dist/index.es615.js +72 -78
  934. package/dist/index.es615.js.map +1 -1
  935. package/dist/index.es616.js +75 -72
  936. package/dist/index.es616.js.map +1 -1
  937. package/dist/index.es617.js +121 -26
  938. package/dist/index.es617.js.map +1 -1
  939. package/dist/index.es618.js +33 -2
  940. package/dist/index.es618.js.map +1 -1
  941. package/dist/index.es619.js +2 -21
  942. package/dist/index.es619.js.map +1 -1
  943. package/dist/index.es620.js +21 -2
  944. package/dist/index.es620.js.map +1 -1
  945. package/dist/index.es621.js +2 -43
  946. package/dist/index.es621.js.map +1 -1
  947. package/dist/index.es622.js +26 -26
  948. package/dist/index.es622.js.map +1 -1
  949. package/dist/index.es623.js +30 -30
  950. package/dist/index.es623.js.map +1 -1
  951. package/dist/index.es624.js +23 -23
  952. package/dist/index.es624.js.map +1 -1
  953. package/dist/index.es625.js +30 -30
  954. package/dist/index.es625.js.map +1 -1
  955. package/dist/index.es626.js +22 -22
  956. package/dist/index.es626.js.map +1 -1
  957. package/dist/index.es627.js +30 -30
  958. package/dist/index.es627.js.map +1 -1
  959. package/dist/index.es628.js +31 -31
  960. package/dist/index.es628.js.map +1 -1
  961. package/dist/index.es629.js +22 -23
  962. package/dist/index.es629.js.map +1 -1
  963. package/dist/index.es630.js +37 -34
  964. package/dist/index.es630.js.map +1 -1
  965. package/dist/index.es631.js +40 -6
  966. package/dist/index.es631.js.map +1 -1
  967. package/dist/index.es632.js +2 -2
  968. package/dist/index.es633.js +12 -5
  969. package/dist/index.es633.js.map +1 -1
  970. package/dist/index.es634.js +34 -3
  971. package/dist/index.es634.js.map +1 -1
  972. package/dist/index.es635.js +18 -107
  973. package/dist/index.es635.js.map +1 -1
  974. package/dist/index.es636.js +12 -2
  975. package/dist/index.es636.js.map +1 -1
  976. package/dist/index.es637.js +2 -2
  977. package/dist/index.es638.js +2 -12
  978. package/dist/index.es638.js.map +1 -1
  979. package/dist/index.es639.js +2 -34
  980. package/dist/index.es639.js.map +1 -1
  981. package/dist/index.es640.js +12 -19
  982. package/dist/index.es640.js.map +1 -1
  983. package/dist/index.es641.js +9 -9
  984. package/dist/index.es641.js.map +1 -1
  985. package/dist/index.es642.js +12 -2
  986. package/dist/index.es642.js.map +1 -1
  987. package/dist/index.es643.js +2 -14
  988. package/dist/index.es643.js.map +1 -1
  989. package/dist/index.es644.js +5 -12
  990. package/dist/index.es644.js.map +1 -1
  991. package/dist/index.es645.js +3 -12
  992. package/dist/index.es645.js.map +1 -1
  993. package/dist/index.es646.js +110 -2
  994. package/dist/index.es646.js.map +1 -1
  995. package/dist/index.es648.js +1 -1
  996. package/dist/index.es649.js +2 -2
  997. package/dist/index.es650.js +6 -3
  998. package/dist/index.es650.js.map +1 -1
  999. package/dist/index.es651.js +3 -6
  1000. package/dist/index.es651.js.map +1 -1
  1001. package/dist/index.es659.js +1 -1
  1002. package/dist/index.es661.js +2 -109
  1003. package/dist/index.es661.js.map +1 -1
  1004. package/dist/index.es662.js +2 -2
  1005. package/dist/index.es662.js.map +1 -1
  1006. package/dist/index.es663.js +109 -2
  1007. package/dist/index.es663.js.map +1 -1
  1008. package/dist/index.es668.js +478 -61
  1009. package/dist/index.es668.js.map +1 -1
  1010. package/dist/index.es669.js +45 -4
  1011. package/dist/index.es669.js.map +1 -1
  1012. package/dist/index.es670.js +24 -8
  1013. package/dist/index.es670.js.map +1 -1
  1014. package/dist/index.es671.js +25 -8
  1015. package/dist/index.es671.js.map +1 -1
  1016. package/dist/index.es672.js +60 -13
  1017. package/dist/index.es672.js.map +1 -1
  1018. package/dist/index.es673.js +5 -19
  1019. package/dist/index.es673.js.map +1 -1
  1020. package/dist/index.es674.js +7 -10
  1021. package/dist/index.es674.js.map +1 -1
  1022. package/dist/index.es675.js +6 -2
  1023. package/dist/index.es675.js.map +1 -1
  1024. package/dist/index.es676.js +18 -482
  1025. package/dist/index.es676.js.map +1 -1
  1026. package/dist/index.es677.js +19 -46
  1027. package/dist/index.es677.js.map +1 -1
  1028. package/dist/index.es678.js +11 -24
  1029. package/dist/index.es678.js.map +1 -1
  1030. package/dist/index.es679.js +4 -25
  1031. package/dist/index.es679.js.map +1 -1
  1032. package/dist/index.es680.js +12 -33
  1033. package/dist/index.es680.js.map +1 -1
  1034. package/dist/index.es681.js +14 -12
  1035. package/dist/index.es681.js.map +1 -1
  1036. package/dist/index.es682.js +7 -8
  1037. package/dist/index.es682.js.map +1 -1
  1038. package/dist/index.es683.js +13 -13
  1039. package/dist/index.es683.js.map +1 -1
  1040. package/dist/index.es684.js +20 -11
  1041. package/dist/index.es684.js.map +1 -1
  1042. package/dist/index.es685.js +2 -7
  1043. package/dist/index.es685.js.map +1 -1
  1044. package/dist/index.es686.js +12 -11
  1045. package/dist/index.es686.js.map +1 -1
  1046. package/dist/index.es687.js +305 -22
  1047. package/dist/index.es687.js.map +1 -1
  1048. package/dist/index.es688.js +22 -2
  1049. package/dist/index.es688.js.map +1 -1
  1050. package/dist/index.es689.js +33 -13
  1051. package/dist/index.es689.js.map +1 -1
  1052. package/dist/index.es690.js +12 -306
  1053. package/dist/index.es690.js.map +1 -1
  1054. package/dist/index.es691.js +8 -22
  1055. package/dist/index.es691.js.map +1 -1
  1056. package/dist/index.es692.js +112 -49
  1057. package/dist/index.es692.js.map +1 -1
  1058. package/dist/index.es693.js +54 -8
  1059. package/dist/index.es693.js.map +1 -1
  1060. package/dist/index.es694.js +9 -14
  1061. package/dist/index.es694.js.map +1 -1
  1062. package/dist/index.es695.js +14 -60
  1063. package/dist/index.es695.js.map +1 -1
  1064. package/dist/index.es696.js +59 -64
  1065. package/dist/index.es696.js.map +1 -1
  1066. package/dist/index.es697.js +65 -2
  1067. package/dist/index.es697.js.map +1 -1
  1068. package/dist/index.es698.js +2 -3
  1069. package/dist/index.es698.js.map +1 -1
  1070. package/dist/index.es699.js +3 -3
  1071. package/dist/index.es699.js.map +1 -1
  1072. package/dist/index.es70.js +15 -12
  1073. package/dist/index.es70.js.map +1 -1
  1074. package/dist/index.es700.js +4 -118
  1075. package/dist/index.es700.js.map +1 -1
  1076. package/dist/index.es701.js +14 -2
  1077. package/dist/index.es701.js.map +1 -1
  1078. package/dist/index.es702.js +2 -151
  1079. package/dist/index.es702.js.map +1 -1
  1080. package/dist/index.es703.js +2 -2
  1081. package/dist/index.es704.js +2 -6
  1082. package/dist/index.es704.js.map +1 -1
  1083. package/dist/index.es705.js +2 -2
  1084. package/dist/index.es706.js +2 -148
  1085. package/dist/index.es706.js.map +1 -1
  1086. package/dist/index.es708.js +2 -138
  1087. package/dist/index.es708.js.map +1 -1
  1088. package/dist/index.es709.js +2 -3
  1089. package/dist/index.es709.js.map +1 -1
  1090. package/dist/index.es71.js +26 -24
  1091. package/dist/index.es71.js.map +1 -1
  1092. package/dist/index.es710.js +2 -14
  1093. package/dist/index.es710.js.map +1 -1
  1094. package/dist/index.es713.js +2 -2
  1095. package/dist/index.es714.js +151 -2
  1096. package/dist/index.es714.js.map +1 -1
  1097. package/dist/index.es715.js +2 -2
  1098. package/dist/index.es716.js +6 -2
  1099. package/dist/index.es716.js.map +1 -1
  1100. package/dist/index.es717.js +2 -2
  1101. package/dist/index.es718.js +148 -2
  1102. package/dist/index.es718.js.map +1 -1
  1103. package/dist/index.es719.js +2 -2
  1104. package/dist/index.es720.js +138 -2
  1105. package/dist/index.es720.js.map +1 -1
  1106. package/dist/index.es723.js +4 -4
  1107. package/dist/index.es724.js +3 -3
  1108. package/dist/index.es725.js +3 -3
  1109. package/dist/index.es726.js +3 -3
  1110. package/dist/index.es727.js +3 -3
  1111. package/dist/index.es728.js +3 -3
  1112. package/dist/index.es740.js +2 -2
  1113. package/dist/index.es741.js +2 -2
  1114. package/dist/index.es742.js +2 -69
  1115. package/dist/index.es742.js.map +1 -1
  1116. package/dist/index.es743.js +2 -14
  1117. package/dist/index.es743.js.map +1 -1
  1118. package/dist/index.es744.js +2 -60
  1119. package/dist/index.es744.js.map +1 -1
  1120. package/dist/index.es745.js +14 -2
  1121. package/dist/index.es745.js.map +1 -1
  1122. package/dist/index.es746.js +2 -2
  1123. package/dist/index.es747.js +2 -2
  1124. package/dist/index.es748.js +2 -14
  1125. package/dist/index.es748.js.map +1 -1
  1126. package/dist/index.es750.js +69 -2
  1127. package/dist/index.es750.js.map +1 -1
  1128. package/dist/index.es751.js +14 -2
  1129. package/dist/index.es751.js.map +1 -1
  1130. package/dist/index.es752.js +60 -2
  1131. package/dist/index.es752.js.map +1 -1
  1132. package/dist/index.es753.js +1 -1
  1133. package/dist/index.es766.js +30 -2
  1134. package/dist/index.es766.js.map +1 -1
  1135. package/dist/index.es767.js +2 -30
  1136. package/dist/index.es767.js.map +1 -1
  1137. package/dist/index.es768.js +2 -2
  1138. package/dist/index.es77.js +1 -1
  1139. package/dist/index.es770.js +2 -2
  1140. package/dist/index.es772.js +2 -2
  1141. package/dist/index.es774.js +2 -2
  1142. package/dist/index.es775.js +2 -2
  1143. package/dist/index.es776.js +2 -2
  1144. package/dist/index.es777.js +1 -1
  1145. package/dist/index.es784.js +21 -11
  1146. package/dist/index.es784.js.map +1 -1
  1147. package/dist/index.es785.js +11 -26
  1148. package/dist/index.es785.js.map +1 -1
  1149. package/dist/index.es786.js +27 -4
  1150. package/dist/index.es786.js.map +1 -1
  1151. package/dist/index.es787.js +4 -22
  1152. package/dist/index.es787.js.map +1 -1
  1153. package/dist/index.es806.js +1 -1
  1154. package/dist/index.es811.js +6 -6
  1155. package/dist/index.es812.js +13 -16
  1156. package/dist/index.es812.js.map +1 -1
  1157. package/dist/index.es813.js +18 -39
  1158. package/dist/index.es813.js.map +1 -1
  1159. package/dist/index.es814.js +39 -12
  1160. package/dist/index.es814.js.map +1 -1
  1161. package/dist/index.es815.js +12 -37
  1162. package/dist/index.es815.js.map +1 -1
  1163. package/dist/index.es816.js +36 -38
  1164. package/dist/index.es816.js.map +1 -1
  1165. package/dist/index.es817.js +39 -12
  1166. package/dist/index.es817.js.map +1 -1
  1167. package/dist/index.es818.js +8 -11
  1168. package/dist/index.es818.js.map +1 -1
  1169. package/package.json +3 -3
  1170. package/src/components/FacetTimeline.js +96 -31
  1171. package/src/utils/Peripleo.js +9 -6
  1172. package/src/utils/Typesense.js +3 -1
  1173. package/types/components/EventDetailsModal.js.flow +35 -0
  1174. package/types/components/FacetTimeline.js.flow +96 -31
  1175. package/types/components/Icons.js.flow +12 -0
  1176. package/types/components/PlaceDetailsPanel.js.flow +126 -0
  1177. package/types/components/PlaceMarker.js.flow +77 -0
  1178. package/types/components/PlaceResultsList.js.flow +137 -0
  1179. package/types/context/I18n.js.flow +11 -0
  1180. package/types/types/Translations.js.flow +5 -0
  1181. package/types/utils/Peripleo.js.flow +9 -6
  1182. package/types/utils/Typesense.js.flow +3 -1
  1183. package/types/utils/test.mjs.flow +37 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.es50.js","sources":["../src/components/FacetTimeline.js"],"sourcesContent":["// @flow\n\nimport { clsx } from 'clsx';\nimport { scaleLinear, scaleTime } from 'd3-scale';\nimport { timeTicks } from 'd3-time';\nimport React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { mergeRefs } from 'react-merge-refs';\nimport useMeasure from 'react-use-measure';\nimport _ from 'underscore';\nimport type { Event as EventType } from '../types/Event';\nimport FacetSlider, { type Action as ActionType, type ClassNames as ClassNamesType } from './FacetSlider';\nimport Icon from './Icon';\nimport i18n from '../i18n/i18n';\n\n/**\n * Helper constants: periods of time in milliseconds.\n */\nconst ONE_SECOND = 1000;\nconst MIN_MONTH = 2419200000; // 28 days\nconst MAX_MONTH = 2678400000; // 31 days\n\n/**\n * Width/height of a single event in px.\n */\nconst EVENT_WIDTH = 154;\nconst EVENT_HEIGHT = 42;\n\n/**\n * Additional timeline display constants.\n */\nconst MARKER_RADIUS = 4; // radius of a circular marker on the timeline\nconst MARKER_DIAMETER = MARKER_RADIUS * 2;\nconst EVENT_LEFT_BORDER = 1; // accounting for the border width\nconst TIMELINE_PADTOP = 8; // vertical padding between timeline and events\nconst TIMELINE_HEIGHT = 1; // height of the actual line\nconst SVG_WIGGLE_ROOM = 0.5; // helper to line up left and right edges in svg\nconst FRAME_PADDING = 32; // right padding between timeline and frame\n\n/**\n * Maximum width of the frame bounds in px.\n */\nconst TIMELINE_WIDTH_LIMIT = 3000;\n\n/**\n * The minimum space between major and minor ticks, in pixels.\n */\nconst MAJOR_TICKS_MIN_SPACE = 80;\nconst MINOR_TICKS_MIN_SPACE = 15;\n\n/**\n * Zoom and pan constants.\n */\nconst MIN_ZOOM = 1.0;\nconst ZOOM_FACTOR = 2.0;\nconst DRAG_FACTOR = 1.5;\n\ntype TimelineProps = {\n /**\n * Class names to apply to the FacetSlider and Timeline components.\n */\n classNames?: ClassNamesType & {\n marker?: string,\n },\n\n /**\n * Events to render on the timeline.\n */\n events: Array<EventType>,\n\n /**\n * Callback fired when an event element is clicked.\n */\n onClick?: (event: EventType) => void,\n\n /**\n * The current facet min/max values for the timeline range.\n */\n range: {\n max: number,\n min: number\n },\n};\n\nconst Timeline = (props: TimelineProps) => {\n const [min, setMin] = useState(new Date(props.range.min, 0, 1));\n const [max, setMax] = useState(new Date(props.range.max, 11, 31));\n const [ticksRef, ticksBounds] = useMeasure();\n const [frameRef, frameBounds] = useMeasure();\n const draggableRef = useRef();\n const [dragging, setDragging] = useState(false);\n\n const [zoom, setZoom] = useState(MIN_ZOOM);\n\n /**\n * Reset the zoom to MIN_ZOOM if the facet range changes.\n */\n useEffect(() => {\n setZoom(MIN_ZOOM);\n }, [props.range]);\n\n /**\n * Calculate the timeline's zoomed width as a product of the frame's width.\n */\n const zoomWidth = useMemo(() => (frameBounds.width - FRAME_PADDING) * zoom, [zoom, frameBounds]);\n\n /**\n * Memoizes the current facet range (years) as JavaScript Date objects\n */\n const range = useMemo(() => ({\n min: new Date(props.range.min, 0, 1),\n max: new Date(props.range.max, 0, 1),\n }), [props.range]);\n\n /**\n * Re-center the timeline on zoom.\n */\n useEffect(() => {\n const halfFrame = frameBounds.width / 2;\n const halfTimeline = ticksBounds.width / 2;\n const left = halfTimeline - halfFrame;\n draggableRef.current?.scrollTo({ left });\n }, [zoom, frameBounds, ticksBounds, draggableRef]);\n\n /**\n * Callback for zooming in.\n */\n const onZoomIn = useCallback(() => {\n setZoom((prev) => prev * ZOOM_FACTOR);\n }, [setZoom]);\n\n /**\n * Callback for zooming out.\n */\n const onZoomOut = useCallback(() => {\n setZoom((prev) => (prev === MIN_ZOOM ? prev : prev / ZOOM_FACTOR));\n }, [setZoom]);\n\n /**\n * Callback for starting the timeline drag.\n */\n const onDragStart = useCallback((evt: PointerEvent) => {\n setDragging(true);\n draggableRef.current?.setPointerCapture(evt.pointerId);\n }, [draggableRef.current]);\n\n /**\n * Callback for ending the timeline drag.\n */\n const onDragEnd = useCallback((evt: PointerEvent) => {\n setDragging(false);\n draggableRef.current?.releasePointerCapture(evt.pointerId);\n }, [draggableRef.current]);\n\n /**\n * Callback for dragging the timeline.\n */\n const onDrag = useCallback((evt: PointerEvent) => {\n if (draggableRef.current?.hasPointerCapture(evt.pointerId)) {\n draggableRef.current.scrollLeft -= evt.movementX * DRAG_FACTOR;\n }\n }, [draggableRef]);\n\n /**\n * Memoizes the button enabled state for zoom in, which is enabled as long\n * as the timeline width doesn't exceed TIMELINE_WIDTH_LIMIT.\n */\n const canZoomIn = useMemo(() => ticksBounds.width < TIMELINE_WIDTH_LIMIT, [ticksBounds.width, zoom]);\n\n /**\n * Memoizes the button enabled state for zoom out, which is enabled as long\n * as the current zoom is greater than MIN_ZOOM.\n */\n const canZoomOut = useMemo(() => zoom > MIN_ZOOM, [zoom]);\n\n /**\n * Helper function to determine if an event is overlapping other events on the timeline.\n */\n const isOverlapping = useCallback(\n (event, prevEvents) => _.some(prevEvents, (prevEvent) => prevEvent.yOffset === event.yOffset\n && event.xOffset < prevEvent.xOffset + EVENT_WIDTH\n && event.xOffset + EVENT_WIDTH > prevEvent.xOffset),\n [],\n );\n\n /**\n * Memoizes the x/y positions of events relative to the timeline.\n */\n const timelineEvents = useMemo(() => {\n // track the lowest available yOffset in case of overflow\n let overflowYOffset = 0;\n return _.chain(props.events)\n .sortBy('date')\n .reduce((acc, event) => {\n // calculate xOffset by date\n const relativePos = (event.date - range.min) / (range.max - range.min);\n let xOffset = relativePos * ticksBounds.width;\n let anchorRight = false;\n // if this would overflow the timeline, swap the side of the event\n if (xOffset + EVENT_WIDTH > ticksBounds.width) {\n anchorRight = true;\n xOffset -= EVENT_WIDTH;\n }\n // calculate yOffset based on previous events\n let yOffset = 0;\n const eventsTop = frameBounds.height - ticksBounds.height;\n while (isOverlapping({ xOffset, yOffset }, acc)) {\n if ((yOffset + EVENT_HEIGHT * 2) >= eventsTop) {\n // if we are at the top and about to overflow, reset to overflowYOffset\n yOffset = overflowYOffset;\n // increment overflowYOffset for next overflow case\n if (overflowYOffset + EVENT_HEIGHT * 2 < eventsTop) {\n overflowYOffset += EVENT_HEIGHT;\n } else {\n overflowYOffset = 0;\n }\n break;\n }\n // stack vertically on top of the previous events\n yOffset += EVENT_HEIGHT;\n }\n acc.push({\n ...event, xOffset, yOffset, anchorRight\n });\n return acc;\n }, [])\n .value();\n }, [props.events, ticksBounds, frameBounds.height, range]);\n\n /**\n * Helper function to generate major or minor calendar-based ticks given min/max of the timeline,\n * and the width of the timeline.\n */\n const generateTicks = useCallback((tMin, tMax, timelineWidth, tickType = 'major') => {\n const width = timelineWidth;\n const nMajorTicks = Math.floor(width / MAJOR_TICKS_MIN_SPACE);\n // use d3-scale to produce scaled tick intervals\n const scale = scaleTime().domain([tMin, tMax]).range([0, width]);\n // produce date and x offset for each tick\n const majorTicks = timeTicks(tMin, tMax, nMajorTicks).map((date) => ({\n value: date,\n xOffset: scale(date),\n }));\n // Ensure the last major tick is at tMax (if not already included)\n if (majorTicks.length > 0) {\n if (_.last(majorTicks).value.getTime() < tMax.getTime()) {\n majorTicks.push({ value: tMax, xOffset: scale(tMax), hideVal: true });\n }\n if (_.first(majorTicks).value.getTime() > tMin.getTime()) {\n majorTicks.unshift({ value: tMin, xOffset: scale(tMin), hideVal: true });\n }\n }\n if (tickType === 'minor') {\n // because major ticks aren't evenly distributed due to calendar irregularities,\n // generate unique set of minor ticks per interval between major ticks\n if (majorTicks.length > 1) {\n return _.chain(majorTicks)\n .map((majorTick, i) => {\n if (i > 0) {\n // produce scaled tick intervals according to MINOR_TICKS_MIN_SPACE\n const minDomain = [majorTicks[i - 1].value, majorTick.value];\n if (minDomain[1] - minDomain[0] <= MAX_MONTH) {\n // if the major ticks are spaced <= one month apart, NO minor ticks\n return [];\n }\n const minRange = [majorTicks[i - 1].xOffset, majorTick.xOffset];\n const minWidth = minRange[1] - minRange[0];\n const nMinorTicks = Math.floor(minWidth / MINOR_TICKS_MIN_SPACE);\n const minScale = scaleTime().domain(minDomain).range(minRange).nice();\n const minTicks = _.map(minScale.ticks(nMinorTicks), (date) => ({\n value: date,\n xOffset: minScale(date),\n }));\n // skip the minor ticks that are equivalent to major ticks\n const filtered = _.filter(minTicks, (date) => !_.map(\n minDomain, (d) => d.getTime()\n ).includes(date.value.getTime()));\n return filtered;\n }\n return [];\n })\n .flatten()\n // prevent duplicate ticks\n .uniq(true, (t) => t.value)\n .value();\n }\n return [];\n }\n return majorTicks;\n }, []);\n\n /**\n * On facet change, update the timeline min and max.\n */\n useEffect(() => {\n setMin(range.min);\n setMax(range.max);\n }, [range.min, range.max]);\n\n /**\n * Memoize the set of major and minor ticks based on the current min,\n * max, and slider width.\n */\n const ticks = useMemo(() => ({\n major: ticksBounds?.width ? generateTicks(min, max, ticksBounds.width, 'major') : [],\n minor: ticksBounds?.width ? generateTicks(min, max, ticksBounds.width, 'minor') : [],\n }), [min, max, ticksBounds.width]);\n\n /**\n * Callback to handle displaying dates on the timeline ticks at different\n * resolutions (day, month, year).\n */\n const displayTickDate = useCallback((date, prevDate) => {\n if (ticks?.major?.length > 1) {\n const tickInterval = ticks.major[1].value - ticks.major[0].value;\n if (!prevDate || prevDate?.getFullYear() !== date.getFullYear()) {\n // show every new year encountered\n return date.getFullYear();\n }\n if (tickInterval > MIN_MONTH || prevDate || prevDate?.getMonth() !== date.getMonth()) {\n // less than a year, more than a month between ticks? show month\n return date.toLocaleDateString(undefined, { month: 'short' });\n }\n // less than a month between ticks? show day (numeric)\n return date.toLocaleDateString(undefined, { day: 'numeric' });\n }\n return date.toString();\n }, [ticks.major]);\n\n return (\n <div\n className={clsx(\n 'grow',\n 'px-4',\n 'pt-6',\n 'pb-2',\n 'flex',\n 'flex-col',\n 'justify-end',\n 'overflow-x-scroll',\n 'select-none',\n dragging ? 'cursor-grabbing' : 'cursor-grab',\n )}\n ref={mergeRefs([frameRef, draggableRef])}\n onPointerMove={onDrag}\n onPointerUp={onDragEnd}\n style={{ scrollbarWidth: 'none' }}\n >\n <div className='absolute top-5 right-5 z-30 flex flex-row'>\n <button\n aria-label={i18n.t('Timeline.zoomIn')}\n className={clsx(\n 'p-3',\n 'disabled:opacity-50',\n 'disabled:hover:bg-transparent',\n 'rounded-tl',\n 'rounded-bl',\n props.classNames?.zoom\n )}\n disabled={!canZoomIn}\n type='button'\n onClick={onZoomIn}\n >\n <Icon name='magnifying_glass_plus' size={19} />\n </button>\n <button\n aria-label={i18n.t('Timeline.zoomOut')}\n className={clsx(\n 'ml-[1px]',\n 'p-3',\n 'disabled:opacity-50',\n 'disabled:hover:bg-transparent',\n 'rounded-tr',\n 'rounded-br',\n props.classNames?.zoom\n )}\n disabled={!canZoomOut}\n type='button'\n onClick={onZoomOut}\n >\n <Icon name='magnifying_glass_minus' size={19} />\n </button>\n </div>\n <div\n className='h-full min-h-36 flex flex-col'\n style={{ width: zoomWidth }}\n onPointerDown={onDragStart}\n >\n <div className='grow relative'>\n {_.map(timelineEvents, (event) => (\n <div\n className='w-44 absolute'\n key={event.uuid}\n style={{\n left: `${event.xOffset}px`,\n bottom: `${event.yOffset + TIMELINE_PADTOP}px`,\n }}\n >\n <svg\n className={clsx(\n 'absolute',\n 'top-[32px]',\n )}\n height={event.yOffset + TIMELINE_PADTOP + MARKER_DIAMETER}\n width={MARKER_DIAMETER}\n style={{\n left: `${event.anchorRight\n ? EVENT_WIDTH + EVENT_LEFT_BORDER - MARKER_RADIUS\n : -MARKER_RADIUS}px`,\n }}\n >\n <line\n x1={MARKER_RADIUS}\n x2={MARKER_RADIUS}\n y1={0}\n y2={event.yOffset + TIMELINE_PADTOP + MARKER_RADIUS - TIMELINE_HEIGHT}\n className='stroke-neutral-300 stroke-[1px]'\n shapeRendering='crispEdges'\n />\n <circle\n cx={MARKER_RADIUS}\n cy={event.yOffset + TIMELINE_PADTOP + MARKER_RADIUS - TIMELINE_HEIGHT}\n r={MARKER_RADIUS}\n className={clsx(props.classNames?.marker || 'fill-neutral-500')}\n />\n </svg>\n <button\n className={clsx(\n 'h-9',\n 'w-44',\n 'px-2',\n 'flex',\n 'items-center',\n 'bg-neutral-100',\n 'active:bg-neutral-300',\n 'outline',\n 'outline-1',\n 'outline-neutral-300',\n 'rounded-tl',\n 'rounded-tr',\n 'relative',\n 'z-10',\n 'hover:z-20',\n 'hover:bg-neutral-200',\n 'text-neutral-800',\n event.anchorRight ? 'rounded-bl' : 'rounded-br',\n 'mb-1',\n )}\n onPointerDown={(e) => e.stopPropagation()}\n onClick={() => props.onClick(event)}\n type='button'\n >\n <span className='truncate text-sm'>\n {event.name}\n </span>\n </button>\n </div>\n ))}\n </div>\n <div ref={ticksRef} className='w-fill'>\n {ticks && (\n <svg\n className='!overflow-visible w-fill'\n height={40}\n width='100%'\n overflow='visible'\n shapeRendering='crispEdges'\n >\n {/* Baseline */}\n {_.last(ticks.major) && (\n <line x1='0' y1='0' x2={_.last(ticks.major).xOffset + SVG_WIGGLE_ROOM} y2='0' stroke='currentColor' />\n )}\n {/* Ticks and labels */}\n {_.map(ticks.major, ({ value, xOffset, hideVal }, i) => !hideVal && (\n <g key={value} transform={`translate(${xOffset}, 0)`}>\n <line y2={10} stroke='currentColor' />\n <text\n className='translate-y-8'\n key={value}\n style={{\n textAnchor: 'middle',\n }}\n fill='currentColor'\n >\n {displayTickDate(value, i !== 0 ? ticks.major[i - 1].value : null)}\n </text>\n </g>\n ))}\n {_.map(ticks.minor, ({ xOffset }, i) => (\n <g key={i} transform={`translate(${xOffset}, 0)`}>\n <line y2={5} stroke='currentColor' />\n </g>\n ))}\n </svg>\n )}\n </div>\n </div>\n </div>\n );\n};\n\ntype Props = {\n /**\n * Custom actions to render with the FacetSlider.\n */\n actions?: Array<ActionType>,\n\n /**\n * Class name to apply to the root DOM element.\n */\n className?: string,\n\n /**\n * Class names to apply to the FacetSlider and Timeline components.\n */\n classNames?: ClassNamesType & {\n marker?: string,\n },\n\n /**\n * Typesense hit events to display, as an array.\n */\n data: Array<EventType>,\n\n /**\n * Callback fired when the event popover is clicked.\n */\n onClick?: (event: EventType) => void,\n\n /**\n * Callback fired when the events are loaded.\n */\n onLoad?: (events: Array<EventType>) => void,\n\n /**\n * The absolute min/max values for the timeline range.\n */\n range: {\n max: number,\n min: number\n },\n\n /**\n * Callback fired when the slider value(s) are changed.\n *\n * @param any\n */\n refine: (number | [number, number]) => void,\n\n /**\n * The current value of the slider.\n */\n start: [number, number],\n};\n\nconst FacetTimeline = (props: Props) => {\n const { range = {}, refine, start = [] } = props;\n\n const from = Math.max(range.min, Number.isFinite(start[0]) ? start[0] : range.min);\n const to = Math.min(range.max, Number.isFinite(start[1]) ? start[1] : range.max);\n\n const [events, setEvents] = useState();\n const [max, setMax] = useState(range.max);\n const [min, setMin] = useState(range.min);\n const [value, setValue] = useState([from, to]);\n\n const ref = useRef();\n const [sliderRef, sliderBounds] = useMeasure();\n\n /**\n * Handle change in min/max: auto-narrow slider bounds if needed\n */\n useEffect(() => {\n setValue((slider) => {\n // if the user zooms in and the slider bounds are outside the\n // zoom window, auto-narrow the slider bounds\n const newSliderVal = [...slider];\n if (min > slider[0]) {\n newSliderVal[0] = min;\n } else if (max < slider[0]) {\n newSliderVal[0] = max;\n }\n if (max < slider[1]) {\n newSliderVal[1] = max;\n } else if (min > slider[1]) {\n newSliderVal[1] = min;\n }\n return newSliderVal;\n });\n }, [min, max]);\n\n /**\n * Callback to reset the slider position to encompass the full range.\n */\n const onSliderReset = () => {\n setValue([min, max]);\n refine([min, max]);\n };\n\n /**\n * List of actions to provide to the FacetSlider component.\n */\n const actions = useMemo(() => [{\n className: '-mt-4',\n label: i18n.t('Timeline.resetRange'),\n icon: <Icon name='reset' className='w-5 h-5' />,\n onClick: onSliderReset,\n position: 'right',\n disabled: value[0] === min && value[1] === max\n }], [onSliderReset, value]);\n\n /**\n * Returns passed event's start date as a JavaScript Date object.\n *\n * @type {function(*): *}\n */\n const getDate = useCallback((event) => {\n const date = (!_.isEmpty(event.start_date) && event.start_date[0])\n || (!_.isEmpty(event.end_date) && event.end_date[0]);\n\n if (date) {\n // Typsense date is a Unix timestamp, which is in seconds, so convert to ms\n return new Date(date * ONE_SECOND);\n }\n\n return date;\n }, []);\n\n /**\n * Sets the events on the state.\n *\n * @type {(function(*): void)|*}\n */\n useEffect(() => {\n setEvents(_.map(props.data, (event) => ({\n ...event,\n date: getDate(event)\n })));\n }, [props.data]);\n\n /**\n * Calls the onLoad prop when the events are changed.\n */\n useEffect(() => {\n if (props.onLoad) {\n props.onLoad(events);\n }\n }, [events, props.onLoad]);\n\n /**\n * When the upper and/or lower bounds of the range change, update the value and min/max values.\n */\n useEffect(() => {\n setValue([from, to]);\n setMin(range.min);\n setMax(range.max);\n }, [from, to, range.min, range.max]);\n\n /**\n * Helper function to generate major or minor ticks given min/max of the slider,\n * and the width of the slider.\n */\n const generateTicks = useCallback((tMin, tMax, sliderWidth, tickType = 'major') => {\n let nTicks = tMax - tMin;\n const width = sliderWidth - SVG_WIGGLE_ROOM;\n const tickSpacing = width / nTicks;\n if (tickSpacing < MAJOR_TICKS_MIN_SPACE) {\n // ensure at least *_TICKS_MIN_SPACE between ticks\n nTicks = Math.floor(width / (tickType === 'minor' ? MINOR_TICKS_MIN_SPACE : MAJOR_TICKS_MIN_SPACE));\n } else if (tickType === 'minor') {\n // only render minor ticks if some values are not included in major ticks\n return [];\n }\n // use d3-scale to produce scaled tick intervals\n const scale = scaleLinear().domain([tMin, tMax]).range([SVG_WIGGLE_ROOM, width]);\n // produce year and x offset for each tick\n return scale.ticks(nTicks).map((year) => ({\n value: year,\n xOffset: scale(year),\n }));\n }, []);\n\n /**\n * Memoize the set of major and minor ticks based on the current min,\n * max, and slider width.\n */\n const ticks = useMemo(() => ({\n major: sliderBounds?.width ? generateTicks(min, max, sliderBounds.width, 'major') : [],\n minor: sliderBounds?.width ? generateTicks(min, max, sliderBounds.width, 'minor') : [],\n }), [min, max, sliderBounds.width]);\n\n return (\n <div\n className={clsx(\n 'h-full',\n 'flex',\n 'flex-col',\n 'relative',\n props.className\n )}\n ref={ref}\n >\n <Timeline\n classNames={props.classNames}\n events={events}\n onClick={props.onClick}\n // range.min and range.max are years; actual values of events are dates. Therefore, use\n // value[1] + 1, so that events occuring during final year fall within the visible range.\n range={{ min: value[0], max: value[1] + 1 }}\n />\n <FacetSlider\n actions={[\n ...actions,\n ...props.actions || []\n ]}\n classNames={{\n ...props.classNames,\n range: clsx('cursor-grab', 'active:cursor-grabbing', 'bg-slate-500', 'border', 'border-black', props.classNames?.range),\n root: clsx('ml-14', 'mr-5', props.classNames?.root),\n track: clsx('cursor-grab', 'active:cursor-grabbing', 'h-5', 'mb-4', props.classNames?.track),\n thumb: clsx('opacity-0', 'w-[1px]', props.classNames?.thumb),\n }}\n hideStepButtons\n max={max}\n min={min}\n onValueChange={setValue}\n onValueCommit={refine}\n position='bottom'\n ticks={ticks}\n ref={sliderRef}\n value={value}\n />\n </div>\n );\n};\n\nexport default FacetTimeline;\n"],"names":["ONE_SECOND","MIN_MONTH","MAX_MONTH","EVENT_WIDTH","EVENT_HEIGHT","MARKER_RADIUS","MARKER_DIAMETER","EVENT_LEFT_BORDER","TIMELINE_PADTOP","TIMELINE_HEIGHT","SVG_WIGGLE_ROOM","FRAME_PADDING","TIMELINE_WIDTH_LIMIT","MAJOR_TICKS_MIN_SPACE","MINOR_TICKS_MIN_SPACE","MIN_ZOOM","ZOOM_FACTOR","DRAG_FACTOR","Timeline","props","min","setMin","useState","max","setMax","ticksRef","ticksBounds","useMeasure","frameRef","frameBounds","draggableRef","useRef","dragging","setDragging","zoom","setZoom","useEffect","zoomWidth","useMemo","range","halfFrame","left","_a","onZoomIn","useCallback","prev","onZoomOut","onDragStart","evt","onDragEnd","onDrag","canZoomIn","canZoomOut","isOverlapping","event","prevEvents","_","prevEvent","timelineEvents","overflowYOffset","acc","xOffset","anchorRight","yOffset","eventsTop","generateTicks","tMin","tMax","timelineWidth","tickType","width","nMajorTicks","scale","scaleTime","majorTicks","timeTicks","date","majorTick","i","minDomain","minRange","minWidth","nMinorTicks","minScale","minTicks","d","t","ticks","displayTickDate","prevDate","tickInterval","jsxs","clsx","mergeRefs","jsx","i18n","Icon","_b","e","value","hideVal","FacetTimeline","refine","start","from","to","events","setEvents","setValue","ref","sliderRef","sliderBounds","slider","newSliderVal","onSliderReset","actions","getDate","sliderWidth","nTicks","scaleLinear","year","FacetSlider","_c","_d"],"mappings":"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"}
1
+ {"version":3,"file":"index.es50.js","sources":["../src/components/FacetTimeline.js"],"sourcesContent":["// @flow\n\nimport { useTimer } from '@performant-software/shared-components';\nimport { clsx } from 'clsx';\nimport { scaleLinear, scaleTime } from 'd3-scale';\nimport { timeTicks } from 'd3-time';\nimport React, {\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState\n} from 'react';\nimport { mergeRefs } from 'react-merge-refs';\nimport useMeasure from 'react-use-measure';\nimport _ from 'underscore';\nimport type { Event as EventType } from '../types/Event';\nimport FacetSlider, { type Action as ActionType, type ClassNames as ClassNamesType } from './FacetSlider';\nimport Icon from './Icon';\nimport { useEventsService } from '../hooks/CoreData';\nimport i18n from '../i18n/i18n';\n\n/**\n * Helper constants: periods of time in milliseconds.\n */\nconst ONE_DAY = 86400000;\nconst MIN_MONTH = 2419200000; // 28 days\nconst MAX_MONTH = 2678400000; // 31 days\n\n/**\n * Width/height of a single event in px.\n */\nconst EVENT_WIDTH = 154;\nconst EVENT_HEIGHT = 42;\n\n/**\n * Additional timeline display constants.\n */\nconst MARKER_RADIUS = 4; // radius of a circular marker on the timeline\nconst MARKER_DIAMETER = MARKER_RADIUS * 2;\nconst EVENT_LEFT_BORDER = 1; // accounting for the border width\nconst TIMELINE_PADTOP = 8; // vertical padding between timeline and events\nconst TIMELINE_HEIGHT = 1; // height of the actual line\nconst SVG_WIGGLE_ROOM = 0.5; // helper to line up left and right edges in svg\nconst FRAME_PADDING = 32; // right padding between timeline and frame\n\n/**\n * Maximum width of the frame bounds in px.\n */\nconst TIMELINE_WIDTH_LIMIT = 3000;\n\n/**\n * The minimum space between major and minor ticks, in pixels.\n */\nconst MAJOR_TICKS_MIN_SPACE = 80;\nconst MINOR_TICKS_MIN_SPACE = 15;\n\n/**\n * Zoom and pan constants.\n */\nconst MIN_ZOOM = 1.0;\nconst ZOOM_FACTOR = 2.0;\nconst DRAG_FACTOR = 1.5;\n\ntype TimelineProps = {\n /**\n * Class names to apply to the FacetSlider and Timeline components.\n */\n classNames?: ClassNamesType & {\n marker?: string,\n },\n\n /**\n * Events to render on the timeline.\n */\n events: Array<EventType>,\n\n /**\n * Callback fired when an event element is clicked.\n */\n onClick?: (event: EventType) => void,\n\n /**\n * The current facet min/max values for the timeline range.\n */\n range: {\n max: number,\n min: number\n },\n};\n\nconst Timeline = (props: TimelineProps) => {\n const [min, setMin] = useState(new Date(props.range.min, 0, 1));\n const [max, setMax] = useState(new Date(props.range.max, 11, 31));\n const [ticksRef, ticksBounds] = useMeasure();\n const [frameRef, frameBounds] = useMeasure();\n const draggableRef = useRef();\n const [dragging, setDragging] = useState(false);\n\n const [zoom, setZoom] = useState(MIN_ZOOM);\n\n /**\n * Reset the zoom to MIN_ZOOM if the facet range changes.\n */\n useEffect(() => {\n setZoom(MIN_ZOOM);\n }, [props.range]);\n\n /**\n * Calculate the timeline's zoomed width as a product of the frame's width.\n */\n const zoomWidth = useMemo(() => (frameBounds.width - FRAME_PADDING) * zoom, [zoom, frameBounds]);\n\n /**\n * Memoizes the current facet range (years) as JavaScript Date objects\n */\n const range = useMemo(() => ({\n min: new Date(props.range.min, 0, 1),\n max: new Date(props.range.max, 0, 1),\n }), [props.range]);\n\n /**\n * Re-center the timeline on zoom.\n */\n useEffect(() => {\n const halfFrame = frameBounds.width / 2;\n const halfTimeline = ticksBounds.width / 2;\n const left = halfTimeline - halfFrame;\n draggableRef.current?.scrollTo({ left });\n }, [zoom, frameBounds, ticksBounds, draggableRef]);\n\n /**\n * Callback for zooming in.\n */\n const onZoomIn = useCallback(() => {\n setZoom((prev) => prev * ZOOM_FACTOR);\n }, [setZoom]);\n\n /**\n * Callback for zooming out.\n */\n const onZoomOut = useCallback(() => {\n setZoom((prev) => (prev === MIN_ZOOM ? prev : prev / ZOOM_FACTOR));\n }, [setZoom]);\n\n /**\n * Callback for starting the timeline drag.\n */\n const onDragStart = useCallback((evt: PointerEvent) => {\n setDragging(true);\n draggableRef.current?.setPointerCapture(evt.pointerId);\n }, [draggableRef.current]);\n\n /**\n * Callback for ending the timeline drag.\n */\n const onDragEnd = useCallback((evt: PointerEvent) => {\n setDragging(false);\n draggableRef.current?.releasePointerCapture(evt.pointerId);\n }, [draggableRef.current]);\n\n /**\n * Callback for dragging the timeline.\n */\n const onDrag = useCallback((evt: PointerEvent) => {\n if (draggableRef.current?.hasPointerCapture(evt.pointerId)) {\n draggableRef.current.scrollLeft -= evt.movementX * DRAG_FACTOR;\n }\n }, [draggableRef]);\n\n /**\n * Memoizes the button enabled state for zoom in, which is enabled as long\n * as the timeline width doesn't exceed TIMELINE_WIDTH_LIMIT.\n */\n const canZoomIn = useMemo(() => ticksBounds.width < TIMELINE_WIDTH_LIMIT, [ticksBounds.width, zoom]);\n\n /**\n * Memoizes the button enabled state for zoom out, which is enabled as long\n * as the current zoom is greater than MIN_ZOOM.\n */\n const canZoomOut = useMemo(() => zoom > MIN_ZOOM, [zoom]);\n\n /**\n * Helper function to determine if an event is overlapping other events on the timeline.\n */\n const isOverlapping = useCallback(\n (event, prevEvents) => _.some(prevEvents, (prevEvent) => prevEvent.yOffset === event.yOffset\n && event.xOffset < prevEvent.xOffset + EVENT_WIDTH\n && event.xOffset + EVENT_WIDTH > prevEvent.xOffset),\n [],\n );\n\n /**\n * Memoizes the x/y positions of events relative to the timeline.\n */\n const timelineEvents = useMemo(() => {\n // track the lowest available yOffset in case of overflow\n let overflowYOffset = 0;\n return _.chain(props.events)\n .sortBy('date')\n .reduce((acc, event) => {\n // calculate xOffset by date\n const relativePos = (event.date - range.min) / (range.max - range.min);\n let xOffset = relativePos * ticksBounds.width;\n let anchorRight = false;\n // if this would overflow the timeline, swap the side of the event\n if (xOffset + EVENT_WIDTH > ticksBounds.width) {\n anchorRight = true;\n xOffset -= EVENT_WIDTH;\n }\n // calculate yOffset based on previous events\n let yOffset = 0;\n const eventsTop = frameBounds.height - ticksBounds.height;\n while (isOverlapping({ xOffset, yOffset }, acc)) {\n if ((yOffset + EVENT_HEIGHT * 2) >= eventsTop) {\n // if we are at the top and about to overflow, reset to overflowYOffset\n yOffset = overflowYOffset;\n // increment overflowYOffset for next overflow case\n if (overflowYOffset + EVENT_HEIGHT * 2 < eventsTop) {\n overflowYOffset += EVENT_HEIGHT;\n } else {\n overflowYOffset = 0;\n }\n break;\n }\n // stack vertically on top of the previous events\n yOffset += EVENT_HEIGHT;\n }\n acc.push({\n ...event, xOffset, yOffset, anchorRight\n });\n return acc;\n }, [])\n .value();\n }, [props.events, ticksBounds, frameBounds.height, range]);\n\n /**\n * Helper function to generate major or minor calendar-based ticks given min/max of the timeline,\n * and the width of the timeline.\n */\n const generateTicks = useCallback((tMin, tMax, timelineWidth, tickType = 'major') => {\n const width = timelineWidth;\n const nMajorTicks = Math.floor(width / MAJOR_TICKS_MIN_SPACE);\n // use d3-scale to produce scaled tick intervals\n const scale = scaleTime().domain([tMin, tMax]).range([0, width]);\n // produce date and x offset for each tick\n const majorTicks = timeTicks(tMin, tMax, nMajorTicks).map((date) => ({\n value: date,\n xOffset: scale(date),\n }));\n // Ensure the last major tick is at tMax (if not already included)\n if (majorTicks.length > 0 && _.last(majorTicks).value.getTime() < tMax.getTime()) {\n majorTicks.push({ value: tMax, xOffset: scale(tMax), hideVal: true });\n }\n if (tickType === 'minor') {\n // because major ticks aren't evenly distributed due to calendar irregularities,\n // generate unique set of minor ticks per interval between major ticks\n if (majorTicks.length > 1) {\n return _.chain(majorTicks)\n .map((majorTick, i) => {\n if (i > 0) {\n // produce scaled tick intervals according to MINOR_TICKS_MIN_SPACE\n const minDomain = [majorTicks[i - 1].value, majorTick.value];\n if (minDomain[1] - minDomain[0] <= MAX_MONTH) {\n // if the major ticks are spaced <= one month apart, NO minor ticks\n return [];\n }\n const minRange = [majorTicks[i - 1].xOffset, majorTick.xOffset];\n const minWidth = minRange[1] - minRange[0];\n const nMinorTicks = Math.floor(minWidth / MINOR_TICKS_MIN_SPACE);\n const minScale = scaleTime().domain(minDomain).range(minRange).nice();\n const minTicks = _.map(minScale.ticks(nMinorTicks), (date) => ({\n value: date,\n xOffset: minScale(date),\n }));\n // skip the minor ticks that are equivalent to major ticks\n const filtered = _.filter(minTicks, (date) => !_.map(\n minDomain, (d) => d.getTime()\n ).includes(date.value.getTime()));\n return filtered;\n }\n return [];\n })\n .flatten()\n // prevent duplicate ticks\n .uniq(true, (t) => t.value)\n .value();\n }\n return [];\n }\n return majorTicks;\n }, []);\n\n /**\n * On load (or timeline width change), adjust based on the width of the slider.\n */\n useEffect(() => {\n let newMin = range.min;\n let newMax = range.max;\n\n // for ticks, expand overall range to get round values\n // generate major and minor ticks across the range of valid values\n const majTicks = _.pluck(generateTicks(\n range.min, range.max, ticksBounds.width, MAJOR_TICKS_MIN_SPACE\n ), 'value');\n if (majTicks?.length > 1) {\n // adjust the min and max such that no values are outside of the\n // first and last major tick\n const tickInterval = majTicks[1] - majTicks[0];\n if (range.min < _.first(majTicks)) {\n const firstMaj = _.first(majTicks);\n newMin = Math.min(range.min, firstMaj.getTime() - ONE_DAY - tickInterval);\n }\n if (range.max > _.last(majTicks)) {\n const lastMaj = _.last(majTicks);\n newMax = Math.max(range.max, lastMaj.getTime() + ONE_DAY + tickInterval);\n }\n }\n setMin(newMin);\n setMax(newMax);\n }, [range.min, range.max, ticksBounds.width]);\n\n /**\n * Memoize the set of major and minor ticks based on the current min,\n * max, and slider width.\n */\n const ticks = useMemo(() => ({\n major: ticksBounds?.width ? generateTicks(min, max, ticksBounds.width, 'major') : [],\n minor: ticksBounds?.width ? generateTicks(min, max, ticksBounds.width, 'minor') : [],\n }), [min, max, ticksBounds.width]);\n\n /**\n * Callback to handle displaying dates on the timeline ticks at different\n * resolutions (day, month, year).\n */\n const displayTickDate = useCallback((date, prevDate) => {\n if (ticks?.major?.length > 1) {\n const tickInterval = ticks.major[1].value - ticks.major[0].value;\n if (!prevDate || prevDate?.getFullYear() !== date.getFullYear()) {\n // show every new year encountered\n return date.getFullYear();\n }\n if (tickInterval > MIN_MONTH || prevDate || prevDate?.getMonth() !== date.getMonth()) {\n // less than a year, more than a month between ticks? show month\n return date.toLocaleDateString(undefined, { month: 'short' });\n }\n // less than a month between ticks? show day (numeric)\n return date.toLocaleDateString(undefined, { day: 'numeric' });\n }\n return date.toString();\n }, [ticks.major]);\n\n return (\n <div\n className={clsx(\n 'grow',\n 'px-4',\n 'pt-6',\n 'pb-2',\n 'flex',\n 'flex-col',\n 'justify-end',\n 'overflow-x-scroll',\n 'select-none',\n dragging ? 'cursor-grabbing' : 'cursor-grab',\n )}\n ref={mergeRefs([frameRef, draggableRef])}\n onPointerMove={onDrag}\n onPointerUp={onDragEnd}\n style={{ scrollbarWidth: 'none' }}\n >\n <div className='absolute top-5 right-5 z-30 flex flex-row'>\n <button\n aria-label={i18n.t('Timeline.zoomIn')}\n className={clsx(\n 'p-3',\n 'disabled:opacity-50',\n 'disabled:hover:bg-transparent',\n 'rounded-tl',\n 'rounded-bl',\n props.classNames?.zoom\n )}\n disabled={!canZoomIn}\n type='button'\n onClick={onZoomIn}\n >\n <Icon name='magnifying_glass_plus' size={19} />\n </button>\n <button\n aria-label={i18n.t('Timeline.zoomOut')}\n className={clsx(\n 'ml-[1px]',\n 'p-3',\n 'disabled:opacity-50',\n 'disabled:hover:bg-transparent',\n 'rounded-tr',\n 'rounded-br',\n props.classNames?.zoom\n )}\n disabled={!canZoomOut}\n type='button'\n onClick={onZoomOut}\n >\n <Icon name='magnifying_glass_minus' size={19} />\n </button>\n </div>\n <div\n className='h-full min-h-36 flex flex-col'\n style={{ width: zoomWidth }}\n onPointerDown={onDragStart}\n >\n <div className='grow relative'>\n {_.map(timelineEvents, (event) => (\n <div\n className='w-44 absolute'\n key={event.uuid}\n style={{\n left: `${event.xOffset}px`,\n bottom: `${event.yOffset + TIMELINE_PADTOP}px`,\n }}\n >\n <svg\n className={clsx(\n 'absolute',\n 'top-[32px]',\n )}\n height={event.yOffset + TIMELINE_PADTOP + MARKER_DIAMETER}\n width={MARKER_DIAMETER}\n style={{\n left: `${event.anchorRight\n ? EVENT_WIDTH + EVENT_LEFT_BORDER - MARKER_RADIUS\n : -MARKER_RADIUS}px`,\n }}\n >\n <line\n x1={MARKER_RADIUS}\n x2={MARKER_RADIUS}\n y1={0}\n y2={event.yOffset + TIMELINE_PADTOP + MARKER_RADIUS - TIMELINE_HEIGHT}\n className='stroke-neutral-300 stroke-[1px]'\n shapeRendering='crispEdges'\n />\n <circle\n cx={MARKER_RADIUS}\n cy={event.yOffset + TIMELINE_PADTOP + MARKER_RADIUS - TIMELINE_HEIGHT}\n r={MARKER_RADIUS}\n className={clsx(props.classNames?.marker || 'fill-neutral-500')}\n />\n </svg>\n <button\n className={clsx(\n 'h-9',\n 'w-44',\n 'px-2',\n 'flex',\n 'items-center',\n 'bg-neutral-100',\n 'active:bg-neutral-300',\n 'outline',\n 'outline-1',\n 'outline-neutral-300',\n 'rounded-tl',\n 'rounded-tr',\n 'relative',\n 'z-10',\n 'hover:z-20',\n 'hover:bg-neutral-200',\n 'text-neutral-800',\n event.anchorRight ? 'rounded-bl' : 'rounded-br',\n 'mb-1',\n )}\n onPointerDown={(e) => e.stopPropagation()}\n onClick={() => props.onClick(event)}\n type='button'\n >\n <span className='truncate text-sm'>\n {event.name}\n </span>\n </button>\n </div>\n ))}\n </div>\n <div ref={ticksRef} className='w-fill'>\n {ticks && (\n <svg\n className='!overflow-visible w-fill'\n height={40}\n width='100%'\n overflow='visible'\n shapeRendering='crispEdges'\n >\n {/* Baseline */}\n {_.last(ticks.major) && (\n <line x1='0' y1='0' x2={_.last(ticks.major).xOffset + SVG_WIGGLE_ROOM} y2='0' stroke='currentColor' />\n )}\n {/* Ticks and labels */}\n {_.map(ticks.major, ({ value, xOffset, hideVal }, i) => !hideVal && (\n <g key={value} transform={`translate(${xOffset}, 0)`}>\n <line y2={10} stroke='currentColor' />\n <text\n className='translate-y-8'\n key={value}\n style={{\n textAnchor: 'middle',\n }}\n fill='currentColor'\n >\n {displayTickDate(value, i !== 0 ? ticks.major[i - 1].value : null)}\n </text>\n </g>\n ))}\n {_.map(ticks.minor, ({ xOffset }, i) => (\n <g key={i} transform={`translate(${xOffset}, 0)`}>\n <line y2={5} stroke='currentColor' />\n </g>\n ))}\n </svg>\n )}\n </div>\n </div>\n </div>\n );\n};\n\ntype Props = {\n /**\n * Custom actions to render with the FacetSlider.\n */\n actions?: Array<ActionType>,\n\n /**\n * Class name to apply to the root DOM element.\n */\n className?: string,\n\n /**\n * Class names to apply to the FacetSlider and Timeline components.\n */\n classNames?: ClassNamesType & {\n marker?: string,\n },\n\n /**\n * Callback fired when the event popover is clicked.\n */\n onClick?: (event: EventType) => void,\n\n /**\n * Callback fired when the events are loaded.\n */\n onLoad?: (events: Array<EventType>) => void,\n\n /**\n * The absolute min/max values for the timeline range.\n */\n range: {\n max: number,\n min: number\n },\n\n /**\n * Callback fired when the slider value(s) are changed.\n *\n * @param any\n */\n refine: (number | [number, number]) => void,\n\n /**\n * The current value of the slider.\n */\n start: [number, number],\n};\n\nconst FacetTimeline = (props: Props) => {\n const { range = {}, refine, start = [] } = props;\n\n const from = Math.max(range.min, Number.isFinite(start[0]) ? start[0] : range.min);\n // NOTE: All calculations are done on range.max + 1, because range.min and range.max are years,\n // while actual values of events are dates. Therefore, range.max should be one more than\n // the highest year, so that events occuring during that year fall within the visible range.\n const to = Math.min(range.max + 1, Number.isFinite(start[1]) ? start[1] : range.max + 1);\n\n const [events, setEvents] = useState();\n const [max, setMax] = useState(range.max + 1);\n const [min, setMin] = useState(range.min);\n const [value, setValue] = useState([from, to]);\n\n const EventsService = useEventsService();\n const ref = useRef();\n const { clearTimer, setTimer } = useTimer();\n const [sliderRef, sliderBounds] = useMeasure();\n\n /**\n * Handle change in min/max: auto-narrow slider bounds if needed\n */\n useEffect(() => {\n setValue((slider) => {\n // if the user zooms in and the slider bounds are outside the\n // zoom window, auto-narrow the slider bounds\n const newSliderVal = [...slider];\n if (min > slider[0]) {\n newSliderVal[0] = min;\n } else if (max < slider[0]) {\n newSliderVal[0] = max;\n }\n if (max < slider[1]) {\n newSliderVal[1] = max;\n } else if (min > slider[1]) {\n newSliderVal[1] = min;\n }\n return newSliderVal;\n });\n }, [min, max]);\n\n /**\n * Callback to reset the slider position to encompass the full range.\n */\n const onSliderReset = () => {\n setValue([min, max]);\n };\n\n /**\n * List of actions to provide to the FacetSlider component.\n */\n const actions = useMemo(() => [{\n className: '-mt-4',\n label: i18n.t('Timeline.resetRange'),\n icon: <Icon name='reset' className='w-5 h-5' />,\n onClick: onSliderReset,\n position: 'right',\n disabled: value[0] === min && value[1] === max\n }], [onSliderReset, value]);\n\n /**\n * Returns passed event's start date as a JavaScript Date object.\n *\n * @type {function(*): *}\n */\n const getDate = useCallback((event) => {\n const date = event.start_date?.start_date || event.end_date?.start_date;\n\n if (date) {\n return new Date(date);\n }\n\n return date;\n }, []);\n\n /**\n * Sets the events on the state.\n *\n * @type {(function(*): void)|*}\n */\n const onLoad = useCallback((data) => {\n setEvents(_.map(data.events, (event) => ({\n ...event,\n date: getDate(event)\n })));\n }, []);\n\n /**\n * Loads the list of events when the range or min/max values are changed.\n */\n useEffect(() => {\n if (!value) {\n return;\n }\n\n // Clear the timeout when the range changes\n clearTimer();\n\n // Reset the timer to fetch the events\n setTimer(() => {\n setEvents([]);\n\n const params = {\n min_year: value[0],\n max_year: value[1]\n };\n\n EventsService\n .fetchAll(params)\n .then(onLoad);\n });\n }, [onLoad, max, min, value]);\n\n /**\n * Calls the onLoad prop when the events are changed.\n */\n useEffect(() => {\n if (props.onLoad) {\n props.onLoad(events);\n }\n }, [events, props.onLoad]);\n\n /**\n * When the upper and/or lower bounds of the range change, update the value and min/max values.\n */\n useEffect(() => {\n setValue([from, to]);\n setMin(range.min);\n setMax(range.max + 1);\n }, [from, to, range.min, range.max]);\n\n /**\n * Helper function to generate major or minor ticks given min/max of the slider,\n * and the width of the slider.\n */\n const generateTicks = useCallback((tMin, tMax, sliderWidth, tickType = 'major') => {\n let nTicks = tMax - tMin;\n const width = sliderWidth - SVG_WIGGLE_ROOM;\n const tickSpacing = width / nTicks;\n if (tickSpacing < MAJOR_TICKS_MIN_SPACE) {\n // ensure at least *_TICKS_MIN_SPACE between ticks\n nTicks = Math.floor(width / (tickType === 'minor' ? MINOR_TICKS_MIN_SPACE : MAJOR_TICKS_MIN_SPACE));\n } else if (tickType === 'minor') {\n // only render minor ticks if some values are not included in major ticks\n return [];\n }\n // use d3-scale to produce scaled tick intervals\n const scale = scaleLinear().domain([tMin, tMax]).range([SVG_WIGGLE_ROOM, width]);\n // produce year and x offset for each tick\n return scale.ticks(nTicks).map((year) => ({\n value: year,\n xOffset: scale(year),\n }));\n }, []);\n\n /**\n * Memoize the set of major and minor ticks based on the current min,\n * max, and slider width.\n */\n const ticks = useMemo(() => ({\n major: sliderBounds?.width ? generateTicks(min, max, sliderBounds.width, 'major') : [],\n minor: sliderBounds?.width ? generateTicks(min, max, sliderBounds.width, 'minor') : [],\n }), [min, max, sliderBounds.width]);\n\n /**\n * On load (or slider width change), adjust based on the width of the slider.\n */\n useEffect(() => {\n // for ticks, expand overall range to get round values\n const nValues = range.max + 1 - range.min;\n // generate ticks across the range of valid values\n const genTicks = _.pluck(generateTicks(\n range.min, range.max + 1, sliderBounds.width, 'major'\n ), 'value');\n if (genTicks?.length < nValues && genTicks.length > 1) {\n // adjust the min and max such that no values are outside of the\n // first and last major tick\n const tickInterval = genTicks[1] - genTicks[0];\n const newMin = Math.min(range.min, _.first(genTicks) - tickInterval);\n const newMax = Math.max(range.max + 1, _.last(genTicks) + tickInterval);\n setMin(newMin);\n setMax(newMax);\n if (value[0] === range.min && value[1] === range.max + 1) {\n // if the slider hasn't been changed from the initial range,\n // set it to encompass the new slider min and max\n setValue([newMin, newMax]);\n }\n }\n }, [range.min, range.max, sliderBounds.width]);\n\n return (\n <div\n className={clsx(\n 'h-full',\n 'flex',\n 'flex-col',\n 'relative',\n props.className\n )}\n ref={ref}\n >\n <Timeline\n classNames={props.classNames}\n events={events}\n onClick={props.onClick}\n range={{ min: value[0], max: value[1] }}\n />\n <FacetSlider\n actions={[\n ...actions,\n ...props.actions || []\n ]}\n classNames={{\n ...props.classNames,\n range: clsx('cursor-grab', 'active:cursor-grabbing', 'bg-slate-500', 'border', 'border-black', props.classNames?.range),\n root: clsx('ml-14', 'mr-5', props.classNames?.root),\n track: clsx('cursor-grab', 'active:cursor-grabbing', 'h-5', 'mb-4', props.classNames?.track),\n thumb: clsx('opacity-0', 'w-[1px]', props.classNames?.thumb),\n }}\n hideStepButtons\n max={max}\n min={min}\n onValueChange={setValue}\n onValueCommit={refine}\n position='bottom'\n ticks={ticks}\n ref={sliderRef}\n value={value}\n />\n </div>\n );\n};\n\nexport default FacetTimeline;\n"],"names":["ONE_DAY","MIN_MONTH","MAX_MONTH","EVENT_WIDTH","EVENT_HEIGHT","MARKER_RADIUS","MARKER_DIAMETER","EVENT_LEFT_BORDER","TIMELINE_PADTOP","TIMELINE_HEIGHT","SVG_WIGGLE_ROOM","FRAME_PADDING","TIMELINE_WIDTH_LIMIT","MAJOR_TICKS_MIN_SPACE","MINOR_TICKS_MIN_SPACE","MIN_ZOOM","ZOOM_FACTOR","DRAG_FACTOR","Timeline","props","min","setMin","useState","max","setMax","ticksRef","ticksBounds","useMeasure","frameRef","frameBounds","draggableRef","useRef","dragging","setDragging","zoom","setZoom","useEffect","zoomWidth","useMemo","range","halfFrame","left","_a","onZoomIn","useCallback","prev","onZoomOut","onDragStart","evt","onDragEnd","onDrag","canZoomIn","canZoomOut","isOverlapping","event","prevEvents","_","prevEvent","timelineEvents","overflowYOffset","acc","xOffset","anchorRight","yOffset","eventsTop","generateTicks","tMin","tMax","timelineWidth","tickType","width","nMajorTicks","scale","scaleTime","majorTicks","timeTicks","date","majorTick","i","minDomain","minRange","minWidth","nMinorTicks","minScale","minTicks","d","t","newMin","newMax","majTicks","tickInterval","firstMaj","lastMaj","ticks","displayTickDate","prevDate","jsxs","clsx","mergeRefs","jsx","i18n","Icon","_b","e","value","hideVal","FacetTimeline","refine","start","from","to","events","setEvents","setValue","EventsService","useEventsService","ref","clearTimer","setTimer","useTimer","sliderRef","sliderBounds","slider","newSliderVal","onSliderReset","actions","getDate","onLoad","data","params","sliderWidth","nTicks","scaleLinear","year","nValues","genTicks","FacetSlider","_c","_d"],"mappings":"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"}
@@ -1,13 +1,13 @@
1
- function f(n) {
2
- var e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
3
- fallback: function() {
4
- }
5
- }, r = e.fallback;
6
- return typeof window > "u" ? r() : n({
7
- window
8
- });
1
+ import o from "./index.es496.js";
2
+ import t from "./index.es266.js";
3
+ function f(e, r) {
4
+ if (r && (o(r) === "object" || typeof r == "function"))
5
+ return r;
6
+ if (r !== void 0)
7
+ throw new TypeError("Derived constructors may only return object or undefined");
8
+ return t(e);
9
9
  }
10
10
  export {
11
- f as safelyRunOnBrowser
11
+ f as default
12
12
  };
13
13
  //# sourceMappingURL=index.es500.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es500.js","sources":["../../../node_modules/instantsearch.js/es/lib/utils/safelyRunOnBrowser.js"],"sourcesContent":["// eslint-disable-next-line no-restricted-globals\n\n/**\n * Runs code on browser environments safely.\n */\nexport function safelyRunOnBrowser(callback) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n fallback: function fallback() {\n return undefined;\n }\n },\n fallback = _ref.fallback;\n // eslint-disable-next-line no-restricted-globals\n if (typeof window === 'undefined') {\n return fallback();\n }\n\n // eslint-disable-next-line no-restricted-globals\n return callback({\n window: window\n });\n}"],"names":["safelyRunOnBrowser","callback","_ref","fallback"],"mappings":"AAKO,SAASA,EAAmBC,GAAU;AACvC,MAAAC,IAAO,UAAU,SAAS,KAAK,UAAU,CAAC,MAAM,SAAY,UAAU,CAAC,IAAI;AAAA,IAC3E,UAAU,WAAoB;AAAA,IAE9B;AAAA,EAAA,GAEFC,IAAWD,EAAK;AAEd,SAAA,OAAO,SAAW,MACbC,EAAS,IAIXF,EAAS;AAAA,IACd;AAAA,EAAA,CACD;AACH;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es500.js","sources":["../../../node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js"],"sourcesContent":["import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}"],"names":["_possibleConstructorReturn","self","call","_typeof","assertThisInitialized"],"mappings":";;AAEwB,SAAAA,EAA2BC,GAAMC,GAAM;AAC7D,MAAIA,MAASC,EAAQD,CAAI,MAAM,YAAY,OAAOA,KAAS;AAClD,WAAAA;AACT,MAAWA,MAAS;AACZ,UAAA,IAAI,UAAU,0DAA0D;AAEhF,SAAOE,EAAsBH,CAAI;AACnC;","x_google_ignoreList":[0]}
@@ -1,8 +1,9 @@
1
- function t(n) {
2
- var o = n.name, e = n.connector, c = e === void 0 ? !1 : e;
3
- return ["https://www.algolia.com/doc/api-reference/widgets/", o, "/js/", c ? "#connector" : ""].join("");
1
+ function e(o) {
2
+ return e = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(t) {
3
+ return t.__proto__ || Object.getPrototypeOf(t);
4
+ }, e(o);
4
5
  }
5
6
  export {
6
- t as createDocumentationLink
7
+ e as default
7
8
  };
8
9
  //# sourceMappingURL=index.es501.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es501.js","sources":["../../../node_modules/instantsearch.js/es/lib/utils/documentation.js"],"sourcesContent":["export function createDocumentationLink(_ref) {\n var name = _ref.name,\n _ref$connector = _ref.connector,\n connector = _ref$connector === void 0 ? false : _ref$connector;\n return ['https://www.algolia.com/doc/api-reference/widgets/', name, '/js/', connector ? '#connector' : ''].join('');\n}\nexport function createDocumentationMessageGenerator() {\n for (var _len = arguments.length, widgets = new Array(_len), _key = 0; _key < _len; _key++) {\n widgets[_key] = arguments[_key];\n }\n var links = widgets.map(function (widget) {\n return createDocumentationLink(widget);\n }).join(', ');\n return function (message) {\n return [message, \"See documentation: \".concat(links)].filter(Boolean).join('\\n\\n');\n };\n}"],"names":["createDocumentationLink","_ref","name","_ref$connector","connector"],"mappings":"AAAO,SAASA,EAAwBC,GAAM;AACxC,MAAAC,IAAOD,EAAK,MACdE,IAAiBF,EAAK,WACtBG,IAAYD,MAAmB,SAAS,KAAQA;AAC3C,SAAA,CAAC,sDAAsDD,GAAM,QAAQE,IAAY,eAAe,EAAE,EAAE,KAAK,EAAE;AACpH;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es501.js","sources":["../../../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js"],"sourcesContent":["export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}"],"names":["_getPrototypeOf","o"],"mappings":"AAAA,SAAwBA,EAAgB,GAAG;AACvB,SAAAA,IAAA,OAAO,iBAAiB,OAAO,eAAe,KAAS,IAAA,SAAyBC,GAAG;AACnG,WAAOA,EAAE,aAAa,OAAO,eAAeA,CAAC;AAAA,EAAA,GAExCD,EAAgB,CAAC;AAC1B;","x_google_ignoreList":[0]}
@@ -1,15 +1,18 @@
1
- import { noop as o } from "./index.es709.js";
2
- var e = o, n = o;
3
- process.env.NODE_ENV === "development" && (e = function(r) {
4
- console.warn("[InstantSearch.js]: ".concat(r.trim()));
5
- }, n = function(r, a) {
6
- if (!r) {
7
- var t = n.cache[a];
8
- t || (n.cache[a] = !0, process.env.NODE_ENV === "development" && e(a));
9
- }
10
- }, n.cache = {});
1
+ import o from "./index.es523.js";
2
+ function i(e, t) {
3
+ if (typeof t != "function" && t !== null)
4
+ throw new TypeError("Super expression must either be null or a function");
5
+ e.prototype = Object.create(t && t.prototype, {
6
+ constructor: {
7
+ value: e,
8
+ writable: !0,
9
+ configurable: !0
10
+ }
11
+ }), Object.defineProperty(e, "prototype", {
12
+ writable: !1
13
+ }), t && o(e, t);
14
+ }
11
15
  export {
12
- e as warn,
13
- n as warning
16
+ i as default
14
17
  };
15
18
  //# sourceMappingURL=index.es502.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es502.js","sources":["../../../node_modules/instantsearch.js/es/lib/utils/logger.js"],"sourcesContent":["import { noop } from \"./noop.js\";\n/**\n * Logs a warning when this function is called, in development environment only.\n */\nvar deprecate = function deprecate(fn, message) {\n return fn;\n};\n\n/**\n * Logs a warning\n * This is used to log issues in development environment only.\n */\nvar warn = noop;\n\n/**\n * Logs a warning if the condition is not met.\n * This is used to log issues in development environment only.\n */\nvar _warning = noop;\nif (process.env.NODE_ENV === 'development') {\n warn = function warn(message) {\n // eslint-disable-next-line no-console\n console.warn(\"[InstantSearch.js]: \".concat(message.trim()));\n };\n deprecate = function deprecate(fn, message) {\n var hasAlreadyPrinted = false;\n return function () {\n if (!hasAlreadyPrinted) {\n hasAlreadyPrinted = true;\n process.env.NODE_ENV === 'development' ? warn(message) : void 0;\n }\n return fn.apply(void 0, arguments);\n };\n };\n _warning = function warning(condition, message) {\n if (condition) {\n return;\n }\n var hasAlreadyPrinted = _warning.cache[message];\n if (!hasAlreadyPrinted) {\n _warning.cache[message] = true;\n process.env.NODE_ENV === 'development' ? warn(message) : void 0;\n }\n };\n _warning.cache = {};\n}\nexport { warn, deprecate, _warning as warning };"],"names":["warn","noop","_warning","message","condition","hasAlreadyPrinted"],"mappings":";AAYA,IAAIA,IAAOC,GAMPC,IAAWD;AACX,QAAQ,IAAI,aAAa,kBACpBD,IAAA,SAAcG,GAAS;AAE5B,UAAQ,KAAK,uBAAuB,OAAOA,EAAQ,KAAM,CAAA,CAAC;AAAA,GAYjDD,IAAA,SAAiBE,GAAWD,GAAS;AAC9C,MAAI,CAAAC,GAGA;AAAA,QAAAC,IAAoBH,EAAS,MAAMC,CAAO;AAC9C,IAAKE,MACMH,EAAA,MAAMC,CAAO,IAAI,IAC1B,QAAQ,IAAI,aAAa,iBAAgBH,EAAKG,CAAO;AAAA;AACvD,GAEFD,EAAS,QAAQ;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.es502.js","sources":["../../../node_modules/@babel/runtime/helpers/esm/inherits.js"],"sourcesContent":["import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}"],"names":["_inherits","subClass","superClass","setPrototypeOf"],"mappings":";AACwB,SAAAA,EAAUC,GAAUC,GAAY;AACtD,MAAI,OAAOA,KAAe,cAAcA,MAAe;AAC/C,UAAA,IAAI,UAAU,oDAAoD;AAE1E,EAAAD,EAAS,YAAY,OAAO,OAAOC,KAAcA,EAAW,WAAW;AAAA,IACrE,aAAa;AAAA,MACX,OAAOD;AAAA,MACP,UAAU;AAAA,MACV,cAAc;AAAA,IAChB;AAAA,EAAA,CACD,GACM,OAAA,eAAeA,GAAU,aAAa;AAAA,IAC3C,UAAU;AAAA,EAAA,CACX,GACGC,KAAYC,EAAeF,GAAUC,CAAU;AACrD;","x_google_ignoreList":[0]}
@@ -1,5 +1,13 @@
1
- var e = { exports: {} };
1
+ import i from "./index.es598.js";
2
+ function f(r, e, t) {
3
+ return e = i(e), e in r ? Object.defineProperty(r, e, {
4
+ value: t,
5
+ enumerable: !0,
6
+ configurable: !0,
7
+ writable: !0
8
+ }) : r[e] = t, r;
9
+ }
2
10
  export {
3
- e as __module
11
+ f as default
4
12
  };
5
13
  //# sourceMappingURL=index.es503.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es503.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"file":"index.es503.js","sources":["../../../node_modules/@babel/runtime/helpers/esm/defineProperty.js"],"sourcesContent":["import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}"],"names":["_defineProperty","obj","key","value","toPropertyKey"],"mappings":";AACwB,SAAAA,EAAgBC,GAAKC,GAAKC,GAAO;AACvD,SAAAD,IAAME,EAAcF,CAAG,GACnBA,KAAOD,IACF,OAAA,eAAeA,GAAKC,GAAK;AAAA,IAC9B,OAAAC;AAAA,IACA,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,UAAU;AAAA,EAAA,CACX,IAEDF,EAAIC,CAAG,IAAIC,GAENF;AACT;","x_google_ignoreList":[0]}