@newpeak/barista-cli 0.1.491 → 0.1.496

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.
Files changed (105) hide show
  1. package/dist/commands/liberica/files/index.d.ts +3 -0
  2. package/dist/commands/liberica/files/index.d.ts.map +1 -0
  3. package/dist/commands/liberica/files/index.js +9 -0
  4. package/dist/commands/liberica/files/index.js.map +1 -0
  5. package/dist/commands/liberica/files/upload.d.ts +3 -0
  6. package/dist/commands/liberica/files/upload.d.ts.map +1 -0
  7. package/dist/commands/liberica/files/upload.js +105 -0
  8. package/dist/commands/liberica/files/upload.js.map +1 -0
  9. package/dist/commands/liberica/finance/fixed-asset/capitalise.d.ts +3 -0
  10. package/dist/commands/liberica/finance/fixed-asset/capitalise.d.ts.map +1 -0
  11. package/dist/commands/liberica/finance/fixed-asset/capitalise.js +44 -0
  12. package/dist/commands/liberica/finance/fixed-asset/capitalise.js.map +1 -0
  13. package/dist/commands/liberica/finance/fixed-asset/category/create.d.ts +3 -0
  14. package/dist/commands/liberica/finance/fixed-asset/category/create.d.ts.map +1 -0
  15. package/dist/commands/liberica/finance/fixed-asset/category/create.js +70 -0
  16. package/dist/commands/liberica/finance/fixed-asset/category/create.js.map +1 -0
  17. package/dist/commands/liberica/finance/fixed-asset/category/index.d.ts +3 -0
  18. package/dist/commands/liberica/finance/fixed-asset/category/index.d.ts.map +1 -0
  19. package/dist/commands/liberica/finance/fixed-asset/category/index.js +11 -0
  20. package/dist/commands/liberica/finance/fixed-asset/category/index.js.map +1 -0
  21. package/dist/commands/liberica/finance/fixed-asset/category/list.d.ts +3 -0
  22. package/dist/commands/liberica/finance/fixed-asset/category/list.d.ts.map +1 -0
  23. package/dist/commands/liberica/finance/fixed-asset/category/list.js +59 -0
  24. package/dist/commands/liberica/finance/fixed-asset/category/list.js.map +1 -0
  25. package/dist/commands/liberica/finance/fixed-asset/create.d.ts +3 -0
  26. package/dist/commands/liberica/finance/fixed-asset/create.d.ts.map +1 -0
  27. package/dist/commands/liberica/finance/fixed-asset/create.js +89 -0
  28. package/dist/commands/liberica/finance/fixed-asset/create.js.map +1 -0
  29. package/dist/commands/liberica/finance/fixed-asset/depreciate.d.ts +3 -0
  30. package/dist/commands/liberica/finance/fixed-asset/depreciate.d.ts.map +1 -0
  31. package/dist/commands/liberica/finance/fixed-asset/depreciate.js +51 -0
  32. package/dist/commands/liberica/finance/fixed-asset/depreciate.js.map +1 -0
  33. package/dist/commands/liberica/finance/fixed-asset/depreciation-schedule.d.ts +3 -0
  34. package/dist/commands/liberica/finance/fixed-asset/depreciation-schedule.d.ts.map +1 -0
  35. package/dist/commands/liberica/finance/fixed-asset/depreciation-schedule.js +61 -0
  36. package/dist/commands/liberica/finance/fixed-asset/depreciation-schedule.js.map +1 -0
  37. package/dist/commands/liberica/finance/fixed-asset/dispose.d.ts +3 -0
  38. package/dist/commands/liberica/finance/fixed-asset/dispose.d.ts.map +1 -0
  39. package/dist/commands/liberica/finance/fixed-asset/dispose.js +61 -0
  40. package/dist/commands/liberica/finance/fixed-asset/dispose.js.map +1 -0
  41. package/dist/commands/liberica/finance/fixed-asset/get.d.ts +3 -0
  42. package/dist/commands/liberica/finance/fixed-asset/get.d.ts.map +1 -0
  43. package/dist/commands/liberica/finance/fixed-asset/get.js +73 -0
  44. package/dist/commands/liberica/finance/fixed-asset/get.js.map +1 -0
  45. package/dist/commands/liberica/finance/fixed-asset/impairment.d.ts +3 -0
  46. package/dist/commands/liberica/finance/fixed-asset/impairment.d.ts.map +1 -0
  47. package/dist/commands/liberica/finance/fixed-asset/impairment.js +93 -0
  48. package/dist/commands/liberica/finance/fixed-asset/impairment.js.map +1 -0
  49. package/dist/commands/liberica/finance/fixed-asset/index.d.ts +3 -0
  50. package/dist/commands/liberica/finance/fixed-asset/index.d.ts.map +1 -0
  51. package/dist/commands/liberica/finance/fixed-asset/index.js +27 -0
  52. package/dist/commands/liberica/finance/fixed-asset/index.js.map +1 -0
  53. package/dist/commands/liberica/finance/fixed-asset/list.d.ts +3 -0
  54. package/dist/commands/liberica/finance/fixed-asset/list.d.ts.map +1 -0
  55. package/dist/commands/liberica/finance/fixed-asset/list.js +84 -0
  56. package/dist/commands/liberica/finance/fixed-asset/list.js.map +1 -0
  57. package/dist/commands/liberica/finance/fixed-asset/update.d.ts +3 -0
  58. package/dist/commands/liberica/finance/fixed-asset/update.d.ts.map +1 -0
  59. package/dist/commands/liberica/finance/fixed-asset/update.js +54 -0
  60. package/dist/commands/liberica/finance/fixed-asset/update.js.map +1 -0
  61. package/dist/commands/liberica/finance/index.d.ts.map +1 -1
  62. package/dist/commands/liberica/finance/index.js +3 -1
  63. package/dist/commands/liberica/finance/index.js.map +1 -1
  64. package/dist/commands/liberica/finance/voucher/audit-trail.d.ts +3 -0
  65. package/dist/commands/liberica/finance/voucher/audit-trail.d.ts.map +1 -0
  66. package/dist/commands/liberica/finance/voucher/audit-trail.js +68 -0
  67. package/dist/commands/liberica/finance/voucher/audit-trail.js.map +1 -0
  68. package/dist/commands/liberica/finance/voucher/gaps.d.ts +3 -0
  69. package/dist/commands/liberica/finance/voucher/gaps.d.ts.map +1 -0
  70. package/dist/commands/liberica/finance/voucher/gaps.js +64 -0
  71. package/dist/commands/liberica/finance/voucher/gaps.js.map +1 -0
  72. package/dist/commands/liberica/finance/voucher/index.d.ts.map +1 -1
  73. package/dist/commands/liberica/finance/voucher/index.js +5 -1
  74. package/dist/commands/liberica/finance/voucher/index.js.map +1 -1
  75. package/dist/commands/liberica/index.d.ts.map +1 -1
  76. package/dist/commands/liberica/index.js +2 -0
  77. package/dist/commands/liberica/index.js.map +1 -1
  78. package/dist/commands/liberica/issue/index.d.ts.map +1 -1
  79. package/dist/commands/liberica/issue/index.js +2 -0
  80. package/dist/commands/liberica/issue/index.js.map +1 -1
  81. package/dist/commands/liberica/issue/submit.d.ts.map +1 -1
  82. package/dist/commands/liberica/issue/submit.js +22 -0
  83. package/dist/commands/liberica/issue/submit.js.map +1 -1
  84. package/dist/commands/liberica/issue/upload.d.ts +3 -0
  85. package/dist/commands/liberica/issue/upload.d.ts.map +1 -0
  86. package/dist/commands/liberica/issue/upload.js +91 -0
  87. package/dist/commands/liberica/issue/upload.js.map +1 -0
  88. package/dist/commands/liberica/sales-orders/create.d.ts.map +1 -1
  89. package/dist/commands/liberica/sales-orders/create.js +11 -0
  90. package/dist/commands/liberica/sales-orders/create.js.map +1 -1
  91. package/dist/core/api/client.d.ts +16 -0
  92. package/dist/core/api/client.d.ts.map +1 -1
  93. package/dist/core/api/client.js +272 -0
  94. package/dist/core/api/client.js.map +1 -1
  95. package/dist/types/file.d.ts +26 -0
  96. package/dist/types/file.d.ts.map +1 -0
  97. package/dist/types/file.js +2 -0
  98. package/dist/types/file.js.map +1 -0
  99. package/dist/types/finance.d.ts +130 -0
  100. package/dist/types/finance.d.ts.map +1 -1
  101. package/dist/types/issue-report.d.ts +6 -0
  102. package/dist/types/issue-report.d.ts.map +1 -1
  103. package/package.json +1 -1
  104. package/skills/barista-cli/data/commands.json +84 -2
  105. package/skills/barista-cli/data/commands.yaml +59 -2
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function createFilesCommand(): Command;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/liberica/files/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAgB,kBAAkB,IAAI,OAAO,CAO5C"}
@@ -0,0 +1,9 @@
1
+ import { Command } from 'commander';
2
+ import { createFilesUploadCommand } from './upload.js';
3
+ export function createFilesCommand() {
4
+ const filesCommand = new Command('files');
5
+ filesCommand.description('Manage file uploads: upload files to the Liberica platform');
6
+ filesCommand.addCommand(createFilesUploadCommand());
7
+ return filesCommand;
8
+ }
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/commands/liberica/files/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEvD,MAAM,UAAU,kBAAkB;IAChC,MAAM,YAAY,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C,YAAY,CAAC,WAAW,CAAC,4DAA4D,CAAC,CAAC;IAEvF,YAAY,CAAC,UAAU,CAAC,wBAAwB,EAAE,CAAC,CAAC;IAEpD,OAAO,YAAY,CAAC;AACtB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function createFilesUploadCommand(): Command;
3
+ //# sourceMappingURL=upload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../../src/commands/liberica/files/upload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,wBAAwB,IAAI,OAAO,CAiGlD"}
@@ -0,0 +1,105 @@
1
+ import { Command } from 'commander';
2
+ import chalk from 'chalk';
3
+ import { statSync } from 'node:fs';
4
+ import { configManager } from '../../../core/config/manager.js';
5
+ import { apiClient } from '../../../core/api/client.js';
6
+ export function createFilesUploadCommand() {
7
+ const uploadCommand = new Command('upload');
8
+ uploadCommand.description('Upload a file to the Liberica platform (generic file storage)');
9
+ uploadCommand
10
+ .argument('<file-path>', 'Path to the file to upload')
11
+ .option('--secret-flag <Y|N>', 'File visibility: N (public, default) or Y (private)', 'N')
12
+ .option('--dry-run', 'Preview the file information without uploading')
13
+ .option('--json', 'Output as JSON')
14
+ .action(async (filePath, options) => {
15
+ const context = configManager.getCurrentContext();
16
+ const environment = context.environment;
17
+ const tenant = context.tenant;
18
+ const secretFlag = (options.secretFlag || 'N').toUpperCase();
19
+ // Validate secretFlag value
20
+ if (secretFlag !== 'Y' && secretFlag !== 'N') {
21
+ if (options.json) {
22
+ console.log(JSON.stringify({ success: false, error: { code: 'INVALID_OPTION', message: '--secret-flag must be Y or N' } }, null, 2));
23
+ }
24
+ else {
25
+ console.error(chalk.red('\n\u2717 Invalid --secret-flag value. Must be Y or N.\n'));
26
+ }
27
+ process.exit(1);
28
+ }
29
+ let fileSize;
30
+ try {
31
+ const stats = statSync(filePath);
32
+ fileSize = stats.size;
33
+ }
34
+ catch {
35
+ if (options.json) {
36
+ console.log(JSON.stringify({ success: false, error: { code: 'FILE_READ_ERROR', message: `Cannot read file: ${filePath}` } }, null, 2));
37
+ }
38
+ else {
39
+ console.error(chalk.red(`\n\u2717 Failed to read file: ${filePath}`));
40
+ console.error(chalk.yellow(' Make sure the file exists and is readable.\n'));
41
+ }
42
+ process.exit(1);
43
+ }
44
+ const MAX_FILE_SIZE = 10 * 1024 * 1024;
45
+ if (fileSize > MAX_FILE_SIZE) {
46
+ if (options.json) {
47
+ console.log(JSON.stringify({ success: false, error: { code: 'FILE_TOO_LARGE', message: `File size ${(fileSize / 1024 / 1024).toFixed(2)}MB exceeds 10MB limit` } }, null, 2));
48
+ }
49
+ else {
50
+ console.error(chalk.red(`\n\u2717 File too large: ${(fileSize / 1024 / 1024).toFixed(2)}MB`));
51
+ console.error(chalk.yellow(' Maximum file size is 10MB.\n'));
52
+ }
53
+ process.exit(1);
54
+ }
55
+ const fileName = filePath.split('/').pop() || filePath.split('\\').pop() || filePath;
56
+ const fileSuffix = fileName.includes('.') ? fileName.split('.').pop() : undefined;
57
+ if (options.dryRun) {
58
+ if (options.json) {
59
+ console.log(JSON.stringify({ success: true, data: { dryRun: true, fileName, fileSize, fileSuffix, secretFlag } }, null, 2));
60
+ }
61
+ else {
62
+ console.log(chalk.bold('\n\uD83D\uDD0D File Upload Preview (dry-run)\n'));
63
+ console.log(chalk.gray(' File:'), fileName);
64
+ console.log(chalk.gray(' Size:'), `${(fileSize / 1024).toFixed(1)} KB`);
65
+ if (fileSuffix)
66
+ console.log(chalk.gray(' Type:'), fileSuffix);
67
+ console.log(chalk.gray(' Visibility:'), secretFlag === 'N' ? 'Public' : 'Private');
68
+ console.log(chalk.green('\n\u2713 File exists and is within size limit.'));
69
+ console.log(chalk.gray(' Use without --dry-run to upload.\n'));
70
+ }
71
+ return;
72
+ }
73
+ const response = await apiClient.uploadSysFile(environment, tenant, filePath, secretFlag);
74
+ if (!response.success) {
75
+ const errCode = response.error?.code;
76
+ const errMsg = response.error?.message || 'Unknown error';
77
+ if (options.json) {
78
+ console.log(JSON.stringify({ success: false, error: response.error || { code: 'API_ERROR', message: errMsg } }, null, 2));
79
+ }
80
+ else {
81
+ console.error(chalk.red(`\n\u2717 Failed to upload file: ${errMsg}`));
82
+ if (errCode)
83
+ console.error(chalk.gray(` Error code: ${errCode}`));
84
+ console.error();
85
+ }
86
+ process.exit(1);
87
+ }
88
+ if (options.json) {
89
+ console.log(JSON.stringify({ success: true, data: response.data }, null, 2));
90
+ }
91
+ else {
92
+ console.log(chalk.green('\n\u2713 File uploaded successfully\n'));
93
+ console.log(chalk.gray(' File ID:'), response.data?.fileId);
94
+ console.log(chalk.gray(' File Name:'), response.data?.fileName);
95
+ console.log(chalk.gray(' File Size:'), response.data?.fileSize ? `${(response.data.fileSize / 1024).toFixed(1)} KB` : 'N/A');
96
+ if (response.data?.fileSuffix)
97
+ console.log(chalk.gray(' File Type:'), response.data.fileSuffix);
98
+ if (response.data?.secretFlag)
99
+ console.log(chalk.gray(' Visibility:'), response.data.secretFlag === 'N' ? 'Public' : 'Private');
100
+ console.log();
101
+ }
102
+ });
103
+ return uploadCommand;
104
+ }
105
+ //# sourceMappingURL=upload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload.js","sourceRoot":"","sources":["../../../../src/commands/liberica/files/upload.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function createFinanceFixedAssetCapitaliseCommand(): Command;
3
+ //# sourceMappingURL=capitalise.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capitalise.d.ts","sourceRoot":"","sources":["../../../../../src/commands/liberica/finance/fixed-asset/capitalise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,wCAAwC,IAAI,OAAO,CA2ClE"}
@@ -0,0 +1,44 @@
1
+ import { Command } from 'commander';
2
+ import chalk from 'chalk';
3
+ import { configManager } from '../../../../core/config/manager.js';
4
+ import { apiClient } from '../../../../core/api/client.js';
5
+ export function createFinanceFixedAssetCapitaliseCommand() {
6
+ const cmd = new Command('capitalise');
7
+ cmd.description('Capitalise fixed asset (PENDING → ACTIVE)');
8
+ cmd
9
+ .requiredOption('--id <string>', 'Asset ID')
10
+ .option('--json', 'Output as JSON')
11
+ .action(async (options) => {
12
+ const context = configManager.getCurrentContext();
13
+ const environment = options.env || context.environment;
14
+ const tenant = options.tenant || context.tenant;
15
+ const id = options.id;
16
+ const response = await apiClient.capitaliseFixedAsset(environment, tenant, id);
17
+ if (!response.success) {
18
+ if (options.json) {
19
+ console.log(JSON.stringify({ success: false, error: response.error || { code: 'API_ERROR', message: 'Unknown error' } }, null, 2));
20
+ }
21
+ else {
22
+ console.error(chalk.red(`\n✗ Failed to capitalise fixed asset: ${response.error?.message || 'Unknown error'}`));
23
+ if (response.error?.code)
24
+ console.error(chalk.gray(` Error code: ${response.error.code}`));
25
+ }
26
+ console.error();
27
+ process.exit(1);
28
+ return;
29
+ }
30
+ const result = response.data;
31
+ if (options.json) {
32
+ console.log(JSON.stringify({ success: true, data: result }, null, 2));
33
+ return;
34
+ }
35
+ console.log(chalk.green(`\n✓ Fixed asset capitalised successfully`));
36
+ if (result) {
37
+ console.log(chalk.gray(` ID: ${result.assetId}`));
38
+ console.log(chalk.gray(` Status: ${result.assetStatus}`));
39
+ }
40
+ console.log();
41
+ });
42
+ return cmd;
43
+ }
44
+ //# sourceMappingURL=capitalise.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capitalise.js","sourceRoot":"","sources":["../../../../../src/commands/liberica/finance/fixed-asset/capitalise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAI3D,MAAM,UAAU,wCAAwC;IACtD,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC;IACtC,GAAG,CAAC,WAAW,CAAC,2CAA2C,CAAC,CAAC;IAE7D,GAAG;SACA,cAAc,CAAC,eAAe,EAAE,UAAU,CAAC;SAC3C,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SAClC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,MAAM,OAAO,GAAG,aAAa,CAAC,iBAAiB,EAAE,CAAC;QAClD,MAAM,WAAW,GAAI,OAAO,CAAC,GAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;QACxE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;QAChD,MAAM,EAAE,GAAG,OAAO,CAAC,EAAY,CAAC;QAEhC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAE/E,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACrI,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,yCAAyC,QAAQ,CAAC,KAAK,EAAE,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC,CAAC;gBAChH,IAAI,QAAQ,CAAC,KAAK,EAAE,IAAI;oBAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAC9F,CAAC;YACD,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAiC,CAAC;QAE1D,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACtE,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,CAAC;QACrE,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function createFinanceFixedAssetCategoryCreateCommand(): Command;
3
+ //# sourceMappingURL=create.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../../../src/commands/liberica/finance/fixed-asset/category/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,4CAA4C,IAAI,OAAO,CA8DtE"}
@@ -0,0 +1,70 @@
1
+ import { Command } from 'commander';
2
+ import chalk from 'chalk';
3
+ import { configManager } from '../../../../../core/config/manager.js';
4
+ import { apiClient } from '../../../../../core/api/client.js';
5
+ export function createFinanceFixedAssetCategoryCreateCommand() {
6
+ const createCommand = new Command('create');
7
+ createCommand.description('Create fixed asset category');
8
+ createCommand
9
+ .requiredOption('--name <string>', 'Category name')
10
+ .option('--code <string>', 'Category code')
11
+ .option('--default-life <number>', 'Default useful life (months)')
12
+ .option('--default-method <string>', 'Default depreciation method (STRAIGHT_LINE|DOUBLE_DECLINING|UNITS_OF_PRODUCTION)')
13
+ .option('--default-salvage-rate <number>', 'Default salvage value rate (0-100)')
14
+ .option('--asset-account-code <string>', 'Fixed asset CoA account code')
15
+ .option('--dep-expense-account-code <string>', 'Depreciation expense CoA account code')
16
+ .option('--accum-dep-account-code <string>', 'Accumulated depreciation CoA account code')
17
+ .option('--impairment-account-code <string>', 'Impairment CoA account code')
18
+ .option('--json', 'Output as JSON')
19
+ .action(async (options) => {
20
+ const context = configManager.getCurrentContext();
21
+ const environment = options.env || context.environment;
22
+ const tenant = options.tenant || context.tenant;
23
+ const data = {
24
+ categoryName: options.name,
25
+ };
26
+ if (options.code)
27
+ data.categoryCode = options.code;
28
+ if (options.defaultLife)
29
+ data.defaultLifeMonths = parseInt(options.defaultLife, 10);
30
+ if (options.defaultMethod)
31
+ data.defaultMethod = options.defaultMethod;
32
+ if (options.defaultSalvageRate)
33
+ data.defaultSalvageRate = parseInt(options.defaultSalvageRate, 10);
34
+ if (options.assetAccountCode)
35
+ data.assetAccountCode = options.assetAccountCode;
36
+ if (options.depExpenseAccountCode)
37
+ data.depExpenseAccountCode = options.depExpenseAccountCode;
38
+ if (options.accumDepAccountCode)
39
+ data.accumDepAccountCode = options.accumDepAccountCode;
40
+ if (options.impairmentAccountCode)
41
+ data.impairmentAccountCode = options.impairmentAccountCode;
42
+ const response = await apiClient.createFixedAssetCategory(environment, tenant, data);
43
+ if (!response.success) {
44
+ if (options.json) {
45
+ console.log(JSON.stringify({ success: false, error: response.error || { code: 'API_ERROR', message: 'Unknown error' } }, null, 2));
46
+ }
47
+ else {
48
+ console.error(chalk.red(`\n✗ Failed to create category: ${response.error?.message || 'Unknown error'}`));
49
+ if (response.error?.code)
50
+ console.error(chalk.gray(` Error code: ${response.error.code}`));
51
+ }
52
+ console.error();
53
+ process.exit(1);
54
+ return;
55
+ }
56
+ const result = response.data;
57
+ if (options.json) {
58
+ console.log(JSON.stringify({ success: true, data: result }, null, 2));
59
+ return;
60
+ }
61
+ console.log(chalk.green(`\n✓ Category created successfully`));
62
+ if (result) {
63
+ console.log(chalk.gray(` ID: ${result.categoryId}`));
64
+ console.log(chalk.gray(` Name: ${result.categoryName}`));
65
+ }
66
+ console.log();
67
+ });
68
+ return createCommand;
69
+ }
70
+ //# sourceMappingURL=create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../../../src/commands/liberica/finance/fixed-asset/category/create.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function createFinanceFixedAssetCategoryCommand(): Command;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/commands/liberica/finance/fixed-asset/category/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,sCAAsC,IAAI,OAAO,CAQhE"}
@@ -0,0 +1,11 @@
1
+ import { Command } from 'commander';
2
+ import { createFinanceFixedAssetCategoryListCommand } from './list.js';
3
+ import { createFinanceFixedAssetCategoryCreateCommand } from './create.js';
4
+ export function createFinanceFixedAssetCategoryCommand() {
5
+ const categoryCommand = new Command('category');
6
+ categoryCommand.description('Manage fixed asset categories');
7
+ categoryCommand.addCommand(createFinanceFixedAssetCategoryListCommand());
8
+ categoryCommand.addCommand(createFinanceFixedAssetCategoryCreateCommand());
9
+ return categoryCommand;
10
+ }
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/commands/liberica/finance/fixed-asset/category/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,0CAA0C,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EAAE,4CAA4C,EAAE,MAAM,aAAa,CAAC;AAE3E,MAAM,UAAU,sCAAsC;IACpD,MAAM,eAAe,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;IAChD,eAAe,CAAC,WAAW,CAAC,+BAA+B,CAAC,CAAC;IAE7D,eAAe,CAAC,UAAU,CAAC,0CAA0C,EAAE,CAAC,CAAC;IACzE,eAAe,CAAC,UAAU,CAAC,4CAA4C,EAAE,CAAC,CAAC;IAE3E,OAAO,eAAe,CAAC;AACzB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function createFinanceFixedAssetCategoryListCommand(): Command;
3
+ //# sourceMappingURL=list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../../../src/commands/liberica/finance/fixed-asset/category/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,0CAA0C,IAAI,OAAO,CA4DpE"}
@@ -0,0 +1,59 @@
1
+ import { Command } from 'commander';
2
+ import chalk from 'chalk';
3
+ import Table from 'cli-table3';
4
+ import { configManager } from '../../../../../core/config/manager.js';
5
+ import { apiClient } from '../../../../../core/api/client.js';
6
+ export function createFinanceFixedAssetCategoryListCommand() {
7
+ const listCommand = new Command('list');
8
+ listCommand.description('List fixed asset categories');
9
+ listCommand
10
+ .option('--json', 'Output as JSON')
11
+ .action(async (options) => {
12
+ const context = configManager.getCurrentContext();
13
+ const environment = options.env || context.environment;
14
+ const tenant = options.tenant || context.tenant;
15
+ const response = await apiClient.listFixedAssetCategories(environment, tenant);
16
+ if (!response.success) {
17
+ if (options.json) {
18
+ console.log(JSON.stringify({ success: false, error: response.error || { code: 'API_ERROR', message: 'Unknown error' } }, null, 2));
19
+ }
20
+ else {
21
+ console.error(chalk.red(`\n✗ Failed to list categories: ${response.error?.message || 'Unknown error'}`));
22
+ if (response.error?.code)
23
+ console.error(chalk.gray(` Error code: ${response.error.code}`));
24
+ }
25
+ console.error();
26
+ process.exit(1);
27
+ return;
28
+ }
29
+ if (options.json) {
30
+ console.log(JSON.stringify({ success: true, data: response.data }, null, 2));
31
+ return;
32
+ }
33
+ const rows = Array.isArray(response.data) ? response.data : [];
34
+ if (rows.length === 0) {
35
+ console.log(chalk.bold('\n📋 Fixed Asset Categories\n'));
36
+ console.log(chalk.gray(' No categories found\n'));
37
+ return;
38
+ }
39
+ console.log(chalk.bold('\n📋 Fixed Asset Categories\n'));
40
+ const table = new Table({
41
+ head: [chalk.bold('ID'), chalk.bold('Code'), chalk.bold('Name'), chalk.bold('Method'), chalk.bold('Life')],
42
+ colWidths: [25, 15, 25, 20, 10],
43
+ style: { head: [], border: [] },
44
+ });
45
+ for (const row of rows) {
46
+ table.push([
47
+ row.categoryId || '-',
48
+ row.categoryCode || '-',
49
+ row.categoryName || '-',
50
+ row.defaultMethod || '-',
51
+ row.defaultLifeMonths != null ? String(row.defaultLifeMonths) : '-',
52
+ ]);
53
+ }
54
+ console.log(table.toString());
55
+ console.log();
56
+ });
57
+ return listCommand;
58
+ }
59
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../../../src/commands/liberica/finance/fixed-asset/category/list.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function createFinanceFixedAssetCreateCommand(): Command;
3
+ //# sourceMappingURL=create.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../../src/commands/liberica/finance/fixed-asset/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,oCAAoC,IAAI,OAAO,CAkF9D"}
@@ -0,0 +1,89 @@
1
+ import { Command } from 'commander';
2
+ import chalk from 'chalk';
3
+ import { configManager } from '../../../../core/config/manager.js';
4
+ import { apiClient } from '../../../../core/api/client.js';
5
+ export function createFinanceFixedAssetCreateCommand() {
6
+ const createCommand = new Command('create');
7
+ createCommand.description('Create fixed asset');
8
+ createCommand
9
+ .requiredOption('--category-id <string>', 'Asset category ID')
10
+ .requiredOption('--code <string>', 'Asset code (unique per tenant)')
11
+ .requiredOption('--name <string>', 'Asset name')
12
+ .requiredOption('--acquisition-type <string>', 'Acquisition type (PURCHASE|SELF_CONSTRUCT|DONATION|TRANSFER_IN)')
13
+ .requiredOption('--acquisition-date <number>', 'Acquisition date (epoch ms)')
14
+ .requiredOption('--original-cost <number>', 'Original cost (cents)')
15
+ .requiredOption('--salvage-value <number>', 'Estimated residual value (cents)')
16
+ .requiredOption('--useful-life <number>', 'Useful life in months')
17
+ .requiredOption('--depreciation-method <string>', 'Depreciation method (STRAIGHT_LINE|DOUBLE_DECLINING|UNITS_OF_PRODUCTION)')
18
+ .option('--total-estimated-units <number>', 'Total estimated units (required for UNITS_OF_PRODUCTION)')
19
+ .option('--asset-account-id <string>', 'Fixed asset CoA account ID')
20
+ .option('--accum-dep-account-id <string>', 'Accumulated depreciation CoA account ID')
21
+ .option('--dep-expense-account-id <string>', 'Depreciation expense CoA account ID')
22
+ .option('--impairment-account-id <string>', 'Impairment CoA account ID')
23
+ .option('--disposal-account-id <string>', 'Disposal CoA account ID')
24
+ .option('--location <string>', 'Physical location')
25
+ .option('--responsible-person <string>', 'Responsible person')
26
+ .option('--json', 'Output as JSON')
27
+ .action(async (options) => {
28
+ const context = configManager.getCurrentContext();
29
+ const environment = options.env || context.environment;
30
+ const tenant = options.tenant || context.tenant;
31
+ const data = {
32
+ categoryId: options.categoryId,
33
+ assetCode: options.code,
34
+ assetName: options.name,
35
+ acquisitionType: options.acquisitionType,
36
+ acquisitionDate: parseInt(options.acquisitionDate, 10),
37
+ originalCost: parseInt(options.originalCost, 10),
38
+ salvageValue: parseInt(options.salvageValue, 10),
39
+ usefulLifeMonths: parseInt(options.usefulLife, 10),
40
+ depreciationMethod: options.depreciationMethod,
41
+ };
42
+ if (options.totalEstimatedUnits)
43
+ data.totalEstimatedUnits = parseInt(options.totalEstimatedUnits, 10);
44
+ if (options.assetAccountId)
45
+ data.assetAccountId = options.assetAccountId;
46
+ if (options.accumDepAccountId)
47
+ data.accumDepAccountId = options.accumDepAccountId;
48
+ if (options.depExpenseAccountId)
49
+ data.depExpenseAccountId = options.depExpenseAccountId;
50
+ if (options.impairmentAccountId)
51
+ data.impairmentAccountId = options.impairmentAccountId;
52
+ if (options.disposalAccountId)
53
+ data.disposalAccountId = options.disposalAccountId;
54
+ if (options.location)
55
+ data.location = options.location;
56
+ if (options.responsiblePerson)
57
+ data.responsiblePerson = options.responsiblePerson;
58
+ const response = await apiClient.createFixedAsset(environment, tenant, data);
59
+ if (!response.success) {
60
+ if (options.json) {
61
+ console.log(JSON.stringify({ success: false, error: response.error || { code: 'API_ERROR', message: 'Unknown error' } }, null, 2));
62
+ }
63
+ else {
64
+ console.error(chalk.red(`\n✗ Failed to create fixed asset: ${response.error?.message || 'Unknown error'}`));
65
+ if (response.error?.code) {
66
+ console.error(chalk.gray(` Error code: ${response.error.code}`));
67
+ }
68
+ }
69
+ console.error();
70
+ process.exit(1);
71
+ return;
72
+ }
73
+ const result = response.data;
74
+ if (options.json) {
75
+ console.log(JSON.stringify({ success: true, data: result }, null, 2));
76
+ return;
77
+ }
78
+ console.log(chalk.green(`\n✓ Fixed asset created successfully`));
79
+ if (result) {
80
+ console.log(chalk.gray(` ID: ${result.assetId}`));
81
+ console.log(chalk.gray(` Code: ${result.assetCode}`));
82
+ console.log(chalk.gray(` Name: ${result.assetName}`));
83
+ console.log(chalk.gray(` Status: ${result.assetStatus}`));
84
+ }
85
+ console.log();
86
+ });
87
+ return createCommand;
88
+ }
89
+ //# sourceMappingURL=create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../../src/commands/liberica/finance/fixed-asset/create.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function createFinanceFixedAssetDepreciateCommand(): Command;
3
+ //# sourceMappingURL=depreciate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"depreciate.d.ts","sourceRoot":"","sources":["../../../../../src/commands/liberica/finance/fixed-asset/depreciate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,wCAAwC,IAAI,OAAO,CAkDlE"}
@@ -0,0 +1,51 @@
1
+ import { Command } from 'commander';
2
+ import chalk from 'chalk';
3
+ import { configManager } from '../../../../core/config/manager.js';
4
+ import { apiClient } from '../../../../core/api/client.js';
5
+ export function createFinanceFixedAssetDepreciateCommand() {
6
+ const cmd = new Command('depreciate');
7
+ cmd.description('Run depreciation for a fiscal period');
8
+ cmd
9
+ .requiredOption('--period-id <string>', 'Fiscal period ID')
10
+ .requiredOption('--depreciation-date <number>', 'Depreciation date (epoch ms)')
11
+ .option('--force', 'Skip confirmation prompt')
12
+ .option('--json', 'Output as JSON')
13
+ .action(async (options) => {
14
+ const context = configManager.getCurrentContext();
15
+ const environment = options.env || context.environment;
16
+ const tenant = options.tenant || context.tenant;
17
+ const data = {
18
+ fiscalPeriodId: options.periodId,
19
+ depreciationDate: parseInt(options.depreciationDate, 10),
20
+ };
21
+ const response = await apiClient.runFixedAssetDepreciation(environment, tenant, data);
22
+ if (!response.success) {
23
+ if (options.json) {
24
+ console.log(JSON.stringify({ success: false, error: response.error || { code: 'API_ERROR', message: 'Unknown error' } }, null, 2));
25
+ }
26
+ else {
27
+ console.error(chalk.red(`\n✗ Failed to run depreciation: ${response.error?.message || 'Unknown error'}`));
28
+ if (response.error?.code)
29
+ console.error(chalk.gray(` Error code: ${response.error.code}`));
30
+ }
31
+ console.error();
32
+ process.exit(1);
33
+ return;
34
+ }
35
+ const result = response.data;
36
+ if (options.json) {
37
+ console.log(JSON.stringify({ success: true, data: result }, null, 2));
38
+ return;
39
+ }
40
+ console.log(chalk.green(`\n✓ Depreciation run completed`));
41
+ if (result) {
42
+ console.log(chalk.gray(` Assets depreciated: ${result.assetCount}`));
43
+ console.log(chalk.gray(` Total amount: ${result.totalDepreciationAmount}`));
44
+ if (result.voucherId)
45
+ console.log(chalk.gray(` Voucher ID: ${result.voucherId}`));
46
+ }
47
+ console.log();
48
+ });
49
+ return cmd;
50
+ }
51
+ //# sourceMappingURL=depreciate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"depreciate.js","sourceRoot":"","sources":["../../../../../src/commands/liberica/finance/fixed-asset/depreciate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function createFinanceFixedAssetDepreciationScheduleCommand(): Command;
3
+ //# sourceMappingURL=depreciation-schedule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"depreciation-schedule.d.ts","sourceRoot":"","sources":["../../../../../src/commands/liberica/finance/fixed-asset/depreciation-schedule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,wBAAgB,kDAAkD,IAAI,OAAO,CA+D5E"}