@reporting-bi/cli 0.0.6 → 0.0.7
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.
- package/dist/index.js +117 -68
- package/package.json +2 -1
package/dist/index.js
CHANGED
|
@@ -2831,7 +2831,7 @@ var ReportingAuthClient = class {
|
|
|
2831
2831
|
async getAuthInit() {
|
|
2832
2832
|
if (this.options.tokenProvider) {
|
|
2833
2833
|
const token = await this.options.tokenProvider();
|
|
2834
|
-
return token ? { headers: { "Authorization": `Bearer ${token}` } } : {};
|
|
2834
|
+
return token?.access_token ? { headers: { "Authorization": `Bearer ${token.access_token}` } } : {};
|
|
2835
2835
|
}
|
|
2836
2836
|
return { credentials: "include" };
|
|
2837
2837
|
}
|
|
@@ -2905,14 +2905,18 @@ var ReportingAuthClient = class {
|
|
|
2905
2905
|
}
|
|
2906
2906
|
return this.response;
|
|
2907
2907
|
}
|
|
2908
|
-
redirect() {
|
|
2908
|
+
redirect(authorizationCode) {
|
|
2909
2909
|
let url = `${this.options.serviceUrl}/redirect`;
|
|
2910
2910
|
const queryParams = [];
|
|
2911
2911
|
if (this.options.clientId) {
|
|
2912
2912
|
queryParams.push("client_id=" + encodeURIComponent(this.options.clientId));
|
|
2913
2913
|
}
|
|
2914
2914
|
if (this.options.redirectUrl) {
|
|
2915
|
-
|
|
2915
|
+
let redirectUri = this.options.redirectUrl;
|
|
2916
|
+
if (authorizationCode) {
|
|
2917
|
+
queryParams.push("code=" + encodeURIComponent(authorizationCode));
|
|
2918
|
+
}
|
|
2919
|
+
queryParams.push("redirect_uri=" + encodeURIComponent(redirectUri));
|
|
2916
2920
|
}
|
|
2917
2921
|
url += (url.includes("?") ? "&" : "?") + queryParams.join("&");
|
|
2918
2922
|
window.location.href = url;
|
|
@@ -2974,15 +2978,22 @@ var ReportingAuthClient = class {
|
|
|
2974
2978
|
}
|
|
2975
2979
|
async refreshToken() {
|
|
2976
2980
|
const body = { grant_type: "refresh_token" };
|
|
2981
|
+
if (this.options.tokenProvider) {
|
|
2982
|
+
const token = await this.options.tokenProvider();
|
|
2983
|
+
if (token?.refresh_token) {
|
|
2984
|
+
body.refresh_token = token.refresh_token;
|
|
2985
|
+
}
|
|
2986
|
+
}
|
|
2977
2987
|
if (this.options.clientId)
|
|
2978
2988
|
body.client_id = this.options.clientId;
|
|
2979
2989
|
if (this.options.clientSecret)
|
|
2980
2990
|
body.client_secret = this.options.clientSecret;
|
|
2981
|
-
this.response = await
|
|
2991
|
+
this.response = await fetch(`${this.options.serviceUrl}/token`, {
|
|
2982
2992
|
method: "POST",
|
|
2983
2993
|
headers: {
|
|
2984
2994
|
"Content-Type": "application/json"
|
|
2985
2995
|
},
|
|
2996
|
+
credentials: body.refresh_token ? "include" : "omit",
|
|
2986
2997
|
body: JSON.stringify(body)
|
|
2987
2998
|
});
|
|
2988
2999
|
if (!this.response.ok) {
|
|
@@ -3046,15 +3057,34 @@ function setActive(domain, accounting2) {
|
|
|
3046
3057
|
saveCredentials(creds);
|
|
3047
3058
|
return true;
|
|
3048
3059
|
}
|
|
3049
|
-
function createAuthClient(domain,
|
|
3060
|
+
function createAuthClient(domain, tokens) {
|
|
3050
3061
|
return new ReportingAuthClient({
|
|
3051
3062
|
serviceUrl: `${domain}/auth`,
|
|
3052
3063
|
clientId: CLIENT_ID,
|
|
3053
3064
|
clientSecret: CLIENT_SECRET,
|
|
3054
|
-
tokenProvider
|
|
3065
|
+
tokenProvider: tokens ? () => ({ access_token: tokens.access_token, refresh_token: tokens.refresh_token }) : void 0
|
|
3055
3066
|
});
|
|
3056
3067
|
}
|
|
3057
|
-
function
|
|
3068
|
+
async function ensureValidToken(conn) {
|
|
3069
|
+
const now = Math.floor(Date.now() / 1e3);
|
|
3070
|
+
const margin = 60;
|
|
3071
|
+
if (conn.tokens.expires_at && conn.tokens.expires_at > now + margin) return;
|
|
3072
|
+
if (!conn.tokens.refresh_token) return;
|
|
3073
|
+
const client = createAuthClient(conn.domain, conn.tokens);
|
|
3074
|
+
try {
|
|
3075
|
+
await client.refreshToken();
|
|
3076
|
+
const credentials = await client.readCredentials();
|
|
3077
|
+
if (credentials?.access_token) {
|
|
3078
|
+
conn.tokens.access_token = credentials.access_token;
|
|
3079
|
+
if (credentials.refresh_token) conn.tokens.refresh_token = credentials.refresh_token;
|
|
3080
|
+
conn.tokens.expires_at = credentials.expires_in ? now + credentials.expires_in : 0;
|
|
3081
|
+
storeTokens(conn.domain, conn.tokens);
|
|
3082
|
+
}
|
|
3083
|
+
} catch (err) {
|
|
3084
|
+
console.error("Token refresh failed:", err instanceof Error ? err.message : err);
|
|
3085
|
+
}
|
|
3086
|
+
}
|
|
3087
|
+
async function createService(name, accountingOverride) {
|
|
3058
3088
|
const conn = getActiveConnection();
|
|
3059
3089
|
if (!conn) {
|
|
3060
3090
|
console.error('Not logged in. Run "rpbi login" first.');
|
|
@@ -3065,6 +3095,7 @@ function createService(name, accountingOverride) {
|
|
|
3065
3095
|
console.error('No accounting set. Run "rpbi use <domain> --accounting <id>" first.');
|
|
3066
3096
|
process.exit(1);
|
|
3067
3097
|
}
|
|
3098
|
+
await ensureValidToken(conn);
|
|
3068
3099
|
const service = new import_rp_client.Service({
|
|
3069
3100
|
name,
|
|
3070
3101
|
baseUrl: `${conn.domain}/ms`,
|
|
@@ -3076,6 +3107,10 @@ function createService(name, accountingOverride) {
|
|
|
3076
3107
|
service.accountingProvider = ap;
|
|
3077
3108
|
return service;
|
|
3078
3109
|
}
|
|
3110
|
+
function getFields(flags, defaults) {
|
|
3111
|
+
if (flags.columns) return flags.columns.split(",").map((s) => s.trim());
|
|
3112
|
+
return defaults;
|
|
3113
|
+
}
|
|
3079
3114
|
var FLAG_ALIASES = {
|
|
3080
3115
|
a: "accounting"
|
|
3081
3116
|
};
|
|
@@ -3147,7 +3182,7 @@ function output(data, flags) {
|
|
|
3147
3182
|
|
|
3148
3183
|
// src/commands/accounting.ts
|
|
3149
3184
|
async function fetchAccountingName(accountingId) {
|
|
3150
|
-
const service = createService("accounting", accountingId);
|
|
3185
|
+
const service = await createService("accounting", accountingId);
|
|
3151
3186
|
const accountings = await service.get("accountings", { fields: ["accounting", "company"] });
|
|
3152
3187
|
const match = accountings?.find((a) => a.accounting === accountingId);
|
|
3153
3188
|
return match?.company ?? null;
|
|
@@ -3164,7 +3199,7 @@ async function accounting(args2) {
|
|
|
3164
3199
|
}
|
|
3165
3200
|
}
|
|
3166
3201
|
async function list(flags) {
|
|
3167
|
-
const service = createService("accounting");
|
|
3202
|
+
const service = await createService("accounting");
|
|
3168
3203
|
const accountings = await service.get("accountings", { fields: ["accounting", "company"] });
|
|
3169
3204
|
output(accountings || [], flags);
|
|
3170
3205
|
}
|
|
@@ -3329,7 +3364,7 @@ async function logout(domain) {
|
|
|
3329
3364
|
return;
|
|
3330
3365
|
}
|
|
3331
3366
|
try {
|
|
3332
|
-
const client = createAuthClient(domain,
|
|
3367
|
+
const client = createAuthClient(domain, tokens);
|
|
3333
3368
|
await client.revokeToken();
|
|
3334
3369
|
} catch {
|
|
3335
3370
|
}
|
|
@@ -3410,24 +3445,24 @@ async function use(args2) {
|
|
|
3410
3445
|
var fs2 = __toESM(require("node:fs"));
|
|
3411
3446
|
var DEFAULT_LANG = "cs";
|
|
3412
3447
|
async function list2(flags) {
|
|
3413
|
-
const service = createService("wiki");
|
|
3448
|
+
const service = await createService("wiki");
|
|
3414
3449
|
const pages = await service.get("pages");
|
|
3415
3450
|
output(pages || [], flags);
|
|
3416
3451
|
}
|
|
3417
3452
|
async function get(id, flags) {
|
|
3418
3453
|
const lang = flags.lang || DEFAULT_LANG;
|
|
3419
|
-
const service = createService("wiki");
|
|
3454
|
+
const service = await createService("wiki");
|
|
3420
3455
|
const page = await service.get(`page/${lang}/${id}`);
|
|
3421
3456
|
output(page, flags);
|
|
3422
3457
|
}
|
|
3423
3458
|
async function read(id, flags) {
|
|
3424
3459
|
const lang = flags.lang || DEFAULT_LANG;
|
|
3425
|
-
const service = createService("wiki");
|
|
3460
|
+
const service = await createService("wiki");
|
|
3426
3461
|
const content2 = await service.get(`pageContent/${lang}/${id}`, void 0, { parseResponse: false });
|
|
3427
3462
|
process.stdout.write(content2 || "");
|
|
3428
3463
|
}
|
|
3429
3464
|
async function search(query, flags) {
|
|
3430
|
-
const service = createService("wiki");
|
|
3465
|
+
const service = await createService("wiki");
|
|
3431
3466
|
const results = await service.get("search", { q: query });
|
|
3432
3467
|
output(results || [], flags);
|
|
3433
3468
|
}
|
|
@@ -3451,7 +3486,7 @@ async function readContent(flags) {
|
|
|
3451
3486
|
}
|
|
3452
3487
|
async function save(id, flags) {
|
|
3453
3488
|
const lang = flags.lang || DEFAULT_LANG;
|
|
3454
|
-
const service = createService("wiki");
|
|
3489
|
+
const service = await createService("wiki");
|
|
3455
3490
|
const content2 = await readContent(flags);
|
|
3456
3491
|
const page = {
|
|
3457
3492
|
lang,
|
|
@@ -3464,7 +3499,7 @@ async function save(id, flags) {
|
|
|
3464
3499
|
}
|
|
3465
3500
|
async function del(id, flags) {
|
|
3466
3501
|
const lang = flags.lang || DEFAULT_LANG;
|
|
3467
|
-
const service = createService("wiki");
|
|
3502
|
+
const service = await createService("wiki");
|
|
3468
3503
|
await service.delete(`page/${lang}/${id}`);
|
|
3469
3504
|
console.log(`Page ${id} deleted.`);
|
|
3470
3505
|
}
|
|
@@ -3508,23 +3543,24 @@ async function wiki(args2) {
|
|
|
3508
3543
|
|
|
3509
3544
|
// src/commands/etl.ts
|
|
3510
3545
|
var fs3 = __toESM(require("node:fs"));
|
|
3546
|
+
var DEFAULT_FIELDS = ["id_thread", "description", "module", "type", "enabled", "ord_num"];
|
|
3511
3547
|
async function list3(flags) {
|
|
3512
|
-
const service = createService("etl");
|
|
3513
|
-
const threads = await service.get("threads", { fields:
|
|
3548
|
+
const service = await createService("etl");
|
|
3549
|
+
const threads = await service.get("threads", { fields: getFields(flags, DEFAULT_FIELDS) });
|
|
3514
3550
|
output(threads || [], flags);
|
|
3515
3551
|
}
|
|
3516
3552
|
async function get2(id, flags) {
|
|
3517
|
-
const service = createService("etl");
|
|
3553
|
+
const service = await createService("etl");
|
|
3518
3554
|
const thread = await service.get(`threads/${id}`);
|
|
3519
3555
|
output(thread, flags);
|
|
3520
3556
|
}
|
|
3521
3557
|
async function content(id, flags) {
|
|
3522
|
-
const service = createService("etl");
|
|
3558
|
+
const service = await createService("etl");
|
|
3523
3559
|
const text = await service.get(`threadContent/${id}`, void 0, { parseResponse: false });
|
|
3524
3560
|
process.stdout.write(text || "");
|
|
3525
3561
|
}
|
|
3526
3562
|
async function exec2(id, flags) {
|
|
3527
|
-
const service = createService("etl");
|
|
3563
|
+
const service = await createService("etl");
|
|
3528
3564
|
let body = void 0;
|
|
3529
3565
|
if (flags.file) {
|
|
3530
3566
|
body = fs3.readFileSync(flags.file, "utf-8");
|
|
@@ -3535,8 +3571,8 @@ async function exec2(id, flags) {
|
|
|
3535
3571
|
process.stdout.write(result || "");
|
|
3536
3572
|
}
|
|
3537
3573
|
async function search2(query, flags) {
|
|
3538
|
-
const service = createService("etl");
|
|
3539
|
-
const results = await service.get("search", { q: query });
|
|
3574
|
+
const service = await createService("etl");
|
|
3575
|
+
const results = await service.get("search", { q: query, fields: getFields(flags, DEFAULT_FIELDS) });
|
|
3540
3576
|
output(results || [], flags);
|
|
3541
3577
|
}
|
|
3542
3578
|
async function etl(args2) {
|
|
@@ -3576,24 +3612,26 @@ async function etl(args2) {
|
|
|
3576
3612
|
}
|
|
3577
3613
|
|
|
3578
3614
|
// src/commands/jobs.ts
|
|
3615
|
+
var DEFAULT_LIST_FIELDS = ["job_name", "description", "enabled", "last_run", "next_run"];
|
|
3616
|
+
var DEFAULT_STATUS_FIELDS = ["job_name", "running", "enabled", "last_run", "next_run"];
|
|
3579
3617
|
async function list4(flags) {
|
|
3580
|
-
const service = createService("jobs");
|
|
3581
|
-
const jobs2 = await service.get("userJobs");
|
|
3618
|
+
const service = await createService("jobs");
|
|
3619
|
+
const jobs2 = await service.get("userJobs", { fields: getFields(flags, DEFAULT_LIST_FIELDS) });
|
|
3582
3620
|
output(jobs2 || [], flags);
|
|
3583
3621
|
}
|
|
3584
3622
|
async function start(jobName, flags) {
|
|
3585
|
-
const service = createService("jobs");
|
|
3623
|
+
const service = await createService("jobs");
|
|
3586
3624
|
await service.get("start", { job_name: jobName });
|
|
3587
3625
|
console.log(`Job "${jobName}" started.`);
|
|
3588
3626
|
}
|
|
3589
3627
|
async function stop(jobName, flags) {
|
|
3590
|
-
const service = createService("jobs");
|
|
3628
|
+
const service = await createService("jobs");
|
|
3591
3629
|
await service.get("stop", { job_name: jobName });
|
|
3592
3630
|
console.log(`Job "${jobName}" stopped.`);
|
|
3593
3631
|
}
|
|
3594
3632
|
async function statusCmd(flags) {
|
|
3595
|
-
const service = createService("jobs");
|
|
3596
|
-
const statuses = await service.get("jobStatuses");
|
|
3633
|
+
const service = await createService("jobs");
|
|
3634
|
+
const statuses = await service.get("jobStatuses", { fields: getFields(flags, DEFAULT_STATUS_FIELDS) });
|
|
3597
3635
|
output(statuses || [], flags);
|
|
3598
3636
|
}
|
|
3599
3637
|
async function jobs(args2) {
|
|
@@ -3623,18 +3661,19 @@ async function jobs(args2) {
|
|
|
3623
3661
|
}
|
|
3624
3662
|
|
|
3625
3663
|
// src/commands/analytics.ts
|
|
3664
|
+
var DEFAULT_CONTEXT_FIELDS = ["id_context", "name", "module", "user_name"];
|
|
3626
3665
|
async function contexts(flags) {
|
|
3627
|
-
const service = createService("analytics");
|
|
3628
|
-
const ctxs = await service.get("namedContext");
|
|
3666
|
+
const service = await createService("analytics");
|
|
3667
|
+
const ctxs = await service.get("namedContext", { fields: getFields(flags, DEFAULT_CONTEXT_FIELDS) });
|
|
3629
3668
|
output(ctxs || [], flags);
|
|
3630
3669
|
}
|
|
3631
3670
|
async function getContext(id, flags) {
|
|
3632
|
-
const service = createService("analytics");
|
|
3671
|
+
const service = await createService("analytics");
|
|
3633
3672
|
const ctx = await service.get(`context/${id}`);
|
|
3634
3673
|
output(ctx, flags);
|
|
3635
3674
|
}
|
|
3636
3675
|
async function report(id, flags) {
|
|
3637
|
-
const service = createService("analytics");
|
|
3676
|
+
const service = await createService("analytics");
|
|
3638
3677
|
const index = flags.index || "0";
|
|
3639
3678
|
const result = await service.get(`report/${id}/${index}`, void 0, { parseResponse: false });
|
|
3640
3679
|
process.stdout.write(result || "");
|
|
@@ -3645,12 +3684,12 @@ async function dimensions(flags) {
|
|
|
3645
3684
|
console.error("Usage: rpbi analytics dimensions --module <module>");
|
|
3646
3685
|
process.exit(1);
|
|
3647
3686
|
}
|
|
3648
|
-
const service = createService("definition");
|
|
3649
|
-
const dims = await service.get(`visibleDimensions/${module2}
|
|
3687
|
+
const service = await createService("definition");
|
|
3688
|
+
const dims = await service.get(`visibleDimensions/${module2}`, { fields: getFields(flags) });
|
|
3650
3689
|
output(dims || [], flags);
|
|
3651
3690
|
}
|
|
3652
3691
|
async function periods(flags) {
|
|
3653
|
-
const service = createService("analytics");
|
|
3692
|
+
const service = await createService("analytics");
|
|
3654
3693
|
const tree = await service.get("years");
|
|
3655
3694
|
output(tree || [], flags);
|
|
3656
3695
|
}
|
|
@@ -3683,24 +3722,27 @@ async function analytics(args2) {
|
|
|
3683
3722
|
}
|
|
3684
3723
|
|
|
3685
3724
|
// src/commands/users.ts
|
|
3725
|
+
var DEFAULT_LIST_FIELDS2 = ["user_name", "login_name", "company"];
|
|
3726
|
+
var DEFAULT_RIGHTS_FIELDS = ["right", "accounting", "role", "source"];
|
|
3727
|
+
var DEFAULT_ROLES_FIELDS = ["id_access_role", "role", "description"];
|
|
3686
3728
|
async function list5(flags) {
|
|
3687
|
-
const service = createService("users");
|
|
3688
|
-
const users2 = await service.get("allUsers");
|
|
3729
|
+
const service = await createService("users");
|
|
3730
|
+
const users2 = await service.get("allUsers", { fields: getFields(flags, DEFAULT_LIST_FIELDS2) });
|
|
3689
3731
|
output(users2 || [], flags);
|
|
3690
3732
|
}
|
|
3691
3733
|
async function get3(user, flags) {
|
|
3692
|
-
const service = createService("users");
|
|
3734
|
+
const service = await createService("users");
|
|
3693
3735
|
const result = await service.get(user);
|
|
3694
3736
|
output(result, flags);
|
|
3695
3737
|
}
|
|
3696
3738
|
async function rights(flags) {
|
|
3697
|
-
const service = createService("users");
|
|
3698
|
-
const result = await service.get("userRights");
|
|
3739
|
+
const service = await createService("users");
|
|
3740
|
+
const result = await service.get("userRights", { fields: getFields(flags, DEFAULT_RIGHTS_FIELDS) });
|
|
3699
3741
|
output(result || [], flags);
|
|
3700
3742
|
}
|
|
3701
3743
|
async function roles(flags) {
|
|
3702
|
-
const service = createService("users");
|
|
3703
|
-
const result = await service.get("accessRoles");
|
|
3744
|
+
const service = await createService("users");
|
|
3745
|
+
const result = await service.get("accessRoles", { fields: getFields(flags, DEFAULT_ROLES_FIELDS) });
|
|
3704
3746
|
output(result || [], flags);
|
|
3705
3747
|
}
|
|
3706
3748
|
async function users(args2) {
|
|
@@ -3724,13 +3766,16 @@ async function users(args2) {
|
|
|
3724
3766
|
}
|
|
3725
3767
|
|
|
3726
3768
|
// src/commands/def.ts
|
|
3769
|
+
var DEFAULT_STATEMENTS_FIELDS = ["id_statement", "statement", "description"];
|
|
3770
|
+
var DEFAULT_DIMENSIONS_FIELDS = ["dim_num", "description", "enabled", "ord_num"];
|
|
3771
|
+
var DEFAULT_MODULES_FIELDS = ["module", "name", "type"];
|
|
3727
3772
|
async function statements(flags) {
|
|
3728
|
-
const service = createService("definition");
|
|
3729
|
-
const result = await service.get("finStatements");
|
|
3773
|
+
const service = await createService("definition");
|
|
3774
|
+
const result = await service.get("finStatements", { fields: getFields(flags, DEFAULT_STATEMENTS_FIELDS) });
|
|
3730
3775
|
output(result || [], flags);
|
|
3731
3776
|
}
|
|
3732
3777
|
async function statement(id, flags) {
|
|
3733
|
-
const service = createService("definition");
|
|
3778
|
+
const service = await createService("definition");
|
|
3734
3779
|
const result = await service.get(`finStatement/${id}`);
|
|
3735
3780
|
output(result, flags);
|
|
3736
3781
|
}
|
|
@@ -3740,23 +3785,23 @@ async function dimensions2(flags) {
|
|
|
3740
3785
|
console.error("Usage: rpbi def dimensions --module <module>");
|
|
3741
3786
|
process.exit(1);
|
|
3742
3787
|
}
|
|
3743
|
-
const service = createService("definition");
|
|
3744
|
-
const result = await service.get(`dimensions/${module2}
|
|
3788
|
+
const service = await createService("definition");
|
|
3789
|
+
const result = await service.get(`dimensions/${module2}`, { fields: getFields(flags, DEFAULT_DIMENSIONS_FIELDS) });
|
|
3745
3790
|
output(result || [], flags);
|
|
3746
3791
|
}
|
|
3747
3792
|
async function modules(flags) {
|
|
3748
|
-
const service = createService("definition");
|
|
3749
|
-
const result = await service.get("modules");
|
|
3793
|
+
const service = await createService("definition");
|
|
3794
|
+
const result = await service.get("modules", { fields: getFields(flags, DEFAULT_MODULES_FIELDS) });
|
|
3750
3795
|
output(result || [], flags);
|
|
3751
3796
|
}
|
|
3752
3797
|
async function scenarios(flags) {
|
|
3753
|
-
const service = createService("definition");
|
|
3754
|
-
const result = await service.get("scenarios");
|
|
3798
|
+
const service = await createService("definition");
|
|
3799
|
+
const result = await service.get("scenarios", { fields: getFields(flags) });
|
|
3755
3800
|
output(result || [], flags);
|
|
3756
3801
|
}
|
|
3757
3802
|
async function fiscalYears(flags) {
|
|
3758
|
-
const service = createService("definition");
|
|
3759
|
-
const result = await service.get("fiscalYears");
|
|
3803
|
+
const service = await createService("definition");
|
|
3804
|
+
const result = await service.get("fiscalYears", { fields: getFields(flags) });
|
|
3760
3805
|
output(result || [], flags);
|
|
3761
3806
|
}
|
|
3762
3807
|
async function def(args2) {
|
|
@@ -3786,28 +3831,29 @@ async function def(args2) {
|
|
|
3786
3831
|
}
|
|
3787
3832
|
|
|
3788
3833
|
// src/commands/mdm.ts
|
|
3834
|
+
var DEFAULT_TABLES_FIELDS = ["id_md", "md_name", "type"];
|
|
3789
3835
|
async function tables(flags) {
|
|
3790
|
-
const service = createService("mdm");
|
|
3791
|
-
const result = await service.get("tableDefinitions");
|
|
3836
|
+
const service = await createService("mdm");
|
|
3837
|
+
const result = await service.get("tableDefinitions", { fields: getFields(flags, DEFAULT_TABLES_FIELDS) });
|
|
3792
3838
|
output(result || [], flags);
|
|
3793
3839
|
}
|
|
3794
3840
|
async function table(id, flags) {
|
|
3795
|
-
const service = createService("mdm");
|
|
3841
|
+
const service = await createService("mdm");
|
|
3796
3842
|
const result = await service.get(`tableDefinition/${id}`);
|
|
3797
3843
|
output(result, flags);
|
|
3798
3844
|
}
|
|
3799
3845
|
async function columns(id, flags) {
|
|
3800
|
-
const service = createService("mdm");
|
|
3801
|
-
const result = await service.get(`columnDefinitions/${id}
|
|
3846
|
+
const service = await createService("mdm");
|
|
3847
|
+
const result = await service.get(`columnDefinitions/${id}`, { fields: getFields(flags) });
|
|
3802
3848
|
output(result || [], flags);
|
|
3803
3849
|
}
|
|
3804
3850
|
async function values(id, flags) {
|
|
3805
|
-
const service = createService("mdm");
|
|
3806
|
-
const result = await service.get(`values/${id}
|
|
3851
|
+
const service = await createService("mdm");
|
|
3852
|
+
const result = await service.get(`values/${id}`, { fields: getFields(flags) });
|
|
3807
3853
|
output(result || [], flags);
|
|
3808
3854
|
}
|
|
3809
3855
|
async function exportCsv(id, flags) {
|
|
3810
|
-
const service = createService("mdm");
|
|
3856
|
+
const service = await createService("mdm");
|
|
3811
3857
|
const type = flags.type || "mdm";
|
|
3812
3858
|
const result = await service.get(`export/${id}/${type}`, void 0, { parseResponse: false });
|
|
3813
3859
|
process.stdout.write(result || "");
|
|
@@ -3849,19 +3895,21 @@ async function mdm(args2) {
|
|
|
3849
3895
|
}
|
|
3850
3896
|
|
|
3851
3897
|
// src/commands/helpdesk.ts
|
|
3898
|
+
var DEFAULT_LIST_FIELDS3 = ["id_request", "subject", "status", "priority", "who_created"];
|
|
3899
|
+
var DEFAULT_MESSAGES_FIELDS = ["id_message", "text", "who_created", "date_created"];
|
|
3852
3900
|
async function list6(flags) {
|
|
3853
|
-
const service = createService("helpdesk");
|
|
3854
|
-
const tickets = await service.get("tickets");
|
|
3901
|
+
const service = await createService("helpdesk");
|
|
3902
|
+
const tickets = await service.get("tickets", { fields: getFields(flags, DEFAULT_LIST_FIELDS3) });
|
|
3855
3903
|
output(tickets || [], flags);
|
|
3856
3904
|
}
|
|
3857
3905
|
async function get4(id, flags) {
|
|
3858
|
-
const service = createService("helpdesk");
|
|
3906
|
+
const service = await createService("helpdesk");
|
|
3859
3907
|
const ticket = await service.get(`ticket/${id}`);
|
|
3860
3908
|
output(ticket, flags);
|
|
3861
3909
|
}
|
|
3862
3910
|
async function messages(id, flags) {
|
|
3863
|
-
const service = createService("helpdesk");
|
|
3864
|
-
const msgs = await service.get(`messages/${id}
|
|
3911
|
+
const service = await createService("helpdesk");
|
|
3912
|
+
const msgs = await service.get(`messages/${id}`, { fields: getFields(flags, DEFAULT_MESSAGES_FIELDS) });
|
|
3865
3913
|
output(msgs || [], flags);
|
|
3866
3914
|
}
|
|
3867
3915
|
async function create(flags) {
|
|
@@ -3871,7 +3919,7 @@ async function create(flags) {
|
|
|
3871
3919
|
console.error('Usage: rpbi helpdesk create --subject "..." [--text "..."] [--priority N]');
|
|
3872
3920
|
process.exit(1);
|
|
3873
3921
|
}
|
|
3874
|
-
const service = createService("helpdesk");
|
|
3922
|
+
const service = await createService("helpdesk");
|
|
3875
3923
|
const ticket = { subject };
|
|
3876
3924
|
if (flags.priority) ticket.priority = parseInt(flags.priority);
|
|
3877
3925
|
const result = await service.post("ticket", ticket);
|
|
@@ -3978,6 +4026,7 @@ Wiki:
|
|
|
3978
4026
|
|
|
3979
4027
|
Global options:
|
|
3980
4028
|
--json Output raw JSON instead of table format
|
|
4029
|
+
--columns col1,col2,... Select specific columns to display
|
|
3981
4030
|
|
|
3982
4031
|
Default domain: https://reporting.bi
|
|
3983
4032
|
Default language: cs
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reporting-bi/cli",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.7",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"description": "Reporting.bi CLI — command-line interface for the Reporting.bi platform",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
"scripts": {
|
|
14
14
|
"build": "yarn node build.mjs",
|
|
15
15
|
"watch": "yarn build --watch",
|
|
16
|
+
"rpbi": "yarn node dist/index.js",
|
|
16
17
|
"deploy-installers": "cp install.sh ../rp-static/install-cli.sh && cp install.ps1 ../rp-static/install-cli.ps1",
|
|
17
18
|
"release": "yarn node -e \"const p=require('./package.json');const v=p.version.split('.');v[2]++;p.version=v.join('.');require('fs').writeFileSync('package.json',JSON.stringify(p,null,'\\t')+'\\n')\" && yarn build && git add package.json && git commit -m \"rp-cli v$(yarn node -p \"require('./package.json').version\")\" && git push && yarn npm publish --access public"
|
|
18
19
|
},
|