Skip to content

Commit 95f269a

Browse files
committed
sorting works as expected
1 parent 650d1b3 commit 95f269a

File tree

1 file changed

+13
-29
lines changed

1 file changed

+13
-29
lines changed

src/Packages.res

Lines changed: 13 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -97,20 +97,9 @@ module Resource = {
9797

9898
let fuser = Fuse.make(packages, fuseOpts)
9999

100-
let t =
101-
fuser
102-
->Fuse.search(pattern)
103-
->Js.Array2.map(t => {
104-
if t["item"].name === "reson" || t["item"].name === "rescript-json-schema" {
105-
Js.Console.log(t)
106-
t
107-
} else {
108-
t
109-
}
110-
})
111-
->Js.Array2.sortInPlaceWith((a, b) => a["item"].searchScore < b["item"].searchScore ? -1 : 1)
112-
113-
t
100+
fuser
101+
->Fuse.search(pattern)
102+
->Js.Array2.sortInPlaceWith((a, b) => a["item"].searchScore > b["item"].searchScore ? -1 : 1)
114103
}
115104

116105
let applyUrlResourceSearch = (urls: array<urlResource>, pattern: string): array<
@@ -560,16 +549,12 @@ let parsePkgs = data =>
560549
})
561550

562551
let getStaticProps: Next.GetStaticProps.revalidate<props, unit> = async _ctx => {
552+
let baseUrl = "https://registry.npmjs.org/-/v1/search?text=keywords:rescript&size=250&maintenance=1.0&popularity=0.5&quality=0.9"
553+
563554
let (one, two, three) = await Js.Promise2.all3((
564-
fetchNpmPackages(
565-
"https://registry.npmjs.org/-/v1/search?text=keywords:rescript&size=250&maintenance=1.0&popularity=0.7&quality=0.1",
566-
),
567-
fetchNpmPackages(
568-
"https://registry.npmjs.org/-/v1/search?text=keywords:rescript&size=250&maintenance=1.0&popularity=0.7&quality=0.1&from=250",
569-
),
570-
fetchNpmPackages(
571-
"https://registry.npmjs.org/-/v1/search?text=keywords:rescript&size=250&maintenance=1.0&popularity=0.7&quality=0.1&from=500",
572-
),
555+
fetchNpmPackages(baseUrl),
556+
fetchNpmPackages(baseUrl ++ "&from=250"),
557+
fetchNpmPackages(baseUrl ++ "&from=500"),
573558
))
574559

575560
let (data1, data2, data3) = await Js.Promise2.all3((
@@ -578,23 +563,22 @@ let getStaticProps: Next.GetStaticProps.revalidate<props, unit> = async _ctx =>
578563
three->Response.json,
579564
))
580565

581-
let unmaintained = []
582-
583566
let pkges =
584567
parsePkgs(data1)
585568
->Js.Array2.concat(parsePkgs(data2))
586569
->Js.Array2.concat(parsePkgs(data3))
587570
->Js.Array2.filter(pkg => {
588-
if pkg.maintenanceScore < 0.03 {
571+
if [/* Allow list of names */]->Js.Array2.includes(pkg.name) {
572+
true
573+
} else if pkg.name->Js.String2.includes("reason") {
574+
false
575+
} else if pkg.maintenanceScore < 0.3 {
589576
false
590577
} else {
591578
true
592579
}
593580
})
594581

595-
Js.Console.log2("Number of packages", pkges->Js.Array2.length)
596-
Js.Console.log2("Number of unmaintained", unmaintained->Js.Array2.length)
597-
598582
let index_data_dir = Node.Path.join2(Node.Process.cwd(), "./data")
599583
let urlResources =
600584
Node.Path.join2(index_data_dir, "packages_url_resources.json")

0 commit comments

Comments
 (0)