2025-02-25 11:57:54 +08:00
|
|
|
import BaseRepository from "./BaseRepository";
|
|
|
|
import Component from "../core/annotation/Component";
|
2025-02-21 18:30:13 +08:00
|
|
|
|
2025-02-25 11:57:54 +08:00
|
|
|
// @Component()
|
|
|
|
class VersionRepository extends BaseRepository<FrpcVersion> {
|
2025-02-21 18:30:13 +08:00
|
|
|
constructor() {
|
|
|
|
super("version");
|
|
|
|
}
|
|
|
|
|
|
|
|
findByGithubReleaseId(githubReleaseId: number): Promise<FrpcVersion> {
|
|
|
|
return new Promise<FrpcVersion>((resolve, reject) => {
|
|
|
|
this.db.findOne({ githubReleaseId: githubReleaseId }, (err, document) => {
|
|
|
|
if (err) {
|
|
|
|
reject(err);
|
|
|
|
} else {
|
|
|
|
resolve(document);
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
exists(githubReleaseId: number): Promise<boolean> {
|
2025-02-25 11:57:54 +08:00
|
|
|
return new Promise((resolve, reject) => {
|
2025-02-21 18:30:13 +08:00
|
|
|
this.db.count({ githubReleaseId: githubReleaseId }, (err, count) => {
|
|
|
|
if (err) {
|
|
|
|
reject(err);
|
|
|
|
} else {
|
|
|
|
resolve(count > 0);
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2025-02-25 11:57:54 +08:00
|
|
|
export default VersionRepository;
|