@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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../../../src/Excel/v2/from/index.ts"],"sourcesContent":["import { isString, isNumber, countBy } from 'lodash-es';\nimport { nanoid } from 'nanoid';\nimport type { CoreTypes } from '../../../core';\nimport type { Types } from '../types';\nimport type { FromInterface } from '../../../common/types';\nimport { makeChainable } from '../../../common/make-chainable';\n\ntype C_Settings = Pick<CoreTypes.Serialized.Settings, 'discretization' | 'numDays' | 'dayStart' | 'dayEnd'>;\ntype C_Location = Omit<CoreTypes.Serialized.Location, '_id'> & { __raw: Types.Location };\ntype C_Group = Omit<CoreTypes.Serialized.Group, '_id'> & { __raw: Types.Group };\ntype C_Teacher = Omit<CoreTypes.Serialized.Teacher, '_id'> & { __raw: Types.Teacher };\ntype C_Course = Omit<CoreTypes.Serialized.Course, '_id'> & { __raw: Types.Course };\ntype C_Person = Omit<CoreTypes.Serialized.Person, '_id'> & { __raw: Types.Person };\ntype C_Event = Omit<CoreTypes.Serialized.Event, '_id'> & { __raw?: Types.Course };\ntype C_Syllabus = Omit<CoreTypes.Serialized.Syllabus, '_id'> & { __raw?: Types.Syllabus };\ntype C_LinkedEventsSet = Omit<CoreTypes.Serialized.LinkedEventsSet, '_id'> & { __raw?: Types.Course };\n\ntype Out = {\n settings: C_Settings;\n locations: C_Location[];\n teachers: C_Teacher[];\n persons: C_Person[];\n groups: C_Group[];\n courses: C_Course[];\n events: C_Event[];\n syllabuses: C_Syllabus[];\n linkedEventsSets: C_LinkedEventsSet[];\n meta: {\n // errors?: string[];\n warnings?: { code: Types.ErrorCode, context?: unknown }[];\n };\n};\n\n\nfunction generateId (map: Map<string, unknown>) {\n // generate a unique id\n let id: string;\n do {\n id = nanoid(8);\n } while (map.has(id));\n\n return id;\n}\n\nfunction toPositiveMultipleOf5 (val: number | string) {\n const num = isString(val) ? parseInt(val) : val;\n\n // throw error if nan\n if (isNaN(num)) throw new Error(`toMultipleOf5: ${val} is not a number`);\n\n const res = Math.floor(num / 5) * 5;\n\n if (res <= 0) throw new Error(`toMultipleOf5: the result ${res} is not positive`);\n\n return res;\n}\n\nfunction toPositiveInteger (val: number | string) {\n const num = isString(val) ? parseInt(val) : val;\n\n // throw error if nan\n if (isNaN(num)) throw new Error(`toInteger: ${val} is not a number`);\n if (num <= 0) throw new Error(`toInteger: te result ${num} is not positive`);\n\n return num;\n}\n\n/**\n * Converts a string/number to a trimmed string\n */\nfunction toString (x: string | number): string {\n return isNumber(x)\n ? x.toString()\n : x.trim();\n}\n\n/**\n * Converts a possible nullish string/number to a trimmed string or undefined\n */\nfunction toStringIfExists (x: string | number | undefined | null): string | undefined {\n if (x == null) return undefined;\n return toString(x);\n}\n\nfunction toNumberIfExists (x: string | number | undefined | null): number | undefined {\n if (x == null) return undefined;\n const num = isString(x) ? parseInt(x) : x;\n if (isNaN(num)) return undefined;\n return num;\n}\n\nfunction extractLocations (\n course: Types.Course,\n locationsNameMap: Map<string, C_Location>,\n warnings: { code: Types.ErrorCode, context?: unknown }[],\n) {\n if (course.locations == null) return;\n const locationsStr = toString(course.locations);\n if (!locationsStr) return;\n\n const locationReferences: { groupIndex: number; to: string }[] = [];\n\n locationsStr.split('+')\n .flatMap((x, i) => x.split(',').map(x => [i, x.trim()] as [number, string]))\n .forEach(([i, x]) => {\n const key = x.toLowerCase();\n const ref = locationsNameMap.get(key);\n if (!ref) {\n warnings.push({ code: 'invalid_location_reference', context: x });\n return;\n }\n\n if (locationReferences.some(y => y.to == ref.id)) {\n warnings.push({ code: 'location_referenced_multiple_times', context: x });\n return;\n }\n\n locationReferences.push({ groupIndex: i, to: ref.id });\n });\n\n return locationReferences;\n}\n\nfunction extractGroups (\n course: Types.Course,\n groupsNameMap: Map<string, C_Group>,\n warnings: { code: Types.ErrorCode, context?: unknown }[],\n) {\n if (course.groups == null) return;\n const groupsStr = toString(course.groups);\n if (!groupsStr) return;\n\n const groupReferences: { to: string }[] = [];\n groupsStr.split(',').map(x => x.trim())\n .forEach(x => {\n const key = x.toLowerCase();\n const ref = groupsNameMap.get(key);\n if (!ref) {\n warnings.push({ code: 'invalid_group_reference', context: x });\n return;\n }\n\n if (groupReferences.some(y => y.to == ref.id)) {\n warnings.push({ code: 'group_referenced_multiple_times', context: x });\n return;\n }\n\n groupReferences.push({ to: ref.id });\n });\n\n return groupReferences;\n}\n\nfunction extractTeachers (\n course: Types.Course,\n teachersNameMap: Map<string, C_Teacher>,\n teachersSignatureMap: Map<string, C_Teacher>,\n warnings: { code: Types.ErrorCode, context?: unknown }[],\n) {\n if (course.teachers == null) return;\n const teachersStr = toString(course.teachers);\n if (!teachersStr) return undefined;\n\n const teacherReferences: { to: string }[] = [];\n teachersStr.split(',').map(x => x.trim())\n .forEach(x => {\n const key = x.toLowerCase();\n const refName = teachersNameMap.get(key);\n const refSignature = teachersSignatureMap.get(key);\n\n const ref = refName || refSignature;\n\n if (!ref) {\n warnings.push({ code: 'invalid_teacher_reference', context: x });\n return;\n }\n\n if (teacherReferences.some(y => y.to == ref.id)) {\n warnings.push({ code: 'teacher_referenced_multiple_times', context: x });\n return;\n }\n\n teacherReferences.push({ to: ref.id });\n });\n\n return teacherReferences;\n}\n\nfunction extractSyllabus (\n course: Types.Course,\n syllabusesCodeMap: Map<string, C_Syllabus>,\n syllabusesNameMap: Map<string, C_Syllabus>,\n warnings: { code: Types.ErrorCode, context?: unknown }[],\n): string | undefined {\n if (course.syllabus == null) return undefined;\n const syllabusValue = toString(course.syllabus);\n if (!syllabusValue) return undefined;\n\n const syllabus = syllabusesCodeMap.get(syllabusValue) || syllabusesNameMap.get(syllabusValue.toLowerCase());\n\n if (!syllabus) {\n warnings.push({ code: 'invalid_syllabus_reference', context: syllabusValue });\n return undefined;\n }\n\n return syllabus.id;\n}\n\nconst PREFERRED_SEQUENTIAL_LENGTH = 2;\n\nfunction getSetsFromCourses<T extends { events?: C_Event[] }>(courses: T[]): NonNullable<T['events']>[number][][] {\n const coursesWithEvents = courses\n .map(c => c.events ?? [])\n .filter(events => events.length > 0);\n\n // If there are less than 2 courses we can't form parallel sets\n if (coursesWithEvents.length < 2) return [];\n\n const numSets = Math.min(...coursesWithEvents.map(events => events.length));\n\n // Sort each course's events by effective duration\n const sortedCourses = coursesWithEvents.map(events =>\n [...events].sort((a, b) => a.preferredDuration - b.preferredDuration)\n );\n\n // Step 1: Prune excess events\n // Compute target durations from courses that already have exactly numSets events\n const referenceCourses = sortedCourses.filter(events => events.length === numSets);\n const targets = Array.from({ length: numSets }, (_, i) => {\n const durations = referenceCourses.map(events => events[i].preferredDuration).sort((a, b) => a - b);\n return durations[Math.floor(durations.length / 2)]; // median\n });\n\n const prunedCourses = sortedCourses.map(events => {\n if (events.length === numSets) return events;\n return selectBestSubset(events, targets);\n });\n\n // Step 2: Build sets by sorted-rank alignment — events at the same rank\n // across courses share similar durations\n const sets: C_Event[][] = [];\n for (let i = 0; i < numSets; i++) {\n sets.push(prunedCourses.map(events => events[i]));\n }\n return sets;\n}\n\n/**\n * Picks `targets.length` events from a sorted event list to minimise total\n * absolute deviation from the target durations. Uses O(n·k) DP.\n */\nfunction selectBestSubset (events: C_Event[], targets: number[]): C_Event[] {\n const n = events.length;\n const k = targets.length;\n\n // dp[i][j] = min cost picking j events from the first i (1-indexed)\n const dp: number[][] = Array.from({ length: n + 1 }, () => Array(k + 1).fill(Infinity));\n for (let i = 0; i <= n; i++) dp[i][0] = 0;\n\n for (let i = 1; i <= n; i++) {\n for (let j = 1; j <= Math.min(i, k); j++) {\n // skip event i\n dp[i][j] = dp[i - 1][j];\n // take event i as j-th pick\n const cost = Math.abs(events[i - 1].preferredDuration - targets[j - 1]);\n if (dp[i - 1][j - 1] + cost < dp[i][j]) {\n dp[i][j] = dp[i - 1][j - 1] + cost;\n }\n }\n }\n\n // Back-track to recover selected events\n const selected: C_Event[] = [];\n let j = k;\n for (let i = n; i >= 1 && j > 0; i--) {\n const cost = Math.abs(events[i - 1].preferredDuration - targets[j - 1]);\n if (dp[i][j] === dp[i - 1][j - 1] + cost) {\n selected.unshift(events[i - 1]);\n j--;\n }\n }\n\n return selected;\n}\n\n\nfunction _schedules (\n source: Types.Source\n): Out {\n // gather all import related warnings/errors\n const warnings: { code: Types.ErrorCode, context?: unknown }[] = [];\n // let errors: string[] = [];\n\n source.settings = source.settings ?.filter(x => Object.values(x).some(y => toString(y).length > 0));\n source.locations = source.locations?.filter(x => Object.values(x).some(y => toString(y).length > 0));\n source.teachers = source.teachers ?.filter(x => Object.values(x).some(y => toString(y).length > 0));\n source.groups = source.groups ?.filter(x => Object.values(x).some(y => toString(y).length > 0));\n source.persons = source.persons ?.filter(x => Object.values(x).some(y => toString(y).length > 0));\n source.courses = source.courses ?.filter(x => Object.values(x).some(y => toString(y).length > 0));\n\n\n ////\n //// settings\n ////\n const settings: C_Settings = {\n discretization: 5,\n numDays: 5,\n dayStart: '08:00',\n dayEnd: '17:00',\n };\n if (!source.settings) {\n warnings.push({ code: 'missing_settings_sheet' });\n }\n if (source.settings?.[0]?.number_of_days) {\n const numDays = source.settings?.[0]?.number_of_days;\n try {\n settings.numDays = toPositiveInteger(numDays);\n\n // must be 5 or 7\n if (settings.numDays !== 5 && settings.numDays !== 7) {\n warnings.push({ code: 'invalid_number_of_days', context: numDays });\n settings.numDays = 5;\n }\n } catch {\n warnings.push({ code: 'invalid_number_of_days', context: numDays });\n }\n }\n\n ////\n //// syllabuses\n ////\n const syllabusesIdMap = new Map<string, C_Syllabus>();\n const syllabusesNameMap = new Map<string, C_Syllabus>();\n const syllabusesCodeMap = new Map<string, C_Syllabus>();\n if (!source.syllabuses) {\n // warnings.push({ code: 'missing_syllabus_sheet' });\n }\n source.syllabuses?.forEach(x => {\n const ids = toStringIfExists(x.foreign_ID );\n const subjectCode = toStringIfExists(x.subject_code);\n const subjectName = toStringIfExists(x.subject_name);\n const courseCode = toStringIfExists(x.course_code );\n const courseName = toStringIfExists(x.course_name );\n const schoolType = toStringIfExists(x.school_type );\n\n const id = toStringIfExists(x.ID) ?? generateId(syllabusesIdMap);\n if (syllabusesIdMap.has(id)) {\n warnings.push({ code: 'ignoring_duplicate_syllabus', context: `${subjectName} (${courseName})` });\n return;\n }\n\n if (!subjectName) {\n warnings.push({ code: 'missing_subject_name', context: x });\n return;\n }\n\n if (!schoolType) {\n warnings.push({ code: 'missing_school_type', context: x });\n return;\n }\n\n // create the syllabus object\n const y: C_Syllabus = {\n id,\n ...ids && { ids },\n ...subjectCode && { subjectCode },\n subjectName,\n ...courseCode && { courseCode },\n ...courseName && { courseName },\n schoolType,\n official: true, // always true for imported syllabuses\n __raw: x\n };\n syllabusesIdMap.set(id, y);\n const code = courseCode || subjectCode;\n const name = courseName || subjectName;\n if (code) syllabusesCodeMap.set(code, y);\n if (name) syllabusesNameMap.set(name.toLowerCase(), y);\n });\n\n\n ////\n //// locations, teachers\n ////\n const locationsIdMap = new Map<string, C_Location>();\n const locationsNameMap = new Map<string, C_Location>();\n const teachersIdMap = new Map<string, C_Teacher>();\n const teachersNameMap = new Map<string, C_Teacher>();\n const teachersSignatureMap = new Map<string, C_Teacher>();\n [\n {\n name: { singular: 'location', plural: 'locations' } as const,\n data: source.locations,\n idMap: locationsIdMap,\n nameMap: locationsNameMap,\n signatureMap: undefined,\n },\n {\n name: { singular: 'teacher', plural: 'teachers' } as const,\n data: source.teachers,\n idMap: teachersIdMap,\n nameMap: teachersNameMap,\n signatureMap: teachersSignatureMap,\n }\n ].forEach(({ name, data, idMap, nameMap, signatureMap }) => {\n if (!data) {\n warnings.push({ code: `missing_${name.plural}_sheet` });\n }\n data?.forEach(x => {\n const ids = toStringIfExists(x.foreign_ID);\n const displayName = toStringIfExists(x.name );\n\n const id = toStringIfExists(x.ID) ?? generateId(idMap);\n if (idMap.has(id)) {\n warnings.push({ code: `ignoring_duplicate_${name.singular}`, context: displayName });\n return;\n }\n\n const y = {\n id,\n ...ids && { ids },\n ...displayName && { displayName },\n __raw: x\n };\n idMap.set(id, y);\n if (displayName) nameMap.set(displayName.toLowerCase(), y);\n if (signatureMap && 'signature' in x && x.signature) signatureMap.set((x as C_Teacher).signature!.toLowerCase(), y);\n });\n });\n\n\n ////\n //// groups\n ////\n const groupsIdMap = new Map<string, C_Group>();\n const groupsNameMap = new Map<string, C_Group>();\n if (!source.groups) {\n warnings.push({ code: 'missing_groups_sheet' });\n }\n source.groups?.forEach(x => {\n const ids = toStringIfExists(x.foreign_ID);\n const displayName = toStringIfExists(x.name );\n\n const id = toStringIfExists(x.ID) ?? generateId(groupsIdMap);\n if (groupsIdMap.has(id)) {\n warnings.push({ code: 'ignoring_duplicate_group', context: displayName });\n return;\n }\n\n // parent groups determine the species of the group\n const species = toStringIfExists(x.is_class) == '1' ? 'class' as const : undefined;\n\n const y = {\n id,\n ...ids && { ids },\n ...displayName && { displayName },\n ...species && { species },\n __raw: x\n } as C_Group;\n groupsIdMap.set(id, y);\n if (displayName) groupsNameMap.set(displayName.toLowerCase(), y);\n });\n\n\n ////\n //// persons\n ////\n const personsIdMap = new Map<string, C_Person>();\n const personsSsnMap = new Map<string, C_Person>();\n if (!source.persons) {\n warnings.push({ code: 'missing_persons_sheet' });\n }\n source.persons?.forEach(x => {\n const ids = toStringIfExists(x.foreign_ID);\n const firstName = toStringIfExists(x.first_name);\n const lastName = toStringIfExists(x.last_name );\n const SSN = toStringIfExists(x.SSN );\n\n const id = toStringIfExists(x.ID) ?? generateId(personsIdMap);\n if (personsIdMap.has(id)) {\n warnings.push({ code: 'ignoring_duplicate_person', context: `${firstName} ${lastName}` });\n return;\n }\n\n let group: string | undefined = undefined;\n if (x.group) {\n const key = toString(x.group).toLowerCase();\n const ref = groupsNameMap.get(key);\n if (!ref) {\n warnings.push({ code: 'invalid_group_reference', context: x.group });\n } else if (ref.species !== 'class') {\n warnings.push({ code: 'forbidden_group_reference', context: x.group });\n } else {\n group = ref.id;\n }\n }\n\n let sex: C_Person['sex'];\n if (x.sex) {\n if (isString(x.sex) && x.sex.toLowerCase() == 'man') sex = 'Man';\n else if (isString(x.sex) && x.sex.toLowerCase() == 'woman') sex = 'Woman';\n else {\n warnings.push({ code: 'invalid_sex', context: x.sex });\n }\n }\n\n const person: C_Person = {\n id,\n ...ids && { ids },\n ...firstName && { firstName },\n ...lastName && { lastName },\n ...sex && { sex },\n ...group && { group },\n ...SSN && { SSN: { value: SSN } },\n __raw: x\n };\n personsIdMap.set(id, person);\n if (SSN) personsSsnMap.set(SSN, person);\n });\n\n ////\n //// group.members (need to wait for persons to be parsed)\n ////\n groupsNameMap.forEach(x => {\n let duplicateReported = false;\n\n // ignore if no members\n if (!x.__raw.members) return;\n\n // parse and replace SSN by person id\n x.members = makeChainable(x.__raw.members)\n .chain(x => toString(x)\n .split(',')\n .map(x => x.trim())\n .filter(x => x != null)\n )\n .chain(x => countBy(x))\n .chain(y => Object.entries(y)\n .map(([ssn, count]) => {\n // ignore empty ssn\n if (!ssn) return;\n\n // warn if duplicate member\n if (!duplicateReported && count > 1) {\n warnings.push({ code: 'duplicate_group_member', context: x.displayName });\n duplicateReported = true;\n }\n\n // fetch person and warn if not found\n const person = personsSsnMap.get(ssn);\n if (!person) {\n warnings.push({ code: 'invalid_person_reference', context: ssn });\n return;\n }\n\n // warn if the group is a class and the person is already in a different class\n // (we also need to set the group of the person if it is empty)\n if (x.species == 'class') {\n if (!person.group) {\n person.group = x.id;\n }\n else if (person.group != x.id) {\n warnings.push({ code: 'person_in_multiple_classes', context: ssn });\n return;\n }\n }\n\n return person.id;\n })\n .filter(x => x != null)\n )\n .value;\n });\n\n\n ////\n //// courses\n ////\n const coursesIdMap = new Map<string, C_Course >();\n const eventsIdMap = new Map<string, C_Event >();\n const linkedEventsParallelIdMap = new Map<string, C_LinkedEventsSet>();\n const linkedEventsSequentialIdMap = new Map<string, C_LinkedEventsSet>();\n // A map for storing lessons that we later will make parallel links between.\n const parallelLessonsMap = new Map<string, C_Event[]>();\n\n if (!source.courses) {\n warnings.push({ code: 'missing_courses_sheet' });\n }\n source.courses?.forEach(x => {\n // await loading events until courses are created\n const mergeWith = toStringIfExists(x.merge_with);\n if (mergeWith) return;\n\n const ids = toStringIfExists(x.foreign_ID);\n const displayName = toStringIfExists(x.name );\n const subject = toStringIfExists(x.subject );\n\n const courseId = toStringIfExists(x.ID) ?? generateId(coursesIdMap);\n if (coursesIdMap.has(courseId)) {\n warnings.push({ code: 'ignoring_duplicate_course', context: displayName + (subject ? ` (${subject})` : '') });\n return;\n }\n\n // try to parse the total hours as an integer\n let expectedTotalHours: number | undefined = undefined;\n if (x.total_hours) {\n try {\n expectedTotalHours = toPositiveInteger(x.total_hours);\n } catch {\n warnings.push({ code: 'invalid_total_hours', context: x.total_hours });\n }\n }\n\n // try to parse the minutes per week as an multiple of 5\n let minutesPerWeek: number | undefined = undefined;\n if (x.minutes_per_week) {\n try {\n minutesPerWeek = toPositiveMultipleOf5(x.minutes_per_week);\n } catch {\n warnings.push({ code: 'invalid_minutes_per_week', context: x.minutes_per_week });\n }\n }\n\n // only one of minutes_per_week or total_hours should be defined\n if (minutesPerWeek != null && expectedTotalHours != null) {\n warnings.push({ code: 'ambiguous_planned_duration', context: `${minutesPerWeek} min/week OR ${expectedTotalHours} hrs` });\n }\n const plannedDuration =\n expectedTotalHours\n ? `${expectedTotalHours} hrs` :\n minutesPerWeek\n ? `${minutesPerWeek} min/week` :\n undefined;\n\n\n // try to parse the lesson durations as an array of integers from which we will generate events\n if (x.lesson_durations) {\n const _durations = typeof x.lesson_durations === 'string'\n ? x.lesson_durations.split(',').map(x => x.trim())\n : [x.lesson_durations];\n\n // truncate to multiple of 5 and filter out zero duration events\n const durations = _durations\n .map(e => {\n try {\n return toPositiveMultipleOf5(e);\n } catch {\n warnings.push({ code: 'invalid_lesson_durations', context: x.lesson_durations });\n return undefined;\n }\n })\n .filter((x): x is number => x !== undefined);\n\n let queuedSequentialEvent: C_Event | null = null;\n let createdSequentialEventsCount = 0;\n\n durations.forEach(y => {\n const id = generateId(eventsIdMap);\n const event: C_Event = { id, course: courseId, preferredDuration: y };\n\n\n const sequentialCount = toNumberIfExists(x.linked_lessons_sequential);\n const parallelIdentifier = toStringIfExists(x.linked_lessons_parallel);\n\n if (sequentialCount && parallelIdentifier) {\n warnings.push({ code: 'both_linked_lessons_fields_present', context: x });\n } else {\n if (parallelIdentifier) {\n // Just set the event in the parallel lessons map for now, we will create the linked events sets at the end when we have all the events (we need to wait until we have all the events to be able to link all the events with the same parallel identifier, even if they are not in the same course)\n if (!parallelLessonsMap.has(parallelIdentifier)) {\n parallelLessonsMap.set(parallelIdentifier, []);\n }\n parallelLessonsMap.get(parallelIdentifier)!.push(event);\n }\n\n if (sequentialCount && (createdSequentialEventsCount < sequentialCount)) {\n if (!queuedSequentialEvent) {\n queuedSequentialEvent = event;\n } else {\n // We now have a pair of sequential events, so we create a linked events set for them\n const linkedEventsSetId = generateId(linkedEventsSequentialIdMap);\n const linkedEventsSet: C_LinkedEventsSet = {\n id: linkedEventsSetId,\n type: 'sequential',\n gap: { min: 0, max: 10 }, // Default gap\n events: [queuedSequentialEvent.id, event.id],\n __raw: x\n };\n linkedEventsSequentialIdMap.set(linkedEventsSetId, linkedEventsSet);\n queuedSequentialEvent = null;\n createdSequentialEventsCount++;\n }\n }\n }\n\n eventsIdMap.set(id, event);\n });\n }\n\n const locations = extractLocations(x, locationsNameMap, warnings)?.map(x => ({ groupIndex: x.groupIndex, locations: [x.to] as [string] }));\n const groups = extractGroups (x, groupsNameMap, warnings);\n const teachers = extractTeachers (x, teachersNameMap, teachersSignatureMap, warnings);\n const syllabus = extractSyllabus(x, syllabusesCodeMap, syllabusesNameMap, warnings);\n\n const course: C_Course = {\n id: courseId,\n ...ids && { ids },\n ...displayName && { displayName },\n ...subject && { subject },\n /* TO BE DEPRECATED */ ...expectedTotalHours && { expectedTotalHours },\n /* TO BE DEPRECATED */ ...minutesPerWeek && { minutesPerWeek },\n ...plannedDuration && { plannedDuration },\n ...groups && { groups },\n ...teachers && { teachers },\n ...locations && { locations },\n ...syllabus && { syllabus },\n __raw: x\n };\n coursesIdMap.set(courseId, course);\n });\n\n\n\n ////\n //// events\n ////\n source.courses?.forEach(x => {\n // load courses\n const mergeWith = toStringIfExists(x.merge_with);\n if (!mergeWith) return;\n\n // ensure that the course to merge with exists\n if (!coursesIdMap.has(mergeWith)) {\n warnings.push({ code: 'invalid_course_reference', context: mergeWith });\n return;\n }\n\n const displayName = toStringIfExists(x.name);\n const locations = extractLocations(x, locationsNameMap, warnings)?.map(x => ({ groupIndex: x.groupIndex, locations: [x.to] as [string] }));\n const groups = extractGroups (x, groupsNameMap, warnings);\n const teachers = extractTeachers (x, teachersNameMap, teachersSignatureMap, warnings);\n\n // try to parse the lesson durations as an array of integers from which we will generate events\n if (x.lesson_durations) {\n const _durations = typeof x.lesson_durations === 'string'\n ? x.lesson_durations.split(',').map(x => x.trim())\n : [x.lesson_durations];\n\n // truncate to multiple of 5 and filter out zero duration events\n const durations = _durations\n .map(e => {\n try {\n return toPositiveMultipleOf5(e);\n } catch {\n warnings.push({ code: 'invalid_lesson_durations', context: x.lesson_durations });\n return undefined;\n }\n })\n .filter((x): x is number => x !== undefined);\n\n durations.forEach(preferredDuration => {\n const id = generateId(eventsIdMap);\n const event: C_Event = {\n id,\n course: mergeWith,\n preferredDuration: preferredDuration,\n ...displayName && { displayName },\n ...groups && { groups },\n ...teachers && { teachers },\n ...locations && { locations },\n __raw: x\n };\n eventsIdMap.set(id, event);\n });\n }\n });\n\n ////\n //// Linked events (parallel)\n ////\n parallelLessonsMap.values().forEach((events) => {\n if (events.length < 2) return; // No need to create a linked events set if there is only one event\n\n // Sort into courses\n const eventsByCourse = new Map<string, C_Event[]>();\n events.forEach(event => {\n const courseId = event.course!;\n if (!eventsByCourse.has(courseId)) {\n eventsByCourse.set(courseId, []);\n }\n eventsByCourse.get(courseId)!.push(event);\n });\n\n if (eventsByCourse.size < 2) return; // We can't create a linked events set if there is only one course involved\n\n const courses = Array.from(eventsByCourse.values()).map(events => ({ events }));\n const sets = getSetsFromCourses(courses);\n\n sets.forEach(set => {\n const linkedEventsSetId = generateId(linkedEventsParallelIdMap);\n const linkedEventsSet: C_LinkedEventsSet = {\n id: linkedEventsSetId,\n type: 'parallel',\n events: set.map(e => e.id),\n anchor: 'middle', // Default anchor\n };\n linkedEventsParallelIdMap.set(linkedEventsSetId, linkedEventsSet);\n });\n });\n\n\n ////\n //// return\n ////\n return {\n settings,\n locations: [...locationsIdMap .values()],\n teachers: [...teachersIdMap .values()],\n persons: [...personsIdMap .values()],\n groups: [...groupsIdMap .values()],\n courses: [...coursesIdMap .values()],\n events: [...eventsIdMap .values()],\n syllabuses: [...syllabusesIdMap.values()],\n linkedEventsSets: [...linkedEventsParallelIdMap.values(), ...linkedEventsSequentialIdMap.values()],\n meta: {\n // ...errors .length && { errors: errors },\n ...warnings.length && { warnings: warnings }\n }\n };\n}\n\n\nexport default {\n schedules: _schedules\n} satisfies FromInterface;"],"mappings":"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"}
@@ -0,0 +1,303 @@
1
+ import { IDType, PrivateIDType } from "../../core/interfaces/vertices/util/vertex.mjs";
2
+ import { Day } from "../../core/interfaces/vertices/properties/days.mjs";
3
+ import { Interval } from "../../core/interfaces/vertices/properties/intervals.mjs";
4
+ import { Tag } from "../../core/interfaces/vertices/properties/tags.mjs";
5
+ import { MaximumScheduleSpan } from "../../core/interfaces/vertices/properties/maximum-schedule-span.mjs";
6
+ import { PlannedScheduledDuration } from "../../core/interfaces/vertices/properties/planned-scheduled-duration.mjs";
7
+ import { MinBreakLength } from "../../core/interfaces/vertices/properties/min-break-length.mjs";
8
+ import { Types } from "./types/index.mjs";
9
+ import "../../index.mjs";
10
+ import * as moment$1 from "moment";
11
+
12
+ //#region src/Excel/v2/index.d.ts
13
+ declare class Map {
14
+ static from: {
15
+ schedules: (source: Types.Source) => {
16
+ settings: {
17
+ numDays: number;
18
+ dayStart: string;
19
+ dayEnd: string;
20
+ discretization: number;
21
+ };
22
+ locations: (Omit<{
23
+ id: IDType;
24
+ _id: PrivateIDType;
25
+ ids?: string | undefined;
26
+ is?: "location" | undefined;
27
+ displayName?: string | undefined;
28
+ createdAt?: string | undefined;
29
+ updatedAt?: string | undefined;
30
+ lastModifiedBy?: string | undefined;
31
+ tags?: Tag[] | undefined;
32
+ minBreakLength?: number | undefined;
33
+ days?: Day[] | undefined;
34
+ maximumCapacity?: number | undefined;
35
+ belongsTo?: string | undefined;
36
+ lockedTimes?: string[] | undefined;
37
+ lunch?: string[] | undefined;
38
+ exceptions?: string[] | undefined;
39
+ }, "_id"> & {
40
+ __raw: Types.Location;
41
+ })[];
42
+ teachers: (Omit<{
43
+ id: IDType;
44
+ _id: PrivateIDType;
45
+ ids?: string | undefined;
46
+ is?: "teacher" | undefined;
47
+ displayName?: string | undefined;
48
+ createdAt?: string | undefined;
49
+ updatedAt?: string | undefined;
50
+ lastModifiedBy?: string | undefined;
51
+ tags?: Tag[] | undefined;
52
+ minBreakLength?: number | undefined;
53
+ maxNumWorkingHours?: number | false | undefined;
54
+ maxNumDailyWorkingHours?: number | number[] | false | undefined;
55
+ maximumScheduleSpan?: MaximumScheduleSpan | undefined;
56
+ forbidOverlappingEvents?: boolean | undefined;
57
+ disableDayLengthPunishment?: boolean | undefined;
58
+ weight?: number | undefined;
59
+ intervals?: Interval[] | undefined;
60
+ days?: Day[] | undefined;
61
+ signature?: string | undefined;
62
+ plannedScheduledDuration?: PlannedScheduledDuration | undefined;
63
+ belongsTo?: string | undefined;
64
+ rootInterval?: string | undefined;
65
+ lockedTimes?: string[] | undefined;
66
+ lunch?: string[] | undefined;
67
+ complementaryTimes?: string[] | undefined;
68
+ exceptions?: string[] | undefined;
69
+ person?: string | undefined;
70
+ }, "_id"> & {
71
+ __raw: Types.Teacher;
72
+ })[];
73
+ persons: (Omit<{
74
+ id: IDType;
75
+ _id: PrivateIDType;
76
+ ids?: string | undefined;
77
+ is?: "person" | undefined;
78
+ displayName?: string | undefined;
79
+ createdAt?: string | undefined;
80
+ updatedAt?: string | undefined;
81
+ lastModifiedBy?: string | undefined;
82
+ type?: "Student" | "Teacher" | "Other" | undefined;
83
+ tags?: Tag[] | undefined;
84
+ lastName?: string | undefined;
85
+ firstName?: string | undefined;
86
+ birthDate?: Date | undefined;
87
+ sex?: "Man" | "Woman" | undefined;
88
+ SSN?: {
89
+ value: string;
90
+ nationality?: string;
91
+ } | undefined;
92
+ emails?: {
93
+ value: string;
94
+ type?: string;
95
+ }[] | undefined;
96
+ phoneNumbers?: {
97
+ value: string;
98
+ type: string;
99
+ }[] | undefined;
100
+ belongsTo?: string | undefined;
101
+ group?: string | undefined;
102
+ }, "_id"> & {
103
+ __raw: Types.Person;
104
+ })[];
105
+ groups: (Omit<{
106
+ id: IDType;
107
+ _id: PrivateIDType;
108
+ ids?: string | undefined;
109
+ is?: "group" | undefined;
110
+ displayName?: string | undefined;
111
+ createdAt?: string | undefined;
112
+ updatedAt?: string | undefined;
113
+ lastModifiedBy?: string | undefined;
114
+ tags?: Tag[] | undefined;
115
+ minBreakLength?: number | undefined;
116
+ maxNumWorkingHours?: number | false | undefined;
117
+ maxNumDailyWorkingHours?: number | number[] | false | undefined;
118
+ maximumScheduleSpan?: MaximumScheduleSpan | undefined;
119
+ forbidOverlappingEvents?: boolean | undefined;
120
+ disableDayLengthPunishment?: boolean | undefined;
121
+ weight?: number | undefined;
122
+ species?: "class" | undefined;
123
+ intervals?: Interval[] | undefined;
124
+ days?: Day[] | undefined;
125
+ belongsTo?: string | undefined;
126
+ parentGroups?: string[] | undefined;
127
+ subGroups?: string[] | undefined;
128
+ lockedTimes?: string[] | undefined;
129
+ lunch?: string[] | undefined;
130
+ exceptions?: string[] | undefined;
131
+ members?: string[] | undefined;
132
+ rootInterval?: string | undefined;
133
+ derivedParentGroups?: {
134
+ implicit?: boolean | undefined;
135
+ explicit?: boolean | undefined;
136
+ group: string;
137
+ }[] | undefined;
138
+ }, "_id"> & {
139
+ __raw: Types.Group;
140
+ })[];
141
+ courses: (Omit<{
142
+ id: IDType;
143
+ _id: PrivateIDType;
144
+ ids?: string | undefined;
145
+ is?: "course" | undefined;
146
+ displayName?: string | undefined;
147
+ createdAt?: string | undefined;
148
+ updatedAt?: string | undefined;
149
+ lastModifiedBy?: string | undefined;
150
+ type?: string | undefined;
151
+ tags?: Tag[] | undefined;
152
+ minBreakLength?: MinBreakLength | undefined;
153
+ weight?: number | undefined;
154
+ intervals?: Interval[] | undefined;
155
+ days?: Day[] | undefined;
156
+ subject?: string | undefined;
157
+ color?: string | undefined;
158
+ eventDurationVariance?: number | undefined;
159
+ centerOfAttraction?: string | null | undefined;
160
+ density?: number | undefined;
161
+ plannedDuration?: string | undefined;
162
+ minutesPlanned?: number | undefined;
163
+ minutesPerWeek?: number | undefined;
164
+ expectedTotalHours?: number | undefined;
165
+ belongsTo?: string | undefined;
166
+ period?: string | undefined;
167
+ syllabus?: string | undefined;
168
+ lockedTimes?: string[] | undefined;
169
+ exceptions?: string[] | undefined;
170
+ events?: string[] | undefined;
171
+ participants?: {
172
+ groupIndex?: number | undefined;
173
+ to: string;
174
+ }[] | undefined;
175
+ teachers?: {
176
+ groupIndex?: number | undefined;
177
+ to: string;
178
+ }[] | undefined;
179
+ groups?: {
180
+ groupIndex?: number | undefined;
181
+ to: string;
182
+ exclude?: string[] | undefined;
183
+ }[] | undefined;
184
+ locations?: {
185
+ groupIndex?: number | undefined;
186
+ rank?: number | undefined;
187
+ locations: [string];
188
+ }[] | undefined;
189
+ }, "_id"> & {
190
+ __raw: Types.Course;
191
+ })[];
192
+ events: (Omit<{
193
+ id: IDType;
194
+ _id: PrivateIDType;
195
+ ids?: string | undefined;
196
+ is?: "event" | undefined;
197
+ displayName?: string | undefined;
198
+ createdAt?: string | undefined;
199
+ updatedAt?: string | undefined;
200
+ lastModifiedBy?: string | undefined;
201
+ start?: (moment$1.Moment | string) | undefined;
202
+ end?: (moment$1.Moment | string) | undefined;
203
+ potentialCenter?: string | undefined;
204
+ type?: string | undefined;
205
+ tags?: Tag[] | undefined;
206
+ minBreakLength?: (MinBreakLength | null) | undefined;
207
+ weight?: number | undefined;
208
+ intervals?: Interval[] | null | undefined;
209
+ days?: Day[] | null | undefined;
210
+ color?: string | null | undefined;
211
+ centerOfAttraction?: string | null | undefined;
212
+ density?: number | undefined;
213
+ fixedStart?: boolean | undefined;
214
+ visible?: boolean | undefined;
215
+ parked?: boolean | undefined;
216
+ preferredDuration: number;
217
+ durationVariance?: number | undefined;
218
+ duration?: number | undefined;
219
+ weeks?: number[] | undefined;
220
+ belongsTo?: string | undefined;
221
+ course?: string | undefined;
222
+ period?: string | undefined;
223
+ linkedEventsSet?: string | undefined;
224
+ lockedTimes?: string[] | undefined;
225
+ exceptions?: string[] | undefined;
226
+ inLocations?: (string | null)[] | undefined;
227
+ participants?: {
228
+ groupIndex?: number | undefined;
229
+ to: string;
230
+ }[] | undefined;
231
+ teachers?: {
232
+ groupIndex?: number | undefined;
233
+ to: string;
234
+ }[] | undefined;
235
+ groups?: {
236
+ groupIndex?: number | undefined;
237
+ to: string;
238
+ exclude?: string[] | undefined;
239
+ }[] | undefined;
240
+ locations?: {
241
+ groupIndex?: number | undefined;
242
+ rank?: number | undefined;
243
+ locations: [string];
244
+ }[] | undefined;
245
+ threads?: string[] | undefined;
246
+ }, "_id"> & {
247
+ __raw?: Types.Course;
248
+ })[];
249
+ syllabuses: (Omit<{
250
+ id: IDType;
251
+ _id: PrivateIDType;
252
+ ids?: string | undefined;
253
+ is?: "syllabus" | undefined;
254
+ displayName?: string | undefined;
255
+ createdAt?: string | undefined;
256
+ updatedAt?: string | undefined;
257
+ lastModifiedBy?: string | undefined;
258
+ color?: string | null | undefined;
259
+ schoolType: string;
260
+ subjectCode?: string | undefined;
261
+ subjectName: string;
262
+ icon?: string | null | undefined;
263
+ subjectDesignation?: string | undefined;
264
+ courseCode?: string | undefined;
265
+ courseName?: string | undefined;
266
+ points?: number | undefined;
267
+ official: boolean;
268
+ belongsTo?: string | undefined;
269
+ }, "_id"> & {
270
+ __raw?: Types.Syllabus;
271
+ })[];
272
+ linkedEventsSets: (Omit<{
273
+ id: IDType;
274
+ _id: PrivateIDType;
275
+ ids?: string | undefined;
276
+ is?: "linkedEventsSet" | undefined;
277
+ displayName?: string | undefined;
278
+ createdAt?: string | undefined;
279
+ updatedAt?: string | undefined;
280
+ lastModifiedBy?: string | undefined;
281
+ anchor?: "start" | "middle" | "end" | undefined;
282
+ type: "parallel" | "sequential" | "custom";
283
+ gap?: {
284
+ min: number;
285
+ max: number;
286
+ } | undefined;
287
+ belongsTo?: string | undefined;
288
+ events: string[];
289
+ }, "_id"> & {
290
+ __raw?: Types.Course;
291
+ })[];
292
+ meta: {
293
+ warnings?: {
294
+ code: Types.ErrorCode;
295
+ context?: unknown;
296
+ }[];
297
+ };
298
+ };
299
+ };
300
+ }
301
+ //#endregion
302
+ export { Map };
303
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1,10 @@
1
+ import from_default from "./from/index.mjs";
2
+
3
+ //#region src/Excel/v2/index.ts
4
+ var Map = class {
5
+ static from = from_default;
6
+ };
7
+
8
+ //#endregion
9
+ export { Map };
10
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":["_from"],"sources":["../../../src/Excel/v2/index.ts"],"sourcesContent":["import _from from './from';\n// import _to from './to';\nimport type { Types } from './types';\n\nexport class Map {\n // static to = _to;\n static from = _from;\n}\n\nexport { Types };"],"mappings":";;;AAIA,IAAa,MAAb,MAAiB;CAEf,OAAO,OAAOA"}
@@ -0,0 +1,72 @@
1
+ //#region src/Excel/v2/types/index.d.ts
2
+ type Value = string | number;
3
+ declare namespace Types {
4
+ type Settings = {
5
+ number_of_days?: Value;
6
+ };
7
+ type Location = {
8
+ ID?: Value;
9
+ foreign_ID?: Value;
10
+ name?: Value;
11
+ };
12
+ type Teacher = {
13
+ ID?: Value;
14
+ foreign_ID?: Value;
15
+ name?: Value;
16
+ };
17
+ type Group = {
18
+ ID?: Value;
19
+ foreign_ID?: Value;
20
+ name?: Value;
21
+ is_class?: Value;
22
+ members?: Value;
23
+ };
24
+ type Person = {
25
+ ID?: Value;
26
+ foreign_ID?: Value;
27
+ first_name?: Value;
28
+ last_name?: Value;
29
+ group?: Value;
30
+ sex?: Value;
31
+ SSN?: Value;
32
+ };
33
+ type Course = {
34
+ ID?: Value;
35
+ foreign_ID?: Value;
36
+ name?: Value;
37
+ subject?: Value;
38
+ groups?: Value;
39
+ teachers?: Value;
40
+ locations?: Value;
41
+ total_hours?: Value;
42
+ minutes_per_week?: Value;
43
+ lesson_durations?: Value;
44
+ overlap_group?: Value;
45
+ merge_with?: Value;
46
+ linked_lessons_parallel?: Value;
47
+ linked_lessons_sequential?: Value;
48
+ syllabus?: Value;
49
+ };
50
+ type Syllabus = {
51
+ ID?: Value;
52
+ foreign_ID?: Value;
53
+ subject_code?: Value;
54
+ subject_name?: Value;
55
+ course_code?: Value;
56
+ course_name?: Value;
57
+ school_type?: Value;
58
+ };
59
+ type Source = {
60
+ settings?: Settings[];
61
+ locations?: Location[];
62
+ teachers?: Teacher[];
63
+ persons?: Person[];
64
+ groups?: Group[];
65
+ courses?: Course[];
66
+ syllabuses?: Syllabus[];
67
+ };
68
+ type ErrorCode = 'missing_settings_sheet' | 'invalid_number_of_days' | 'missing_locations_sheet' | 'missing_groups_sheet' | 'missing_teachers_sheet' | 'ignoring_duplicate_location' | 'ignoring_duplicate_group' | 'ignoring_duplicate_teacher' | 'missing_persons_sheet' | 'invalid_group_reference' | 'invalid_sex' | 'ignoring_duplicate_person' | 'missing_courses_sheet' | 'ignoring_duplicate_course' | 'invalid_total_hours' | 'invalid_minutes_per_week' | 'ambiguous_planned_duration' | 'invalid_lesson_durations' | 'invalid_location_reference' | 'location_referenced_multiple_times' | 'group_referenced_multiple_times' | 'invalid_teacher_reference' | 'teacher_referenced_multiple_times' | 'forbidden_group_reference' | 'duplicate_group_member' | 'invalid_person_reference' | 'person_in_multiple_classes' | 'invalid_course_reference' | 'missing_syllabus_sheet' | 'ignoring_duplicate_syllabus' | 'missing_subject_name' | 'missing_school_type' | 'invalid_syllabus_reference' | 'both_linked_lessons_fields_present';
69
+ }
70
+ //#endregion
71
+ export { Types };
72
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1,16 @@
1
+ //#region src/IdunSoft/from/courses.ts
2
+ var courses_default = (courses) => {
3
+ return courses.reduce((acc, course, index) => {
4
+ const ids = course["Ämne"];
5
+ if (!ids) throw new Error("A course does not have a unique key");
6
+ if (acc.map((x) => x.ids).includes(ids)) throw new Error(`A course ID "${ids}" exists multiple times at indices ${index} and ${acc.findIndex((x) => x.ids == ids)}`);
7
+ return acc.concat({
8
+ ids,
9
+ subject: course["Betygskod"]
10
+ });
11
+ }, []);
12
+ };
13
+
14
+ //#endregion
15
+ export { courses_default as default };
16
+ //# sourceMappingURL=courses.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"courses.mjs","names":[],"sources":["../../../src/IdunSoft/from/courses.ts"],"sourcesContent":["import type { Types as IdunSoftTypes } from '../types';\nimport type { OutTypes } from './schedules';\n\nexport default (courses: IdunSoftTypes.course[]): OutTypes.course[] => {\n return courses\n .reduce<OutTypes.course[]>((acc, course, index) => {\n const ids = course['Ämne'];\n if (!ids)\n throw new Error('A course does not have a unique key');\n\n if (acc.map(x => x.ids).includes(ids))\n throw new Error(`A course ID \"${ids}\" exists multiple times at indices ${ index } and ${ acc.findIndex(x => x.ids == ids) }`);\n\n return acc.concat({\n ids: ids,\n subject: course['Betygskod']\n });\n }, []);\n};"],"mappings":";AAGA,uBAAgB,YAAuD;AACrE,QAAO,QACJ,QAA2B,KAAK,QAAQ,UAAU;EACjD,MAAM,MAAM,OAAO;AACnB,MAAI,CAAC,IACH,OAAM,IAAI,MAAM,sCAAsC;AAExD,MAAI,IAAI,KAAI,MAAK,EAAE,IAAI,CAAC,SAAS,IAAI,CACnC,OAAM,IAAI,MAAM,gBAAgB,IAAI,qCAAsC,MAAO,OAAQ,IAAI,WAAU,MAAK,EAAE,OAAO,IAAI,GAAI;AAE/H,SAAO,IAAI,OAAO;GACP;GACT,SAAS,OAAO;GACjB,CAAC;IACD,EAAE,CAAC"}
@@ -0,0 +1,58 @@
1
+ import { getDayIndex } from "../../core/util.mjs";
2
+ import { Constants } from "../../common/constants.mjs";
3
+
4
+ //#region src/IdunSoft/from/events.ts
5
+ var events_default = (events) => {
6
+ return events.reduce((acc, event, index) => {
7
+ const ids = event["LektionID"];
8
+ if (!ids) throw new Error("An event does not have a unique key");
9
+ if (acc.some((x) => x.ids == ids)) throw new Error(`An event ID "${ids}" exists multiple times at indices ${index} and ${acc.findIndex((x) => x.ids == ids)}`);
10
+ if (!event["Lektionslängd"]) throw new Error(`An event [${ids}] does not have a duration`);
11
+ const duration = (() => {
12
+ try {
13
+ return parseInt(event["Lektionslängd"].split("min")[0]);
14
+ } catch {
15
+ throw new Error("duration have wrong structure");
16
+ }
17
+ })();
18
+ const teachers = event["LärareID"] ? [...new Set(event["LärareID"].split(","))].map((to) => ({ to })) : [];
19
+ const groups = event["GruppID"] ? [event["GruppID"]].map((to) => ({ to })) : [];
20
+ const inLocations = event["RumID"] ? [event["RumID"]] : [];
21
+ const locations = inLocations.map((x) => ({ locations: [x] }));
22
+ const preferredDuration = parseInt(event.Lektionslängd);
23
+ const { start, end } = (() => {
24
+ if (event.Starttid == null || event.VeckodagID == null) return {
25
+ start: void 0,
26
+ end: void 0
27
+ };
28
+ const day = getDayIndex(event.VeckodagID);
29
+ const hours = Math.floor(event.Starttid * 24);
30
+ const minutes = (event.Starttid * 24 - hours) * 60;
31
+ const start = Constants.FIRST_DAY.clone().add(day, "days").add(hours, "hours").add(minutes, "minutes");
32
+ return {
33
+ start,
34
+ end: start.clone().add(duration, "minutes")
35
+ };
36
+ })();
37
+ const doc = {
38
+ ids,
39
+ course: event["Ämne"],
40
+ preferredDuration,
41
+ duration,
42
+ teachers,
43
+ groups,
44
+ locations,
45
+ inLocations,
46
+ ...start && end && {
47
+ start,
48
+ end,
49
+ parked: false
50
+ }
51
+ };
52
+ return acc.concat(doc);
53
+ }, []);
54
+ };
55
+
56
+ //#endregion
57
+ export { events_default as default };
58
+ //# sourceMappingURL=events.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.mjs","names":[],"sources":["../../../src/IdunSoft/from/events.ts"],"sourcesContent":["import { getDayIndex } from '../../core/util';\nimport { Constants } from '../../common/constants';\nimport type { Types as IdunSoftTypes } from '../types';\nimport type { OutTypes } from './schedules';\n\nexport default (events: IdunSoftTypes.fromEvent[]): OutTypes.event[] => {\n return events\n .reduce<OutTypes.event[]>((acc, event, index) => {\n const ids = event['LektionID'];\n if (!ids)\n throw new Error('An event does not have a unique key');\n\n if (acc.some(x => x.ids == ids))\n throw new Error(`An event ID \"${ids}\" exists multiple times at indices ${ index } and ${ acc.findIndex(x => x.ids == ids) }`);\n\n if (!event['Lektionslängd'])\n throw new Error(`An event [${ ids }] does not have a duration`);\n\n const duration = (() => {\n try {\n return parseInt(event['Lektionslängd'].split('min')[0]);\n } catch {\n throw new Error('duration have wrong structure');\n }\n })();\n\n const teachers = event['LärareID'] ? [...new Set(event['LärareID'].split(','))].map(to => ({ to })) : [];\n const groups = event['GruppID' ] ? [event['GruppID'] ].map(to => ({ to })) : [];\n const inLocations = event['RumID' ] ? [event['RumID'] ] : [];\n const locations = inLocations.map(x => ({ locations: [x] as [string] }));\n\n const preferredDuration = parseInt(event.Lektionslängd); // ASSUMED TO BE OF THE FORMAT '40', IS THIS TRUE?\n\n const { start, end } = (() => {\n if (event.Starttid == null || event.VeckodagID == null) return { start: undefined, end: undefined };\n\n const day = getDayIndex(event.VeckodagID);\n const hours = Math.floor(event.Starttid * 24);\n const minutes = (event.Starttid * 24 - hours) * 60;\n\n const start = Constants.FIRST_DAY\n .clone()\n .add(day, 'days')\n .add(hours, 'hours')\n .add(minutes, 'minutes');\n const end = start\n .clone()\n .add(duration, 'minutes');\n\n return { start, end };\n })();\n\n const doc: OutTypes.event = {\n ids: ids,\n course: event['Ämne'],\n preferredDuration,\n duration,\n teachers,\n groups,\n locations,\n inLocations,\n ...start && end && { start, end, parked: false }\n };\n return acc.concat(doc);\n }, []);\n};"],"mappings":";;;;AAKA,sBAAgB,WAAwD;AACtE,QAAO,OACJ,QAA0B,KAAK,OAAO,UAAU;EAC/C,MAAM,MAAM,MAAM;AAClB,MAAI,CAAC,IACH,OAAM,IAAI,MAAM,sCAAsC;AAExD,MAAI,IAAI,MAAK,MAAK,EAAE,OAAO,IAAI,CAC7B,OAAM,IAAI,MAAM,gBAAgB,IAAI,qCAAsC,MAAO,OAAQ,IAAI,WAAU,MAAK,EAAE,OAAO,IAAI,GAAI;AAE/H,MAAI,CAAC,MAAM,iBACT,OAAM,IAAI,MAAM,aAAc,IAAK,4BAA4B;EAEjE,MAAM,kBAAkB;AACtB,OAAI;AACF,WAAO,SAAS,MAAM,iBAAiB,MAAM,MAAM,CAAC,GAAG;WACjD;AACN,UAAM,IAAI,MAAM,gCAAgC;;MAEhD;EAEJ,MAAM,WAAc,MAAM,cAAc,CAAC,GAAG,IAAI,IAAI,MAAM,YAAY,MAAM,IAAI,CAAC,CAAC,CAAC,KAAI,QAAO,EAAE,IAAI,EAAE,GAAG,EAAE;EAC3G,MAAM,SAAc,MAAM,aAAc,CAAC,MAAM,WAAmC,CAAC,KAAI,QAAO,EAAE,IAAI,EAAE,GAAG,EAAE;EAC3G,MAAM,cAAc,MAAM,WAAc,CAAC,MAAM,SAAmC,GAAuB,EAAE;EAC3G,MAAM,YAAc,YAAY,KAAI,OAAM,EAAE,WAAW,CAAC,EAAE,EAAc,EAAE;EAE1E,MAAM,oBAAoB,SAAS,MAAM,cAAc;EAEvD,MAAM,EAAE,OAAO,eAAe;AAC5B,OAAI,MAAM,YAAY,QAAQ,MAAM,cAAc,KAAM,QAAO;IAAE,OAAO;IAAW,KAAK;IAAW;GAEnG,MAAM,MAAU,YAAY,MAAM,WAAW;GAC7C,MAAM,QAAU,KAAK,MAAM,MAAM,WAAW,GAAG;GAC/C,MAAM,WAAW,MAAM,WAAW,KAAK,SAAS;GAEhD,MAAM,QAAQ,UAAU,UACrB,OAAO,CACP,IAAI,KAAK,OAAO,CAChB,IAAI,OAAO,QAAQ,CACnB,IAAI,SAAS,UAAU;AAK1B,UAAO;IAAE;IAAO,KAJJ,MACT,OAAO,CACP,IAAI,UAAU,UAAU;IAEN;MACnB;EAEJ,MAAM,MAAsB;GAClB;GACR,QAAQ,MAAM;GACd;GACA;GACA;GACA;GACA;GACA;GACA,GAAG,SAAS,OAAO;IAAE;IAAO;IAAK,QAAQ;IAAO;GACjD;AACD,SAAO,IAAI,OAAO,IAAI;IACrB,EAAE,CAAC"}
@@ -0,0 +1,17 @@
1
+ //#region src/IdunSoft/from/groups.ts
2
+ var groups_default = (groups) => {
3
+ return groups.reduce((acc, group, index) => {
4
+ const ids = group["ID"];
5
+ if (!ids) throw new Error("A group does not have a unique key");
6
+ if (acc.some((x) => x.ids == ids)) throw new Error(`A group ID "${ids}" exist multiple times at indices ${index} and ${acc.findIndex((x) => x.ids == ids)}`);
7
+ return acc.concat({
8
+ ids,
9
+ displayName: group["Klassnamn"],
10
+ species: "class"
11
+ });
12
+ }, []);
13
+ };
14
+
15
+ //#endregion
16
+ export { groups_default as default };
17
+ //# sourceMappingURL=groups.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"groups.mjs","names":[],"sources":["../../../src/IdunSoft/from/groups.ts"],"sourcesContent":["import type { Types as IdunSoftTypes } from '../types';\nimport type { OutTypes } from './schedules';\n\nexport default (groups: IdunSoftTypes.group[]): OutTypes.group[] => {\n return groups\n .reduce<OutTypes.group[]>((acc, group, index) => {\n const ids = group['ID'];\n if (!ids)\n throw new Error('A group does not have a unique key');\n\n if (acc.some(x => x.ids == ids))\n throw new Error(`A group ID \"${ids}\" exist multiple times at indices ${ index } and ${ acc.findIndex(x => x.ids == ids) }`);\n\n return acc.concat({\n ids: ids,\n displayName: group['Klassnamn'],\n species: 'class',\n });\n }, []);\n};"],"mappings":";AAGA,sBAAgB,WAAoD;AAClE,QAAO,OACJ,QAA0B,KAAK,OAAO,UAAU;EAC/C,MAAM,MAAM,MAAM;AAClB,MAAI,CAAC,IACH,OAAM,IAAI,MAAM,qCAAqC;AAEvD,MAAI,IAAI,MAAK,MAAK,EAAE,OAAO,IAAI,CAC7B,OAAM,IAAI,MAAM,eAAe,IAAI,oCAAqC,MAAO,OAAQ,IAAI,WAAU,MAAK,EAAE,OAAO,IAAI,GAAI;AAE7H,SAAO,IAAI,OAAO;GACH;GACb,aAAa,MAAM;GACnB,SAAa;GACd,CAAC;IACD,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import schedules_default from "./schedules.mjs";
2
+
3
+ //#region src/IdunSoft/from/index.ts
4
+ var from_default = { schedules: schedules_default };
5
+
6
+ //#endregion
7
+ export { from_default as default };
8
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":["_schedules"],"sources":["../../../src/IdunSoft/from/index.ts"],"sourcesContent":["import type { FromInterface } from '../../common/types';\nimport _schedules from './schedules';\n\nexport default {\n schedules: _schedules\n} satisfies FromInterface;"],"mappings":";;;AAGA,mBAAe,EACb,WAAWA,mBACZ"}
@@ -0,0 +1,16 @@
1
+ //#region src/IdunSoft/from/locations.ts
2
+ var locations_default = (locations) => {
3
+ return locations.reduce((acc, location, index) => {
4
+ const ids = location["ID"];
5
+ if (!ids) throw new Error("A location does not have a unique key");
6
+ if (acc.some((x) => x.ids == ids)) throw new Error(`A location ID "${ids}" exists multiple times at indices ${index} and ${acc.findIndex((x) => x.ids == ids)}`);
7
+ return acc.concat({
8
+ ids,
9
+ displayName: location["Namn"]
10
+ });
11
+ }, []);
12
+ };
13
+
14
+ //#endregion
15
+ export { locations_default as default };
16
+ //# sourceMappingURL=locations.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locations.mjs","names":[],"sources":["../../../src/IdunSoft/from/locations.ts"],"sourcesContent":["import type { Types as IdunSoftTypes } from '../types';\nimport type { OutTypes } from './schedules';\n\nexport default (locations: IdunSoftTypes.location[]): OutTypes.location[] => {\n return locations\n .reduce<OutTypes.location[]>((acc, location, index) => {\n const ids = location['ID'];\n if (!ids)\n throw new Error('A location does not have a unique key');\n\n if (acc.some(x => x.ids == ids))\n throw new Error(`A location ID \"${ids}\" exists multiple times at indices ${ index } and ${ acc.findIndex(x => x.ids == ids) }`);\n\n return acc.concat({\n ids: ids,\n displayName: location['Namn']\n });\n }, []);\n};"],"mappings":";AAGA,yBAAgB,cAA6D;AAC3E,QAAO,UACJ,QAA6B,KAAK,UAAU,UAAU;EACrD,MAAM,MAAM,SAAS;AACrB,MAAI,CAAC,IACH,OAAM,IAAI,MAAM,wCAAwC;AAE1D,MAAI,IAAI,MAAK,MAAK,EAAE,OAAO,IAAI,CAC7B,OAAM,IAAI,MAAM,kBAAkB,IAAI,qCAAsC,MAAO,OAAQ,IAAI,WAAU,MAAK,EAAE,OAAO,IAAI,GAAI;AAEjI,SAAO,IAAI,OAAO;GACH;GACb,aAAa,SAAS;GACvB,CAAC;IACD,EAAE,CAAC"}