boondmanager-mcp-server 2.3.0 → 2.5.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.
- package/README.md +20 -1
- package/dist/config/dictionary-overrides.d.ts +57 -0
- package/dist/config/dictionary-overrides.d.ts.map +1 -0
- package/dist/config/dictionary-overrides.js +193 -0
- package/dist/config/dictionary-overrides.js.map +1 -0
- package/dist/constants.d.ts +3 -1
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +7 -0
- package/dist/constants.js.map +1 -1
- package/dist/resources/index.d.ts.map +1 -1
- package/dist/resources/index.js +25 -0
- package/dist/resources/index.js.map +1 -1
- package/dist/schemas/index.d.ts +64 -13
- package/dist/schemas/index.d.ts.map +1 -1
- package/dist/schemas/index.js +144 -20
- package/dist/schemas/index.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +2 -1
- package/dist/server.js.map +1 -1
- package/dist/services/boond-client.d.ts +34 -1
- package/dist/services/boond-client.d.ts.map +1 -1
- package/dist/services/boond-client.js +156 -4
- package/dist/services/boond-client.js.map +1 -1
- package/dist/tools/absences.d.ts.map +1 -1
- package/dist/tools/absences.js +12 -20
- package/dist/tools/absences.js.map +1 -1
- package/dist/tools/actions.d.ts.map +1 -1
- package/dist/tools/actions.js +63 -19
- package/dist/tools/actions.js.map +1 -1
- package/dist/tools/candidates.js +2 -2
- package/dist/tools/candidates.js.map +1 -1
- package/dist/tools/companies.js +2 -2
- package/dist/tools/companies.js.map +1 -1
- package/dist/tools/contacts.js +2 -2
- package/dist/tools/contacts.js.map +1 -1
- package/dist/tools/crud-factory.d.ts +40 -2
- package/dist/tools/crud-factory.d.ts.map +1 -1
- package/dist/tools/crud-factory.js +164 -16
- package/dist/tools/crud-factory.js.map +1 -1
- package/dist/tools/documents.d.ts +3 -0
- package/dist/tools/documents.d.ts.map +1 -0
- package/dist/tools/documents.js +118 -0
- package/dist/tools/documents.js.map +1 -0
- package/dist/tools/expenses.d.ts.map +1 -1
- package/dist/tools/expenses.js +17 -20
- package/dist/tools/expenses.js.map +1 -1
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +1 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/invoices.d.ts.map +1 -1
- package/dist/tools/invoices.js +12 -20
- package/dist/tools/invoices.js.map +1 -1
- package/dist/tools/opportunities.d.ts.map +1 -1
- package/dist/tools/opportunities.js +3 -3
- package/dist/tools/opportunities.js.map +1 -1
- package/dist/tools/orders.d.ts.map +1 -1
- package/dist/tools/orders.js +12 -20
- package/dist/tools/orders.js.map +1 -1
- package/dist/tools/positionings.d.ts.map +1 -1
- package/dist/tools/positionings.js +81 -16
- package/dist/tools/positionings.js.map +1 -1
- package/dist/tools/projects.js +2 -2
- package/dist/tools/projects.js.map +1 -1
- package/dist/tools/purchases.d.ts.map +1 -1
- package/dist/tools/purchases.js +16 -21
- package/dist/tools/purchases.js.map +1 -1
- package/dist/tools/resources.d.ts.map +1 -1
- package/dist/tools/resources.js +14 -3
- package/dist/tools/resources.js.map +1 -1
- package/dist/transports/http.d.ts.map +1 -1
- package/dist/transports/http.js +15 -0
- package/dist/transports/http.js.map +1 -1
- package/manifest.json +18 -3
- package/package.json +2 -2
package/dist/schemas/index.d.ts
CHANGED
|
@@ -64,6 +64,7 @@ export declare const ResourceSearchSchema: z.ZodObject<{
|
|
|
64
64
|
}>>;
|
|
65
65
|
page: z.ZodDefault<z.ZodNumber>;
|
|
66
66
|
pageSize: z.ZodDefault<z.ZodNumber>;
|
|
67
|
+
fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
67
68
|
}, z.core.$strict>;
|
|
68
69
|
export declare const CandidateSearchSchema: z.ZodObject<{
|
|
69
70
|
keywords: z.ZodOptional<z.ZodString>;
|
|
@@ -130,6 +131,7 @@ export declare const CandidateSearchSchema: z.ZodObject<{
|
|
|
130
131
|
}>>;
|
|
131
132
|
page: z.ZodDefault<z.ZodNumber>;
|
|
132
133
|
pageSize: z.ZodDefault<z.ZodNumber>;
|
|
134
|
+
fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
133
135
|
}, z.core.$strict>;
|
|
134
136
|
export declare const ContactSearchSchema: z.ZodObject<{
|
|
135
137
|
keywords: z.ZodOptional<z.ZodString>;
|
|
@@ -181,6 +183,7 @@ export declare const ContactSearchSchema: z.ZodObject<{
|
|
|
181
183
|
}>>;
|
|
182
184
|
page: z.ZodDefault<z.ZodNumber>;
|
|
183
185
|
pageSize: z.ZodDefault<z.ZodNumber>;
|
|
186
|
+
fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
184
187
|
}, z.core.$strict>;
|
|
185
188
|
export declare const CompanySearchSchema: z.ZodObject<{
|
|
186
189
|
keywords: z.ZodOptional<z.ZodString>;
|
|
@@ -223,6 +226,7 @@ export declare const CompanySearchSchema: z.ZodObject<{
|
|
|
223
226
|
}>>;
|
|
224
227
|
page: z.ZodDefault<z.ZodNumber>;
|
|
225
228
|
pageSize: z.ZodDefault<z.ZodNumber>;
|
|
229
|
+
fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
226
230
|
}, z.core.$strict>;
|
|
227
231
|
export declare const OpportunitySearchSchema: z.ZodObject<{
|
|
228
232
|
keywords: z.ZodOptional<z.ZodString>;
|
|
@@ -267,6 +271,7 @@ export declare const OpportunitySearchSchema: z.ZodObject<{
|
|
|
267
271
|
}>>;
|
|
268
272
|
page: z.ZodDefault<z.ZodNumber>;
|
|
269
273
|
pageSize: z.ZodDefault<z.ZodNumber>;
|
|
274
|
+
fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
270
275
|
}, z.core.$strict>;
|
|
271
276
|
export declare const ProjectSearchSchema: z.ZodObject<{
|
|
272
277
|
keywords: z.ZodOptional<z.ZodString>;
|
|
@@ -298,6 +303,7 @@ export declare const ProjectSearchSchema: z.ZodObject<{
|
|
|
298
303
|
}>>;
|
|
299
304
|
page: z.ZodDefault<z.ZodNumber>;
|
|
300
305
|
pageSize: z.ZodDefault<z.ZodNumber>;
|
|
306
|
+
fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
301
307
|
}, z.core.$strict>;
|
|
302
308
|
export declare const EntityIdSchema: z.ZodString;
|
|
303
309
|
export declare const IdSchema: z.ZodObject<{
|
|
@@ -307,6 +313,7 @@ export declare const IdTabSchema: z.ZodObject<{
|
|
|
307
313
|
id: z.ZodString;
|
|
308
314
|
tab: z.ZodOptional<z.ZodString>;
|
|
309
315
|
}, z.core.$strict>;
|
|
316
|
+
export declare const stateField: (entity: string, baseDescription: string) => z.ZodOptional<z.ZodPreprocess<z.ZodCoercedNumber<unknown>>>;
|
|
310
317
|
export declare const CandidateCreateSchema: z.ZodObject<{
|
|
311
318
|
firstName: z.ZodString;
|
|
312
319
|
lastName: z.ZodString;
|
|
@@ -315,10 +322,19 @@ export declare const CandidateCreateSchema: z.ZodObject<{
|
|
|
315
322
|
city: z.ZodOptional<z.ZodString>;
|
|
316
323
|
country: z.ZodOptional<z.ZodString>;
|
|
317
324
|
title: z.ZodOptional<z.ZodString>;
|
|
318
|
-
state: z.ZodOptional<z.
|
|
325
|
+
state: z.ZodOptional<z.ZodPreprocess<z.ZodCoercedNumber<unknown>>>;
|
|
319
326
|
mainSkills: z.ZodOptional<z.ZodString>;
|
|
320
327
|
note: z.ZodOptional<z.ZodString>;
|
|
321
328
|
}, z.core.$strict>;
|
|
329
|
+
export declare const PositioningUpdateSchema: z.ZodObject<{
|
|
330
|
+
id: z.ZodString;
|
|
331
|
+
state: z.ZodOptional<z.ZodNumber>;
|
|
332
|
+
stateReasonTypeOf: z.ZodOptional<z.ZodNumber>;
|
|
333
|
+
stateReasonDetail: z.ZodOptional<z.ZodString>;
|
|
334
|
+
startDate: z.ZodOptional<z.ZodString>;
|
|
335
|
+
endDate: z.ZodOptional<z.ZodString>;
|
|
336
|
+
informationComments: z.ZodOptional<z.ZodString>;
|
|
337
|
+
}, z.core.$strict>;
|
|
322
338
|
export declare const CandidateUpdateSchema: z.ZodObject<{
|
|
323
339
|
id: z.ZodString;
|
|
324
340
|
firstName: z.ZodOptional<z.ZodString>;
|
|
@@ -328,7 +344,7 @@ export declare const CandidateUpdateSchema: z.ZodObject<{
|
|
|
328
344
|
city: z.ZodOptional<z.ZodString>;
|
|
329
345
|
country: z.ZodOptional<z.ZodString>;
|
|
330
346
|
title: z.ZodOptional<z.ZodString>;
|
|
331
|
-
state: z.ZodOptional<z.
|
|
347
|
+
state: z.ZodOptional<z.ZodPreprocess<z.ZodCoercedNumber<unknown>>>;
|
|
332
348
|
mainSkills: z.ZodOptional<z.ZodString>;
|
|
333
349
|
note: z.ZodOptional<z.ZodString>;
|
|
334
350
|
}, z.core.$strict>;
|
|
@@ -340,7 +356,7 @@ export declare const ResourceCreateSchema: z.ZodObject<{
|
|
|
340
356
|
city: z.ZodOptional<z.ZodString>;
|
|
341
357
|
country: z.ZodOptional<z.ZodString>;
|
|
342
358
|
title: z.ZodOptional<z.ZodString>;
|
|
343
|
-
state: z.ZodOptional<z.
|
|
359
|
+
state: z.ZodOptional<z.ZodPreprocess<z.ZodCoercedNumber<unknown>>>;
|
|
344
360
|
note: z.ZodOptional<z.ZodString>;
|
|
345
361
|
}, z.core.$strict>;
|
|
346
362
|
export declare const ResourceUpdateSchema: z.ZodObject<{
|
|
@@ -352,14 +368,14 @@ export declare const ResourceUpdateSchema: z.ZodObject<{
|
|
|
352
368
|
city: z.ZodOptional<z.ZodString>;
|
|
353
369
|
country: z.ZodOptional<z.ZodString>;
|
|
354
370
|
title: z.ZodOptional<z.ZodString>;
|
|
355
|
-
state: z.ZodOptional<z.
|
|
371
|
+
state: z.ZodOptional<z.ZodPreprocess<z.ZodCoercedNumber<unknown>>>;
|
|
356
372
|
note: z.ZodOptional<z.ZodString>;
|
|
357
373
|
}, z.core.$strict>;
|
|
358
374
|
export declare const ResourceTechnicalDataUpdateSchema: z.ZodObject<{
|
|
359
375
|
id: z.ZodString;
|
|
360
376
|
mode: z.ZodDefault<z.ZodEnum<{
|
|
361
|
-
merge: "merge";
|
|
362
377
|
replace: "replace";
|
|
378
|
+
merge: "merge";
|
|
363
379
|
}>>;
|
|
364
380
|
title: z.ZodOptional<z.ZodString>;
|
|
365
381
|
summary: z.ZodOptional<z.ZodString>;
|
|
@@ -442,7 +458,7 @@ export declare const CompanyCreateSchema: z.ZodObject<{
|
|
|
442
458
|
country: z.ZodOptional<z.ZodString>;
|
|
443
459
|
website: z.ZodOptional<z.ZodString>;
|
|
444
460
|
siret: z.ZodOptional<z.ZodString>;
|
|
445
|
-
state: z.ZodOptional<z.
|
|
461
|
+
state: z.ZodOptional<z.ZodPreprocess<z.ZodCoercedNumber<unknown>>>;
|
|
446
462
|
note: z.ZodOptional<z.ZodString>;
|
|
447
463
|
}, z.core.$strict>;
|
|
448
464
|
export declare const CompanyUpdateSchema: z.ZodObject<{
|
|
@@ -454,14 +470,14 @@ export declare const CompanyUpdateSchema: z.ZodObject<{
|
|
|
454
470
|
country: z.ZodOptional<z.ZodString>;
|
|
455
471
|
website: z.ZodOptional<z.ZodString>;
|
|
456
472
|
siret: z.ZodOptional<z.ZodString>;
|
|
457
|
-
state: z.ZodOptional<z.
|
|
473
|
+
state: z.ZodOptional<z.ZodPreprocess<z.ZodCoercedNumber<unknown>>>;
|
|
458
474
|
note: z.ZodOptional<z.ZodString>;
|
|
459
475
|
}, z.core.$strict>;
|
|
460
476
|
export declare const OpportunityCreateSchema: z.ZodObject<{
|
|
461
477
|
name: z.ZodString;
|
|
462
478
|
companyId: z.ZodOptional<z.ZodString>;
|
|
463
479
|
contactId: z.ZodOptional<z.ZodString>;
|
|
464
|
-
state: z.ZodOptional<z.
|
|
480
|
+
state: z.ZodOptional<z.ZodPreprocess<z.ZodCoercedNumber<unknown>>>;
|
|
465
481
|
startDate: z.ZodOptional<z.ZodString>;
|
|
466
482
|
endDate: z.ZodOptional<z.ZodString>;
|
|
467
483
|
note: z.ZodOptional<z.ZodString>;
|
|
@@ -469,7 +485,7 @@ export declare const OpportunityCreateSchema: z.ZodObject<{
|
|
|
469
485
|
export declare const OpportunityUpdateSchema: z.ZodObject<{
|
|
470
486
|
id: z.ZodString;
|
|
471
487
|
name: z.ZodOptional<z.ZodString>;
|
|
472
|
-
state: z.ZodOptional<z.
|
|
488
|
+
state: z.ZodOptional<z.ZodPreprocess<z.ZodCoercedNumber<unknown>>>;
|
|
473
489
|
startDate: z.ZodOptional<z.ZodString>;
|
|
474
490
|
endDate: z.ZodOptional<z.ZodString>;
|
|
475
491
|
note: z.ZodOptional<z.ZodString>;
|
|
@@ -484,7 +500,7 @@ export declare const ActionSearchSchema: z.ZodObject<{
|
|
|
484
500
|
pageSize: z.ZodDefault<z.ZodNumber>;
|
|
485
501
|
}, z.core.$strict>;
|
|
486
502
|
export declare const ActionCreateSchema: z.ZodObject<{
|
|
487
|
-
typeOf: z.ZodCoercedNumber<unknown>;
|
|
503
|
+
typeOf: z.ZodUnion<readonly [z.ZodCoercedNumber<unknown>, z.ZodString]>;
|
|
488
504
|
title: z.ZodOptional<z.ZodString>;
|
|
489
505
|
text: z.ZodOptional<z.ZodString>;
|
|
490
506
|
startDate: z.ZodOptional<z.ZodString>;
|
|
@@ -495,6 +511,7 @@ export declare const ActionCreateSchema: z.ZodObject<{
|
|
|
495
511
|
opportunityId: z.ZodOptional<z.ZodString>;
|
|
496
512
|
projectId: z.ZodOptional<z.ZodString>;
|
|
497
513
|
companyId: z.ZodOptional<z.ZodString>;
|
|
514
|
+
positioningId: z.ZodOptional<z.ZodString>;
|
|
498
515
|
}, z.core.$strict>;
|
|
499
516
|
export declare const ResourceTimesheetSchema: z.ZodObject<{
|
|
500
517
|
resourceId: z.ZodString;
|
|
@@ -516,7 +533,7 @@ export declare const ProjectCreateSchema: z.ZodObject<{
|
|
|
516
533
|
companyId: z.ZodOptional<z.ZodString>;
|
|
517
534
|
contactId: z.ZodOptional<z.ZodString>;
|
|
518
535
|
opportunityId: z.ZodOptional<z.ZodString>;
|
|
519
|
-
state: z.ZodOptional<z.
|
|
536
|
+
state: z.ZodOptional<z.ZodPreprocess<z.ZodCoercedNumber<unknown>>>;
|
|
520
537
|
startDate: z.ZodOptional<z.ZodString>;
|
|
521
538
|
endDate: z.ZodOptional<z.ZodString>;
|
|
522
539
|
note: z.ZodOptional<z.ZodString>;
|
|
@@ -524,7 +541,7 @@ export declare const ProjectCreateSchema: z.ZodObject<{
|
|
|
524
541
|
export declare const ProjectUpdateSchema: z.ZodObject<{
|
|
525
542
|
id: z.ZodString;
|
|
526
543
|
name: z.ZodOptional<z.ZodString>;
|
|
527
|
-
state: z.ZodOptional<z.
|
|
544
|
+
state: z.ZodOptional<z.ZodPreprocess<z.ZodCoercedNumber<unknown>>>;
|
|
528
545
|
startDate: z.ZodOptional<z.ZodString>;
|
|
529
546
|
endDate: z.ZodOptional<z.ZodString>;
|
|
530
547
|
note: z.ZodOptional<z.ZodString>;
|
|
@@ -672,8 +689,10 @@ export declare const PositioningSearchSchema: z.ZodObject<{
|
|
|
672
689
|
keywords: z.ZodOptional<z.ZodString>;
|
|
673
690
|
candidateId: z.ZodOptional<z.ZodString>;
|
|
674
691
|
resourceId: z.ZodOptional<z.ZodString>;
|
|
675
|
-
projectId: z.ZodOptional<z.ZodString>;
|
|
676
692
|
opportunityId: z.ZodOptional<z.ZodString>;
|
|
693
|
+
companyId: z.ZodOptional<z.ZodString>;
|
|
694
|
+
contactId: z.ZodOptional<z.ZodString>;
|
|
695
|
+
productId: z.ZodOptional<z.ZodString>;
|
|
677
696
|
page: z.ZodDefault<z.ZodNumber>;
|
|
678
697
|
pageSize: z.ZodDefault<z.ZodNumber>;
|
|
679
698
|
}, z.core.$strict>;
|
|
@@ -742,6 +761,37 @@ export declare const ReportingDateOptionalSchema: z.ZodObject<{
|
|
|
742
761
|
export declare const DictionaryGetSchema: z.ZodObject<{
|
|
743
762
|
dictionaryType: z.ZodString;
|
|
744
763
|
}, z.core.$strict>;
|
|
764
|
+
export declare const DocumentParentTypes: readonly ["action", "resourceResume", "candidateResume", "resource", "candidate", "expensesReport", "timesReport", "absencesReport", "payment", "company", "project", "order", "product", "purchase", "delivery", "groupment", "inactivity", "positioning", "followeddocument", "appentity", "contract", "invoice", "providerinvoice"];
|
|
765
|
+
export declare const DocumentCreateSchema: z.ZodObject<{
|
|
766
|
+
parentType: z.ZodEnum<{
|
|
767
|
+
resource: "resource";
|
|
768
|
+
candidate: "candidate";
|
|
769
|
+
project: "project";
|
|
770
|
+
company: "company";
|
|
771
|
+
positioning: "positioning";
|
|
772
|
+
product: "product";
|
|
773
|
+
invoice: "invoice";
|
|
774
|
+
order: "order";
|
|
775
|
+
action: "action";
|
|
776
|
+
absencesReport: "absencesReport";
|
|
777
|
+
timesReport: "timesReport";
|
|
778
|
+
expensesReport: "expensesReport";
|
|
779
|
+
resourceResume: "resourceResume";
|
|
780
|
+
candidateResume: "candidateResume";
|
|
781
|
+
payment: "payment";
|
|
782
|
+
purchase: "purchase";
|
|
783
|
+
delivery: "delivery";
|
|
784
|
+
groupment: "groupment";
|
|
785
|
+
inactivity: "inactivity";
|
|
786
|
+
followeddocument: "followeddocument";
|
|
787
|
+
appentity: "appentity";
|
|
788
|
+
contract: "contract";
|
|
789
|
+
providerinvoice: "providerinvoice";
|
|
790
|
+
}>;
|
|
791
|
+
parentId: z.ZodNumber;
|
|
792
|
+
fileUrl: z.ZodString;
|
|
793
|
+
parsing: z.ZodOptional<z.ZodBoolean>;
|
|
794
|
+
}, z.core.$strict>;
|
|
745
795
|
export type SearchInput = z.infer<typeof SearchSchema>;
|
|
746
796
|
export type ResourceSearchInput = z.infer<typeof ResourceSearchSchema>;
|
|
747
797
|
export type CandidateSearchInput = z.infer<typeof CandidateSearchSchema>;
|
|
@@ -759,4 +809,5 @@ export type ResourceTechnicalDataUpdateInput = z.infer<typeof ResourceTechnicalD
|
|
|
759
809
|
export type ReferenceCreateInput = z.infer<typeof ReferenceCreateSchema>;
|
|
760
810
|
export type ReferenceUpdateInput = z.infer<typeof ReferenceUpdateSchema>;
|
|
761
811
|
export type ReferenceIdInput = z.infer<typeof ReferenceIdSchema>;
|
|
812
|
+
export type DocumentCreateInput = z.infer<typeof DocumentCreateSchema>;
|
|
762
813
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"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"}
|
package/dist/schemas/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { DEFAULT_PAGE_SIZE, MAX_PAGE_SIZE, MAX_SEARCH_PAGE } from "../constants.js";
|
|
3
|
+
import { appendOverridesToDescription, resolveLabel } from "../config/dictionary-overrides.js";
|
|
3
4
|
// Common search schema
|
|
4
5
|
export const SearchSchema = z
|
|
5
6
|
.object({
|
|
@@ -41,6 +42,12 @@ const pageSizeField = z
|
|
|
41
42
|
const sortField = z.string().optional().describe("Champ de tri (ex: lastName, firstName, updateDate)");
|
|
42
43
|
const orderField = z.enum(["asc", "desc"]).optional().describe("Ordre de tri (asc/desc)");
|
|
43
44
|
const intArray = (doc) => z.array(z.number().int()).optional().describe(doc);
|
|
45
|
+
const fieldsField = z
|
|
46
|
+
.array(z.string())
|
|
47
|
+
.optional()
|
|
48
|
+
.describe("Projection côté client : liste d'attributs JSON:API à afficher pour chaque résultat " +
|
|
49
|
+
"(ex: ['title', 'updateDate', 'numberOfActiveProjects']). Réduit fortement la taille de la réponse. " +
|
|
50
|
+
"Absent = résumé standard (nom, email, ville, statut...). Les noms inconnus sont ignorés.");
|
|
44
51
|
const strArray = (doc) => z.array(z.string()).optional().describe(doc);
|
|
45
52
|
// Shared "perimeter" filters available on every entity search (from RAML trait `searchable`).
|
|
46
53
|
// These are the CORRECT filters for "my team / my agency / my N-1" — NOT the old `mainManagers`.
|
|
@@ -150,6 +157,7 @@ export const ResourceSearchSchema = z
|
|
|
150
157
|
order: orderField,
|
|
151
158
|
page: pageField,
|
|
152
159
|
pageSize: pageSizeField,
|
|
160
|
+
fields: fieldsField,
|
|
153
161
|
})
|
|
154
162
|
.strict();
|
|
155
163
|
// ---- Candidate search schema ----
|
|
@@ -220,6 +228,7 @@ export const CandidateSearchSchema = z
|
|
|
220
228
|
order: orderField,
|
|
221
229
|
page: pageField,
|
|
222
230
|
pageSize: pageSizeField,
|
|
231
|
+
fields: fieldsField,
|
|
223
232
|
})
|
|
224
233
|
.strict();
|
|
225
234
|
// ---- Contact search schema ----
|
|
@@ -279,6 +288,7 @@ export const ContactSearchSchema = z
|
|
|
279
288
|
order: orderField,
|
|
280
289
|
page: pageField,
|
|
281
290
|
pageSize: pageSizeField,
|
|
291
|
+
fields: fieldsField,
|
|
282
292
|
})
|
|
283
293
|
.strict();
|
|
284
294
|
// ---- Company search schema ----
|
|
@@ -319,6 +329,7 @@ export const CompanySearchSchema = z
|
|
|
319
329
|
order: orderField,
|
|
320
330
|
page: pageField,
|
|
321
331
|
pageSize: pageSizeField,
|
|
332
|
+
fields: fieldsField,
|
|
322
333
|
})
|
|
323
334
|
.strict();
|
|
324
335
|
// ---- Opportunity search schema ----
|
|
@@ -367,6 +378,7 @@ export const OpportunitySearchSchema = z
|
|
|
367
378
|
order: orderField,
|
|
368
379
|
page: pageField,
|
|
369
380
|
pageSize: pageSizeField,
|
|
381
|
+
fields: fieldsField,
|
|
370
382
|
})
|
|
371
383
|
.strict();
|
|
372
384
|
// ---- Project search schema ----
|
|
@@ -401,6 +413,7 @@ export const ProjectSearchSchema = z
|
|
|
401
413
|
order: orderField,
|
|
402
414
|
page: pageField,
|
|
403
415
|
pageSize: pageSizeField,
|
|
416
|
+
fields: fieldsField,
|
|
404
417
|
})
|
|
405
418
|
.strict();
|
|
406
419
|
// BoondManager entity ids are numeric. Constraining the schema to digits
|
|
@@ -425,6 +438,24 @@ export const IdTabSchema = z
|
|
|
425
438
|
tab: TabSchema.optional().describe("Onglet spécifique à récupérer (information, technical, financial, actions, contracts, documents)"),
|
|
426
439
|
})
|
|
427
440
|
.strict();
|
|
441
|
+
// ---- Dictionary-override-aware `state` field ----
|
|
442
|
+
// Accepts the usual numeric dictionary id, plus a custom label when the
|
|
443
|
+
// operator configured BOOND_DICTIONARY_OVERRIDES (see docs/dictionary-overrides.md).
|
|
444
|
+
// IMPORTANT: the label is resolved inside `z.preprocess`, i.e. at PARSE time,
|
|
445
|
+
// not at schema definition time -- so overrides injected after this module is
|
|
446
|
+
// imported (tests, late env) are honoured. Unknown labels are left as-is so
|
|
447
|
+
// the integer validation fails with an explicit error.
|
|
448
|
+
export const stateField = (entity, baseDescription) => z
|
|
449
|
+
.preprocess((value) => {
|
|
450
|
+
if (typeof value === "string") {
|
|
451
|
+
const resolved = resolveLabel("state", entity, value);
|
|
452
|
+
if (resolved !== undefined)
|
|
453
|
+
return resolved;
|
|
454
|
+
}
|
|
455
|
+
return value;
|
|
456
|
+
}, z.coerce.number().int())
|
|
457
|
+
.optional()
|
|
458
|
+
.describe(appendOverridesToDescription(baseDescription, "state", entity));
|
|
428
459
|
// ---- Candidate schemas ----
|
|
429
460
|
export const CandidateCreateSchema = z
|
|
430
461
|
.object({
|
|
@@ -435,11 +466,31 @@ export const CandidateCreateSchema = z
|
|
|
435
466
|
city: z.string().optional().describe("Ville"),
|
|
436
467
|
country: z.string().optional().describe("Pays"),
|
|
437
468
|
title: z.string().optional().describe("Titre du poste / fonction"),
|
|
438
|
-
state:
|
|
469
|
+
state: stateField("candidate", "État du candidat (0=en cours, 1=placé, 2=archivé...)"),
|
|
439
470
|
mainSkills: z.string().optional().describe("Compétences principales (texte libre)"),
|
|
440
471
|
note: z.string().optional().describe("Notes / commentaires"),
|
|
441
472
|
})
|
|
442
473
|
.strict();
|
|
474
|
+
export const PositioningUpdateSchema = z
|
|
475
|
+
.object({
|
|
476
|
+
id: z.string().min(1).describe("ID du positionnement \u00e0 modifier"),
|
|
477
|
+
state: z
|
|
478
|
+
.number()
|
|
479
|
+
.int()
|
|
480
|
+
.min(0)
|
|
481
|
+
.optional()
|
|
482
|
+
.describe("\u00c9tat du positionnement : ID num\u00e9rique du dictionnaire setting.state.positioning"),
|
|
483
|
+
stateReasonTypeOf: z
|
|
484
|
+
.number()
|
|
485
|
+
.int()
|
|
486
|
+
.optional()
|
|
487
|
+
.describe("Motif d'\u00e9tat : ID num\u00e9rique du type de motif (stateReason.typeOf)"),
|
|
488
|
+
stateReasonDetail: z.string().optional().describe("Motif d'\u00e9tat : d\u00e9tail libre (stateReason.detail)"),
|
|
489
|
+
startDate: z.string().optional().describe("Date de d\u00e9but (YYYY-MM-DD, ou cha\u00eene vide pour effacer)"),
|
|
490
|
+
endDate: z.string().optional().describe("Date de fin (YYYY-MM-DD, ou cha\u00eene vide pour effacer)"),
|
|
491
|
+
informationComments: z.string().max(250).optional().describe("Commentaires (max 250 caract\u00e8res)"),
|
|
492
|
+
})
|
|
493
|
+
.strict();
|
|
443
494
|
export const CandidateUpdateSchema = z
|
|
444
495
|
.object({
|
|
445
496
|
id: z.string().min(1).describe("ID du candidat à modifier"),
|
|
@@ -450,7 +501,7 @@ export const CandidateUpdateSchema = z
|
|
|
450
501
|
city: z.string().optional().describe("Ville"),
|
|
451
502
|
country: z.string().optional().describe("Pays"),
|
|
452
503
|
title: z.string().optional().describe("Titre / fonction"),
|
|
453
|
-
state:
|
|
504
|
+
state: stateField("candidate", "État du candidat"),
|
|
454
505
|
mainSkills: z.string().optional().describe("Compétences principales"),
|
|
455
506
|
note: z.string().optional().describe("Notes"),
|
|
456
507
|
})
|
|
@@ -465,7 +516,7 @@ export const ResourceCreateSchema = z
|
|
|
465
516
|
city: z.string().optional().describe("Ville"),
|
|
466
517
|
country: z.string().optional().describe("Pays"),
|
|
467
518
|
title: z.string().optional().describe("Titre / poste"),
|
|
468
|
-
state:
|
|
519
|
+
state: stateField("resource", "État de la ressource"),
|
|
469
520
|
note: z.string().optional().describe("Notes"),
|
|
470
521
|
})
|
|
471
522
|
.strict();
|
|
@@ -479,7 +530,7 @@ export const ResourceUpdateSchema = z
|
|
|
479
530
|
city: z.string().optional().describe("Ville"),
|
|
480
531
|
country: z.string().optional().describe("Pays"),
|
|
481
532
|
title: z.string().optional().describe("Titre / poste"),
|
|
482
|
-
state:
|
|
533
|
+
state: stateField("resource", "État"),
|
|
483
534
|
note: z.string().optional().describe("Notes"),
|
|
484
535
|
})
|
|
485
536
|
.strict();
|
|
@@ -626,7 +677,7 @@ export const CompanyCreateSchema = z
|
|
|
626
677
|
country: z.string().optional().describe("Pays"),
|
|
627
678
|
website: z.string().optional().describe("Site web"),
|
|
628
679
|
siret: z.string().optional().describe("Numéro SIRET"),
|
|
629
|
-
state:
|
|
680
|
+
state: stateField("company", "État de la société"),
|
|
630
681
|
note: z.string().optional().describe("Notes"),
|
|
631
682
|
})
|
|
632
683
|
.strict();
|
|
@@ -640,7 +691,7 @@ export const CompanyUpdateSchema = z
|
|
|
640
691
|
country: z.string().optional().describe("Pays"),
|
|
641
692
|
website: z.string().optional().describe("Site web"),
|
|
642
693
|
siret: z.string().optional().describe("Numéro SIRET"),
|
|
643
|
-
state:
|
|
694
|
+
state: stateField("company", "État"),
|
|
644
695
|
note: z.string().optional().describe("Notes"),
|
|
645
696
|
})
|
|
646
697
|
.strict();
|
|
@@ -650,7 +701,7 @@ export const OpportunityCreateSchema = z
|
|
|
650
701
|
name: z.string().min(1).describe("Nom / titre de l'opportunité"),
|
|
651
702
|
companyId: z.string().optional().describe("ID de la société cliente"),
|
|
652
703
|
contactId: z.string().optional().describe("ID du contact associé"),
|
|
653
|
-
state:
|
|
704
|
+
state: stateField("opportunity", "État de l'opportunité"),
|
|
654
705
|
startDate: z.string().optional().describe("Date de début prévue (YYYY-MM-DD)"),
|
|
655
706
|
endDate: z.string().optional().describe("Date de fin prévue (YYYY-MM-DD)"),
|
|
656
707
|
note: z.string().optional().describe("Notes / description"),
|
|
@@ -660,7 +711,7 @@ export const OpportunityUpdateSchema = z
|
|
|
660
711
|
.object({
|
|
661
712
|
id: z.string().min(1).describe("ID de l'opportunité à modifier"),
|
|
662
713
|
name: z.string().optional().describe("Nom / titre"),
|
|
663
|
-
state:
|
|
714
|
+
state: stateField("opportunity", "État"),
|
|
664
715
|
startDate: z.string().optional().describe("Date de début (YYYY-MM-DD)"),
|
|
665
716
|
endDate: z.string().optional().describe("Date de fin (YYYY-MM-DD)"),
|
|
666
717
|
note: z.string().optional().describe("Notes"),
|
|
@@ -684,11 +735,10 @@ export const ActionSearchSchema = z
|
|
|
684
735
|
// and `text` (not subject/content) — anything else triggers a 422.
|
|
685
736
|
export const ActionCreateSchema = z
|
|
686
737
|
.object({
|
|
687
|
-
typeOf: z
|
|
688
|
-
.number()
|
|
689
|
-
.
|
|
690
|
-
|
|
691
|
-
.describe("Type d'action : ID numérique du dictionnaire BoondManager (setting.action.*, via boond_application_dictionary)"),
|
|
738
|
+
typeOf: z
|
|
739
|
+
.union([z.coerce.number().int().min(0), z.string().min(1)])
|
|
740
|
+
.describe("Type d'action : ID numérique du dictionnaire (setting.action.*, via boond_application_dictionary) " +
|
|
741
|
+
"ou libellé personnalisé si BOOND_DICTIONARY_OVERRIDES est configuré"),
|
|
692
742
|
title: z.string().optional().describe("Titre de l'action"),
|
|
693
743
|
text: z.string().optional().describe("Contenu / notes de l'action"),
|
|
694
744
|
startDate: z
|
|
@@ -702,6 +752,10 @@ export const ActionCreateSchema = z
|
|
|
702
752
|
opportunityId: z.string().optional().describe("ID de l'opportunité à laquelle rattacher l'action (dependsOn)"),
|
|
703
753
|
projectId: z.string().optional().describe("ID du projet auquel rattacher l'action (dependsOn)"),
|
|
704
754
|
companyId: z.string().optional().describe("ID de la société associée (uniquement en complément d'un contactId)"),
|
|
755
|
+
positioningId: z
|
|
756
|
+
.string()
|
|
757
|
+
.optional()
|
|
758
|
+
.describe("ID du positionnement à lier à l'action (relation positioning). Requis par l'API pour les types d'action liés aux positionnements (ex. RQ) — sans lui, erreur 422 « 1002 - Wrong or missing attribute (/data/relationships/positioning) »."),
|
|
705
759
|
})
|
|
706
760
|
.strict();
|
|
707
761
|
// ---- Timesheet schemas ----
|
|
@@ -748,7 +802,7 @@ export const ProjectCreateSchema = z
|
|
|
748
802
|
companyId: z.string().optional().describe("ID de la société cliente"),
|
|
749
803
|
contactId: z.string().optional().describe("ID du contact associé"),
|
|
750
804
|
opportunityId: z.string().optional().describe("ID de l'opportunité liée"),
|
|
751
|
-
state:
|
|
805
|
+
state: stateField("project", "État du projet (0=en cours, 1=terminé, 2=archivé...)"),
|
|
752
806
|
startDate: z.string().optional().describe("Date de début (YYYY-MM-DD)"),
|
|
753
807
|
endDate: z.string().optional().describe("Date de fin (YYYY-MM-DD)"),
|
|
754
808
|
note: z.string().optional().describe("Notes / description du projet"),
|
|
@@ -758,7 +812,7 @@ export const ProjectUpdateSchema = z
|
|
|
758
812
|
.object({
|
|
759
813
|
id: z.string().min(1).describe("ID du projet à modifier"),
|
|
760
814
|
name: z.string().optional().describe("Nom du projet"),
|
|
761
|
-
state:
|
|
815
|
+
state: stateField("project", "État du projet"),
|
|
762
816
|
startDate: z.string().optional().describe("Date de début (YYYY-MM-DD)"),
|
|
763
817
|
endDate: z.string().optional().describe("Date de fin (YYYY-MM-DD)"),
|
|
764
818
|
note: z.string().optional().describe("Notes"),
|
|
@@ -947,11 +1001,34 @@ export const PositioningCreateSchema = z
|
|
|
947
1001
|
.strict();
|
|
948
1002
|
export const PositioningSearchSchema = z
|
|
949
1003
|
.object({
|
|
950
|
-
keywords: z
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
1004
|
+
keywords: z
|
|
1005
|
+
.string()
|
|
1006
|
+
.optional()
|
|
1007
|
+
.describe("Mots-clés de recherche. L'API y accepte aussi des références d'entités (AO<id>, CAND<id>, COMP<id>...) — les filtres *Id ci-dessous sont convertis automatiquement en de telles références."),
|
|
1008
|
+
candidateId: z
|
|
1009
|
+
.string()
|
|
1010
|
+
.optional()
|
|
1011
|
+
.describe("Filtrer par ID candidat (envoyé à l'API comme référence keywords CAND<id>)"),
|
|
1012
|
+
resourceId: z
|
|
1013
|
+
.string()
|
|
1014
|
+
.optional()
|
|
1015
|
+
.describe("Filtrer par ID ressource (envoyé à l'API comme référence keywords COMP<id>)"),
|
|
1016
|
+
opportunityId: z
|
|
1017
|
+
.string()
|
|
1018
|
+
.optional()
|
|
1019
|
+
.describe("Filtrer par ID opportunité (envoyé à l'API comme référence keywords AO<id>)"),
|
|
1020
|
+
companyId: z
|
|
1021
|
+
.string()
|
|
1022
|
+
.optional()
|
|
1023
|
+
.describe("Filtrer par ID société (envoyé à l'API comme référence keywords CSOC<id>)"),
|
|
1024
|
+
contactId: z
|
|
1025
|
+
.string()
|
|
1026
|
+
.optional()
|
|
1027
|
+
.describe("Filtrer par ID contact (envoyé à l'API comme référence keywords CCON<id>)"),
|
|
1028
|
+
productId: z
|
|
1029
|
+
.string()
|
|
1030
|
+
.optional()
|
|
1031
|
+
.describe("Filtrer par ID produit (envoyé à l'API comme référence keywords PROD<id>)"),
|
|
955
1032
|
page: z.number().int().min(1).max(MAX_SEARCH_PAGE).default(1).describe(`Numéro de page (max: ${MAX_SEARCH_PAGE})`),
|
|
956
1033
|
pageSize: z.number().int().min(1).max(MAX_PAGE_SIZE).default(DEFAULT_PAGE_SIZE).describe("Résultats par page"),
|
|
957
1034
|
})
|
|
@@ -1098,4 +1175,51 @@ export const DictionaryGetSchema = z
|
|
|
1098
1175
|
.describe("Type de dictionnaire (ex: typeOf/actions, typeOf/absences, states/candidates, states/resources, states/opportunities, states/projects, states/invoices, countries, currencies, languages...)"),
|
|
1099
1176
|
})
|
|
1100
1177
|
.strict();
|
|
1178
|
+
// ---- Documents ----
|
|
1179
|
+
// Source: https://doc.boondmanager.com/api-externe/raml-build/resources/documents/search.raml
|
|
1180
|
+
// L'upload passe par `fileUrl` uniquement : l'API BoondManager télécharge le
|
|
1181
|
+
// fichier elle-même, le serveur MCP ne bufferise jamais d'octets de fichier
|
|
1182
|
+
// (et n'expose pas de lecture du système de fichiers local).
|
|
1183
|
+
export const DocumentParentTypes = [
|
|
1184
|
+
"action",
|
|
1185
|
+
"resourceResume",
|
|
1186
|
+
"candidateResume",
|
|
1187
|
+
"resource",
|
|
1188
|
+
"candidate",
|
|
1189
|
+
"expensesReport",
|
|
1190
|
+
"timesReport",
|
|
1191
|
+
"absencesReport",
|
|
1192
|
+
"payment",
|
|
1193
|
+
"company",
|
|
1194
|
+
"project",
|
|
1195
|
+
"order",
|
|
1196
|
+
"product",
|
|
1197
|
+
"purchase",
|
|
1198
|
+
"delivery",
|
|
1199
|
+
"groupment",
|
|
1200
|
+
"inactivity",
|
|
1201
|
+
"positioning",
|
|
1202
|
+
"followeddocument",
|
|
1203
|
+
"appentity",
|
|
1204
|
+
"contract",
|
|
1205
|
+
"invoice",
|
|
1206
|
+
"providerinvoice",
|
|
1207
|
+
];
|
|
1208
|
+
export const DocumentCreateSchema = z
|
|
1209
|
+
.object({
|
|
1210
|
+
parentType: z
|
|
1211
|
+
.enum(DocumentParentTypes)
|
|
1212
|
+
.describe("Type d'entité parente. Notables : 'candidateResume' (CV de candidat), 'resourceResume' (CV de ressource), " +
|
|
1213
|
+
"'candidate'/'resource' (dossier administratif), 'company', 'project', 'invoice'..."),
|
|
1214
|
+
parentId: z.number().int().min(1).describe("ID de l'entité parente"),
|
|
1215
|
+
fileUrl: z
|
|
1216
|
+
.string()
|
|
1217
|
+
.url()
|
|
1218
|
+
.describe("URL (https) du fichier à téléverser — BoondManager télécharge le fichier depuis cette URL."),
|
|
1219
|
+
parsing: z
|
|
1220
|
+
.boolean()
|
|
1221
|
+
.optional()
|
|
1222
|
+
.describe("Lancer le parsing IA du CV après upload (uniquement pour parentType=candidateResume)."),
|
|
1223
|
+
})
|
|
1224
|
+
.strict();
|
|
1101
1225
|
//# sourceMappingURL=index.js.map
|