@newpeak/barista-cli 0.1.5 → 0.1.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.
Files changed (192) hide show
  1. package/README.en.md +714 -0
  2. package/README.ja.md +708 -0
  3. package/README.md +68 -0
  4. package/README.vi.md +714 -0
  5. package/dist/commands/liberica/currency/create.d.ts +3 -0
  6. package/dist/commands/liberica/currency/create.d.ts.map +1 -0
  7. package/dist/commands/liberica/currency/create.js +168 -0
  8. package/dist/commands/liberica/currency/create.js.map +1 -0
  9. package/dist/commands/liberica/currency/delete.d.ts +3 -0
  10. package/dist/commands/liberica/currency/delete.d.ts.map +1 -0
  11. package/dist/commands/liberica/currency/delete.js +122 -0
  12. package/dist/commands/liberica/currency/delete.js.map +1 -0
  13. package/dist/commands/liberica/currency/disable.d.ts +3 -0
  14. package/dist/commands/liberica/currency/disable.d.ts.map +1 -0
  15. package/dist/commands/liberica/currency/disable.js +145 -0
  16. package/dist/commands/liberica/currency/disable.js.map +1 -0
  17. package/dist/commands/liberica/currency/enable.d.ts +3 -0
  18. package/dist/commands/liberica/currency/enable.d.ts.map +1 -0
  19. package/dist/commands/liberica/currency/enable.js +125 -0
  20. package/dist/commands/liberica/currency/enable.js.map +1 -0
  21. package/dist/commands/liberica/currency/get.d.ts +3 -0
  22. package/dist/commands/liberica/currency/get.d.ts.map +1 -0
  23. package/dist/commands/liberica/currency/get.js +80 -0
  24. package/dist/commands/liberica/currency/get.js.map +1 -0
  25. package/dist/commands/liberica/currency/index.d.ts +3 -0
  26. package/dist/commands/liberica/currency/index.d.ts.map +1 -0
  27. package/dist/commands/liberica/currency/index.js +21 -0
  28. package/dist/commands/liberica/currency/index.js.map +1 -0
  29. package/dist/commands/liberica/currency/list.d.ts +3 -0
  30. package/dist/commands/liberica/currency/list.d.ts.map +1 -0
  31. package/dist/commands/liberica/currency/list.js +106 -0
  32. package/dist/commands/liberica/currency/list.js.map +1 -0
  33. package/dist/commands/liberica/currency/update.d.ts +3 -0
  34. package/dist/commands/liberica/currency/update.d.ts.map +1 -0
  35. package/dist/commands/liberica/currency/update.js +123 -0
  36. package/dist/commands/liberica/currency/update.js.map +1 -0
  37. package/dist/commands/liberica/index.d.ts.map +1 -1
  38. package/dist/commands/liberica/index.js +7 -0
  39. package/dist/commands/liberica/index.js.map +1 -1
  40. package/dist/commands/liberica/materials/create.d.ts.map +1 -1
  41. package/dist/commands/liberica/materials/create.js +35 -9
  42. package/dist/commands/liberica/materials/create.js.map +1 -1
  43. package/dist/commands/liberica/orgs/index.d.ts.map +1 -1
  44. package/dist/commands/liberica/orgs/index.js.map +1 -1
  45. package/dist/commands/liberica/users/create.d.ts.map +1 -1
  46. package/dist/commands/liberica/users/create.js +1 -0
  47. package/dist/commands/liberica/users/create.js.map +1 -1
  48. package/dist/commands/liberica/warehouses/create.d.ts +3 -0
  49. package/dist/commands/liberica/warehouses/create.d.ts.map +1 -0
  50. package/dist/commands/liberica/warehouses/create.js +196 -0
  51. package/dist/commands/liberica/warehouses/create.js.map +1 -0
  52. package/dist/commands/liberica/warehouses/delete.d.ts +3 -0
  53. package/dist/commands/liberica/warehouses/delete.d.ts.map +1 -0
  54. package/dist/commands/liberica/warehouses/delete.js +111 -0
  55. package/dist/commands/liberica/warehouses/delete.js.map +1 -0
  56. package/dist/commands/liberica/warehouses/disable.d.ts +3 -0
  57. package/dist/commands/liberica/warehouses/disable.d.ts.map +1 -0
  58. package/dist/commands/liberica/warehouses/disable.js +173 -0
  59. package/dist/commands/liberica/warehouses/disable.js.map +1 -0
  60. package/dist/commands/liberica/warehouses/enable.d.ts +3 -0
  61. package/dist/commands/liberica/warehouses/enable.d.ts.map +1 -0
  62. package/dist/commands/liberica/warehouses/enable.js +173 -0
  63. package/dist/commands/liberica/warehouses/enable.js.map +1 -0
  64. package/dist/commands/liberica/warehouses/get.d.ts +3 -0
  65. package/dist/commands/liberica/warehouses/get.d.ts.map +1 -0
  66. package/dist/commands/liberica/warehouses/get.js +90 -0
  67. package/dist/commands/liberica/warehouses/get.js.map +1 -0
  68. package/dist/commands/liberica/warehouses/index.d.ts +3 -0
  69. package/dist/commands/liberica/warehouses/index.d.ts.map +1 -0
  70. package/dist/commands/liberica/warehouses/index.js +23 -0
  71. package/dist/commands/liberica/warehouses/index.js.map +1 -0
  72. package/dist/commands/liberica/warehouses/list.d.ts +3 -0
  73. package/dist/commands/liberica/warehouses/list.d.ts.map +1 -0
  74. package/dist/commands/liberica/warehouses/list.js +101 -0
  75. package/dist/commands/liberica/warehouses/list.js.map +1 -0
  76. package/dist/commands/liberica/warehouses/locations/create.d.ts +3 -0
  77. package/dist/commands/liberica/warehouses/locations/create.d.ts.map +1 -0
  78. package/dist/commands/liberica/warehouses/locations/create.js +199 -0
  79. package/dist/commands/liberica/warehouses/locations/create.js.map +1 -0
  80. package/dist/commands/liberica/warehouses/locations/delete.d.ts +3 -0
  81. package/dist/commands/liberica/warehouses/locations/delete.d.ts.map +1 -0
  82. package/dist/commands/liberica/warehouses/locations/delete.js +115 -0
  83. package/dist/commands/liberica/warehouses/locations/delete.js.map +1 -0
  84. package/dist/commands/liberica/warehouses/locations/disable.d.ts +3 -0
  85. package/dist/commands/liberica/warehouses/locations/disable.d.ts.map +1 -0
  86. package/dist/commands/liberica/warehouses/locations/disable.js +173 -0
  87. package/dist/commands/liberica/warehouses/locations/disable.js.map +1 -0
  88. package/dist/commands/liberica/warehouses/locations/enable.d.ts +3 -0
  89. package/dist/commands/liberica/warehouses/locations/enable.d.ts.map +1 -0
  90. package/dist/commands/liberica/warehouses/locations/enable.js +173 -0
  91. package/dist/commands/liberica/warehouses/locations/enable.js.map +1 -0
  92. package/dist/commands/liberica/warehouses/locations/get.d.ts +3 -0
  93. package/dist/commands/liberica/warehouses/locations/get.d.ts.map +1 -0
  94. package/dist/commands/liberica/warehouses/locations/get.js +73 -0
  95. package/dist/commands/liberica/warehouses/locations/get.js.map +1 -0
  96. package/dist/commands/liberica/warehouses/locations/index.d.ts +3 -0
  97. package/dist/commands/liberica/warehouses/locations/index.d.ts.map +1 -0
  98. package/dist/commands/liberica/warehouses/locations/index.js +21 -0
  99. package/dist/commands/liberica/warehouses/locations/index.js.map +1 -0
  100. package/dist/commands/liberica/warehouses/locations/list.d.ts +3 -0
  101. package/dist/commands/liberica/warehouses/locations/list.d.ts.map +1 -0
  102. package/dist/commands/liberica/warehouses/locations/list.js +104 -0
  103. package/dist/commands/liberica/warehouses/locations/list.js.map +1 -0
  104. package/dist/commands/liberica/warehouses/locations/update.d.ts +3 -0
  105. package/dist/commands/liberica/warehouses/locations/update.d.ts.map +1 -0
  106. package/dist/commands/liberica/warehouses/locations/update.js +128 -0
  107. package/dist/commands/liberica/warehouses/locations/update.js.map +1 -0
  108. package/dist/commands/liberica/warehouses/update.d.ts +3 -0
  109. package/dist/commands/liberica/warehouses/update.d.ts.map +1 -0
  110. package/dist/commands/liberica/warehouses/update.js +143 -0
  111. package/dist/commands/liberica/warehouses/update.js.map +1 -0
  112. package/dist/core/api/client.d.ts +26 -0
  113. package/dist/core/api/client.d.ts.map +1 -1
  114. package/dist/core/api/client.js +471 -0
  115. package/dist/core/api/client.js.map +1 -1
  116. package/dist/index.js +1 -3
  117. package/dist/index.js.map +1 -1
  118. package/dist/types/currency.d.ts +74 -0
  119. package/dist/types/currency.d.ts.map +1 -0
  120. package/dist/types/currency.js +2 -0
  121. package/dist/types/currency.js.map +1 -0
  122. package/dist/types/index.d.ts +4 -4
  123. package/dist/types/index.d.ts.map +1 -1
  124. package/dist/types/location.d.ts +53 -0
  125. package/dist/types/location.d.ts.map +1 -0
  126. package/dist/types/location.js +2 -0
  127. package/dist/types/location.js.map +1 -0
  128. package/dist/types/warehouse.d.ts +68 -0
  129. package/dist/types/warehouse.d.ts.map +1 -0
  130. package/dist/types/warehouse.js +2 -0
  131. package/dist/types/warehouse.js.map +1 -0
  132. package/docs/COMMAND_DESIGN_SPEC.md +42 -13
  133. package/docs/commands/liberica/currency/create.md +145 -0
  134. package/docs/commands/liberica/currency/delete.md +121 -0
  135. package/docs/commands/liberica/currency/disable.md +119 -0
  136. package/docs/commands/liberica/currency/enable.md +115 -0
  137. package/docs/commands/liberica/currency/get.md +118 -0
  138. package/docs/commands/liberica/currency/list.md +149 -0
  139. package/docs/commands/liberica/currency/update.md +141 -0
  140. package/docs/commands/liberica/locations/create.md +195 -0
  141. package/docs/commands/liberica/locations/list.md +171 -0
  142. package/docs/commands/liberica/warehouses/create.md +222 -0
  143. package/docs/commands/liberica/warehouses/list.md +184 -0
  144. package/package.json +1 -1
  145. package/src/commands/liberica/currency/create.ts +183 -0
  146. package/src/commands/liberica/currency/delete.ts +124 -0
  147. package/src/commands/liberica/currency/disable.ts +147 -0
  148. package/src/commands/liberica/currency/enable.ts +128 -0
  149. package/src/commands/liberica/currency/get.ts +91 -0
  150. package/src/commands/liberica/currency/index.ts +23 -0
  151. package/src/commands/liberica/currency/list.ts +140 -0
  152. package/src/commands/liberica/currency/update.ts +129 -0
  153. package/src/commands/liberica/index.ts +7 -0
  154. package/src/commands/liberica/materials/create.ts +32 -9
  155. package/src/commands/liberica/orgs/index.ts +0 -1
  156. package/src/commands/liberica/users/create.ts +1 -0
  157. package/src/commands/liberica/warehouses/create.ts +204 -0
  158. package/src/commands/liberica/warehouses/delete.ts +112 -0
  159. package/src/commands/liberica/warehouses/disable.ts +174 -0
  160. package/src/commands/liberica/warehouses/enable.ts +174 -0
  161. package/src/commands/liberica/warehouses/get.ts +101 -0
  162. package/src/commands/liberica/warehouses/index.ts +25 -0
  163. package/src/commands/liberica/warehouses/list.ts +136 -0
  164. package/src/commands/liberica/warehouses/locations/create.ts +209 -0
  165. package/src/commands/liberica/warehouses/locations/delete.ts +116 -0
  166. package/src/commands/liberica/warehouses/locations/disable.ts +174 -0
  167. package/src/commands/liberica/warehouses/locations/enable.ts +174 -0
  168. package/src/commands/liberica/warehouses/locations/get.ts +84 -0
  169. package/src/commands/liberica/warehouses/locations/index.ts +23 -0
  170. package/src/commands/liberica/warehouses/locations/list.ts +140 -0
  171. package/src/commands/liberica/warehouses/locations/update.ts +135 -0
  172. package/src/commands/liberica/warehouses/update.ts +142 -0
  173. package/src/core/api/client.ts +632 -0
  174. package/src/index.ts +1 -3
  175. package/src/types/currency.ts +90 -0
  176. package/src/types/index.ts +4 -4
  177. package/src/types/location.ts +66 -0
  178. package/src/types/warehouse.ts +82 -0
  179. /package/docs/commands/liberica/{materials-create.md → materials/create.md} +0 -0
  180. /package/docs/commands/liberica/{materials-delete.md → materials/delete.md} +0 -0
  181. /package/docs/commands/liberica/{materials-disable.md → materials/disable.md} +0 -0
  182. /package/docs/commands/liberica/{materials-enable.md → materials/enable.md} +0 -0
  183. /package/docs/commands/liberica/{materials-get.md → materials/get.md} +0 -0
  184. /package/docs/commands/liberica/{materials-list.md → materials/list.md} +0 -0
  185. /package/docs/commands/liberica/{materials-update.md → materials/update.md} +0 -0
  186. /package/docs/commands/liberica/{uoms-create.md → uoms/create.md} +0 -0
  187. /package/docs/commands/liberica/{uoms-delete.md → uoms/delete.md} +0 -0
  188. /package/docs/commands/liberica/{uoms-disable.md → uoms/disable.md} +0 -0
  189. /package/docs/commands/liberica/{uoms-enable.md → uoms/enable.md} +0 -0
  190. /package/docs/commands/liberica/{uoms-get.md → uoms/get.md} +0 -0
  191. /package/docs/commands/liberica/{uoms-list.md → uoms/list.md} +0 -0
  192. /package/docs/commands/liberica/{uoms-update.md → uoms/update.md} +0 -0
@@ -34,8 +34,27 @@ import {
34
34
  UomQueryParams,
35
35
  UomApiResponse,
36
36
  } from '../../types/uom.js';
37
+ import {
38
+ CreateCurrencyRequest,
39
+ UpdateCurrencyRequest,
40
+ CurrencyQueryParams,
41
+ CurrencyApiResponse,
42
+ CurrencyDefaultResponse,
43
+ } from '../../types/currency.js';
37
44
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
38
45
  import { ApiResponse, Material, MaterialApiResponse, MaterialQueryParams, MaterialRequest } from '../../types/material.js';
46
+ import {
47
+ WarehouseQueryParams,
48
+ WarehouseApiResponse,
49
+ CreateWarehouseRequest,
50
+ UpdateWarehouseRequest,
51
+ } from '../../types/warehouse.js';
52
+ import {
53
+ LocationQueryParams,
54
+ LocationApiResponse,
55
+ CreateLocationRequest,
56
+ UpdateLocationRequest,
57
+ } from '../../types/location.js';
39
58
 
40
59
  export interface LoginResponse {
41
60
  token: string;
@@ -1364,6 +1383,502 @@ export const apiClient = {
1364
1383
  }
1365
1384
  },
1366
1385
 
1386
+ async listCurrencies(
1387
+ environment: Environment,
1388
+ tenant: string,
1389
+ params: CurrencyQueryParams
1390
+ ): Promise<CurrencyApiResponse> {
1391
+ try {
1392
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1393
+ if (!token) {
1394
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1395
+ }
1396
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1397
+ client.setAuthToken(token);
1398
+ const queryString = new URLSearchParams();
1399
+ if (params.pageNo !== undefined) queryString.append('pageNo', params.pageNo.toString());
1400
+ if (params.pageSize) queryString.append('pageSize', params.pageSize.toString());
1401
+ if (params.status) queryString.append('status', params.status.toString());
1402
+ if (params.currencyCode) queryString.append('currencyCode', params.currencyCode);
1403
+ if (params.currencyName) queryString.append('currencyName', params.currencyName);
1404
+ const url = `/api/enterprise/sales/currency/page${queryString.toString() ? '?' + queryString.toString() : ''}`;
1405
+ const response = await client.getClient().get<CurrencyApiResponse>(url);
1406
+ return response.data;
1407
+ } catch (error) {
1408
+ return handleApiErrorCurrency(error);
1409
+ }
1410
+ },
1411
+
1412
+ async getCurrency(
1413
+ environment: Environment,
1414
+ tenant: string,
1415
+ currencyId: string
1416
+ ): Promise<CurrencyApiResponse> {
1417
+ try {
1418
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1419
+ if (!token) {
1420
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1421
+ }
1422
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1423
+ client.setAuthToken(token);
1424
+ const response = await client.getClient().get<CurrencyApiResponse>(
1425
+ `/api/enterprise/sales/currency/detail?currencyId=${currencyId}`
1426
+ );
1427
+ return response.data;
1428
+ } catch (error) {
1429
+ return handleApiErrorCurrency(error);
1430
+ }
1431
+ },
1432
+
1433
+ async getAvailableCurrencies(
1434
+ environment: Environment,
1435
+ tenant: string
1436
+ ): Promise<CurrencyApiResponse> {
1437
+ try {
1438
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1439
+ if (!token) {
1440
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1441
+ }
1442
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1443
+ client.setAuthToken(token);
1444
+ const response = await client.getClient().get<CurrencyApiResponse>('/api/enterprise/master/currency/available/list');
1445
+ return response.data;
1446
+ } catch (error) {
1447
+ return handleApiErrorCurrency(error);
1448
+ }
1449
+ },
1450
+
1451
+ async getCurrencyDefault(
1452
+ environment: Environment,
1453
+ tenant: string,
1454
+ currencyCode: string
1455
+ ): Promise<CurrencyDefaultResponse> {
1456
+ try {
1457
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1458
+ if (!token) {
1459
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1460
+ }
1461
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1462
+ client.setAuthToken(token);
1463
+ const response = await client.getClient().get<CurrencyDefaultResponse>(
1464
+ `/api/enterprise/master/currency/currency/default?currencyCode=${currencyCode}`
1465
+ );
1466
+ return response.data;
1467
+ } catch (error) {
1468
+ return handleApiErrorCurrency(error) as CurrencyDefaultResponse;
1469
+ }
1470
+ },
1471
+
1472
+ async createCurrency(
1473
+ environment: Environment,
1474
+ tenant: string,
1475
+ data: CreateCurrencyRequest
1476
+ ): Promise<CurrencyApiResponse> {
1477
+ try {
1478
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1479
+ if (!token) {
1480
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1481
+ }
1482
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1483
+ client.setAuthToken(token);
1484
+ const response = await client.getClient().post<CurrencyApiResponse>('/api/enterprise/sales/currency/add', data);
1485
+ return response.data;
1486
+ } catch (error) {
1487
+ return handleApiErrorCurrency(error);
1488
+ }
1489
+ },
1490
+
1491
+ async updateCurrency(
1492
+ environment: Environment,
1493
+ tenant: string,
1494
+ data: UpdateCurrencyRequest
1495
+ ): Promise<CurrencyApiResponse> {
1496
+ try {
1497
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1498
+ if (!token) {
1499
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1500
+ }
1501
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1502
+ client.setAuthToken(token);
1503
+ const response = await client.getClient().post<CurrencyApiResponse>('/api/enterprise/sales/currency/edit', data);
1504
+ return response.data;
1505
+ } catch (error) {
1506
+ return handleApiErrorCurrency(error);
1507
+ }
1508
+ },
1509
+
1510
+ async deleteCurrency(
1511
+ environment: Environment,
1512
+ tenant: string,
1513
+ currencyId: string
1514
+ ): Promise<CurrencyApiResponse> {
1515
+ try {
1516
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1517
+ if (!token) {
1518
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1519
+ }
1520
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1521
+ client.setAuthToken(token);
1522
+ const response = await client.getClient().post<CurrencyApiResponse>(
1523
+ '/api/enterprise/sales/currency/delete',
1524
+ { currencyId }
1525
+ );
1526
+ return response.data;
1527
+ } catch (error) {
1528
+ return handleApiErrorCurrency(error);
1529
+ }
1530
+ },
1531
+
1532
+ async enableCurrencies(
1533
+ environment: Environment,
1534
+ tenant: string,
1535
+ currencyIds: string[]
1536
+ ): Promise<CurrencyApiResponse> {
1537
+ try {
1538
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1539
+ if (!token) {
1540
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1541
+ }
1542
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1543
+ client.setAuthToken(token);
1544
+ const response = await client.getClient().post<CurrencyApiResponse>(
1545
+ '/api/enterprise/sales/currency/batchActive',
1546
+ { currencyIdList: currencyIds }
1547
+ );
1548
+ return response.data;
1549
+ } catch (error) {
1550
+ return handleApiErrorCurrency(error);
1551
+ }
1552
+ },
1553
+
1554
+ async disableCurrencies(
1555
+ environment: Environment,
1556
+ tenant: string,
1557
+ currencyIds: string[]
1558
+ ): Promise<CurrencyApiResponse> {
1559
+ try {
1560
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1561
+ if (!token) {
1562
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1563
+ }
1564
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1565
+ client.setAuthToken(token);
1566
+ const response = await client.getClient().post<CurrencyApiResponse>(
1567
+ '/api/enterprise/sales/currency/batchDeActive',
1568
+ { currencyIdList: currencyIds }
1569
+ );
1570
+ return response.data;
1571
+ } catch (error) {
1572
+ return handleApiErrorCurrency(error);
1573
+ }
1574
+ },
1575
+
1576
+ async listWarehouses(
1577
+ environment: Environment,
1578
+ tenant: string,
1579
+ params: WarehouseQueryParams
1580
+ ): Promise<WarehouseApiResponse> {
1581
+ try {
1582
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1583
+ if (!token) {
1584
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1585
+ }
1586
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1587
+ client.setAuthToken(token);
1588
+ const response = await client.getClient().get<WarehouseApiResponse>(
1589
+ '/api/enterprise/purchases/warehouse/page',
1590
+ { params }
1591
+ );
1592
+ return response.data;
1593
+ } catch (error) {
1594
+ return handleApiErrorWarehouse(error);
1595
+ }
1596
+ },
1597
+
1598
+ async getWarehouse(
1599
+ environment: Environment,
1600
+ tenant: string,
1601
+ warehouseId: string
1602
+ ): Promise<WarehouseApiResponse> {
1603
+ try {
1604
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1605
+ if (!token) {
1606
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1607
+ }
1608
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1609
+ client.setAuthToken(token);
1610
+ const response = await client.getClient().get<WarehouseApiResponse>(
1611
+ `/api/enterprise/purchases/warehouse/detail?warehouseId=${warehouseId}`
1612
+ );
1613
+ return response.data;
1614
+ } catch (error) {
1615
+ return handleApiErrorWarehouse(error);
1616
+ }
1617
+ },
1618
+
1619
+ async createWarehouse(
1620
+ environment: Environment,
1621
+ tenant: string,
1622
+ data: CreateWarehouseRequest
1623
+ ): Promise<WarehouseApiResponse> {
1624
+ try {
1625
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1626
+ if (!token) {
1627
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1628
+ }
1629
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1630
+ client.setAuthToken(token);
1631
+ const response = await client.getClient().post<WarehouseApiResponse>(
1632
+ '/api/enterprise/purchases/warehouse/add',
1633
+ data
1634
+ );
1635
+ return response.data;
1636
+ } catch (error) {
1637
+ return handleApiErrorWarehouse(error);
1638
+ }
1639
+ },
1640
+
1641
+ async updateWarehouse(
1642
+ environment: Environment,
1643
+ tenant: string,
1644
+ data: UpdateWarehouseRequest
1645
+ ): Promise<WarehouseApiResponse> {
1646
+ try {
1647
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1648
+ if (!token) {
1649
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1650
+ }
1651
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1652
+ client.setAuthToken(token);
1653
+ const response = await client.getClient().post<WarehouseApiResponse>(
1654
+ '/api/enterprise/purchases/warehouse/edit',
1655
+ data
1656
+ );
1657
+ return response.data;
1658
+ } catch (error) {
1659
+ return handleApiErrorWarehouse(error);
1660
+ }
1661
+ },
1662
+
1663
+ async deleteWarehouse(
1664
+ environment: Environment,
1665
+ tenant: string,
1666
+ warehouseId: string
1667
+ ): Promise<WarehouseApiResponse> {
1668
+ try {
1669
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1670
+ if (!token) {
1671
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1672
+ }
1673
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1674
+ client.setAuthToken(token);
1675
+ const response = await client.getClient().post<WarehouseApiResponse>(
1676
+ '/api/enterprise/purchases/warehouse/delete',
1677
+ { warehouseId }
1678
+ );
1679
+ return response.data;
1680
+ } catch (error) {
1681
+ return handleApiErrorWarehouse(error);
1682
+ }
1683
+ },
1684
+
1685
+ async batchEnableWarehouses(
1686
+ environment: Environment,
1687
+ tenant: string,
1688
+ warehouseIds: string[]
1689
+ ): Promise<WarehouseApiResponse> {
1690
+ try {
1691
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1692
+ if (!token) {
1693
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1694
+ }
1695
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1696
+ client.setAuthToken(token);
1697
+ const response = await client.getClient().post<WarehouseApiResponse>(
1698
+ '/api/enterprise/purchases/warehouse/batchActive',
1699
+ { warehouseIdList: warehouseIds }
1700
+ );
1701
+ return response.data;
1702
+ } catch (error) {
1703
+ return handleApiErrorWarehouse(error);
1704
+ }
1705
+ },
1706
+
1707
+ async batchDisableWarehouses(
1708
+ environment: Environment,
1709
+ tenant: string,
1710
+ warehouseIds: string[]
1711
+ ): Promise<WarehouseApiResponse> {
1712
+ try {
1713
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1714
+ if (!token) {
1715
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1716
+ }
1717
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1718
+ client.setAuthToken(token);
1719
+ const response = await client.getClient().post<WarehouseApiResponse>(
1720
+ '/api/enterprise/purchases/warehouse/batchDeActive',
1721
+ { warehouseIdList: warehouseIds }
1722
+ );
1723
+ return response.data;
1724
+ } catch (error) {
1725
+ return handleApiErrorWarehouse(error);
1726
+ }
1727
+ },
1728
+
1729
+ async listLocations(
1730
+ environment: Environment,
1731
+ tenant: string,
1732
+ params: LocationQueryParams
1733
+ ): Promise<LocationApiResponse> {
1734
+ try {
1735
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1736
+ if (!token) {
1737
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1738
+ }
1739
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1740
+ client.setAuthToken(token);
1741
+ const response = await client.getClient().get<LocationApiResponse>(
1742
+ '/api/enterprise/purchases/warehouse/location/page',
1743
+ { params }
1744
+ );
1745
+ return response.data;
1746
+ } catch (error) {
1747
+ return handleApiErrorLocation(error);
1748
+ }
1749
+ },
1750
+
1751
+ async getLocation(
1752
+ environment: Environment,
1753
+ tenant: string,
1754
+ warehouseLocationId: string
1755
+ ): Promise<LocationApiResponse> {
1756
+ try {
1757
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1758
+ if (!token) {
1759
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1760
+ }
1761
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1762
+ client.setAuthToken(token);
1763
+ const response = await client.getClient().get<LocationApiResponse>(
1764
+ `/api/enterprise/purchases/warehouse/location/detail?warehouseLocationId=${warehouseLocationId}`
1765
+ );
1766
+ return response.data;
1767
+ } catch (error) {
1768
+ return handleApiErrorLocation(error);
1769
+ }
1770
+ },
1771
+
1772
+ async createLocation(
1773
+ environment: Environment,
1774
+ tenant: string,
1775
+ data: CreateLocationRequest
1776
+ ): Promise<LocationApiResponse> {
1777
+ try {
1778
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1779
+ if (!token) {
1780
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1781
+ }
1782
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1783
+ client.setAuthToken(token);
1784
+ const response = await client.getClient().post<LocationApiResponse>(
1785
+ '/api/enterprise/purchases/warehouse/location/add',
1786
+ data
1787
+ );
1788
+ return response.data;
1789
+ } catch (error) {
1790
+ return handleApiErrorLocation(error);
1791
+ }
1792
+ },
1793
+
1794
+ async updateLocation(
1795
+ environment: Environment,
1796
+ tenant: string,
1797
+ data: UpdateLocationRequest
1798
+ ): Promise<LocationApiResponse> {
1799
+ try {
1800
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1801
+ if (!token) {
1802
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1803
+ }
1804
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1805
+ client.setAuthToken(token);
1806
+ const response = await client.getClient().post<LocationApiResponse>(
1807
+ '/api/enterprise/purchases/warehouse/location/edit',
1808
+ data
1809
+ );
1810
+ return response.data;
1811
+ } catch (error) {
1812
+ return handleApiErrorLocation(error);
1813
+ }
1814
+ },
1815
+
1816
+ async deleteLocation(
1817
+ environment: Environment,
1818
+ tenant: string,
1819
+ warehouseLocationId: string
1820
+ ): Promise<LocationApiResponse> {
1821
+ try {
1822
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1823
+ if (!token) {
1824
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1825
+ }
1826
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1827
+ client.setAuthToken(token);
1828
+ const response = await client.getClient().post<LocationApiResponse>(
1829
+ '/api/enterprise/purchases/warehouse/location/delete',
1830
+ { warehouseLocationId }
1831
+ );
1832
+ return response.data;
1833
+ } catch (error) {
1834
+ return handleApiErrorLocation(error);
1835
+ }
1836
+ },
1837
+
1838
+ async batchEnableLocations(
1839
+ environment: Environment,
1840
+ tenant: string,
1841
+ warehouseLocationIds: string[]
1842
+ ): Promise<LocationApiResponse> {
1843
+ try {
1844
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1845
+ if (!token) {
1846
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1847
+ }
1848
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1849
+ client.setAuthToken(token);
1850
+ const response = await client.getClient().post<LocationApiResponse>(
1851
+ '/api/enterprise/purchases/warehouse/location/batchActive',
1852
+ { warehouseLocationIdList: warehouseLocationIds }
1853
+ );
1854
+ return response.data;
1855
+ } catch (error) {
1856
+ return handleApiErrorLocation(error);
1857
+ }
1858
+ },
1859
+
1860
+ async batchDisableLocations(
1861
+ environment: Environment,
1862
+ tenant: string,
1863
+ warehouseLocationIds: string[]
1864
+ ): Promise<LocationApiResponse> {
1865
+ try {
1866
+ const token = await tokenManager.getToken({ service: 'liberica', environment, tenant });
1867
+ if (!token) {
1868
+ return { success: false, error: { code: 'NO_TOKEN', message: 'Not logged in. Run: barista auth login --service liberica --env ' + environment } };
1869
+ }
1870
+ const client = createAPIClient('liberica' as Service, environment, tenant);
1871
+ client.setAuthToken(token);
1872
+ const response = await client.getClient().post<LocationApiResponse>(
1873
+ '/api/enterprise/purchases/warehouse/location/batchDeActive',
1874
+ { warehouseLocationIdList: warehouseLocationIds }
1875
+ );
1876
+ return response.data;
1877
+ } catch (error) {
1878
+ return handleApiErrorLocation(error);
1879
+ }
1880
+ },
1881
+
1367
1882
  };
1368
1883
 
1369
1884
  function handleApiError(error: unknown): EmployeeApiResponse {
@@ -1559,4 +2074,121 @@ function handleApiErrorUom(error: unknown): UomApiResponse {
1559
2074
  message: error instanceof Error ? error.message : 'Unknown error occurred',
1560
2075
  },
1561
2076
  };
2077
+ }
2078
+
2079
+ function handleApiErrorWarehouse(error: unknown): WarehouseApiResponse {
2080
+ if (axios.isAxiosError(error)) {
2081
+ const axiosError = error as AxiosError<Record<string, unknown>>;
2082
+ const responseData = axiosError.response?.data;
2083
+ if (responseData) {
2084
+ const success = responseData.success as boolean | undefined;
2085
+ if (success === false) {
2086
+ const code = responseData.code as string | undefined;
2087
+ const message = responseData.message as string | undefined;
2088
+ const errorObj = responseData.error as { code?: string; message?: string } | undefined;
2089
+ if (!errorObj && (code || message)) {
2090
+ return {
2091
+ success: false,
2092
+ error: {
2093
+ code: code || 'API_ERROR',
2094
+ message: message || 'API error occurred',
2095
+ },
2096
+ };
2097
+ }
2098
+ }
2099
+ return responseData as unknown as WarehouseApiResponse;
2100
+ }
2101
+ return {
2102
+ success: false,
2103
+ error: {
2104
+ code: 'NETWORK_ERROR',
2105
+ message: axiosError.message || 'Network error occurred',
2106
+ },
2107
+ };
2108
+ }
2109
+ return {
2110
+ success: false,
2111
+ error: {
2112
+ code: 'UNKNOWN_ERROR',
2113
+ message: error instanceof Error ? error.message : 'Unknown error occurred',
2114
+ },
2115
+ };
2116
+ }
2117
+
2118
+ function handleApiErrorLocation(error: unknown): LocationApiResponse {
2119
+ if (axios.isAxiosError(error)) {
2120
+ const axiosError = error as AxiosError<Record<string, unknown>>;
2121
+ const responseData = axiosError.response?.data;
2122
+ if (responseData) {
2123
+ const success = responseData.success as boolean | undefined;
2124
+ if (success === false) {
2125
+ const code = responseData.code as string | undefined;
2126
+ const message = responseData.message as string | undefined;
2127
+ const errorObj = responseData.error as { code?: string; message?: string } | undefined;
2128
+ if (!errorObj && (code || message)) {
2129
+ return {
2130
+ success: false,
2131
+ error: {
2132
+ code: code || 'API_ERROR',
2133
+ message: message || 'API error occurred',
2134
+ },
2135
+ };
2136
+ }
2137
+ }
2138
+ return responseData as unknown as LocationApiResponse;
2139
+ }
2140
+ return {
2141
+ success: false,
2142
+ error: {
2143
+ code: 'NETWORK_ERROR',
2144
+ message: axiosError.message || 'Network error occurred',
2145
+ },
2146
+ };
2147
+ }
2148
+ return {
2149
+ success: false,
2150
+ error: {
2151
+ code: 'UNKNOWN_ERROR',
2152
+ message: error instanceof Error ? error.message : 'Unknown error occurred',
2153
+ },
2154
+ };
2155
+ }
2156
+
2157
+ function handleApiErrorCurrency(error: unknown): CurrencyApiResponse {
2158
+ if (axios.isAxiosError(error)) {
2159
+ const axiosError = error as AxiosError<Record<string, unknown>>;
2160
+ const responseData = axiosError.response?.data;
2161
+ if (responseData) {
2162
+ const success = responseData.success as boolean | undefined;
2163
+ if (success === false) {
2164
+ const code = responseData.code as string | undefined;
2165
+ const message = responseData.message as string | undefined;
2166
+ const errorObj = responseData.error as { code?: string; message?: string } | undefined;
2167
+ if (!errorObj && (code || message)) {
2168
+ return {
2169
+ success: false,
2170
+ error: {
2171
+ code: code || 'API_ERROR',
2172
+ message: message || 'API error occurred',
2173
+ },
2174
+ };
2175
+ }
2176
+ }
2177
+ return responseData as unknown as CurrencyApiResponse;
2178
+ }
2179
+ return {
2180
+ success: false,
2181
+ error: {
2182
+ code: 'NETWORK_ERROR',
2183
+ message: axiosError.message || 'Network error occurred',
2184
+ },
2185
+ };
2186
+ }
2187
+ return {
2188
+ success: false,
2189
+ error: {
2190
+ code: 'UNKNOWN_ERROR',
2191
+ message: error instanceof Error ? error.message : 'Unknown error occurred',
2192
+ },
2193
+ };
1562
2194
  }
package/src/index.ts CHANGED
@@ -15,11 +15,9 @@ async function main(): Promise<void> {
15
15
  program
16
16
  .name('barista')
17
17
  .description('Barista CLI - Bridge between AI agents and Liberica/Arabica')
18
- .version('0.1.5')
18
+ .version('0.1.7')
19
19
  .option('-e, --env <environment>', 'Target environment (dev|test|prod-cn|prod-jp)')
20
20
  .option('-t, --tenant <tenant>', 'Target tenant (for Liberica)')
21
- .option('--dry-run', 'Execute in dry-run mode')
22
- .option('--json', 'Output as JSON')
23
21
  .option('--debug', 'Enable debug mode');
24
22
 
25
23
  program.addCommand(createContextCommand());