@laboratoria/sdk-js 2.0.0-alpha.5 → 2.1.1
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/lib/core.js +10 -10
- package/lib/model.js +15 -2
- package/package.json +11 -11
- package/schemas/core.json +206 -238
- package/schemas/jobs.json +193 -12
package/lib/core.js
CHANGED
@@ -19,11 +19,11 @@ const extended = {
|
|
19
19
|
'github',
|
20
20
|
'linkedin',
|
21
21
|
'bio',
|
22
|
-
'countryOfResidence',
|
23
|
-
'countryOfOrigin',
|
24
|
-
'workStatus',
|
25
|
-
'educationStatus',
|
26
|
-
'phone',
|
22
|
+
// 'countryOfResidence',
|
23
|
+
// 'countryOfOrigin',
|
24
|
+
// 'workStatus',
|
25
|
+
// 'educationStatus',
|
26
|
+
// 'phone',
|
27
27
|
'role',
|
28
28
|
'signupCohort',
|
29
29
|
'disabled',
|
@@ -162,11 +162,11 @@ const extended = {
|
|
162
162
|
inputProps: [
|
163
163
|
'cohort',
|
164
164
|
'user',
|
165
|
-
'status',
|
166
|
-
'workStatus',
|
167
|
-
'educationStatus',
|
168
|
-
'phone',
|
169
|
-
'countryOfResidence',
|
165
|
+
// 'status',
|
166
|
+
// 'workStatus',
|
167
|
+
// 'educationStatus',
|
168
|
+
// 'phone',
|
169
|
+
// 'countryOfResidence',
|
170
170
|
],
|
171
171
|
},
|
172
172
|
};
|
package/lib/model.js
CHANGED
@@ -98,8 +98,21 @@ const createValidator = (schema) => {
|
|
98
98
|
const qToQs = (q = {}) => Object.keys(q).length ? `?q=${JSON.stringify(q)}` : '';
|
99
99
|
|
100
100
|
|
101
|
-
const
|
102
|
-
|
101
|
+
const toKebabCase = (str) => [...str].reduce(
|
102
|
+
(memo, char) => (
|
103
|
+
char === char.toUpperCase()
|
104
|
+
? `${memo}-${char.toLowerCase()}`
|
105
|
+
: `${memo}${char}`
|
106
|
+
),
|
107
|
+
'',
|
108
|
+
);
|
109
|
+
|
110
|
+
|
111
|
+
const createBuildURL = (collectionName) => {
|
112
|
+
const base = toKebabCase(collectionName);
|
113
|
+
return (id, q) => {
|
114
|
+
return `/${base}${id ? `/${encodeURIComponent(id)}` : ''}${qToQs(q)}`;
|
115
|
+
};
|
103
116
|
};
|
104
117
|
|
105
118
|
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@laboratoria/sdk-js",
|
3
|
-
"version": "2.
|
3
|
+
"version": "2.1.1",
|
4
4
|
"description": "Laboratoria JavaScript (browser) SDK",
|
5
5
|
"scripts": {
|
6
6
|
"test": "jest --verbose --coverage",
|
@@ -9,25 +9,25 @@
|
|
9
9
|
"license": "MIT",
|
10
10
|
"dependencies": {
|
11
11
|
"blueimp-md5": "^2.19.0",
|
12
|
-
"firebase": "^9.8.
|
12
|
+
"firebase": "^9.8.4"
|
13
13
|
},
|
14
14
|
"devDependencies": {
|
15
|
-
"@babel/core": "^7.18.
|
16
|
-
"@babel/plugin-transform-modules-commonjs": "^7.18.
|
17
|
-
"babel-jest": "^28.1.
|
18
|
-
"jest": "^28.1.
|
19
|
-
"jest-environment-jsdom": "^28.1.
|
15
|
+
"@babel/core": "^7.18.6",
|
16
|
+
"@babel/plugin-transform-modules-commonjs": "^7.18.6",
|
17
|
+
"babel-jest": "^28.1.2",
|
18
|
+
"jest": "^28.1.2",
|
19
|
+
"jest-environment-jsdom": "^28.1.2",
|
20
20
|
"webpack": "^5.73.0",
|
21
|
-
"webpack-cli": "^4.
|
21
|
+
"webpack-cli": "^4.10.0"
|
22
22
|
},
|
23
23
|
"jest": {
|
24
24
|
"testEnvironment": "jsdom",
|
25
25
|
"coverageThreshold": {
|
26
26
|
"global": {
|
27
|
-
"statements":
|
27
|
+
"statements": 97,
|
28
28
|
"branches": 94,
|
29
|
-
"functions":
|
30
|
-
"lines":
|
29
|
+
"functions": 100,
|
30
|
+
"lines": 97
|
31
31
|
}
|
32
32
|
}
|
33
33
|
}
|
package/schemas/core.json
CHANGED
@@ -15,24 +15,6 @@
|
|
15
15
|
"items": {
|
16
16
|
"$ref": "#/definitions/Contract"
|
17
17
|
}
|
18
|
-
},
|
19
|
-
"usersResidence": {
|
20
|
-
"type": "array",
|
21
|
-
"items": {
|
22
|
-
"$ref": "#/definitions/User"
|
23
|
-
}
|
24
|
-
},
|
25
|
-
"usersOrigin": {
|
26
|
-
"type": "array",
|
27
|
-
"items": {
|
28
|
-
"$ref": "#/definitions/User"
|
29
|
-
}
|
30
|
-
},
|
31
|
-
"applications": {
|
32
|
-
"type": "array",
|
33
|
-
"items": {
|
34
|
-
"$ref": "#/definitions/Application"
|
35
|
-
}
|
36
18
|
}
|
37
19
|
}
|
38
20
|
},
|
@@ -68,17 +50,6 @@
|
|
68
50
|
"null"
|
69
51
|
]
|
70
52
|
},
|
71
|
-
"lang": {
|
72
|
-
"type": [
|
73
|
-
"string",
|
74
|
-
"null"
|
75
|
-
],
|
76
|
-
"enum": [
|
77
|
-
"en",
|
78
|
-
"es",
|
79
|
-
"pt"
|
80
|
-
]
|
81
|
-
},
|
82
53
|
"github": {
|
83
54
|
"type": [
|
84
55
|
"string",
|
@@ -113,56 +84,17 @@
|
|
113
84
|
"type": "boolean",
|
114
85
|
"default": false
|
115
86
|
},
|
116
|
-
"
|
117
|
-
"type": [
|
118
|
-
"string",
|
119
|
-
"null"
|
120
|
-
],
|
121
|
-
"enum": [
|
122
|
-
"student",
|
123
|
-
"intern",
|
124
|
-
"unemployed",
|
125
|
-
"fulltime",
|
126
|
-
"partime",
|
127
|
-
"freelance",
|
128
|
-
"selfemployed"
|
129
|
-
]
|
130
|
-
},
|
131
|
-
"educationStatus": {
|
87
|
+
"lang": {
|
132
88
|
"type": [
|
133
89
|
"string",
|
134
90
|
"null"
|
135
91
|
],
|
136
92
|
"enum": [
|
137
|
-
"
|
138
|
-
"
|
139
|
-
"
|
140
|
-
"ISCED_3",
|
141
|
-
"ISCED_4",
|
142
|
-
"ISCED_5",
|
143
|
-
"ISCED_6",
|
144
|
-
"ISCED_7",
|
145
|
-
"ISCED_8"
|
146
|
-
]
|
147
|
-
},
|
148
|
-
"phone": {
|
149
|
-
"type": [
|
150
|
-
"string",
|
151
|
-
"null"
|
93
|
+
"en",
|
94
|
+
"es",
|
95
|
+
"pt"
|
152
96
|
]
|
153
97
|
},
|
154
|
-
"students": {
|
155
|
-
"type": "array",
|
156
|
-
"items": {
|
157
|
-
"$ref": "#/definitions/Student"
|
158
|
-
}
|
159
|
-
},
|
160
|
-
"dropouts": {
|
161
|
-
"type": "array",
|
162
|
-
"items": {
|
163
|
-
"$ref": "#/definitions/Dropout"
|
164
|
-
}
|
165
|
-
},
|
166
98
|
"signupCohort": {
|
167
99
|
"anyOf": [
|
168
100
|
{
|
@@ -173,10 +105,10 @@
|
|
173
105
|
}
|
174
106
|
]
|
175
107
|
},
|
176
|
-
"
|
108
|
+
"applications": {
|
177
109
|
"type": "array",
|
178
110
|
"items": {
|
179
|
-
"$ref": "#/definitions/
|
111
|
+
"$ref": "#/definitions/Application"
|
180
112
|
}
|
181
113
|
},
|
182
114
|
"contractsAsCheckPilot": {
|
@@ -185,37 +117,35 @@
|
|
185
117
|
"$ref": "#/definitions/Contract"
|
186
118
|
}
|
187
119
|
},
|
120
|
+
"contracts": {
|
121
|
+
"type": "array",
|
122
|
+
"items": {
|
123
|
+
"$ref": "#/definitions/Contract"
|
124
|
+
}
|
125
|
+
},
|
126
|
+
"dropouts": {
|
127
|
+
"type": "array",
|
128
|
+
"items": {
|
129
|
+
"$ref": "#/definitions/Dropout"
|
130
|
+
}
|
131
|
+
},
|
188
132
|
"gigs": {
|
189
133
|
"type": "array",
|
190
134
|
"items": {
|
191
135
|
"$ref": "#/definitions/Gig"
|
192
136
|
}
|
193
137
|
},
|
194
|
-
"
|
138
|
+
"messages": {
|
195
139
|
"type": "array",
|
196
140
|
"items": {
|
197
|
-
"$ref": "#/definitions/
|
141
|
+
"$ref": "#/definitions/Message"
|
198
142
|
}
|
199
143
|
},
|
200
|
-
"
|
201
|
-
"
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
{
|
206
|
-
"type": "null"
|
207
|
-
}
|
208
|
-
]
|
209
|
-
},
|
210
|
-
"countryOfOrigin": {
|
211
|
-
"anyOf": [
|
212
|
-
{
|
213
|
-
"$ref": "#/definitions/Country"
|
214
|
-
},
|
215
|
-
{
|
216
|
-
"type": "null"
|
217
|
-
}
|
218
|
-
]
|
144
|
+
"students": {
|
145
|
+
"type": "array",
|
146
|
+
"items": {
|
147
|
+
"$ref": "#/definitions/Student"
|
148
|
+
}
|
219
149
|
}
|
220
150
|
}
|
221
151
|
},
|
@@ -270,16 +200,16 @@
|
|
270
200
|
"track": {
|
271
201
|
"$ref": "#/definitions/Track"
|
272
202
|
},
|
273
|
-
"
|
203
|
+
"cohorts": {
|
274
204
|
"type": "array",
|
275
205
|
"items": {
|
276
|
-
"$ref": "#/definitions/
|
206
|
+
"$ref": "#/definitions/Cohort"
|
277
207
|
}
|
278
208
|
},
|
279
|
-
"
|
209
|
+
"stages": {
|
280
210
|
"type": "array",
|
281
211
|
"items": {
|
282
|
-
"$ref": "#/definitions/
|
212
|
+
"$ref": "#/definitions/Stage"
|
283
213
|
}
|
284
214
|
}
|
285
215
|
}
|
@@ -335,17 +265,6 @@
|
|
335
265
|
"null"
|
336
266
|
]
|
337
267
|
},
|
338
|
-
"lang": {
|
339
|
-
"type": [
|
340
|
-
"string",
|
341
|
-
"null"
|
342
|
-
],
|
343
|
-
"enum": [
|
344
|
-
"en",
|
345
|
-
"es",
|
346
|
-
"pt"
|
347
|
-
]
|
348
|
-
},
|
349
268
|
"name": {
|
350
269
|
"type": "string"
|
351
270
|
},
|
@@ -357,12 +276,21 @@
|
|
357
276
|
"type": "string",
|
358
277
|
"format": "date-time"
|
359
278
|
},
|
279
|
+
"legacySlug": {
|
280
|
+
"type": "string"
|
281
|
+
},
|
360
282
|
"vacancies": {
|
361
283
|
"type": [
|
362
284
|
"integer",
|
363
285
|
"null"
|
364
286
|
]
|
365
287
|
},
|
288
|
+
"placementDuration": {
|
289
|
+
"type": [
|
290
|
+
"integer",
|
291
|
+
"null"
|
292
|
+
]
|
293
|
+
},
|
366
294
|
"placementStart": {
|
367
295
|
"type": [
|
368
296
|
"string",
|
@@ -370,10 +298,15 @@
|
|
370
298
|
],
|
371
299
|
"format": "date-time"
|
372
300
|
},
|
373
|
-
"
|
301
|
+
"lang": {
|
374
302
|
"type": [
|
375
|
-
"
|
303
|
+
"string",
|
376
304
|
"null"
|
305
|
+
],
|
306
|
+
"enum": [
|
307
|
+
"en",
|
308
|
+
"es",
|
309
|
+
"pt"
|
377
310
|
]
|
378
311
|
},
|
379
312
|
"program": {
|
@@ -382,10 +315,10 @@
|
|
382
315
|
"stage": {
|
383
316
|
"$ref": "#/definitions/Stage"
|
384
317
|
},
|
385
|
-
"
|
318
|
+
"applications": {
|
386
319
|
"type": "array",
|
387
320
|
"items": {
|
388
|
-
"$ref": "#/definitions/
|
321
|
+
"$ref": "#/definitions/Application"
|
389
322
|
}
|
390
323
|
},
|
391
324
|
"links": {
|
@@ -394,22 +327,22 @@
|
|
394
327
|
"$ref": "#/definitions/CohortLink"
|
395
328
|
}
|
396
329
|
},
|
397
|
-
"
|
330
|
+
"dropouts": {
|
398
331
|
"type": "array",
|
399
332
|
"items": {
|
400
|
-
"$ref": "#/definitions/
|
333
|
+
"$ref": "#/definitions/Dropout"
|
401
334
|
}
|
402
335
|
},
|
403
|
-
"
|
336
|
+
"gigs": {
|
404
337
|
"type": "array",
|
405
338
|
"items": {
|
406
|
-
"$ref": "#/definitions/
|
339
|
+
"$ref": "#/definitions/Gig"
|
407
340
|
}
|
408
341
|
},
|
409
|
-
"
|
342
|
+
"students": {
|
410
343
|
"type": "array",
|
411
344
|
"items": {
|
412
|
-
"$ref": "#/definitions/
|
345
|
+
"$ref": "#/definitions/Student"
|
413
346
|
}
|
414
347
|
},
|
415
348
|
"signupUsers": {
|
@@ -417,9 +350,6 @@
|
|
417
350
|
"items": {
|
418
351
|
"$ref": "#/definitions/User"
|
419
352
|
}
|
420
|
-
},
|
421
|
-
"legacySlug": {
|
422
|
-
"type": "string"
|
423
353
|
}
|
424
354
|
}
|
425
355
|
},
|
@@ -505,30 +435,12 @@
|
|
505
435
|
"type": "string",
|
506
436
|
"format": "date-time"
|
507
437
|
},
|
508
|
-
"reason": {
|
509
|
-
"type": "string",
|
510
|
-
"enum": [
|
511
|
-
"dropout",
|
512
|
-
"noShow",
|
513
|
-
"invitedToLeave",
|
514
|
-
"changeCohort"
|
515
|
-
]
|
516
|
-
},
|
517
438
|
"reasonDetail": {
|
518
439
|
"type": [
|
519
440
|
"string",
|
520
441
|
"null"
|
521
442
|
]
|
522
443
|
},
|
523
|
-
"lastProject": {
|
524
|
-
"type": [
|
525
|
-
"string",
|
526
|
-
"null"
|
527
|
-
]
|
528
|
-
},
|
529
|
-
"completedProjects": {
|
530
|
-
"type": "integer"
|
531
|
-
},
|
532
444
|
"notes": {
|
533
445
|
"type": [
|
534
446
|
"string",
|
@@ -544,6 +456,24 @@
|
|
544
456
|
"null"
|
545
457
|
]
|
546
458
|
},
|
459
|
+
"reason": {
|
460
|
+
"type": "string",
|
461
|
+
"enum": [
|
462
|
+
"dropout",
|
463
|
+
"noShow",
|
464
|
+
"invitedToLeave",
|
465
|
+
"changeCohort"
|
466
|
+
]
|
467
|
+
},
|
468
|
+
"completedProjects": {
|
469
|
+
"type": "integer"
|
470
|
+
},
|
471
|
+
"lastProject": {
|
472
|
+
"type": [
|
473
|
+
"string",
|
474
|
+
"null"
|
475
|
+
]
|
476
|
+
},
|
547
477
|
"cohort": {
|
548
478
|
"$ref": "#/definitions/Cohort"
|
549
479
|
},
|
@@ -572,83 +502,11 @@
|
|
572
502
|
"null"
|
573
503
|
]
|
574
504
|
},
|
575
|
-
"status": {
|
576
|
-
"type": [
|
577
|
-
"string",
|
578
|
-
"null"
|
579
|
-
],
|
580
|
-
"enum": [
|
581
|
-
"started",
|
582
|
-
"exercisesCompleted",
|
583
|
-
"projectCompleted",
|
584
|
-
"interviewScheduled",
|
585
|
-
"interviewed",
|
586
|
-
"admitted",
|
587
|
-
"rejected"
|
588
|
-
]
|
589
|
-
},
|
590
|
-
"workStatus": {
|
591
|
-
"type": [
|
592
|
-
"string",
|
593
|
-
"null"
|
594
|
-
],
|
595
|
-
"enum": [
|
596
|
-
"student",
|
597
|
-
"intern",
|
598
|
-
"unemployed",
|
599
|
-
"fulltime",
|
600
|
-
"partime",
|
601
|
-
"freelance",
|
602
|
-
"selfemployed"
|
603
|
-
]
|
604
|
-
},
|
605
|
-
"educationStatus": {
|
606
|
-
"type": [
|
607
|
-
"string",
|
608
|
-
"null"
|
609
|
-
],
|
610
|
-
"enum": [
|
611
|
-
"ISCED_0",
|
612
|
-
"ISCED_1",
|
613
|
-
"ISCED_2",
|
614
|
-
"ISCED_3",
|
615
|
-
"ISCED_4",
|
616
|
-
"ISCED_5",
|
617
|
-
"ISCED_6",
|
618
|
-
"ISCED_7",
|
619
|
-
"ISCED_8"
|
620
|
-
]
|
621
|
-
},
|
622
|
-
"phone": {
|
623
|
-
"type": [
|
624
|
-
"string",
|
625
|
-
"null"
|
626
|
-
]
|
627
|
-
},
|
628
|
-
"user": {
|
629
|
-
"$ref": "#/definitions/User"
|
630
|
-
},
|
631
505
|
"cohort": {
|
632
506
|
"$ref": "#/definitions/Cohort"
|
633
507
|
},
|
634
|
-
"
|
635
|
-
"
|
636
|
-
{
|
637
|
-
"$ref": "#/definitions/Country"
|
638
|
-
},
|
639
|
-
{
|
640
|
-
"type": "null"
|
641
|
-
}
|
642
|
-
]
|
643
|
-
},
|
644
|
-
"income": {
|
645
|
-
"type": "integer"
|
646
|
-
},
|
647
|
-
"personalReason": {
|
648
|
-
"type": "string"
|
649
|
-
},
|
650
|
-
"returningApplicant": {
|
651
|
-
"type": "boolean"
|
508
|
+
"user": {
|
509
|
+
"$ref": "#/definitions/User"
|
652
510
|
}
|
653
511
|
}
|
654
512
|
},
|
@@ -669,6 +527,15 @@
|
|
669
527
|
"createdBy": {
|
670
528
|
"type": "string"
|
671
529
|
},
|
530
|
+
"isEmployment": {
|
531
|
+
"type": "boolean"
|
532
|
+
},
|
533
|
+
"feeAmount": {
|
534
|
+
"type": "integer"
|
535
|
+
},
|
536
|
+
"hoursPerWeek": {
|
537
|
+
"type": "integer"
|
538
|
+
},
|
672
539
|
"start": {
|
673
540
|
"type": "string",
|
674
541
|
"format": "date-time"
|
@@ -680,15 +547,6 @@
|
|
680
547
|
],
|
681
548
|
"format": "date-time"
|
682
549
|
},
|
683
|
-
"hoursPerWeek": {
|
684
|
-
"type": "integer"
|
685
|
-
},
|
686
|
-
"isEmployment": {
|
687
|
-
"type": "boolean"
|
688
|
-
},
|
689
|
-
"feeAmount": {
|
690
|
-
"type": "integer"
|
691
|
-
},
|
692
550
|
"isTrial": {
|
693
551
|
"type": "boolean",
|
694
552
|
"default": false
|
@@ -707,9 +565,6 @@
|
|
707
565
|
"other"
|
708
566
|
]
|
709
567
|
},
|
710
|
-
"user": {
|
711
|
-
"$ref": "#/definitions/User"
|
712
|
-
},
|
713
568
|
"checkPilot": {
|
714
569
|
"anyOf": [
|
715
570
|
{
|
@@ -723,6 +578,9 @@
|
|
723
578
|
"country": {
|
724
579
|
"$ref": "#/definitions/Country"
|
725
580
|
},
|
581
|
+
"user": {
|
582
|
+
"$ref": "#/definitions/User"
|
583
|
+
},
|
726
584
|
"gigs": {
|
727
585
|
"type": "array",
|
728
586
|
"items": {
|
@@ -748,6 +606,18 @@
|
|
748
606
|
"createdBy": {
|
749
607
|
"type": "string"
|
750
608
|
},
|
609
|
+
"role": {
|
610
|
+
"type": "string",
|
611
|
+
"enum": [
|
612
|
+
"bm",
|
613
|
+
"pdc",
|
614
|
+
"js",
|
615
|
+
"ux"
|
616
|
+
]
|
617
|
+
},
|
618
|
+
"hoursPerWeek": {
|
619
|
+
"type": "integer"
|
620
|
+
},
|
751
621
|
"start": {
|
752
622
|
"type": "string",
|
753
623
|
"format": "date-time"
|
@@ -759,26 +629,118 @@
|
|
759
629
|
],
|
760
630
|
"format": "date-time"
|
761
631
|
},
|
762
|
-
"
|
632
|
+
"cohort": {
|
633
|
+
"$ref": "#/definitions/Cohort"
|
634
|
+
},
|
635
|
+
"contract": {
|
636
|
+
"$ref": "#/definitions/Contract"
|
637
|
+
},
|
638
|
+
"user": {
|
639
|
+
"$ref": "#/definitions/User"
|
640
|
+
}
|
641
|
+
}
|
642
|
+
},
|
643
|
+
"Message": {
|
644
|
+
"type": "object",
|
645
|
+
"properties": {
|
646
|
+
"id": {
|
763
647
|
"type": "integer"
|
764
648
|
},
|
765
|
-
"
|
649
|
+
"createdAt": {
|
650
|
+
"type": "string",
|
651
|
+
"format": "date-time"
|
652
|
+
},
|
653
|
+
"updatedAt": {
|
654
|
+
"type": "string",
|
655
|
+
"format": "date-time"
|
656
|
+
},
|
657
|
+
"createdBy": {
|
658
|
+
"type": [
|
659
|
+
"string",
|
660
|
+
"null"
|
661
|
+
]
|
662
|
+
},
|
663
|
+
"key": {
|
664
|
+
"type": "string"
|
665
|
+
},
|
666
|
+
"from": {
|
667
|
+
"type": "string"
|
668
|
+
},
|
669
|
+
"to": {
|
670
|
+
"type": "string"
|
671
|
+
},
|
672
|
+
"transport": {
|
766
673
|
"type": "string",
|
767
674
|
"enum": [
|
768
|
-
"
|
769
|
-
|
770
|
-
|
771
|
-
|
675
|
+
"mandrill"
|
676
|
+
]
|
677
|
+
},
|
678
|
+
"status": {
|
679
|
+
"type": "string",
|
680
|
+
"default": "PENDING",
|
681
|
+
"enum": [
|
682
|
+
"PENDING",
|
683
|
+
"QUEUED",
|
684
|
+
"ERROR",
|
685
|
+
"SENT"
|
686
|
+
]
|
687
|
+
},
|
688
|
+
"data": {
|
689
|
+
"type": [
|
690
|
+
"number",
|
691
|
+
"string",
|
692
|
+
"boolean",
|
693
|
+
"object",
|
694
|
+
"array",
|
695
|
+
"null"
|
696
|
+
]
|
697
|
+
},
|
698
|
+
"taskInfo": {
|
699
|
+
"type": [
|
700
|
+
"number",
|
701
|
+
"string",
|
702
|
+
"boolean",
|
703
|
+
"object",
|
704
|
+
"array",
|
705
|
+
"null"
|
772
706
|
]
|
773
707
|
},
|
774
708
|
"user": {
|
775
|
-
"
|
709
|
+
"anyOf": [
|
710
|
+
{
|
711
|
+
"$ref": "#/definitions/User"
|
712
|
+
},
|
713
|
+
{
|
714
|
+
"type": "null"
|
715
|
+
}
|
716
|
+
]
|
776
717
|
},
|
777
|
-
"
|
778
|
-
"
|
718
|
+
"logs": {
|
719
|
+
"type": "array",
|
720
|
+
"items": {
|
721
|
+
"$ref": "#/definitions/MessageLog"
|
722
|
+
}
|
723
|
+
}
|
724
|
+
}
|
725
|
+
},
|
726
|
+
"MessageLog": {
|
727
|
+
"type": "object",
|
728
|
+
"properties": {
|
729
|
+
"id": {
|
730
|
+
"type": "integer"
|
779
731
|
},
|
780
|
-
"
|
781
|
-
"
|
732
|
+
"createdAt": {
|
733
|
+
"type": "string",
|
734
|
+
"format": "date-time"
|
735
|
+
},
|
736
|
+
"statusText": {
|
737
|
+
"type": [
|
738
|
+
"string",
|
739
|
+
"null"
|
740
|
+
]
|
741
|
+
},
|
742
|
+
"message": {
|
743
|
+
"$ref": "#/definitions/Message"
|
782
744
|
}
|
783
745
|
}
|
784
746
|
}
|
@@ -820,6 +782,12 @@
|
|
820
782
|
},
|
821
783
|
"gig": {
|
822
784
|
"$ref": "#/definitions/Gig"
|
785
|
+
},
|
786
|
+
"message": {
|
787
|
+
"$ref": "#/definitions/Message"
|
788
|
+
},
|
789
|
+
"messageLog": {
|
790
|
+
"$ref": "#/definitions/MessageLog"
|
823
791
|
}
|
824
792
|
}
|
825
793
|
}
|
package/schemas/jobs.json
CHANGED
@@ -24,6 +24,73 @@
|
|
24
24
|
}
|
25
25
|
}
|
26
26
|
},
|
27
|
+
"Industry": {
|
28
|
+
"type": "object",
|
29
|
+
"properties": {
|
30
|
+
"id": {
|
31
|
+
"type": "integer"
|
32
|
+
},
|
33
|
+
"createdAt": {
|
34
|
+
"type": "string",
|
35
|
+
"format": "date-time"
|
36
|
+
},
|
37
|
+
"updatedAt": {
|
38
|
+
"type": "string",
|
39
|
+
"format": "date-time"
|
40
|
+
},
|
41
|
+
"createdBy": {
|
42
|
+
"type": [
|
43
|
+
"string",
|
44
|
+
"null"
|
45
|
+
]
|
46
|
+
},
|
47
|
+
"name": {
|
48
|
+
"type": "string"
|
49
|
+
},
|
50
|
+
"companies": {
|
51
|
+
"type": "array",
|
52
|
+
"items": {
|
53
|
+
"$ref": "#/definitions/Company"
|
54
|
+
}
|
55
|
+
}
|
56
|
+
}
|
57
|
+
},
|
58
|
+
"CompanyCategoryRel": {
|
59
|
+
"type": "object",
|
60
|
+
"properties": {
|
61
|
+
"id": {
|
62
|
+
"type": "integer"
|
63
|
+
},
|
64
|
+
"createdAt": {
|
65
|
+
"type": "string",
|
66
|
+
"format": "date-time"
|
67
|
+
},
|
68
|
+
"updatedAt": {
|
69
|
+
"type": "string",
|
70
|
+
"format": "date-time"
|
71
|
+
},
|
72
|
+
"createdBy": {
|
73
|
+
"type": [
|
74
|
+
"string",
|
75
|
+
"null"
|
76
|
+
]
|
77
|
+
},
|
78
|
+
"category": {
|
79
|
+
"type": "string",
|
80
|
+
"enum": [
|
81
|
+
"Tech_Consultancy",
|
82
|
+
"Digital_Transformation",
|
83
|
+
"Agency",
|
84
|
+
"Startups",
|
85
|
+
"High_tech",
|
86
|
+
"Traditional_Consulting"
|
87
|
+
]
|
88
|
+
},
|
89
|
+
"company": {
|
90
|
+
"$ref": "#/definitions/Company"
|
91
|
+
}
|
92
|
+
}
|
93
|
+
},
|
27
94
|
"Company": {
|
28
95
|
"type": "object",
|
29
96
|
"properties": {
|
@@ -53,9 +120,29 @@
|
|
53
120
|
"sourceId": {
|
54
121
|
"type": "string"
|
55
122
|
},
|
123
|
+
"size": {
|
124
|
+
"type": [
|
125
|
+
"string",
|
126
|
+
"null"
|
127
|
+
],
|
128
|
+
"enum": [
|
129
|
+
"A_2_10",
|
130
|
+
"B_11_50",
|
131
|
+
"C_51_200",
|
132
|
+
"D_201_500",
|
133
|
+
"E_501_1000",
|
134
|
+
"F_1001_5000",
|
135
|
+
"G_5001_10000",
|
136
|
+
"H_10001_plus"
|
137
|
+
]
|
138
|
+
},
|
56
139
|
"data": {
|
57
140
|
"type": [
|
141
|
+
"number",
|
142
|
+
"string",
|
143
|
+
"boolean",
|
58
144
|
"object",
|
145
|
+
"array",
|
59
146
|
"null"
|
60
147
|
]
|
61
148
|
},
|
@@ -83,12 +170,6 @@
|
|
83
170
|
"null"
|
84
171
|
]
|
85
172
|
},
|
86
|
-
"jobs": {
|
87
|
-
"type": "array",
|
88
|
-
"items": {
|
89
|
-
"$ref": "#/definitions/Job"
|
90
|
-
}
|
91
|
-
},
|
92
173
|
"country": {
|
93
174
|
"anyOf": [
|
94
175
|
{
|
@@ -98,6 +179,28 @@
|
|
98
179
|
"type": "null"
|
99
180
|
}
|
100
181
|
]
|
182
|
+
},
|
183
|
+
"industry": {
|
184
|
+
"anyOf": [
|
185
|
+
{
|
186
|
+
"$ref": "#/definitions/Industry"
|
187
|
+
},
|
188
|
+
{
|
189
|
+
"type": "null"
|
190
|
+
}
|
191
|
+
]
|
192
|
+
},
|
193
|
+
"jobs": {
|
194
|
+
"type": "array",
|
195
|
+
"items": {
|
196
|
+
"$ref": "#/definitions/Job"
|
197
|
+
}
|
198
|
+
},
|
199
|
+
"categories": {
|
200
|
+
"type": "array",
|
201
|
+
"items": {
|
202
|
+
"$ref": "#/definitions/CompanyCategoryRel"
|
203
|
+
}
|
101
204
|
}
|
102
205
|
}
|
103
206
|
},
|
@@ -151,7 +254,11 @@
|
|
151
254
|
},
|
152
255
|
"data": {
|
153
256
|
"type": [
|
257
|
+
"number",
|
258
|
+
"string",
|
259
|
+
"boolean",
|
154
260
|
"object",
|
261
|
+
"array",
|
155
262
|
"null"
|
156
263
|
]
|
157
264
|
},
|
@@ -161,12 +268,24 @@
|
|
161
268
|
"null"
|
162
269
|
]
|
163
270
|
},
|
271
|
+
"descriptionHTML": {
|
272
|
+
"type": [
|
273
|
+
"string",
|
274
|
+
"null"
|
275
|
+
]
|
276
|
+
},
|
164
277
|
"functions": {
|
165
278
|
"type": [
|
166
279
|
"string",
|
167
280
|
"null"
|
168
281
|
]
|
169
282
|
},
|
283
|
+
"functionsHTML": {
|
284
|
+
"type": [
|
285
|
+
"string",
|
286
|
+
"null"
|
287
|
+
]
|
288
|
+
},
|
170
289
|
"seniority": {
|
171
290
|
"type": [
|
172
291
|
"string",
|
@@ -211,12 +330,6 @@
|
|
211
330
|
"company": {
|
212
331
|
"$ref": "#/definitions/Company"
|
213
332
|
},
|
214
|
-
"validityReviews": {
|
215
|
-
"type": "array",
|
216
|
-
"items": {
|
217
|
-
"$ref": "#/definitions/JobValidityReview"
|
218
|
-
}
|
219
|
-
},
|
220
333
|
"country": {
|
221
334
|
"anyOf": [
|
222
335
|
{
|
@@ -226,6 +339,18 @@
|
|
226
339
|
"type": "null"
|
227
340
|
}
|
228
341
|
]
|
342
|
+
},
|
343
|
+
"validityReviews": {
|
344
|
+
"type": "array",
|
345
|
+
"items": {
|
346
|
+
"$ref": "#/definitions/JobValidityReview"
|
347
|
+
}
|
348
|
+
},
|
349
|
+
"applications": {
|
350
|
+
"type": "array",
|
351
|
+
"items": {
|
352
|
+
"$ref": "#/definitions/JobApplication"
|
353
|
+
}
|
229
354
|
}
|
230
355
|
}
|
231
356
|
},
|
@@ -288,6 +413,53 @@
|
|
288
413
|
"$ref": "#/definitions/Job"
|
289
414
|
}
|
290
415
|
}
|
416
|
+
},
|
417
|
+
"JobApplication": {
|
418
|
+
"type": "object",
|
419
|
+
"properties": {
|
420
|
+
"id": {
|
421
|
+
"type": "integer"
|
422
|
+
},
|
423
|
+
"createdAt": {
|
424
|
+
"type": "string",
|
425
|
+
"format": "date-time"
|
426
|
+
},
|
427
|
+
"updatedAt": {
|
428
|
+
"type": "string",
|
429
|
+
"format": "date-time"
|
430
|
+
},
|
431
|
+
"createdBy": {
|
432
|
+
"type": [
|
433
|
+
"string",
|
434
|
+
"null"
|
435
|
+
]
|
436
|
+
},
|
437
|
+
"uid": {
|
438
|
+
"type": "string"
|
439
|
+
},
|
440
|
+
"status": {
|
441
|
+
"type": "string",
|
442
|
+
"default": "pending",
|
443
|
+
"enum": [
|
444
|
+
"pending",
|
445
|
+
"applied",
|
446
|
+
"interview",
|
447
|
+
"challenge",
|
448
|
+
"followup",
|
449
|
+
"hired",
|
450
|
+
"not_hired"
|
451
|
+
]
|
452
|
+
},
|
453
|
+
"recommendedBy": {
|
454
|
+
"type": [
|
455
|
+
"string",
|
456
|
+
"null"
|
457
|
+
]
|
458
|
+
},
|
459
|
+
"job": {
|
460
|
+
"$ref": "#/definitions/Job"
|
461
|
+
}
|
462
|
+
}
|
291
463
|
}
|
292
464
|
},
|
293
465
|
"type": "object",
|
@@ -295,6 +467,12 @@
|
|
295
467
|
"country": {
|
296
468
|
"$ref": "#/definitions/Country"
|
297
469
|
},
|
470
|
+
"industry": {
|
471
|
+
"$ref": "#/definitions/Industry"
|
472
|
+
},
|
473
|
+
"companyCategoryRel": {
|
474
|
+
"$ref": "#/definitions/CompanyCategoryRel"
|
475
|
+
},
|
298
476
|
"company": {
|
299
477
|
"$ref": "#/definitions/Company"
|
300
478
|
},
|
@@ -303,6 +481,9 @@
|
|
303
481
|
},
|
304
482
|
"jobValidityReview": {
|
305
483
|
"$ref": "#/definitions/JobValidityReview"
|
484
|
+
},
|
485
|
+
"jobApplication": {
|
486
|
+
"$ref": "#/definitions/JobApplication"
|
306
487
|
}
|
307
488
|
}
|
308
489
|
}
|