@t4dhg/mcp-factorial 8.2.0 → 9.0.0

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 (72) hide show
  1. package/README.md +2 -2
  2. package/dist/api/contracts.js +4 -4
  3. package/dist/api/contracts.js.map +1 -1
  4. package/dist/api/documents.d.ts +2 -2
  5. package/dist/api/documents.d.ts.map +1 -1
  6. package/dist/api/documents.js +13 -9
  7. package/dist/api/documents.js.map +1 -1
  8. package/dist/api/employees.js +2 -2
  9. package/dist/api/employees.js.map +1 -1
  10. package/dist/config.d.ts +1 -1
  11. package/dist/config.d.ts.map +1 -1
  12. package/dist/config.js +4 -1
  13. package/dist/config.js.map +1 -1
  14. package/dist/http-client.d.ts +12 -0
  15. package/dist/http-client.d.ts.map +1 -1
  16. package/dist/http-client.js +32 -1
  17. package/dist/http-client.js.map +1 -1
  18. package/dist/schemas/ats.d.ts +200 -123
  19. package/dist/schemas/ats.d.ts.map +1 -1
  20. package/dist/schemas/ats.js +77 -39
  21. package/dist/schemas/ats.js.map +1 -1
  22. package/dist/schemas/documents.d.ts +75 -45
  23. package/dist/schemas/documents.d.ts.map +1 -1
  24. package/dist/schemas/documents.js +44 -15
  25. package/dist/schemas/documents.js.map +1 -1
  26. package/dist/schemas/employees.d.ts +135 -77
  27. package/dist/schemas/employees.d.ts.map +1 -1
  28. package/dist/schemas/employees.js +65 -30
  29. package/dist/schemas/employees.js.map +1 -1
  30. package/dist/schemas/index.d.ts +1 -1
  31. package/dist/schemas/index.d.ts.map +1 -1
  32. package/dist/schemas/index.js +1 -1
  33. package/dist/schemas/index.js.map +1 -1
  34. package/dist/schemas/job-catalog.d.ts +39 -27
  35. package/dist/schemas/job-catalog.d.ts.map +1 -1
  36. package/dist/schemas/job-catalog.js +16 -9
  37. package/dist/schemas/job-catalog.js.map +1 -1
  38. package/dist/schemas/payroll.d.ts +89 -70
  39. package/dist/schemas/payroll.d.ts.map +1 -1
  40. package/dist/schemas/payroll.js +49 -24
  41. package/dist/schemas/payroll.js.map +1 -1
  42. package/dist/schemas/projects.d.ts +121 -95
  43. package/dist/schemas/projects.d.ts.map +1 -1
  44. package/dist/schemas/projects.js +51 -32
  45. package/dist/schemas/projects.js.map +1 -1
  46. package/dist/schemas/shared.d.ts +13 -0
  47. package/dist/schemas/shared.d.ts.map +1 -1
  48. package/dist/schemas/shared.js +13 -0
  49. package/dist/schemas/shared.js.map +1 -1
  50. package/dist/schemas/time-off.d.ts +209 -63
  51. package/dist/schemas/time-off.d.ts.map +1 -1
  52. package/dist/schemas/time-off.js +86 -22
  53. package/dist/schemas/time-off.js.map +1 -1
  54. package/dist/schemas/training.d.ts +180 -76
  55. package/dist/schemas/training.d.ts.map +1 -1
  56. package/dist/schemas/training.js +75 -25
  57. package/dist/schemas/training.js.map +1 -1
  58. package/dist/schemas/work-areas.d.ts +14 -21
  59. package/dist/schemas/work-areas.d.ts.map +1 -1
  60. package/dist/schemas/work-areas.js +9 -7
  61. package/dist/schemas/work-areas.js.map +1 -1
  62. package/dist/tools/ats.js +3 -3
  63. package/dist/tools/ats.js.map +1 -1
  64. package/dist/tools/documents.js +6 -6
  65. package/dist/tools/documents.js.map +1 -1
  66. package/dist/tools/index.js +1 -1
  67. package/dist/tools/index.js.map +1 -1
  68. package/dist/tools/work-areas.js +2 -2
  69. package/dist/tools/work-areas.js.map +1 -1
  70. package/dist/types.d.ts +1 -1
  71. package/dist/types.d.ts.map +1 -1
  72. package/package.json +1 -1
@@ -1,43 +1,68 @@
1
1
  /**
2
2
  * Payroll schemas: PayrollSupplement, TaxIdentifier, FamilySituation
3
+ *
4
+ * Response field sets taken from the 2026-07-01 reference. The verification
5
+ * tenant has no supplements or family situations, and the identifiers endpoint
6
+ * refuses to list without a `country` filter, so none of these could be
7
+ * checked against a live record.
3
8
  */
4
9
  import { z } from 'zod';
10
+ import { resourceId } from './shared.js';
5
11
  /**
6
12
  * Payroll Supplement schema
7
13
  */
8
14
  export const PayrollSupplementSchema = z.object({
9
- id: z.number(),
10
- employee_id: z.number(),
11
- supplement_type_id: z.number().nullable(),
12
- name: z.string().nullable(),
13
- amount_cents: z.number().nullable(),
14
- effective_on: z.string().nullable(),
15
- company_id: z.number().nullable(),
16
- created_at: z.string().nullable(),
17
- updated_at: z.string().nullable(),
15
+ id: resourceId,
16
+ employee_id: resourceId,
17
+ company_id: resourceId.optional(),
18
+ legal_entity_id: resourceId.nullable().optional(),
19
+ contracts_compensation_id: resourceId.nullable().optional(),
20
+ contracts_taxonomy_id: resourceId.nullable().optional(),
21
+ payroll_policy_period_id: resourceId.nullable().optional(),
22
+ unit: z.enum(['money', 'units', 'time']).optional(),
23
+ amount_in_cents: z.number().nullable().optional(),
24
+ currency: z.string().nullable().optional(),
25
+ raw_minutes_in_cents: z.number().nullable().optional(),
26
+ minutes_in_cents: z.number().nullable().optional(),
27
+ equivalent_minutes_in_cents: z.number().nullable().optional(),
28
+ description: z.string().nullable().optional(),
29
+ employee_observations: z.array(z.string()).nullable().optional(),
30
+ effective_on: z.string().nullable().optional(),
31
+ created_at: z.string().nullable().optional(),
32
+ updated_at: z.string().nullable().optional(),
18
33
  });
19
34
  /**
20
- * Tax Identifier schema
35
+ * Tax Identifier schema (payroll_employees/identifiers)
36
+ *
37
+ * Only exists for Portuguese, German and Italian legal entities.
21
38
  */
22
39
  export const TaxIdentifierSchema = z.object({
23
- id: z.number(),
24
- employee_id: z.number(),
25
- identifier_type: z.string().nullable().optional(),
26
- identifier_value: z.string().nullable().optional(),
27
- country: z.string().nullable().optional(),
28
- created_at: z.string().nullable().optional(),
29
- updated_at: z.string().nullable().optional(),
40
+ id: resourceId,
41
+ employee_id: resourceId,
42
+ country: z.enum(['pt', 'de', 'it']),
43
+ tax_id: z.string().nullable().optional(),
44
+ social_security_number: z.string().nullable().optional(),
30
45
  });
31
46
  /**
32
47
  * Family Situation schema
33
48
  */
34
49
  export const FamilySituationSchema = z.object({
35
- id: z.number(),
36
- employee_id: z.number(),
37
- marital_status: z.string().nullable(),
38
- number_of_dependents: z.number().nullable(),
39
- effective_on: z.string().nullable(),
40
- created_at: z.string().nullable(),
41
- updated_at: z.string().nullable(),
50
+ id: resourceId,
51
+ employee_id: resourceId,
52
+ civil_status: z
53
+ .enum([
54
+ 'single',
55
+ 'cohabitating',
56
+ 'divorced',
57
+ 'married',
58
+ 'unknown',
59
+ 'civil_partnership',
60
+ 'separated',
61
+ 'widow',
62
+ 'not_applicable',
63
+ ])
64
+ .nullable()
65
+ .optional(),
66
+ number_of_dependants: z.number().nullable().optional(),
42
67
  });
43
68
  //# sourceMappingURL=payroll.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"payroll.js","sourceRoot":"","sources":["../../src/schemas/payroll.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACjD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACzC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC5C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACrC,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC"}
1
+ {"version":3,"file":"payroll.js","sourceRoot":"","sources":["../../src/schemas/payroll.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,EAAE,EAAE,UAAU;IACd,WAAW,EAAE,UAAU;IACvB,UAAU,EAAE,UAAU,CAAC,QAAQ,EAAE;IACjC,eAAe,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACjD,yBAAyB,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC3D,qBAAqB,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACvD,wBAAwB,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1D,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnD,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACjD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACtD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,2BAA2B,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,qBAAqB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAChE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC9C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC5C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC;AAIH;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,EAAE,EAAE,UAAU;IACd,WAAW,EAAE,UAAU;IACvB,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACnC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACxC,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACzD,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,EAAE,EAAE,UAAU;IACd,WAAW,EAAE,UAAU;IACvB,YAAY,EAAE,CAAC;SACZ,IAAI,CAAC;QACJ,QAAQ;QACR,cAAc;QACd,UAAU;QACV,SAAS;QACT,SAAS;QACT,mBAAmB;QACnB,WAAW;QACX,OAAO;QACP,gBAAgB;KACjB,CAAC;SACD,QAAQ,EAAE;SACV,QAAQ,EAAE;IACb,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACvD,CAAC,CAAC"}
@@ -4,37 +4,61 @@
4
4
  import { z } from 'zod';
5
5
  /**
6
6
  * Project schema
7
+ *
8
+ * Response field set taken from the 2026-07-01 reference; the verification
9
+ * tenant has no projects, so it could not be checked against a live record.
7
10
  */
8
11
  export declare const ProjectSchema: z.ZodObject<{
9
- id: z.ZodNumber;
12
+ id: z.ZodString;
10
13
  name: z.ZodString;
11
14
  code: z.ZodNullable<z.ZodString>;
12
15
  description: z.ZodNullable<z.ZodString>;
13
- status: z.ZodNullable<z.ZodEnum<["active", "inactive", "archived"]>>;
14
- employees_assignment: z.ZodNullable<z.ZodEnum<["manual", "company"]>>;
15
- company_id: z.ZodNullable<z.ZodNumber>;
16
- created_at: z.ZodNullable<z.ZodString>;
17
- updated_at: z.ZodNullable<z.ZodString>;
16
+ status: z.ZodEnum<["active", "closed", "draft", "processing"]>;
17
+ employees_assignment: z.ZodEnum<["manual", "company"]>;
18
+ legal_entity_id: z.ZodOptional<z.ZodString>;
19
+ client_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
20
+ start_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
21
+ due_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
22
+ is_billable: z.ZodOptional<z.ZodBoolean>;
23
+ inputed_minutes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
24
+ fixed_cost_cents: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
25
+ labor_cost_cents: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
26
+ spending_cost_cents: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
27
+ total_cost_cents: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
18
28
  }, "strip", z.ZodTypeAny, {
19
29
  code: string | null;
20
- status: "active" | "inactive" | "archived" | null;
21
- id: number;
22
- company_id: number | null;
23
- created_at: string | null;
24
- updated_at: string | null;
30
+ status: "active" | "closed" | "draft" | "processing";
31
+ id: string;
25
32
  name: string;
26
33
  description: string | null;
27
- employees_assignment: "manual" | "company" | null;
34
+ employees_assignment: "manual" | "company";
35
+ legal_entity_id?: string | undefined;
36
+ start_date?: string | null | undefined;
37
+ client_id?: string | null | undefined;
38
+ due_date?: string | null | undefined;
39
+ is_billable?: boolean | undefined;
40
+ inputed_minutes?: number | null | undefined;
41
+ fixed_cost_cents?: number | null | undefined;
42
+ labor_cost_cents?: number | null | undefined;
43
+ spending_cost_cents?: number | null | undefined;
44
+ total_cost_cents?: number | null | undefined;
28
45
  }, {
29
46
  code: string | null;
30
- status: "active" | "inactive" | "archived" | null;
31
- id: number;
32
- company_id: number | null;
33
- created_at: string | null;
34
- updated_at: string | null;
47
+ status: "active" | "closed" | "draft" | "processing";
48
+ id: string;
35
49
  name: string;
36
50
  description: string | null;
37
- employees_assignment: "manual" | "company" | null;
51
+ employees_assignment: "manual" | "company";
52
+ legal_entity_id?: string | undefined;
53
+ start_date?: string | null | undefined;
54
+ client_id?: string | null | undefined;
55
+ due_date?: string | null | undefined;
56
+ is_billable?: boolean | undefined;
57
+ inputed_minutes?: number | null | undefined;
58
+ fixed_cost_cents?: number | null | undefined;
59
+ labor_cost_cents?: number | null | undefined;
60
+ spending_cost_cents?: number | null | undefined;
61
+ total_cost_cents?: number | null | undefined;
38
62
  }>;
39
63
  export type Project = z.infer<typeof ProjectSchema>;
40
64
  /**
@@ -69,13 +93,13 @@ export declare const UpdateProjectInputSchema: z.ZodObject<{
69
93
  status: z.ZodOptional<z.ZodEnum<["active", "inactive", "archived"]>>;
70
94
  }, "strip", z.ZodTypeAny, {
71
95
  code?: string | undefined;
72
- status?: "active" | "inactive" | "archived" | undefined;
96
+ status?: "active" | "archived" | "inactive" | undefined;
73
97
  name?: string | undefined;
74
98
  description?: string | undefined;
75
99
  employees_assignment?: "manual" | "company" | undefined;
76
100
  }, {
77
101
  code?: string | undefined;
78
- status?: "active" | "inactive" | "archived" | undefined;
102
+ status?: "active" | "archived" | "inactive" | undefined;
79
103
  name?: string | undefined;
80
104
  description?: string | undefined;
81
105
  employees_assignment?: "manual" | "company" | undefined;
@@ -83,40 +107,30 @@ export declare const UpdateProjectInputSchema: z.ZodObject<{
83
107
  export type UpdateProjectInput = z.infer<typeof UpdateProjectInputSchema>;
84
108
  /**
85
109
  * Project Task schema
110
+ *
111
+ * A project task links a project (or subproject) to a task in the tasks
112
+ * module; the task's own name, description and due date live on that task.
113
+ * Response field set taken from the 2026-07-01 reference; the verification
114
+ * tenant has no project tasks, so it could not be checked against a live record.
86
115
  */
87
116
  export declare const ProjectTaskSchema: z.ZodObject<{
88
- id: z.ZodNumber;
89
- name: z.ZodString;
90
- project_id: z.ZodNumber;
91
- subproject_id: z.ZodNullable<z.ZodNumber>;
92
- description: z.ZodNullable<z.ZodString>;
93
- completed: z.ZodDefault<z.ZodBoolean>;
94
- due_on: z.ZodNullable<z.ZodString>;
95
- due_status: z.ZodNullable<z.ZodString>;
96
- created_at: z.ZodNullable<z.ZodString>;
97
- updated_at: z.ZodNullable<z.ZodString>;
117
+ id: z.ZodString;
118
+ project_id: z.ZodString;
119
+ subproject_id: z.ZodNullable<z.ZodString>;
120
+ task_id: z.ZodString;
121
+ follow_up: z.ZodBoolean;
98
122
  }, "strip", z.ZodTypeAny, {
99
- id: number;
100
- created_at: string | null;
101
- updated_at: string | null;
102
- name: string;
103
- description: string | null;
104
- project_id: number;
105
- subproject_id: number | null;
106
- completed: boolean;
107
- due_on: string | null;
108
- due_status: string | null;
123
+ id: string;
124
+ project_id: string;
125
+ subproject_id: string | null;
126
+ task_id: string;
127
+ follow_up: boolean;
109
128
  }, {
110
- id: number;
111
- created_at: string | null;
112
- updated_at: string | null;
113
- name: string;
114
- description: string | null;
115
- project_id: number;
116
- subproject_id: number | null;
117
- due_on: string | null;
118
- due_status: string | null;
119
- completed?: boolean | undefined;
129
+ id: string;
130
+ project_id: string;
131
+ subproject_id: string | null;
132
+ task_id: string;
133
+ follow_up: boolean;
120
134
  }>;
121
135
  export type ProjectTask = z.infer<typeof ProjectTaskSchema>;
122
136
  /**
@@ -163,28 +177,37 @@ export declare const UpdateProjectTaskInputSchema: z.ZodObject<Omit<{
163
177
  export type UpdateProjectTaskInput = z.infer<typeof UpdateProjectTaskInputSchema>;
164
178
  /**
165
179
  * Project Worker schema
180
+ *
181
+ * Response field set taken from the 2026-07-01 reference; the verification
182
+ * tenant has no project workers, so it could not be checked against a live record.
166
183
  */
167
184
  export declare const ProjectWorkerSchema: z.ZodObject<{
168
- id: z.ZodNumber;
169
- project_id: z.ZodNumber;
170
- employee_id: z.ZodNumber;
171
- company_labor_cost_cents: z.ZodNullable<z.ZodNumber>;
172
- created_at: z.ZodNullable<z.ZodString>;
173
- updated_at: z.ZodNullable<z.ZodString>;
185
+ id: z.ZodString;
186
+ project_id: z.ZodString;
187
+ employee_id: z.ZodString;
188
+ assigned: z.ZodOptional<z.ZodBoolean>;
189
+ inputed_minutes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
190
+ labor_cost_cents: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
191
+ company_labor_cost_cents: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
192
+ spending_cost_cents: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
174
193
  }, "strip", z.ZodTypeAny, {
175
- id: number;
176
- created_at: string | null;
177
- updated_at: string | null;
178
- employee_id: number;
179
- project_id: number;
180
- company_labor_cost_cents: number | null;
194
+ id: string;
195
+ employee_id: string;
196
+ project_id: string;
197
+ inputed_minutes?: number | null | undefined;
198
+ labor_cost_cents?: number | null | undefined;
199
+ spending_cost_cents?: number | null | undefined;
200
+ assigned?: boolean | undefined;
201
+ company_labor_cost_cents?: number | null | undefined;
181
202
  }, {
182
- id: number;
183
- created_at: string | null;
184
- updated_at: string | null;
185
- employee_id: number;
186
- project_id: number;
187
- company_labor_cost_cents: number | null;
203
+ id: string;
204
+ employee_id: string;
205
+ project_id: string;
206
+ inputed_minutes?: number | null | undefined;
207
+ labor_cost_cents?: number | null | undefined;
208
+ spending_cost_cents?: number | null | undefined;
209
+ assigned?: boolean | undefined;
210
+ company_labor_cost_cents?: number | null | undefined;
188
211
  }>;
189
212
  export type ProjectWorker = z.infer<typeof ProjectWorkerSchema>;
190
213
  /**
@@ -203,37 +226,40 @@ export declare const AssignProjectWorkerInputSchema: z.ZodObject<{
203
226
  export type AssignProjectWorkerInput = z.infer<typeof AssignProjectWorkerInputSchema>;
204
227
  /**
205
228
  * Time Record schema
229
+ *
230
+ * Response field set taken from the 2026-07-01 reference; the verification
231
+ * tenant has no time records, so it could not be checked against a live record.
206
232
  */
207
233
  export declare const TimeRecordSchema: z.ZodObject<{
208
- id: z.ZodNumber;
209
- project_worker_id: z.ZodNumber;
210
- subproject_id: z.ZodNullable<z.ZodNumber>;
211
- attendance_shift_id: z.ZodNullable<z.ZodNumber>;
212
- minutes: z.ZodNumber;
213
- date: z.ZodString;
214
- description: z.ZodNullable<z.ZodString>;
215
- created_at: z.ZodNullable<z.ZodString>;
216
- updated_at: z.ZodNullable<z.ZodString>;
234
+ id: z.ZodString;
235
+ project_worker_id: z.ZodString;
236
+ subproject_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
237
+ attendance_shift_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
238
+ date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
239
+ imputed_minutes: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
240
+ clock_in: z.ZodOptional<z.ZodNullable<z.ZodString>>;
241
+ clock_out: z.ZodOptional<z.ZodNullable<z.ZodString>>;
242
+ observations: z.ZodOptional<z.ZodNullable<z.ZodString>>;
217
243
  }, "strip", z.ZodTypeAny, {
218
- date: string;
219
- id: number;
220
- created_at: string | null;
221
- updated_at: string | null;
222
- description: string | null;
223
- subproject_id: number | null;
224
- project_worker_id: number;
225
- attendance_shift_id: number | null;
226
- minutes: number;
244
+ id: string;
245
+ project_worker_id: string;
246
+ date?: string | null | undefined;
247
+ clock_in?: string | null | undefined;
248
+ clock_out?: string | null | undefined;
249
+ subproject_id?: string | null | undefined;
250
+ attendance_shift_id?: string | null | undefined;
251
+ imputed_minutes?: number | null | undefined;
252
+ observations?: string | null | undefined;
227
253
  }, {
228
- date: string;
229
- id: number;
230
- created_at: string | null;
231
- updated_at: string | null;
232
- description: string | null;
233
- subproject_id: number | null;
234
- project_worker_id: number;
235
- attendance_shift_id: number | null;
236
- minutes: number;
254
+ id: string;
255
+ project_worker_id: string;
256
+ date?: string | null | undefined;
257
+ clock_in?: string | null | undefined;
258
+ clock_out?: string | null | undefined;
259
+ subproject_id?: string | null | undefined;
260
+ attendance_shift_id?: string | null | undefined;
261
+ imputed_minutes?: number | null | undefined;
262
+ observations?: string | null | undefined;
237
263
  }>;
238
264
  export type TimeRecord = z.infer<typeof TimeRecordSchema>;
239
265
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/schemas/projects.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUxB,CAAC;AAEH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;EAKnC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;EAEnC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;EAKvC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAElF;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;EAIrC,CAAC;AAEL,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAElF;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAO9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,8BAA8B;;;;;;;;;EAGzC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;EAKtC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;EAEtC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
1
+ {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/schemas/projects.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;GAKG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiBxB,CAAC;AAEH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;EAKnC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;EAEnC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;EAM5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;EAKvC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAElF;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;EAIrC,CAAC;AAEL,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAElF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,8BAA8B;;;;;;;;;EAGzC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;EAKtC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;EAEtC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
@@ -2,20 +2,30 @@
2
2
  * Project Management schemas: Project, ProjectTask, ProjectWorker, TimeRecord
3
3
  */
4
4
  import { z } from 'zod';
5
- import { dateString } from './shared.js';
5
+ import { dateString, resourceId } from './shared.js';
6
6
  /**
7
7
  * Project schema
8
+ *
9
+ * Response field set taken from the 2026-07-01 reference; the verification
10
+ * tenant has no projects, so it could not be checked against a live record.
8
11
  */
9
12
  export const ProjectSchema = z.object({
10
- id: z.number(),
13
+ id: resourceId,
11
14
  name: z.string(),
12
15
  code: z.string().nullable(),
13
16
  description: z.string().nullable(),
14
- status: z.enum(['active', 'inactive', 'archived']).nullable(),
15
- employees_assignment: z.enum(['manual', 'company']).nullable(),
16
- company_id: z.number().nullable(),
17
- created_at: z.string().nullable(),
18
- updated_at: z.string().nullable(),
17
+ status: z.enum(['active', 'closed', 'draft', 'processing']),
18
+ employees_assignment: z.enum(['manual', 'company']),
19
+ legal_entity_id: resourceId.optional(),
20
+ client_id: resourceId.nullable().optional(),
21
+ start_date: z.string().nullable().optional(),
22
+ due_date: z.string().nullable().optional(),
23
+ is_billable: z.boolean().optional(),
24
+ inputed_minutes: z.number().nullable().optional(),
25
+ fixed_cost_cents: z.number().nullable().optional(),
26
+ labor_cost_cents: z.number().nullable().optional(),
27
+ spending_cost_cents: z.number().nullable().optional(),
28
+ total_cost_cents: z.number().nullable().optional(),
19
29
  });
20
30
  /**
21
31
  * Project create input schema
@@ -34,18 +44,18 @@ export const UpdateProjectInputSchema = CreateProjectInputSchema.partial().exten
34
44
  });
35
45
  /**
36
46
  * Project Task schema
47
+ *
48
+ * A project task links a project (or subproject) to a task in the tasks
49
+ * module; the task's own name, description and due date live on that task.
50
+ * Response field set taken from the 2026-07-01 reference; the verification
51
+ * tenant has no project tasks, so it could not be checked against a live record.
37
52
  */
38
53
  export const ProjectTaskSchema = z.object({
39
- id: z.number(),
40
- name: z.string(),
41
- project_id: z.number(),
42
- subproject_id: z.number().nullable(),
43
- description: z.string().nullable(),
44
- completed: z.boolean().default(false),
45
- due_on: z.string().nullable(),
46
- due_status: z.string().nullable(),
47
- created_at: z.string().nullable(),
48
- updated_at: z.string().nullable(),
54
+ id: resourceId,
55
+ project_id: resourceId,
56
+ subproject_id: resourceId.nullable(),
57
+ task_id: resourceId,
58
+ follow_up: z.boolean(),
49
59
  });
50
60
  /**
51
61
  * Project Task create input schema
@@ -66,14 +76,19 @@ export const UpdateProjectTaskInputSchema = CreateProjectTaskInputSchema.partial
66
76
  });
67
77
  /**
68
78
  * Project Worker schema
79
+ *
80
+ * Response field set taken from the 2026-07-01 reference; the verification
81
+ * tenant has no project workers, so it could not be checked against a live record.
69
82
  */
70
83
  export const ProjectWorkerSchema = z.object({
71
- id: z.number(),
72
- project_id: z.number(),
73
- employee_id: z.number(),
74
- company_labor_cost_cents: z.number().nullable(),
75
- created_at: z.string().nullable(),
76
- updated_at: z.string().nullable(),
84
+ id: resourceId,
85
+ project_id: resourceId,
86
+ employee_id: resourceId,
87
+ assigned: z.boolean().optional(),
88
+ inputed_minutes: z.number().nullable().optional(),
89
+ labor_cost_cents: z.number().nullable().optional(),
90
+ company_labor_cost_cents: z.number().nullable().optional(),
91
+ spending_cost_cents: z.number().nullable().optional(),
77
92
  });
78
93
  /**
79
94
  * Project Worker assign input schema
@@ -84,17 +99,21 @@ export const AssignProjectWorkerInputSchema = z.object({
84
99
  });
85
100
  /**
86
101
  * Time Record schema
102
+ *
103
+ * Response field set taken from the 2026-07-01 reference; the verification
104
+ * tenant has no time records, so it could not be checked against a live record.
87
105
  */
88
106
  export const TimeRecordSchema = z.object({
89
- id: z.number(),
90
- project_worker_id: z.number(),
91
- subproject_id: z.number().nullable(),
92
- attendance_shift_id: z.number().nullable(),
93
- minutes: z.number(),
94
- date: z.string(),
95
- description: z.string().nullable(),
96
- created_at: z.string().nullable(),
97
- updated_at: z.string().nullable(),
107
+ id: resourceId,
108
+ project_worker_id: resourceId,
109
+ subproject_id: resourceId.nullable().optional(),
110
+ attendance_shift_id: resourceId.nullable().optional(),
111
+ date: z.string().nullable().optional(),
112
+ imputed_minutes: z.number().nullable().optional(),
113
+ clock_in: z.string().nullable().optional(),
114
+ clock_out: z.string().nullable().optional(),
115
+ // Added in API 2026-07-01: comment for the time record
116
+ observations: z.string().nullable().optional(),
98
117
  });
99
118
  /**
100
119
  * Time Record create input schema
@@ -1 +1 @@
1
- {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/schemas/projects.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/schemas/projects.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,19 @@
2
2
  * Shared schema utilities and validation helpers
3
3
  */
4
4
  import { z } from 'zod';
5
+ /**
6
+ * Resource identifier.
7
+ *
8
+ * Since API version 2026-07-01 every `id` and `*_id` field is serialised as a
9
+ * string, in responses as well as in request parameters and webhook payloads,
10
+ * because identifiers have outgrown the range a JSON number can carry without
11
+ * precision loss. Records created before the migration keep their old value
12
+ * with the new type (3243 becomes "3243"); new records get large values.
13
+ * Treat identifiers as opaque strings: never parse them, compare them
14
+ * numerically or do arithmetic on them.
15
+ * See https://apidoc.factorialhr.com/changelog/string-migration-of-resource-identifiers
16
+ */
17
+ export declare const resourceId: z.ZodString;
5
18
  /**
6
19
  * Date string validator - validates YYYY-MM-DD format
7
20
  */
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/schemas/shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB;;GAEG;AACH,eAAO,MAAM,UAAU,aAAqE,CAAC;AAE7F;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC;;;;;;kEAI5E;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC;;;;;;GAIhF;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,CAOzF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,GAAG,SAAS,CAGrF;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,EAAE,CAYhG"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/schemas/shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,UAAU,aAAa,CAAC;AAOrC;;GAEG;AACH,eAAO,MAAM,UAAU,aAAqE,CAAC;AAE7F;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC;;;;;;kEAI5E;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC;;;;;;GAIhF;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,CAOzF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,GAAG,SAAS,CAGrF;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,EAAE,CAYhG"}
@@ -3,6 +3,19 @@
3
3
  */
4
4
  import { z } from 'zod';
5
5
  import { SchemaValidationError } from '../errors.js';
6
+ /**
7
+ * Resource identifier.
8
+ *
9
+ * Since API version 2026-07-01 every `id` and `*_id` field is serialised as a
10
+ * string, in responses as well as in request parameters and webhook payloads,
11
+ * because identifiers have outgrown the range a JSON number can carry without
12
+ * precision loss. Records created before the migration keep their old value
13
+ * with the new type (3243 becomes "3243"); new records get large values.
14
+ * Treat identifiers as opaque strings: never parse them, compare them
15
+ * numerically or do arithmetic on them.
16
+ * See https://apidoc.factorialhr.com/changelog/string-migration-of-resource-identifiers
17
+ */
18
+ export const resourceId = z.string();
6
19
  /**
7
20
  * Date string pattern (YYYY-MM-DD)
8
21
  */
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/schemas/shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,GAAG,qBAAqB,CAAC;AAE1C;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,mCAAmC,CAAC,CAAC;AAE7F;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAyB,UAAa;IAC3E,OAAO,CAAC,CAAC,MAAM,CAAC;QACd,IAAI,EAAE,UAAU;KACjB,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CAAyB,UAAa;IAC/E,OAAO,CAAC,CAAC,MAAM,CAAC;QACd,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;KAC1B,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAI,UAAkB,EAAE,MAAsB,EAAE,IAAa;IACpF,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5F,MAAM,IAAI,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAI,MAAsB,EAAE,IAAa;IACpE,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACtC,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAI,UAAkB,EAAE,UAA0B,EAAE,IAAa;IACzF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,qBAAqB,CAAC,UAAU,EAAE,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC9B,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5F,MAAM,IAAI,qBAAqB,CAAC,GAAG,UAAU,IAAI,KAAK,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/schemas/shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAErD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;AAErC;;GAEG;AACH,MAAM,WAAW,GAAG,qBAAqB,CAAC;AAE1C;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,mCAAmC,CAAC,CAAC;AAE7F;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAyB,UAAa;IAC3E,OAAO,CAAC,CAAC,MAAM,CAAC;QACd,IAAI,EAAE,UAAU;KACjB,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CAAyB,UAAa;IAC/E,OAAO,CAAC,CAAC,MAAM,CAAC;QACd,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;KAC1B,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAI,UAAkB,EAAE,MAAsB,EAAE,IAAa;IACpF,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5F,MAAM,IAAI,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAI,MAAsB,EAAE,IAAa;IACpE,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACtC,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAI,UAAkB,EAAE,UAA0B,EAAE,IAAa;IACzF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,qBAAqB,CAAC,UAAU,EAAE,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC9B,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5F,MAAM,IAAI,qBAAqB,CAAC,GAAG,UAAU,IAAI,KAAK,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC,CAAC,CAAC;AACL,CAAC"}