Skip to content

Commit 594205e

Browse files
authored
Contents component: show the issues, if any, associated with a file.
2 parents c8a35eb + 51c2158 commit 594205e

File tree

5 files changed

+24
-1
lines changed

5 files changed

+24
-1
lines changed

src/libopencor/locAPI.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ export class File {
122122

123123
issues(): IIssue[] {
124124
if (cppVersion()) {
125-
return []
125+
return _locAPI.fileIssues(this._path)
126126
}
127127

128128
const res = []

src/libopencor/src/file.cpp

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,26 @@ void fileCreate(const Napi::CallbackInfo &pInfo)
4545
files.push_back(file);
4646
}
4747

48+
napi_value fileIssues(const Napi::CallbackInfo &pInfo)
49+
{
50+
auto env = pInfo.Env();
51+
auto res = Napi::Array::New(env);
52+
auto file = fileManager.file(pInfo[0].ToString().Utf8Value());
53+
auto issues = file->issues();
54+
55+
for (const auto &issue : issues) {
56+
auto object = Napi::Object::New(env);
57+
58+
object.Set("type", Napi::Number::New(env, static_cast<int>(issue->type())));
59+
object.Set("typeAsString", Napi::String::New(env, issue->typeAsString()));
60+
object.Set("description", Napi::String::New(env, issue->description()));
61+
62+
res.Set(res.Length(), object);
63+
}
64+
65+
return res;
66+
}
67+
4868
napi_value fileType(const Napi::CallbackInfo &pInfo)
4969
{
5070
auto file = fileManager.file(pInfo[0].ToString().Utf8Value());

src/libopencor/src/file.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,5 @@ void fileManagerUnmanage(const Napi::CallbackInfo &pInfo);
66

77
napi_value fileContents(const Napi::CallbackInfo &pInfo);
88
void fileCreate(const Napi::CallbackInfo &pInfo);
9+
napi_value fileIssues(const Napi::CallbackInfo &pInfo);
910
napi_value fileType(const Napi::CallbackInfo &pInfo);

src/libopencor/src/main.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ Napi::Object init(Napi::Env pEnv, Napi::Object pExports)
1717

1818
pExports.Set(Napi::String::New(pEnv, "fileContents"), Napi::Function::New(pEnv, fileContents));
1919
pExports.Set(Napi::String::New(pEnv, "fileCreate"), Napi::Function::New(pEnv, fileCreate));
20+
pExports.Set(Napi::String::New(pEnv, "fileIssues"), Napi::Function::New(pEnv, fileIssues));
2021
pExports.Set(Napi::String::New(pEnv, "fileType"), Napi::Function::New(pEnv, fileType));
2122

2223
return pExports;

src/preload/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,5 +89,6 @@ electron.contextBridge.exposeInMainWorld('locAPI', {
8989

9090
fileContents: (path: string) => loc.fileContents(path),
9191
fileCreate: (path: string, contents: object) => loc.fileCreate(path, contents),
92+
fileIssues: (path: string) => loc.fileIssues(path),
9293
fileType: (path: string) => loc.fileType(path)
9394
})

0 commit comments

Comments
 (0)