@royalschedule/validators 2.10.20 → 2.10.22

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/build/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  export declare class Validate {
2
- static BreakLength: (import("joi").NumberSchema<number> | import("joi").BooleanSchema<boolean> | import("joi").ArraySchema<any[]>)[];
2
+ static BreakLength: (import("joi").NumberSchema<number> | import("joi").BooleanSchema<boolean> | import("joi").ArraySchema<number[]>)[];
3
3
  static Exception: import("joi").ObjectSchema<any>;
4
4
  static CourseEvent: import("joi").ObjectSchema<any>;
5
- static Configurations: import("joi").AlternativesSchema<any>;
5
+ static Configurations: import("joi").AlternativesSchema<unknown>;
6
6
  static Course: import("joi").ObjectSchema<any>;
7
7
  static Day: import("joi").ObjectSchema<import("@royalschedule/maps").Day>;
8
8
  static Settings: import("joi").ObjectSchema<Omit<any, "belongsTo">>;
@@ -1,3 +1,3 @@
1
1
  import Joi from 'joi';
2
- declare const _default: (Joi.NumberSchema<number> | Joi.BooleanSchema<boolean> | Joi.ArraySchema<any[]>)[];
2
+ declare const _default: (Joi.NumberSchema<number> | Joi.BooleanSchema<boolean> | Joi.ArraySchema<number[]>)[];
3
3
  export default _default;
@@ -0,0 +1,3 @@
1
+ import Joi from 'joi';
2
+ declare const _default: Joi.ObjectSchema<Omit<import("@royalschedule/maps/dist/core/v2/types/calendar-exceptions").CalendarException, "belongsTo">>;
3
+ export default _default;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const joi_1 = __importDefault(require("joi"));
7
+ const util_1 = require("../common/util");
8
+ const date_1 = __importDefault(require("../common/date"));
9
+ const collections = ['courses', 'courseevents'];
10
+ exports.default = joi_1.default.object({
11
+ id: joi_1.default.string(),
12
+ description: joi_1.default.string().allow(null, ''),
13
+ reason: joi_1.default.string().allow(null, ''),
14
+ action: joi_1.default.string().valid('cancel', 'remove', 'reschedule', 'add', 'substitute'),
15
+ start: date_1.default.isDate(),
16
+ end: date_1.default.isDate().allow(null).greater(joi_1.default.ref('start')),
17
+ sources: joi_1.default.array()
18
+ .items(joi_1.default.object({
19
+ to: [
20
+ joi_1.default.string(),
21
+ joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./course-events'))),
22
+ joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./courses'))),
23
+ ],
24
+ toModel: joi_1.default.string().valid(...collections)
25
+ })),
26
+ exception: joi_1.default.object({
27
+ to: [
28
+ joi_1.default.string(),
29
+ joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./groups'))),
30
+ joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./courses'))),
31
+ joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./teachers'))),
32
+ joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./locations'))),
33
+ joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./persons'))),
34
+ ],
35
+ toModel: joi_1.default.string().valid('groups', 'courses', 'teachers', 'locations', 'persons'),
36
+ include: joi_1.default.boolean(),
37
+ start: date_1.default.isDate(),
38
+ end: date_1.default.isDate().greater(joi_1.default.ref('start')),
39
+ }),
40
+ });
41
+ //# sourceMappingURL=calendar-exceptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calendar-exceptions.js","sourceRoot":"","sources":["../../src/validators/calendar-exceptions.ts"],"names":[],"mappings":";;;;;AAAA,8CAAsD;AAGtD,yCAAiE;AACjE,0DAAiE;AAIjE,MAAM,WAAW,GAAa,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;AAE1D,kBAAe,aAAG,CAAC,MAAM,CAAoD;IAC3E,EAAE,EAAW,aAAG,CAAC,MAAM,EAAE;IAEzB,WAAW,EAAO,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;IAC9C,MAAM,EAAY,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;IAC9C,MAAM,EAAY,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,CAAC;IAE3F,KAAK,EAAa,cAAQ,CAAC,MAAM,EAAE;IACnC,GAAG,EAAe,cAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,aAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACzE,OAAO,EAAW,aAAG,CAAC,KAAK,EAAE;SACV,KAAK,CACJ,aAAG,CAAC,MAAM,CAAC;QACT,EAAE,EAAE;YACF,aAAG,CAAC,MAAM,EAAE;YACZ,aAAG,CAAC,MAAM,CAAC,WAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC;YACpE,aAAG,CAAC,MAAM,CAAC,WAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;SAC/D;QACA,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC;KAC5C,CAAC,CACH;IACpB,SAAS,EAAS,aAAG,CAAC,MAAM,CAAC;QACT,EAAE,EAAE;YACF,aAAG,CAAC,MAAM,EAAE;YACZ,aAAG,CAAC,MAAM,CAAC,WAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YAC7D,aAAG,CAAC,MAAM,CAAC,WAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;YAC9D,aAAG,CAAC,MAAM,CAAC,WAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;YAC/D,aAAG,CAAC,MAAM,CAAC,WAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;YAChE,aAAG,CAAC,MAAM,CAAC,WAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;SAC/D;QACD,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,CAAC;QACpF,OAAO,EAAE,aAAG,CAAC,OAAO,EAAE;QACtB,KAAK,EAAI,cAAQ,CAAC,MAAM,EAAE;QAC1B,GAAG,EAAM,cAAQ,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,aAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;KACrD,CAAC;CACrB,CAAC,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import Joi from 'joi';
2
- declare const ConfigurationUnionSchema: Joi.AlternativesSchema<any>;
2
+ declare const ConfigurationUnionSchema: Joi.AlternativesSchema<unknown>;
3
3
  export default ConfigurationUnionSchema;
@@ -7,15 +7,14 @@ const joi_1 = __importDefault(require("joi"));
7
7
  const date_1 = __importDefault(require("../common/date"));
8
8
  const util_1 = require("../common/util");
9
9
  const collections = ['divisions', 'companies'];
10
+ const sourcesSchema = joi_1.default.array().items(joi_1.default.object({
11
+ to: joi_1.default.alternatives().try(joi_1.default.string(), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./divisions')))).required(),
12
+ toModel: joi_1.default.string().valid(...collections).required()
13
+ }));
10
14
  const baseFields = {
11
15
  id: joi_1.default.string(),
12
- domain: joi_1.default.array().items(joi_1.default.object({
13
- to: [
14
- joi_1.default.string(),
15
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./divisions'))),
16
- ],
17
- toModel: joi_1.default.string().valid(...collections)
18
- })),
16
+ sources: sourcesSchema,
17
+ domain: sourcesSchema,
19
18
  metadata: joi_1.default.object({
20
19
  active: joi_1.default.boolean(),
21
20
  version: joi_1.default.string(),
@@ -1 +1 @@
1
- {"version":3,"file":"configurations.js","sourceRoot":"","sources":["../../src/validators/configurations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configurations.js","sourceRoot":"","sources":["../../src/validators/configurations.ts"],"names":[],"mappings":"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"}
@@ -11,10 +11,8 @@ const intervals_1 = __importDefault(require("./intervals"));
11
11
  const days_1 = __importDefault(require("./days"));
12
12
  const break_length_1 = __importDefault(require("./break-length"));
13
13
  const locations_1 = __importDefault(require("./locations"));
14
- const groups_1 = __importDefault(require("./groups"));
15
14
  const persons_1 = __importDefault(require("./persons"));
16
15
  const periods_1 = __importDefault(require("./periods"));
17
- const teachers_1 = __importDefault(require("./teachers"));
18
16
  exports.default = joi_1.default.object({
19
17
  id: joi_1.default.string(),
20
18
  displayName: joi_1.default.string().allow(null, ''),
@@ -80,19 +78,13 @@ exports.default = joi_1.default.object({
80
78
  teachers: joi_1.default.array()
81
79
  .allow(null)
82
80
  .items(joi_1.default.object({
83
- to: [
84
- teachers_1.default,
85
- joi_1.default.string()
86
- ],
81
+ to: joi_1.default.alternatives().try(joi_1.default.string(), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./teachers')))).required(),
87
82
  groupIndex: joi_1.default.number().integer().min(0),
88
83
  })),
89
84
  groups: joi_1.default.array()
90
85
  .allow(null)
91
86
  .items(joi_1.default.object({
92
- to: [
93
- groups_1.default,
94
- joi_1.default.string()
95
- ],
87
+ to: joi_1.default.alternatives().try(joi_1.default.string(), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./groups')))).required(),
96
88
  exclude: joi_1.default.array()
97
89
  .items(persons_1.default, joi_1.default.string()),
98
90
  groupIndex: joi_1.default.number().integer().min(0),
@@ -100,10 +92,7 @@ exports.default = joi_1.default.object({
100
92
  participants: joi_1.default.array()
101
93
  .allow(null)
102
94
  .items(joi_1.default.object({
103
- to: [
104
- persons_1.default,
105
- joi_1.default.string()
106
- ],
95
+ to: joi_1.default.alternatives().try(joi_1.default.string(), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./persons')))).required(),
107
96
  groupIndex: joi_1.default.number().integer().min(0),
108
97
  })),
109
98
  locations: joi_1.default.array()
@@ -115,6 +104,7 @@ exports.default = joi_1.default.object({
115
104
  locations: joi_1.default.array()
116
105
  .min(1)
117
106
  .max(1)
107
+ .required()
118
108
  .items(locations_1.default, joi_1.default.string())
119
109
  })),
120
110
  inLocations: joi_1.default.array()
@@ -1 +1 @@
1
- {"version":3,"file":"course-events.js","sourceRoot":"","sources":["../../src/validators/course-events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"course-events.js","sourceRoot":"","sources":["../../src/validators/course-events.ts"],"names":[],"mappings":"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"}
@@ -10,11 +10,9 @@ const util_1 = require("../common/util");
10
10
  const intervals_1 = __importDefault(require("./intervals"));
11
11
  const days_1 = __importDefault(require("./days"));
12
12
  const break_length_1 = __importDefault(require("./break-length"));
13
- const groups_1 = __importDefault(require("./groups"));
14
13
  const persons_1 = __importDefault(require("./persons"));
15
14
  const periods_1 = __importDefault(require("./periods"));
16
15
  const syllabuses_1 = __importDefault(require("./syllabuses"));
17
- const teachers_1 = __importDefault(require("./teachers"));
18
16
  exports.default = joi_1.default.object({
19
17
  id: joi_1.default.string(),
20
18
  displayName: joi_1.default.string().allow(null, ''),
@@ -66,18 +64,12 @@ exports.default = joi_1.default.object({
66
64
  .items(joi_1.default.string(), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./course-events')), 'must be a valid event')),
67
65
  teachers: joi_1.default.array()
68
66
  .items(joi_1.default.object({
69
- to: [
70
- joi_1.default.string(),
71
- teachers_1.default
72
- ],
67
+ to: joi_1.default.alternatives().try(joi_1.default.string(), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./teachers')))).required(),
73
68
  groupIndex: joi_1.default.number().integer().min(0),
74
69
  })),
75
70
  groups: joi_1.default.array()
76
71
  .items(joi_1.default.object({
77
- to: [
78
- groups_1.default,
79
- joi_1.default.string()
80
- ],
72
+ to: joi_1.default.alternatives().try(joi_1.default.string(), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./groups')))).required(),
81
73
  exclude: joi_1.default.array()
82
74
  .items(persons_1.default, joi_1.default.string()),
83
75
  groupIndex: joi_1.default.number().integer().min(0),
@@ -85,10 +77,7 @@ exports.default = joi_1.default.object({
85
77
  participants: joi_1.default.array()
86
78
  .allow(null)
87
79
  .items(joi_1.default.object({
88
- to: [
89
- persons_1.default,
90
- joi_1.default.string()
91
- ],
80
+ to: joi_1.default.alternatives().try(joi_1.default.string(), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./persons')))).required(),
92
81
  groupIndex: joi_1.default.number().integer().min(0),
93
82
  })),
94
83
  locations: joi_1.default.array()
@@ -96,7 +85,10 @@ exports.default = joi_1.default.object({
96
85
  rank: joi_1.default.number().integer().min(0),
97
86
  groupIndex: joi_1.default.number().integer().min(0),
98
87
  locations: joi_1.default.array()
99
- .items(joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./locations')), 'must be a valid location'), joi_1.default.string())
88
+ .min(1)
89
+ .max(1)
90
+ .required()
91
+ .items(joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./locations'))), joi_1.default.string())
100
92
  })),
101
93
  tags: joi_1.default.array().items(joi_1.default.object({
102
94
  value: joi_1.default.string().required(),
@@ -1 +1 @@
1
- {"version":3,"file":"courses.js","sourceRoot":"","sources":["../../src/validators/courses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"courses.js","sourceRoot":"","sources":["../../src/validators/courses.ts"],"names":[],"mappings":"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"}
@@ -18,28 +18,13 @@ exports.default = joi_1.default.object({
18
18
  end: date_1.default.isDate().allow(null).greater(joi_1.default.ref('start')),
19
19
  sources: joi_1.default.array()
20
20
  .items(joi_1.default.object({
21
- to: [
22
- joi_1.default.string(),
23
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./course-events'))),
24
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./courses'))),
25
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./groups'))),
26
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./teachers'))),
27
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./locations'))),
28
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./persons'))),
29
- ],
30
- toModel: joi_1.default.string().valid(...collections)
21
+ to: joi_1.default.alternatives().try(joi_1.default.string(), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./course-events'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./courses'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./groups'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./teachers'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./locations'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./persons')))).required(),
22
+ toModel: joi_1.default.string().valid(...collections).required()
31
23
  })),
32
24
  handleStatus: joi_1.default.string().valid(...exceptionStatus),
33
25
  exception: joi_1.default.object({
34
- to: [
35
- joi_1.default.string(),
36
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./groups'))),
37
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./courses'))),
38
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./teachers'))),
39
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./locations'))),
40
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./persons'))),
41
- ],
42
- toModel: joi_1.default.string().valid('groups', 'courses', 'teachers', 'locations', 'persons'),
26
+ to: joi_1.default.alternatives().try(joi_1.default.string(), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./groups'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./courses'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./teachers'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./locations'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./persons')))).required(),
27
+ toModel: joi_1.default.string().valid('groups', 'courses', 'teachers', 'locations', 'persons').required(),
43
28
  include: joi_1.default.boolean(),
44
29
  start: date_1.default.isDate(),
45
30
  end: date_1.default.isDate().greater(joi_1.default.ref('exception.start')),
@@ -1 +1 @@
1
- {"version":3,"file":"exceptions.js","sourceRoot":"","sources":["../../src/validators/exceptions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exceptions.js","sourceRoot":"","sources":["../../src/validators/exceptions.ts"],"names":[],"mappings":"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"}
@@ -44,16 +44,8 @@ exports.default = joi_1.default.object({
44
44
  })),
45
45
  coalesced: joi_1.default.array()
46
46
  .items(joi_1.default.object({
47
- to: [
48
- joi_1.default.string(),
49
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./course-events'))),
50
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./courses'))),
51
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./locations'))),
52
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./groups'))),
53
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./persons'))),
54
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./teachers'))),
55
- ],
56
- toModel: joi_1.default.string().valid(...collections)
47
+ to: joi_1.default.alternatives().try(joi_1.default.string(), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./course-events'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./courses'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./locations'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./groups'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./persons'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./teachers')))).required(),
48
+ toModel: joi_1.default.string().valid(...collections).required()
57
49
  })),
58
50
  createdAt: date_1.default.isDate(),
59
51
  updatedAt: date_1.default.isDate().allow(null),
@@ -1 +1 @@
1
- {"version":3,"file":"locked-times.js","sourceRoot":"","sources":["../../src/validators/locked-times.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"locked-times.js","sourceRoot":"","sources":["../../src/validators/locked-times.ts"],"names":[],"mappings":"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"}
@@ -12,20 +12,13 @@ exports.default = joi_1.default.object({
12
12
  ids: joi_1.default.string().allow(null),
13
13
  coalesced: joi_1.default.array()
14
14
  .items(joi_1.default.object({
15
- to: [
16
- joi_1.default.string(),
17
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./courses'))),
18
- ],
19
- toModel: joi_1.default.string().valid('courses')
15
+ to: joi_1.default.alternatives().try(joi_1.default.string(), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./courses')))).required(),
16
+ toModel: joi_1.default.string().valid('courses').required()
20
17
  })),
21
18
  species: joi_1.default.array()
22
19
  .items(joi_1.default.object({
23
- to: [
24
- joi_1.default.string(),
25
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./course-events'))),
26
- joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./courses'))),
27
- ],
28
- toModel: joi_1.default.string().valid('events', 'courseevents'),
20
+ to: joi_1.default.alternatives().try(joi_1.default.string(), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./course-events'))), joi_1.default.custom(util_1.Util.functions.schemaWrapper(require('./courses')))).required(),
21
+ toModel: joi_1.default.string().valid('events', 'courseevents').required(),
29
22
  id: joi_1.default.string(),
30
23
  })),
31
24
  createdAt: date_1.default.isDate(),
@@ -1 +1 @@
1
- {"version":3,"file":"overlap-groups.js","sourceRoot":"","sources":["../../src/validators/overlap-groups.ts"],"names":[],"mappings":";;;;;AAAA,8CAAsD;AACtD,mCAAyD;AAGzD,yCAAiE;AACjE,0DAAiE;AAEjE,kBAAe,aAAG,CAAC,MAAM,CAAmD;IAC1E,EAAE,EAAW,aAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAA,eAAM,EAAC,CAAC,CAAC,CAAC;IAElD,GAAG,EAAU,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;IACrC,SAAS,EAAI,aAAG,CAAC,KAAK,EAAE;SACP,KAAK,CACJ,aAAG,CAAC,MAAM,CAAC;QACT,EAAE,EAAE;YACF,aAAG,CAAC,MAAM,EAAE;YACZ,aAAG,CAAC,MAAM,CAAC,WAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;SAC/D;QACD,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;KACvC,CAAC,CACH;IACjB,OAAO,EAAM,aAAG,CAAC,KAAK,EAAE;SACP,KAAK,CACJ,aAAG,CAAC,MAAM,CAAC;QACT,EAAE,EAAE;YACF,aAAG,CAAC,MAAM,EAAE;YACZ,aAAG,CAAC,MAAM,CAAC,WAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC;YACpE,aAAG,CAAC,MAAM,CAAC,WAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;SAC/D;QACD,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC;QACrD,EAAE,EAAO,aAAG,CAAC,MAAM,EAAE;KACtB,CAAC,CACH;IACjB,SAAS,EAAQ,cAAQ,CAAC,MAAM,EAAE;IAClC,SAAS,EAAQ,cAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;IAC9C,MAAM,EAAW,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;CAC1C,CAAC,CAAC"}
1
+ {"version":3,"file":"overlap-groups.js","sourceRoot":"","sources":["../../src/validators/overlap-groups.ts"],"names":[],"mappings":";;;;;AAAA,8CAAsD;AACtD,mCAAyD;AAGzD,yCAAiE;AACjE,0DAAiE;AAEjE,kBAAe,aAAG,CAAC,MAAM,CAAmD;IAC1E,EAAE,EAAW,aAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAA,eAAM,EAAC,CAAC,CAAC,CAAC;IAElD,GAAG,EAAU,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;IACrC,SAAS,EAAI,aAAG,CAAC,KAAK,EAAE;SACP,KAAK,CACJ,aAAG,CAAC,MAAM,CAAC;QACT,EAAE,EAAE,aAAG,CAAC,YAAY,EAAE,CAAC,GAAG,CACxB,aAAG,CAAC,MAAM,EAAE,EACZ,aAAG,CAAC,MAAM,CAAC,WAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAC/D,CAAC,QAAQ,EAAE;QACZ,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE;KAClD,CAAC,CACH;IACjB,OAAO,EAAM,aAAG,CAAC,KAAK,EAAE;SACP,KAAK,CACJ,aAAG,CAAC,MAAM,CAAC;QACT,EAAE,EAAE,aAAG,CAAC,YAAY,EAAE,CAAC,GAAG,CACxB,aAAG,CAAC,MAAM,EAAE,EACZ,aAAG,CAAC,MAAM,CAAC,WAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,EACpE,aAAG,CAAC,MAAM,CAAC,WAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAC/D,CAAC,QAAQ,EAAE;QACZ,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,QAAQ,EAAE;QAChE,EAAE,EAAO,aAAG,CAAC,MAAM,EAAE;KACtB,CAAC,CACH;IACjB,SAAS,EAAQ,cAAQ,CAAC,MAAM,EAAE;IAClC,SAAS,EAAQ,cAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;IAC9C,MAAM,EAAW,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;CAC1C,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import Joi from 'joi';
2
+ declare const _default: Joi.ObjectSchema<Omit<import("@royalschedule/maps/dist/core/v2/types/syllabus").Syllabus, "belongsTo">>;
3
+ export default _default;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const joi_1 = __importDefault(require("joi"));
7
+ exports.default = joi_1.default.object({
8
+ id: joi_1.default.string(),
9
+ schoolType: joi_1.default.string(),
10
+ subjectCode: joi_1.default.string().allow(null, ''),
11
+ subjectName: joi_1.default.string().allow(null, ''),
12
+ subjectDesignation: joi_1.default.string().allow(null, ''),
13
+ courseCode: joi_1.default.string().allow(null, ''),
14
+ courseName: joi_1.default.string().allow(null, ''),
15
+ point: joi_1.default.number().min(0).allow(null),
16
+ official: joi_1.default.boolean(),
17
+ ids: joi_1.default.string(),
18
+ });
19
+ //# sourceMappingURL=syllabus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syllabus.js","sourceRoot":"","sources":["../../src/validators/syllabus.ts"],"names":[],"mappings":";;;;;AAAA,8CAAsD;AAQtD,kBAAe,aAAG,CAAC,MAAM,CAA2C;IAClE,EAAE,EAA0B,aAAG,CAAC,MAAM,EAAE;IACxC,UAAU,EAAkB,aAAG,CAAC,MAAM,EAAE;IACxC,WAAW,EAAiB,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;IACxD,WAAW,EAAiB,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;IACxD,kBAAkB,EAAU,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;IACxD,UAAU,EAAkB,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;IACxD,UAAU,EAAkB,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;IACxD,KAAK,EAAuB,aAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;IAC3D,QAAQ,EAAoB,aAAG,CAAC,OAAO,EAAE;IACzC,GAAG,EAAyB,aAAG,CAAC,MAAM,EAAE;CACzC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@royalschedule/validators",
3
- "version": "2.10.20",
3
+ "version": "2.10.22",
4
4
  "description": "validators",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -18,14 +18,14 @@
18
18
  "author": "",
19
19
  "license": "ISC",
20
20
  "devDependencies": {
21
- "@types/lodash": "^4.17.16",
21
+ "@types/lodash": "^4.17.21",
22
22
  "ts-node": "^10.9.2",
23
- "typescript": "^5.8.3"
23
+ "typescript": "^5.9.3"
24
24
  },
25
25
  "dependencies": {
26
26
  "@meanie/joi-moment": "^2.5.1",
27
27
  "@royalschedule/maps": "^4.0.21",
28
- "joi": "^17.13.3",
28
+ "joi": "^18.0.2",
29
29
  "lodash": "^4.17.21",
30
30
  "moment": "^2.30.1",
31
31
  "nanoid": "^3.3.7"