@royalschedule/maps 4.1.3 → 4.1.5

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 (1221) hide show
  1. package/dist/Additio/from/courses.mjs +28 -0
  2. package/dist/Additio/from/courses.mjs.map +1 -0
  3. package/dist/Additio/from/events.mjs +61 -0
  4. package/dist/Additio/from/events.mjs.map +1 -0
  5. package/dist/Additio/from/groups.mjs +14 -0
  6. package/dist/Additio/from/groups.mjs.map +1 -0
  7. package/dist/Additio/from/index.mjs +8 -0
  8. package/dist/Additio/from/index.mjs.map +1 -0
  9. package/dist/Additio/from/locations.mjs +13 -0
  10. package/dist/Additio/from/locations.mjs.map +1 -0
  11. package/dist/Additio/from/persons.mjs +30 -0
  12. package/dist/Additio/from/persons.mjs.map +1 -0
  13. package/dist/Additio/from/schedules.d.mts +39 -0
  14. package/dist/Additio/from/schedules.mjs +34 -0
  15. package/dist/Additio/from/schedules.mjs.map +1 -0
  16. package/dist/Additio/from/teachers.mjs +25 -0
  17. package/dist/Additio/from/teachers.mjs.map +1 -0
  18. package/dist/Additio/index.d.mts +14 -0
  19. package/dist/Additio/index.mjs +12 -0
  20. package/dist/Additio/index.mjs.map +1 -0
  21. package/dist/Additio/to/index.d.mts +23 -0
  22. package/dist/Additio/to/index.mjs +10 -0
  23. package/dist/Additio/to/index.mjs.map +1 -0
  24. package/dist/Additio/to/schedules.mjs +109 -0
  25. package/dist/Additio/to/schedules.mjs.map +1 -0
  26. package/dist/Additio/types/course-sections.d.mts +20 -0
  27. package/dist/Additio/types/courses.d.mts +17 -0
  28. package/dist/Additio/types/index.d.mts +27 -0
  29. package/dist/Additio/types/lessons.d.mts +27 -0
  30. package/dist/Additio/types/options.d.mts +16 -0
  31. package/dist/Additio/types/primary-groups.d.mts +30 -0
  32. package/dist/Additio/types/rooms.d.mts +12 -0
  33. package/dist/Additio/types/schedule-groups.d.mts +23 -0
  34. package/dist/Additio/types/schedules.d.mts +27 -0
  35. package/dist/Additio/types/schools.d.mts +11 -0
  36. package/dist/Additio/types/users.d.mts +20 -0
  37. package/dist/Admentum/from/courses.mjs +32 -0
  38. package/dist/Admentum/from/courses.mjs.map +1 -0
  39. package/dist/Admentum/from/events.mjs +62 -0
  40. package/dist/Admentum/from/events.mjs.map +1 -0
  41. package/dist/Admentum/from/groups.mjs +14 -0
  42. package/dist/Admentum/from/groups.mjs.map +1 -0
  43. package/dist/Admentum/from/index.mjs +8 -0
  44. package/dist/Admentum/from/index.mjs.map +1 -0
  45. package/dist/Admentum/from/locations.mjs +13 -0
  46. package/dist/Admentum/from/locations.mjs.map +1 -0
  47. package/dist/Admentum/from/persons.mjs +30 -0
  48. package/dist/Admentum/from/persons.mjs.map +1 -0
  49. package/dist/Admentum/from/schedules.d.mts +39 -0
  50. package/dist/Admentum/from/schedules.mjs +34 -0
  51. package/dist/Admentum/from/schedules.mjs.map +1 -0
  52. package/dist/Admentum/from/teachers.mjs +25 -0
  53. package/dist/Admentum/from/teachers.mjs.map +1 -0
  54. package/dist/Admentum/index.d.mts +14 -0
  55. package/dist/Admentum/index.mjs +12 -0
  56. package/dist/Admentum/index.mjs.map +1 -0
  57. package/dist/Admentum/to/index.d.mts +20 -0
  58. package/dist/Admentum/to/index.mjs +10 -0
  59. package/dist/Admentum/to/index.mjs.map +1 -0
  60. package/dist/Admentum/to/schedules.mjs +91 -0
  61. package/dist/Admentum/to/schedules.mjs.map +1 -0
  62. package/dist/Admentum/types/course-sections.d.mts +20 -0
  63. package/dist/Admentum/types/courses.d.mts +17 -0
  64. package/dist/Admentum/types/index.d.mts +25 -0
  65. package/dist/Admentum/types/lessons.d.mts +27 -0
  66. package/dist/Admentum/types/primary-groups.d.mts +30 -0
  67. package/dist/Admentum/types/rooms.d.mts +12 -0
  68. package/dist/Admentum/types/schedule-groups.d.mts +23 -0
  69. package/dist/Admentum/types/schedules.d.mts +27 -0
  70. package/dist/Admentum/types/schools.d.mts +11 -0
  71. package/dist/Admentum/types/users.d.mts +20 -0
  72. package/dist/Excel/index.d.mts +308 -0
  73. package/dist/Excel/index.mjs +13 -0
  74. package/dist/Excel/index.mjs.map +1 -0
  75. package/dist/Excel/v1/from/index.mjs +290 -0
  76. package/dist/Excel/v1/from/index.mjs.map +1 -0
  77. package/dist/Excel/v1/index.d.mts +256 -0
  78. package/dist/Excel/v1/index.mjs +10 -0
  79. package/dist/Excel/v1/index.mjs.map +1 -0
  80. package/dist/Excel/v1/types/index.d.mts +44 -0
  81. package/dist/Excel/v2/from/index.mjs +620 -0
  82. package/dist/Excel/v2/from/index.mjs.map +1 -0
  83. package/dist/Excel/v2/index.d.mts +303 -0
  84. package/dist/Excel/v2/index.mjs +10 -0
  85. package/dist/Excel/v2/index.mjs.map +1 -0
  86. package/dist/Excel/v2/types/index.d.mts +72 -0
  87. package/dist/IdunSoft/from/courses.mjs +16 -0
  88. package/dist/IdunSoft/from/courses.mjs.map +1 -0
  89. package/dist/IdunSoft/from/events.mjs +58 -0
  90. package/dist/IdunSoft/from/events.mjs.map +1 -0
  91. package/dist/IdunSoft/from/groups.mjs +17 -0
  92. package/dist/IdunSoft/from/groups.mjs.map +1 -0
  93. package/dist/IdunSoft/from/index.mjs +8 -0
  94. package/dist/IdunSoft/from/index.mjs.map +1 -0
  95. package/dist/IdunSoft/from/locations.mjs +16 -0
  96. package/dist/IdunSoft/from/locations.mjs.map +1 -0
  97. package/dist/IdunSoft/from/schedules.d.mts +24 -0
  98. package/dist/IdunSoft/from/schedules.mjs +20 -0
  99. package/dist/IdunSoft/from/schedules.mjs.map +1 -0
  100. package/dist/IdunSoft/from/teachers.mjs +16 -0
  101. package/dist/IdunSoft/from/teachers.mjs.map +1 -0
  102. package/dist/IdunSoft/index.d.mts +14 -0
  103. package/dist/IdunSoft/index.mjs +12 -0
  104. package/dist/IdunSoft/index.mjs.map +1 -0
  105. package/dist/IdunSoft/to/index.d.mts +10 -0
  106. package/dist/IdunSoft/to/index.mjs +10 -0
  107. package/dist/IdunSoft/to/index.mjs.map +1 -0
  108. package/dist/IdunSoft/to/schedules.mjs +55 -0
  109. package/dist/IdunSoft/to/schedules.mjs.map +1 -0
  110. package/dist/IdunSoft/types/courses.d.mts +8 -0
  111. package/dist/IdunSoft/types/events.d.mts +26 -0
  112. package/dist/IdunSoft/types/groups.d.mts +8 -0
  113. package/dist/IdunSoft/types/index.d.mts +20 -0
  114. package/dist/IdunSoft/types/locations.d.mts +8 -0
  115. package/dist/IdunSoft/types/schedules.d.mts +17 -0
  116. package/dist/IdunSoft/types/teachers.d.mts +8 -0
  117. package/dist/InfoMentor/index.d.mts +10 -0
  118. package/dist/InfoMentor/index.mjs +10 -0
  119. package/dist/InfoMentor/index.mjs.map +1 -0
  120. package/dist/InfoMentor/to/index.d.mts +10 -0
  121. package/dist/InfoMentor/to/index.mjs +10 -0
  122. package/dist/InfoMentor/to/index.mjs.map +1 -0
  123. package/dist/InfoMentor/to/schedules.mjs +57 -0
  124. package/dist/InfoMentor/to/schedules.mjs.map +1 -0
  125. package/dist/InfoMentor/types/events.d.mts +13 -0
  126. package/dist/InfoMentor/types/index.d.mts +9 -0
  127. package/dist/PlanDigital/from/index.mjs +8 -0
  128. package/dist/PlanDigital/from/index.mjs.map +1 -0
  129. package/dist/PlanDigital/from/schedules.mjs +71 -0
  130. package/dist/PlanDigital/from/schedules.mjs.map +1 -0
  131. package/dist/PlanDigital/index.d.mts +129 -0
  132. package/dist/PlanDigital/index.mjs +10 -0
  133. package/dist/PlanDigital/index.mjs.map +1 -0
  134. package/dist/PlanDigital/types/index.d.mts +34 -0
  135. package/dist/Quiculum/file/index.d.mts +9 -0
  136. package/dist/Quiculum/file/index.mjs +10 -0
  137. package/dist/Quiculum/file/index.mjs.map +1 -0
  138. package/dist/Quiculum/file/to/index.d.mts +21 -0
  139. package/dist/Quiculum/file/to/index.mjs +10 -0
  140. package/dist/Quiculum/file/to/index.mjs.map +1 -0
  141. package/dist/Quiculum/file/to/schedules.mjs +87 -0
  142. package/dist/Quiculum/file/to/schedules.mjs.map +1 -0
  143. package/dist/Quiculum/index.d.mts +11 -0
  144. package/dist/Quiculum/index.mjs +11 -0
  145. package/dist/Quiculum/index.mjs.map +1 -0
  146. package/dist/RS/from/division.d.mts +8 -0
  147. package/dist/RS/from/division.mjs +17 -0
  148. package/dist/RS/from/division.mjs.map +1 -0
  149. package/dist/RS/from/index.mjs +12 -0
  150. package/dist/RS/from/index.mjs.map +1 -0
  151. package/dist/RS/from/schedules.d.mts +9 -0
  152. package/dist/RS/from/schedules.mjs +40 -0
  153. package/dist/RS/from/schedules.mjs.map +1 -0
  154. package/dist/RS/index.d.mts +18 -0
  155. package/dist/RS/index.mjs +12 -0
  156. package/dist/RS/index.mjs.map +1 -0
  157. package/dist/RS/make-connected.d.mts +25 -0
  158. package/dist/RS/make-connected.mjs +207 -0
  159. package/dist/RS/make-connected.mjs.map +1 -0
  160. package/dist/RS/to/index.mjs +8 -0
  161. package/dist/RS/to/index.mjs.map +1 -0
  162. package/dist/RS/to/initial-configuration.mjs +41 -0
  163. package/dist/RS/to/initial-configuration.mjs.map +1 -0
  164. package/dist/RS/to/input/default.mjs +28 -0
  165. package/dist/RS/to/input/default.mjs.map +1 -0
  166. package/dist/RS/to/input/dependencies.mjs +31 -0
  167. package/dist/RS/to/input/dependencies.mjs.map +1 -0
  168. package/dist/RS/to/input/events.mjs +101 -0
  169. package/dist/RS/to/input/events.mjs.map +1 -0
  170. package/dist/RS/to/input/groups.mjs +32 -0
  171. package/dist/RS/to/input/groups.mjs.map +1 -0
  172. package/dist/RS/to/input/individuals.mjs +45 -0
  173. package/dist/RS/to/input/individuals.mjs.map +1 -0
  174. package/dist/RS/to/input/input.mjs +59 -0
  175. package/dist/RS/to/input/input.mjs.map +1 -0
  176. package/dist/RS/to/input/intervals.mjs +129 -0
  177. package/dist/RS/to/input/intervals.mjs.map +1 -0
  178. package/dist/RS/to/input/linked-events-sets.mjs +96 -0
  179. package/dist/RS/to/input/linked-events-sets.mjs.map +1 -0
  180. package/dist/RS/to/input/locked-times.mjs +89 -0
  181. package/dist/RS/to/input/locked-times.mjs.map +1 -0
  182. package/dist/RS/to/input/periods.mjs +57 -0
  183. package/dist/RS/to/input/periods.mjs.map +1 -0
  184. package/dist/RS/to/input/settings.mjs +13 -0
  185. package/dist/RS/to/input/settings.mjs.map +1 -0
  186. package/dist/RS/to/input/teachers.mjs +32 -0
  187. package/dist/RS/to/input/teachers.mjs.map +1 -0
  188. package/dist/RS/to/input/util/parse-days.mjs +10 -0
  189. package/dist/RS/to/input/util/parse-days.mjs.map +1 -0
  190. package/dist/RS/to/input/util/parse-group-references.mjs +50 -0
  191. package/dist/RS/to/input/util/parse-group-references.mjs.map +1 -0
  192. package/dist/RS/to/input/util/parse-location-references.mjs +35 -0
  193. package/dist/RS/to/input/util/parse-location-references.mjs.map +1 -0
  194. package/dist/RS/to/input/util/parse-max-working-hours.mjs +14 -0
  195. package/dist/RS/to/input/util/parse-max-working-hours.mjs.map +1 -0
  196. package/dist/RS/to/input/util/parse-minimum-break-length.mjs +19 -0
  197. package/dist/RS/to/input/util/parse-minimum-break-length.mjs.map +1 -0
  198. package/dist/RS/to/input/util/util.mjs +100 -0
  199. package/dist/RS/to/input/util/util.mjs.map +1 -0
  200. package/dist/RS/to/schedules.d.mts +7 -0
  201. package/dist/RS/to/schedules.mjs +51 -0
  202. package/dist/RS/to/schedules.mjs.map +1 -0
  203. package/dist/RS/types/algorithm-parameters.d.mts +17 -0
  204. package/dist/RS/types/configurations.d.mts +10 -0
  205. package/dist/RS/types/event-configuration.d.mts +20 -0
  206. package/dist/RS/types/index.d.mts +21 -0
  207. package/dist/RS/types/schedule-data.d.mts +20 -0
  208. package/dist/RS/types/to.d.mts +64 -0
  209. package/dist/RS/types/to.mjs +6 -0
  210. package/dist/RS/types/to.mjs.map +1 -0
  211. package/dist/SS12000/from/activities.mjs +35 -0
  212. package/dist/SS12000/from/activities.mjs.map +1 -0
  213. package/dist/SS12000/from/calendar-events.mjs +20 -0
  214. package/dist/SS12000/from/calendar-events.mjs.map +1 -0
  215. package/dist/SS12000/from/duties.mjs +31 -0
  216. package/dist/SS12000/from/duties.mjs.map +1 -0
  217. package/dist/SS12000/from/groups.mjs +23 -0
  218. package/dist/SS12000/from/groups.mjs.map +1 -0
  219. package/dist/SS12000/from/index.mjs +24 -0
  220. package/dist/SS12000/from/index.mjs.map +1 -0
  221. package/dist/SS12000/from/persons.mjs +43 -0
  222. package/dist/SS12000/from/persons.mjs.map +1 -0
  223. package/dist/SS12000/from/resources.mjs +9 -0
  224. package/dist/SS12000/from/resources.mjs.map +1 -0
  225. package/dist/SS12000/from/rooms.mjs +18 -0
  226. package/dist/SS12000/from/rooms.mjs.map +1 -0
  227. package/dist/SS12000/from/syllabuses.mjs +21 -0
  228. package/dist/SS12000/from/syllabuses.mjs.map +1 -0
  229. package/dist/SS12000/index.d.mts +37 -0
  230. package/dist/SS12000/index.mjs +12 -0
  231. package/dist/SS12000/index.mjs.map +1 -0
  232. package/dist/SS12000/to/activities.mjs +63 -0
  233. package/dist/SS12000/to/activities.mjs.map +1 -0
  234. package/dist/SS12000/to/calendar-events.mjs +53 -0
  235. package/dist/SS12000/to/calendar-events.mjs.map +1 -0
  236. package/dist/SS12000/to/common.mjs +25 -0
  237. package/dist/SS12000/to/common.mjs.map +1 -0
  238. package/dist/SS12000/to/duties.mjs +45 -0
  239. package/dist/SS12000/to/duties.mjs.map +1 -0
  240. package/dist/SS12000/to/groups.mjs +49 -0
  241. package/dist/SS12000/to/groups.mjs.map +1 -0
  242. package/dist/SS12000/to/index.d.mts +57 -0
  243. package/dist/SS12000/to/index.mjs +24 -0
  244. package/dist/SS12000/to/index.mjs.map +1 -0
  245. package/dist/SS12000/to/persons.mjs +40 -0
  246. package/dist/SS12000/to/persons.mjs.map +1 -0
  247. package/dist/SS12000/to/resources.mjs +27 -0
  248. package/dist/SS12000/to/resources.mjs.map +1 -0
  249. package/dist/SS12000/to/rooms.mjs +32 -0
  250. package/dist/SS12000/to/rooms.mjs.map +1 -0
  251. package/dist/SS12000/to/syllabuses.mjs +34 -0
  252. package/dist/SS12000/to/syllabuses.mjs.map +1 -0
  253. package/dist/SS12000/types/activities.d.mts +41 -0
  254. package/dist/SS12000/types/calendar-events.d.mts +23 -0
  255. package/dist/SS12000/types/codes.d.mts +9 -0
  256. package/dist/SS12000/types/duties.d.mts +23 -0
  257. package/dist/SS12000/types/duty-assignments.d.mts +13 -0
  258. package/dist/SS12000/types/groups.d.mts +23 -0
  259. package/dist/SS12000/types/index.d.mts +21 -0
  260. package/dist/SS12000/types/organisation.d.mts +20 -0
  261. package/dist/SS12000/types/persons.d.mts +30 -0
  262. package/dist/SS12000/types/resources.d.mts +13 -0
  263. package/dist/SS12000/types/rooms.d.mts +17 -0
  264. package/dist/SS12000/types/syllabus.d.mts +19 -0
  265. package/dist/SchoolSoft/api/from/index.mjs +8 -0
  266. package/dist/SchoolSoft/api/from/index.mjs.map +1 -0
  267. package/dist/SchoolSoft/api/from/schedules.mjs +163 -0
  268. package/dist/SchoolSoft/api/from/schedules.mjs.map +1 -0
  269. package/dist/SchoolSoft/api/index.d.mts +462 -0
  270. package/dist/SchoolSoft/api/index.mjs +10 -0
  271. package/dist/SchoolSoft/api/index.mjs.map +1 -0
  272. package/dist/SchoolSoft/api/types/group.d.mts +12 -0
  273. package/dist/SchoolSoft/api/types/index.d.mts +19 -0
  274. package/dist/SchoolSoft/api/types/lesson.d.mts +9 -0
  275. package/dist/SchoolSoft/api/types/location.d.mts +8 -0
  276. package/dist/SchoolSoft/api/types/persons.d.mts +31 -0
  277. package/dist/SchoolSoft/api/types/schedule.d.mts +17 -0
  278. package/dist/SchoolSoft/api/types/teacher.d.mts +13 -0
  279. package/dist/SchoolSoft/file/from/index.mjs +8 -0
  280. package/dist/SchoolSoft/file/from/index.mjs.map +1 -0
  281. package/dist/SchoolSoft/file/from/schedules.mjs +130 -0
  282. package/dist/SchoolSoft/file/from/schedules.mjs.map +1 -0
  283. package/dist/SchoolSoft/file/index.d.mts +16 -0
  284. package/dist/SchoolSoft/file/index.mjs +12 -0
  285. package/dist/SchoolSoft/file/index.mjs.map +1 -0
  286. package/dist/SchoolSoft/file/to/index.d.mts +14 -0
  287. package/dist/SchoolSoft/file/to/index.mjs +10 -0
  288. package/dist/SchoolSoft/file/to/index.mjs.map +1 -0
  289. package/dist/SchoolSoft/file/to/schedules.mjs +106 -0
  290. package/dist/SchoolSoft/file/to/schedules.mjs.map +1 -0
  291. package/dist/SchoolSoft/file/types/events.d.mts +27 -0
  292. package/dist/SchoolSoft/file/types/index.d.mts +17 -0
  293. package/dist/SchoolSoft/file/types/persons.d.mts +31 -0
  294. package/dist/SchoolSoft/index.d.mts +21 -0
  295. package/dist/SchoolSoft/index.mjs +14 -0
  296. package/dist/SchoolSoft/index.mjs.map +1 -0
  297. package/dist/Schoolity/index.d.mts +10 -0
  298. package/dist/Schoolity/index.mjs +10 -0
  299. package/dist/Schoolity/index.mjs.map +1 -0
  300. package/dist/Schoolity/txt/index.d.mts +10 -0
  301. package/dist/Schoolity/txt/index.mjs +10 -0
  302. package/dist/Schoolity/txt/index.mjs.map +1 -0
  303. package/dist/Schoolity/txt/to/index.d.mts +11 -0
  304. package/dist/Schoolity/txt/to/index.mjs +10 -0
  305. package/dist/Schoolity/txt/to/index.mjs.map +1 -0
  306. package/dist/Schoolity/txt/to/schedules.mjs +324 -0
  307. package/dist/Schoolity/txt/to/schedules.mjs.map +1 -0
  308. package/dist/Schoolity/txt/types/index.d.mts +119 -0
  309. package/dist/Skola24/index.d.mts +13 -0
  310. package/dist/Skola24/index.mjs +12 -0
  311. package/dist/Skola24/index.mjs.map +1 -0
  312. package/dist/Skola24/mdb/from/course-and-events.mjs +239 -0
  313. package/dist/Skola24/mdb/from/course-and-events.mjs.map +1 -0
  314. package/dist/Skola24/mdb/from/groups.mjs +12 -0
  315. package/dist/Skola24/mdb/from/groups.mjs.map +1 -0
  316. package/dist/Skola24/mdb/from/index.mjs +8 -0
  317. package/dist/Skola24/mdb/from/index.mjs.map +1 -0
  318. package/dist/Skola24/mdb/from/locations.mjs +11 -0
  319. package/dist/Skola24/mdb/from/locations.mjs.map +1 -0
  320. package/dist/Skola24/mdb/from/schedule.d.mts +28 -0
  321. package/dist/Skola24/mdb/from/schedule.mjs +97 -0
  322. package/dist/Skola24/mdb/from/schedule.mjs.map +1 -0
  323. package/dist/Skola24/mdb/from/teachers.mjs +11 -0
  324. package/dist/Skola24/mdb/from/teachers.mjs.map +1 -0
  325. package/dist/Skola24/mdb/index.d.mts +12 -0
  326. package/dist/Skola24/mdb/index.mjs +10 -0
  327. package/dist/Skola24/mdb/index.mjs.map +1 -0
  328. package/dist/Skola24/mdb/types/Course.d.mts +10 -0
  329. package/dist/Skola24/mdb/types/Group-group-link.d.mts +8 -0
  330. package/dist/Skola24/mdb/types/Group.d.mts +9 -0
  331. package/dist/Skola24/mdb/types/Lesson-group-link.d.mts +8 -0
  332. package/dist/Skola24/mdb/types/Lesson-period-link.d.mts +8 -0
  333. package/dist/Skola24/mdb/types/Lesson-room-link.d.mts +8 -0
  334. package/dist/Skola24/mdb/types/Lesson-teacher-link.d.mts +8 -0
  335. package/dist/Skola24/mdb/types/Lesson.d.mts +13 -0
  336. package/dist/Skola24/mdb/types/Options.d.mts +11 -0
  337. package/dist/Skola24/mdb/types/Period.d.mts +9 -0
  338. package/dist/Skola24/mdb/types/Plan-group-link.d.mts +8 -0
  339. package/dist/Skola24/mdb/types/Plan-period-link.d.mts +8 -0
  340. package/dist/Skola24/mdb/types/Plan-teacher-link.d.mts +10 -0
  341. package/dist/Skola24/mdb/types/Plan.d.mts +9 -0
  342. package/dist/Skola24/mdb/types/Room.d.mts +9 -0
  343. package/dist/Skola24/mdb/types/Schedule.d.mts +39 -0
  344. package/dist/Skola24/mdb/types/Subject.d.mts +8 -0
  345. package/dist/Skola24/mdb/types/Teacher.d.mts +10 -0
  346. package/dist/Skola24/mdb/types/index.d.mts +23 -0
  347. package/dist/Skola24/txt/from/calendar-exceptions.mjs +67 -0
  348. package/dist/Skola24/txt/from/calendar-exceptions.mjs.map +1 -0
  349. package/dist/Skola24/txt/from/division.mjs +44 -0
  350. package/dist/Skola24/txt/from/division.mjs.map +1 -0
  351. package/dist/Skola24/txt/from/index.mjs +12 -0
  352. package/dist/Skola24/txt/from/index.mjs.map +1 -0
  353. package/dist/Skola24/txt/from/period.mjs +96 -0
  354. package/dist/Skola24/txt/from/period.mjs.map +1 -0
  355. package/dist/Skola24/txt/from/schedules.d.mts +18 -0
  356. package/dist/Skola24/txt/from/schedules.mjs +274 -0
  357. package/dist/Skola24/txt/from/schedules.mjs.map +1 -0
  358. package/dist/Skola24/txt/from/util.mjs +23 -0
  359. package/dist/Skola24/txt/from/util.mjs.map +1 -0
  360. package/dist/Skola24/txt/index.d.mts +29 -0
  361. package/dist/Skola24/txt/index.mjs +12 -0
  362. package/dist/Skola24/txt/index.mjs.map +1 -0
  363. package/dist/Skola24/txt/to/index.d.mts +11 -0
  364. package/dist/Skola24/txt/to/index.mjs +10 -0
  365. package/dist/Skola24/txt/to/index.mjs.map +1 -0
  366. package/dist/Skola24/txt/to/schedules.mjs +290 -0
  367. package/dist/Skola24/txt/to/schedules.mjs.map +1 -0
  368. package/dist/Skola24/txt/types/index.d.mts +154 -0
  369. package/dist/common/constants.mjs +8 -0
  370. package/dist/common/constants.mjs.map +1 -0
  371. package/dist/common/functions.mjs +61 -0
  372. package/dist/common/functions.mjs.map +1 -0
  373. package/dist/common/get-date.mjs +15 -0
  374. package/dist/common/get-date.mjs.map +1 -0
  375. package/dist/common/make-chainable/index.mjs +36 -0
  376. package/dist/common/make-chainable/index.mjs.map +1 -0
  377. package/dist/common/types.d.mts +38 -0
  378. package/dist/core/from/configurations.mjs +12 -0
  379. package/dist/core/from/configurations.mjs.map +1 -0
  380. package/dist/core/from/courses.mjs +12 -0
  381. package/dist/core/from/courses.mjs.map +1 -0
  382. package/dist/core/from/events.mjs +13 -0
  383. package/dist/core/from/events.mjs.map +1 -0
  384. package/dist/core/from/exceptions.mjs +12 -0
  385. package/dist/core/from/exceptions.mjs.map +1 -0
  386. package/dist/core/from/groups.mjs +12 -0
  387. package/dist/core/from/groups.mjs.map +1 -0
  388. package/dist/core/from/index.mjs +23 -0
  389. package/dist/core/from/index.mjs.map +1 -0
  390. package/dist/core/from/linked-events-sets.mjs +12 -0
  391. package/dist/core/from/linked-events-sets.mjs.map +1 -0
  392. package/dist/core/from/locations.mjs +12 -0
  393. package/dist/core/from/locations.mjs.map +1 -0
  394. package/dist/core/from/locked-times.mjs +12 -0
  395. package/dist/core/from/locked-times.mjs.map +1 -0
  396. package/dist/core/from/periods.mjs +12 -0
  397. package/dist/core/from/periods.mjs.map +1 -0
  398. package/dist/core/from/persons.mjs +12 -0
  399. package/dist/core/from/persons.mjs.map +1 -0
  400. package/dist/core/from/root-intervals.mjs +12 -0
  401. package/dist/core/from/root-intervals.mjs.map +1 -0
  402. package/dist/core/from/schedules.d.mts +7 -0
  403. package/dist/core/from/schedules.mjs +38 -0
  404. package/dist/core/from/schedules.mjs.map +1 -0
  405. package/dist/core/from/settings.mjs +21 -0
  406. package/dist/core/from/settings.mjs.map +1 -0
  407. package/dist/core/from/syllabuses.mjs +13 -0
  408. package/dist/core/from/syllabuses.mjs.map +1 -0
  409. package/dist/core/from/teachers.mjs +12 -0
  410. package/dist/core/from/teachers.mjs.map +1 -0
  411. package/dist/core/index.d.mts +38 -0
  412. package/dist/core/index.mjs +16 -0
  413. package/dist/core/index.mjs.map +1 -0
  414. package/dist/core/interfaces/index.d.mts +23 -0
  415. package/dist/core/interfaces/index.mjs +6 -0
  416. package/dist/core/interfaces/other/companies.d.mts +147 -0
  417. package/dist/core/interfaces/other/companies.mjs +9 -0
  418. package/dist/core/interfaces/other/companies.mjs.map +1 -0
  419. package/dist/core/interfaces/other/etc.d.mts +19 -0
  420. package/dist/core/interfaces/other/index.d.mts +6 -0
  421. package/dist/core/interfaces/other/integrations.d.mts +17 -0
  422. package/dist/core/interfaces/other/operations.d.mts +36 -0
  423. package/dist/core/interfaces/other/policies.d.mts +31 -0
  424. package/dist/core/interfaces/other/sync-logs.d.mts +21 -0
  425. package/dist/core/interfaces/other/users.d.mts +35 -0
  426. package/dist/core/interfaces/vertices/companies.d.mts +8 -0
  427. package/dist/core/interfaces/vertices/configurations.d.mts +58 -0
  428. package/dist/core/interfaces/vertices/conversations.d.mts +88 -0
  429. package/dist/core/interfaces/vertices/courses.d.mts +65 -0
  430. package/dist/core/interfaces/vertices/division-settings.d.mts +55 -0
  431. package/dist/core/interfaces/vertices/divisions.d.mts +31 -0
  432. package/dist/core/interfaces/vertices/events.d.mts +106 -0
  433. package/dist/core/interfaces/vertices/exceptions.d.mts +74 -0
  434. package/dist/core/interfaces/vertices/generations.d.mts +23 -0
  435. package/dist/core/interfaces/vertices/groups.d.mts +51 -0
  436. package/dist/core/interfaces/vertices/index.d.mts +237 -0
  437. package/dist/core/interfaces/vertices/index.mjs +3 -0
  438. package/dist/core/interfaces/vertices/linked-events-sets.d.mts +19 -0
  439. package/dist/core/interfaces/vertices/locations.d.mts +22 -0
  440. package/dist/core/interfaces/vertices/locked-times.d.mts +37 -0
  441. package/dist/core/interfaces/vertices/messages.d.mts +27 -0
  442. package/dist/core/interfaces/vertices/periods.d.mts +16 -0
  443. package/dist/core/interfaces/vertices/persons.d.mts +32 -0
  444. package/dist/core/interfaces/vertices/properties/belongs-to.d.mts +11 -0
  445. package/dist/core/interfaces/vertices/properties/coalesced.d.mts +8 -0
  446. package/dist/core/interfaces/vertices/properties/days.d.mts +9 -0
  447. package/dist/core/interfaces/vertices/properties/index.d.mts +15 -0
  448. package/dist/core/interfaces/vertices/properties/intervals.d.mts +10 -0
  449. package/dist/core/interfaces/vertices/properties/maximum-schedule-span.d.mts +19 -0
  450. package/dist/core/interfaces/vertices/properties/min-break-length.d.mts +5 -0
  451. package/dist/core/interfaces/vertices/properties/planned-scheduled-duration.d.mts +13 -0
  452. package/dist/core/interfaces/vertices/properties/species.d.mts +9 -0
  453. package/dist/core/interfaces/vertices/properties/tags.d.mts +9 -0
  454. package/dist/core/interfaces/vertices/properties/week.d.mts +22 -0
  455. package/dist/core/interfaces/vertices/properties/week.mjs +6 -0
  456. package/dist/core/interfaces/vertices/properties/week.mjs.map +1 -0
  457. package/dist/core/interfaces/vertices/root-intervals.d.mts +14 -0
  458. package/dist/core/interfaces/vertices/syllabuses.d.mts +20 -0
  459. package/dist/core/interfaces/vertices/teachers.d.mts +41 -0
  460. package/dist/core/interfaces/vertices/threads.d.mts +33 -0
  461. package/dist/core/interfaces/vertices/users.d.mts +11 -0
  462. package/dist/core/interfaces/vertices/util/common.d.mts +28 -0
  463. package/dist/core/interfaces/vertices/util/custom-vertex-export/assert-no-invalid-expand-keys.d.mts +16 -0
  464. package/dist/core/interfaces/vertices/util/custom-vertex-export/index.d.mts +34 -0
  465. package/dist/core/interfaces/vertices/util/custom-vertex-export/util.d.mts +52 -0
  466. package/dist/core/interfaces/vertices/util/deep-vertex-export/index.d.mts +65 -0
  467. package/dist/core/interfaces/vertices/util/edges.d.mts +123 -0
  468. package/dist/core/interfaces/vertices/util/index.d.mts +6 -0
  469. package/dist/core/interfaces/vertices/util/keys-of.d.mts +26 -0
  470. package/dist/core/interfaces/vertices/util/serialized-vertex-export.d.mts +11 -0
  471. package/dist/core/interfaces/vertices/util/util.d.mts +79 -0
  472. package/dist/core/interfaces/vertices/util/vertex-query/index.d.mts +50 -0
  473. package/dist/core/interfaces/vertices/util/vertex-query/util.d.mts +13 -0
  474. package/dist/core/interfaces/vertices/util/vertex.d.mts +68 -0
  475. package/dist/core/interfaces/vertices/vertex-query.d.mts +115 -0
  476. package/dist/core/interfaces/vertices/vertex-query.mjs +118 -0
  477. package/dist/core/interfaces/vertices/vertex-query.mjs.map +1 -0
  478. package/dist/core/to/configurations.mjs +16 -0
  479. package/dist/core/to/configurations.mjs.map +1 -0
  480. package/dist/core/to/courses.mjs +40 -0
  481. package/dist/core/to/courses.mjs.map +1 -0
  482. package/dist/core/to/division.mjs +10 -0
  483. package/dist/core/to/division.mjs.map +1 -0
  484. package/dist/core/to/events.mjs +42 -0
  485. package/dist/core/to/events.mjs.map +1 -0
  486. package/dist/core/to/exceptions.mjs +29 -0
  487. package/dist/core/to/exceptions.mjs.map +1 -0
  488. package/dist/core/to/groups.mjs +25 -0
  489. package/dist/core/to/groups.mjs.map +1 -0
  490. package/dist/core/to/index.d.mts +9 -0
  491. package/dist/core/to/index.mjs +10 -0
  492. package/dist/core/to/index.mjs.map +1 -0
  493. package/dist/core/to/linked-events-sets.mjs +17 -0
  494. package/dist/core/to/linked-events-sets.mjs.map +1 -0
  495. package/dist/core/to/locations.mjs +21 -0
  496. package/dist/core/to/locations.mjs.map +1 -0
  497. package/dist/core/to/locked-times.mjs +20 -0
  498. package/dist/core/to/locked-times.mjs.map +1 -0
  499. package/dist/core/to/periods.mjs +16 -0
  500. package/dist/core/to/periods.mjs.map +1 -0
  501. package/dist/core/to/persons.mjs +17 -0
  502. package/dist/core/to/persons.mjs.map +1 -0
  503. package/dist/core/to/root-intervals.mjs +16 -0
  504. package/dist/core/to/root-intervals.mjs.map +1 -0
  505. package/dist/core/to/schedules.d.mts +47 -0
  506. package/dist/core/to/schedules.mjs +42 -0
  507. package/dist/core/to/schedules.mjs.map +1 -0
  508. package/dist/core/to/settings.mjs +18 -0
  509. package/dist/core/to/settings.mjs.map +1 -0
  510. package/dist/core/to/syllabuses.mjs +16 -0
  511. package/dist/core/to/syllabuses.mjs.map +1 -0
  512. package/dist/core/to/teachers.mjs +24 -0
  513. package/dist/core/to/teachers.mjs.map +1 -0
  514. package/dist/core/to/util.d.mts +10 -0
  515. package/dist/core/to/util.mjs +24 -0
  516. package/dist/core/to/util.mjs.map +1 -0
  517. package/dist/core/types/common/index.d.mts +8 -0
  518. package/dist/core/types/common/meta.d.mts +15 -0
  519. package/dist/core/types/index.d.mts +137 -0
  520. package/dist/core/util.mjs +46 -0
  521. package/dist/core/util.mjs.map +1 -0
  522. package/dist/identify/constants/index.d.mts +144 -0
  523. package/dist/identify/constants/index.mjs +317 -0
  524. package/dist/identify/constants/index.mjs.map +1 -0
  525. package/dist/identify/index.d.mts +8 -0
  526. package/dist/identify/index.mjs +93 -0
  527. package/dist/identify/index.mjs.map +1 -0
  528. package/dist/identify/types/index.d.mts +15 -0
  529. package/dist/index.d.mts +57 -0
  530. package/dist/index.mjs +22 -0
  531. package/dist/sdui/from/classes.mjs +8 -0
  532. package/dist/sdui/from/classes.mjs.map +1 -0
  533. package/dist/sdui/from/courses.mjs +14 -0
  534. package/dist/sdui/from/courses.mjs.map +1 -0
  535. package/dist/sdui/from/holidays.mjs +8 -0
  536. package/dist/sdui/from/holidays.mjs.map +1 -0
  537. package/dist/sdui/from/hours.mjs +6 -0
  538. package/dist/sdui/from/hours.mjs.map +1 -0
  539. package/dist/sdui/from/index.mjs +30 -0
  540. package/dist/sdui/from/index.mjs.map +1 -0
  541. package/dist/sdui/from/lessons.mjs +23 -0
  542. package/dist/sdui/from/lessons.mjs.map +1 -0
  543. package/dist/sdui/from/rooms.mjs +11 -0
  544. package/dist/sdui/from/rooms.mjs.map +1 -0
  545. package/dist/sdui/from/schedules.d.mts +21 -0
  546. package/dist/sdui/from/schedules.mjs +24 -0
  547. package/dist/sdui/from/schedules.mjs.map +1 -0
  548. package/dist/sdui/from/school-years.mjs +11 -0
  549. package/dist/sdui/from/school-years.mjs.map +1 -0
  550. package/dist/sdui/from/subjects.mjs +6 -0
  551. package/dist/sdui/from/subjects.mjs.map +1 -0
  552. package/dist/sdui/from/substitution-plans.mjs +10 -0
  553. package/dist/sdui/from/substitution-plans.mjs.map +1 -0
  554. package/dist/sdui/from/teachers.mjs +15 -0
  555. package/dist/sdui/from/teachers.mjs.map +1 -0
  556. package/dist/sdui/index.d.mts +32 -0
  557. package/dist/sdui/index.mjs +12 -0
  558. package/dist/sdui/index.mjs.map +1 -0
  559. package/dist/sdui/to/classes.mjs +10 -0
  560. package/dist/sdui/to/classes.mjs.map +1 -0
  561. package/dist/sdui/to/courses.mjs +16 -0
  562. package/dist/sdui/to/courses.mjs.map +1 -0
  563. package/dist/sdui/to/holidays.mjs +16 -0
  564. package/dist/sdui/to/holidays.mjs.map +1 -0
  565. package/dist/sdui/to/hours.mjs +15 -0
  566. package/dist/sdui/to/hours.mjs.map +1 -0
  567. package/dist/sdui/to/index.d.mts +22 -0
  568. package/dist/sdui/to/index.mjs +30 -0
  569. package/dist/sdui/to/index.mjs.map +1 -0
  570. package/dist/sdui/to/lessons.mjs +24 -0
  571. package/dist/sdui/to/lessons.mjs.map +1 -0
  572. package/dist/sdui/to/rooms.mjs +13 -0
  573. package/dist/sdui/to/rooms.mjs.map +1 -0
  574. package/dist/sdui/to/schedules.mjs +26 -0
  575. package/dist/sdui/to/schedules.mjs.map +1 -0
  576. package/dist/sdui/to/school-years.mjs +18 -0
  577. package/dist/sdui/to/school-years.mjs.map +1 -0
  578. package/dist/sdui/to/subjects.mjs +8 -0
  579. package/dist/sdui/to/subjects.mjs.map +1 -0
  580. package/dist/sdui/to/substitution-plans.mjs +46 -0
  581. package/dist/sdui/to/substitution-plans.mjs.map +1 -0
  582. package/dist/sdui/to/teachers.mjs +20 -0
  583. package/dist/sdui/to/teachers.mjs.map +1 -0
  584. package/dist/sdui/types/classes.d.mts +8 -0
  585. package/dist/sdui/types/courses.d.mts +12 -0
  586. package/dist/sdui/types/holidays.d.mts +10 -0
  587. package/dist/sdui/types/hours.d.mts +10 -0
  588. package/dist/sdui/types/index.d.mts +31 -0
  589. package/dist/sdui/types/lessons.d.mts +13 -0
  590. package/dist/sdui/types/rooms.d.mts +9 -0
  591. package/dist/sdui/types/schedules.d.mts +27 -0
  592. package/dist/sdui/types/school-years.d.mts +9 -0
  593. package/dist/sdui/types/subjects.d.mts +9 -0
  594. package/dist/sdui/types/substitution-plans.d.mts +30 -0
  595. package/dist/sdui/types/teachers.d.mts +10 -0
  596. package/dist/vKlass/from/index.mjs +8 -0
  597. package/dist/vKlass/from/index.mjs.map +1 -0
  598. package/dist/vKlass/from/schedule.d.mts +24 -0
  599. package/dist/vKlass/from/schedule.mjs +71 -0
  600. package/dist/vKlass/from/schedule.mjs.map +1 -0
  601. package/dist/vKlass/index.d.mts +13 -0
  602. package/dist/vKlass/index.mjs +12 -0
  603. package/dist/vKlass/index.mjs.map +1 -0
  604. package/dist/vKlass/to/index.d.mts +9 -0
  605. package/dist/vKlass/to/index.mjs +10 -0
  606. package/dist/vKlass/to/index.mjs.map +1 -0
  607. package/dist/vKlass/to/schedules.d.mts +14 -0
  608. package/dist/vKlass/to/schedules.mjs +82 -0
  609. package/dist/vKlass/to/schedules.mjs.map +1 -0
  610. package/dist/vKlass/types/index.d.mts +53 -0
  611. package/package.json +4 -3
  612. package/dist/Additio/from/courses.js +0 -28
  613. package/dist/Additio/from/courses.js.map +0 -1
  614. package/dist/Additio/from/events.js +0 -61
  615. package/dist/Additio/from/events.js.map +0 -1
  616. package/dist/Additio/from/groups.js +0 -14
  617. package/dist/Additio/from/groups.js.map +0 -1
  618. package/dist/Additio/from/index.js +0 -8
  619. package/dist/Additio/from/index.js.map +0 -1
  620. package/dist/Additio/from/locations.js +0 -13
  621. package/dist/Additio/from/locations.js.map +0 -1
  622. package/dist/Additio/from/persons.js +0 -30
  623. package/dist/Additio/from/persons.js.map +0 -1
  624. package/dist/Additio/from/schedules.d.ts +0 -38
  625. package/dist/Additio/from/schedules.js +0 -36
  626. package/dist/Additio/from/schedules.js.map +0 -1
  627. package/dist/Additio/from/teachers.js +0 -25
  628. package/dist/Additio/from/teachers.js.map +0 -1
  629. package/dist/Additio/index.d.ts +0 -14
  630. package/dist/Additio/index.js +0 -12
  631. package/dist/Additio/index.js.map +0 -1
  632. package/dist/Additio/to/index.d.ts +0 -21
  633. package/dist/Additio/to/index.js +0 -10
  634. package/dist/Additio/to/index.js.map +0 -1
  635. package/dist/Additio/to/schedules.js +0 -111
  636. package/dist/Additio/to/schedules.js.map +0 -1
  637. package/dist/Additio/types/course-sections.d.ts +0 -20
  638. package/dist/Additio/types/courses.d.ts +0 -17
  639. package/dist/Additio/types/index.d.ts +0 -27
  640. package/dist/Additio/types/lessons.d.ts +0 -27
  641. package/dist/Additio/types/options.d.ts +0 -16
  642. package/dist/Additio/types/primary-groups.d.ts +0 -30
  643. package/dist/Additio/types/rooms.d.ts +0 -12
  644. package/dist/Additio/types/schedule-groups.d.ts +0 -23
  645. package/dist/Additio/types/schedules.d.ts +0 -27
  646. package/dist/Additio/types/schools.d.ts +0 -11
  647. package/dist/Additio/types/users.d.ts +0 -20
  648. package/dist/Admentum/from/courses.js +0 -32
  649. package/dist/Admentum/from/courses.js.map +0 -1
  650. package/dist/Admentum/from/events.js +0 -62
  651. package/dist/Admentum/from/events.js.map +0 -1
  652. package/dist/Admentum/from/groups.js +0 -14
  653. package/dist/Admentum/from/groups.js.map +0 -1
  654. package/dist/Admentum/from/index.js +0 -8
  655. package/dist/Admentum/from/index.js.map +0 -1
  656. package/dist/Admentum/from/locations.js +0 -13
  657. package/dist/Admentum/from/locations.js.map +0 -1
  658. package/dist/Admentum/from/persons.js +0 -30
  659. package/dist/Admentum/from/persons.js.map +0 -1
  660. package/dist/Admentum/from/schedules.d.ts +0 -38
  661. package/dist/Admentum/from/schedules.js +0 -37
  662. package/dist/Admentum/from/schedules.js.map +0 -1
  663. package/dist/Admentum/from/teachers.js +0 -25
  664. package/dist/Admentum/from/teachers.js.map +0 -1
  665. package/dist/Admentum/index.d.ts +0 -14
  666. package/dist/Admentum/index.js +0 -12
  667. package/dist/Admentum/index.js.map +0 -1
  668. package/dist/Admentum/to/index.d.ts +0 -19
  669. package/dist/Admentum/to/index.js +0 -10
  670. package/dist/Admentum/to/index.js.map +0 -1
  671. package/dist/Admentum/to/schedules.js +0 -94
  672. package/dist/Admentum/to/schedules.js.map +0 -1
  673. package/dist/Admentum/types/course-sections.d.ts +0 -20
  674. package/dist/Admentum/types/courses.d.ts +0 -17
  675. package/dist/Admentum/types/index.d.ts +0 -25
  676. package/dist/Admentum/types/lessons.d.ts +0 -27
  677. package/dist/Admentum/types/primary-groups.d.ts +0 -30
  678. package/dist/Admentum/types/rooms.d.ts +0 -12
  679. package/dist/Admentum/types/schedule-groups.d.ts +0 -23
  680. package/dist/Admentum/types/schedules.d.ts +0 -27
  681. package/dist/Admentum/types/schools.d.ts +0 -11
  682. package/dist/Admentum/types/users.d.ts +0 -20
  683. package/dist/Excel/index.d.ts +0 -308
  684. package/dist/Excel/index.js +0 -13
  685. package/dist/Excel/index.js.map +0 -1
  686. package/dist/Excel/v1/from/index.js +0 -289
  687. package/dist/Excel/v1/from/index.js.map +0 -1
  688. package/dist/Excel/v1/index.d.ts +0 -239
  689. package/dist/Excel/v1/index.js +0 -10
  690. package/dist/Excel/v1/index.js.map +0 -1
  691. package/dist/Excel/v1/types/index.d.ts +0 -44
  692. package/dist/Excel/v2/from/index.js +0 -537
  693. package/dist/Excel/v2/from/index.js.map +0 -1
  694. package/dist/Excel/v2/index.d.ts +0 -303
  695. package/dist/Excel/v2/index.js +0 -10
  696. package/dist/Excel/v2/index.js.map +0 -1
  697. package/dist/Excel/v2/types/index.d.ts +0 -70
  698. package/dist/IdunSoft/from/courses.js +0 -16
  699. package/dist/IdunSoft/from/courses.js.map +0 -1
  700. package/dist/IdunSoft/from/events.js +0 -59
  701. package/dist/IdunSoft/from/events.js.map +0 -1
  702. package/dist/IdunSoft/from/groups.js +0 -17
  703. package/dist/IdunSoft/from/groups.js.map +0 -1
  704. package/dist/IdunSoft/from/index.js +0 -8
  705. package/dist/IdunSoft/from/index.js.map +0 -1
  706. package/dist/IdunSoft/from/locations.js +0 -16
  707. package/dist/IdunSoft/from/locations.js.map +0 -1
  708. package/dist/IdunSoft/from/schedules.d.ts +0 -23
  709. package/dist/IdunSoft/from/schedules.js +0 -20
  710. package/dist/IdunSoft/from/schedules.js.map +0 -1
  711. package/dist/IdunSoft/from/teachers.js +0 -16
  712. package/dist/IdunSoft/from/teachers.js.map +0 -1
  713. package/dist/IdunSoft/index.d.ts +0 -14
  714. package/dist/IdunSoft/index.js +0 -12
  715. package/dist/IdunSoft/index.js.map +0 -1
  716. package/dist/IdunSoft/to/index.d.ts +0 -9
  717. package/dist/IdunSoft/to/index.js +0 -10
  718. package/dist/IdunSoft/to/index.js.map +0 -1
  719. package/dist/IdunSoft/to/schedules.js +0 -58
  720. package/dist/IdunSoft/to/schedules.js.map +0 -1
  721. package/dist/IdunSoft/types/courses.d.ts +0 -8
  722. package/dist/IdunSoft/types/events.d.ts +0 -26
  723. package/dist/IdunSoft/types/groups.d.ts +0 -8
  724. package/dist/IdunSoft/types/index.d.ts +0 -20
  725. package/dist/IdunSoft/types/locations.d.ts +0 -8
  726. package/dist/IdunSoft/types/schedules.d.ts +0 -17
  727. package/dist/IdunSoft/types/teachers.d.ts +0 -8
  728. package/dist/InfoMentor/index.d.ts +0 -10
  729. package/dist/InfoMentor/index.js +0 -10
  730. package/dist/InfoMentor/index.js.map +0 -1
  731. package/dist/InfoMentor/to/index.d.ts +0 -9
  732. package/dist/InfoMentor/to/index.js +0 -10
  733. package/dist/InfoMentor/to/index.js.map +0 -1
  734. package/dist/InfoMentor/to/schedules.js +0 -58
  735. package/dist/InfoMentor/to/schedules.js.map +0 -1
  736. package/dist/InfoMentor/types/events.d.ts +0 -13
  737. package/dist/InfoMentor/types/index.d.ts +0 -9
  738. package/dist/PlanDigital/from/index.js +0 -8
  739. package/dist/PlanDigital/from/index.js.map +0 -1
  740. package/dist/PlanDigital/from/schedules.js +0 -72
  741. package/dist/PlanDigital/from/schedules.js.map +0 -1
  742. package/dist/PlanDigital/index.d.ts +0 -128
  743. package/dist/PlanDigital/index.js +0 -10
  744. package/dist/PlanDigital/index.js.map +0 -1
  745. package/dist/PlanDigital/types/index.d.ts +0 -34
  746. package/dist/Quiculum/file/index.d.ts +0 -9
  747. package/dist/Quiculum/file/index.js +0 -10
  748. package/dist/Quiculum/file/index.js.map +0 -1
  749. package/dist/Quiculum/file/to/index.d.ts +0 -20
  750. package/dist/Quiculum/file/to/index.js +0 -10
  751. package/dist/Quiculum/file/to/index.js.map +0 -1
  752. package/dist/Quiculum/file/to/schedules.js +0 -91
  753. package/dist/Quiculum/file/to/schedules.js.map +0 -1
  754. package/dist/Quiculum/index.d.ts +0 -11
  755. package/dist/Quiculum/index.js +0 -11
  756. package/dist/Quiculum/index.js.map +0 -1
  757. package/dist/RS/from/division.d.ts +0 -7
  758. package/dist/RS/from/division.js +0 -18
  759. package/dist/RS/from/division.js.map +0 -1
  760. package/dist/RS/from/index.js +0 -12
  761. package/dist/RS/from/index.js.map +0 -1
  762. package/dist/RS/from/schedules.d.ts +0 -8
  763. package/dist/RS/from/schedules.js +0 -40
  764. package/dist/RS/from/schedules.js.map +0 -1
  765. package/dist/RS/index.d.ts +0 -18
  766. package/dist/RS/index.js +0 -12
  767. package/dist/RS/index.js.map +0 -1
  768. package/dist/RS/make-connected.d.ts +0 -23
  769. package/dist/RS/make-connected.js +0 -216
  770. package/dist/RS/make-connected.js.map +0 -1
  771. package/dist/RS/to/index.js +0 -8
  772. package/dist/RS/to/index.js.map +0 -1
  773. package/dist/RS/to/initial-configuration.js +0 -43
  774. package/dist/RS/to/initial-configuration.js.map +0 -1
  775. package/dist/RS/to/input/default.js +0 -29
  776. package/dist/RS/to/input/default.js.map +0 -1
  777. package/dist/RS/to/input/dependencies.js +0 -32
  778. package/dist/RS/to/input/dependencies.js.map +0 -1
  779. package/dist/RS/to/input/events.js +0 -102
  780. package/dist/RS/to/input/events.js.map +0 -1
  781. package/dist/RS/to/input/groups.js +0 -32
  782. package/dist/RS/to/input/groups.js.map +0 -1
  783. package/dist/RS/to/input/individuals.js +0 -46
  784. package/dist/RS/to/input/individuals.js.map +0 -1
  785. package/dist/RS/to/input/input.js +0 -61
  786. package/dist/RS/to/input/input.js.map +0 -1
  787. package/dist/RS/to/input/intervals.js +0 -131
  788. package/dist/RS/to/input/intervals.js.map +0 -1
  789. package/dist/RS/to/input/linked-events-sets.js +0 -96
  790. package/dist/RS/to/input/linked-events-sets.js.map +0 -1
  791. package/dist/RS/to/input/locked-times.js +0 -91
  792. package/dist/RS/to/input/locked-times.js.map +0 -1
  793. package/dist/RS/to/input/periods.js +0 -58
  794. package/dist/RS/to/input/periods.js.map +0 -1
  795. package/dist/RS/to/input/settings.js +0 -13
  796. package/dist/RS/to/input/settings.js.map +0 -1
  797. package/dist/RS/to/input/teachers.js +0 -32
  798. package/dist/RS/to/input/teachers.js.map +0 -1
  799. package/dist/RS/to/input/util/parse-days.js +0 -10
  800. package/dist/RS/to/input/util/parse-days.js.map +0 -1
  801. package/dist/RS/to/input/util/parse-group-references.js +0 -50
  802. package/dist/RS/to/input/util/parse-group-references.js.map +0 -1
  803. package/dist/RS/to/input/util/parse-location-references.js +0 -24
  804. package/dist/RS/to/input/util/parse-location-references.js.map +0 -1
  805. package/dist/RS/to/input/util/parse-max-working-hours.js +0 -14
  806. package/dist/RS/to/input/util/parse-max-working-hours.js.map +0 -1
  807. package/dist/RS/to/input/util/parse-minimum-break-length.js +0 -19
  808. package/dist/RS/to/input/util/parse-minimum-break-length.js.map +0 -1
  809. package/dist/RS/to/input/util/util.js +0 -101
  810. package/dist/RS/to/input/util/util.js.map +0 -1
  811. package/dist/RS/to/schedules.d.ts +0 -7
  812. package/dist/RS/to/schedules.js +0 -51
  813. package/dist/RS/to/schedules.js.map +0 -1
  814. package/dist/RS/types/algorithm-parameters.d.ts +0 -17
  815. package/dist/RS/types/configurations.d.ts +0 -10
  816. package/dist/RS/types/event-configuration.d.ts +0 -20
  817. package/dist/RS/types/index.d.ts +0 -21
  818. package/dist/RS/types/schedule-data.d.ts +0 -20
  819. package/dist/RS/types/to.d.ts +0 -65
  820. package/dist/RS/types/to.js +0 -6
  821. package/dist/RS/types/to.js.map +0 -1
  822. package/dist/SS12000/from/activities.js +0 -36
  823. package/dist/SS12000/from/activities.js.map +0 -1
  824. package/dist/SS12000/from/calendar-events.js +0 -20
  825. package/dist/SS12000/from/calendar-events.js.map +0 -1
  826. package/dist/SS12000/from/duties.js +0 -31
  827. package/dist/SS12000/from/duties.js.map +0 -1
  828. package/dist/SS12000/from/groups.js +0 -23
  829. package/dist/SS12000/from/groups.js.map +0 -1
  830. package/dist/SS12000/from/index.js +0 -24
  831. package/dist/SS12000/from/index.js.map +0 -1
  832. package/dist/SS12000/from/persons.js +0 -43
  833. package/dist/SS12000/from/persons.js.map +0 -1
  834. package/dist/SS12000/from/resources.js +0 -9
  835. package/dist/SS12000/from/resources.js.map +0 -1
  836. package/dist/SS12000/from/rooms.js +0 -18
  837. package/dist/SS12000/from/rooms.js.map +0 -1
  838. package/dist/SS12000/from/syllabuses.js +0 -21
  839. package/dist/SS12000/from/syllabuses.js.map +0 -1
  840. package/dist/SS12000/index.d.ts +0 -36
  841. package/dist/SS12000/index.js +0 -12
  842. package/dist/SS12000/index.js.map +0 -1
  843. package/dist/SS12000/to/activities.js +0 -63
  844. package/dist/SS12000/to/activities.js.map +0 -1
  845. package/dist/SS12000/to/calendar-events.js +0 -53
  846. package/dist/SS12000/to/calendar-events.js.map +0 -1
  847. package/dist/SS12000/to/common.js +0 -25
  848. package/dist/SS12000/to/common.js.map +0 -1
  849. package/dist/SS12000/to/duties.js +0 -45
  850. package/dist/SS12000/to/duties.js.map +0 -1
  851. package/dist/SS12000/to/groups.js +0 -49
  852. package/dist/SS12000/to/groups.js.map +0 -1
  853. package/dist/SS12000/to/index.d.ts +0 -56
  854. package/dist/SS12000/to/index.js +0 -24
  855. package/dist/SS12000/to/index.js.map +0 -1
  856. package/dist/SS12000/to/persons.js +0 -40
  857. package/dist/SS12000/to/persons.js.map +0 -1
  858. package/dist/SS12000/to/resources.js +0 -27
  859. package/dist/SS12000/to/resources.js.map +0 -1
  860. package/dist/SS12000/to/rooms.js +0 -32
  861. package/dist/SS12000/to/rooms.js.map +0 -1
  862. package/dist/SS12000/to/syllabuses.js +0 -34
  863. package/dist/SS12000/to/syllabuses.js.map +0 -1
  864. package/dist/SS12000/types/activities.d.ts +0 -41
  865. package/dist/SS12000/types/calendar-events.d.ts +0 -23
  866. package/dist/SS12000/types/codes.d.ts +0 -9
  867. package/dist/SS12000/types/duties.d.ts +0 -23
  868. package/dist/SS12000/types/duty-assignments.d.ts +0 -13
  869. package/dist/SS12000/types/groups.d.ts +0 -23
  870. package/dist/SS12000/types/index.d.ts +0 -21
  871. package/dist/SS12000/types/organisation.d.ts +0 -20
  872. package/dist/SS12000/types/persons.d.ts +0 -30
  873. package/dist/SS12000/types/resources.d.ts +0 -13
  874. package/dist/SS12000/types/rooms.d.ts +0 -17
  875. package/dist/SS12000/types/syllabus.d.ts +0 -19
  876. package/dist/SchoolSoft/api/from/index.js +0 -8
  877. package/dist/SchoolSoft/api/from/index.js.map +0 -1
  878. package/dist/SchoolSoft/api/from/schedules.js +0 -167
  879. package/dist/SchoolSoft/api/from/schedules.js.map +0 -1
  880. package/dist/SchoolSoft/api/index.d.ts +0 -463
  881. package/dist/SchoolSoft/api/index.js +0 -10
  882. package/dist/SchoolSoft/api/index.js.map +0 -1
  883. package/dist/SchoolSoft/api/types/group.d.ts +0 -12
  884. package/dist/SchoolSoft/api/types/index.d.ts +0 -19
  885. package/dist/SchoolSoft/api/types/lesson.d.ts +0 -9
  886. package/dist/SchoolSoft/api/types/location.d.ts +0 -8
  887. package/dist/SchoolSoft/api/types/persons.d.ts +0 -31
  888. package/dist/SchoolSoft/api/types/schedule.d.ts +0 -17
  889. package/dist/SchoolSoft/api/types/teacher.d.ts +0 -13
  890. package/dist/SchoolSoft/file/from/index.js +0 -8
  891. package/dist/SchoolSoft/file/from/index.js.map +0 -1
  892. package/dist/SchoolSoft/file/from/schedules.js +0 -134
  893. package/dist/SchoolSoft/file/from/schedules.js.map +0 -1
  894. package/dist/SchoolSoft/file/index.d.ts +0 -15
  895. package/dist/SchoolSoft/file/index.js +0 -12
  896. package/dist/SchoolSoft/file/index.js.map +0 -1
  897. package/dist/SchoolSoft/file/to/index.d.ts +0 -13
  898. package/dist/SchoolSoft/file/to/index.js +0 -10
  899. package/dist/SchoolSoft/file/to/index.js.map +0 -1
  900. package/dist/SchoolSoft/file/to/schedules.js +0 -107
  901. package/dist/SchoolSoft/file/to/schedules.js.map +0 -1
  902. package/dist/SchoolSoft/file/types/events.d.ts +0 -27
  903. package/dist/SchoolSoft/file/types/index.d.ts +0 -17
  904. package/dist/SchoolSoft/file/types/persons.d.ts +0 -31
  905. package/dist/SchoolSoft/index.d.ts +0 -20
  906. package/dist/SchoolSoft/index.js +0 -14
  907. package/dist/SchoolSoft/index.js.map +0 -1
  908. package/dist/Schoolity/index.d.ts +0 -10
  909. package/dist/Schoolity/index.js +0 -10
  910. package/dist/Schoolity/index.js.map +0 -1
  911. package/dist/Schoolity/txt/index.d.ts +0 -10
  912. package/dist/Schoolity/txt/index.js +0 -10
  913. package/dist/Schoolity/txt/index.js.map +0 -1
  914. package/dist/Schoolity/txt/to/index.d.ts +0 -10
  915. package/dist/Schoolity/txt/to/index.js +0 -10
  916. package/dist/Schoolity/txt/to/index.js.map +0 -1
  917. package/dist/Schoolity/txt/to/schedules.js +0 -331
  918. package/dist/Schoolity/txt/to/schedules.js.map +0 -1
  919. package/dist/Schoolity/txt/types/index.d.ts +0 -119
  920. package/dist/Skola24/index.d.ts +0 -13
  921. package/dist/Skola24/index.js +0 -12
  922. package/dist/Skola24/index.js.map +0 -1
  923. package/dist/Skola24/mdb/from/course-and-events.js +0 -241
  924. package/dist/Skola24/mdb/from/course-and-events.js.map +0 -1
  925. package/dist/Skola24/mdb/from/groups.js +0 -12
  926. package/dist/Skola24/mdb/from/groups.js.map +0 -1
  927. package/dist/Skola24/mdb/from/index.js +0 -8
  928. package/dist/Skola24/mdb/from/index.js.map +0 -1
  929. package/dist/Skola24/mdb/from/locations.js +0 -11
  930. package/dist/Skola24/mdb/from/locations.js.map +0 -1
  931. package/dist/Skola24/mdb/from/schedule.d.ts +0 -27
  932. package/dist/Skola24/mdb/from/schedule.js +0 -97
  933. package/dist/Skola24/mdb/from/schedule.js.map +0 -1
  934. package/dist/Skola24/mdb/from/teachers.js +0 -11
  935. package/dist/Skola24/mdb/from/teachers.js.map +0 -1
  936. package/dist/Skola24/mdb/index.d.ts +0 -12
  937. package/dist/Skola24/mdb/index.js +0 -10
  938. package/dist/Skola24/mdb/index.js.map +0 -1
  939. package/dist/Skola24/mdb/types/Course.d.ts +0 -10
  940. package/dist/Skola24/mdb/types/Group-group-link.d.ts +0 -8
  941. package/dist/Skola24/mdb/types/Group.d.ts +0 -9
  942. package/dist/Skola24/mdb/types/Lesson-group-link.d.ts +0 -8
  943. package/dist/Skola24/mdb/types/Lesson-period-link.d.ts +0 -8
  944. package/dist/Skola24/mdb/types/Lesson-room-link.d.ts +0 -8
  945. package/dist/Skola24/mdb/types/Lesson-teacher-link.d.ts +0 -8
  946. package/dist/Skola24/mdb/types/Lesson.d.ts +0 -13
  947. package/dist/Skola24/mdb/types/Options.d.ts +0 -11
  948. package/dist/Skola24/mdb/types/Period.d.ts +0 -9
  949. package/dist/Skola24/mdb/types/Plan-group-link.d.ts +0 -8
  950. package/dist/Skola24/mdb/types/Plan-period-link.d.ts +0 -8
  951. package/dist/Skola24/mdb/types/Plan-teacher-link.d.ts +0 -10
  952. package/dist/Skola24/mdb/types/Plan.d.ts +0 -9
  953. package/dist/Skola24/mdb/types/Room.d.ts +0 -9
  954. package/dist/Skola24/mdb/types/Schedule.d.ts +0 -39
  955. package/dist/Skola24/mdb/types/Subject.d.ts +0 -8
  956. package/dist/Skola24/mdb/types/Teacher.d.ts +0 -10
  957. package/dist/Skola24/mdb/types/index.d.ts +0 -23
  958. package/dist/Skola24/txt/from/calendar-exceptions.js +0 -68
  959. package/dist/Skola24/txt/from/calendar-exceptions.js.map +0 -1
  960. package/dist/Skola24/txt/from/division.js +0 -44
  961. package/dist/Skola24/txt/from/division.js.map +0 -1
  962. package/dist/Skola24/txt/from/index.js +0 -12
  963. package/dist/Skola24/txt/from/index.js.map +0 -1
  964. package/dist/Skola24/txt/from/period.js +0 -98
  965. package/dist/Skola24/txt/from/period.js.map +0 -1
  966. package/dist/Skola24/txt/from/schedules.d.ts +0 -16
  967. package/dist/Skola24/txt/from/schedules.js +0 -277
  968. package/dist/Skola24/txt/from/schedules.js.map +0 -1
  969. package/dist/Skola24/txt/from/util.js +0 -17
  970. package/dist/Skola24/txt/from/util.js.map +0 -1
  971. package/dist/Skola24/txt/index.d.ts +0 -28
  972. package/dist/Skola24/txt/index.js +0 -12
  973. package/dist/Skola24/txt/index.js.map +0 -1
  974. package/dist/Skola24/txt/to/index.d.ts +0 -10
  975. package/dist/Skola24/txt/to/index.js +0 -10
  976. package/dist/Skola24/txt/to/index.js.map +0 -1
  977. package/dist/Skola24/txt/to/schedules.js +0 -297
  978. package/dist/Skola24/txt/to/schedules.js.map +0 -1
  979. package/dist/Skola24/txt/types/index.d.ts +0 -141
  980. package/dist/common/constants.js +0 -8
  981. package/dist/common/constants.js.map +0 -1
  982. package/dist/common/functions.js +0 -61
  983. package/dist/common/functions.js.map +0 -1
  984. package/dist/common/get-date.js +0 -15
  985. package/dist/common/get-date.js.map +0 -1
  986. package/dist/common/make-chainable/index.js +0 -36
  987. package/dist/common/make-chainable/index.js.map +0 -1
  988. package/dist/common/types.d.ts +0 -42
  989. package/dist/core/from/configurations.js +0 -12
  990. package/dist/core/from/configurations.js.map +0 -1
  991. package/dist/core/from/courses.js +0 -12
  992. package/dist/core/from/courses.js.map +0 -1
  993. package/dist/core/from/events.js +0 -13
  994. package/dist/core/from/events.js.map +0 -1
  995. package/dist/core/from/exceptions.js +0 -12
  996. package/dist/core/from/exceptions.js.map +0 -1
  997. package/dist/core/from/groups.js +0 -12
  998. package/dist/core/from/groups.js.map +0 -1
  999. package/dist/core/from/index.js +0 -23
  1000. package/dist/core/from/index.js.map +0 -1
  1001. package/dist/core/from/locations.js +0 -12
  1002. package/dist/core/from/locations.js.map +0 -1
  1003. package/dist/core/from/locked-times.js +0 -12
  1004. package/dist/core/from/locked-times.js.map +0 -1
  1005. package/dist/core/from/overlap-groups.js +0 -12
  1006. package/dist/core/from/overlap-groups.js.map +0 -1
  1007. package/dist/core/from/periods.js +0 -12
  1008. package/dist/core/from/periods.js.map +0 -1
  1009. package/dist/core/from/persons.js +0 -12
  1010. package/dist/core/from/persons.js.map +0 -1
  1011. package/dist/core/from/root-intervals.js +0 -12
  1012. package/dist/core/from/root-intervals.js.map +0 -1
  1013. package/dist/core/from/schedules.d.ts +0 -7
  1014. package/dist/core/from/schedules.js +0 -38
  1015. package/dist/core/from/schedules.js.map +0 -1
  1016. package/dist/core/from/settings.js +0 -21
  1017. package/dist/core/from/settings.js.map +0 -1
  1018. package/dist/core/from/syllabuses.js +0 -13
  1019. package/dist/core/from/syllabuses.js.map +0 -1
  1020. package/dist/core/from/teachers.js +0 -12
  1021. package/dist/core/from/teachers.js.map +0 -1
  1022. package/dist/core/index.d.ts +0 -37
  1023. package/dist/core/index.js +0 -16
  1024. package/dist/core/index.js.map +0 -1
  1025. package/dist/core/interfaces/index.js +0 -6
  1026. package/dist/core/interfaces/other/companies.d.ts +0 -133
  1027. package/dist/core/interfaces/other/companies.js +0 -9
  1028. package/dist/core/interfaces/other/companies.js.map +0 -1
  1029. package/dist/core/interfaces/other/etc.d.ts +0 -19
  1030. package/dist/core/interfaces/other/integrations.d.ts +0 -17
  1031. package/dist/core/interfaces/other/operations.d.ts +0 -35
  1032. package/dist/core/interfaces/other/policies.d.ts +0 -31
  1033. package/dist/core/interfaces/other/sync-logs.d.ts +0 -21
  1034. package/dist/core/interfaces/other/users.d.ts +0 -35
  1035. package/dist/core/interfaces/vertices/companies.d.ts +0 -7
  1036. package/dist/core/interfaces/vertices/configurations.d.ts +0 -57
  1037. package/dist/core/interfaces/vertices/conversations.d.ts +0 -32
  1038. package/dist/core/interfaces/vertices/courses.d.ts +0 -67
  1039. package/dist/core/interfaces/vertices/division-settings.d.ts +0 -57
  1040. package/dist/core/interfaces/vertices/divisions.d.ts +0 -30
  1041. package/dist/core/interfaces/vertices/events.d.ts +0 -107
  1042. package/dist/core/interfaces/vertices/exceptions.d.ts +0 -73
  1043. package/dist/core/interfaces/vertices/generations.d.ts +0 -21
  1044. package/dist/core/interfaces/vertices/groups.d.ts +0 -52
  1045. package/dist/core/interfaces/vertices/index.d.ts +0 -244
  1046. package/dist/core/interfaces/vertices/index.js +0 -3
  1047. package/dist/core/interfaces/vertices/linked-events-sets.d.ts +0 -18
  1048. package/dist/core/interfaces/vertices/locations.d.ts +0 -21
  1049. package/dist/core/interfaces/vertices/locked-times.d.ts +0 -35
  1050. package/dist/core/interfaces/vertices/messages.d.ts +0 -21
  1051. package/dist/core/interfaces/vertices/overlap-groups.d.ts +0 -16
  1052. package/dist/core/interfaces/vertices/periods.d.ts +0 -14
  1053. package/dist/core/interfaces/vertices/persons.d.ts +0 -31
  1054. package/dist/core/interfaces/vertices/properties/belongs-to.d.ts +0 -10
  1055. package/dist/core/interfaces/vertices/properties/coalesced.d.ts +0 -7
  1056. package/dist/core/interfaces/vertices/properties/days.d.ts +0 -9
  1057. package/dist/core/interfaces/vertices/properties/index.d.ts +0 -15
  1058. package/dist/core/interfaces/vertices/properties/intervals.d.ts +0 -10
  1059. package/dist/core/interfaces/vertices/properties/maximum-schedule-span.d.ts +0 -19
  1060. package/dist/core/interfaces/vertices/properties/min-break-length.d.ts +0 -5
  1061. package/dist/core/interfaces/vertices/properties/planned-scheduled-duration.d.ts +0 -13
  1062. package/dist/core/interfaces/vertices/properties/species.d.ts +0 -9
  1063. package/dist/core/interfaces/vertices/properties/tags.d.ts +0 -9
  1064. package/dist/core/interfaces/vertices/properties/week.d.ts +0 -22
  1065. package/dist/core/interfaces/vertices/properties/week.js +0 -6
  1066. package/dist/core/interfaces/vertices/properties/week.js.map +0 -1
  1067. package/dist/core/interfaces/vertices/root-intervals.d.ts +0 -12
  1068. package/dist/core/interfaces/vertices/syllabuses.d.ts +0 -19
  1069. package/dist/core/interfaces/vertices/teachers.d.ts +0 -42
  1070. package/dist/core/interfaces/vertices/threads.d.ts +0 -32
  1071. package/dist/core/interfaces/vertices/users.d.ts +0 -10
  1072. package/dist/core/interfaces/vertices/util/common.d.ts +0 -28
  1073. package/dist/core/interfaces/vertices/util/custom-vertex-export/assert-no-invalid-expand-keys.d.ts +0 -16
  1074. package/dist/core/interfaces/vertices/util/custom-vertex-export/index.d.ts +0 -34
  1075. package/dist/core/interfaces/vertices/util/custom-vertex-export/util.d.ts +0 -53
  1076. package/dist/core/interfaces/vertices/util/deep-vertex-export/index.d.ts +0 -65
  1077. package/dist/core/interfaces/vertices/util/edges.d.ts +0 -123
  1078. package/dist/core/interfaces/vertices/util/keys-of.d.ts +0 -27
  1079. package/dist/core/interfaces/vertices/util/serialized-vertex-export.d.ts +0 -12
  1080. package/dist/core/interfaces/vertices/util/util.d.ts +0 -84
  1081. package/dist/core/interfaces/vertices/util/vertex-query/index.d.ts +0 -51
  1082. package/dist/core/interfaces/vertices/util/vertex-query/util.d.ts +0 -13
  1083. package/dist/core/interfaces/vertices/util/vertex.d.ts +0 -71
  1084. package/dist/core/interfaces/vertices/vertex-query.d.ts +0 -117
  1085. package/dist/core/interfaces/vertices/vertex-query.js +0 -122
  1086. package/dist/core/interfaces/vertices/vertex-query.js.map +0 -1
  1087. package/dist/core/to/configurations.js +0 -17
  1088. package/dist/core/to/configurations.js.map +0 -1
  1089. package/dist/core/to/courses.js +0 -42
  1090. package/dist/core/to/courses.js.map +0 -1
  1091. package/dist/core/to/division.js +0 -10
  1092. package/dist/core/to/division.js.map +0 -1
  1093. package/dist/core/to/events.js +0 -44
  1094. package/dist/core/to/events.js.map +0 -1
  1095. package/dist/core/to/exceptions.js +0 -30
  1096. package/dist/core/to/exceptions.js.map +0 -1
  1097. package/dist/core/to/groups.js +0 -26
  1098. package/dist/core/to/groups.js.map +0 -1
  1099. package/dist/core/to/index.d.ts +0 -9
  1100. package/dist/core/to/index.js +0 -10
  1101. package/dist/core/to/index.js.map +0 -1
  1102. package/dist/core/to/linked-events-sets.js +0 -18
  1103. package/dist/core/to/linked-events-sets.js.map +0 -1
  1104. package/dist/core/to/locations.js +0 -22
  1105. package/dist/core/to/locations.js.map +0 -1
  1106. package/dist/core/to/locked-times.js +0 -21
  1107. package/dist/core/to/locked-times.js.map +0 -1
  1108. package/dist/core/to/overlap-groups.js +0 -28
  1109. package/dist/core/to/overlap-groups.js.map +0 -1
  1110. package/dist/core/to/periods.js +0 -17
  1111. package/dist/core/to/periods.js.map +0 -1
  1112. package/dist/core/to/persons.js +0 -18
  1113. package/dist/core/to/persons.js.map +0 -1
  1114. package/dist/core/to/root-intervals.js +0 -17
  1115. package/dist/core/to/root-intervals.js.map +0 -1
  1116. package/dist/core/to/schedules.d.ts +0 -48
  1117. package/dist/core/to/schedules.js +0 -44
  1118. package/dist/core/to/schedules.js.map +0 -1
  1119. package/dist/core/to/settings.js +0 -19
  1120. package/dist/core/to/settings.js.map +0 -1
  1121. package/dist/core/to/syllabuses.js +0 -17
  1122. package/dist/core/to/syllabuses.js.map +0 -1
  1123. package/dist/core/to/teachers.js +0 -25
  1124. package/dist/core/to/teachers.js.map +0 -1
  1125. package/dist/core/to/util.d.ts +0 -8
  1126. package/dist/core/to/util.js +0 -25
  1127. package/dist/core/to/util.js.map +0 -1
  1128. package/dist/core/types/common/index.d.ts +0 -8
  1129. package/dist/core/types/common/meta.d.ts +0 -15
  1130. package/dist/core/types/index.d.ts +0 -141
  1131. package/dist/core/util.js +0 -47
  1132. package/dist/core/util.js.map +0 -1
  1133. package/dist/identify/constants/index.d.ts +0 -144
  1134. package/dist/identify/constants/index.js +0 -317
  1135. package/dist/identify/constants/index.js.map +0 -1
  1136. package/dist/identify/index.d.ts +0 -8
  1137. package/dist/identify/index.js +0 -94
  1138. package/dist/identify/index.js.map +0 -1
  1139. package/dist/identify/types/index.d.ts +0 -15
  1140. package/dist/index.d.ts +0 -57
  1141. package/dist/index.js +0 -22
  1142. package/dist/sdui/from/classes.js +0 -8
  1143. package/dist/sdui/from/classes.js.map +0 -1
  1144. package/dist/sdui/from/courses.js +0 -14
  1145. package/dist/sdui/from/courses.js.map +0 -1
  1146. package/dist/sdui/from/holidays.js +0 -8
  1147. package/dist/sdui/from/holidays.js.map +0 -1
  1148. package/dist/sdui/from/hours.js +0 -6
  1149. package/dist/sdui/from/hours.js.map +0 -1
  1150. package/dist/sdui/from/index.js +0 -30
  1151. package/dist/sdui/from/index.js.map +0 -1
  1152. package/dist/sdui/from/lessons.js +0 -23
  1153. package/dist/sdui/from/lessons.js.map +0 -1
  1154. package/dist/sdui/from/rooms.js +0 -11
  1155. package/dist/sdui/from/rooms.js.map +0 -1
  1156. package/dist/sdui/from/schedules.d.ts +0 -19
  1157. package/dist/sdui/from/schedules.js +0 -24
  1158. package/dist/sdui/from/schedules.js.map +0 -1
  1159. package/dist/sdui/from/school-years.js +0 -11
  1160. package/dist/sdui/from/school-years.js.map +0 -1
  1161. package/dist/sdui/from/subjects.js +0 -6
  1162. package/dist/sdui/from/subjects.js.map +0 -1
  1163. package/dist/sdui/from/substitution-plans.js +0 -10
  1164. package/dist/sdui/from/substitution-plans.js.map +0 -1
  1165. package/dist/sdui/from/teachers.js +0 -15
  1166. package/dist/sdui/from/teachers.js.map +0 -1
  1167. package/dist/sdui/index.d.ts +0 -32
  1168. package/dist/sdui/index.js +0 -12
  1169. package/dist/sdui/index.js.map +0 -1
  1170. package/dist/sdui/to/classes.js +0 -10
  1171. package/dist/sdui/to/classes.js.map +0 -1
  1172. package/dist/sdui/to/courses.js +0 -16
  1173. package/dist/sdui/to/courses.js.map +0 -1
  1174. package/dist/sdui/to/holidays.js +0 -16
  1175. package/dist/sdui/to/holidays.js.map +0 -1
  1176. package/dist/sdui/to/hours.js +0 -15
  1177. package/dist/sdui/to/hours.js.map +0 -1
  1178. package/dist/sdui/to/index.d.ts +0 -20
  1179. package/dist/sdui/to/index.js +0 -30
  1180. package/dist/sdui/to/index.js.map +0 -1
  1181. package/dist/sdui/to/lessons.js +0 -24
  1182. package/dist/sdui/to/lessons.js.map +0 -1
  1183. package/dist/sdui/to/rooms.js +0 -13
  1184. package/dist/sdui/to/rooms.js.map +0 -1
  1185. package/dist/sdui/to/schedules.js +0 -26
  1186. package/dist/sdui/to/schedules.js.map +0 -1
  1187. package/dist/sdui/to/school-years.js +0 -18
  1188. package/dist/sdui/to/school-years.js.map +0 -1
  1189. package/dist/sdui/to/subjects.js +0 -8
  1190. package/dist/sdui/to/subjects.js.map +0 -1
  1191. package/dist/sdui/to/substitution-plans.js +0 -49
  1192. package/dist/sdui/to/substitution-plans.js.map +0 -1
  1193. package/dist/sdui/to/teachers.js +0 -20
  1194. package/dist/sdui/to/teachers.js.map +0 -1
  1195. package/dist/sdui/types/classes.d.ts +0 -8
  1196. package/dist/sdui/types/courses.d.ts +0 -12
  1197. package/dist/sdui/types/holidays.d.ts +0 -10
  1198. package/dist/sdui/types/hours.d.ts +0 -10
  1199. package/dist/sdui/types/index.d.ts +0 -31
  1200. package/dist/sdui/types/lessons.d.ts +0 -13
  1201. package/dist/sdui/types/rooms.d.ts +0 -9
  1202. package/dist/sdui/types/schedules.d.ts +0 -27
  1203. package/dist/sdui/types/school-years.d.ts +0 -9
  1204. package/dist/sdui/types/subjects.d.ts +0 -9
  1205. package/dist/sdui/types/substitution-plans.d.ts +0 -30
  1206. package/dist/sdui/types/teachers.d.ts +0 -10
  1207. package/dist/vKlass/from/index.js +0 -8
  1208. package/dist/vKlass/from/index.js.map +0 -1
  1209. package/dist/vKlass/from/schedule.d.ts +0 -23
  1210. package/dist/vKlass/from/schedule.js +0 -71
  1211. package/dist/vKlass/from/schedule.js.map +0 -1
  1212. package/dist/vKlass/index.d.ts +0 -13
  1213. package/dist/vKlass/index.js +0 -12
  1214. package/dist/vKlass/index.js.map +0 -1
  1215. package/dist/vKlass/to/index.d.ts +0 -9
  1216. package/dist/vKlass/to/index.js +0 -10
  1217. package/dist/vKlass/to/index.js.map +0 -1
  1218. package/dist/vKlass/to/schedules.d.ts +0 -14
  1219. package/dist/vKlass/to/schedules.js +0 -93
  1220. package/dist/vKlass/to/schedules.js.map +0 -1
  1221. package/dist/vKlass/types/index.d.ts +0 -53
@@ -1,96 +0,0 @@
1
- import { getVertexId } from "../../../core/util.js";
2
- import { idOf } from "./util/util.js";
3
-
4
- //#region src/RS/to/input/linked-events-sets.ts
5
- function fromLinkedEventsSets(_linkedEventsSets, _settings, presentEventIds, options) {
6
- return (_linkedEventsSets ?? []).map((x) => {
7
- if (x.type === "parallel") {
8
- if (x.anchor == null) throw new Error(`Linked events set ${getVertexId(x, options)} of type "parallel" is missing "anchor" property`);
9
- return {
10
- ...x,
11
- type: "parallel",
12
- anchor: x.anchor
13
- };
14
- } else if (x.type === "sequential") {
15
- if (x.gap == null) throw new Error(`Linked events set ${getVertexId(x, options)} of type "sequential" is missing "gap" property`);
16
- return {
17
- ...x,
18
- type: "sequential",
19
- gap: x.gap
20
- };
21
- } else if (x.type === "custom") return {
22
- ...x,
23
- type: "custom"
24
- };
25
- throw new Error(`Linked events set ${getVertexId(x, options)} is missing "type" property`);
26
- }).map((x) => {
27
- const id = getVertexId(x, options);
28
- const restrictedEvents = x.events.filter((x$1) => presentEventIds.has(idOf.event(x$1, options)));
29
- const type = x.type;
30
- if (type === "parallel") {
31
- const configurations = [];
32
- const anchor = x.anchor;
33
- switch (anchor) {
34
- case "start":
35
- configurations.push(restrictedEvents.map(() => ({
36
- anchor: "start",
37
- offset: 0
38
- })));
39
- break;
40
- case "end":
41
- configurations.push(restrictedEvents.map(() => ({
42
- anchor: "end",
43
- offset: 0
44
- })));
45
- break;
46
- case "middle":
47
- configurations.push(restrictedEvents.map(() => ({
48
- anchor: "middle",
49
- offset: 0
50
- })));
51
- break;
52
- default: throw new Error(`Unrecognized anchor "${anchor}" in linked events set ${getVertexId(x, options)}`);
53
- }
54
- return {
55
- id,
56
- configurations,
57
- events: restrictedEvents.map((x$1) => idOf.event(x$1, options))
58
- };
59
- }
60
- if (type === "sequential") {
61
- const { min, max } = x.gap;
62
- const dt = _settings.discretization;
63
- const numConfigurations = Math.pow(1 + Math.round(max / dt - min / dt), restrictedEvents.length - 1);
64
- const maxNumConfigurations = 49;
65
- if (numConfigurations >= maxNumConfigurations) throw new Error(`Linked events set ${getVertexId(x, options)} has too many configurations (${numConfigurations}, max allowed is ${maxNumConfigurations})`);
66
- const gaps = [];
67
- for (let i = min; i <= max; i += dt) gaps.push(i);
68
- let configurations = [[{
69
- anchor: "start",
70
- offset: 0
71
- }]];
72
- for (let i = 1; i < restrictedEvents.length; i++) {
73
- const newConfigurations = [];
74
- for (const config of configurations) {
75
- const lastOffsetBottom = config[config.length - 1].offset + restrictedEvents[i - 1].preferredDuration;
76
- for (const gap of gaps) newConfigurations.push([...config, {
77
- anchor: "start",
78
- offset: lastOffsetBottom + gap
79
- }]);
80
- }
81
- configurations = newConfigurations;
82
- }
83
- return {
84
- id,
85
- configurations,
86
- events: restrictedEvents.map((x$1) => idOf.event(x$1, options))
87
- };
88
- }
89
- if (type === "custom") throw new Error(`Custom linked events sets are not yet supported (linked events set ${getVertexId(x, options)})`);
90
- throw new Error(`Unrecognized linked events set type "${type}" in linked events set ${getVertexId(x, options)}`);
91
- }).filter((x) => x.events.length > 1);
92
- }
93
-
94
- //#endregion
95
- export { fromLinkedEventsSets };
96
- //# sourceMappingURL=linked-events-sets.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"linked-events-sets.js","names":["x","configurations: Configurations","gaps: number[]","newConfigurations: Configurations"],"sources":["../../../../src/RS/to/input/linked-events-sets.ts"],"sourcesContent":["import type { Types } from '../../types';\nimport type { ConnectedTypes } from '../../make-connected';\nimport { getVertexId } from '../../../core/util';\nimport { idOf } from './util/util';\n\n\nexport function fromLinkedEventsSets (\n _linkedEventsSets: ConnectedTypes.linkedEventsSet[],\n _settings: ConnectedTypes.divisionSettings,\n presentEventIds: Set<string>,\n options: Types.parsedToOptions\n): Types.Entities.LinkedEventsSet[] {\n\n return (_linkedEventsSets ?? [])\n .map(x => {\n // ensure that linkedEventsSets conform to the expected union that is currently not enforced by the schema\n if (x.type === 'parallel') {\n if (x.anchor == null) throw new Error(`Linked events set ${getVertexId(x, options)} of type \"parallel\" is missing \"anchor\" property`);\n return { ...x, type: 'parallel', anchor: x.anchor } as const;\n }\n else if (x.type === 'sequential') {\n if (x.gap == null) throw new Error(`Linked events set ${getVertexId(x, options)} of type \"sequential\" is missing \"gap\" property`);\n return { ...x, type: 'sequential', gap: x.gap } as const;\n }\n else if (x.type === 'custom') {\n return { ...x, type: 'custom' } as const;\n }\n\n throw new Error(`Linked events set ${getVertexId(x, options)} is missing \"type\" property`);\n })\n .map((x): Types.Entities.LinkedEventsSet => {\n type Configurations = Types.Entities.LinkedEventsSet['configurations'];\n const id = getVertexId(x, options);\n\n const restrictedEvents = x.events.filter(x => presentEventIds.has(idOf.event(x, options)));\n const type = x.type;\n if (type === 'parallel') {\n const configurations: Configurations = [];\n const anchor = x.anchor;\n switch (anchor) {\n case 'start': configurations.push(restrictedEvents.map(() => ({ anchor: 'start', offset: 0 }))); break;\n case 'end': configurations.push(restrictedEvents.map(() => ({ anchor: 'end', offset: 0 }))); break;\n case 'middle': configurations.push(restrictedEvents.map(() => ({ anchor: 'middle', offset: 0 }))); break;\n default: throw new Error(`Unrecognized anchor \"${anchor satisfies never as string}\" in linked events set ${getVertexId(x, options)}`);\n }\n return {\n id, configurations,\n events: restrictedEvents.map(x => idOf.event(x, options))\n };\n }\n\n if (type === 'sequential') {\n const { min, max } = x.gap;\n const dt = _settings.discretization;\n\n const numConfigurations = Math.pow(1 + Math.round(max/dt - min/dt), restrictedEvents.length - 1);\n const maxNumConfigurations = 49; // max 3 events and a maximum gap range of 30 minutes => 7^2 = 49\n if (numConfigurations >= maxNumConfigurations) throw new Error(`Linked events set ${getVertexId(x, options)} has too many configurations (${numConfigurations}, max allowed is ${maxNumConfigurations})`);\n\n const gaps: number[] = [];\n for (let i = min; i <= max; i += dt) gaps.push(i);\n\n let configurations: Configurations = [[{ anchor: 'start', offset: 0 }]]; // first event is always at offset 0\n for (let i = 1; i < restrictedEvents.length; i++) {\n const newConfigurations: Configurations = [];\n for (const config of configurations) {\n const lastOffsetBottom = config[config.length - 1].offset + restrictedEvents[i - 1].preferredDuration;\n for (const gap of gaps) {\n newConfigurations.push([...config, { anchor: 'start', offset: lastOffsetBottom + gap }]);\n }\n }\n configurations = newConfigurations;\n }\n\n return {\n id, configurations,\n events: restrictedEvents.map(x => idOf.event(x, options))\n };\n }\n\n if (type === 'custom') {\n throw new Error(`Custom linked events sets are not yet supported (linked events set ${getVertexId(x, options)})`);\n }\n\n throw new Error(`Unrecognized linked events set type \"${type satisfies never as string}\" in linked events set ${getVertexId(x, options)}`);\n })\n .filter(x => x.events.length > 1); // filter out linked events sets that only contain one event after filtering out events that are not present\n}"],"mappings":";;;;AAMA,SAAgB,qBACd,mBACA,WACA,iBACA,SACkC;AAElC,SAAQ,qBAAqB,IAC1B,KAAI,MAAK;AAER,MAAI,EAAE,SAAS,YAAY;AACzB,OAAI,EAAE,UAAU,KAAM,OAAM,IAAI,MAAM,qBAAqB,YAAY,GAAG,SAAS;AACnF,UAAO;IAAE,GAAG;IAAG,MAAM;IAAY,QAAQ,EAAE;;aAEpC,EAAE,SAAS,cAAc;AAChC,OAAI,EAAE,OAAO,KAAM,OAAM,IAAI,MAAM,qBAAqB,YAAY,GAAG,SAAS;AAChF,UAAO;IAAE,GAAG;IAAG,MAAM;IAAc,KAAK,EAAE;;aAEnC,EAAE,SAAS,SAClB,QAAO;GAAE,GAAG;GAAG,MAAM;;AAGvB,QAAM,IAAI,MAAM,qBAAqB,YAAY,GAAG,SAAS;IAE9D,KAAK,MAAsC;EAE1C,MAAM,KAAK,YAAY,GAAG;EAE1B,MAAM,mBAAmB,EAAE,OAAO,QAAO,QAAK,gBAAgB,IAAI,KAAK,MAAMA,KAAG;EAChF,MAAM,OAAO,EAAE;AACf,MAAI,SAAS,YAAY;GACvB,MAAMC,iBAAiC;GACvC,MAAM,SAAS,EAAE;AACjB,WAAQ,QAAR;IACE,KAAK;AAAU,oBAAe,KAAK,iBAAiB,WAAW;MAAE,QAAQ;MAAU,QAAQ;;AAAQ;IACnG,KAAK;AAAU,oBAAe,KAAK,iBAAiB,WAAW;MAAE,QAAQ;MAAU,QAAQ;;AAAQ;IACnG,KAAK;AAAU,oBAAe,KAAK,iBAAiB,WAAW;MAAE,QAAQ;MAAU,QAAQ;;AAAQ;IACnG,QAAS,OAAM,IAAI,MAAM,wBAAwB,OAAiC,yBAAyB,YAAY,GAAG;;AAE5H,UAAO;IACL;IAAI;IACJ,QAAQ,iBAAiB,KAAI,QAAK,KAAK,MAAMD,KAAG;;;AAIpD,MAAI,SAAS,cAAc;GACzB,MAAM,EAAE,KAAK,QAAQ,EAAE;GACvB,MAAM,KAAK,UAAU;GAErB,MAAM,oBAAoB,KAAK,IAAI,IAAI,KAAK,MAAM,MAAI,KAAK,MAAI,KAAK,iBAAiB,SAAS;GAC9F,MAAM,uBAAuB;AAC7B,OAAI,qBAAqB,qBAAsB,OAAM,IAAI,MAAM,qBAAqB,YAAY,GAAG,SAAS,gCAAgC,kBAAkB,mBAAmB,qBAAqB;GAEtM,MAAME,OAAiB;AACvB,QAAK,IAAI,IAAI,KAAK,KAAK,KAAK,KAAK,GAAI,MAAK,KAAK;GAE/C,IAAID,iBAAiC,CAAC,CAAC;IAAE,QAAQ;IAAS,QAAQ;;AAClE,QAAK,IAAI,IAAI,GAAG,IAAI,iBAAiB,QAAQ,KAAK;IAChD,MAAME,oBAAoC;AAC1C,SAAK,MAAM,UAAU,gBAAgB;KACnC,MAAM,mBAAmB,OAAO,OAAO,SAAS,GAAG,SAAS,iBAAiB,IAAI,GAAG;AACpF,UAAK,MAAM,OAAO,KAChB,mBAAkB,KAAK,CAAC,GAAG,QAAQ;MAAE,QAAQ;MAAS,QAAQ,mBAAmB;;;AAGrF,qBAAiB;;AAGnB,UAAO;IACL;IAAI;IACJ,QAAQ,iBAAiB,KAAI,QAAK,KAAK,MAAMH,KAAG;;;AAIpD,MAAI,SAAS,SACX,OAAM,IAAI,MAAM,sEAAsE,YAAY,GAAG,SAAS;AAGhH,QAAM,IAAI,MAAM,wCAAwC,KAA+B,yBAAyB,YAAY,GAAG;IAEhI,QAAO,MAAK,EAAE,OAAO,SAAS"}
@@ -1,91 +0,0 @@
1
- import { getDayIndex, getVertexId, parseDateInterval } from "../../../core/util.js";
2
- import { makeChainable } from "../../../common/make-chainable/index.js";
3
- import { idOf } from "./util/util.js";
4
- import { getDefaultInterval } from "./intervals.js";
5
- import { parseGroupReferences } from "./util/parse-group-references.js";
6
- import { toDayAndStart } from "./events.js";
7
- import { groupBy, omitBy, uniq } from "lodash-es";
8
-
9
- //#region src/RS/to/input/locked-times.ts
10
- function parseRegular(lockedTime, options) {
11
- const { start: startDate, end: endDate } = parseDateInterval(lockedTime, "locked time");
12
- const duration = endDate.diff(startDate, "minutes");
13
- if (duration < 5) throw new Error("(RS::To::parseRegular) Length of a locked time is less than 5 min");
14
- const start = parseFloat(startDate.format("HH.mm"));
15
- const day = getDayIndex(startDate);
16
- const doc = {
17
- id: idOf.lockedTime(lockedTime, options),
18
- day,
19
- start,
20
- duration
21
- };
22
- if (options.includeEntityMeta) doc.name = lockedTime.displayName;
23
- return doc;
24
- }
25
- function parseDynamic(lockedTime, settings, options, defaultInterval) {
26
- const duration = lockedTime.duration;
27
- if (!duration || duration < 5) throw new Error("(RS::To::parseDynamic) Length of a locked time is less than 5 min");
28
- const dependencyReferences = makeChainable(lockedTime.coalesced ?? []).chain((x) => x.filter((x$1) => x$1.toModel == "locations").map((x$1) => getVertexId(x$1.to, options)), (x) => uniq(x), (x) => x.map((x$1) => [x$1])).value;
29
- const days = lockedTime.intervals ? makeChainable(lockedTime.intervals).chain((x) => x.map((x$1) => getDayIndex(x$1.start)), (x) => uniq(x)).value : void 0;
30
- const day = days?.length == 1 ? days[0] : void 0;
31
- if (day != null && lockedTime.coalesced) {
32
- const allowedByEvery = lockedTime.coalesced.every((x) => !x.to.days?.length || x.to.days.some((x$1) => x$1.day == day));
33
- if (!allowedByEvery) return;
34
- }
35
- const distributionKey = lockedTime.type == "COMPLEMENTARY_TIME" ? "COMPLEMENTARY_TIME." + lockedTime.tags?.at(0)?.value : void 0;
36
- const intervals = lockedTime.intervals ?? defaultInterval;
37
- const doc = {
38
- id: idOf.lockedTime(lockedTime, options),
39
- duration,
40
- minBreakDuration: false,
41
- maxDurationVariance: lockedTime.durationVariance,
42
- groups: parseGroupReferences({
43
- type: "lockedTime",
44
- item: lockedTime
45
- }, options),
46
- dependencies: dependencyReferences,
47
- intervals: idOf.intervalPairReference(intervals, void 0, options),
48
- distributionKey,
49
- ...days && { days },
50
- ...day && { day }
51
- };
52
- if (options.partialScheduleOptions) {
53
- const { includedEvents, omittedEventsHandling } = options.partialScheduleOptions;
54
- if (includedEvents && !includedEvents.has(doc.id)) {
55
- if (omittedEventsHandling == "ignore") return;
56
- if (omittedEventsHandling == "freeze") {
57
- if (lockedTime.parked || !lockedTime.start || !lockedTime.duration) return;
58
- Object.assign(doc, toDayAndStart(lockedTime.start));
59
- doc.duration = lockedTime.duration;
60
- doc.maxDurationVariance = 0;
61
- const numDays = settings.numDays ?? 5;
62
- doc.days = Array.from({ length: numDays }, (_, i) => i);
63
- doc.intervals = Array.from({ length: numDays }, () => [{
64
- start: 0,
65
- end: 24
66
- }]);
67
- }
68
- }
69
- }
70
- return omitBy(doc, (x) => x == null);
71
- }
72
- function fromLockedTimes(lockedTimes, settings, options) {
73
- const defaultInterval = getDefaultInterval(settings);
74
- const blockedTimes = lockedTimes.filter((x) => x.type == null || x.type == "ANY").map((lockedTime) => parseRegular(lockedTime, options)).filter((x) => !!x);
75
- const complementaryHours = lockedTimes.filter((x) => x.type == "COMPLEMENTARY_TIME").map((x) => parseDynamic(x, settings, options, defaultInterval)).filter((x) => !!x);
76
- const lunches = lockedTimes.filter((x) => x.type == "LUNCH").map((lockedTime) => parseDynamic(lockedTime, settings, options, defaultInterval)).filter((x) => !!x);
77
- const events = [...complementaryHours, ...lunches];
78
- const activities = Object.entries(groupBy(complementaryHours, (x) => [x.distributionKey].flat().toSorted().join("|"))).map(([id, events$1]) => ({
79
- id: `COMPLEMENTARY_TIME.${id}`,
80
- events: events$1.map((x) => x.id)
81
- }));
82
- return {
83
- events,
84
- activities,
85
- blockedTimes
86
- };
87
- }
88
-
89
- //#endregion
90
- export { fromLockedTimes };
91
- //# sourceMappingURL=locked-times.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"locked-times.js","names":["doc: Types.Entities.BlockedTime","x","doc: Types.Entities.Event","events"],"sources":["../../../../src/RS/to/input/locked-times.ts"],"sourcesContent":["import { groupBy, omitBy, uniq } from 'lodash-es';\nimport type { ConnectedTypes } from '../../make-connected';\nimport { getDayIndex, getVertexId, parseDateInterval } from '../../../core/util';\nimport { idOf } from './util/util';\nimport { parseGroupReferences } from './util/parse-group-references';\nimport type { Types } from '../../types';\nimport { makeChainable } from '../../../common/make-chainable';\nimport { toDayAndStart } from './events';\nimport { getDefaultInterval } from './intervals';\nimport type { Interval } from '../../../core/interfaces';\n\nfunction parseRegular (\n lockedTime: ConnectedTypes.lockedTime,\n options: Types.parsedToOptions,\n): Types.Entities.BlockedTime | undefined {\n const { start: startDate, end: endDate } = parseDateInterval(lockedTime, 'locked time');\n\n const duration = endDate.diff(startDate, 'minutes');\n if (duration < 5) throw new Error('(RS::To::parseRegular) Length of a locked time is less than 5 min');\n\n const start = parseFloat(startDate.format('HH.mm'));\n const day = getDayIndex(startDate);\n\n const doc: Types.Entities.BlockedTime = {\n id: idOf.lockedTime(lockedTime, options),\n day: day,\n start: start,\n duration: duration,\n };\n\n if (options.includeEntityMeta) {\n doc.name = lockedTime.displayName;\n }\n\n return doc;\n};\n\nfunction parseDynamic (\n lockedTime: ConnectedTypes.lockedTime,\n settings: ConnectedTypes.divisionSettings,\n options: Types.parsedToOptions,\n defaultInterval: Interval[]\n) {\n const duration = lockedTime.duration;\n if (!duration || duration < 5) throw new Error('(RS::To::parseDynamic) Length of a locked time is less than 5 min');\n\n const dependencyReferences = makeChainable(lockedTime.coalesced ?? [])\n .chain(\n x => x\n .filter(x => x.toModel == 'locations')\n .map(x => getVertexId(x.to, options)),\n x => uniq(x),\n x => x.map(x => [x])\n )\n .value;\n\n const days = lockedTime.intervals\n ? makeChainable(lockedTime.intervals)\n .chain(\n x => x.map(x => getDayIndex(x.start)),\n x => uniq(x),\n )\n .value\n : undefined;\n const day = days?.length == 1 ? days[0] : undefined;\n\n // ignore locked times that reside on days that are not part of any coalesced's days\n if (day != null && lockedTime.coalesced) {\n const allowedByEvery = lockedTime.coalesced.every(x => !x.to.days?.length || x.to.days.some(x => x.day == day));\n if (!allowedByEvery) return;\n }\n\n // each type (tag) of complementary hours should distribute evenly\n const distributionKey = lockedTime.type == 'COMPLEMENTARY_TIME'\n ? 'COMPLEMENTARY_TIME.' + lockedTime.tags?.at(0)?.value\n : undefined;\n\n const intervals = lockedTime.intervals ?? defaultInterval;\n\n const doc: Types.Entities.Event = {\n id: idOf.lockedTime(lockedTime, options),\n duration: duration,\n minBreakDuration: false,\n maxDurationVariance: lockedTime.durationVariance,\n groups: parseGroupReferences({ type: 'lockedTime', item: lockedTime }, options),\n dependencies: dependencyReferences,\n intervals: idOf.intervalPairReference(intervals, undefined, options),\n distributionKey,\n ...days && { days },\n ...day && { day },\n };\n\n\n ////\n //// filter based on partialScheduleOptions\n ////\n if (options.partialScheduleOptions) {\n const { includedEvents, omittedEventsHandling } = options.partialScheduleOptions;\n if (includedEvents && !includedEvents.has(doc.id)) {\n\n if (omittedEventsHandling == 'ignore') return;\n\n if (omittedEventsHandling == 'freeze') {\n // must not be parked and have a start and duration to be frozen, otherwise it's ignored\n if (lockedTime.parked || !lockedTime.start || !lockedTime.duration) return;\n\n // fix day, start and end\n Object.assign(doc, toDayAndStart(lockedTime.start));\n doc.duration = lockedTime.duration;\n doc.maxDurationVariance = 0;\n\n // override intervals and days to not cause conflicts\n const numDays = settings.numDays ?? 5;\n doc.days = Array.from({ length: numDays }, (_, i) => i);\n doc.intervals = Array.from({ length: numDays }, () => [{ start: 0, end: 24.00 }]);\n\n // fix locations\n // > locations are always fixed for locked times\n }\n }\n }\n\n return omitBy(doc, x => x == null) as Types.Entities.Event;\n}\n\ntype Out = {\n events: Types.Entities.Event[];\n activities: Types.Entities.Activity[];\n blockedTimes: Types.Entities.BlockedTime[];\n};\nexport function fromLockedTimes (\n lockedTimes: ConnectedTypes.lockedTime[],\n settings: ConnectedTypes.divisionSettings,\n options: Types.parsedToOptions,\n): Out {\n const defaultInterval = getDefaultInterval(settings);\n\n const blockedTimes = lockedTimes\n .filter(x => x.type == null || x.type == 'ANY')\n .map(lockedTime => parseRegular(lockedTime, options))\n .filter(x => !!x) as Types.Entities.BlockedTime[];\n\n const complementaryHours = lockedTimes\n .filter(x => x.type == 'COMPLEMENTARY_TIME')\n .map(x => parseDynamic(x, settings, options, defaultInterval))\n .filter(x => !!x)\n\n const lunches = lockedTimes\n .filter(x => x.type == 'LUNCH')\n .map(lockedTime => parseDynamic(lockedTime, settings, options, defaultInterval))\n .filter(x => !!x);\n\n const events = [...complementaryHours, ...lunches]\n\n const activities = Object.entries(groupBy(complementaryHours, x => [x.distributionKey].flat().toSorted().join('|')))\n .map(([id, events]) => ({ id: `COMPLEMENTARY_TIME.${id}`, events: events.map(x => x.id) }));\n\n return { events, activities, blockedTimes };\n};"],"mappings":";;;;;;;;;AAWA,SAAS,aACP,YACA,SACwC;CACxC,MAAM,EAAE,OAAO,WAAW,KAAK,YAAY,kBAAkB,YAAY;CAEzE,MAAM,WAAW,QAAQ,KAAK,WAAW;AACzC,KAAI,WAAW,EAAG,OAAM,IAAI,MAAM;CAElC,MAAM,QAAQ,WAAW,UAAU,OAAO;CAC1C,MAAM,MAAQ,YAAY;CAE1B,MAAMA,MAAkC;EACtC,IAAU,KAAK,WAAW,YAAY;EAC5B;EACA;EACA;;AAGZ,KAAI,QAAQ,kBACV,KAAI,OAAO,WAAW;AAGxB,QAAO;;AAGT,SAAS,aACP,YACA,UACA,SACA,iBACA;CACA,MAAM,WAAW,WAAW;AAC5B,KAAI,CAAC,YAAY,WAAW,EAAG,OAAM,IAAI,MAAM;CAE/C,MAAM,uBAAuB,cAAc,WAAW,aAAa,IAChE,OACC,MAAK,EACF,QAAO,QAAKC,IAAE,WAAW,aACzB,KAAI,QAAK,YAAYA,IAAE,IAAI,YAC9B,MAAK,KAAK,KACV,MAAK,EAAE,KAAI,QAAK,CAACA,OAElB;CAEH,MAAM,OAAO,WAAW,YACpB,cAAc,WAAW,WACxB,OACC,MAAK,EAAE,KAAI,QAAK,YAAYA,IAAE,UAC9B,MAAK,KAAK,IAEX,QACD;CACJ,MAAM,MAAM,MAAM,UAAU,IAAI,KAAK,KAAK;AAG1C,KAAI,OAAO,QAAQ,WAAW,WAAW;EACvC,MAAM,iBAAiB,WAAW,UAAU,OAAM,MAAK,CAAC,EAAE,GAAG,MAAM,UAAU,EAAE,GAAG,KAAK,MAAK,QAAKA,IAAE,OAAO;AAC1G,MAAI,CAAC,eAAgB;;CAIvB,MAAM,kBAAkB,WAAW,QAAQ,uBACvC,wBAAwB,WAAW,MAAM,GAAG,IAAI,QAChD;CAEJ,MAAM,YAAY,WAAW,aAAa;CAE1C,MAAMC,MAA4B;EAChC,IAAqB,KAAK,WAAW,YAAY;EAC5B;EACrB,kBAAqB;EACrB,qBAAqB,WAAW;EAChC,QAAqB,qBAAqB;GAAE,MAAM;GAAc,MAAM;KAAc;EACpF,cAAqB;EACrB,WAAqB,KAAK,sBAAsB,WAAW,QAAW;EACtE;EACA,GAAG,QAAQ,EAAE;EACb,GAAG,OAAO,EAAE;;AAOd,KAAI,QAAQ,wBAAwB;EAClC,MAAM,EAAE,gBAAgB,0BAA0B,QAAQ;AAC1D,MAAI,kBAAkB,CAAC,eAAe,IAAI,IAAI,KAAK;AAEjD,OAAI,yBAAyB,SAAU;AAEvC,OAAI,yBAAyB,UAAU;AAErC,QAAI,WAAW,UAAU,CAAC,WAAW,SAAS,CAAC,WAAW,SAAU;AAGpE,WAAO,OAAO,KAAK,cAAc,WAAW;AAC5C,QAAI,WAAW,WAAW;AAC1B,QAAI,sBAAsB;IAG1B,MAAM,UAAU,SAAS,WAAW;AACpC,QAAI,OAAY,MAAM,KAAK,EAAE,QAAQ,YAAY,GAAG,MAAM;AAC1D,QAAI,YAAY,MAAM,KAAK,EAAE,QAAQ,iBAAiB,CAAC;KAAE,OAAO;KAAG,KAAK;;;;;AAQ9E,QAAO,OAAO,MAAK,MAAK,KAAK;;AAQ/B,SAAgB,gBACd,aACA,UACA,SACK;CACL,MAAM,kBAAkB,mBAAmB;CAE3C,MAAM,eAAe,YAClB,QAAO,MAAK,EAAE,QAAQ,QAAQ,EAAE,QAAQ,OACxC,KAAI,eAAc,aAAa,YAAY,UAC3C,QAAO,MAAK,CAAC,CAAC;CAEjB,MAAM,qBAAqB,YACxB,QAAO,MAAK,EAAE,QAAQ,sBACtB,KAAI,MAAK,aAAa,GAAG,UAAU,SAAS,kBAC5C,QAAO,MAAK,CAAC,CAAC;CAEjB,MAAM,UAAU,YACb,QAAO,MAAK,EAAE,QAAQ,SACtB,KAAI,eAAc,aAAa,YAAY,UAAU,SAAS,kBAC9D,QAAO,MAAK,CAAC,CAAC;CAEjB,MAAM,SAAS,CAAC,GAAG,oBAAoB,GAAG;CAE1C,MAAM,aAAa,OAAO,QAAQ,QAAQ,qBAAoB,MAAK,CAAC,EAAE,iBAAiB,OAAO,WAAW,KAAK,OAC3G,KAAK,CAAC,IAAIC,eAAa;EAAE,IAAI,sBAAsB;EAAM,QAAQA,SAAO,KAAI,MAAK,EAAE;;AAEtF,QAAO;EAAE;EAAQ;EAAY"}
@@ -1,58 +0,0 @@
1
- import { range } from "../../../common/functions.js";
2
- import { getVertexId } from "../../../core/util.js";
3
- import moment from "moment";
4
-
5
- //#region src/RS/to/input/periods.ts
6
- function createRange({ start, end }) {
7
- return {
8
- start: moment.utc(start).clone().startOf("isoWeek"),
9
- end: moment.utc(end).clone().endOf("isoWeek")
10
- };
11
- }
12
- function parsePeriods(periods, division, options) {
13
- const divisionRange = createRange(division);
14
- const weeksMap = /* @__PURE__ */ new Map();
15
- for (const x = divisionRange.start.clone(); x.isSameOrBefore(divisionRange.end); x.add(1, "week")) weeksMap.set(x.toISOString(), false);
16
- const out = periods.map((p) => {
17
- const id = getVertexId(p, options);
18
- const clippedRanges = p.ranges.map((r) => createRange(r)).filter((r) => range.overlaps(r, divisionRange)).map((r) => ({
19
- start: moment.max(r.start, divisionRange.start).clone(),
20
- end: moment.min(r.end, divisionRange.end).clone()
21
- }));
22
- const activeWeeksMap = new Map(weeksMap);
23
- clippedRanges.forEach((r) => {
24
- for (const x = r.start.clone(); x.isSameOrBefore(r.end); x.add(1, "week")) {
25
- const key = x.toISOString();
26
- activeWeeksMap.set(key, true);
27
- }
28
- });
29
- const weeks = Array.from(activeWeeksMap.entries()).sort((a, b) => moment.utc(a[0]).diff(moment.utc(b[0]))).map((x) => x[1] ? "1" : "0").join("");
30
- const overlaps = weeks.length <= 64 ? weeks : "";
31
- return {
32
- id,
33
- weeks,
34
- overlaps
35
- };
36
- });
37
- if (weeksMap.size > 64 && out && out.length <= 64) for (let i = 0; i < out.length; i++) {
38
- let overlaps = "";
39
- for (let j = 0; j < out.length; j++) {
40
- if (i == j) {
41
- overlaps += "1";
42
- continue;
43
- }
44
- let overlap = false;
45
- for (let k = 0; k < out[i].weeks.length; k++) if (out[i].weeks[k] === "1" && out[j].weeks[k] === "1") {
46
- overlap = true;
47
- break;
48
- }
49
- overlaps += overlap ? "1" : "0";
50
- }
51
- out[i].overlaps = overlaps;
52
- }
53
- return out;
54
- }
55
-
56
- //#endregion
57
- export { parsePeriods };
58
- //# sourceMappingURL=periods.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"periods.js","names":[],"sources":["../../../../src/RS/to/input/periods.ts"],"sourcesContent":["import moment from 'moment';\nimport { getVertexId } from '../../../core/util';\nimport type { ConnectedTypes } from '../../make-connected';\nimport type { Types } from '../../types';\nimport { range } from '../../../common/functions';\nimport type { Interval } from '../../../core/interfaces';\n\ntype Range = Partial<Interval<string | moment.Moment | Date>>;\ntype DateRange = Interval<moment.Moment>;\n\nfunction createRange ({ start, end }: Range): DateRange {\n return {\n start: moment.utc(start).clone().startOf('isoWeek'),\n end: moment.utc(end ).clone().endOf ('isoWeek')\n };\n}\n\nexport function parsePeriods (\n periods: ConnectedTypes.period[],\n division: ConnectedTypes.division,\n options: Types.parsedToOptions\n): Types.Entities.Period[] {\n const divisionRange = createRange(division);\n\n // build a mapping of week starts to boolean active flags\n const weeksMap = new Map<string, boolean>();\n for (const x = divisionRange.start.clone(); x.isSameOrBefore(divisionRange.end); x.add(1, 'week')) {\n weeksMap.set(x.toISOString(), false);\n }\n\n const out = periods.map((p): Types.Entities.Period => {\n const id = getVertexId(p, options);\n\n // preserve only the ranges that lay within the division range\n const clippedRanges = p.ranges\n .map(r => createRange(r))\n .filter(r => range.overlaps(r, divisionRange))\n .map(r => ({\n start: moment.max(r.start, divisionRange.start).clone(),\n end: moment.min(r.end, divisionRange.end ).clone()\n }));\n\n // get the active weeks by checking which weeks in the division are covered by the clipped ranges\n const activeWeeksMap = new Map(weeksMap);\n clippedRanges.forEach(r => {\n for (const x = r.start.clone(); x.isSameOrBefore(r.end); x.add(1, 'week')) {\n const key = x.toISOString();\n activeWeeksMap.set(key, true);\n }\n });\n\n // build the active weeks string\n const weeks = Array.from(activeWeeksMap.entries())\n .sort((a, b) => moment.utc(a[0]).diff(moment.utc(b[0])))\n .map(x => x[1] ? '1' : '0')\n .join('');\n\n const overlaps = weeks.length <= 64 ? weeks : '';\n\n return { id, weeks, overlaps };\n });\n\n // If there are more than 64 weeks but less than or equal to 64 periods, we compute the overlap between periods directly.\n if (weeksMap.size > 64 && out && out.length <= 64) {\n for (let i = 0; i < out.length; i++) {\n let overlaps = '';\n for (let j = 0; j < out.length; j++) {\n // self-overlap\n if (i == j) {\n overlaps += '1';\n continue;\n }\n\n // overlap with other periods\n let overlap = false;\n for (let k = 0; k < out[i].weeks.length; k++) {\n if (out[i].weeks[k] === '1' && out[j].weeks[k] === '1') {\n overlap = true;\n break;\n }\n }\n overlaps += overlap ? '1' : '0';\n }\n out[i].overlaps = overlaps;\n }\n }\n\n return out;\n}"],"mappings":";;;;;AAUA,SAAS,YAAa,EAAE,OAAO,OAAyB;AACtD,QAAO;EACL,OAAO,OAAO,IAAI,OAAO,QAAQ,QAAQ;EACzC,KAAO,OAAO,IAAI,KAAO,QAAQ,MAAQ;;;AAI7C,SAAgB,aACd,SACA,UACA,SACyB;CACzB,MAAM,gBAAgB,YAAY;CAGlC,MAAM,2BAAW,IAAI;AACrB,MAAK,MAAM,IAAI,cAAc,MAAM,SAAS,EAAE,eAAe,cAAc,MAAM,EAAE,IAAI,GAAG,QACxF,UAAS,IAAI,EAAE,eAAe;CAGhC,MAAM,MAAM,QAAQ,KAAK,MAA6B;EACpD,MAAM,KAAK,YAAY,GAAG;EAG1B,MAAM,gBAAgB,EAAE,OACrB,KAAI,MAAK,YAAY,IACrB,QAAO,MAAK,MAAM,SAAS,GAAG,gBAC9B,KAAI,OAAM;GACT,OAAO,OAAO,IAAI,EAAE,OAAO,cAAc,OAAO;GAChD,KAAO,OAAO,IAAI,EAAE,KAAO,cAAc,KAAO;;EAIpD,MAAM,iBAAiB,IAAI,IAAI;AAC/B,gBAAc,SAAQ,MAAK;AACzB,QAAK,MAAM,IAAI,EAAE,MAAM,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,GAAG,SAAS;IACzE,MAAM,MAAM,EAAE;AACd,mBAAe,IAAI,KAAK;;;EAK5B,MAAM,QAAQ,MAAM,KAAK,eAAe,WACrC,MAAM,GAAG,MAAM,OAAO,IAAI,EAAE,IAAI,KAAK,OAAO,IAAI,EAAE,MAClD,KAAI,MAAK,EAAE,KAAK,MAAM,KACtB,KAAK;EAER,MAAM,WAAW,MAAM,UAAU,KAAK,QAAQ;AAE9C,SAAO;GAAE;GAAI;GAAO;;;AAItB,KAAI,SAAS,OAAO,MAAM,OAAO,IAAI,UAAU,GAC7C,MAAK,IAAI,IAAI,GAAG,IAAI,IAAI,QAAQ,KAAK;EACnC,IAAI,WAAW;AACf,OAAK,IAAI,IAAI,GAAG,IAAI,IAAI,QAAQ,KAAK;AAEnC,OAAI,KAAK,GAAG;AACV,gBAAY;AACZ;;GAIF,IAAI,UAAU;AACd,QAAK,IAAI,IAAI,GAAG,IAAI,IAAI,GAAG,MAAM,QAAQ,IACvC,KAAI,IAAI,GAAG,MAAM,OAAO,OAAO,IAAI,GAAG,MAAM,OAAO,KAAK;AACtD,cAAU;AACV;;AAGJ,eAAY,UAAU,MAAM;;AAE9B,MAAI,GAAG,WAAW;;AAItB,QAAO"}
@@ -1,13 +0,0 @@
1
- //#region src/RS/to/input/settings.ts
2
- function parseSettings(settings) {
3
- if (!settings.numDays) throw new Error("(RS::To::parseSettings) numDays is falsy");
4
- if (!settings.discretization) throw new Error("(RS::To::parseSettings) discretization is falsy");
5
- return {
6
- numDays: settings.numDays,
7
- discretization: settings.discretization
8
- };
9
- }
10
-
11
- //#endregion
12
- export { parseSettings };
13
- //# sourceMappingURL=settings.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"settings.js","names":[],"sources":["../../../../src/RS/to/input/settings.ts"],"sourcesContent":["import type { Types } from '../../types';\nimport type { ConnectedTypes } from '../../make-connected';\n\nexport function parseSettings (settings: ConnectedTypes.divisionSettings): Types.Entities.Settings {\n\n if (!settings.numDays) throw new Error('(RS::To::parseSettings) numDays is falsy');\n if (!settings.discretization) throw new Error('(RS::To::parseSettings) discretization is falsy');\n\n return {\n numDays: settings.numDays,\n discretization: settings.discretization,\n };\n};"],"mappings":";AAGA,SAAgB,cAAe,UAAoE;AAEjG,KAAI,CAAC,SAAS,QAAgB,OAAM,IAAI,MAAM;AAC9C,KAAI,CAAC,SAAS,eAAgB,OAAM,IAAI,MAAM;AAE9C,QAAO;EACL,SAAgB,SAAS;EACzB,gBAAgB,SAAS"}
@@ -1,32 +0,0 @@
1
- import { idOf } from "./util/util.js";
2
- import { parseDayIndices } from "./util/parse-days.js";
3
- import { parseMaxWorkingHours } from "./util/parse-max-working-hours.js";
4
- import { getDefaultInterval } from "./intervals.js";
5
- import { omitBy } from "lodash-es";
6
-
7
- //#region src/RS/to/input/teachers.ts
8
- function fromTeachers(teachers, settings, options) {
9
- const defaultInterval = getDefaultInterval(settings);
10
- return teachers.map((teacher) => {
11
- const intervals = teacher.intervals ?? defaultInterval;
12
- const rootInterval = teacher.rootInterval ?? settings.defaultRootInterval;
13
- const doc = {
14
- id: idOf.teacher(teacher, options),
15
- group_type: "personal",
16
- minimizeGaps: settings.minimizeTeacherGaps,
17
- minimizeDependencyAlternation: true,
18
- weight: teacher.weight,
19
- intervals: idOf.intervalPairReference(intervals, rootInterval, options),
20
- days: parseDayIndices(teacher.days, settings),
21
- blockedTimes: teacher.lockedTimes?.map((x) => idOf.lockedTime(x, options)),
22
- minBreakDuration: teacher.minBreakLength,
23
- ...parseMaxWorkingHours(teacher)
24
- };
25
- if (options.includeEntityMeta) doc.name = teacher.displayName;
26
- return omitBy(doc, (x) => x == null);
27
- });
28
- }
29
-
30
- //#endregion
31
- export { fromTeachers };
32
- //# sourceMappingURL=teachers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"teachers.js","names":["doc: Types.Entities.Group"],"sources":["../../../../src/RS/to/input/teachers.ts"],"sourcesContent":["import { omitBy } from 'lodash-es';\nimport type { Types } from '../../types';\nimport type { ConnectedTypes } from '../../make-connected';\nimport { parseMaxWorkingHours } from './util/parse-max-working-hours';\nimport { parseDayIndices } from './util/parse-days';\nimport { idOf } from './util/util';\nimport { getDefaultInterval } from './intervals';\n\nexport function fromTeachers (\n teachers: ConnectedTypes.teacher[],\n settings: ConnectedTypes.divisionSettings,\n options: Types.parsedToOptions\n): Types.Entities.Group[] {\n const defaultInterval = getDefaultInterval(settings);\n\n return teachers\n .map(teacher => {\n const intervals = teacher.intervals ?? defaultInterval;\n const rootInterval = teacher.rootInterval ?? settings.defaultRootInterval;\n\n const doc: Types.Entities.Group = {\n id: idOf.teacher(teacher, options),\n group_type: 'personal',\n minimizeGaps: settings.minimizeTeacherGaps,\n minimizeDependencyAlternation: true,\n weight: teacher.weight,\n intervals: idOf.intervalPairReference(intervals, rootInterval, options),\n days: parseDayIndices(teacher.days, settings),\n blockedTimes: teacher.lockedTimes?.map(x => idOf.lockedTime(x, options)),\n minBreakDuration: teacher.minBreakLength,\n ...parseMaxWorkingHours(teacher),\n };\n\n if (options.includeEntityMeta) {\n doc.name = teacher.displayName;\n }\n\n return omitBy(doc, x => x == null) as Types.Entities.Group;\n });\n};\n"],"mappings":";;;;;;;AAQA,SAAgB,aACd,UACA,UACA,SACwB;CACxB,MAAM,kBAAkB,mBAAmB;AAE3C,QAAO,SACJ,KAAI,YAAW;EACd,MAAM,YAAe,QAAQ,aAAgB;EAC7C,MAAM,eAAe,QAAQ,gBAAgB,SAAS;EAEtD,MAAMA,MAA4B;GAChC,IAA+B,KAAK,QAAQ,SAAS;GACrD,YAA+B;GAC/B,cAA+B,SAAS;GACxC,+BAA+B;GAC/B,QAA+B,QAAQ;GACvC,WAA+B,KAAK,sBAAsB,WAAW,cAAc;GACnF,MAA+B,gBAAgB,QAAQ,MAAM;GAC7D,cAA+B,QAAQ,aAAa,KAAI,MAAK,KAAK,WAAW,GAAG;GAChF,kBAA+B,QAAQ;GACvC,GAAG,qBAAqB;;AAG1B,MAAI,QAAQ,kBACV,KAAI,OAAO,QAAQ;AAGrB,SAAO,OAAO,MAAK,MAAK,KAAK"}
@@ -1,10 +0,0 @@
1
- //#region src/RS/to/input/util/parse-days.ts
2
- function parseDayIndices(days, settings) {
3
- if (!days) return;
4
- if (days.length) return days.map((x) => x.day);
5
- return [...Array.from({ length: settings.numDays })].map((_, i) => i);
6
- }
7
-
8
- //#endregion
9
- export { parseDayIndices };
10
- //# sourceMappingURL=parse-days.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-days.js","names":[],"sources":["../../../../../src/RS/to/input/util/parse-days.ts"],"sourcesContent":["import type { ConnectedTypes } from '../../../make-connected';\nimport type { Types } from '../../../types';\n\nexport function parseDayIndices (\n days: ConnectedTypes.event['days'] | ConnectedTypes.course['days'],\n settings: ConnectedTypes.divisionSettings\n): Types.Shared.DayIndices | undefined {\n if (!days) return;\n\n if (days.length) return days.map(x => x.day);\n\n // empty days means all days selected (since no days selected is prohibited)\n return [...Array.from({ length: settings.numDays })].map((_, i) => i);\n}"],"mappings":";AAGA,SAAgB,gBACd,MACA,UACqC;AACrC,KAAI,CAAC,KAAM;AAEX,KAAI,KAAK,OAAQ,QAAO,KAAK,KAAI,MAAK,EAAE;AAGxC,QAAO,CAAC,GAAG,MAAM,KAAK,EAAE,QAAQ,SAAS,YAAY,KAAK,GAAG,MAAM"}
@@ -1,50 +0,0 @@
1
- import { getVertexId } from "../../../../core/util.js";
2
- import { makeChainable } from "../../../../common/make-chainable/index.js";
3
- import { idOf } from "./util.js";
4
- import { groupBy } from "lodash-es";
5
-
6
- //#region src/RS/to/input/util/parse-group-references.ts
7
- /**
8
- * Merges group references with their parent groups while ensuring that a group is present at
9
- * most once and that parent groups are prioritized as they carry no member exclusions.
10
- */
11
- function mergeWithParentGroups(references, options) {
12
- return makeChainable(references).chain((x) => x.flatMap((x$1) => [x$1, ...(x$1.to.parentGroups ?? []).map((y) => ({
13
- to: y,
14
- isParentGroup: true
15
- }))]), (x) => groupBy(x, (x$1) => getVertexId(x$1.to, options)), (x) => Object.values(x).map((xs) => xs.find((x$1) => x$1.isParentGroup) ?? xs.at(0)).filter((x$1) => x$1 != null)).value;
16
- }
17
- /**
18
- * Returns the source of group, teacher, and participant references for a given item while taking into account event inheritance.
19
- */
20
- function getSources(itemAndType) {
21
- if (itemAndType.type == "lockedTime") return {
22
- teachers: itemAndType.item.coalesced?.filter((x) => x.toModel == "teachers"),
23
- groups: itemAndType.item.coalesced?.filter((x) => x.toModel == "groups")
24
- };
25
- const item = itemAndType.item;
26
- const teachersSource = item.teachers ? item : "course" in item && item.course ? item.course : item;
27
- const groupsAndParticipantsSource = item.groups || item.participants ? item : "course" in item && item.course ? item.course : item;
28
- return {
29
- teachers: teachersSource.teachers ?? void 0,
30
- groups: groupsAndParticipantsSource.groups ?? void 0,
31
- participants: groupsAndParticipantsSource.participants ?? void 0
32
- };
33
- }
34
- /**
35
- * Parses group references from a course or event while carrying out event inheritance and taking into account parent groups.
36
- */
37
- function parseGroupReferences(itemAndType, options) {
38
- const sources = getSources(itemAndType);
39
- const teacherReferences = (sources.teachers ?? []).map((x) => ({ group: idOf.teacher(x.to, options) }));
40
- const groupReferences = mergeWithParentGroups(sources.groups ?? [], options).map((x) => {
41
- if (x.to.species != "class" || x.exclude?.length) return { individuals: idOf.groupReference(x, options) };
42
- return { group: idOf.group(x.to, options) };
43
- });
44
- const participantReferences = sources.participants?.length ? { individuals: sources.participants.map((x) => idOf.person(x.to, options)) } : void 0;
45
- return new Array().concat(teacherReferences, groupReferences, participantReferences ? [participantReferences] : []).map((x) => [x]);
46
- }
47
-
48
- //#endregion
49
- export { parseGroupReferences };
50
- //# sourceMappingURL=parse-group-references.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-group-references.js","names":["x"],"sources":["../../../../../src/RS/to/input/util/parse-group-references.ts"],"sourcesContent":["import { groupBy } from 'lodash-es';\nimport type { ConnectedTypes } from '../../../make-connected';\nimport { idOf } from './util';\nimport { getVertexId } from '../../../../core/util';\nimport type { Types } from '../../../types';\nimport { makeChainable } from '../../../../common/make-chainable';\nimport type { GroupWithExclude, Wrapped } from '../../../../core/interfaces/vertices/util/edges';\n\n/**\n * Merges group references with their parent groups while ensuring that a group is present at\n * most once and that parent groups are prioritized as they carry no member exclusions.\n */\nfunction mergeWithParentGroups (\n references: GroupWithExclude.Util.Value<ConnectedTypes.group, ConnectedTypes.person>[],\n options: Types.parsedToOptions\n): GroupWithExclude.Util.Value<ConnectedTypes.group, ConnectedTypes.person>[] {\n return makeChainable(references)\n .chain(\n x => x.flatMap((x): ((typeof x) & { isParentGroup?: boolean })[] => ([\n x, ...(x.to.parentGroups ?? []).map(y => ({ to: y, isParentGroup: true }))\n ])),\n x => groupBy(x, x => getVertexId(x.to, options)),\n x => Object.values(x)\n .map(xs => xs.find(x => x.isParentGroup) ?? xs.at(0))\n .filter(x => x != null)\n )\n .value;\n}\n\ntype ItemAndType =\n | { item: ConnectedTypes.event, type: 'event' }\n | { item: ConnectedTypes.lockedTime, type: 'lockedTime' };\n\ntype Source = {\n teachers?: Wrapped.Util.Value<'to', ConnectedTypes.teacher>[];\n groups?: GroupWithExclude.Util.Value<ConnectedTypes.group, ConnectedTypes.person>[];\n participants?: Wrapped.Util.Value<'to', ConnectedTypes.person>[];\n};\n\n/**\n * Returns the source of group, teacher, and participant references for a given item while taking into account event inheritance.\n */\nfunction getSources (itemAndType: ItemAndType): Source {\n if (itemAndType.type == 'lockedTime') return {\n teachers: itemAndType.item.coalesced?.filter(x => x.toModel == 'teachers'),\n groups: itemAndType.item.coalesced?.filter(x => x.toModel == 'groups' )\n };\n\n const item = itemAndType.item;\n const teachersSource = item.teachers\n ? item\n : ('course' in item && item.course ? item.course : item);\n const groupsAndParticipantsSource = (item.groups || item.participants)\n ? item\n : ('course' in item && item.course ? item.course : item);\n return {\n teachers: teachersSource.teachers ?? undefined,\n groups: groupsAndParticipantsSource.groups ?? undefined,\n participants: groupsAndParticipantsSource.participants ?? undefined\n };\n}\n\n/**\n * Parses group references from a course or event while carrying out event inheritance and taking into account parent groups.\n */\nexport function parseGroupReferences (\n itemAndType: ItemAndType,\n options: Types.parsedToOptions\n): Types.Shared.GroupReferenceSets {\n const sources = getSources(itemAndType);\n\n const teacherReferences = (sources.teachers ?? [])\n .map((x): Types.Shared.GroupReference => ({ group: idOf.teacher(x.to, options) }));\n\n const groupReferences = mergeWithParentGroups(sources.groups ?? [], options)\n .map((x): Types.Shared.GroupReference | Types.Shared.IndividualsReference => {\n if (x.to.species != 'class' || x.exclude?.length) return { individuals: idOf.groupReference(x, options) }; // use individuals set if not a plain group reference\n return { group: idOf.group(x.to, options) };\n });\n\n const participantReferences = sources.participants?.length\n ? { individuals: sources.participants.map(x => idOf.person(x.to, options)) } as Types.Shared.IndividualsReference\n : undefined;\n\n // combine all references\n return new Array<Types.Shared.GroupReference | Types.Shared.IndividualsReference>()\n .concat(\n teacherReferences,\n groupReferences,\n participantReferences ? [participantReferences] : []\n )\n .map(x => [x]);\n}"],"mappings":";;;;;;;;;;AAYA,SAAS,sBACP,YACA,SAC4E;AAC5E,QAAO,cAAc,YAClB,OACC,MAAK,EAAE,SAAS,QAAqD,CACnEA,KAAG,IAAIA,IAAE,GAAG,gBAAgB,IAAI,KAAI,OAAM;EAAE,IAAI;EAAG,eAAe;SAEpE,MAAK,QAAQ,IAAG,QAAK,YAAYA,IAAE,IAAI,YACvC,MAAK,OAAO,OAAO,GAChB,KAAI,OAAM,GAAG,MAAK,QAAKA,IAAE,kBAAkB,GAAG,GAAG,IACjD,QAAO,QAAKA,OAAK,OAErB;;;;;AAgBL,SAAS,WAAY,aAAkC;AACrD,KAAI,YAAY,QAAQ,aAAc,QAAO;EAC3C,UAAU,YAAY,KAAK,WAAW,QAAO,MAAK,EAAE,WAAW;EAC/D,QAAU,YAAY,KAAK,WAAW,QAAO,MAAK,EAAE,WAAW;;CAGjE,MAAM,OAAO,YAAY;CACzB,MAAM,iBAAiB,KAAK,WACxB,OACC,YAAY,QAAQ,KAAK,SAAS,KAAK,SAAS;CACrD,MAAM,8BAA+B,KAAK,UAAU,KAAK,eACrD,OACC,YAAY,QAAQ,KAAK,SAAS,KAAK,SAAS;AACrD,QAAO;EACL,UAAc,eAAe,YAA6B;EAC1D,QAAc,4BAA4B,UAAgB;EAC1D,cAAc,4BAA4B,gBAAgB;;;;;;AAO9D,SAAgB,qBACd,aACA,SACiC;CACjC,MAAM,UAAU,WAAW;CAE3B,MAAM,qBAAqB,QAAQ,YAAY,IAC5C,KAAK,OAAoC,EAAE,OAAO,KAAK,QAAQ,EAAE,IAAI;CAExE,MAAM,kBAAkB,sBAAsB,QAAQ,UAAU,IAAI,SACjE,KAAK,MAAuE;AAC3E,MAAI,EAAE,GAAG,WAAW,WAAW,EAAE,SAAS,OAAQ,QAAO,EAAE,aAAa,KAAK,eAAe,GAAG;AAC/F,SAAO,EAAE,OAAO,KAAK,MAAM,EAAE,IAAI;;CAGrC,MAAM,wBAAwB,QAAQ,cAAc,SAChD,EAAE,aAAa,QAAQ,aAAa,KAAI,MAAK,KAAK,OAAO,EAAE,IAAI,cAC/D;AAGJ,QAAO,IAAI,QACR,OACC,mBACA,iBACA,wBAAwB,CAAC,yBAAyB,IAEnD,KAAI,MAAK,CAAC"}
@@ -1,24 +0,0 @@
1
- import { getVertexId } from "../../../../core/util.js";
2
- import { makeChainable } from "../../../../common/make-chainable/index.js";
3
- import { groupBy } from "lodash-es";
4
-
5
- //#region src/RS/to/input/util/parse-location-references.ts
6
- function parseLocationReferences(references, options) {
7
- if (!references) return;
8
- return makeChainable(references).chain((x) => x.map(({ locations, groupIndex, rank }) => ({
9
- dependency: getVertexId(locations[0], options),
10
- rank,
11
- groupIndex
12
- })).filter((x$1) => {
13
- const includedLocations = options.partialScheduleOptions?.includedLocations;
14
- if (!includedLocations) return true;
15
- return includedLocations.has(x$1.dependency);
16
- }), (x) => groupBy(x, (x$1) => x$1.groupIndex), (x) => Object.values(x).map((xs) => xs.map((x$1) => ({
17
- dependency: x$1.dependency,
18
- ...x$1.rank != null && { rank: x$1.rank }
19
- })))).value;
20
- }
21
-
22
- //#endregion
23
- export { parseLocationReferences };
24
- //# sourceMappingURL=parse-location-references.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-location-references.js","names":["x"],"sources":["../../../../../src/RS/to/input/util/parse-location-references.ts"],"sourcesContent":["import { groupBy } from 'lodash-es';\nimport type { ConnectedTypes } from '../../../make-connected';\nimport type { Types } from '../../../types';\nimport { getVertexId } from '../../../../core/util';\nimport { makeChainable } from '../../../../common/make-chainable';\nimport type { AvailableLocation } from '../../../../core/interfaces/vertices/util/edges';\n\n\nexport function parseLocationReferences (\n references: AvailableLocation.Util.Value<ConnectedTypes.location, { groupIndex?: number; rank?: number; }>[] | null | undefined,\n options: Types.parsedToOptions\n) {\n if (!references) return;\n\n return makeChainable(references)\n .chain(\n x => x\n .map(({ locations, groupIndex, rank }) => ({\n dependency: getVertexId(locations[0], options),\n rank: rank,\n groupIndex: groupIndex\n }))\n .filter(x => {\n // filter location references based on partial schedule options\n const includedLocations = options.partialScheduleOptions?.includedLocations;\n if (!includedLocations) return true;\n return includedLocations.has(x.dependency);\n }),\n x => groupBy(x, x => x.groupIndex),\n x => Object.values(x)\n .map(xs => xs.map(x => ({\n dependency: x.dependency,\n ...x.rank != null && { rank: x.rank },\n }) as Types.Shared.DependencyReference))\n )\n .value;\n}\n\nexport function parseSelectedLocations (event: ConnectedTypes.event, options: Types.parsedToOptions) {\n\n const locationsRef = event.locations ?? event.course?.locations;\n const dependencies = parseLocationReferences(locationsRef, options);\n const inLocations = event.inLocations ?? [];\n\n // simply use inLocations if they match the number of dependencies\n if (inLocations.length === dependencies?.length) {\n return inLocations.map(x => x ? getVertexId(x, options) : null);\n }\n\n // otherwise, fill inLocations with nulls to match the number of dependencies\n return inLocations\n .map(x => x ? getVertexId(x, options) : null)\n .concat(Array\n .from({ length: Math.max((dependencies?.length ?? 0) - inLocations.length, 0) })\n .map(() => null as string | null)\n );\n}"],"mappings":";;;;;AAQA,SAAgB,wBACd,YACA,SACA;AACA,KAAI,CAAC,WAAY;AAEjB,QAAO,cAAc,YAClB,OACC,MAAK,EACF,KAAK,EAAE,WAAW,YAAY,YAAY;EACzC,YAAY,YAAY,UAAU,IAAI;EAC1B;EACA;KAEb,QAAO,QAAK;EAEX,MAAM,oBAAoB,QAAQ,wBAAwB;AAC1D,MAAI,CAAC,kBAAmB,QAAO;AAC/B,SAAO,kBAAkB,IAAIA,IAAE;MAEnC,MAAK,QAAQ,IAAG,QAAKA,IAAE,cACvB,MAAK,OAAO,OAAO,GAChB,KAAI,OAAM,GAAG,KAAI,SAAM;EACtB,YAAYA,IAAE;EACd,GAAGA,IAAE,QAAQ,QAAQ,EAAE,MAAMA,IAAE;OAGpC"}
@@ -1,14 +0,0 @@
1
- import { min2hrs } from "./util.js";
2
-
3
- //#region src/RS/to/input/util/parse-max-working-hours.ts
4
- function parseMaxWorkingHours(group) {
5
- if (!group.maximumScheduleSpan) return;
6
- return {
7
- maxNumWorkingHours: min2hrs(group.maximumScheduleSpan.weekly) ?? false,
8
- maxNumDailyWorkingHours: min2hrs(group.maximumScheduleSpan.daily) ?? false
9
- };
10
- }
11
-
12
- //#endregion
13
- export { parseMaxWorkingHours };
14
- //# sourceMappingURL=parse-max-working-hours.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-max-working-hours.js","names":[],"sources":["../../../../../src/RS/to/input/util/parse-max-working-hours.ts"],"sourcesContent":["import type { ConnectedTypes } from '../../../make-connected';\nimport type { Types } from '../../../types';\nimport { min2hrs } from './util';\n\nexport function parseMaxWorkingHours (\n group: ConnectedTypes.group | ConnectedTypes.teacher\n): Pick<Types.Entities.Group, 'maxNumWorkingHours' | 'maxNumDailyWorkingHours'> | undefined {\n if (!group.maximumScheduleSpan) return;\n\n return {\n maxNumWorkingHours: min2hrs(group.maximumScheduleSpan.weekly) ?? false,\n maxNumDailyWorkingHours: min2hrs(group.maximumScheduleSpan.daily ) ?? false,\n };\n}\n"],"mappings":";;;AAIA,SAAgB,qBACd,OAC0F;AAC1F,KAAI,CAAC,MAAM,oBAAqB;AAEhC,QAAO;EACL,oBAAyB,QAAQ,MAAM,oBAAoB,WAAW;EACtE,yBAAyB,QAAQ,MAAM,oBAAoB,UAAW"}
@@ -1,19 +0,0 @@
1
- //#region src/RS/to/input/util/parse-minimum-break-length.ts
2
- function parseMinimumBreakLength(value) {
3
- if (value == null) return;
4
- if (typeof value === "boolean") return value;
5
- if (typeof value === "number") return value;
6
- if (Array.isArray(value)) {
7
- if (value.length !== 2) throw new Error("(RS::To::parseMinimumBreakLength) BreakLength array must have exactly two elements");
8
- const [bef, aft] = value;
9
- return {
10
- bef,
11
- aft
12
- };
13
- }
14
- throw new Error("(RS::To::parseMinimumBreakLength) BreakLength is neither boolean, number or number array");
15
- }
16
-
17
- //#endregion
18
- export { parseMinimumBreakLength };
19
- //# sourceMappingURL=parse-minimum-break-length.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-minimum-break-length.js","names":[],"sources":["../../../../../src/RS/to/input/util/parse-minimum-break-length.ts"],"sourcesContent":["import type { CoreTypes } from '../../../../core';\nimport type { Types } from '../../../types';\n\nexport function parseMinimumBreakLength (value: CoreTypes.breakLength | null | undefined): Types.Shared.EventBreakDuration | undefined {\n if (value == null) return;\n\n if (typeof value === 'boolean') return value;\n if (typeof value === 'number') return value;\n\n if (Array.isArray(value)) {\n if (value.length !== 2) throw new Error('(RS::To::parseMinimumBreakLength) BreakLength array must have exactly two elements');\n const [bef, aft] = value;\n return { bef, aft };\n }\n\n throw new Error('(RS::To::parseMinimumBreakLength) BreakLength is neither boolean, number or number array');\n};\n"],"mappings":";AAGA,SAAgB,wBAAyB,OAA8F;AACrI,KAAI,SAAS,KAAM;AAEnB,KAAI,OAAO,UAAU,UAAW,QAAO;AACvC,KAAI,OAAO,UAAU,SAAU,QAAO;AAEtC,KAAI,MAAM,QAAQ,QAAQ;AACxB,MAAI,MAAM,WAAW,EAAG,OAAM,IAAI,MAAM;EACxC,MAAM,CAAC,KAAK,OAAO;AACnB,SAAO;GAAE;GAAK;;;AAGhB,OAAM,IAAI,MAAM"}
@@ -1,101 +0,0 @@
1
- import { getVertexId } from "../../../../core/util.js";
2
-
3
- //#region src/RS/to/input/util/util.ts
4
- function min2hrs(min) {
5
- if (min == null) return;
6
- return min / 60;
7
- }
8
- /**
9
- * Converts a time string in the format "HH:MM" to a float representation, e.g., "12:30" becomes 12.3.
10
- */
11
- function toTimeFloat(str) {
12
- return parseFloat(str.replace(":", "."));
13
- }
14
- const COLLECTION_ID = {
15
- persons: "persons",
16
- groups: "groups",
17
- teachers: "teachers",
18
- events: "events",
19
- lockedTimes: "lockedtimes"
20
- };
21
- const COLLECTION_BY_ID = Object.fromEntries(Object.entries(COLLECTION_ID).map(([collection, id]) => [id, collection]));
22
- function parseAggregateId(aggregateId, expectedCollection) {
23
- const indexOfDot = aggregateId.indexOf(".");
24
- if (indexOfDot == -1) throw new Error(`(RS::To::fromId) Missing collection separator in aggregate id "${aggregateId}"`);
25
- const collectionId = aggregateId.substring(0, indexOfDot).toLowerCase();
26
- const entityId = aggregateId.substring(indexOfDot + 1);
27
- if (!entityId) throw new Error(`(RS::To::fromId) Missing entity id in aggregate id "${aggregateId}"`);
28
- const collection = COLLECTION_BY_ID[collectionId];
29
- if (!collection) throw new Error(`(RS::To::fromId) Unknown collection id "${collectionId}" in aggregate id "${aggregateId}"`);
30
- if (expectedCollection && collection != expectedCollection) throw new Error(`(RS::To::fromId) Expected collection "${expectedCollection}" but got "${collection}" in aggregate id "${aggregateId}"`);
31
- return {
32
- collection,
33
- entityId
34
- };
35
- }
36
- let idOf;
37
- (function(_idOf) {
38
- function person(person$1, options) {
39
- return `${COLLECTION_ID.persons}.${getVertexId(person$1, options)}`;
40
- }
41
- _idOf.person = person;
42
- function group(group$1, options) {
43
- return `${COLLECTION_ID.groups}.${getVertexId(group$1, options)}`;
44
- }
45
- _idOf.group = group;
46
- function teacher(teacher$1, options) {
47
- return `${COLLECTION_ID.teachers}.${getVertexId(teacher$1, options)}`;
48
- }
49
- _idOf.teacher = teacher;
50
- function event(event$1, options) {
51
- return `${COLLECTION_ID.events}.${getVertexId(event$1, options)}`;
52
- }
53
- _idOf.event = event;
54
- function lockedTime(lockedTime$1, options) {
55
- return `${COLLECTION_ID.lockedTimes}.${getVertexId(lockedTime$1, options)}`;
56
- }
57
- _idOf.lockedTime = lockedTime;
58
- function groupReference(group$1, options) {
59
- return `${COLLECTION_ID.groups}.${getVertexId(group$1.to, options)}` + (group$1.exclude?.length ? ".exclude." + group$1.exclude.map((x) => getVertexId(x, options)).sort().join(".") : "");
60
- }
61
- _idOf.groupReference = groupReference;
62
- function intervalPairReference(interval, rootInterval, options) {
63
- if (interval === null) interval = void 0;
64
- if (rootInterval === null) rootInterval = void 0;
65
- if (interval && interval.length == 0) interval = void 0;
66
- const out = (rootInterval ? getVertexId(rootInterval, options) + "&" : "") + JSON.stringify(interval);
67
- return out;
68
- }
69
- _idOf.intervalPairReference = intervalPairReference;
70
- })(idOf || (idOf = {}));
71
- let fromId;
72
- (function(_fromId) {
73
- function aggregate(aggregateId) {
74
- return parseAggregateId(aggregateId);
75
- }
76
- _fromId.aggregate = aggregate;
77
- function person(aggregateId) {
78
- return parseAggregateId(aggregateId, "persons").entityId;
79
- }
80
- _fromId.person = person;
81
- function group(aggregateId) {
82
- return parseAggregateId(aggregateId, "groups").entityId;
83
- }
84
- _fromId.group = group;
85
- function teacher(aggregateId) {
86
- return parseAggregateId(aggregateId, "teachers").entityId;
87
- }
88
- _fromId.teacher = teacher;
89
- function event(aggregateId) {
90
- return parseAggregateId(aggregateId, "events").entityId;
91
- }
92
- _fromId.event = event;
93
- function lockedTime(aggregateId) {
94
- return parseAggregateId(aggregateId, "lockedTimes").entityId;
95
- }
96
- _fromId.lockedTime = lockedTime;
97
- })(fromId || (fromId = {}));
98
-
99
- //#endregion
100
- export { COLLECTION_ID, fromId, idOf, min2hrs, toTimeFloat };
101
- //# sourceMappingURL=util.js.map