claude-code-best 1.1.0 → 1.2.1

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 (542) hide show
  1. package/README.md +66 -75
  2. package/dist/chunk-03hxwxzh.js +344 -0
  3. package/dist/chunk-07069jq1.js +30 -0
  4. package/dist/{chunk-kq098bkj.js → chunk-08g51x43.js} +254 -320
  5. package/dist/{chunk-7tqhx6dr.js → chunk-093r60b7.js} +109 -213
  6. package/dist/{chunk-ahjgghpe.js → chunk-0aya4737.js} +1 -1
  7. package/dist/{chunk-b4mnbry0.js → chunk-0fsdxz74.js} +4 -4
  8. package/dist/chunk-0jzdwbdc.js +14 -0
  9. package/dist/chunk-0mbxeb5q.js +406 -0
  10. package/dist/chunk-0pryepme.js +66 -0
  11. package/dist/chunk-0qsm7jac.js +169 -0
  12. package/dist/{chunk-1cbn5kxf.js → chunk-0rpb2bdp.js} +3 -2
  13. package/dist/chunk-0se7sxd4.js +38 -0
  14. package/dist/{chunk-3m7ge6tj.js → chunk-0xnepnph.js} +14 -12
  15. package/dist/{chunk-q7tvkc86.js → chunk-0zsam7pn.js} +10 -115
  16. package/dist/{chunk-44fpr6jq.js → chunk-168xb8v1.js} +4 -2
  17. package/dist/{chunk-bj0rvnjw.js → chunk-19h3a9pw.js} +40 -30
  18. package/dist/chunk-19wjkpe7.js +115 -0
  19. package/dist/{chunk-wsqhnjj3.js → chunk-1atfzck5.js} +24 -24
  20. package/dist/{chunk-0e1xsncc.js → chunk-1cwdhk7a.js} +1 -1
  21. package/dist/{chunk-c8jv6rtj.js → chunk-1hq59w8z.js} +78 -69
  22. package/dist/chunk-1qzk963z.js +108 -0
  23. package/dist/{chunk-fk06pejm.js → chunk-1rrmvwjn.js} +9 -9
  24. package/dist/{chunk-d18z9pna.js → chunk-1thgdca1.js} +2 -2
  25. package/dist/chunk-1tjnmcw7.js +68 -0
  26. package/dist/chunk-1xj83yc8.js +219 -0
  27. package/dist/chunk-21j2jfen.js +435 -0
  28. package/dist/{chunk-wc6wwwyb.js → chunk-21z7acxh.js} +3 -3
  29. package/dist/chunk-22gbbc5x.js +313 -0
  30. package/dist/chunk-238g70xa.js +1 -1
  31. package/dist/{chunk-vpb723tx.js → chunk-23ad5t92.js} +5 -5
  32. package/dist/{chunk-vbbf707n.js → chunk-24r3gfks.js} +39 -29
  33. package/dist/chunk-24sahbec.js +71 -0
  34. package/dist/chunk-28az45r7.js +112 -0
  35. package/dist/{chunk-9g827w4j.js → chunk-2q39ej51.js} +6 -6
  36. package/dist/chunk-2qwgfjcj.js +5370 -0
  37. package/dist/{chunk-0cpnzx7t.js → chunk-2rgvd09y.js} +118 -151
  38. package/dist/chunk-2wq8q15s.js +475 -0
  39. package/dist/{chunk-bqq4zamw.js → chunk-2ys5wcxk.js} +3 -3
  40. package/dist/{chunk-t24ytdcw.js → chunk-31nce7eh.js} +12 -10
  41. package/dist/chunk-31q6p2ke.js +123 -0
  42. package/dist/chunk-3394wc12.js +1024 -0
  43. package/dist/{chunk-33khw5gy.js → chunk-365zvqv3.js} +7 -7
  44. package/dist/{chunk-9g2ncq68.js → chunk-36gkb95k.js} +124 -128
  45. package/dist/{chunk-khdjg2v9.js → chunk-37y42ayh.js} +39 -29
  46. package/dist/chunk-3816xd5p.js +195 -0
  47. package/dist/chunk-3a6bynts.js +656 -0
  48. package/dist/{chunk-qvd0k5dn.js → chunk-3avfhw6x.js} +190 -348
  49. package/dist/{chunk-660kcy7p.js → chunk-3b25ycrx.js} +14 -8
  50. package/dist/chunk-3b4xhwhp.js +113 -0
  51. package/dist/chunk-3fjzvf0e.js +128 -0
  52. package/dist/chunk-3fvc0a79.js +67 -0
  53. package/dist/chunk-3g50kcwk.js +513 -0
  54. package/dist/chunk-3jnmy0nd.js +114 -0
  55. package/dist/chunk-3jzsxj3v.js +310 -0
  56. package/dist/{chunk-frbv3xqa.js → chunk-3mpfxbab.js} +2 -2
  57. package/dist/{chunk-aqa7w38f.js → chunk-3v03e2kz.js} +5 -5
  58. package/dist/chunk-3x5hdd5g.js +1030 -0
  59. package/dist/{chunk-mecs0gpc.js → chunk-3xv7rjsy.js} +14 -11
  60. package/dist/{chunk-j3215c49.js → chunk-3ygnhge8.js} +232 -372
  61. package/dist/chunk-42x5tjk2.js +42 -0
  62. package/dist/chunk-430tvx8d.js +110 -0
  63. package/dist/{chunk-dh6c8y1j.js → chunk-43h8sw5x.js} +3 -3
  64. package/dist/chunk-44d150tz.js +1175 -0
  65. package/dist/chunk-45dj834r.js +115 -0
  66. package/dist/{chunk-yhd82045.js → chunk-46fcr28b.js} +30 -9
  67. package/dist/{chunk-wm2f2f1z.js → chunk-474y75ga.js} +2 -2
  68. package/dist/{chunk-6fkwz9yk.js → chunk-478rpnqm.js} +8 -8
  69. package/dist/{chunk-83z0wrnz.js → chunk-47j9e6m2.js} +2 -2
  70. package/dist/chunk-47wqjw88.js +112 -0
  71. package/dist/{chunk-v4t6dyyh.js → chunk-4cp6193g.js} +2 -2
  72. package/dist/chunk-4h102wt5.js +65 -0
  73. package/dist/{chunk-3mgywd32.js → chunk-4hv90qcz.js} +1 -1
  74. package/dist/chunk-4k2270je.js +295 -0
  75. package/dist/{chunk-2wcbcdky.js → chunk-4k842par.js} +5 -5
  76. package/dist/chunk-4nspekjp.js +69 -0
  77. package/dist/chunk-4pjqtps4.js +151 -0
  78. package/dist/chunk-4sehjy27.js +112 -0
  79. package/dist/{chunk-pgnnrm2v.js → chunk-4t86n23n.js} +21 -17
  80. package/dist/{chunk-2de1vaxf.js → chunk-4whfjn78.js} +68 -78
  81. package/dist/{chunk-41mpwc8h.js → chunk-53c9gb9c.js} +19 -15
  82. package/dist/chunk-53kt8caz.js +122 -0
  83. package/dist/chunk-5a6ahhvy.js +594 -0
  84. package/dist/{chunk-12pv5fez.js → chunk-5gbqknz6.js} +10 -8
  85. package/dist/{chunk-hfzj1m07.js → chunk-5kkvfgzs.js} +14 -5
  86. package/dist/{chunk-4ycz58wj.js → chunk-5pxygepg.js} +68 -8
  87. package/dist/{chunk-2w8633e3.js → chunk-5rgbq3kf.js} +61 -100
  88. package/dist/{chunk-ggqx30m9.js → chunk-5z28bqne.js} +23 -311
  89. package/dist/{chunk-7ejt5gqq.js → chunk-5z8w2q5k.js} +65 -48
  90. package/dist/chunk-60k6v40t.js +70 -0
  91. package/dist/{chunk-p7g7pf3f.js → chunk-61ahbn23.js} +8 -6
  92. package/dist/{chunk-rmbp2das.js → chunk-64pp4hsr.js} +21 -19
  93. package/dist/{chunk-0sb5scxx.js → chunk-652wnf1z.js} +5 -5
  94. package/dist/{chunk-q25bjaev.js → chunk-677as3nh.js} +2 -2
  95. package/dist/{chunk-xs0hwvpa.js → chunk-68pfxvxt.js} +14 -9
  96. package/dist/{chunk-epmheefa.js → chunk-69hys77v.js} +8 -8
  97. package/dist/{chunk-427m88ms.js → chunk-6p1cptq5.js} +9 -9
  98. package/dist/{chunk-0nqrscrr.js → chunk-6p3mtny2.js} +5 -5
  99. package/dist/{chunk-v1mgv1et.js → chunk-6p4cyhb3.js} +4 -3
  100. package/dist/{chunk-m17y8b22.js → chunk-6rxz872v.js} +39 -29
  101. package/dist/chunk-6sjxvthw.js +106 -0
  102. package/dist/{chunk-6mz58s8p.js → chunk-6xana182.js} +18 -14
  103. package/dist/{chunk-vaebptnz.js → chunk-6zn3fm1k.js} +39 -29
  104. package/dist/chunk-704jkbsp.js +183 -0
  105. package/dist/chunk-71sf47by.js +154 -0
  106. package/dist/chunk-73a5g713.js +78 -0
  107. package/dist/chunk-78p7h20f.js +259 -0
  108. package/dist/chunk-7a3b1d4s.js +75 -0
  109. package/dist/{chunk-fpf4cgbt.js → chunk-7bfach0x.js} +9 -9
  110. package/dist/{chunk-ckcagq32.js → chunk-7gqf9wej.js} +5 -5
  111. package/dist/{chunk-sa7nc0vv.js → chunk-7y25wk51.js} +1 -1
  112. package/dist/{chunk-vyd8jzde.js → chunk-81v55vtd.js} +96 -85
  113. package/dist/{chunk-dv1wfr85.js → chunk-8225arm6.js} +5 -4
  114. package/dist/chunk-86715d2d.js +186 -0
  115. package/dist/chunk-8ah9easf.js +365 -0
  116. package/dist/{chunk-rwexx5ns.js → chunk-8baq1s87.js} +1 -3
  117. package/dist/chunk-8fy8hx84.js +386 -0
  118. package/dist/{chunk-4pbx3g7s.js → chunk-8g747a8x.js} +1 -1
  119. package/dist/{chunk-xyqr1cww.js → chunk-8me0yq6v.js} +12 -12
  120. package/dist/{chunk-sdj9b9wh.js → chunk-8pn8tvgg.js} +9 -154
  121. package/dist/chunk-8qxyxgkb.js +161 -0
  122. package/dist/{chunk-ecsw41df.js → chunk-8xs4yp9x.js} +85 -77
  123. package/dist/{chunk-24x87knx.js → chunk-9000dg9h.js} +1327 -2882
  124. package/dist/{chunk-bmvb57qb.js → chunk-905d2hee.js} +5 -5
  125. package/dist/chunk-90qsc60s.js +378 -0
  126. package/dist/chunk-92x6xgex.js +265 -0
  127. package/dist/{chunk-jknt3rxg.js → chunk-9ctg4x6c.js} +7 -9
  128. package/dist/chunk-9e4z7dx7.js +389 -0
  129. package/dist/chunk-9hy6ejmp.js +151 -0
  130. package/dist/chunk-9jvggd30.js +173 -0
  131. package/dist/{chunk-z9tgzh90.js → chunk-9m729tsn.js} +46 -35
  132. package/dist/chunk-9r90d3jt.js +121 -0
  133. package/dist/chunk-9rx2m3cb.js +124 -0
  134. package/dist/chunk-9sr2etaw.js +110 -0
  135. package/dist/chunk-9z8hzgve.js +68 -0
  136. package/dist/{chunk-yxnwsp4f.js → chunk-9zy607vw.js} +8 -6
  137. package/dist/chunk-a0bz6g5e.js +63 -0
  138. package/dist/chunk-a136cvvz.js +27 -0
  139. package/dist/{chunk-n5t9m8h9.js → chunk-a1bjde7d.js} +7 -7
  140. package/dist/{chunk-mvss16tj.js → chunk-a2aj2mtb.js} +414 -636
  141. package/dist/{chunk-8hsyagr8.js → chunk-a3sfy6as.js} +1 -1
  142. package/dist/{chunk-8hq5kk3y.js → chunk-a4twdmhf.js} +3 -2
  143. package/dist/chunk-ae76ded0.js +30 -0
  144. package/dist/chunk-aegyxcne.js +111 -0
  145. package/dist/chunk-aj1dcvrh.js +131 -0
  146. package/dist/{chunk-1yabrspp.js → chunk-amxm6996.js} +2 -2
  147. package/dist/{chunk-t6h4wf3k.js → chunk-ar39mr9c.js} +11 -11
  148. package/dist/{chunk-r6b58y3x.js → chunk-ase86y73.js} +1 -3
  149. package/dist/chunk-asfxrz4f.js +94 -0
  150. package/dist/chunk-axj46c2c.js +196 -0
  151. package/dist/{chunk-m5eb5pt2.js → chunk-ayz6f38j.js} +6 -6
  152. package/dist/{chunk-5b7119h5.js → chunk-b00zd850.js} +8 -6
  153. package/dist/chunk-b2abjkf7.js +126 -0
  154. package/dist/{chunk-8bedvdm1.js → chunk-b81hd3m6.js} +1 -1
  155. package/dist/chunk-bcfd2zw7.js +20 -0
  156. package/dist/{chunk-n5516f5q.js → chunk-bd8zk9tn.js} +4 -4
  157. package/dist/chunk-bhdt6k7w.js +15 -0
  158. package/dist/{chunk-jy35mvy3.js → chunk-bmjmrk76.js} +7 -7
  159. package/dist/chunk-bqaqz1j1.js +126 -0
  160. package/dist/chunk-bsbmmfyt.js +17 -0
  161. package/dist/{chunk-snvypj85.js → chunk-bt64sq5y.js} +3 -2
  162. package/dist/{chunk-zq9xa1xe.js → chunk-bwevztsj.js} +109 -141
  163. package/dist/{chunk-vyc0rjyx.js → chunk-bwg7582d.js} +1 -1
  164. package/dist/{chunk-3be7ka25.js → chunk-bxcfz5gy.js} +1 -1
  165. package/dist/chunk-c2mn2fyg.js +1406 -0
  166. package/dist/chunk-c2tw0dep.js +1811 -0
  167. package/dist/{chunk-402jrnj6.js → chunk-c5bngssh.js} +8 -8
  168. package/dist/chunk-c6sjhj89.js +1284 -0
  169. package/dist/chunk-cb2hpe6k.js +443 -0
  170. package/dist/{chunk-91r0z5qq.js → chunk-ccr1s7qs.js} +1152 -1771
  171. package/dist/chunk-cewqh6rb.js +111 -0
  172. package/dist/{chunk-k9a8jemz.js → chunk-cg01f3ez.js} +7 -7
  173. package/dist/{chunk-f64npa3b.js → chunk-chsyvavm.js} +704 -4
  174. package/dist/{chunk-z8nbjar4.js → chunk-cmcbatgz.js} +7 -5
  175. package/dist/chunk-cnsj3vq2.js +35 -0
  176. package/dist/{chunk-rj86xm6z.js → chunk-cpwe0yw7.js} +1 -1
  177. package/dist/chunk-cqjmxeqv.js +269 -0
  178. package/dist/{chunk-qpm1tmzz.js → chunk-crefny3c.js} +125 -193
  179. package/dist/{chunk-ks0m9njy.js → chunk-d2jekryq.js} +8 -8
  180. package/dist/chunk-d4mdda98.js +94 -0
  181. package/dist/{chunk-26wtxbdc.js → chunk-d7886r6a.js} +6928 -6928
  182. package/dist/chunk-dfkgpfaj.js +135 -0
  183. package/dist/{chunk-9mfbqw9k.js → chunk-dm3n2qgd.js} +4 -4
  184. package/dist/chunk-dnj95atq.js +66 -0
  185. package/dist/{chunk-vjc1svpc.js → chunk-dqgzpb0q.js} +87 -77
  186. package/dist/chunk-drenq3c7.js +383 -0
  187. package/dist/chunk-drkm8yx2.js +34 -0
  188. package/dist/{chunk-ra8fbt9p.js → chunk-dvjzq9x9.js} +543 -874
  189. package/dist/{chunk-w7h2yphx.js → chunk-dwekpr47.js} +2 -2
  190. package/dist/{chunk-49k5ktrj.js → chunk-e18dg1md.js} +31 -16
  191. package/dist/chunk-e396ak46.js +111 -0
  192. package/dist/{chunk-r55r29js.js → chunk-e3c32vwa.js} +191 -276
  193. package/dist/chunk-e3m7kqkb.js +1185 -0
  194. package/dist/{chunk-9cc60ae5.js → chunk-ea9m4e0k.js} +79 -70
  195. package/dist/chunk-ecsa9nd5.js +63 -0
  196. package/dist/{chunk-cmdsbsb6.js → chunk-edzkkadh.js} +2 -2
  197. package/dist/chunk-ek1jasqg.js +142 -0
  198. package/dist/chunk-ep0hwv07.js +126 -0
  199. package/dist/{chunk-cs6y2pc9.js → chunk-ergam9ft.js} +5 -5
  200. package/dist/{chunk-ptwn7qw7.js → chunk-f2k8b4nd.js} +38 -10
  201. package/dist/{chunk-h0rbjg6x.js → chunk-f2mhrmww.js} +8 -1
  202. package/dist/{chunk-s84smrx4.js → chunk-f32cksgw.js} +155 -190
  203. package/dist/{chunk-vzqrbsd1.js → chunk-f69rgsm2.js} +5 -5
  204. package/dist/{chunk-f3bapa1x.js → chunk-f6rbj3gz.js} +12 -7
  205. package/dist/chunk-f7n3xete.js +113 -0
  206. package/dist/chunk-fbest4vx.js +109 -0
  207. package/dist/{chunk-v0wa5ref.js → chunk-fdtcb8qr.js} +13 -555
  208. package/dist/chunk-feh2j8m2.js +136 -0
  209. package/dist/chunk-feyzykye.js +10 -0
  210. package/dist/chunk-fkkysfev.js +158 -0
  211. package/dist/chunk-fn510gqw.js +216 -0
  212. package/dist/{chunk-ch53fgm5.js → chunk-ft9qsa01.js} +13 -11
  213. package/dist/chunk-fw0ckaxh.js +109 -0
  214. package/dist/{chunk-kd97kxjn.js → chunk-fz0ch109.js} +3 -2
  215. package/dist/{chunk-ks0dm6t3.js → chunk-fzn524wa.js} +17 -71
  216. package/dist/chunk-g1k68z1b.js +15 -0
  217. package/dist/{chunk-9t1x831d.js → chunk-g5nb4xhz.js} +86 -74
  218. package/dist/chunk-g82mdy27.js +429 -0
  219. package/dist/{chunk-68qevppc.js → chunk-g8sz060e.js} +82 -72
  220. package/dist/chunk-g9f19ttm.js +15 -0
  221. package/dist/{chunk-zz21rvr7.js → chunk-gdqxtdh4.js} +9 -6
  222. package/dist/chunk-get9fk3h.js +74 -0
  223. package/dist/{chunk-4x5ym4h2.js → chunk-gf6qjt7j.js} +130 -16
  224. package/dist/{chunk-bq6x1ehp.js → chunk-gpz0ddyz.js} +8 -8
  225. package/dist/{chunk-mwp7sj0q.js → chunk-gs5eeqmc.js} +110336 -114801
  226. package/dist/{chunk-qqfa0dqg.js → chunk-h4b85amj.js} +20 -32
  227. package/dist/{chunk-j4c8s7tn.js → chunk-h5zv78zq.js} +9 -6
  228. package/dist/{chunk-cgn27dqf.js → chunk-ha5d5zfj.js} +3 -3
  229. package/dist/{chunk-crr52hf4.js → chunk-han7cwc0.js} +14 -12
  230. package/dist/{chunk-dnyeb288.js → chunk-hbv0tk35.js} +74 -106
  231. package/dist/{chunk-nxsh6de2.js → chunk-hcgkak1j.js} +20 -125
  232. package/dist/{chunk-224x480q.js → chunk-hd1p4hrd.js} +8 -6
  233. package/dist/{chunk-tjaqa99q.js → chunk-hezj20qy.js} +3 -3
  234. package/dist/{chunk-z7pr85qw.js → chunk-hfdyez7b.js} +3 -3
  235. package/dist/chunk-hh7hqa2c.js +272 -0
  236. package/dist/chunk-hk4a2sks.js +83 -0
  237. package/dist/{chunk-5zh1fbrj.js → chunk-hq85v2s7.js} +3 -3
  238. package/dist/chunk-hr06142m.js +117 -0
  239. package/dist/chunk-j1b3r6v6.js +66 -0
  240. package/dist/{chunk-v8xem37v.js → chunk-j2fgn3kq.js} +8 -6
  241. package/dist/chunk-j2wgj22c.js +441 -0
  242. package/dist/{chunk-9gbamk79.js → chunk-j5bth84e.js} +5 -1
  243. package/dist/{chunk-vratq94g.js → chunk-j9gxwbe3.js} +1 -1
  244. package/dist/{chunk-cettj572.js → chunk-ja87jt56.js} +7 -131
  245. package/dist/{chunk-3r24h7t6.js → chunk-jaaxk89e.js} +1 -1
  246. package/dist/{chunk-f4jcw0ea.js → chunk-jaew3662.js} +18 -14
  247. package/dist/{chunk-e1ge9n4d.js → chunk-jb2nh0m0.js} +2 -2
  248. package/dist/{chunk-f9b4wb89.js → chunk-jb4fc073.js} +84 -75
  249. package/dist/chunk-jba8f3hz.js +108 -0
  250. package/dist/{chunk-er9vzjac.js → chunk-jbt0jgtc.js} +16 -14
  251. package/dist/{chunk-v399mzxk.js → chunk-jf0p00fz.js} +2 -2
  252. package/dist/{chunk-vygf94dw.js → chunk-jg4ge4de.js} +78 -69
  253. package/dist/chunk-jkvy2cmt.js +346 -0
  254. package/dist/{chunk-80qg1pzv.js → chunk-jmdy5vdy.js} +11 -9
  255. package/dist/{chunk-dqh7e4mt.js → chunk-jn08nxj8.js} +52 -42
  256. package/dist/{chunk-av73dywf.js → chunk-jna2tcvj.js} +8 -8
  257. package/dist/chunk-jwh384j5.js +126 -0
  258. package/dist/chunk-jwx2scxy.js +222 -0
  259. package/dist/{chunk-41xeh3t9.js → chunk-jy6c07wa.js} +4 -4
  260. package/dist/{chunk-ctmt7xh1.js → chunk-jy77nthd.js} +740 -907
  261. package/dist/{chunk-hzttn8j7.js → chunk-jyjpaqbt.js} +139 -135
  262. package/dist/chunk-jztjnw31.js +147 -0
  263. package/dist/chunk-k0jhzcwg.js +2540 -0
  264. package/dist/{chunk-myzwt5yw.js → chunk-k0kwfqr8.js} +9 -15
  265. package/dist/{chunk-bqfnp99q.js → chunk-k3s4yk22.js} +1 -1
  266. package/dist/{chunk-1dyeexvn.js → chunk-kd3mmsd2.js} +4 -4
  267. package/dist/{chunk-x51h62jq.js → chunk-ke78h68m.js} +78 -69
  268. package/dist/{chunk-1xkekb9y.js → chunk-kfd89dsd.js} +5 -3
  269. package/dist/chunk-ksvvwa9w.js +111 -0
  270. package/dist/{chunk-jy35z4n0.js → chunk-m1z5td19.js} +9 -9
  271. package/dist/{chunk-jafes477.js → chunk-m2bcpk8j.js} +4 -3
  272. package/dist/{chunk-n6fbyke9.js → chunk-m2mzpskw.js} +3 -3
  273. package/dist/{chunk-s2dmn3yg.js → chunk-m47q5mxt.js} +5 -5
  274. package/dist/{chunk-s7qj2hg5.js → chunk-m8vyp6rw.js} +2 -2
  275. package/dist/chunk-mm4m13ng.js +881 -0
  276. package/dist/{chunk-ghr4s9g6.js → chunk-mq1qrwhq.js} +79 -70
  277. package/dist/{chunk-45e9mkyr.js → chunk-mqqw60br.js} +43 -83
  278. package/dist/chunk-mtcdknc8.js +2842 -0
  279. package/dist/{chunk-cvge4pvp.js → chunk-mzd6frw6.js} +2 -2
  280. package/dist/{chunk-n2874aq5.js → chunk-n1neft0d.js} +13 -7
  281. package/dist/{chunk-bcrxtdcy.js → chunk-n2mysxn1.js} +40 -30
  282. package/dist/chunk-n4wkxbq0.js +365 -0
  283. package/dist/chunk-n57dw6h9.js +128 -0
  284. package/dist/chunk-n5wf3b82.js +118 -0
  285. package/dist/{chunk-zgrg0wk3.js → chunk-n7ce94nd.js} +27 -67
  286. package/dist/{chunk-me2ef6g4.js → chunk-n8mpqdje.js} +1 -1
  287. package/dist/{chunk-g5sg6y9q.js → chunk-na2e0dfj.js} +82 -72
  288. package/dist/chunk-netzwgv1.js +154 -0
  289. package/dist/{chunk-xszk7n10.js → chunk-nh3cd07f.js} +1 -1
  290. package/dist/{chunk-5tx8dsy0.js → chunk-npjsp3z3.js} +10493 -18453
  291. package/dist/{chunk-5hva0tsg.js → chunk-p2yv7m0g.js} +6 -6
  292. package/dist/chunk-p4rmbc1e.js +409 -0
  293. package/dist/chunk-p7jdncj4.js +122 -0
  294. package/dist/{chunk-zk2wsm7d.js → chunk-p7vkh4wx.js} +2 -2
  295. package/dist/{chunk-da4ve9t5.js → chunk-p8crqj70.js} +10 -10
  296. package/dist/{chunk-hy3g1nv8.js → chunk-prw4xz5q.js} +9 -7
  297. package/dist/{chunk-zsfxha74.js → chunk-pshjyzq4.js} +8 -7
  298. package/dist/{chunk-684kdqez.js → chunk-q08sb44h.js} +203 -304
  299. package/dist/{chunk-n7158r58.js → chunk-q78bgdtk.js} +79 -70
  300. package/dist/{chunk-e5pntxye.js → chunk-q7tpyeb3.js} +6 -4
  301. package/dist/{chunk-7ymfj7m3.js → chunk-q82r31er.js} +1 -1
  302. package/dist/chunk-qajrkk97.js +298 -0
  303. package/dist/chunk-qbrsmra3.js +23 -0
  304. package/dist/chunk-qhfn4vgv.js +66 -0
  305. package/dist/{chunk-d7mx1phm.js → chunk-qndzvkdx.js} +61 -103
  306. package/dist/{chunk-35y0r56v.js → chunk-qtfc6wdh.js} +1 -4
  307. package/dist/{chunk-v9y80148.js → chunk-qwcnwn5t.js} +100 -191
  308. package/dist/chunk-qwehvedn.js +440 -0
  309. package/dist/{chunk-2cgdr2n7.js → chunk-qwk9fq7r.js} +78 -69
  310. package/dist/chunk-qy75c2vm.js +70 -0
  311. package/dist/{chunk-rryx19hp.js → chunk-r2k2jy0y.js} +2 -2
  312. package/dist/chunk-r47p0ff0.js +61 -0
  313. package/dist/{chunk-t3bf8hcf.js → chunk-r5tk54yt.js} +2 -2
  314. package/dist/{chunk-bt9krt49.js → chunk-r8q993g6.js} +38 -32
  315. package/dist/{chunk-veb0gkcf.js → chunk-ra2rykps.js} +78 -69
  316. package/dist/{chunk-gbcqdr0x.js → chunk-rav5xp8h.js} +1 -1
  317. package/dist/chunk-rbe0tcn9.js +120 -0
  318. package/dist/chunk-rd5cfz3k.js +68 -0
  319. package/dist/{chunk-cenpqc2t.js → chunk-rdvaan98.js} +8 -6
  320. package/dist/{chunk-dr4qq42x.js → chunk-rgbbtszq.js} +9 -9
  321. package/dist/chunk-rjsb9s3q.js +206 -0
  322. package/dist/{chunk-fdwa7gem.js → chunk-rkak3kjw.js} +7 -7
  323. package/dist/{chunk-a6s8wnhe.js → chunk-rnam0xc5.js} +4 -4
  324. package/dist/chunk-rqkqbppr.js +112 -0
  325. package/dist/{chunk-ye18m1zb.js → chunk-rqvqqrpg.js} +38 -8
  326. package/dist/{chunk-rw466wqn.js → chunk-rvkvehat.js} +5284 -3093
  327. package/dist/chunk-s1baskk7.js +14 -0
  328. package/dist/{chunk-jt0pha6y.js → chunk-s5gnvx67.js} +227 -198
  329. package/dist/chunk-s7dtt7tw.js +109 -0
  330. package/dist/chunk-s9ftt1fh.js +135 -0
  331. package/dist/chunk-sc6sy490.js +240 -0
  332. package/dist/chunk-sh9er84d.js +1073 -0
  333. package/dist/{chunk-faycqscv.js → chunk-sk9xag9g.js} +2 -2
  334. package/dist/{chunk-zpc0kwkb.js → chunk-t0g8wbcq.js} +7 -7
  335. package/dist/chunk-tbgm1v8n.js +146 -0
  336. package/dist/{chunk-35b0ek0j.js → chunk-tcdv4gp8.js} +13 -9
  337. package/dist/{chunk-mt25echc.js → chunk-tezak8rx.js} +1 -1
  338. package/dist/chunk-thk6yn51.js +154 -0
  339. package/dist/{chunk-s2gm9vfk.js → chunk-tkf24yhv.js} +7 -7
  340. package/dist/{chunk-6td4c2eq.js → chunk-tkrjcekq.js} +54 -72
  341. package/dist/{chunk-9rcbyag3.js → chunk-tmdbrszg.js} +2 -2
  342. package/dist/chunk-tw2g1yhq.js +118 -0
  343. package/dist/chunk-twzjxwhf.js +182 -0
  344. package/dist/{chunk-m94pnhfa.js → chunk-v4e4f711.js} +39 -29
  345. package/dist/{chunk-b51jjfh5.js → chunk-v5k7zmqm.js} +43 -32
  346. package/dist/chunk-var1et7e.js +66 -0
  347. package/dist/chunk-vd11xbz3.js +304 -0
  348. package/dist/{chunk-hqmz36b3.js → chunk-vf612n57.js} +21 -101
  349. package/dist/chunk-vfhqj46w.js +144 -0
  350. package/dist/chunk-vkxx8ymr.js +2377 -0
  351. package/dist/{chunk-n9x557ea.js → chunk-vs094cby.js} +2332 -4220
  352. package/dist/{chunk-dxc7begm.js → chunk-vtb8z6as.js} +14 -10
  353. package/dist/{chunk-x51mdzqq.js → chunk-vzd3cjy9.js} +3 -3
  354. package/dist/chunk-w2es9743.js +439 -0
  355. package/dist/{chunk-8z039kef.js → chunk-w92b262y.js} +53 -54
  356. package/dist/chunk-wa1dpga1.js +236 -0
  357. package/dist/{chunk-qf2v384j.js → chunk-wbmacbfb.js} +9 -7
  358. package/dist/{chunk-ryj80g9p.js → chunk-wbn46nb4.js} +136 -178
  359. package/dist/{chunk-t9z6njcr.js → chunk-wtycm8km.js} +9 -9
  360. package/dist/{chunk-q6rax9kh.js → chunk-wymtgh88.js} +5 -5
  361. package/dist/{chunk-pa7saazk.js → chunk-x0aj8rh8.js} +28 -56
  362. package/dist/{chunk-1szr63w0.js → chunk-x69w7xr7.js} +86 -74
  363. package/dist/{chunk-k5gdea6r.js → chunk-x6qmm22r.js} +84 -75
  364. package/dist/{chunk-zrse3zpz.js → chunk-xbprynsc.js} +18 -46
  365. package/dist/chunk-xc0v11v6.js +914 -0
  366. package/dist/chunk-xed18bb5.js +233 -0
  367. package/dist/{chunk-gjyc3293.js → chunk-xj76qk4z.js} +288 -499
  368. package/dist/chunk-xmd9eezd.js +83 -0
  369. package/dist/chunk-xrzrbw0f.js +142 -0
  370. package/dist/{chunk-fzxg8v1y.js → chunk-xycy3c8q.js} +15 -12
  371. package/dist/chunk-y0m0rd5v.js +140 -0
  372. package/dist/chunk-y2vtmzre.js +137 -0
  373. package/dist/{chunk-vybkxr18.js → chunk-y5z1cjbk.js} +42 -32
  374. package/dist/chunk-y60q54ph.js +111 -0
  375. package/dist/{chunk-d7vv2ydf.js → chunk-y78t50v0.js} +2 -2
  376. package/dist/{chunk-xkr7as9h.js → chunk-y9bgt2k1.js} +13 -9
  377. package/dist/chunk-ycwdzwz5.js +233 -0
  378. package/dist/chunk-yfyc2y1v.js +136 -0
  379. package/dist/chunk-yg6gtf9j.js +152 -0
  380. package/dist/{chunk-kyer92r4.js → chunk-yk8vcecd.js} +33 -5
  381. package/dist/{chunk-hkn7tzgv.js → chunk-ym5r3jnk.js} +1 -1
  382. package/dist/chunk-yr6gqw17.js +132 -0
  383. package/dist/chunk-yw62vhjz.js +445 -0
  384. package/dist/{chunk-athjeyrt.js → chunk-yw79dz62.js} +4 -4
  385. package/dist/{chunk-5mrhhmas.js → chunk-yx64nmbh.js} +8 -5
  386. package/dist/chunk-yy232vtj.js +84 -0
  387. package/dist/chunk-z1bs6d7k.js +24 -0
  388. package/dist/chunk-z4mgvsdj.js +456 -0
  389. package/dist/chunk-z6e5jp2w.js +119 -0
  390. package/dist/{chunk-t7cbhqd2.js → chunk-z6zt2ns7.js} +111 -123
  391. package/dist/chunk-z735r3p2.js +114 -0
  392. package/dist/{chunk-rjz6btwk.js → chunk-z7ssqvt6.js} +4972 -4638
  393. package/dist/{chunk-bpts9jbq.js → chunk-z8nv1ah0.js} +39 -31
  394. package/dist/chunk-z9mbssbe.js +128 -0
  395. package/dist/chunk-zdctabq6.js +264 -0
  396. package/dist/{chunk-ve60fbtd.js → chunk-ze6zvkg6.js} +2 -2
  397. package/dist/{chunk-t0rgmccj.js → chunk-zejm280k.js} +1 -1
  398. package/dist/{chunk-krstc7m7.js → chunk-zfapazzd.js} +15 -11
  399. package/dist/{chunk-2j0j79p0.js → chunk-zg4ae27v.js} +8 -8
  400. package/dist/chunk-zqxe8qnw.js +3590 -0
  401. package/dist/{chunk-q6dpqj3z.js → chunk-zs2ddzfv.js} +10 -7
  402. package/dist/chunk-zy80g72r.js +512 -0
  403. package/dist/{chunk-g3t0act8.js → chunk-zzm33q8x.js} +1 -1
  404. package/dist/{chunk-s8fzxy94.js → chunk-zzzc1ead.js} +17 -13
  405. package/dist/cli.js +63 -11
  406. package/dist/vendor/audio-capture/arm64-darwin/audio-capture.node +0 -0
  407. package/dist/vendor/audio-capture/arm64-linux/audio-capture.node +0 -0
  408. package/dist/vendor/audio-capture/arm64-win32/audio-capture.node +0 -0
  409. package/dist/vendor/audio-capture/x64-darwin/audio-capture.node +0 -0
  410. package/dist/vendor/audio-capture/x64-linux/audio-capture.node +0 -0
  411. package/dist/vendor/audio-capture/x64-win32/audio-capture.node +0 -0
  412. package/package.json +8 -5
  413. package/scripts/postinstall.cjs +319 -0
  414. package/dist/chunk-0291smg3.js +0 -42
  415. package/dist/chunk-04g2ty3v.js +0 -104
  416. package/dist/chunk-069x95ne.js +0 -764
  417. package/dist/chunk-06x02eab.js +0 -655
  418. package/dist/chunk-09pjmga5.js +0 -713
  419. package/dist/chunk-0g90je6r.js +0 -145
  420. package/dist/chunk-0paqc2yw.js +0 -15
  421. package/dist/chunk-0rddv9vb.js +0 -328
  422. package/dist/chunk-162w6yv3.js +0 -756
  423. package/dist/chunk-1gjbaa3n.js +0 -128
  424. package/dist/chunk-23wg4mnt.js +0 -404
  425. package/dist/chunk-2gbjtg7c.js +0 -102
  426. package/dist/chunk-2v1q0ezq.js +0 -102
  427. package/dist/chunk-37n7jkxe.js +0 -436
  428. package/dist/chunk-38svjnh4.js +0 -158
  429. package/dist/chunk-3bg1089y.js +0 -616
  430. package/dist/chunk-3d8ck5ne.js +0 -112
  431. package/dist/chunk-3g6rf9sz.js +0 -106
  432. package/dist/chunk-3x3rr2n5.js +0 -57
  433. package/dist/chunk-4f6q3d38.js +0 -117
  434. package/dist/chunk-4h57km3m.js +0 -74
  435. package/dist/chunk-4kyh2618.js +0 -99
  436. package/dist/chunk-4w9vc9vc.js +0 -119
  437. package/dist/chunk-53hqpp5z.js +0 -208
  438. package/dist/chunk-5deqy8r0.js +0 -143
  439. package/dist/chunk-5m2rmc2k.js +0 -128
  440. package/dist/chunk-5wp9pkpt.js +0 -539
  441. package/dist/chunk-5ym9f6w3.js +0 -263
  442. package/dist/chunk-6f938733.js +0 -1027
  443. package/dist/chunk-6nenxecd.js +0 -115
  444. package/dist/chunk-6rja0h86.js +0 -1593
  445. package/dist/chunk-70q6dp4d.js +0 -96
  446. package/dist/chunk-7bn0wzs3.js +0 -1493
  447. package/dist/chunk-7e2e0bfm.js +0 -65
  448. package/dist/chunk-7ywadnax.js +0 -490
  449. package/dist/chunk-7z33j54s.js +0 -142
  450. package/dist/chunk-8yvfkzyh.js +0 -58
  451. package/dist/chunk-9abpx1kv.js +0 -2833
  452. package/dist/chunk-9ks2nswb.js +0 -114
  453. package/dist/chunk-9wrds5tr.js +0 -109
  454. package/dist/chunk-ab2twken.js +0 -102
  455. package/dist/chunk-abncjeag.js +0 -97
  456. package/dist/chunk-am6w4x6y.js +0 -103
  457. package/dist/chunk-b1xt9jqg.js +0 -28
  458. package/dist/chunk-b73bd7db.js +0 -496
  459. package/dist/chunk-bc7nvynh.js +0 -195
  460. package/dist/chunk-br17dhef.js +0 -103
  461. package/dist/chunk-c3k0sdey.js +0 -281
  462. package/dist/chunk-c909bmyv.js +0 -103
  463. package/dist/chunk-cftsv9w4.js +0 -129
  464. package/dist/chunk-cj1a7npk.js +0 -99
  465. package/dist/chunk-cpma9zs5.js +0 -335
  466. package/dist/chunk-cyscs4k5.js +0 -1330
  467. package/dist/chunk-czr7y063.js +0 -348
  468. package/dist/chunk-d93sndem.js +0 -372
  469. package/dist/chunk-ddz8xbpd.js +0 -481
  470. package/dist/chunk-dkhqx4hk.js +0 -84
  471. package/dist/chunk-dsrharmv.js +0 -359
  472. package/dist/chunk-eqmy5d05.js +0 -56
  473. package/dist/chunk-f2crxw2c.js +0 -5400
  474. package/dist/chunk-f8zga40p.js +0 -234
  475. package/dist/chunk-fbgm2ym6.js +0 -990
  476. package/dist/chunk-fcbbsswe.js +0 -119
  477. package/dist/chunk-fda654nt.js +0 -6121
  478. package/dist/chunk-ffmv9ezj.js +0 -104
  479. package/dist/chunk-fmjte7md.js +0 -38
  480. package/dist/chunk-fqtwqxxc.js +0 -293
  481. package/dist/chunk-g8k85nkd.js +0 -802
  482. package/dist/chunk-ge4ak7dj.js +0 -127
  483. package/dist/chunk-gpqemecy.js +0 -126
  484. package/dist/chunk-h19p6s3b.js +0 -131
  485. package/dist/chunk-j0sk1rct.js +0 -998
  486. package/dist/chunk-j1wfpa1a.js +0 -70
  487. package/dist/chunk-j829fx31.js +0 -3458
  488. package/dist/chunk-jqctzrvd.js +0 -722
  489. package/dist/chunk-jx817w05.js +0 -11
  490. package/dist/chunk-ka6sab33.js +0 -174
  491. package/dist/chunk-krjsvmwp.js +0 -101
  492. package/dist/chunk-kvpe50pm.js +0 -311
  493. package/dist/chunk-mez504fj.js +0 -113
  494. package/dist/chunk-mj6wbrae.js +0 -105
  495. package/dist/chunk-n0k8xrey.js +0 -319
  496. package/dist/chunk-n0pg2kpe.js +0 -122
  497. package/dist/chunk-n4qtqkp0.js +0 -295
  498. package/dist/chunk-n9meha2m.js +0 -73
  499. package/dist/chunk-ndk7q5n3.js +0 -169
  500. package/dist/chunk-ng6n9t4h.js +0 -56
  501. package/dist/chunk-p3pz13x2.js +0 -1933
  502. package/dist/chunk-p9ez6zgq.js +0 -2656
  503. package/dist/chunk-ph750kx1.js +0 -550
  504. package/dist/chunk-pxb99zqs.js +0 -117
  505. package/dist/chunk-q1yqc5n3.js +0 -100
  506. package/dist/chunk-q5b91nhh.js +0 -40
  507. package/dist/chunk-qtfqk0jr.js +0 -131
  508. package/dist/chunk-qzfmdh1t.js +0 -388
  509. package/dist/chunk-r3cv0j9n.js +0 -456
  510. package/dist/chunk-rx0pbgym.js +0 -97
  511. package/dist/chunk-s624rd5j.js +0 -531
  512. package/dist/chunk-satndwqj.js +0 -285
  513. package/dist/chunk-ssrxnkd1.js +0 -109
  514. package/dist/chunk-t2pgctqx.js +0 -106
  515. package/dist/chunk-t7sgwf31.js +0 -644
  516. package/dist/chunk-tth904tj.js +0 -53
  517. package/dist/chunk-typpbjhy.js +0 -128
  518. package/dist/chunk-vp6nrhdq.js +0 -102
  519. package/dist/chunk-vtjm53nt.js +0 -432
  520. package/dist/chunk-w412n7tq.js +0 -469
  521. package/dist/chunk-w4153rky.js +0 -1885
  522. package/dist/chunk-wdgv15as.js +0 -212
  523. package/dist/chunk-wgn9kydv.js +0 -58
  524. package/dist/chunk-whknbrk0.js +0 -184
  525. package/dist/chunk-x1k8e1xc.js +0 -56
  526. package/dist/chunk-x45xx6sc.js +0 -105
  527. package/dist/chunk-x4xvqbe5.js +0 -1166
  528. package/dist/chunk-x8b7vft8.js +0 -132
  529. package/dist/chunk-xaycc8qe.js +0 -44
  530. package/dist/chunk-xd4785ks.js +0 -73
  531. package/dist/chunk-xjxgmxhq.js +0 -463
  532. package/dist/chunk-xx2x3tz9.js +0 -166
  533. package/dist/chunk-y2j23eem.js +0 -101
  534. package/dist/chunk-y83j09wv.js +0 -123
  535. package/dist/chunk-yh8460pb.js +0 -119
  536. package/dist/chunk-z6nhchdb.js +0 -60
  537. package/dist/chunk-zbt73sj7.js +0 -192
  538. package/dist/chunk-zmwaatmq.js +0 -118
  539. package/dist/chunk-zvdg9tex.js +0 -135
  540. package/dist/chunk-zwa780cx.js +0 -584
  541. package/dist/{chunk-whvdag1y.js → chunk-3bfs3x0h.js} +9 -9
  542. package/dist/{chunk-27xc1csx.js → chunk-dggvswz1.js} +3 -3
@@ -0,0 +1,1284 @@
1
+ // @bun
2
+ import {
3
+ __esm
4
+ } from "./chunk-qp2qdcda.js";
5
+
6
+ // node_modules/.bun/fuse.js@7.1.0/node_modules/fuse.js/dist/fuse.mjs
7
+ function isArray(value) {
8
+ return !Array.isArray ? getTag(value) === "[object Array]" : Array.isArray(value);
9
+ }
10
+ function baseToString(value) {
11
+ if (typeof value == "string") {
12
+ return value;
13
+ }
14
+ let result = value + "";
15
+ return result == "0" && 1 / value == -INFINITY ? "-0" : result;
16
+ }
17
+ function toString(value) {
18
+ return value == null ? "" : baseToString(value);
19
+ }
20
+ function isString(value) {
21
+ return typeof value === "string";
22
+ }
23
+ function isNumber(value) {
24
+ return typeof value === "number";
25
+ }
26
+ function isBoolean(value) {
27
+ return value === true || value === false || isObjectLike(value) && getTag(value) == "[object Boolean]";
28
+ }
29
+ function isObject(value) {
30
+ return typeof value === "object";
31
+ }
32
+ function isObjectLike(value) {
33
+ return isObject(value) && value !== null;
34
+ }
35
+ function isDefined(value) {
36
+ return value !== undefined && value !== null;
37
+ }
38
+ function isBlank(value) {
39
+ return !value.trim().length;
40
+ }
41
+ function getTag(value) {
42
+ return value == null ? value === undefined ? "[object Undefined]" : "[object Null]" : Object.prototype.toString.call(value);
43
+ }
44
+
45
+ class KeyStore {
46
+ constructor(keys) {
47
+ this._keys = [];
48
+ this._keyMap = {};
49
+ let totalWeight = 0;
50
+ keys.forEach((key) => {
51
+ let obj = createKey(key);
52
+ this._keys.push(obj);
53
+ this._keyMap[obj.id] = obj;
54
+ totalWeight += obj.weight;
55
+ });
56
+ this._keys.forEach((key) => {
57
+ key.weight /= totalWeight;
58
+ });
59
+ }
60
+ get(keyId) {
61
+ return this._keyMap[keyId];
62
+ }
63
+ keys() {
64
+ return this._keys;
65
+ }
66
+ toJSON() {
67
+ return JSON.stringify(this._keys);
68
+ }
69
+ }
70
+ function createKey(key) {
71
+ let path = null;
72
+ let id = null;
73
+ let src = null;
74
+ let weight = 1;
75
+ let getFn = null;
76
+ if (isString(key) || isArray(key)) {
77
+ src = key;
78
+ path = createKeyPath(key);
79
+ id = createKeyId(key);
80
+ } else {
81
+ if (!hasOwn.call(key, "name")) {
82
+ throw new Error(MISSING_KEY_PROPERTY("name"));
83
+ }
84
+ const name = key.name;
85
+ src = name;
86
+ if (hasOwn.call(key, "weight")) {
87
+ weight = key.weight;
88
+ if (weight <= 0) {
89
+ throw new Error(INVALID_KEY_WEIGHT_VALUE(name));
90
+ }
91
+ }
92
+ path = createKeyPath(name);
93
+ id = createKeyId(name);
94
+ getFn = key.getFn;
95
+ }
96
+ return { path, id, weight, src, getFn };
97
+ }
98
+ function createKeyPath(key) {
99
+ return isArray(key) ? key : key.split(".");
100
+ }
101
+ function createKeyId(key) {
102
+ return isArray(key) ? key.join(".") : key;
103
+ }
104
+ function get(obj, path) {
105
+ let list = [];
106
+ let arr = false;
107
+ const deepGet = (obj2, path2, index) => {
108
+ if (!isDefined(obj2)) {
109
+ return;
110
+ }
111
+ if (!path2[index]) {
112
+ list.push(obj2);
113
+ } else {
114
+ let key = path2[index];
115
+ const value = obj2[key];
116
+ if (!isDefined(value)) {
117
+ return;
118
+ }
119
+ if (index === path2.length - 1 && (isString(value) || isNumber(value) || isBoolean(value))) {
120
+ list.push(toString(value));
121
+ } else if (isArray(value)) {
122
+ arr = true;
123
+ for (let i = 0, len = value.length;i < len; i += 1) {
124
+ deepGet(value[i], path2, index + 1);
125
+ }
126
+ } else if (path2.length) {
127
+ deepGet(value, path2, index + 1);
128
+ }
129
+ }
130
+ };
131
+ deepGet(obj, isString(path) ? path.split(".") : path, 0);
132
+ return arr ? list : list[0];
133
+ }
134
+ function norm(weight = 1, mantissa = 3) {
135
+ const cache = new Map;
136
+ const m = Math.pow(10, mantissa);
137
+ return {
138
+ get(value) {
139
+ const numTokens = value.match(SPACE).length;
140
+ if (cache.has(numTokens)) {
141
+ return cache.get(numTokens);
142
+ }
143
+ const norm2 = 1 / Math.pow(numTokens, 0.5 * weight);
144
+ const n = parseFloat(Math.round(norm2 * m) / m);
145
+ cache.set(numTokens, n);
146
+ return n;
147
+ },
148
+ clear() {
149
+ cache.clear();
150
+ }
151
+ };
152
+ }
153
+
154
+ class FuseIndex {
155
+ constructor({
156
+ getFn = Config.getFn,
157
+ fieldNormWeight = Config.fieldNormWeight
158
+ } = {}) {
159
+ this.norm = norm(fieldNormWeight, 3);
160
+ this.getFn = getFn;
161
+ this.isCreated = false;
162
+ this.setIndexRecords();
163
+ }
164
+ setSources(docs = []) {
165
+ this.docs = docs;
166
+ }
167
+ setIndexRecords(records = []) {
168
+ this.records = records;
169
+ }
170
+ setKeys(keys = []) {
171
+ this.keys = keys;
172
+ this._keysMap = {};
173
+ keys.forEach((key, idx) => {
174
+ this._keysMap[key.id] = idx;
175
+ });
176
+ }
177
+ create() {
178
+ if (this.isCreated || !this.docs.length) {
179
+ return;
180
+ }
181
+ this.isCreated = true;
182
+ if (isString(this.docs[0])) {
183
+ this.docs.forEach((doc, docIndex) => {
184
+ this._addString(doc, docIndex);
185
+ });
186
+ } else {
187
+ this.docs.forEach((doc, docIndex) => {
188
+ this._addObject(doc, docIndex);
189
+ });
190
+ }
191
+ this.norm.clear();
192
+ }
193
+ add(doc) {
194
+ const idx = this.size();
195
+ if (isString(doc)) {
196
+ this._addString(doc, idx);
197
+ } else {
198
+ this._addObject(doc, idx);
199
+ }
200
+ }
201
+ removeAt(idx) {
202
+ this.records.splice(idx, 1);
203
+ for (let i = idx, len = this.size();i < len; i += 1) {
204
+ this.records[i].i -= 1;
205
+ }
206
+ }
207
+ getValueForItemAtKeyId(item, keyId) {
208
+ return item[this._keysMap[keyId]];
209
+ }
210
+ size() {
211
+ return this.records.length;
212
+ }
213
+ _addString(doc, docIndex) {
214
+ if (!isDefined(doc) || isBlank(doc)) {
215
+ return;
216
+ }
217
+ let record = {
218
+ v: doc,
219
+ i: docIndex,
220
+ n: this.norm.get(doc)
221
+ };
222
+ this.records.push(record);
223
+ }
224
+ _addObject(doc, docIndex) {
225
+ let record = { i: docIndex, $: {} };
226
+ this.keys.forEach((key, keyIndex) => {
227
+ let value = key.getFn ? key.getFn(doc) : this.getFn(doc, key.path);
228
+ if (!isDefined(value)) {
229
+ return;
230
+ }
231
+ if (isArray(value)) {
232
+ let subRecords = [];
233
+ const stack = [{ nestedArrIndex: -1, value }];
234
+ while (stack.length) {
235
+ const { nestedArrIndex, value: value2 } = stack.pop();
236
+ if (!isDefined(value2)) {
237
+ continue;
238
+ }
239
+ if (isString(value2) && !isBlank(value2)) {
240
+ let subRecord = {
241
+ v: value2,
242
+ i: nestedArrIndex,
243
+ n: this.norm.get(value2)
244
+ };
245
+ subRecords.push(subRecord);
246
+ } else if (isArray(value2)) {
247
+ value2.forEach((item, k) => {
248
+ stack.push({
249
+ nestedArrIndex: k,
250
+ value: item
251
+ });
252
+ });
253
+ } else
254
+ ;
255
+ }
256
+ record.$[keyIndex] = subRecords;
257
+ } else if (isString(value) && !isBlank(value)) {
258
+ let subRecord = {
259
+ v: value,
260
+ n: this.norm.get(value)
261
+ };
262
+ record.$[keyIndex] = subRecord;
263
+ }
264
+ });
265
+ this.records.push(record);
266
+ }
267
+ toJSON() {
268
+ return {
269
+ keys: this.keys,
270
+ records: this.records
271
+ };
272
+ }
273
+ }
274
+ function createIndex(keys, docs, { getFn = Config.getFn, fieldNormWeight = Config.fieldNormWeight } = {}) {
275
+ const myIndex = new FuseIndex({ getFn, fieldNormWeight });
276
+ myIndex.setKeys(keys.map(createKey));
277
+ myIndex.setSources(docs);
278
+ myIndex.create();
279
+ return myIndex;
280
+ }
281
+ function parseIndex(data, { getFn = Config.getFn, fieldNormWeight = Config.fieldNormWeight } = {}) {
282
+ const { keys, records } = data;
283
+ const myIndex = new FuseIndex({ getFn, fieldNormWeight });
284
+ myIndex.setKeys(keys);
285
+ myIndex.setIndexRecords(records);
286
+ return myIndex;
287
+ }
288
+ function computeScore$1(pattern, {
289
+ errors = 0,
290
+ currentLocation = 0,
291
+ expectedLocation = 0,
292
+ distance = Config.distance,
293
+ ignoreLocation = Config.ignoreLocation
294
+ } = {}) {
295
+ const accuracy = errors / pattern.length;
296
+ if (ignoreLocation) {
297
+ return accuracy;
298
+ }
299
+ const proximity = Math.abs(expectedLocation - currentLocation);
300
+ if (!distance) {
301
+ return proximity ? 1 : accuracy;
302
+ }
303
+ return accuracy + proximity / distance;
304
+ }
305
+ function convertMaskToIndices(matchmask = [], minMatchCharLength = Config.minMatchCharLength) {
306
+ let indices = [];
307
+ let start = -1;
308
+ let end = -1;
309
+ let i = 0;
310
+ for (let len = matchmask.length;i < len; i += 1) {
311
+ let match = matchmask[i];
312
+ if (match && start === -1) {
313
+ start = i;
314
+ } else if (!match && start !== -1) {
315
+ end = i - 1;
316
+ if (end - start + 1 >= minMatchCharLength) {
317
+ indices.push([start, end]);
318
+ }
319
+ start = -1;
320
+ }
321
+ }
322
+ if (matchmask[i - 1] && i - start >= minMatchCharLength) {
323
+ indices.push([start, i - 1]);
324
+ }
325
+ return indices;
326
+ }
327
+ function search(text, pattern, patternAlphabet, {
328
+ location = Config.location,
329
+ distance = Config.distance,
330
+ threshold = Config.threshold,
331
+ findAllMatches = Config.findAllMatches,
332
+ minMatchCharLength = Config.minMatchCharLength,
333
+ includeMatches = Config.includeMatches,
334
+ ignoreLocation = Config.ignoreLocation
335
+ } = {}) {
336
+ if (pattern.length > MAX_BITS) {
337
+ throw new Error(PATTERN_LENGTH_TOO_LARGE(MAX_BITS));
338
+ }
339
+ const patternLen = pattern.length;
340
+ const textLen = text.length;
341
+ const expectedLocation = Math.max(0, Math.min(location, textLen));
342
+ let currentThreshold = threshold;
343
+ let bestLocation = expectedLocation;
344
+ const computeMatches = minMatchCharLength > 1 || includeMatches;
345
+ const matchMask = computeMatches ? Array(textLen) : [];
346
+ let index;
347
+ while ((index = text.indexOf(pattern, bestLocation)) > -1) {
348
+ let score = computeScore$1(pattern, {
349
+ currentLocation: index,
350
+ expectedLocation,
351
+ distance,
352
+ ignoreLocation
353
+ });
354
+ currentThreshold = Math.min(score, currentThreshold);
355
+ bestLocation = index + patternLen;
356
+ if (computeMatches) {
357
+ let i = 0;
358
+ while (i < patternLen) {
359
+ matchMask[index + i] = 1;
360
+ i += 1;
361
+ }
362
+ }
363
+ }
364
+ bestLocation = -1;
365
+ let lastBitArr = [];
366
+ let finalScore = 1;
367
+ let binMax = patternLen + textLen;
368
+ const mask = 1 << patternLen - 1;
369
+ for (let i = 0;i < patternLen; i += 1) {
370
+ let binMin = 0;
371
+ let binMid = binMax;
372
+ while (binMin < binMid) {
373
+ const score2 = computeScore$1(pattern, {
374
+ errors: i,
375
+ currentLocation: expectedLocation + binMid,
376
+ expectedLocation,
377
+ distance,
378
+ ignoreLocation
379
+ });
380
+ if (score2 <= currentThreshold) {
381
+ binMin = binMid;
382
+ } else {
383
+ binMax = binMid;
384
+ }
385
+ binMid = Math.floor((binMax - binMin) / 2 + binMin);
386
+ }
387
+ binMax = binMid;
388
+ let start = Math.max(1, expectedLocation - binMid + 1);
389
+ let finish = findAllMatches ? textLen : Math.min(expectedLocation + binMid, textLen) + patternLen;
390
+ let bitArr = Array(finish + 2);
391
+ bitArr[finish + 1] = (1 << i) - 1;
392
+ for (let j = finish;j >= start; j -= 1) {
393
+ let currentLocation = j - 1;
394
+ let charMatch = patternAlphabet[text.charAt(currentLocation)];
395
+ if (computeMatches) {
396
+ matchMask[currentLocation] = +!!charMatch;
397
+ }
398
+ bitArr[j] = (bitArr[j + 1] << 1 | 1) & charMatch;
399
+ if (i) {
400
+ bitArr[j] |= (lastBitArr[j + 1] | lastBitArr[j]) << 1 | 1 | lastBitArr[j + 1];
401
+ }
402
+ if (bitArr[j] & mask) {
403
+ finalScore = computeScore$1(pattern, {
404
+ errors: i,
405
+ currentLocation,
406
+ expectedLocation,
407
+ distance,
408
+ ignoreLocation
409
+ });
410
+ if (finalScore <= currentThreshold) {
411
+ currentThreshold = finalScore;
412
+ bestLocation = currentLocation;
413
+ if (bestLocation <= expectedLocation) {
414
+ break;
415
+ }
416
+ start = Math.max(1, 2 * expectedLocation - bestLocation);
417
+ }
418
+ }
419
+ }
420
+ const score = computeScore$1(pattern, {
421
+ errors: i + 1,
422
+ currentLocation: expectedLocation,
423
+ expectedLocation,
424
+ distance,
425
+ ignoreLocation
426
+ });
427
+ if (score > currentThreshold) {
428
+ break;
429
+ }
430
+ lastBitArr = bitArr;
431
+ }
432
+ const result = {
433
+ isMatch: bestLocation >= 0,
434
+ score: Math.max(0.001, finalScore)
435
+ };
436
+ if (computeMatches) {
437
+ const indices = convertMaskToIndices(matchMask, minMatchCharLength);
438
+ if (!indices.length) {
439
+ result.isMatch = false;
440
+ } else if (includeMatches) {
441
+ result.indices = indices;
442
+ }
443
+ }
444
+ return result;
445
+ }
446
+ function createPatternAlphabet(pattern) {
447
+ let mask = {};
448
+ for (let i = 0, len = pattern.length;i < len; i += 1) {
449
+ const char = pattern.charAt(i);
450
+ mask[char] = (mask[char] || 0) | 1 << len - i - 1;
451
+ }
452
+ return mask;
453
+ }
454
+
455
+ class BitapSearch {
456
+ constructor(pattern, {
457
+ location = Config.location,
458
+ threshold = Config.threshold,
459
+ distance = Config.distance,
460
+ includeMatches = Config.includeMatches,
461
+ findAllMatches = Config.findAllMatches,
462
+ minMatchCharLength = Config.minMatchCharLength,
463
+ isCaseSensitive = Config.isCaseSensitive,
464
+ ignoreDiacritics = Config.ignoreDiacritics,
465
+ ignoreLocation = Config.ignoreLocation
466
+ } = {}) {
467
+ this.options = {
468
+ location,
469
+ threshold,
470
+ distance,
471
+ includeMatches,
472
+ findAllMatches,
473
+ minMatchCharLength,
474
+ isCaseSensitive,
475
+ ignoreDiacritics,
476
+ ignoreLocation
477
+ };
478
+ pattern = isCaseSensitive ? pattern : pattern.toLowerCase();
479
+ pattern = ignoreDiacritics ? stripDiacritics(pattern) : pattern;
480
+ this.pattern = pattern;
481
+ this.chunks = [];
482
+ if (!this.pattern.length) {
483
+ return;
484
+ }
485
+ const addChunk = (pattern2, startIndex) => {
486
+ this.chunks.push({
487
+ pattern: pattern2,
488
+ alphabet: createPatternAlphabet(pattern2),
489
+ startIndex
490
+ });
491
+ };
492
+ const len = this.pattern.length;
493
+ if (len > MAX_BITS) {
494
+ let i = 0;
495
+ const remainder = len % MAX_BITS;
496
+ const end = len - remainder;
497
+ while (i < end) {
498
+ addChunk(this.pattern.substr(i, MAX_BITS), i);
499
+ i += MAX_BITS;
500
+ }
501
+ if (remainder) {
502
+ const startIndex = len - MAX_BITS;
503
+ addChunk(this.pattern.substr(startIndex), startIndex);
504
+ }
505
+ } else {
506
+ addChunk(this.pattern, 0);
507
+ }
508
+ }
509
+ searchIn(text) {
510
+ const { isCaseSensitive, ignoreDiacritics, includeMatches } = this.options;
511
+ text = isCaseSensitive ? text : text.toLowerCase();
512
+ text = ignoreDiacritics ? stripDiacritics(text) : text;
513
+ if (this.pattern === text) {
514
+ let result2 = {
515
+ isMatch: true,
516
+ score: 0
517
+ };
518
+ if (includeMatches) {
519
+ result2.indices = [[0, text.length - 1]];
520
+ }
521
+ return result2;
522
+ }
523
+ const {
524
+ location,
525
+ distance,
526
+ threshold,
527
+ findAllMatches,
528
+ minMatchCharLength,
529
+ ignoreLocation
530
+ } = this.options;
531
+ let allIndices = [];
532
+ let totalScore = 0;
533
+ let hasMatches = false;
534
+ this.chunks.forEach(({ pattern, alphabet, startIndex }) => {
535
+ const { isMatch, score, indices } = search(text, pattern, alphabet, {
536
+ location: location + startIndex,
537
+ distance,
538
+ threshold,
539
+ findAllMatches,
540
+ minMatchCharLength,
541
+ includeMatches,
542
+ ignoreLocation
543
+ });
544
+ if (isMatch) {
545
+ hasMatches = true;
546
+ }
547
+ totalScore += score;
548
+ if (isMatch && indices) {
549
+ allIndices = [...allIndices, ...indices];
550
+ }
551
+ });
552
+ let result = {
553
+ isMatch: hasMatches,
554
+ score: hasMatches ? totalScore / this.chunks.length : 1
555
+ };
556
+ if (hasMatches && includeMatches) {
557
+ result.indices = allIndices;
558
+ }
559
+ return result;
560
+ }
561
+ }
562
+
563
+ class BaseMatch {
564
+ constructor(pattern) {
565
+ this.pattern = pattern;
566
+ }
567
+ static isMultiMatch(pattern) {
568
+ return getMatch(pattern, this.multiRegex);
569
+ }
570
+ static isSingleMatch(pattern) {
571
+ return getMatch(pattern, this.singleRegex);
572
+ }
573
+ search() {}
574
+ }
575
+ function getMatch(pattern, exp) {
576
+ const matches = pattern.match(exp);
577
+ return matches ? matches[1] : null;
578
+ }
579
+ function parseQuery(pattern, options = {}) {
580
+ return pattern.split(OR_TOKEN).map((item) => {
581
+ let query = item.trim().split(SPACE_RE).filter((item2) => item2 && !!item2.trim());
582
+ let results = [];
583
+ for (let i = 0, len = query.length;i < len; i += 1) {
584
+ const queryItem = query[i];
585
+ let found = false;
586
+ let idx = -1;
587
+ while (!found && ++idx < searchersLen) {
588
+ const searcher = searchers[idx];
589
+ let token = searcher.isMultiMatch(queryItem);
590
+ if (token) {
591
+ results.push(new searcher(token, options));
592
+ found = true;
593
+ }
594
+ }
595
+ if (found) {
596
+ continue;
597
+ }
598
+ idx = -1;
599
+ while (++idx < searchersLen) {
600
+ const searcher = searchers[idx];
601
+ let token = searcher.isSingleMatch(queryItem);
602
+ if (token) {
603
+ results.push(new searcher(token, options));
604
+ break;
605
+ }
606
+ }
607
+ }
608
+ return results;
609
+ });
610
+ }
611
+
612
+ class ExtendedSearch {
613
+ constructor(pattern, {
614
+ isCaseSensitive = Config.isCaseSensitive,
615
+ ignoreDiacritics = Config.ignoreDiacritics,
616
+ includeMatches = Config.includeMatches,
617
+ minMatchCharLength = Config.minMatchCharLength,
618
+ ignoreLocation = Config.ignoreLocation,
619
+ findAllMatches = Config.findAllMatches,
620
+ location = Config.location,
621
+ threshold = Config.threshold,
622
+ distance = Config.distance
623
+ } = {}) {
624
+ this.query = null;
625
+ this.options = {
626
+ isCaseSensitive,
627
+ ignoreDiacritics,
628
+ includeMatches,
629
+ minMatchCharLength,
630
+ findAllMatches,
631
+ ignoreLocation,
632
+ location,
633
+ threshold,
634
+ distance
635
+ };
636
+ pattern = isCaseSensitive ? pattern : pattern.toLowerCase();
637
+ pattern = ignoreDiacritics ? stripDiacritics(pattern) : pattern;
638
+ this.pattern = pattern;
639
+ this.query = parseQuery(this.pattern, this.options);
640
+ }
641
+ static condition(_, options) {
642
+ return options.useExtendedSearch;
643
+ }
644
+ searchIn(text) {
645
+ const query = this.query;
646
+ if (!query) {
647
+ return {
648
+ isMatch: false,
649
+ score: 1
650
+ };
651
+ }
652
+ const { includeMatches, isCaseSensitive, ignoreDiacritics } = this.options;
653
+ text = isCaseSensitive ? text : text.toLowerCase();
654
+ text = ignoreDiacritics ? stripDiacritics(text) : text;
655
+ let numMatches = 0;
656
+ let allIndices = [];
657
+ let totalScore = 0;
658
+ for (let i = 0, qLen = query.length;i < qLen; i += 1) {
659
+ const searchers2 = query[i];
660
+ allIndices.length = 0;
661
+ numMatches = 0;
662
+ for (let j = 0, pLen = searchers2.length;j < pLen; j += 1) {
663
+ const searcher = searchers2[j];
664
+ const { isMatch, indices, score } = searcher.search(text);
665
+ if (isMatch) {
666
+ numMatches += 1;
667
+ totalScore += score;
668
+ if (includeMatches) {
669
+ const type = searcher.constructor.type;
670
+ if (MultiMatchSet.has(type)) {
671
+ allIndices = [...allIndices, ...indices];
672
+ } else {
673
+ allIndices.push(indices);
674
+ }
675
+ }
676
+ } else {
677
+ totalScore = 0;
678
+ numMatches = 0;
679
+ allIndices.length = 0;
680
+ break;
681
+ }
682
+ }
683
+ if (numMatches) {
684
+ let result = {
685
+ isMatch: true,
686
+ score: totalScore / numMatches
687
+ };
688
+ if (includeMatches) {
689
+ result.indices = allIndices;
690
+ }
691
+ return result;
692
+ }
693
+ }
694
+ return {
695
+ isMatch: false,
696
+ score: 1
697
+ };
698
+ }
699
+ }
700
+ function register(...args) {
701
+ registeredSearchers.push(...args);
702
+ }
703
+ function createSearcher(pattern, options) {
704
+ for (let i = 0, len = registeredSearchers.length;i < len; i += 1) {
705
+ let searcherClass = registeredSearchers[i];
706
+ if (searcherClass.condition(pattern, options)) {
707
+ return new searcherClass(pattern, options);
708
+ }
709
+ }
710
+ return new BitapSearch(pattern, options);
711
+ }
712
+ function parse(query, options, { auto = true } = {}) {
713
+ const next = (query2) => {
714
+ let keys = Object.keys(query2);
715
+ const isQueryPath = isPath(query2);
716
+ if (!isQueryPath && keys.length > 1 && !isExpression(query2)) {
717
+ return next(convertToExplicit(query2));
718
+ }
719
+ if (isLeaf(query2)) {
720
+ const key = isQueryPath ? query2[KeyType.PATH] : keys[0];
721
+ const pattern = isQueryPath ? query2[KeyType.PATTERN] : query2[key];
722
+ if (!isString(pattern)) {
723
+ throw new Error(LOGICAL_SEARCH_INVALID_QUERY_FOR_KEY(key));
724
+ }
725
+ const obj = {
726
+ keyId: createKeyId(key),
727
+ pattern
728
+ };
729
+ if (auto) {
730
+ obj.searcher = createSearcher(pattern, options);
731
+ }
732
+ return obj;
733
+ }
734
+ let node = {
735
+ children: [],
736
+ operator: keys[0]
737
+ };
738
+ keys.forEach((key) => {
739
+ const value = query2[key];
740
+ if (isArray(value)) {
741
+ value.forEach((item) => {
742
+ node.children.push(next(item));
743
+ });
744
+ }
745
+ });
746
+ return node;
747
+ };
748
+ if (!isExpression(query)) {
749
+ query = convertToExplicit(query);
750
+ }
751
+ return next(query);
752
+ }
753
+ function computeScore(results, { ignoreFieldNorm = Config.ignoreFieldNorm }) {
754
+ results.forEach((result) => {
755
+ let totalScore = 1;
756
+ result.matches.forEach(({ key, norm: norm2, score }) => {
757
+ const weight = key ? key.weight : null;
758
+ totalScore *= Math.pow(score === 0 && weight ? Number.EPSILON : score, (weight || 1) * (ignoreFieldNorm ? 1 : norm2));
759
+ });
760
+ result.score = totalScore;
761
+ });
762
+ }
763
+ function transformMatches(result, data) {
764
+ const matches = result.matches;
765
+ data.matches = [];
766
+ if (!isDefined(matches)) {
767
+ return;
768
+ }
769
+ matches.forEach((match) => {
770
+ if (!isDefined(match.indices) || !match.indices.length) {
771
+ return;
772
+ }
773
+ const { indices, value } = match;
774
+ let obj = {
775
+ indices,
776
+ value
777
+ };
778
+ if (match.key) {
779
+ obj.key = match.key.src;
780
+ }
781
+ if (match.idx > -1) {
782
+ obj.refIndex = match.idx;
783
+ }
784
+ data.matches.push(obj);
785
+ });
786
+ }
787
+ function transformScore(result, data) {
788
+ data.score = result.score;
789
+ }
790
+ function format(results, docs, {
791
+ includeMatches = Config.includeMatches,
792
+ includeScore = Config.includeScore
793
+ } = {}) {
794
+ const transformers = [];
795
+ if (includeMatches)
796
+ transformers.push(transformMatches);
797
+ if (includeScore)
798
+ transformers.push(transformScore);
799
+ return results.map((result) => {
800
+ const { idx } = result;
801
+ const data = {
802
+ item: docs[idx],
803
+ refIndex: idx
804
+ };
805
+ if (transformers.length) {
806
+ transformers.forEach((transformer) => {
807
+ transformer(result, data);
808
+ });
809
+ }
810
+ return data;
811
+ });
812
+ }
813
+
814
+ class Fuse {
815
+ constructor(docs, options = {}, index) {
816
+ this.options = { ...Config, ...options };
817
+ if (this.options.useExtendedSearch && false) {}
818
+ this._keyStore = new KeyStore(this.options.keys);
819
+ this.setCollection(docs, index);
820
+ }
821
+ setCollection(docs, index) {
822
+ this._docs = docs;
823
+ if (index && !(index instanceof FuseIndex)) {
824
+ throw new Error(INCORRECT_INDEX_TYPE);
825
+ }
826
+ this._myIndex = index || createIndex(this.options.keys, this._docs, {
827
+ getFn: this.options.getFn,
828
+ fieldNormWeight: this.options.fieldNormWeight
829
+ });
830
+ }
831
+ add(doc) {
832
+ if (!isDefined(doc)) {
833
+ return;
834
+ }
835
+ this._docs.push(doc);
836
+ this._myIndex.add(doc);
837
+ }
838
+ remove(predicate = () => false) {
839
+ const results = [];
840
+ for (let i = 0, len = this._docs.length;i < len; i += 1) {
841
+ const doc = this._docs[i];
842
+ if (predicate(doc, i)) {
843
+ this.removeAt(i);
844
+ i -= 1;
845
+ len -= 1;
846
+ results.push(doc);
847
+ }
848
+ }
849
+ return results;
850
+ }
851
+ removeAt(idx) {
852
+ this._docs.splice(idx, 1);
853
+ this._myIndex.removeAt(idx);
854
+ }
855
+ getIndex() {
856
+ return this._myIndex;
857
+ }
858
+ search(query, { limit = -1 } = {}) {
859
+ const {
860
+ includeMatches,
861
+ includeScore,
862
+ shouldSort,
863
+ sortFn,
864
+ ignoreFieldNorm
865
+ } = this.options;
866
+ let results = isString(query) ? isString(this._docs[0]) ? this._searchStringList(query) : this._searchObjectList(query) : this._searchLogical(query);
867
+ computeScore(results, { ignoreFieldNorm });
868
+ if (shouldSort) {
869
+ results.sort(sortFn);
870
+ }
871
+ if (isNumber(limit) && limit > -1) {
872
+ results = results.slice(0, limit);
873
+ }
874
+ return format(results, this._docs, {
875
+ includeMatches,
876
+ includeScore
877
+ });
878
+ }
879
+ _searchStringList(query) {
880
+ const searcher = createSearcher(query, this.options);
881
+ const { records } = this._myIndex;
882
+ const results = [];
883
+ records.forEach(({ v: text, i: idx, n: norm2 }) => {
884
+ if (!isDefined(text)) {
885
+ return;
886
+ }
887
+ const { isMatch, score, indices } = searcher.searchIn(text);
888
+ if (isMatch) {
889
+ results.push({
890
+ item: text,
891
+ idx,
892
+ matches: [{ score, value: text, norm: norm2, indices }]
893
+ });
894
+ }
895
+ });
896
+ return results;
897
+ }
898
+ _searchLogical(query) {
899
+ const expression = parse(query, this.options);
900
+ const evaluate = (node, item, idx) => {
901
+ if (!node.children) {
902
+ const { keyId, searcher } = node;
903
+ const matches = this._findMatches({
904
+ key: this._keyStore.get(keyId),
905
+ value: this._myIndex.getValueForItemAtKeyId(item, keyId),
906
+ searcher
907
+ });
908
+ if (matches && matches.length) {
909
+ return [
910
+ {
911
+ idx,
912
+ item,
913
+ matches
914
+ }
915
+ ];
916
+ }
917
+ return [];
918
+ }
919
+ const res = [];
920
+ for (let i = 0, len = node.children.length;i < len; i += 1) {
921
+ const child = node.children[i];
922
+ const result = evaluate(child, item, idx);
923
+ if (result.length) {
924
+ res.push(...result);
925
+ } else if (node.operator === LogicalOperator.AND) {
926
+ return [];
927
+ }
928
+ }
929
+ return res;
930
+ };
931
+ const records = this._myIndex.records;
932
+ const resultMap = {};
933
+ const results = [];
934
+ records.forEach(({ $: item, i: idx }) => {
935
+ if (isDefined(item)) {
936
+ let expResults = evaluate(expression, item, idx);
937
+ if (expResults.length) {
938
+ if (!resultMap[idx]) {
939
+ resultMap[idx] = { idx, item, matches: [] };
940
+ results.push(resultMap[idx]);
941
+ }
942
+ expResults.forEach(({ matches }) => {
943
+ resultMap[idx].matches.push(...matches);
944
+ });
945
+ }
946
+ }
947
+ });
948
+ return results;
949
+ }
950
+ _searchObjectList(query) {
951
+ const searcher = createSearcher(query, this.options);
952
+ const { keys, records } = this._myIndex;
953
+ const results = [];
954
+ records.forEach(({ $: item, i: idx }) => {
955
+ if (!isDefined(item)) {
956
+ return;
957
+ }
958
+ let matches = [];
959
+ keys.forEach((key, keyIndex) => {
960
+ matches.push(...this._findMatches({
961
+ key,
962
+ value: item[keyIndex],
963
+ searcher
964
+ }));
965
+ });
966
+ if (matches.length) {
967
+ results.push({
968
+ idx,
969
+ item,
970
+ matches
971
+ });
972
+ }
973
+ });
974
+ return results;
975
+ }
976
+ _findMatches({ key, value, searcher }) {
977
+ if (!isDefined(value)) {
978
+ return [];
979
+ }
980
+ let matches = [];
981
+ if (isArray(value)) {
982
+ value.forEach(({ v: text, i: idx, n: norm2 }) => {
983
+ if (!isDefined(text)) {
984
+ return;
985
+ }
986
+ const { isMatch, score, indices } = searcher.searchIn(text);
987
+ if (isMatch) {
988
+ matches.push({
989
+ score,
990
+ key,
991
+ value: text,
992
+ idx,
993
+ norm: norm2,
994
+ indices
995
+ });
996
+ }
997
+ });
998
+ } else {
999
+ const { v: text, n: norm2 } = value;
1000
+ const { isMatch, score, indices } = searcher.searchIn(text);
1001
+ if (isMatch) {
1002
+ matches.push({ score, key, value: text, norm: norm2, indices });
1003
+ }
1004
+ }
1005
+ return matches;
1006
+ }
1007
+ }
1008
+ var INFINITY, INCORRECT_INDEX_TYPE = "Incorrect 'index' type", LOGICAL_SEARCH_INVALID_QUERY_FOR_KEY = (key) => `Invalid value for key ${key}`, PATTERN_LENGTH_TOO_LARGE = (max) => `Pattern length exceeds max of ${max}.`, MISSING_KEY_PROPERTY = (name) => `Missing ${name} property in key`, INVALID_KEY_WEIGHT_VALUE = (key) => `Property 'weight' in key '${key}' must be a positive integer`, hasOwn, MatchOptions, BasicOptions, FuzzyOptions, AdvancedOptions, Config, SPACE, MAX_BITS = 32, stripDiacritics, ExactMatch, InverseExactMatch, PrefixExactMatch, InversePrefixExactMatch, SuffixExactMatch, InverseSuffixExactMatch, FuzzyMatch, IncludeMatch, searchers, searchersLen, SPACE_RE, OR_TOKEN = "|", MultiMatchSet, registeredSearchers, LogicalOperator, KeyType, isExpression = (query) => !!(query[LogicalOperator.AND] || query[LogicalOperator.OR]), isPath = (query) => !!query[KeyType.PATH], isLeaf = (query) => !isArray(query) && isObject(query) && !isExpression(query), convertToExplicit = (query) => ({
1009
+ [LogicalOperator.AND]: Object.keys(query).map((key) => ({
1010
+ [key]: query[key]
1011
+ }))
1012
+ });
1013
+ var init_fuse = __esm(() => {
1014
+ INFINITY = 1 / 0;
1015
+ hasOwn = Object.prototype.hasOwnProperty;
1016
+ MatchOptions = {
1017
+ includeMatches: false,
1018
+ findAllMatches: false,
1019
+ minMatchCharLength: 1
1020
+ };
1021
+ BasicOptions = {
1022
+ isCaseSensitive: false,
1023
+ ignoreDiacritics: false,
1024
+ includeScore: false,
1025
+ keys: [],
1026
+ shouldSort: true,
1027
+ sortFn: (a, b) => a.score === b.score ? a.idx < b.idx ? -1 : 1 : a.score < b.score ? -1 : 1
1028
+ };
1029
+ FuzzyOptions = {
1030
+ location: 0,
1031
+ threshold: 0.6,
1032
+ distance: 100
1033
+ };
1034
+ AdvancedOptions = {
1035
+ useExtendedSearch: false,
1036
+ getFn: get,
1037
+ ignoreLocation: false,
1038
+ ignoreFieldNorm: false,
1039
+ fieldNormWeight: 1
1040
+ };
1041
+ Config = {
1042
+ ...BasicOptions,
1043
+ ...MatchOptions,
1044
+ ...FuzzyOptions,
1045
+ ...AdvancedOptions
1046
+ };
1047
+ SPACE = /[^ ]+/g;
1048
+ stripDiacritics = String.prototype.normalize ? (str) => str.normalize("NFD").replace(/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/g, "") : (str) => str;
1049
+ ExactMatch = class ExactMatch extends BaseMatch {
1050
+ constructor(pattern) {
1051
+ super(pattern);
1052
+ }
1053
+ static get type() {
1054
+ return "exact";
1055
+ }
1056
+ static get multiRegex() {
1057
+ return /^="(.*)"$/;
1058
+ }
1059
+ static get singleRegex() {
1060
+ return /^=(.*)$/;
1061
+ }
1062
+ search(text) {
1063
+ const isMatch = text === this.pattern;
1064
+ return {
1065
+ isMatch,
1066
+ score: isMatch ? 0 : 1,
1067
+ indices: [0, this.pattern.length - 1]
1068
+ };
1069
+ }
1070
+ };
1071
+ InverseExactMatch = class InverseExactMatch extends BaseMatch {
1072
+ constructor(pattern) {
1073
+ super(pattern);
1074
+ }
1075
+ static get type() {
1076
+ return "inverse-exact";
1077
+ }
1078
+ static get multiRegex() {
1079
+ return /^!"(.*)"$/;
1080
+ }
1081
+ static get singleRegex() {
1082
+ return /^!(.*)$/;
1083
+ }
1084
+ search(text) {
1085
+ const index = text.indexOf(this.pattern);
1086
+ const isMatch = index === -1;
1087
+ return {
1088
+ isMatch,
1089
+ score: isMatch ? 0 : 1,
1090
+ indices: [0, text.length - 1]
1091
+ };
1092
+ }
1093
+ };
1094
+ PrefixExactMatch = class PrefixExactMatch extends BaseMatch {
1095
+ constructor(pattern) {
1096
+ super(pattern);
1097
+ }
1098
+ static get type() {
1099
+ return "prefix-exact";
1100
+ }
1101
+ static get multiRegex() {
1102
+ return /^\^"(.*)"$/;
1103
+ }
1104
+ static get singleRegex() {
1105
+ return /^\^(.*)$/;
1106
+ }
1107
+ search(text) {
1108
+ const isMatch = text.startsWith(this.pattern);
1109
+ return {
1110
+ isMatch,
1111
+ score: isMatch ? 0 : 1,
1112
+ indices: [0, this.pattern.length - 1]
1113
+ };
1114
+ }
1115
+ };
1116
+ InversePrefixExactMatch = class InversePrefixExactMatch extends BaseMatch {
1117
+ constructor(pattern) {
1118
+ super(pattern);
1119
+ }
1120
+ static get type() {
1121
+ return "inverse-prefix-exact";
1122
+ }
1123
+ static get multiRegex() {
1124
+ return /^!\^"(.*)"$/;
1125
+ }
1126
+ static get singleRegex() {
1127
+ return /^!\^(.*)$/;
1128
+ }
1129
+ search(text) {
1130
+ const isMatch = !text.startsWith(this.pattern);
1131
+ return {
1132
+ isMatch,
1133
+ score: isMatch ? 0 : 1,
1134
+ indices: [0, text.length - 1]
1135
+ };
1136
+ }
1137
+ };
1138
+ SuffixExactMatch = class SuffixExactMatch extends BaseMatch {
1139
+ constructor(pattern) {
1140
+ super(pattern);
1141
+ }
1142
+ static get type() {
1143
+ return "suffix-exact";
1144
+ }
1145
+ static get multiRegex() {
1146
+ return /^"(.*)"\$$/;
1147
+ }
1148
+ static get singleRegex() {
1149
+ return /^(.*)\$$/;
1150
+ }
1151
+ search(text) {
1152
+ const isMatch = text.endsWith(this.pattern);
1153
+ return {
1154
+ isMatch,
1155
+ score: isMatch ? 0 : 1,
1156
+ indices: [text.length - this.pattern.length, text.length - 1]
1157
+ };
1158
+ }
1159
+ };
1160
+ InverseSuffixExactMatch = class InverseSuffixExactMatch extends BaseMatch {
1161
+ constructor(pattern) {
1162
+ super(pattern);
1163
+ }
1164
+ static get type() {
1165
+ return "inverse-suffix-exact";
1166
+ }
1167
+ static get multiRegex() {
1168
+ return /^!"(.*)"\$$/;
1169
+ }
1170
+ static get singleRegex() {
1171
+ return /^!(.*)\$$/;
1172
+ }
1173
+ search(text) {
1174
+ const isMatch = !text.endsWith(this.pattern);
1175
+ return {
1176
+ isMatch,
1177
+ score: isMatch ? 0 : 1,
1178
+ indices: [0, text.length - 1]
1179
+ };
1180
+ }
1181
+ };
1182
+ FuzzyMatch = class FuzzyMatch extends BaseMatch {
1183
+ constructor(pattern, {
1184
+ location = Config.location,
1185
+ threshold = Config.threshold,
1186
+ distance = Config.distance,
1187
+ includeMatches = Config.includeMatches,
1188
+ findAllMatches = Config.findAllMatches,
1189
+ minMatchCharLength = Config.minMatchCharLength,
1190
+ isCaseSensitive = Config.isCaseSensitive,
1191
+ ignoreDiacritics = Config.ignoreDiacritics,
1192
+ ignoreLocation = Config.ignoreLocation
1193
+ } = {}) {
1194
+ super(pattern);
1195
+ this._bitapSearch = new BitapSearch(pattern, {
1196
+ location,
1197
+ threshold,
1198
+ distance,
1199
+ includeMatches,
1200
+ findAllMatches,
1201
+ minMatchCharLength,
1202
+ isCaseSensitive,
1203
+ ignoreDiacritics,
1204
+ ignoreLocation
1205
+ });
1206
+ }
1207
+ static get type() {
1208
+ return "fuzzy";
1209
+ }
1210
+ static get multiRegex() {
1211
+ return /^"(.*)"$/;
1212
+ }
1213
+ static get singleRegex() {
1214
+ return /^(.*)$/;
1215
+ }
1216
+ search(text) {
1217
+ return this._bitapSearch.searchIn(text);
1218
+ }
1219
+ };
1220
+ IncludeMatch = class IncludeMatch extends BaseMatch {
1221
+ constructor(pattern) {
1222
+ super(pattern);
1223
+ }
1224
+ static get type() {
1225
+ return "include";
1226
+ }
1227
+ static get multiRegex() {
1228
+ return /^'"(.*)"$/;
1229
+ }
1230
+ static get singleRegex() {
1231
+ return /^'(.*)$/;
1232
+ }
1233
+ search(text) {
1234
+ let location = 0;
1235
+ let index;
1236
+ const indices = [];
1237
+ const patternLen = this.pattern.length;
1238
+ while ((index = text.indexOf(this.pattern, location)) > -1) {
1239
+ location = index + patternLen;
1240
+ indices.push([index, location - 1]);
1241
+ }
1242
+ const isMatch = !!indices.length;
1243
+ return {
1244
+ isMatch,
1245
+ score: isMatch ? 0 : 1,
1246
+ indices
1247
+ };
1248
+ }
1249
+ };
1250
+ searchers = [
1251
+ ExactMatch,
1252
+ IncludeMatch,
1253
+ PrefixExactMatch,
1254
+ InversePrefixExactMatch,
1255
+ InverseSuffixExactMatch,
1256
+ SuffixExactMatch,
1257
+ InverseExactMatch,
1258
+ FuzzyMatch
1259
+ ];
1260
+ searchersLen = searchers.length;
1261
+ SPACE_RE = / +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/;
1262
+ MultiMatchSet = new Set([FuzzyMatch.type, IncludeMatch.type]);
1263
+ registeredSearchers = [];
1264
+ LogicalOperator = {
1265
+ AND: "$and",
1266
+ OR: "$or"
1267
+ };
1268
+ KeyType = {
1269
+ PATH: "$path",
1270
+ PATTERN: "$val"
1271
+ };
1272
+ Fuse.version = "7.1.0";
1273
+ Fuse.createIndex = createIndex;
1274
+ Fuse.parseIndex = parseIndex;
1275
+ Fuse.config = Config;
1276
+ {
1277
+ Fuse.parseQuery = parse;
1278
+ }
1279
+ {
1280
+ register(ExtendedSearch);
1281
+ }
1282
+ });
1283
+
1284
+ export { Fuse, init_fuse };