@aderis-erp/cli 1.0.14 → 1.0.17
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/README.md +30 -8
- package/dist/commands/access-groups.d.ts +0 -1
- package/dist/commands/access-groups.js +22 -78
- package/dist/commands/account-transaction-allocations.d.ts +0 -1
- package/dist/commands/account-transaction-allocations.js +22 -78
- package/dist/commands/account-transactions.d.ts +0 -1
- package/dist/commands/account-transactions.js +28 -82
- package/dist/commands/accounts.d.ts +0 -1
- package/dist/commands/accounts.js +24 -80
- package/dist/commands/agent-platform.d.ts +0 -1
- package/dist/commands/agent-platform.js +24 -79
- package/dist/commands/analytics.d.ts +39 -0
- package/dist/commands/analytics.js +1113 -0
- package/dist/commands/{documents.d.ts → api-keys.d.ts} +1 -2
- package/dist/commands/api-keys.js +1117 -0
- package/dist/commands/audit-log.d.ts +0 -1
- package/dist/commands/audit-log.js +22 -78
- package/dist/commands/auth/login.d.ts +9 -0
- package/dist/commands/auth/login.js +83 -21
- package/dist/commands/auth/logout.d.ts +6 -0
- package/dist/commands/auth/logout.js +23 -6
- package/dist/commands/auth/status.js +46 -23
- package/dist/commands/auth/tenant.js +15 -9
- package/dist/commands/auth.d.ts +0 -1
- package/dist/commands/auth.js +37 -51
- package/dist/commands/bank-accounts.d.ts +0 -1
- package/dist/commands/bank-accounts.js +22 -78
- package/dist/commands/bank-integrations.d.ts +0 -1
- package/dist/commands/bank-integrations.js +22 -78
- package/dist/commands/business-partners.d.ts +1 -1
- package/dist/commands/business-partners.js +38 -84
- package/dist/commands/chat.d.ts +0 -1
- package/dist/commands/chat.js +22 -78
- package/dist/commands/config/add.d.ts +12 -0
- package/dist/commands/config/add.js +97 -17
- package/dist/commands/config/current.js +12 -4
- package/dist/commands/config/list.js +12 -4
- package/dist/commands/config/set-api-key.d.ts +10 -0
- package/dist/commands/config/set-api-key.js +49 -0
- package/dist/commands/config/use.js +3 -4
- package/dist/commands/credit-card-accounts.d.ts +0 -1
- package/dist/commands/credit-card-accounts.js +22 -78
- package/dist/commands/delivery-notes.d.ts +0 -1
- package/dist/commands/delivery-notes.js +29 -84
- package/dist/commands/dunning-configs.d.ts +0 -1
- package/dist/commands/dunning-configs.js +22 -78
- package/dist/commands/dunning-reminders.d.ts +0 -1
- package/dist/commands/dunning-reminders.js +22 -78
- package/dist/commands/dunning-runs.d.ts +0 -1
- package/dist/commands/dunning-runs.js +22 -78
- package/dist/commands/email-transactions.d.ts +0 -1
- package/dist/commands/email-transactions.js +22 -78
- package/dist/commands/employees.d.ts +0 -1
- package/dist/commands/employees.js +24 -80
- package/dist/commands/entity-configurations.d.ts +0 -1
- package/dist/commands/entity-configurations.js +22 -78
- package/dist/commands/event-processor-mappings.d.ts +0 -1
- package/dist/commands/event-processor-mappings.js +22 -78
- package/dist/commands/{files-internal.d.ts → files.d.ts} +1 -2
- package/dist/commands/{files-internal.js → files.js} +40 -90
- package/dist/commands/health.d.ts +0 -1
- package/dist/commands/health.js +22 -78
- package/dist/commands/inbox.d.ts +0 -1
- package/dist/commands/inbox.js +22 -78
- package/dist/commands/integrations.d.ts +0 -1
- package/dist/commands/integrations.js +22 -78
- package/dist/commands/item-categories.d.ts +0 -1
- package/dist/commands/item-categories.js +22 -78
- package/dist/commands/items.d.ts +0 -1
- package/dist/commands/items.js +24 -80
- package/dist/commands/journal-lines.d.ts +0 -1
- package/dist/commands/journal-lines.js +22 -78
- package/dist/commands/journals.d.ts +1 -1
- package/dist/commands/journals.js +29 -81
- package/dist/commands/ledgers.d.ts +0 -1
- package/dist/commands/ledgers.js +26 -79
- package/dist/commands/nango-integrations.d.ts +39 -0
- package/dist/commands/nango-integrations.js +1115 -0
- package/dist/commands/office-locations.d.ts +0 -1
- package/dist/commands/office-locations.js +22 -78
- package/dist/commands/payment-methods.d.ts +0 -1
- package/dist/commands/payment-methods.js +22 -78
- package/dist/commands/payment-runs.d.ts +0 -1
- package/dist/commands/payment-runs.js +24 -79
- package/dist/commands/payment-terms.d.ts +0 -1
- package/dist/commands/payment-terms.js +22 -78
- package/dist/commands/payments.d.ts +0 -1
- package/dist/commands/payments.js +22 -78
- package/dist/commands/price-lists.d.ts +0 -1
- package/dist/commands/price-lists.js +22 -78
- package/dist/commands/processor-mappings.d.ts +0 -1
- package/dist/commands/processor-mappings.js +22 -78
- package/dist/commands/processors.d.ts +0 -1
- package/dist/commands/processors.js +22 -78
- package/dist/commands/purchase-order-types.d.ts +0 -1
- package/dist/commands/purchase-order-types.js +22 -78
- package/dist/commands/purchase-orders.d.ts +1 -1
- package/dist/commands/purchase-orders.js +35 -84
- package/dist/commands/reports.d.ts +0 -1
- package/dist/commands/reports.js +23 -79
- package/dist/commands/salary-types.d.ts +0 -1
- package/dist/commands/salary-types.js +22 -78
- package/dist/commands/sales-invoices.d.ts +0 -1
- package/dist/commands/sales-invoices.js +38 -89
- package/dist/commands/sales-orders.d.ts +0 -1
- package/dist/commands/sales-orders.js +26 -82
- package/dist/commands/saved-views.d.ts +0 -1
- package/dist/commands/saved-views.js +22 -78
- package/dist/commands/scheduled-processor-mappings.d.ts +0 -1
- package/dist/commands/scheduled-processor-mappings.js +22 -78
- package/dist/commands/schedules.d.ts +0 -1
- package/dist/commands/schedules.js +22 -78
- package/dist/commands/switch.js +14 -7
- package/dist/commands/tag-configurations.d.ts +39 -0
- package/dist/commands/{documents.js → tag-configurations.js} +40 -96
- package/dist/commands/tags.d.ts +0 -1
- package/dist/commands/tags.js +22 -78
- package/dist/commands/tax-codes.d.ts +0 -1
- package/dist/commands/tax-codes.js +22 -78
- package/dist/commands/tax-matrix.d.ts +0 -1
- package/dist/commands/tax-matrix.js +22 -78
- package/dist/commands/tenants.d.ts +0 -1
- package/dist/commands/tenants.js +24 -79
- package/dist/commands/text-templates.d.ts +0 -1
- package/dist/commands/text-templates.js +22 -78
- package/dist/commands/tools.d.ts +0 -1
- package/dist/commands/tools.js +22 -78
- package/dist/commands/vat-declarations.d.ts +1 -1
- package/dist/commands/vat-declarations.js +28 -79
- package/dist/commands/vendor-invoices.d.ts +0 -1
- package/dist/commands/vendor-invoices.js +31 -86
- package/dist/commands/webhooks.d.ts +0 -1
- package/dist/commands/webhooks.js +22 -78
- package/dist/commands/workflows.d.ts +0 -1
- package/dist/commands/workflows.js +22 -78
- package/dist/lib/api-client.js +8 -6
- package/dist/lib/auth/constants.d.ts +11 -0
- package/dist/lib/auth/constants.js +11 -0
- package/dist/lib/auth/errors.d.ts +17 -0
- package/dist/lib/auth/errors.js +22 -0
- package/dist/lib/auth/flow.d.ts +27 -0
- package/dist/lib/auth/flow.js +163 -0
- package/dist/lib/auth/guards.d.ts +5 -0
- package/dist/lib/auth/guards.js +14 -0
- package/dist/lib/auth/http.d.ts +16 -0
- package/dist/lib/auth/http.js +49 -0
- package/dist/lib/auth/index.d.ts +49 -0
- package/dist/lib/auth/index.js +217 -0
- package/dist/lib/auth/keycloak-provider.d.ts +75 -0
- package/dist/lib/auth/keycloak-provider.js +215 -0
- package/dist/lib/auth/pages.d.ts +25 -0
- package/dist/lib/auth/pages.js +123 -0
- package/dist/lib/auth/pkce.d.ts +11 -0
- package/dist/lib/auth/pkce.js +17 -0
- package/dist/lib/auth/tokens.d.ts +54 -0
- package/dist/lib/auth/tokens.js +104 -0
- package/dist/lib/auth/types.d.ts +57 -0
- package/dist/lib/auth/types.js +1 -0
- package/dist/lib/auth/validated-url.d.ts +6 -0
- package/dist/lib/auth/validated-url.js +53 -0
- package/dist/lib/base-api-command.js +6 -4
- package/dist/lib/config.d.ts +44 -4
- package/dist/lib/config.js +55 -19
- package/oclif.manifest.json +1181 -330
- package/package.json +3 -2
- package/dist/lib/auth.d.ts +0 -35
- package/dist/lib/auth.js +0 -566
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Command, Args, Flags } from '@oclif/core';
|
|
2
2
|
import { apiRequest, ApiError, normalizeSortBy } from '../lib/api-client.js';
|
|
3
|
-
import { getCurrentContext, getContext, getBaseUrls } from '../lib/config.js';
|
|
3
|
+
import { getCurrentContext, getContext, getBaseUrls, hasCredentials, missingCredentialsMessage } from '../lib/config.js';
|
|
4
4
|
// Add 'import' action if both create and update exist
|
|
5
5
|
const HAS_IMPORT = false;
|
|
6
6
|
const HAS_EXPORT = false;
|
|
7
7
|
const HAS_CAMT053 = false;
|
|
8
8
|
const NESTED_IMPORTS = [];
|
|
9
|
-
const SUBCOMMANDS = [...["get-runs", "get-runs-runId", "runs-retry", "runs-restart", "runs-discard", "uploads", "uploads-counts", "uploads-files"], ...(HAS_IMPORT ? ['import'] : []), ...(HAS_EXPORT ? ['export'] : []), ...NESTED_IMPORTS.map(n => `import-${n}`)];
|
|
9
|
+
const SUBCOMMANDS = [...["get-runs", "get-runs-runId", "runs-retry", "runs-restart", "runs-discard", "uploads", "uploads-counts", "uploads-files", "usage"], ...(HAS_IMPORT ? ['import'] : []), ...(HAS_EXPORT ? ['export'] : []), ...NESTED_IMPORTS.map(n => `import-${n}`)];
|
|
10
10
|
const ENDPOINTS = {
|
|
11
11
|
'get-runs': { method: 'GET', path: '/v1/agent-platform/runs', summary: 'List agent runs (agents-platform pass-through).', pathParams: [], hasBody: false, isMultipart: false, isBinaryResponse: false, bodyArrayFields: [] },
|
|
12
12
|
'get-runs-runId': { method: 'GET', path: '/v1/agent-platform/runs/{runId}', summary: 'Fetch one agent run (agents-platform pass-through).', pathParams: ['runId'], hasBody: false, isMultipart: false, isBinaryResponse: false, bodyArrayFields: [] },
|
|
@@ -16,6 +16,7 @@ const ENDPOINTS = {
|
|
|
16
16
|
'uploads': { method: 'GET', path: '/v1/agent-platform/uploads', summary: 'List uploads (agents-platform pass-through).', pathParams: [], hasBody: false, isMultipart: false, isBinaryResponse: false, bodyArrayFields: [] },
|
|
17
17
|
'uploads-counts': { method: 'GET', path: '/v1/agent-platform/uploads/counts', summary: 'Fetch upload counts (agents-platform pass-through).', pathParams: [], hasBody: false, isMultipart: false, isBinaryResponse: false, bodyArrayFields: [] },
|
|
18
18
|
'uploads-files': { method: 'GET', path: '/v1/agent-platform/uploads/{processingId}/files/{fileId}', summary: 'Fetch one of an upload\'s files (agents-platform pass-through).', pathParams: ['processingId', 'fileId'], hasBody: false, isMultipart: false, isBinaryResponse: false, bodyArrayFields: [] },
|
|
19
|
+
'usage': { method: 'GET', path: '/v1/agent-platform/usage', summary: 'Fetch tenant LLM usage report (agents-platform pass-through).', pathParams: [], hasBody: false, isMultipart: false, isBinaryResponse: false, bodyArrayFields: [] },
|
|
19
20
|
};
|
|
20
21
|
export default class AgentPlatform extends Command {
|
|
21
22
|
static description = 'Manage agent platform';
|
|
@@ -25,7 +26,7 @@ export default class AgentPlatform extends Command {
|
|
|
25
26
|
id: Args.string({ description: 'Resource ID (for get, update, delete operations)', required: false }),
|
|
26
27
|
};
|
|
27
28
|
static flags = {
|
|
28
|
-
context: Flags.string({ char: 'c', description: 'Context to use' }),
|
|
29
|
+
context: Flags.string({ char: 'c', aliases: ['config'], env: 'ADERIS_CONTEXT', description: 'Context to use for this command, overriding the current context (alias: --config)' }),
|
|
29
30
|
output: Flags.string({ char: 'o', description: 'Output format (default: table for import, json for other commands)', options: ['json', 'table', 'csv'] }),
|
|
30
31
|
table: Flags.boolean({ char: 't', description: 'Output as table (shortcut for --output table)' }),
|
|
31
32
|
csv: Flags.boolean({ description: 'Output as CSV (shortcut for --output csv)' }),
|
|
@@ -40,7 +41,7 @@ export default class AgentPlatform extends Command {
|
|
|
40
41
|
'sort-by': Flags.string({ description: 'Sort field(s), comma-separated. Direction (:ASC/:DESC) is optional; date-like fields default to DESC, others to ASC.' }),
|
|
41
42
|
filter: Flags.string({ description: 'Filter (e.g. --filter status=ACTIVE). Operators: in:A,B, like:%, gt:, lt:, null:', multiple: true }),
|
|
42
43
|
query: Flags.string({ description: 'Additional query params as JSON' }),
|
|
43
|
-
fields: Flags.string({ description: 'Comma-separated list of fields to
|
|
44
|
+
fields: Flags.string({ description: 'Comma-separated list of fields to return, applied by the API (e.g. --fields=id,name,status)' }),
|
|
44
45
|
sanitize: Flags.boolean({ description: 'Remove null values, audit fields, and duplicate UUIDs from output' }),
|
|
45
46
|
'show-http-request': Flags.boolean({ description: 'Show HTTP request details (method, URL, body)' }),
|
|
46
47
|
};
|
|
@@ -98,9 +99,9 @@ export default class AgentPlatform extends Command {
|
|
|
98
99
|
}
|
|
99
100
|
const context = flags.context ? getContext(flags.context) : getCurrentContext();
|
|
100
101
|
if (!context)
|
|
101
|
-
this.error('No context configured. Run: aderis auth login --new');
|
|
102
|
-
if (!context
|
|
103
|
-
this.error(
|
|
102
|
+
this.error(flags.context ? `Context "${flags.context}" not found. List contexts with: aderis config list` : 'No context configured. Run: aderis auth login --new');
|
|
103
|
+
if (!hasCredentials(context))
|
|
104
|
+
this.error(missingCredentialsMessage(context));
|
|
104
105
|
const queryParams = {};
|
|
105
106
|
if (flags.page)
|
|
106
107
|
queryParams.page = flags.page;
|
|
@@ -112,6 +113,8 @@ export default class AgentPlatform extends Command {
|
|
|
112
113
|
queryParams.search = flags.search;
|
|
113
114
|
if (flags['sort-by'])
|
|
114
115
|
queryParams.sortBy = normalizeSortBy(flags['sort-by']);
|
|
116
|
+
if (flags.fields)
|
|
117
|
+
queryParams.fields = flags.fields;
|
|
115
118
|
if (flags.query) {
|
|
116
119
|
try {
|
|
117
120
|
Object.assign(queryParams, JSON.parse(flags.query));
|
|
@@ -314,11 +317,6 @@ export default class AgentPlatform extends Command {
|
|
|
314
317
|
output = obj[arrayKeys[0]];
|
|
315
318
|
}
|
|
316
319
|
}
|
|
317
|
-
// Filter fields if --fields flag is provided
|
|
318
|
-
if (flags.fields) {
|
|
319
|
-
const fieldList = flags.fields.split(',').map(f => f.trim());
|
|
320
|
-
output = this.filterFields(output, fieldList);
|
|
321
|
-
}
|
|
322
320
|
// Sanitize output if requested
|
|
323
321
|
if (flags.sanitize) {
|
|
324
322
|
output = this.sanitizeOutput(output);
|
|
@@ -343,9 +341,9 @@ export default class AgentPlatform extends Command {
|
|
|
343
341
|
async runImport(flags) {
|
|
344
342
|
const context = flags.context ? getContext(flags.context) : getCurrentContext();
|
|
345
343
|
if (!context)
|
|
346
|
-
this.error('No context configured. Run: aderis auth login --new');
|
|
347
|
-
if (!context
|
|
348
|
-
this.error(
|
|
344
|
+
this.error(flags.context ? `Context "${flags.context}" not found. List contexts with: aderis config list` : 'No context configured. Run: aderis auth login --new');
|
|
345
|
+
if (!hasCredentials(context))
|
|
346
|
+
this.error(missingCredentialsMessage(context));
|
|
349
347
|
// Get data from file, --data, or --set flags
|
|
350
348
|
let items = [];
|
|
351
349
|
if (flags.file) {
|
|
@@ -555,9 +553,9 @@ export default class AgentPlatform extends Command {
|
|
|
555
553
|
async runExport(flags) {
|
|
556
554
|
const context = flags.context ? getContext(flags.context) : getCurrentContext();
|
|
557
555
|
if (!context)
|
|
558
|
-
this.error('No context configured. Run: aderis auth login --new');
|
|
559
|
-
if (!context
|
|
560
|
-
this.error(
|
|
556
|
+
this.error(flags.context ? `Context "${flags.context}" not found. List contexts with: aderis config list` : 'No context configured. Run: aderis auth login --new');
|
|
557
|
+
if (!hasCredentials(context))
|
|
558
|
+
this.error(missingCredentialsMessage(context));
|
|
561
559
|
const listEndpoint = ENDPOINTS['list'];
|
|
562
560
|
if (!listEndpoint)
|
|
563
561
|
this.error('Export requires a list endpoint');
|
|
@@ -573,6 +571,8 @@ export default class AgentPlatform extends Command {
|
|
|
573
571
|
baseParams.sortBy = normalizeSortBy(flags['sort-by']);
|
|
574
572
|
if (flags.include)
|
|
575
573
|
baseParams.include = flags.include;
|
|
574
|
+
if (flags.fields)
|
|
575
|
+
baseParams.fields = flags.fields;
|
|
576
576
|
if (flags.query) {
|
|
577
577
|
try {
|
|
578
578
|
Object.assign(baseParams, JSON.parse(flags.query));
|
|
@@ -627,12 +627,7 @@ export default class AgentPlatform extends Command {
|
|
|
627
627
|
}
|
|
628
628
|
}
|
|
629
629
|
process.stderr.write(' done\n');
|
|
630
|
-
// Filter fields if specified
|
|
631
630
|
let output = allItems;
|
|
632
|
-
if (flags.fields) {
|
|
633
|
-
const fieldList = flags.fields.split(',').map(f => f.trim());
|
|
634
|
-
output = this.filterFields(allItems, fieldList);
|
|
635
|
-
}
|
|
636
631
|
// Sanitize output if requested
|
|
637
632
|
if (flags.sanitize) {
|
|
638
633
|
output = this.sanitizeOutput(output);
|
|
@@ -649,9 +644,9 @@ export default class AgentPlatform extends Command {
|
|
|
649
644
|
async runCamt053Import(flags) {
|
|
650
645
|
const context = flags.context ? getContext(flags.context) : getCurrentContext();
|
|
651
646
|
if (!context)
|
|
652
|
-
this.error('No context configured. Run: aderis auth login --new');
|
|
653
|
-
if (!context
|
|
654
|
-
this.error(
|
|
647
|
+
this.error(flags.context ? `Context "${flags.context}" not found. List contexts with: aderis config list` : 'No context configured. Run: aderis auth login --new');
|
|
648
|
+
if (!hasCredentials(context))
|
|
649
|
+
this.error(missingCredentialsMessage(context));
|
|
655
650
|
if (!flags.file) {
|
|
656
651
|
this.error('CAMT.053 import requires --file (-f) flag with path to XML file');
|
|
657
652
|
}
|
|
@@ -739,9 +734,9 @@ export default class AgentPlatform extends Command {
|
|
|
739
734
|
}
|
|
740
735
|
const context = flags.context ? getContext(flags.context) : getCurrentContext();
|
|
741
736
|
if (!context)
|
|
742
|
-
this.error('No context configured. Run: aderis auth login --new');
|
|
743
|
-
if (!context
|
|
744
|
-
this.error(
|
|
737
|
+
this.error(flags.context ? `Context "${flags.context}" not found. List contexts with: aderis config list` : 'No context configured. Run: aderis auth login --new');
|
|
738
|
+
if (!hasCredentials(context))
|
|
739
|
+
this.error(missingCredentialsMessage(context));
|
|
745
740
|
// Get data from file, --data, or --set flags
|
|
746
741
|
let items = [];
|
|
747
742
|
if (flags.file) {
|
|
@@ -961,56 +956,6 @@ export default class AgentPlatform extends Command {
|
|
|
961
956
|
return `\$${op}`;
|
|
962
957
|
return opRe.test(rest) ? `\$${op}:${this.parseFilterValue(rest)}` : `\$${op}:${rest}`;
|
|
963
958
|
}
|
|
964
|
-
filterFields(data, fields) {
|
|
965
|
-
const isUnsafeKey = (k) => k === '__proto__' || k === 'constructor' || k === 'prototype';
|
|
966
|
-
const pick = (obj, keys) => {
|
|
967
|
-
// Group keys by their first segment so sibling sub-paths
|
|
968
|
-
// (e.g. 'items.amount' + 'items._type') resolve in one recursive pass
|
|
969
|
-
// and don't clobber each other on merge.
|
|
970
|
-
const directKeys = new Set();
|
|
971
|
-
const nestedKeys = new Map();
|
|
972
|
-
for (const key of keys) {
|
|
973
|
-
if (key.split('.').some(isUnsafeKey))
|
|
974
|
-
continue;
|
|
975
|
-
if (key.includes('.')) {
|
|
976
|
-
const [first, ...rest] = key.split('.');
|
|
977
|
-
if (isUnsafeKey(first))
|
|
978
|
-
continue;
|
|
979
|
-
const list = nestedKeys.get(first);
|
|
980
|
-
if (list) {
|
|
981
|
-
list.push(rest.join('.'));
|
|
982
|
-
}
|
|
983
|
-
else {
|
|
984
|
-
nestedKeys.set(first, [rest.join('.')]);
|
|
985
|
-
}
|
|
986
|
-
}
|
|
987
|
-
else {
|
|
988
|
-
directKeys.add(key);
|
|
989
|
-
}
|
|
990
|
-
}
|
|
991
|
-
const result = {};
|
|
992
|
-
for (const key of directKeys) {
|
|
993
|
-
if (key in obj)
|
|
994
|
-
result[key] = obj[key];
|
|
995
|
-
}
|
|
996
|
-
for (const [first, restKeys] of nestedKeys) {
|
|
997
|
-
const val = obj[first];
|
|
998
|
-
if (!val || typeof val !== 'object')
|
|
999
|
-
continue;
|
|
1000
|
-
if (Array.isArray(val)) {
|
|
1001
|
-
result[first] = val.map(item => pick(item, restKeys));
|
|
1002
|
-
}
|
|
1003
|
-
else {
|
|
1004
|
-
result[first] = pick(val, restKeys);
|
|
1005
|
-
}
|
|
1006
|
-
}
|
|
1007
|
-
return result;
|
|
1008
|
-
};
|
|
1009
|
-
if (Array.isArray(data)) {
|
|
1010
|
-
return data.map(item => pick(item, fields));
|
|
1011
|
-
}
|
|
1012
|
-
return pick(data, fields);
|
|
1013
|
-
}
|
|
1014
959
|
sanitizeOutput(data) {
|
|
1015
960
|
const auditFields = ['_type', 'tenantId', 'createdAt', 'updatedAt', 'createdBy', 'updatedBy'];
|
|
1016
961
|
const uuidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
export default class Analytics extends Command {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: never[];
|
|
5
|
+
static args: {
|
|
6
|
+
action: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
7
|
+
id: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
8
|
+
};
|
|
9
|
+
static flags: {
|
|
10
|
+
context: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
output: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
table: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
13
|
+
csv: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
14
|
+
data: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
|
+
file: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
set: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
page: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
|
+
limit: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
|
+
include: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
|
+
search: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
|
+
'sort-by': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
22
|
+
filter: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
23
|
+
query: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
24
|
+
fields: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
25
|
+
sanitize: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
26
|
+
'show-http-request': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
27
|
+
};
|
|
28
|
+
run(): Promise<void>;
|
|
29
|
+
private runImport;
|
|
30
|
+
private runExport;
|
|
31
|
+
private runCamt053Import;
|
|
32
|
+
private runNestedImport;
|
|
33
|
+
private parseFilterValue;
|
|
34
|
+
private sanitizeOutput;
|
|
35
|
+
private getColumns;
|
|
36
|
+
private getValue;
|
|
37
|
+
private printTable;
|
|
38
|
+
private printCsv;
|
|
39
|
+
}
|