@frihet/mcp-server 1.14.1 → 1.14.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/__tests__/contract.test.d.ts +33 -0
- package/dist/__tests__/contract.test.d.ts.map +1 -0
- package/dist/__tests__/contract.test.js +208 -0
- package/dist/__tests__/contract.test.js.map +1 -0
- package/dist/__tests__/einvoice-tools.test.js +70 -107
- package/dist/__tests__/einvoice-tools.test.js.map +1 -1
- package/dist/__tests__/tool-exposure.test.js +4 -1
- package/dist/__tests__/tool-exposure.test.js.map +1 -1
- package/dist/client.d.ts +18 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +42 -2
- package/dist/client.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/observability.d.ts +21 -0
- package/dist/observability.d.ts.map +1 -1
- package/dist/observability.js +79 -4
- package/dist/observability.js.map +1 -1
- package/dist/tools/accountingClose.d.ts.map +1 -1
- package/dist/tools/accountingClose.js +17 -12
- package/dist/tools/accountingClose.js.map +1 -1
- package/dist/tools/audit_gl.d.ts.map +1 -1
- package/dist/tools/audit_gl.js +7 -6
- package/dist/tools/audit_gl.js.map +1 -1
- package/dist/tools/backend-availability.d.ts +73 -0
- package/dist/tools/backend-availability.d.ts.map +1 -0
- package/dist/tools/backend-availability.js +94 -0
- package/dist/tools/backend-availability.js.map +1 -0
- package/dist/tools/bank_rules.d.ts.map +1 -1
- package/dist/tools/bank_rules.js +5 -4
- package/dist/tools/bank_rules.js.map +1 -1
- package/dist/tools/einvoice.d.ts +25 -41
- package/dist/tools/einvoice.d.ts.map +1 -1
- package/dist/tools/einvoice.js +142 -154
- package/dist/tools/einvoice.js.map +1 -1
- package/dist/tools/fiscal.d.ts.map +1 -1
- package/dist/tools/fiscal.js +20 -17
- package/dist/tools/fiscal.js.map +1 -1
- package/dist/tools/gestoria.d.ts.map +1 -1
- package/dist/tools/gestoria.js +11 -10
- package/dist/tools/gestoria.js.map +1 -1
- package/dist/tools/hr.d.ts.map +1 -1
- package/dist/tools/hr.js +19 -18
- package/dist/tools/hr.js.map +1 -1
- package/dist/tools/igic.d.ts.map +1 -1
- package/dist/tools/igic.js +9 -8
- package/dist/tools/igic.js.map +1 -1
- package/dist/tools/impuesto_sociedades.d.ts.map +1 -1
- package/dist/tools/impuesto_sociedades.js +5 -4
- package/dist/tools/impuesto_sociedades.js.map +1 -1
- package/dist/tools/onboard_vies.d.ts.map +1 -1
- package/dist/tools/onboard_vies.js +5 -4
- package/dist/tools/onboard_vies.js.map +1 -1
- package/dist/tools/onboarding.d.ts.map +1 -1
- package/dist/tools/onboarding.js +5 -4
- package/dist/tools/onboarding.js.map +1 -1
- package/dist/tools/payroll.d.ts.map +1 -1
- package/dist/tools/payroll.js +5 -4
- package/dist/tools/payroll.js.map +1 -1
- package/dist/tools/permissions.d.ts.map +1 -1
- package/dist/tools/permissions.js +5 -4
- package/dist/tools/permissions.js.map +1 -1
- package/dist/tools/portal_domain.d.ts.map +1 -1
- package/dist/tools/portal_domain.js +7 -6
- package/dist/tools/portal_domain.js.map +1 -1
- package/dist/tools/shared.d.ts +53 -1
- package/dist/tools/shared.d.ts.map +1 -1
- package/dist/tools/shared.js +68 -2
- package/dist/tools/shared.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"impuesto_sociedades.js","sourceRoot":"","sources":["../../src/tools/impuesto_sociedades.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,qBAAqB,GACtB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"impuesto_sociedades.js","sourceRoot":"","sources":["../../src/tools/impuesto_sociedades.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,MAAM,UAAU,+BAA+B,CAAC,MAAiB,EAAE,MAAqB;IACtF,2EAA2E;IAE3E,MAAM,CAAC,YAAY,CACjB,2BAA2B,EAC3B;QACE,KAAK,EAAE,oDAAoD;QAC3D,WAAW,EACT,0FAA0F;YAC1F,qFAAqF;YACrF,gEAAgE;YAChE,+FAA+F;YAC/F,wBAAwB;YACxB,qFAAqF;YACrF,sFAAsF;QACxF,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+HAA+H,CAAC;SACtK;KACF,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,2BAA2B,EAAE,GAAG,EAAE,CACpE,gBAAgB,CAAC,2BAA2B,EAAE,YAAY,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,OAAO;YACL,OAAO,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,+BAA+B,EAAE,MAAM,CAAC,CAAC,CAAC;YAC5E,iBAAiB,EAAE,MAA4C;SAChE,CAAC;IACJ,CAAC,CAAC,CACH,CACF,CAAC;IAEF,2EAA2E;IAE3E,MAAM,CAAC,YAAY,CACjB,2BAA2B,EAC3B;QACE,KAAK,EAAE,+DAA+D;QACtE,WAAW,EACT,oGAAoG;YACpG,kEAAkE;YAClE,sGAAsG;YACtG,0CAA0C;YAC1C,2EAA2E;YAC3E,oGAAoG;QACtG,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kGAAkG,CAAC;YACxI,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+JAA+J,CAAC;SAC7N;KACF,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,2BAA2B,EAAE,GAAG,EAAE,CACjF,gBAAgB,CAAC,2BAA2B,EAAE,YAAY,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;QACvE,MAAM,KAAK,GAAG,WAAW;YACvB,CAAC,CAAC,uBAAuB,WAAW,IAAI,IAAI,IAAI,EAAE,GAAG;YACrD,CAAC,CAAC,wCAAwC,IAAI,IAAI,EAAE,GAAG,CAAC;QAC1D,OAAO;YACL,OAAO,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;YACzD,iBAAiB,EAAE,MAA4C;SAChE,CAAC;IACJ,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboard_vies.d.ts","sourceRoot":"","sources":["../../src/tools/onboard_vies.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"onboard_vies.d.ts","sourceRoot":"","sources":["../../src/tools/onboard_vies.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAW5D,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CAuEvF"}
|
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
*/
|
|
19
19
|
import { z } from "zod/v4";
|
|
20
20
|
import { withToolLogging, formatRecord, getContent, mutateContent, READ_ONLY_ANNOTATIONS, CREATE_ANNOTATIONS, } from "./shared.js";
|
|
21
|
+
import { withBackendGuard } from "./backend-availability.js";
|
|
21
22
|
export function registerOnboardViesTools(server, client) {
|
|
22
23
|
// -- frihet_portal_onboard_link_generate ----------------------------------
|
|
23
24
|
server.registerTool("frihet_portal_onboard_link_generate", {
|
|
@@ -38,7 +39,7 @@ export function registerOnboardViesTools(server, client) {
|
|
|
38
39
|
.describe("Link expiry in hours, 1-168 (default 72h) / Caducidad del enlace en horas (por defecto 72h)"),
|
|
39
40
|
workspaceId: z.string().optional().describe("Target gestor workspace ID / ID del workspace del gestor"),
|
|
40
41
|
},
|
|
41
|
-
}, async ({ email, name, expiresInHours, workspaceId }) => withToolLogging("frihet_portal_onboard_link_generate", async () => {
|
|
42
|
+
}, async ({ email, name, expiresInHours, workspaceId }) => withToolLogging("frihet_portal_onboard_link_generate", () => withBackendGuard("frihet_portal_onboard_link_generate", "/v1/portal/onboard/link", async () => {
|
|
42
43
|
const result = await client.generatePortalOnboardLink({ email, name, expiresInHours, workspaceId });
|
|
43
44
|
return {
|
|
44
45
|
content: [
|
|
@@ -48,7 +49,7 @@ export function registerOnboardViesTools(server, client) {
|
|
|
48
49
|
],
|
|
49
50
|
structuredContent: result,
|
|
50
51
|
};
|
|
51
|
-
}));
|
|
52
|
+
})));
|
|
52
53
|
// -- frihet_tax_id_vies_lookup --------------------------------------------
|
|
53
54
|
server.registerTool("frihet_tax_id_vies_lookup", {
|
|
54
55
|
title: "Lookup Tax ID via VIES (EU VAT Validation)",
|
|
@@ -63,12 +64,12 @@ export function registerOnboardViesTools(server, client) {
|
|
|
63
64
|
vatNumber: z.string().describe("EU VAT number to validate (without country prefix) / Numero de IVA intracomunitario (sin prefijo de pais)"),
|
|
64
65
|
countryCode: z.string().length(2).describe("ISO 3166-1 alpha-2 country code (e.g. 'ES', 'DE', 'FR') / Codigo de pais ISO (ej. 'ES', 'DE', 'FR')"),
|
|
65
66
|
},
|
|
66
|
-
}, async ({ vatNumber, countryCode }) => withToolLogging("frihet_tax_id_vies_lookup", async () => {
|
|
67
|
+
}, async ({ vatNumber, countryCode }) => withToolLogging("frihet_tax_id_vies_lookup", () => withBackendGuard("frihet_tax_id_vies_lookup", "/v1/portal/onboard/vies", async () => {
|
|
67
68
|
const result = await client.lookupTaxIdViaVIES({ vatNumber, countryCode });
|
|
68
69
|
return {
|
|
69
70
|
content: [getContent(formatRecord(`VIES lookup: ${countryCode}${vatNumber}`, result))],
|
|
70
71
|
structuredContent: result,
|
|
71
72
|
};
|
|
72
|
-
}));
|
|
73
|
+
})));
|
|
73
74
|
}
|
|
74
75
|
//# sourceMappingURL=onboard_vies.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboard_vies.js","sourceRoot":"","sources":["../../src/tools/onboard_vies.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,aAAa,EACb,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"onboard_vies.js","sourceRoot":"","sources":["../../src/tools/onboard_vies.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,aAAa,EACb,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,MAAM,UAAU,wBAAwB,CAAC,MAAiB,EAAE,MAAqB;IAC/E,4EAA4E;IAE5E,MAAM,CAAC,YAAY,CACjB,qCAAqC,EACrC;QACE,KAAK,EAAE,mCAAmC;QAC1C,WAAW,EACT,6FAA6F;YAC7F,wFAAwF;YACxF,qDAAqD;YACrD,8BAA8B;YAC9B,2DAA2D;YAC3D,iEAAiE;YACjE,uFAAuF;YACvF,4BAA4B;QAC9B,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE;YACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gEAAgE,CAAC;YAC5F,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+FAA+F,CAAC;YACrI,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;iBACxD,QAAQ,CAAC,6FAA6F,CAAC;YAC1G,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0DAA0D,CAAC;SACxG;KACF,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,qCAAqC,EAAE,GAAG,EAAE,CAClH,gBAAgB,CAAC,qCAAqC,EAAE,yBAAyB,EAAE,KAAK,IAAI,EAAE;QAC5F,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;QACpG,OAAO;YACL,OAAO,EAAE;gBACP,aAAa,CACX,YAAY,CAAC,mCAAmC,KAAK,EAAE,EAAE,MAAM,CAAC;oBAChE,wFAAwF;oBACxF,qFAAqF,CACtF;aACF;YACD,iBAAiB,EAAE,MAA4C;SAChE,CAAC;IACJ,CAAC,CAAC,CACH,CACF,CAAC;IAEF,4EAA4E;IAE5E,MAAM,CAAC,YAAY,CACjB,2BAA2B,EAC3B;QACE,KAAK,EAAE,4CAA4C;QACnD,WAAW,EACT,mGAAmG;YACnG,oFAAoF;YACpF,2FAA2F;YAC3F,sDAAsD;YACtD,iFAAiF;YACjF,yEAAyE;QAC3E,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE;YACX,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2GAA2G,CAAC;YAC3I,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,qGAAqG,CAAC;SAClJ;KACF,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,2BAA2B,EAAE,GAAG,EAAE,CACtF,gBAAgB,CAAC,2BAA2B,EAAE,yBAAyB,EAAE,KAAK,IAAI,EAAE;QAClF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC;QAC3E,OAAO;YACL,OAAO,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,gBAAgB,WAAW,GAAG,SAAS,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;YACtF,iBAAiB,EAAE,MAA4C;SAChE,CAAC;IACJ,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../../src/tools/onboarding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../../src/tools/onboarding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAa5D,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CA6DtF"}
|
package/dist/tools/onboarding.js
CHANGED
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import { z } from "zod/v4";
|
|
17
17
|
import { withToolLogging, formatRecord, getContent, mutateContent, READ_ONLY_ANNOTATIONS, UPDATE_ANNOTATIONS, onboardingStatusOutput, onboardingPersonaResultOutput, } from "./shared.js";
|
|
18
|
+
import { withBackendGuard } from "./backend-availability.js";
|
|
18
19
|
export function registerOnboardingTools(server, client) {
|
|
19
20
|
// -- onboarding_status --
|
|
20
21
|
server.registerTool("onboarding_status", {
|
|
@@ -26,13 +27,13 @@ export function registerOnboardingTools(server, client) {
|
|
|
26
27
|
annotations: READ_ONLY_ANNOTATIONS,
|
|
27
28
|
inputSchema: {},
|
|
28
29
|
outputSchema: onboardingStatusOutput,
|
|
29
|
-
}, async () => withToolLogging("onboarding_status", async () => {
|
|
30
|
+
}, async () => withToolLogging("onboarding_status", () => withBackendGuard("onboarding_status", "/v1/onboarding/status", async () => {
|
|
30
31
|
const result = await client.getOnboardingStatus();
|
|
31
32
|
return {
|
|
32
33
|
content: [getContent(formatRecord("Onboarding status", result))],
|
|
33
34
|
structuredContent: result,
|
|
34
35
|
};
|
|
35
|
-
}));
|
|
36
|
+
})));
|
|
36
37
|
// -- onboarding_persona_set --
|
|
37
38
|
server.registerTool("onboarding_persona_set", {
|
|
38
39
|
title: "Set Onboarding Persona",
|
|
@@ -52,12 +53,12 @@ export function registerOnboardingTools(server, client) {
|
|
|
52
53
|
.describe("Workspace persona / Persona del workspace"),
|
|
53
54
|
},
|
|
54
55
|
outputSchema: onboardingPersonaResultOutput,
|
|
55
|
-
}, async ({ persona }) => withToolLogging("onboarding_persona_set", async () => {
|
|
56
|
+
}, async ({ persona }) => withToolLogging("onboarding_persona_set", () => withBackendGuard("onboarding_persona_set", "/v1/onboarding/persona", async () => {
|
|
56
57
|
const result = await client.setOnboardingPersona({ persona });
|
|
57
58
|
return {
|
|
58
59
|
content: [mutateContent(formatRecord("Persona set", result))],
|
|
59
60
|
structuredContent: result,
|
|
60
61
|
};
|
|
61
|
-
}));
|
|
62
|
+
})));
|
|
62
63
|
}
|
|
63
64
|
//# sourceMappingURL=onboarding.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../src/tools/onboarding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,aAAa,EACb,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,6BAA6B,GAC9B,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../src/tools/onboarding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,aAAa,EACb,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,6BAA6B,GAC9B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,MAAM,UAAU,uBAAuB,CAAC,MAAiB,EAAE,MAAqB;IAC9E,0BAA0B;IAE1B,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;QACE,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EACT,2FAA2F;YAC3F,+EAA+E;YAC/E,gCAAgC;YAChC,mGAAmG;QACrG,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,sBAAsB;KACrC,EACD,KAAK,IAAI,EAAE,CAAC,eAAe,CAAC,mBAAmB,EAAE,GAAG,EAAE,CACpD,gBAAgB,CAAC,mBAAmB,EAAE,uBAAuB,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,mBAAmB,EAAE,CAAC;QAClD,OAAO;YACL,OAAO,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC,CAAC;YAChE,iBAAiB,EAAE,MAA4C;SAChE,CAAC;IACJ,CAAC,CAAC,CACH,CACF,CAAC;IAEF,+BAA+B;IAE/B,MAAM,CAAC,YAAY,CACjB,wBAAwB,EACxB;QACE,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EACT,kFAAkF;YAClF,uCAAuC;YACvC,mDAAmD;YACnD,0CAA0C;YAC1C,yCAAyC;YACzC,yEAAyE;YACzE,IAAI;YACJ,yDAAyD;YACzD,2FAA2F;QAC7F,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE;YACX,OAAO,EAAE,CAAC;iBACP,IAAI,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;iBACpD,QAAQ,CAAC,2CAA2C,CAAC;SACzD;QACD,YAAY,EAAE,6BAA6B;KAC5C,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,wBAAwB,EAAE,GAAG,EAAE,CACpE,gBAAgB,CAAC,wBAAwB,EAAE,wBAAwB,EAAE,KAAK,IAAI,EAAE;QAC9E,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9D,OAAO;YACL,OAAO,EAAE,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;YAC7D,iBAAiB,EAAE,MAA4C;SAChE,CAAC;IACJ,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payroll.d.ts","sourceRoot":"","sources":["../../src/tools/payroll.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"payroll.d.ts","sourceRoot":"","sources":["../../src/tools/payroll.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAW5D,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CAsEnF"}
|
package/dist/tools/payroll.js
CHANGED
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
*/
|
|
17
17
|
import { z } from "zod/v4";
|
|
18
18
|
import { withToolLogging, formatRecord, getContent, READ_ONLY_ANNOTATIONS, payrollExportOutput, payrollChecklistOutput, } from "./shared.js";
|
|
19
|
+
import { withBackendGuard } from "./backend-availability.js";
|
|
19
20
|
export function registerPayrollTools(server, client) {
|
|
20
21
|
// -- payroll_export --
|
|
21
22
|
server.registerTool("payroll_export", {
|
|
@@ -39,13 +40,13 @@ export function registerPayrollTools(server, client) {
|
|
|
39
40
|
month: z.string().regex(/^\d{4}-\d{2}$/).describe("Month in 'YYYY-MM' format / Mes formato 'YYYY-MM'"),
|
|
40
41
|
},
|
|
41
42
|
outputSchema: payrollExportOutput,
|
|
42
|
-
}, async ({ format, month }) => withToolLogging("payroll_export", async () => {
|
|
43
|
+
}, async ({ format, month }) => withToolLogging("payroll_export", () => withBackendGuard("payroll_export", "/v1/payroll/prep/export", async () => {
|
|
43
44
|
const result = await client.exportPayroll({ format, month });
|
|
44
45
|
return {
|
|
45
46
|
content: [getContent(formatRecord("Payroll export", result))],
|
|
46
47
|
structuredContent: result,
|
|
47
48
|
};
|
|
48
|
-
}));
|
|
49
|
+
})));
|
|
49
50
|
// -- payroll_checklist --
|
|
50
51
|
server.registerTool("payroll_checklist", {
|
|
51
52
|
title: "Payroll Readiness Checklist",
|
|
@@ -62,12 +63,12 @@ export function registerPayrollTools(server, client) {
|
|
|
62
63
|
month: z.string().regex(/^\d{4}-\d{2}$/).describe("Month in 'YYYY-MM' format / Mes formato 'YYYY-MM'"),
|
|
63
64
|
},
|
|
64
65
|
outputSchema: payrollChecklistOutput,
|
|
65
|
-
}, async ({ month }) => withToolLogging("payroll_checklist", async () => {
|
|
66
|
+
}, async ({ month }) => withToolLogging("payroll_checklist", () => withBackendGuard("payroll_checklist", "/v1/payroll/prep/employees", async () => {
|
|
66
67
|
const result = await client.getPayrollChecklist({ month });
|
|
67
68
|
return {
|
|
68
69
|
content: [getContent(formatRecord("Payroll checklist", result))],
|
|
69
70
|
structuredContent: result,
|
|
70
71
|
};
|
|
71
|
-
}));
|
|
72
|
+
})));
|
|
72
73
|
}
|
|
73
74
|
//# sourceMappingURL=payroll.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payroll.js","sourceRoot":"","sources":["../../src/tools/payroll.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"payroll.js","sourceRoot":"","sources":["../../src/tools/payroll.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,MAAM,UAAU,oBAAoB,CAAC,MAAiB,EAAE,MAAqB;IAC3E,uBAAuB;IAEvB,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,KAAK,EAAE,kCAAkC;QACzC,WAAW,EACT,iEAAiE;YACjE,sBAAsB;YACtB,yEAAyE;YACzE,kCAAkC;YAClC,gCAAgC;YAChC,yCAAyC;YACzC,gDAAgD;YAChD,IAAI;YACJ,+EAA+E;YAC/E,2BAA2B;YAC3B,0FAA0F;QAC5F,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE;YACX,MAAM,EAAE,CAAC;iBACN,IAAI,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;iBACpD,QAAQ,CAAC,qEAAqE,CAAC;YAClF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,mDAAmD,CAAC;SACvG;QACD,YAAY,EAAE,mBAAmB;KAClC,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAClE,gBAAgB,CAAC,gBAAgB,EAAE,yBAAyB,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7D,OAAO;YACL,OAAO,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;YAC7D,iBAAiB,EAAE,MAA4C;SAChE,CAAC;IACJ,CAAC,CAAC,CACH,CACF,CAAC;IAEF,0BAA0B;IAE1B,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;QACE,KAAK,EAAE,6BAA6B;QACpC,WAAW,EACT,4EAA4E;YAC5E,kBAAkB;YAClB,oEAAoE;YACpE,4EAA4E;YAC5E,yEAAyE;YACzE,IAAI;YACJ,uEAAuE;YACvE,wFAAwF;QAC1F,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE;YACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,mDAAmD,CAAC;SACvG;QACD,YAAY,EAAE,sBAAsB;KACrC,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,mBAAmB,EAAE,GAAG,EAAE,CAC7D,gBAAgB,CAAC,mBAAmB,EAAE,4BAA4B,EAAE,KAAK,IAAI,EAAE;QAC7E,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3D,OAAO;YACL,OAAO,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC,CAAC;YAChE,iBAAiB,EAAE,MAA4C;SAChE,CAAC;IACJ,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/tools/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/tools/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAW5D,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CAmDvF"}
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
* until backend ships.
|
|
15
15
|
*/
|
|
16
16
|
import { withToolLogging, formatRecord, getContent, READ_ONLY_ANNOTATIONS, permissionsMatrixOutput, permissionsMeOutput, } from "./shared.js";
|
|
17
|
+
import { withBackendGuard } from "./backend-availability.js";
|
|
17
18
|
export function registerPermissionsTools(server, client) {
|
|
18
19
|
// -- permissions_matrix --
|
|
19
20
|
server.registerTool("permissions_matrix", {
|
|
@@ -25,13 +26,13 @@ export function registerPermissionsTools(server, client) {
|
|
|
25
26
|
annotations: READ_ONLY_ANNOTATIONS,
|
|
26
27
|
inputSchema: {},
|
|
27
28
|
outputSchema: permissionsMatrixOutput,
|
|
28
|
-
}, async () => withToolLogging("permissions_matrix", async () => {
|
|
29
|
+
}, async () => withToolLogging("permissions_matrix", () => withBackendGuard("permissions_matrix", "/v1/permissions/matrix", async () => {
|
|
29
30
|
const result = await client.getPermissionsMatrix();
|
|
30
31
|
return {
|
|
31
32
|
content: [getContent(formatRecord("Permissions matrix", result))],
|
|
32
33
|
structuredContent: result,
|
|
33
34
|
};
|
|
34
|
-
}));
|
|
35
|
+
})));
|
|
35
36
|
// -- permissions_me --
|
|
36
37
|
server.registerTool("permissions_me", {
|
|
37
38
|
title: "My Permissions",
|
|
@@ -41,12 +42,12 @@ export function registerPermissionsTools(server, client) {
|
|
|
41
42
|
annotations: READ_ONLY_ANNOTATIONS,
|
|
42
43
|
inputSchema: {},
|
|
43
44
|
outputSchema: permissionsMeOutput,
|
|
44
|
-
}, async () => withToolLogging("permissions_me", async () => {
|
|
45
|
+
}, async () => withToolLogging("permissions_me", () => withBackendGuard("permissions_me", "/v1/permissions/me", async () => {
|
|
45
46
|
const result = await client.getMyPermissions();
|
|
46
47
|
return {
|
|
47
48
|
content: [getContent(formatRecord("My permissions", result))],
|
|
48
49
|
structuredContent: result,
|
|
49
50
|
};
|
|
50
|
-
}));
|
|
51
|
+
})));
|
|
51
52
|
}
|
|
52
53
|
//# sourceMappingURL=permissions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/tools/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/tools/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,MAAM,UAAU,wBAAwB,CAAC,MAAiB,EAAE,MAAqB;IAC/E,2BAA2B;IAE3B,MAAM,CAAC,YAAY,CACjB,oBAAoB,EACpB;QACE,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EACT,+DAA+D;YAC/D,gFAAgF;YAChF,qEAAqE;YACrE,kEAAkE;QACpE,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,uBAAuB;KACtC,EACD,KAAK,IAAI,EAAE,CAAC,eAAe,CAAC,oBAAoB,EAAE,GAAG,EAAE,CACrD,gBAAgB,CAAC,oBAAoB,EAAE,wBAAwB,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,oBAAoB,EAAE,CAAC;QACnD,OAAO;YACL,OAAO,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC,CAAC;YACjE,iBAAiB,EAAE,MAA4C;SAChE,CAAC;IACJ,CAAC,CAAC,CACH,CACF,CAAC;IAEF,uBAAuB;IAEvB,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,KAAK,EAAE,gBAAgB;QACvB,WAAW,EACT,6EAA6E;YAC7E,uFAAuF;YACvF,gFAAgF;QAClF,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,mBAAmB;KAClC,EACD,KAAK,IAAI,EAAE,CAAC,eAAe,CAAC,gBAAgB,EAAE,GAAG,EAAE,CACjD,gBAAgB,CAAC,gBAAgB,EAAE,oBAAoB,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC/C,OAAO;YACL,OAAO,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;YAC7D,iBAAiB,EAAE,MAA4C;SAChE,CAAC;IACJ,CAAC,CAAC,CACH,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portal_domain.d.ts","sourceRoot":"","sources":["../../src/tools/portal_domain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"portal_domain.d.ts","sourceRoot":"","sources":["../../src/tools/portal_domain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAY5D,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CAgGxF"}
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import { z } from "zod/v4";
|
|
17
17
|
import { withToolLogging, formatRecord, getContent, mutateContent, READ_ONLY_ANNOTATIONS, CREATE_ANNOTATIONS, DELETE_ANNOTATIONS, } from "./shared.js";
|
|
18
|
+
import { withBackendGuard } from "./backend-availability.js";
|
|
18
19
|
export function registerPortalDomainTools(server, client) {
|
|
19
20
|
// -- frihet_portal_domain_add ---------------------------------------------
|
|
20
21
|
server.registerTool("frihet_portal_domain_add", {
|
|
@@ -29,7 +30,7 @@ export function registerPortalDomainTools(server, client) {
|
|
|
29
30
|
domain: z.string().describe("Custom domain to add (e.g. 'portal.miempresa.com') / Dominio personalizado (ej. 'portal.miempresa.com')"),
|
|
30
31
|
workspaceId: z.string().optional().describe("Target workspace ID (defaults to caller's workspace) / ID del workspace destino"),
|
|
31
32
|
},
|
|
32
|
-
}, async ({ domain, workspaceId }) => withToolLogging("frihet_portal_domain_add", async () => {
|
|
33
|
+
}, async ({ domain, workspaceId }) => withToolLogging("frihet_portal_domain_add", () => withBackendGuard("frihet_portal_domain_add", "/v1/portal/domain/add", async () => {
|
|
33
34
|
const result = await client.addCustomPortalDomain({ domain, workspaceId });
|
|
34
35
|
return {
|
|
35
36
|
content: [
|
|
@@ -39,7 +40,7 @@ export function registerPortalDomainTools(server, client) {
|
|
|
39
40
|
],
|
|
40
41
|
structuredContent: result,
|
|
41
42
|
};
|
|
42
|
-
}));
|
|
43
|
+
})));
|
|
43
44
|
// -- frihet_portal_domain_verify ------------------------------------------
|
|
44
45
|
server.registerTool("frihet_portal_domain_verify", {
|
|
45
46
|
title: "Verify Custom Portal Domain",
|
|
@@ -53,13 +54,13 @@ export function registerPortalDomainTools(server, client) {
|
|
|
53
54
|
inputSchema: {
|
|
54
55
|
domain: z.string().describe("Custom domain to verify / Dominio personalizado a verificar"),
|
|
55
56
|
},
|
|
56
|
-
}, async ({ domain }) => withToolLogging("frihet_portal_domain_verify", async () => {
|
|
57
|
+
}, async ({ domain }) => withToolLogging("frihet_portal_domain_verify", () => withBackendGuard("frihet_portal_domain_verify", "/v1/portal/domain/verify", async () => {
|
|
57
58
|
const result = await client.verifyCustomPortalDomain({ domain });
|
|
58
59
|
return {
|
|
59
60
|
content: [getContent(formatRecord(`Domain verification status: ${domain}`, result))],
|
|
60
61
|
structuredContent: result,
|
|
61
62
|
};
|
|
62
|
-
}));
|
|
63
|
+
})));
|
|
63
64
|
// -- frihet_portal_domain_remove ------------------------------------------
|
|
64
65
|
server.registerTool("frihet_portal_domain_remove", {
|
|
65
66
|
title: "Remove Custom Portal Domain",
|
|
@@ -72,7 +73,7 @@ export function registerPortalDomainTools(server, client) {
|
|
|
72
73
|
inputSchema: {
|
|
73
74
|
domain: z.string().describe("Custom domain to remove / Dominio personalizado a eliminar"),
|
|
74
75
|
},
|
|
75
|
-
}, async ({ domain }) => withToolLogging("frihet_portal_domain_remove", async () => {
|
|
76
|
+
}, async ({ domain }) => withToolLogging("frihet_portal_domain_remove", () => withBackendGuard("frihet_portal_domain_remove", "/v1/portal/domain/remove", async () => {
|
|
76
77
|
const result = await client.removeCustomPortalDomain({ domain });
|
|
77
78
|
return {
|
|
78
79
|
content: [
|
|
@@ -80,6 +81,6 @@ export function registerPortalDomainTools(server, client) {
|
|
|
80
81
|
],
|
|
81
82
|
structuredContent: result,
|
|
82
83
|
};
|
|
83
|
-
}));
|
|
84
|
+
})));
|
|
84
85
|
}
|
|
85
86
|
//# sourceMappingURL=portal_domain.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portal_domain.js","sourceRoot":"","sources":["../../src/tools/portal_domain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EACL,eAAe,EACf,YAAY,EACZ,UAAU,EACV,aAAa,EACb,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"portal_domain.js","sourceRoot":"","sources":["../../src/tools/portal_domain.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/shared.d.ts
CHANGED
|
@@ -359,9 +359,61 @@ export declare const bankTransactionItemOutput: z.ZodObject<{
|
|
|
359
359
|
createdAt: z.ZodOptional<z.ZodString>;
|
|
360
360
|
updatedAt: z.ZodOptional<z.ZodString>;
|
|
361
361
|
}, z.core.$loose>;
|
|
362
|
+
/**
|
|
363
|
+
* Output schema for the Modelo 303/130/390 READ-ONLY summary tools.
|
|
364
|
+
*
|
|
365
|
+
* Aligned with the SHIPPED Cloudflare Function response (publicApi.ts), which
|
|
366
|
+
* — after the client unwraps the `{ data, meta }` envelope — returns:
|
|
367
|
+
* { model, period, months, modelo303|modelo130|modelo390, summary, readonly, note }
|
|
368
|
+
*
|
|
369
|
+
* `model` carries the modelo code ('303'|'130'|'390'). `modeloCode` is kept as
|
|
370
|
+
* an OPTIONAL alias so legacy callers/fixtures that surface `modeloCode`
|
|
371
|
+
* validate too (the CF itself emits `model`). The three `modelo*` totals
|
|
372
|
+
* objects are mutually exclusive per request — each is optional so any one
|
|
373
|
+
* model validates. `.passthrough()` lets the genuine totals surface even where
|
|
374
|
+
* a field isn't explicitly enumerated.
|
|
375
|
+
*/
|
|
362
376
|
export declare const fiscalModeloSummaryOutput: z.ZodObject<{
|
|
363
|
-
|
|
377
|
+
model: z.ZodOptional<z.ZodString>;
|
|
378
|
+
modeloCode: z.ZodOptional<z.ZodString>;
|
|
364
379
|
period: z.ZodOptional<z.ZodString>;
|
|
380
|
+
months: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
381
|
+
modelo303: z.ZodOptional<z.ZodObject<{
|
|
382
|
+
baseImponible: z.ZodOptional<z.ZodNumber>;
|
|
383
|
+
cuotaRepercutida: z.ZodOptional<z.ZodNumber>;
|
|
384
|
+
baseDeducible: z.ZodOptional<z.ZodNumber>;
|
|
385
|
+
cuotaDeducible: z.ZodOptional<z.ZodNumber>;
|
|
386
|
+
resultado: z.ZodOptional<z.ZodNumber>;
|
|
387
|
+
baseExenta: z.ZodOptional<z.ZodNumber>;
|
|
388
|
+
baseNoSujetaORC: z.ZodOptional<z.ZodNumber>;
|
|
389
|
+
outOfScope: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
390
|
+
}, z.core.$loose>>;
|
|
391
|
+
modelo130: z.ZodOptional<z.ZodObject<{
|
|
392
|
+
ingresos: z.ZodOptional<z.ZodNumber>;
|
|
393
|
+
gastos: z.ZodOptional<z.ZodNumber>;
|
|
394
|
+
rendimientoNeto: z.ZodOptional<z.ZodNumber>;
|
|
395
|
+
pagoFraccionado: z.ZodOptional<z.ZodNumber>;
|
|
396
|
+
retencionesSoportadas: z.ZodOptional<z.ZodNumber>;
|
|
397
|
+
}, z.core.$loose>>;
|
|
398
|
+
modelo390: z.ZodOptional<z.ZodObject<{
|
|
399
|
+
baseImponible: z.ZodOptional<z.ZodNumber>;
|
|
400
|
+
cuotaRepercutida: z.ZodOptional<z.ZodNumber>;
|
|
401
|
+
baseDeducible: z.ZodOptional<z.ZodNumber>;
|
|
402
|
+
cuotaDeducible: z.ZodOptional<z.ZodNumber>;
|
|
403
|
+
resultadoAnual: z.ZodOptional<z.ZodNumber>;
|
|
404
|
+
baseExenta: z.ZodOptional<z.ZodNumber>;
|
|
405
|
+
baseNoSujetaORC: z.ZodOptional<z.ZodNumber>;
|
|
406
|
+
outOfScope: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
407
|
+
}, z.core.$loose>>;
|
|
408
|
+
summary: z.ZodOptional<z.ZodObject<{
|
|
409
|
+
totalRevenue: z.ZodOptional<z.ZodNumber>;
|
|
410
|
+
totalExpenses: z.ZodOptional<z.ZodNumber>;
|
|
411
|
+
invoiceCount: z.ZodOptional<z.ZodNumber>;
|
|
412
|
+
expenseCount: z.ZodOptional<z.ZodNumber>;
|
|
413
|
+
clientCount: z.ZodOptional<z.ZodNumber>;
|
|
414
|
+
}, z.core.$loose>>;
|
|
415
|
+
readonly: z.ZodOptional<z.ZodLiteral<true>>;
|
|
416
|
+
note: z.ZodOptional<z.ZodString>;
|
|
365
417
|
totalsByRate: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
|
|
366
418
|
totalDeductible: z.ZodOptional<z.ZodNumber>;
|
|
367
419
|
totalDue: z.ZodOptional<z.ZodNumber>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/tools/shared.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/tools/shared.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/shared.js
CHANGED
|
@@ -522,9 +522,75 @@ export const bankTransactionItemOutput = z.object({
|
|
|
522
522
|
updatedAt: z.string().optional(),
|
|
523
523
|
}).passthrough();
|
|
524
524
|
/* --- Fiscal item schemas --------------------------------------------------- */
|
|
525
|
+
/**
|
|
526
|
+
* Modelo 303 (IVA trimestral) totals — the READ-ONLY self-assessment view the
|
|
527
|
+
* shipped CF returns under `modelo303`. All amounts in EUR.
|
|
528
|
+
*/
|
|
529
|
+
const modelo303TotalsSchema = z.object({
|
|
530
|
+
baseImponible: z.number().optional().describe("IVA devengado base (operaciones interiores sujetas)"),
|
|
531
|
+
cuotaRepercutida: z.number().optional().describe("Output VAT (cuota repercutida)"),
|
|
532
|
+
baseDeducible: z.number().optional().describe("Deductible base (input)"),
|
|
533
|
+
cuotaDeducible: z.number().optional().describe("Input VAT (cuota deducible)"),
|
|
534
|
+
resultado: z.number().optional().describe("cuotaRepercutida − cuotaDeducible (+ to pay, − to refund/compensate)"),
|
|
535
|
+
baseExenta: z.number().optional().describe("Base of exempt operations (zero cuota)"),
|
|
536
|
+
baseNoSujetaORC: z.number().optional().describe("Intra-community / export / reverse-charge base"),
|
|
537
|
+
outOfScope: z.record(z.string(), z.unknown()).optional().describe("IGIC/IPSI totals — outside the 303 self-assessment"),
|
|
538
|
+
}).passthrough();
|
|
539
|
+
/** Modelo 130 (IRPF pago fraccionado) totals returned under `modelo130`. */
|
|
540
|
+
const modelo130TotalsSchema = z.object({
|
|
541
|
+
ingresos: z.number().optional(),
|
|
542
|
+
gastos: z.number().optional(),
|
|
543
|
+
rendimientoNeto: z.number().optional(),
|
|
544
|
+
pagoFraccionado: z.number().optional().describe("Pago fraccionado IRPF (20% del rendimiento neto)"),
|
|
545
|
+
retencionesSoportadas: z.number().optional().describe("IRPF withheld by clients on issued invoices"),
|
|
546
|
+
}).passthrough();
|
|
547
|
+
/** Modelo 390 (resumen anual IVA) totals returned under `modelo390`. */
|
|
548
|
+
const modelo390TotalsSchema = z.object({
|
|
549
|
+
baseImponible: z.number().optional(),
|
|
550
|
+
cuotaRepercutida: z.number().optional(),
|
|
551
|
+
baseDeducible: z.number().optional(),
|
|
552
|
+
cuotaDeducible: z.number().optional(),
|
|
553
|
+
resultadoAnual: z.number().optional(),
|
|
554
|
+
baseExenta: z.number().optional(),
|
|
555
|
+
baseNoSujetaORC: z.number().optional(),
|
|
556
|
+
outOfScope: z.record(z.string(), z.unknown()).optional(),
|
|
557
|
+
}).passthrough();
|
|
558
|
+
/** Aggregate counts/totals the CF attaches under `summary`. */
|
|
559
|
+
const fiscalSummaryCountsSchema = z.object({
|
|
560
|
+
totalRevenue: z.number().optional(),
|
|
561
|
+
totalExpenses: z.number().optional(),
|
|
562
|
+
invoiceCount: z.number().optional(),
|
|
563
|
+
expenseCount: z.number().optional(),
|
|
564
|
+
clientCount: z.number().optional(),
|
|
565
|
+
}).passthrough();
|
|
566
|
+
/**
|
|
567
|
+
* Output schema for the Modelo 303/130/390 READ-ONLY summary tools.
|
|
568
|
+
*
|
|
569
|
+
* Aligned with the SHIPPED Cloudflare Function response (publicApi.ts), which
|
|
570
|
+
* — after the client unwraps the `{ data, meta }` envelope — returns:
|
|
571
|
+
* { model, period, months, modelo303|modelo130|modelo390, summary, readonly, note }
|
|
572
|
+
*
|
|
573
|
+
* `model` carries the modelo code ('303'|'130'|'390'). `modeloCode` is kept as
|
|
574
|
+
* an OPTIONAL alias so legacy callers/fixtures that surface `modeloCode`
|
|
575
|
+
* validate too (the CF itself emits `model`). The three `modelo*` totals
|
|
576
|
+
* objects are mutually exclusive per request — each is optional so any one
|
|
577
|
+
* model validates. `.passthrough()` lets the genuine totals surface even where
|
|
578
|
+
* a field isn't explicitly enumerated.
|
|
579
|
+
*/
|
|
525
580
|
export const fiscalModeloSummaryOutput = z.object({
|
|
526
|
-
|
|
527
|
-
|
|
581
|
+
/** Modelo code as the CF emits it ('303' | '130' | '390'). */
|
|
582
|
+
model: z.string().optional(),
|
|
583
|
+
/** Legacy alias for `model`; optional so the CF's `model`-only shape passes. */
|
|
584
|
+
modeloCode: z.string().optional(),
|
|
585
|
+
period: z.string().optional().describe("YYYY-QN (303/130) or YYYY (390)"),
|
|
586
|
+
months: z.array(z.string()).optional().describe("Months covered by the period (YYYY-MM)"),
|
|
587
|
+
modelo303: modelo303TotalsSchema.optional(),
|
|
588
|
+
modelo130: modelo130TotalsSchema.optional(),
|
|
589
|
+
modelo390: modelo390TotalsSchema.optional(),
|
|
590
|
+
summary: fiscalSummaryCountsSchema.optional(),
|
|
591
|
+
readonly: z.literal(true).optional().describe("Marks the payload as an informational summary, never filed to AEAT"),
|
|
592
|
+
note: z.string().optional(),
|
|
593
|
+
// --- Legacy/back-compat fields (older summary shape) ---------------------
|
|
528
594
|
totalsByRate: z.record(z.string(), z.number()).optional(),
|
|
529
595
|
totalDeductible: z.number().optional(),
|
|
530
596
|
totalDue: z.number().optional(),
|