storno-cli 1.0.5 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -6,6 +6,10 @@
6
6
  * as AI-callable tools. Works with Claude Code, Cursor, Windsurf, and any
7
7
  * MCP-compatible AI assistant.
8
8
  *
9
+ * Transport modes:
10
+ * - stdio (default) — for local MCP clients (Claude Code, Cursor, etc.)
11
+ * - Streamable HTTP — set STORNO_HTTP_PORT to enable remote access
12
+ *
9
13
  * Configuration (environment variables):
10
14
  * STORNO_BASE_URL — API base URL (default: https://api.storno.ro)
11
15
  * STORNO_TOKEN — JWT access token
@@ -13,25 +17,8 @@
13
17
  * STORNO_COMPANY_ID — Default company UUID
14
18
  * STORNO_EMAIL — Email for auto-login (optional)
15
19
  * STORNO_PASSWORD — Password for auto-login (optional)
16
- *
17
- * Usage:
18
- * node dist/index.js # Start MCP server (stdio transport)
19
- *
20
- * MCP Integration:
21
- * Add to your claude_desktop_config.json or .claude/settings.json:
22
- * {
23
- * "mcpServers": {
24
- * "storno": {
25
- * "command": "node",
26
- * "args": ["/path/to/storno-cli/dist/index.js"],
27
- * "env": {
28
- * "STORNO_BASE_URL": "https://api.storno.ro",
29
- * "STORNO_TOKEN": "your-jwt-token",
30
- * "STORNO_COMPANY_ID": "your-company-uuid"
31
- * }
32
- * }
33
- * }
34
- * }
20
+ * STORNO_HTTP_PORT — If set, starts Streamable HTTP transport on this port
21
+ * STORNO_HTTP_HOST — HTTP bind address (default: 127.0.0.1)
35
22
  */
36
23
  export {};
37
24
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;GAoBG"}
package/dist/index.js CHANGED
@@ -6,6 +6,10 @@
6
6
  * as AI-callable tools. Works with Claude Code, Cursor, Windsurf, and any
7
7
  * MCP-compatible AI assistant.
8
8
  *
9
+ * Transport modes:
10
+ * - stdio (default) — for local MCP clients (Claude Code, Cursor, etc.)
11
+ * - Streamable HTTP — set STORNO_HTTP_PORT to enable remote access
12
+ *
9
13
  * Configuration (environment variables):
10
14
  * STORNO_BASE_URL — API base URL (default: https://api.storno.ro)
11
15
  * STORNO_TOKEN — JWT access token
@@ -13,157 +17,26 @@
13
17
  * STORNO_COMPANY_ID — Default company UUID
14
18
  * STORNO_EMAIL — Email for auto-login (optional)
15
19
  * STORNO_PASSWORD — Password for auto-login (optional)
16
- *
17
- * Usage:
18
- * node dist/index.js # Start MCP server (stdio transport)
19
- *
20
- * MCP Integration:
21
- * Add to your claude_desktop_config.json or .claude/settings.json:
22
- * {
23
- * "mcpServers": {
24
- * "storno": {
25
- * "command": "node",
26
- * "args": ["/path/to/storno-cli/dist/index.js"],
27
- * "env": {
28
- * "STORNO_BASE_URL": "https://api.storno.ro",
29
- * "STORNO_TOKEN": "your-jwt-token",
30
- * "STORNO_COMPANY_ID": "your-company-uuid"
31
- * }
32
- * }
33
- * }
34
- * }
20
+ * STORNO_HTTP_PORT — If set, starts Streamable HTTP transport on this port
21
+ * STORNO_HTTP_HOST — HTTP bind address (default: 127.0.0.1)
35
22
  */
36
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
37
23
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
38
- import { getConfig, updateConfig } from './config.js';
39
- import { apiRequest } from './client.js';
40
- // Import all tool modules
41
- import { tools as authTools } from './tools/auth.js';
42
- import { tools as companiesTools } from './tools/companies.js';
43
- import { tools as invoicesTools } from './tools/invoices.js';
44
- import { tools as clientsTools } from './tools/clients.js';
45
- import { tools as productsTools } from './tools/products.js';
46
- import { tools as paymentsTools } from './tools/payments.js';
47
- import { tools as defaultsTools } from './tools/defaults.js';
48
- import { tools as vatRatesTools } from './tools/vat-rates.js';
49
- import { tools as bankAccountsTools } from './tools/bank-accounts.js';
50
- import { tools as documentSeriesTools } from './tools/document-series.js';
51
- import { tools as proformaInvoicesTools } from './tools/proforma-invoices.js';
52
- import { tools as recurringInvoicesTools } from './tools/recurring-invoices.js';
53
- import { tools as deliveryNotesTools } from './tools/delivery-notes.js';
54
- import { tools as suppliersTools } from './tools/suppliers.js';
55
- import { tools as exchangeRatesTools } from './tools/exchange-rates.js';
56
- import { tools as emailTemplatesTools } from './tools/email-templates.js';
57
- import { tools as anafTools } from './tools/anaf.js';
58
- import { tools as efacturaMessagesTools } from './tools/efactura-messages.js';
59
- import { tools as einvoiceTools } from './tools/einvoice.js';
60
- import { tools as dashboardTools } from './tools/dashboard.js';
61
- import { tools as membersTools } from './tools/members.js';
62
- import { tools as invitationsTools } from './tools/invitations.js';
63
- import { tools as notificationsTools } from './tools/notifications.js';
64
- import { tools as webhooksTools } from './tools/webhooks.js';
65
- import { tools as apiKeysTools } from './tools/api-keys.js';
66
- import { tools as oauth2ClientsTools } from './tools/oauth2-clients.js';
67
- import { tools as reportsTools } from './tools/reports.js';
68
- import { tools as exportsTools } from './tools/exports.js';
69
- import { tools as adminTools } from './tools/admin.js';
70
- import { tools as licensingTools } from './tools/licensing.js';
71
- import { tools as pdfTemplateConfigTools } from './tools/pdf-template-config.js';
72
- import { tools as receiptsTools } from './tools/receipts.js';
73
- import { tools as companyRegistryTools } from './tools/company-registry.js';
74
- import { tools as systemTools } from './tools/system.js';
75
- import { tools as accountingExportTools } from './tools/accounting-export.js';
76
- import { tools as backupTools } from './tools/backup.js';
77
- import { tools as borderouTools } from './tools/borderou.js';
78
- import { tools as storageConfigTools } from './tools/storage-config.js';
79
- import { tools as importTools } from './tools/import.js';
80
- import { tools as cpvCodesTools } from './tools/cpv-codes.js';
81
- import { tools as ncCodesTools } from './tools/nc-codes.js';
82
- // Collect all tools
83
- const allTools = [
84
- ...authTools,
85
- ...companiesTools,
86
- ...invoicesTools,
87
- ...clientsTools,
88
- ...productsTools,
89
- ...paymentsTools,
90
- ...defaultsTools,
91
- ...vatRatesTools,
92
- ...bankAccountsTools,
93
- ...documentSeriesTools,
94
- ...proformaInvoicesTools,
95
- ...recurringInvoicesTools,
96
- ...deliveryNotesTools,
97
- ...suppliersTools,
98
- ...exchangeRatesTools,
99
- ...emailTemplatesTools,
100
- ...anafTools,
101
- ...efacturaMessagesTools,
102
- ...einvoiceTools,
103
- ...dashboardTools,
104
- ...membersTools,
105
- ...invitationsTools,
106
- ...notificationsTools,
107
- ...webhooksTools,
108
- ...apiKeysTools,
109
- ...oauth2ClientsTools,
110
- ...reportsTools,
111
- ...exportsTools,
112
- ...adminTools,
113
- ...licensingTools,
114
- ...pdfTemplateConfigTools,
115
- ...receiptsTools,
116
- ...companyRegistryTools,
117
- ...systemTools,
118
- ...accountingExportTools,
119
- ...backupTools,
120
- ...borderouTools,
121
- ...storageConfigTools,
122
- ...importTools,
123
- ...cpvCodesTools,
124
- ...ncCodesTools,
125
- ];
24
+ import { getConfig } from './config.js';
25
+ import { createMcpServer, autoLogin } from './server.js';
26
+ import { startHttpServer } from './http-server.js';
126
27
  async function main() {
127
- const server = new McpServer({
128
- name: 'storno',
129
- version: '1.0.0',
130
- });
131
- // Register all tools with the MCP server
132
- for (const tool of allTools) {
133
- server.tool(tool.name, tool.description, tool.inputSchema.shape, async (params) => {
134
- try {
135
- const result = await tool.handler(params);
136
- return {
137
- content: [{ type: 'text', text: result }],
138
- };
139
- }
140
- catch (err) {
141
- const message = err instanceof Error ? err.message : String(err);
142
- return {
143
- content: [{ type: 'text', text: `Unexpected error: ${message}` }],
144
- isError: true,
145
- };
146
- }
147
- });
148
- }
149
- // Auto-login if credentials are provided but no token
28
+ await autoLogin();
150
29
  const config = getConfig();
151
- if (!config.token && config.email && config.password) {
152
- const res = await apiRequest('/api/auth', {
153
- method: 'POST',
154
- body: { email: config.email, password: config.password },
155
- noAuth: true,
156
- });
157
- if (res.ok) {
158
- updateConfig({
159
- token: res.data.token,
160
- refreshToken: res.data.refresh_token,
161
- });
162
- }
30
+ if (config.httpPort) {
31
+ // Streamable HTTP transport — sessions are created on demand inside startHttpServer
32
+ startHttpServer(config.httpPort, config.httpHost);
33
+ }
34
+ else {
35
+ // Stdio transport (default)
36
+ const server = createMcpServer();
37
+ const transport = new StdioServerTransport();
38
+ await server.connect(transport);
163
39
  }
164
- // Start stdio transport
165
- const transport = new StdioServerTransport();
166
- await server.connect(transport);
167
40
  }
168
41
  main().catch((err) => {
169
42
  console.error('Fatal error:', err);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,EAAE,CAAC;IAElB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,oFAAoF;QACpF,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;SAAM,CAAC;QACN,4BAA4B;QAC5B,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAClC,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * McpServer factory — creates and configures a Storno MCP server instance.
3
+ *
4
+ * Extracted from index.ts so both stdio and HTTP transports can reuse it.
5
+ * In HTTP stateful mode a fresh McpServer is created per session.
6
+ */
7
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
8
+ /** Create a new McpServer with all Storno tools registered. */
9
+ export declare function createMcpServer(): McpServer;
10
+ /** Auto-login if email/password are set but no token exists yet. */
11
+ export declare function autoLogin(): Promise<void>;
12
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAqGpE,+DAA+D;AAC/D,wBAAgB,eAAe,IAAI,SAAS,CAsC3C;AAED,oEAAoE;AACpE,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAe/C"}
package/dist/server.js ADDED
@@ -0,0 +1,146 @@
1
+ /**
2
+ * McpServer factory — creates and configures a Storno MCP server instance.
3
+ *
4
+ * Extracted from index.ts so both stdio and HTTP transports can reuse it.
5
+ * In HTTP stateful mode a fresh McpServer is created per session.
6
+ */
7
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
8
+ import { getConfig, updateConfig } from './config.js';
9
+ import { apiRequest } from './client.js';
10
+ import { sessionContext } from './context.js';
11
+ // Import all tool modules
12
+ import { tools as authTools } from './tools/auth.js';
13
+ import { tools as companiesTools } from './tools/companies.js';
14
+ import { tools as invoicesTools } from './tools/invoices.js';
15
+ import { tools as clientsTools } from './tools/clients.js';
16
+ import { tools as productsTools } from './tools/products.js';
17
+ import { tools as paymentsTools } from './tools/payments.js';
18
+ import { tools as defaultsTools } from './tools/defaults.js';
19
+ import { tools as vatRatesTools } from './tools/vat-rates.js';
20
+ import { tools as bankAccountsTools } from './tools/bank-accounts.js';
21
+ import { tools as documentSeriesTools } from './tools/document-series.js';
22
+ import { tools as proformaInvoicesTools } from './tools/proforma-invoices.js';
23
+ import { tools as recurringInvoicesTools } from './tools/recurring-invoices.js';
24
+ import { tools as deliveryNotesTools } from './tools/delivery-notes.js';
25
+ import { tools as suppliersTools } from './tools/suppliers.js';
26
+ import { tools as exchangeRatesTools } from './tools/exchange-rates.js';
27
+ import { tools as emailTemplatesTools } from './tools/email-templates.js';
28
+ import { tools as anafTools } from './tools/anaf.js';
29
+ import { tools as efacturaMessagesTools } from './tools/efactura-messages.js';
30
+ import { tools as einvoiceTools } from './tools/einvoice.js';
31
+ import { tools as dashboardTools } from './tools/dashboard.js';
32
+ import { tools as membersTools } from './tools/members.js';
33
+ import { tools as invitationsTools } from './tools/invitations.js';
34
+ import { tools as notificationsTools } from './tools/notifications.js';
35
+ import { tools as webhooksTools } from './tools/webhooks.js';
36
+ import { tools as apiKeysTools } from './tools/api-keys.js';
37
+ import { tools as oauth2ClientsTools } from './tools/oauth2-clients.js';
38
+ import { tools as reportsTools } from './tools/reports.js';
39
+ import { tools as exportsTools } from './tools/exports.js';
40
+ import { tools as adminTools } from './tools/admin.js';
41
+ import { tools as licensingTools } from './tools/licensing.js';
42
+ import { tools as pdfTemplateConfigTools } from './tools/pdf-template-config.js';
43
+ import { tools as receiptsTools } from './tools/receipts.js';
44
+ import { tools as companyRegistryTools } from './tools/company-registry.js';
45
+ import { tools as systemTools } from './tools/system.js';
46
+ import { tools as accountingExportTools } from './tools/accounting-export.js';
47
+ import { tools as backupTools } from './tools/backup.js';
48
+ import { tools as borderouTools } from './tools/borderou.js';
49
+ import { tools as storageConfigTools } from './tools/storage-config.js';
50
+ import { tools as importTools } from './tools/import.js';
51
+ import { tools as cpvCodesTools } from './tools/cpv-codes.js';
52
+ import { tools as ncCodesTools } from './tools/nc-codes.js';
53
+ const allTools = [
54
+ ...authTools,
55
+ ...companiesTools,
56
+ ...invoicesTools,
57
+ ...clientsTools,
58
+ ...productsTools,
59
+ ...paymentsTools,
60
+ ...defaultsTools,
61
+ ...vatRatesTools,
62
+ ...bankAccountsTools,
63
+ ...documentSeriesTools,
64
+ ...proformaInvoicesTools,
65
+ ...recurringInvoicesTools,
66
+ ...deliveryNotesTools,
67
+ ...suppliersTools,
68
+ ...exchangeRatesTools,
69
+ ...emailTemplatesTools,
70
+ ...anafTools,
71
+ ...efacturaMessagesTools,
72
+ ...einvoiceTools,
73
+ ...dashboardTools,
74
+ ...membersTools,
75
+ ...invitationsTools,
76
+ ...notificationsTools,
77
+ ...webhooksTools,
78
+ ...apiKeysTools,
79
+ ...oauth2ClientsTools,
80
+ ...reportsTools,
81
+ ...exportsTools,
82
+ ...adminTools,
83
+ ...licensingTools,
84
+ ...pdfTemplateConfigTools,
85
+ ...receiptsTools,
86
+ ...companyRegistryTools,
87
+ ...systemTools,
88
+ ...accountingExportTools,
89
+ ...backupTools,
90
+ ...borderouTools,
91
+ ...storageConfigTools,
92
+ ...importTools,
93
+ ...cpvCodesTools,
94
+ ...ncCodesTools,
95
+ ];
96
+ /** Create a new McpServer with all Storno tools registered. */
97
+ export function createMcpServer() {
98
+ const server = new McpServer({
99
+ name: 'storno',
100
+ version: '1.0.0',
101
+ });
102
+ for (const tool of allTools) {
103
+ server.tool(tool.name, tool.description, tool.inputSchema.shape, async (params, extra) => {
104
+ const run = async () => {
105
+ try {
106
+ const result = await tool.handler(params);
107
+ return {
108
+ content: [{ type: 'text', text: result }],
109
+ };
110
+ }
111
+ catch (err) {
112
+ const message = err instanceof Error ? err.message : String(err);
113
+ return {
114
+ content: [{ type: 'text', text: `Unexpected error: ${message}` }],
115
+ isError: true,
116
+ };
117
+ }
118
+ };
119
+ // If the session carries its own auth token, run inside AsyncLocalStorage
120
+ const token = extra.authInfo?.token;
121
+ if (token) {
122
+ return sessionContext.run({ token }, run);
123
+ }
124
+ return run();
125
+ });
126
+ }
127
+ return server;
128
+ }
129
+ /** Auto-login if email/password are set but no token exists yet. */
130
+ export async function autoLogin() {
131
+ const config = getConfig();
132
+ if (!config.token && config.email && config.password) {
133
+ const res = await apiRequest('/api/auth', {
134
+ method: 'POST',
135
+ body: { email: config.email, password: config.password },
136
+ noAuth: true,
137
+ });
138
+ if (res.ok) {
139
+ updateConfig({
140
+ token: res.data.token,
141
+ refreshToken: res.data.refresh_token,
142
+ });
143
+ }
144
+ }
145
+ }
146
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../src/tools/clients.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,KAAK;;;;;;;;;;sBAsUU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;GAkCpE,CAAC"}
1
+ {"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../src/tools/clients.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB,eAAO,MAAM,KAAK;;;;;;;;;;sBA0UU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;GAkCpE,CAAC"}
@@ -104,6 +104,8 @@ export const tools = [
104
104
  .describe('Default payment term in days for invoices issued to this client'),
105
105
  contactPerson: z.string().optional().describe('Name of the primary contact person'),
106
106
  notes: z.string().optional().describe('Internal notes about the client'),
107
+ idNumber: z.string().optional().describe('Client identification number (personal ID, passport, etc.)'),
108
+ currency: z.string().optional().describe('Preferred currency for this client (ISO 4217, e.g., EUR, USD, RON)'),
107
109
  }),
108
110
  handler: async (params) => {
109
111
  if (!getConfig().token)
@@ -158,6 +160,8 @@ export const tools = [
158
160
  .describe('Default payment term in days for invoices issued to this client'),
159
161
  contactPerson: z.string().optional().describe('Name of the primary contact person'),
160
162
  notes: z.string().optional().describe('Internal notes about the client'),
163
+ idNumber: z.string().optional().describe('Client identification number (personal ID, passport, etc.)'),
164
+ currency: z.string().optional().describe('Preferred currency for this client (ISO 4217, e.g., EUR, USD, RON)'),
161
165
  }),
162
166
  handler: async (params) => {
163
167
  if (!getConfig().token)
@@ -1 +1 @@
1
- {"version":3,"file":"clients.js","sourceRoot":"","sources":["../../src/tools/clients.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACzF,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,SAAS,YAAY,CAAC,MAA+B;IACnD,OAAQ,MAAM,CAAC,SAAoB,IAAI,SAAS,EAAE,CAAC,SAAS,CAAC;AAC/D,CAAC;AAED,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,0KAA0K;QAC5K,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wDAAwD,CAAC;YACrE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;YACtE,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,GAAG,EAAE;iBACL,QAAQ,EAAE;iBACV,QAAQ,CAAC,uCAAuC,CAAC;YACpD,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,kDAAkD,CAAC;YAC/D,IAAI,EAAE,CAAC;iBACJ,IAAI,CAAC,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;iBAC/B,QAAQ,EAAE;iBACV,QAAQ,CAAC,kDAAkD,CAAC;SAChE,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAA+B,EAAmB,EAAE;YAClE,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK;gBAAE,OAAO,gBAAgB,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,SAAS;gBAAE,OAAO,iBAAiB,EAAE,CAAC;YAE3C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAKrC,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,iBAAiB,EAAE;gBACjD,SAAS;gBACT,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;aACrC,CAAC,CAAC;YACH,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF;IAED;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EACT,uMAAuM;QACzM,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;YACxC,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wDAAwD,CAAC;SACtE,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAA+B,EAAmB,EAAE;YAClE,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK;gBAAE,OAAO,gBAAgB,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,SAAS;gBAAE,OAAO,iBAAiB,EAAE,CAAC;YAE3C,MAAM,EAAE,IAAI,EAAE,GAAG,MAA0B,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,mBAAmB,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;YAC1E,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF;IAED;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,qOAAqO;QACvO,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wDAAwD,CAAC;YACrE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;YAC1E,IAAI,EAAE,CAAC;iBACJ,IAAI,CAAC,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;iBAC/B,QAAQ,EAAE;iBACV,QAAQ,CAAC,kDAAkD,CAAC;YAC/D,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YAC9E,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;YACxF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;YACnF,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;YACvF,kBAAkB,EAAE,CAAC;iBAClB,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,6CAA6C,CAAC;YAC1D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YACzD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YACxD,OAAO,EAAE,CAAC;iBACP,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,+CAA+C,CAAC;YAC5D,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YAC/D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;YAC7D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YAC5D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;YACrD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;YAC1E,sBAAsB,EAAE,CAAC;iBACtB,MAAM,EAAE;iBACR,GAAG,EAAE;iBACL,QAAQ,EAAE;iBACV,QAAQ,CAAC,iEAAiE,CAAC;YAC9E,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;YACnF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;SACzE,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAA+B,EAAmB,EAAE;YAClE,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK;gBAAE,OAAO,gBAAgB,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,SAAS;gBAAE,OAAO,iBAAiB,EAAE,CAAC;YAE3C,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,iBAAiB,EAAE;gBACjD,MAAM,EAAE,MAAM;gBACd,SAAS;gBACT,IAAI,EAAE,IAA+B;aACtC,CAAC,CAAC;YACH,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF;IAED;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,wGAAwG;QAC1G,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YAClD,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wDAAwD,CAAC;YACrE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;YACrF,IAAI,EAAE,CAAC;iBACJ,IAAI,CAAC,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;iBAC/B,QAAQ,EAAE;iBACV,QAAQ,CAAC,wCAAwC,CAAC;YACrD,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YAC9E,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;YACxF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;YACnF,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;YACvF,kBAAkB,EAAE,CAAC;iBAClB,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,6CAA6C,CAAC;YAC1D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YACzD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YACxD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;YAC1E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YAC/D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;YAC7D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YAC5D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;YACrD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;YAC1E,sBAAsB,EAAE,CAAC;iBACtB,MAAM,EAAE;iBACR,GAAG,EAAE;iBACL,QAAQ,EAAE;iBACV,QAAQ,CAAC,iEAAiE,CAAC;YAC9E,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;YACnF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;SACzE,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAA+B,EAAmB,EAAE;YAClE,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK;gBAAE,OAAO,gBAAgB,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,SAAS;gBAAE,OAAO,iBAAiB,EAAE,CAAC;YAE3C,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,mBAAmB,IAAI,EAAE,EAAE;gBACzD,MAAM,EAAE,OAAO;gBACf,SAAS;gBACT,IAAI,EAAE,IAA+B;aACtC,CAAC,CAAC;YACH,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF;IAED;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,qGAAqG;QACvG,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YAClD,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wDAAwD,CAAC;SACtE,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAA+B,EAAmB,EAAE;YAClE,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK;gBAAE,OAAO,gBAAgB,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,SAAS;gBAAE,OAAO,iBAAiB,EAAE,CAAC;YAE3C,MAAM,EAAE,IAAI,EAAE,GAAG,MAA0B,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,mBAAmB,IAAI,EAAE,EAAE;gBACzD,MAAM,EAAE,QAAQ;gBAChB,SAAS;aACV,CAAC,CAAC;YACH,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF;IAED;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,mLAAmL;QACrL,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,GAAG,EAAE,CAAC;iBACH,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACjB,GAAG,CAAC,GAAG,CAAC;iBACR,QAAQ,CAAC,2CAA2C,CAAC;YACxD,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wDAAwD,CAAC;SACtE,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAA+B,EAAmB,EAAE;YAClE,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK;gBAAE,OAAO,gBAAgB,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,SAAS;gBAAE,OAAO,iBAAiB,EAAE,CAAC;YAE3C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,6BAA6B,EAAE;gBAC7D,MAAM,EAAE,MAAM;gBACd,SAAS;gBACT,IAAI,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE;aAC1B,CAAC,CAAC;YACH,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF;IAED;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,+NAA+N;QACjO,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YACnE,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wDAAwD,CAAC;SACtE,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAA+B,EAAmB,EAAE;YAClE,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK;gBAAE,OAAO,gBAAgB,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,SAAS;gBAAE,OAAO,iBAAiB,EAAE,CAAC;YAE3C,MAAM,EAAE,GAAG,EAAE,GAAG,MAAyB,CAAC;YAC1C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,6BAA6B,EAAE;gBAC7D,SAAS;gBACT,KAAK,EAAE,EAAE,GAAG,EAAE;aACf,CAAC,CAAC;YACH,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF;IAED;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EACT,oNAAoN;QACtN,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,OAAO,EAAE,CAAC;iBACP,MAAM,EAAE;iBACR,QAAQ,CAAC,8EAA8E,CAAC;YAC3F,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wDAAwD,CAAC;SACtE,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAA+B,EAAmB,EAAE;YAClE,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK;gBAAE,OAAO,gBAAgB,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,SAAS;gBAAE,OAAO,iBAAiB,EAAE,CAAC;YAE3C,MAAM,EAAE,OAAO,EAAE,GAAG,MAA6B,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,6BAA6B,EAAE;gBAC7D,SAAS;gBACT,KAAK,EAAE,EAAE,OAAO,EAAE;aACnB,CAAC,CAAC;YACH,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF;IAED;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,0QAA0Q;QAC5Q,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0DAA0D,CAAC;YACpF,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,2CAA2C,CAAC;YACxD,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wDAAwD,CAAC;SACtE,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAA+B,EAAmB,EAAE;YAClE,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK;gBAAE,OAAO,gBAAgB,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,SAAS;gBAAE,OAAO,iBAAiB,EAAE,CAAC;YAE3C,MAAM,IAAI,GAA4B,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC;YAC1D,IAAI,MAAM,CAAC,IAAI;gBAAE,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YAEzC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,+BAA+B,EAAE;gBAC/D,MAAM,EAAE,MAAM;gBACd,SAAS;gBACT,IAAI;aACL,CAAC,CAAC;YACH,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF;IAED;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EACT,iIAAiI;QACnI,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wDAAwD,CAAC;SACtE,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAA+B,EAAmB,EAAE;YAClE,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK;gBAAE,OAAO,gBAAgB,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,SAAS;gBAAE,OAAO,iBAAiB,EAAE,CAAC;YAE3C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,4BAA4B,EAAE;gBAC5D,SAAS;gBACT,MAAM,EAAE,IAAI;aACb,CAAC,CAAC;YACH,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF;IAED;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EACT,+GAA+G;QACjH,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wDAAwD,CAAC;SACtE,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,MAA+B,EAAmB,EAAE;YAClE,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK;gBAAE,OAAO,gBAAgB,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,SAAS;gBAAE,OAAO,iBAAiB,EAAE,CAAC;YAE3C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,iCAAiC,EAAE;gBACjE,SAAS;aACV,CAAC,CAAC;YACH,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"clients.js","sourceRoot":"","sources":["../../src/tools/clients.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"invoices.d.ts","sourceRoot":"","sources":["../../src/tools/invoices.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAqCxB,eAAO,MAAM,KAAK;;;;;;;;;;sBA0jCU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;GAgKpE,CAAC"}
1
+ {"version":3,"file":"invoices.d.ts","sourceRoot":"","sources":["../../src/tools/invoices.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAyIxB,eAAO,MAAM,KAAK;;;;;;;;;;sBAokCU,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;GAgKpE,CAAC"}
@@ -2,6 +2,93 @@ import { z } from 'zod';
2
2
  import { apiRequest } from '../client.js';
3
3
  import { formatResponse, notAuthenticated, noCompanySelected } from '../utils/errors.js';
4
4
  import { getConfig } from '../config.js';
5
+ const lineUblExtensionsSchema = z
6
+ .object({
7
+ invoicePeriod: z
8
+ .object({
9
+ startDate: z.string().optional().describe('Period start date (YYYY-MM-DD)'),
10
+ endDate: z.string().optional().describe('Period end date (YYYY-MM-DD)'),
11
+ })
12
+ .optional()
13
+ .describe('Billing period for this line'),
14
+ allowanceCharges: z
15
+ .array(z.object({
16
+ chargeIndicator: z.boolean().describe('false=allowance/discount, true=charge/surcharge'),
17
+ reasonCode: z.string().optional().describe('Allowance/charge reason code'),
18
+ reason: z.string().optional().describe('Reason text'),
19
+ amount: z.string().describe('Allowance/charge amount (numeric string, e.g. "5.00")'),
20
+ baseAmount: z.string().optional().describe('Base amount for percentage calculation'),
21
+ multiplierFactorNumeric: z.string().optional().describe('Percentage (e.g. "10.00" for 10%)'),
22
+ }))
23
+ .optional()
24
+ .describe('Line-level allowances/charges (max 10)'),
25
+ additionalItemProperties: z
26
+ .array(z.object({
27
+ name: z.string().describe('Property name (max 50 chars)'),
28
+ value: z.string().describe('Property value (max 100 chars)'),
29
+ }))
30
+ .optional()
31
+ .describe('Additional item properties for UBL (max 20)'),
32
+ originCountry: z
33
+ .string()
34
+ .optional()
35
+ .describe('Item origin country code (ISO 3166-1 alpha-2, e.g. "DE")'),
36
+ })
37
+ .optional()
38
+ .describe('UBL extension fields for this line item');
39
+ const documentUblExtensionsSchema = z
40
+ .object({
41
+ invoicePeriod: z
42
+ .object({
43
+ startDate: z.string().optional().describe('Period start date (YYYY-MM-DD)'),
44
+ endDate: z.string().optional().describe('Period end date (YYYY-MM-DD)'),
45
+ descriptionCode: z.string().optional().describe('Period description code (e.g. "35")'),
46
+ })
47
+ .optional()
48
+ .describe('Invoice billing period (BT-73/BT-74/BT-8)'),
49
+ delivery: z
50
+ .object({
51
+ actualDeliveryDate: z.string().optional().describe('Actual delivery date (YYYY-MM-DD)'),
52
+ deliveryAddress: z
53
+ .object({
54
+ streetName: z.string().optional(),
55
+ cityName: z.string().optional(),
56
+ countrySubentity: z.string().optional().describe('e.g. "RO-CJ"'),
57
+ countryCode: z.string().optional().describe('ISO 3166-1 alpha-2 (e.g. "RO")'),
58
+ })
59
+ .optional()
60
+ .describe('Delivery location address'),
61
+ })
62
+ .optional()
63
+ .describe('Delivery information (BG-13)'),
64
+ allowanceCharges: z
65
+ .array(z.object({
66
+ chargeIndicator: z.boolean().describe('false=allowance/discount, true=charge/surcharge'),
67
+ reasonCode: z.string().optional().describe('Allowance/charge reason code (e.g. "95")'),
68
+ reason: z.string().optional().describe('Reason text (e.g. "Discount 10%")'),
69
+ amount: z.string().describe('Amount (numeric string, e.g. "100.00")'),
70
+ baseAmount: z.string().optional().describe('Base amount for percentage calculation'),
71
+ multiplierFactorNumeric: z.string().optional().describe('Percentage (e.g. "10.00" for 10%)'),
72
+ taxCategoryCode: z.string().describe('VAT category: S, Z, E, AE, K, G, or O'),
73
+ taxRate: z.string().describe('VAT rate (e.g. "19.00")'),
74
+ }))
75
+ .optional()
76
+ .describe('Document-level allowances/charges (max 20). Adjusts TaxTotal and LegalMonetaryTotal in generated UBL XML.'),
77
+ prepaidAmount: z
78
+ .string()
79
+ .optional()
80
+ .describe('Prepaid amount (numeric string >= 0). Reduces PayableAmount in UBL XML.'),
81
+ additionalDocumentReferences: z
82
+ .array(z.object({
83
+ id: z.string().describe('Reference identifier (max 200 chars)'),
84
+ documentTypeCode: z.string().optional().describe('Document type code (e.g. "916")'),
85
+ documentDescription: z.string().optional().describe('Description (e.g. "Timesheet")'),
86
+ }))
87
+ .optional()
88
+ .describe('Additional document references (max 10)'),
89
+ })
90
+ .optional()
91
+ .describe('UBL extension fields for advanced e-Factura compliance. These map directly to UBL XML elements not covered by the standard invoice fields.');
5
92
  const lineItemSchema = z.object({
6
93
  description: z.string().describe('Line item description (product or service name)'),
7
94
  quantity: z.number().describe('Quantity of items'),
@@ -28,6 +115,7 @@ const lineItemSchema = z.object({
28
115
  .optional()
29
116
  .describe('Whether unitPrice already includes VAT (default: false)'),
30
117
  productCode: z.string().optional().describe('Product code or SKU for reference'),
118
+ ublExtensions: lineUblExtensionsSchema,
31
119
  });
32
120
  function getCompanyId(params) {
33
121
  return params.companyId || getConfig().companyId;
@@ -267,6 +355,11 @@ export const tools = [
267
355
  .boolean()
268
356
  .optional()
269
357
  .describe('When used with autoApplyVatRules, sets whether unit prices include VAT on all lines. Ensures correct totals after VAT rules change rates.'),
358
+ paymentMethod: z
359
+ .enum(['bank_transfer', 'cash', 'card', 'cheque', 'other'])
360
+ .optional()
361
+ .describe('Payment method: bank_transfer (default), cash, card, cheque, other'),
362
+ ublExtensions: documentUblExtensionsSchema,
270
363
  lines: z
271
364
  .array(lineItemSchema)
272
365
  .describe('Invoice line items (at least one required)'),
@@ -344,6 +437,11 @@ export const tools = [
344
437
  .boolean()
345
438
  .optional()
346
439
  .describe('When used with autoApplyVatRules, sets whether unit prices include VAT on all lines. Ensures correct totals after VAT rules change rates.'),
440
+ paymentMethod: z
441
+ .enum(['bank_transfer', 'cash', 'card', 'cheque', 'other'])
442
+ .optional()
443
+ .describe('Payment method: bank_transfer, cash, card, cheque, other'),
444
+ ublExtensions: documentUblExtensionsSchema,
347
445
  lines: z
348
446
  .array(lineItemSchema)
349
447
  .optional()