@livepreso/api 6.45.0 → 6.47.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (364) hide show
  1. package/.rush/temp/1aebf46f78ad5c45f82f8147751890adb37bef9d.log +10 -0
  2. package/.rush/temp/3cdc82c352e8ed90607952873f3aa4c200490874.log +10 -0
  3. package/.rush/temp/5489ab737e406518983c16c57fc3e1edc07c0341.log +10 -0
  4. package/.rush/temp/924652444ab5a6063f328a2217123a2227058896.log +10 -0
  5. package/.rush/temp/9f2030f96d62f3e38052e35201819a216566f14f.log +10 -0
  6. package/.rush/temp/operation/test/all.log +19 -0
  7. package/.rush/temp/operation/test/state.json +3 -0
  8. package/.rush/temp/package-deps_build.json +156 -141
  9. package/.rush/temp/shrinkwrap-deps.json +281 -214
  10. package/CHANGELOG.json +29 -0
  11. package/CHANGELOG.md +15 -1
  12. package/README.md +4 -4
  13. package/api.build.log +6 -3
  14. package/api.test.cache.log +1 -0
  15. package/api.test.log +19 -0
  16. package/cjs/api.js +18 -2
  17. package/cjs/api.js.map +1 -1
  18. package/cjs/auth.js +3 -3
  19. package/cjs/auth.js.map +1 -1
  20. package/cjs/collections/activity.js.map +1 -1
  21. package/cjs/collections/adjunct-sections.js.map +1 -1
  22. package/cjs/collections/adjunct-slides.js.map +1 -1
  23. package/cjs/collections/adjunct-sub-slides.js.map +1 -1
  24. package/cjs/collections/appointment-adjunct-tags.js.map +1 -1
  25. package/cjs/collections/appointment-deckversion-tags.js.map +1 -1
  26. package/cjs/collections/appointment-editors.js.map +1 -1
  27. package/cjs/collections/appointment-section-tags.js.map +1 -1
  28. package/cjs/collections/appointment-slide-tags.js.map +1 -1
  29. package/cjs/collections/appointment-tags.js +9 -7
  30. package/cjs/collections/appointment-tags.js.map +1 -1
  31. package/cjs/collections/appointment-templates.js +36 -0
  32. package/cjs/collections/appointment-templates.js.map +1 -0
  33. package/cjs/collections/appointments.js.map +1 -1
  34. package/cjs/collections/assets.js.map +1 -1
  35. package/cjs/collections/auto-adjuncts.js.map +1 -1
  36. package/cjs/collections/base.js +4 -0
  37. package/cjs/collections/base.js.map +1 -1
  38. package/cjs/collections/base.spec.js.map +1 -1
  39. package/cjs/collections/cms-vals.js +5 -0
  40. package/cjs/collections/cms-vals.js.map +1 -1
  41. package/cjs/collections/contact-phones.js +28 -0
  42. package/cjs/collections/contact-phones.js.map +1 -0
  43. package/cjs/collections/contacts.js.map +1 -1
  44. package/cjs/collections/created-assets.js.map +1 -1
  45. package/cjs/collections/customers.js.map +1 -1
  46. package/cjs/collections/deck-notes.js.map +1 -1
  47. package/cjs/collections/deck-version-screenshots.js.map +1 -1
  48. package/cjs/collections/deck-versions.js.map +1 -1
  49. package/cjs/collections/decks.js.map +1 -1
  50. package/cjs/collections/deleted-assets.js.map +1 -1
  51. package/cjs/collections/dispatches.js.map +1 -1
  52. package/cjs/collections/event-objects.js.map +1 -1
  53. package/cjs/collections/events.js.map +1 -1
  54. package/cjs/collections/groups.js.map +1 -1
  55. package/cjs/collections/images.js.map +1 -1
  56. package/cjs/collections/locations.js.map +1 -1
  57. package/cjs/collections/opportunities.js.map +1 -1
  58. package/cjs/collections/pack-diffs.js.map +1 -1
  59. package/cjs/collections/packs.js.map +1 -1
  60. package/cjs/collections/presets.js.map +1 -1
  61. package/cjs/collections/section-selections.js.map +1 -1
  62. package/cjs/collections/sections.js.map +1 -1
  63. package/cjs/collections/signers.js +28 -0
  64. package/cjs/collections/signers.js.map +1 -0
  65. package/cjs/collections/signing-requests.js +28 -0
  66. package/cjs/collections/signing-requests.js.map +1 -0
  67. package/cjs/collections/slide-selections.js.map +1 -1
  68. package/cjs/collections/slides.js.map +1 -1
  69. package/cjs/collections/snapshots.js.map +1 -1
  70. package/cjs/collections/sub-slides.js.map +1 -1
  71. package/cjs/collections/tags.js.map +1 -1
  72. package/cjs/collections/teams.js.map +1 -1
  73. package/cjs/collections/templates.js.map +1 -1
  74. package/cjs/collections/uploads.js.map +1 -1
  75. package/cjs/collections/users.js.map +1 -1
  76. package/cjs/collections.js +52 -13
  77. package/cjs/collections.js.map +1 -1
  78. package/cjs/fixtures.js +232 -0
  79. package/cjs/fixtures.js.map +1 -0
  80. package/cjs/index.js +28 -4
  81. package/cjs/index.js.map +1 -1
  82. package/cjs/models/activity-item.js +10 -2
  83. package/cjs/models/activity-item.js.map +1 -1
  84. package/cjs/models/adjunct-section.js +7 -2
  85. package/cjs/models/adjunct-section.js.map +1 -1
  86. package/cjs/models/adjunct-slide.js +7 -2
  87. package/cjs/models/adjunct-slide.js.map +1 -1
  88. package/cjs/models/adjunct-sub-slide.js.map +1 -1
  89. package/cjs/models/adjunct.js +40 -0
  90. package/cjs/models/adjunct.js.map +1 -1
  91. package/cjs/models/appointment-adjunct-tags.js.map +1 -1
  92. package/cjs/models/appointment-deckversion-tags.js.map +1 -1
  93. package/cjs/models/appointment-editor.js.map +1 -1
  94. package/cjs/models/appointment-section-tags.js.map +1 -1
  95. package/cjs/models/appointment-slide-tags.js.map +1 -1
  96. package/cjs/models/appointment-stats.js.map +1 -1
  97. package/cjs/models/appointment-tags.js.map +1 -1
  98. package/cjs/models/appointment-template.js +28 -0
  99. package/cjs/models/appointment-template.js.map +1 -0
  100. package/cjs/models/appointment-viewing.js.map +1 -1
  101. package/cjs/models/appointment.js +108 -15
  102. package/cjs/models/appointment.js.map +1 -1
  103. package/cjs/models/asset.js +12 -0
  104. package/cjs/models/asset.js.map +1 -1
  105. package/cjs/models/auto-adjunct-key-check.js.map +1 -1
  106. package/cjs/models/auto-adjunct.js +2 -1
  107. package/cjs/models/auto-adjunct.js.map +1 -1
  108. package/cjs/models/base.js +25 -5
  109. package/cjs/models/base.js.map +1 -1
  110. package/cjs/models/base.spec.js.map +1 -1
  111. package/cjs/models/choicelist.js.map +1 -1
  112. package/cjs/models/cms-val.js +35 -1
  113. package/cjs/models/cms-val.js.map +1 -1
  114. package/cjs/models/cms-val.spec.js +32 -0
  115. package/cjs/models/cms-val.spec.js.map +1 -0
  116. package/cjs/models/contact-phone.js +66 -0
  117. package/cjs/models/contact-phone.js.map +1 -0
  118. package/cjs/models/contact.js.map +1 -1
  119. package/cjs/models/customer.js +3 -1
  120. package/cjs/models/customer.js.map +1 -1
  121. package/cjs/models/deck-note.js.map +1 -1
  122. package/cjs/models/deck-tags.js.map +1 -1
  123. package/cjs/models/deck-version-screenshot.js.map +1 -1
  124. package/cjs/models/deck-version.js +31 -8
  125. package/cjs/models/deck-version.js.map +1 -1
  126. package/cjs/models/deck.js.map +1 -1
  127. package/cjs/models/dispatch-preview.js.map +1 -1
  128. package/cjs/models/dispatch.js.map +1 -1
  129. package/cjs/models/event-object.js.map +1 -1
  130. package/cjs/models/event.js.map +1 -1
  131. package/cjs/models/feed-data.js.map +1 -1
  132. package/cjs/models/file.js.map +1 -1
  133. package/cjs/models/group.js.map +1 -1
  134. package/cjs/models/handover.js.map +1 -1
  135. package/cjs/models/hosted-preso.js.map +1 -1
  136. package/cjs/models/image.js.map +1 -1
  137. package/cjs/models/location.js.map +1 -1
  138. package/cjs/models/manifest-json.js +70 -2
  139. package/cjs/models/manifest-json.js.map +1 -1
  140. package/cjs/models/onshare.js.map +1 -1
  141. package/cjs/models/opportunity.js.map +1 -1
  142. package/cjs/models/pack-diff.js.map +1 -1
  143. package/cjs/models/pack.js.map +1 -1
  144. package/cjs/models/preset.js +4 -1
  145. package/cjs/models/preset.js.map +1 -1
  146. package/cjs/models/refresh-request.js +24 -0
  147. package/cjs/models/refresh-request.js.map +1 -1
  148. package/cjs/models/room.js.map +1 -1
  149. package/cjs/models/salesforce-lookup.js.map +1 -1
  150. package/cjs/models/section-selection.js.map +1 -1
  151. package/cjs/models/section.js.map +1 -1
  152. package/cjs/models/signer.js +47 -0
  153. package/cjs/models/signer.js.map +1 -0
  154. package/cjs/models/signing-request.js +66 -0
  155. package/cjs/models/signing-request.js.map +1 -0
  156. package/cjs/models/slide-selection.js.map +1 -1
  157. package/cjs/models/slide.js.map +1 -1
  158. package/cjs/models/snapshot.js +41 -2
  159. package/cjs/models/snapshot.js.map +1 -1
  160. package/cjs/models/snapshot.spec.js +51 -0
  161. package/cjs/models/snapshot.spec.js.map +1 -0
  162. package/cjs/models/sub-slide.js.map +1 -1
  163. package/cjs/models/support-ticket.js.map +1 -1
  164. package/cjs/models/tag.js.map +1 -1
  165. package/cjs/models/team.js +15 -2
  166. package/cjs/models/team.js.map +1 -1
  167. package/cjs/models/template.js +105 -3
  168. package/cjs/models/template.js.map +1 -1
  169. package/cjs/models/tenancy.js +3 -0
  170. package/cjs/models/tenancy.js.map +1 -1
  171. package/cjs/models/timing-log.js.map +1 -1
  172. package/cjs/models/timing-log.spec.js.map +1 -1
  173. package/cjs/models/token.js.map +1 -1
  174. package/cjs/models/transcribe-socket.js.map +1 -1
  175. package/cjs/models/user.js +7 -2
  176. package/cjs/models/user.js.map +1 -1
  177. package/cjs/models.js +52 -13
  178. package/cjs/models.js.map +1 -1
  179. package/cjs/presentation/appointment-presentation.js.map +1 -1
  180. package/cjs/presentation/base-presentation-collection.js.map +1 -1
  181. package/cjs/presentation/base-presentation-model.js +23 -14
  182. package/cjs/presentation/base-presentation-model.js.map +1 -1
  183. package/cjs/presentation/base-presentation-model.spec.js.map +1 -1
  184. package/cjs/presentation/presentation-deck.js +5 -1
  185. package/cjs/presentation/presentation-deck.js.map +1 -1
  186. package/cjs/presentation/presentation-deck.spec.js.map +1 -1
  187. package/cjs/presentation/presentation-decks.js.map +1 -1
  188. package/cjs/presentation/presentation-section.js +33 -8
  189. package/cjs/presentation/presentation-section.js.map +1 -1
  190. package/cjs/presentation/presentation-section.spec.js +13 -20
  191. package/cjs/presentation/presentation-section.spec.js.map +1 -1
  192. package/cjs/presentation/presentation-sections.js.map +1 -1
  193. package/cjs/presentation/presentation-slide.js +43 -9
  194. package/cjs/presentation/presentation-slide.js.map +1 -1
  195. package/cjs/presentation/presentation-slide.spec.js +11 -18
  196. package/cjs/presentation/presentation-slide.spec.js.map +1 -1
  197. package/cjs/presentation/presentation-slides.js.map +1 -1
  198. package/cjs/presentation/presentation-subslide.js.map +1 -1
  199. package/cjs/presentation/presentation-subslide.spec.js.map +1 -1
  200. package/cjs/presentation/presentation-subslides.js.map +1 -1
  201. package/cjs/presentation/presentation.js +8 -3
  202. package/cjs/presentation/presentation.js.map +1 -1
  203. package/cjs/selections.js +106 -0
  204. package/cjs/selections.js.map +1 -0
  205. package/cjs/sync.js.map +1 -1
  206. package/cjs/utils.js +43 -6
  207. package/cjs/utils.js.map +1 -1
  208. package/cjs/utils.spec.js +1 -1
  209. package/cjs/utils.spec.js.map +1 -1
  210. package/jest.config.js +4 -3
  211. package/package.json +12 -9
  212. package/src/api.js +17 -2
  213. package/src/auth.js +3 -3
  214. package/src/collections/activity.js +4 -4
  215. package/src/collections/adjunct-sections.js +1 -1
  216. package/src/collections/adjunct-slides.js +1 -1
  217. package/src/collections/adjunct-sub-slides.js +1 -1
  218. package/src/collections/appointment-adjunct-tags.js +1 -1
  219. package/src/collections/appointment-deckversion-tags.js +2 -2
  220. package/src/collections/appointment-editors.js +1 -1
  221. package/src/collections/appointment-section-tags.js +1 -1
  222. package/src/collections/appointment-slide-tags.js +1 -1
  223. package/src/collections/appointment-tags.js +20 -18
  224. package/src/collections/appointment-templates.js +26 -0
  225. package/src/collections/appointments.js +9 -9
  226. package/src/collections/assets.js +1 -1
  227. package/src/collections/auto-adjuncts.js +1 -1
  228. package/src/collections/base.js +10 -6
  229. package/src/collections/base.spec.js +2 -2
  230. package/src/collections/cms-vals.js +5 -1
  231. package/src/collections/contact-phones.js +18 -0
  232. package/src/collections/contacts.js +1 -1
  233. package/src/collections/created-assets.js +1 -1
  234. package/src/collections/customers.js +1 -1
  235. package/src/collections/deck-notes.js +1 -1
  236. package/src/collections/deck-version-screenshots.js +1 -1
  237. package/src/collections/deck-versions.js +1 -1
  238. package/src/collections/decks.js +1 -1
  239. package/src/collections/deleted-assets.js +1 -1
  240. package/src/collections/dispatches.js +2 -2
  241. package/src/collections/event-objects.js +1 -1
  242. package/src/collections/events.js +1 -1
  243. package/src/collections/groups.js +1 -1
  244. package/src/collections/images.js +1 -1
  245. package/src/collections/locations.js +1 -1
  246. package/src/collections/opportunities.js +1 -1
  247. package/src/collections/pack-diffs.js +1 -1
  248. package/src/collections/packs.js +1 -1
  249. package/src/collections/presets.js +1 -1
  250. package/src/collections/section-selections.js +1 -1
  251. package/src/collections/sections.js +1 -1
  252. package/src/collections/signers.js +18 -0
  253. package/src/collections/signing-requests.js +18 -0
  254. package/src/collections/slide-selections.js +1 -1
  255. package/src/collections/slides.js +1 -1
  256. package/src/collections/snapshots.js +1 -1
  257. package/src/collections/sub-slides.js +1 -1
  258. package/src/collections/tags.js +1 -1
  259. package/src/collections/teams.js +1 -1
  260. package/src/collections/templates.js +1 -1
  261. package/src/collections/uploads.js +1 -1
  262. package/src/collections/users.js +1 -1
  263. package/src/collections.js +4 -1
  264. package/src/fixtures.js +195 -0
  265. package/src/index.js +2 -3
  266. package/src/models/activity-item.js +9 -1
  267. package/src/models/adjunct-section.js +7 -2
  268. package/src/models/adjunct-slide.js +7 -2
  269. package/src/models/adjunct-sub-slide.js +1 -1
  270. package/src/models/adjunct.js +39 -1
  271. package/src/models/appointment-adjunct-tags.js +1 -1
  272. package/src/models/appointment-deckversion-tags.js +1 -1
  273. package/src/models/appointment-editor.js +1 -1
  274. package/src/models/appointment-section-tags.js +1 -1
  275. package/src/models/appointment-slide-tags.js +1 -1
  276. package/src/models/appointment-stats.js +1 -1
  277. package/src/models/appointment-tags.js +1 -1
  278. package/src/models/appointment-template.js +19 -0
  279. package/src/models/appointment-viewing.js +1 -1
  280. package/src/models/appointment.js +104 -38
  281. package/src/models/asset.js +15 -1
  282. package/src/models/auto-adjunct-key-check.js +1 -1
  283. package/src/models/auto-adjunct.js +2 -1
  284. package/src/models/base.js +36 -21
  285. package/src/models/base.spec.js +18 -18
  286. package/src/models/choicelist.js +1 -1
  287. package/src/models/cms-val.js +24 -1
  288. package/src/models/cms-val.spec.js +14 -0
  289. package/src/models/contact-phone.js +57 -0
  290. package/src/models/contact.js +1 -1
  291. package/src/models/customer.js +3 -3
  292. package/src/models/deck-note.js +1 -1
  293. package/src/models/deck-tags.js +1 -1
  294. package/src/models/deck-version-screenshot.js +1 -1
  295. package/src/models/deck-version.js +32 -6
  296. package/src/models/deck.js +1 -1
  297. package/src/models/dispatch-preview.js +1 -1
  298. package/src/models/dispatch.js +1 -1
  299. package/src/models/event-object.js +1 -1
  300. package/src/models/event.js +1 -1
  301. package/src/models/feed-data.js +2 -2
  302. package/src/models/file.js +1 -1
  303. package/src/models/group.js +1 -1
  304. package/src/models/handover.js +1 -1
  305. package/src/models/hosted-preso.js +1 -1
  306. package/src/models/image.js +1 -1
  307. package/src/models/location.js +1 -1
  308. package/src/models/manifest-json.js +65 -5
  309. package/src/models/onshare.js +1 -1
  310. package/src/models/opportunity.js +1 -1
  311. package/src/models/pack-diff.js +1 -1
  312. package/src/models/pack.js +1 -1
  313. package/src/models/preset.js +4 -1
  314. package/src/models/refresh-request.js +16 -1
  315. package/src/models/room.js +1 -1
  316. package/src/models/salesforce-lookup.js +1 -1
  317. package/src/models/section-selection.js +1 -1
  318. package/src/models/section.js +1 -1
  319. package/src/models/signer.js +37 -0
  320. package/src/models/signing-request.js +56 -0
  321. package/src/models/slide-selection.js +1 -1
  322. package/src/models/slide.js +1 -1
  323. package/src/models/snapshot.js +30 -2
  324. package/src/models/snapshot.spec.js +31 -0
  325. package/src/models/sub-slide.js +1 -1
  326. package/src/models/support-ticket.js +1 -1
  327. package/src/models/tag.js +1 -1
  328. package/src/models/team.js +14 -3
  329. package/src/models/template.js +72 -2
  330. package/src/models/tenancy.js +4 -1
  331. package/src/models/timing-log.js +2 -2
  332. package/src/models/timing-log.spec.js +1 -1
  333. package/src/models/token.js +1 -1
  334. package/src/models/transcribe-socket.js +1 -1
  335. package/src/models/user.js +13 -2
  336. package/src/models.js +4 -1
  337. package/src/presentation/appointment-presentation.js +4 -4
  338. package/src/presentation/base-presentation-collection.js +1 -1
  339. package/src/presentation/base-presentation-model.js +25 -16
  340. package/src/presentation/base-presentation-model.spec.js +5 -5
  341. package/src/presentation/presentation-deck.js +28 -23
  342. package/src/presentation/presentation-deck.spec.js +4 -4
  343. package/src/presentation/presentation-decks.js +1 -1
  344. package/src/presentation/presentation-section.js +59 -31
  345. package/src/presentation/presentation-section.spec.js +31 -32
  346. package/src/presentation/presentation-sections.js +1 -1
  347. package/src/presentation/presentation-slide.js +51 -25
  348. package/src/presentation/presentation-slide.spec.js +21 -27
  349. package/src/presentation/presentation-slides.js +1 -1
  350. package/src/presentation/presentation-subslide.js +5 -5
  351. package/src/presentation/presentation-subslide.spec.js +3 -3
  352. package/src/presentation/presentation-subslides.js +1 -1
  353. package/src/presentation/presentation.js +5 -3
  354. package/src/selections.js +71 -0
  355. package/src/sync.js +1 -1
  356. package/src/utils.js +31 -8
  357. package/src/utils.spec.js +8 -8
  358. package/.rush/temp/package-deps_test.json +0 -172
  359. package/cjs/collections/appointment-duplicates.js +0 -29
  360. package/cjs/collections/appointment-duplicates.js.map +0 -1
  361. package/cjs/models/appointment-duplicate.js +0 -94
  362. package/cjs/models/appointment-duplicate.js.map +0 -1
  363. package/src/collections/appointment-duplicates.js +0 -19
  364. package/src/models/appointment-duplicate.js +0 -73
package/CHANGELOG.json CHANGED
@@ -1,6 +1,35 @@
1
1
  {
2
2
  "name": "@livepreso/api",
3
3
  "entries": [
4
+ {
5
+ "version": "6.47.0",
6
+ "tag": "@livepreso/api_v6.47.0",
7
+ "date": "Wed, 24 Jul 2024 06:53:26 GMT",
8
+ "comments": {
9
+ "minor": [
10
+ {
11
+ "comment": "Update latest"
12
+ }
13
+ ],
14
+ "dependency": [
15
+ {
16
+ "comment": "Updating dependency \"@livepreso/log\" from `^1.3.10` to `^1.3.11`"
17
+ }
18
+ ]
19
+ }
20
+ },
21
+ {
22
+ "version": "6.46.0",
23
+ "tag": "@livepreso/api_v6.46.0",
24
+ "date": "Sun, 03 Mar 2024 23:59:09 GMT",
25
+ "comments": {
26
+ "minor": [
27
+ {
28
+ "comment": "Latest version"
29
+ }
30
+ ]
31
+ }
32
+ },
4
33
  {
5
34
  "version": "6.45.0",
6
35
  "tag": "@livepreso/api_v6.45.0",
package/CHANGELOG.md CHANGED
@@ -1,6 +1,20 @@
1
1
  # Change Log - @livepreso/api
2
2
 
3
- This log was last generated on Wed, 01 Jun 2022 00:55:51 GMT and should not be manually modified.
3
+ This log was last generated on Wed, 24 Jul 2024 06:53:26 GMT and should not be manually modified.
4
+
5
+ ## 6.47.0
6
+ Wed, 24 Jul 2024 06:53:26 GMT
7
+
8
+ ### Minor changes
9
+
10
+ - Update latest
11
+
12
+ ## 6.46.0
13
+ Sun, 03 Mar 2024 23:59:09 GMT
14
+
15
+ ### Minor changes
16
+
17
+ - Latest version
4
18
 
5
19
  ## 6.45.0
6
20
  Wed, 01 Jun 2022 00:55:51 GMT
package/README.md CHANGED
@@ -18,10 +18,10 @@ yarn add sp-api
18
18
  ## Examples
19
19
 
20
20
  ```javascript
21
- import {Auth, Api} from "sp-api";
22
- import {registerMiddleware} from "sp-api/middleware";
23
- import AuthMiddleware from "sp-api/middlewares/auth";
24
- import RedirectMiddleware from "sp-api/middlewares/redirect";
21
+ import {Auth, Api} from "@livepreso/api";
22
+ import {registerMiddleware} from "@livepreso/api/middleware";
23
+ import AuthMiddleware from "@livepreso/api/middlewares/auth";
24
+ import RedirectMiddleware from "@livepreso/api/middlewares/redirect";
25
25
 
26
26
  const middlewares = [
27
27
  new AuthMiddleware(),
package/api.build.log CHANGED
@@ -1,6 +1,9 @@
1
- Build cache hit.
1
+ This project was not found in the build cache.
2
2
 
3
- Clearing cached folders:
3
+ Invoking: run-p build:*
4
4
 
5
- Successfully restored output from the build cache.
6
5
 
6
+ > @livepreso/api@6.46.0 build:cjs
7
+ > BABEL_ENV=cjs babel --delete-dir-on-start src/ --out-dir=cjs/ -s
8
+
9
+ Successfully compiled 163 files with Babel (4111ms).
@@ -0,0 +1 @@
1
+ This project does not define the caching behavior of the "test" command, so caching has been disabled.
package/api.test.log ADDED
@@ -0,0 +1,19 @@
1
+ Invoking: jest --coverage --coverageReporters=json
2
+ PASS src/presentation/base-presentation-model.spec.js (46.851 s)
3
+ PASS src/presentation/presentation-section.spec.js (47.38 s)
4
+ PASS src/models/timing-log.spec.js (47.233 s)
5
+ PASS src/presentation/presentation-slide.spec.js (47.313 s)
6
+ PASS src/collections/base.spec.js (47.337 s)
7
+ PASS src/presentation/presentation-deck.spec.js (47.104 s)
8
+ PASS src/models/base.spec.js (48.024 s)
9
+ PASS src/api.spec.js
10
+ PASS src/presentation/presentation-subslide.spec.js
11
+ PASS src/models/user.spec.js
12
+ PASS src/utils.spec.js
13
+ PASS src/auth.spec.js
14
+
15
+ Test Suites: 12 passed, 12 total
16
+ Tests: 140 passed, 140 total
17
+ Snapshots: 0 total
18
+ Time: 55.503 s, estimated 60 s
19
+ Ran all test suites.
package/cjs/api.js CHANGED
@@ -9,6 +9,8 @@ exports.default = exports.Api = void 0;
9
9
 
10
10
  var _bluebird = _interopRequireDefault(require("bluebird"));
11
11
 
12
+ var _url = _interopRequireDefault(require("url"));
13
+
12
14
  /**
13
15
  * @namespace api
14
16
  */
@@ -18,7 +20,7 @@ var _bluebird = _interopRequireDefault(require("bluebird"));
18
20
  * @constructor
19
21
  * @alias api.Api
20
22
  * @example
21
- * import {Api} from "sp-api";
23
+ * import {Api} from "@livepreso/api";
22
24
  */
23
25
  var Api = {
24
26
  resources: {},
@@ -29,7 +31,7 @@ var Api = {
29
31
  * @memberof api.Api
30
32
  * @prop {number} version
31
33
  */
32
- version: 29,
34
+ version: 31,
33
35
 
34
36
  /**
35
37
  * Initialize the api. Connects to the network and returns the
@@ -74,6 +76,20 @@ var Api = {
74
76
  return Api._apiURL;
75
77
  },
76
78
 
79
+ /**
80
+ * Returns the root URL (origin) of the api server. Ie,
81
+ * server.com/api/ -> server.com/
82
+ * @memberof api.Api
83
+ * @returns {string}
84
+ */
85
+ getRootURL: function getRootURL() {
86
+ var urlObj = _url.default.parse(Api._apiURL);
87
+
88
+ urlObj.pathname = "";
89
+ urlObj.search = "";
90
+ return _url.default.format(urlObj);
91
+ },
92
+
77
93
  /**
78
94
  * Returns the full path to a resource endpoint, based on the resource
79
95
  * name.
package/cjs/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/api.js"],"names":["Api","resources","envs","_apiURL","version","initialize","apiURL","Promise","resolve","then","require","ApiModel","EnvsModel","api","url","all","fetch","toJSON","catch","e","getURL","getResourceURL","resource","res","Error"],"mappings":";;;;;;;;;AAAA;;AACA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,GAAG,GAAG;AAClBC,EAAAA,SAAS,EAAE,EADO;AAElBC,EAAAA,IAAI,EAAE,IAFY;AAGlBC,EAAAA,OAAO,EAAE,EAHS;;AAKlB;AACD;AACA;AACA;AACCC,EAAAA,OAAO,EAAE,EATS;;AAWlB;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACCC,EAAAA,UAnBkB,sBAmBPC,MAnBO,EAmBiB;AAAA,QAAhBF,OAAgB,uEAAN,IAAM;AAClCJ,IAAAA,GAAG,CAACG,OAAJ,GAAcG,MAAd;AACA,SAAKF,OAAL,GAAeA,OAAO,KAAK,IAAZ,GAAmB,KAAKA,OAAxB,GAAkCA,OAAjD;AAEA,WAAOG,kBAAQC,OAAR,GACLC,IADK,CACA,YAAM;AACX,aAAOC,OAAO,CAAC,aAAD,CAAd;AACA,KAHK,EAILD,IAJK,CAIA,gBAA6B;AAAA,UAA1BE,QAA0B,QAA1BA,QAA0B;AAAA,UAAhBC,SAAgB,QAAhBA,SAAgB;AAClC,UAAMC,GAAG,GAAG,IAAIF,QAAJ,CAAa;AAAEG,QAAAA,GAAG,EAAEd,GAAG,CAACG;AAAX,OAAb,CAAZ;AACA,UAAMD,IAAI,GAAG,IAAIU,SAAJ,CAAc;AAAEE,QAAAA,GAAG,YAAKd,GAAG,CAACG,OAAT;AAAL,OAAd,CAAb;AAEA,aAAOI,kBAAQQ,GAAR,CAAY,CAACF,GAAG,CAACG,KAAJ,EAAD,EAAcd,IAAI,CAACc,KAAL,EAAd,CAAZ,EACLP,IADK,CACA,YAAM;AACXT,QAAAA,GAAG,CAACC,SAAJ,GAAgBY,GAAG,CAACI,MAAJ,EAAhB;AACAjB,QAAAA,GAAG,CAACE,IAAJ,GAAWA,IAAI,CAACe,MAAL,EAAX;AACA,OAJK,EAKLC,KALK,CAKC,UAACC,CAAD,EAAO;AACbnB,QAAAA,GAAG,CAACE,IAAJ,GAAW,IAAX;AACAF,QAAAA,GAAG,CAACC,SAAJ,GAAgB,EAAhB;AAEA,cAAMkB,CAAN;AACA,OAVK,CAAP;AAWA,KAnBK,CAAP;AAoBA,GA3CiB;;AA6ClB;AACD;AACA;AACA;AACA;AACCC,EAAAA,MAlDkB,oBAkDT;AACR,WAAOpB,GAAG,CAACG,OAAX;AACA,GApDiB;;AAsDlB;AACD;AACA;AACA;AACA;AACA;AACA;AACCkB,EAAAA,cA7DkB,0BA6DHC,QA7DG,EA6DO;AACxB,QAAMC,GAAG,GAAGvB,GAAG,CAACC,SAAJ,CAAcqB,QAAd,CAAZ;;AACA,QAAI,CAACC,GAAL,EAAU;AACT,YAAM,IAAIC,KAAJ,gCAAkCF,QAAlC,EAAN;AACA;;AACD,WAAOC,GAAP;AACA;AAnEiB,CAAZ;;eAsEQvB,G","sourcesContent":["import Promise from \"bluebird\";\n/**\n * @namespace api\n */\n/**\n * Everything to do with the api endpoint\n * @constructor\n * @alias api.Api\n * @example\n * import {Api} from \"sp-api\";\n */\nexport const Api = {\n\tresources: {},\n\tenvs: null,\n\t_apiURL: \"\",\n\n\t/**\n\t * @memberof api.Api\n\t * @prop {number} version\n\t */\n\tversion: 29,\n\n\t/**\n\t * Initialize the api. Connects to the network and returns the\n\t * api resource data.\n\t * @memberof api.Api\n\t * @method initialize\n\t * @param {string} apiURL - Api endpoint\n\t * @returns {Promise}\n\t */\n\tinitialize(apiURL, version = null) {\n\t\tApi._apiURL = apiURL;\n\t\tthis.version = version === null ? this.version : version;\n\n\t\treturn Promise.resolve()\n\t\t\t.then(() => {\n\t\t\t\treturn require(\"./models.js\");\n\t\t\t})\n\t\t\t.then(({ ApiModel, EnvsModel }) => {\n\t\t\t\tconst api = new ApiModel({ url: Api._apiURL });\n\t\t\t\tconst envs = new EnvsModel({ url: `${Api._apiURL}envs/` });\n\n\t\t\t\treturn Promise.all([api.fetch(), envs.fetch()])\n\t\t\t\t\t.then(() => {\n\t\t\t\t\t\tApi.resources = api.toJSON();\n\t\t\t\t\t\tApi.envs = envs.toJSON();\n\t\t\t\t\t})\n\t\t\t\t\t.catch((e) => {\n\t\t\t\t\t\tApi.envs = null;\n\t\t\t\t\t\tApi.resources = {};\n\n\t\t\t\t\t\tthrow e;\n\t\t\t\t\t});\n\t\t\t});\n\t},\n\n\t/**\n\t * Returns the full path of the api root\n\t * @memberof api.Api\n\t * @returns {string}\n\t */\n\tgetURL() {\n\t\treturn Api._apiURL;\n\t},\n\n\t/**\n\t * Returns the full path to a resource endpoint, based on the resource\n\t * name.\n\t * @memberof api.Api\n\t * @param {string} resource - name of resource\n\t * @returns {string}\n\t */\n\tgetResourceURL(resource) {\n\t\tconst res = Api.resources[resource];\n\t\tif (!res) {\n\t\t\tthrow new Error(`No API endpoint for: ${resource}`);\n\t\t}\n\t\treturn res;\n\t},\n};\n\nexport default Api;\n"],"file":"api.js"}
1
+ {"version":3,"sources":["../src/api.js"],"names":["Api","resources","envs","_apiURL","version","initialize","apiURL","Promise","resolve","then","require","ApiModel","EnvsModel","api","url","all","fetch","toJSON","catch","e","getURL","getRootURL","urlObj","url2","parse","pathname","search","format","getResourceURL","resource","res","Error"],"mappings":";;;;;;;;;AAAA;;AACA;;AAEA;AACA;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,GAAG,GAAG;AAClBC,EAAAA,SAAS,EAAE,EADO;AAElBC,EAAAA,IAAI,EAAE,IAFY;AAGlBC,EAAAA,OAAO,EAAE,EAHS;;AAKlB;AACD;AACA;AACA;AACCC,EAAAA,OAAO,EAAE,EATS;;AAWlB;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACCC,EAAAA,UAnBkB,sBAmBPC,MAnBO,EAmBiB;AAAA,QAAhBF,OAAgB,uEAAN,IAAM;AAClCJ,IAAAA,GAAG,CAACG,OAAJ,GAAcG,MAAd;AACA,SAAKF,OAAL,GAAeA,OAAO,KAAK,IAAZ,GAAmB,KAAKA,OAAxB,GAAkCA,OAAjD;AAEA,WAAOG,kBAAQC,OAAR,GACLC,IADK,CACA,YAAM;AACX,aAAOC,OAAO,CAAC,aAAD,CAAd;AACA,KAHK,EAILD,IAJK,CAIA,gBAA6B;AAAA,UAA1BE,QAA0B,QAA1BA,QAA0B;AAAA,UAAhBC,SAAgB,QAAhBA,SAAgB;AAClC,UAAMC,GAAG,GAAG,IAAIF,QAAJ,CAAa;AAAEG,QAAAA,GAAG,EAAEd,GAAG,CAACG;AAAX,OAAb,CAAZ;AACA,UAAMD,IAAI,GAAG,IAAIU,SAAJ,CAAc;AAAEE,QAAAA,GAAG,YAAKd,GAAG,CAACG,OAAT;AAAL,OAAd,CAAb;AAEA,aAAOI,kBAAQQ,GAAR,CAAY,CAACF,GAAG,CAACG,KAAJ,EAAD,EAAcd,IAAI,CAACc,KAAL,EAAd,CAAZ,EACLP,IADK,CACA,YAAM;AACXT,QAAAA,GAAG,CAACC,SAAJ,GAAgBY,GAAG,CAACI,MAAJ,EAAhB;AACAjB,QAAAA,GAAG,CAACE,IAAJ,GAAWA,IAAI,CAACe,MAAL,EAAX;AACA,OAJK,EAKLC,KALK,CAKC,UAACC,CAAD,EAAO;AACbnB,QAAAA,GAAG,CAACE,IAAJ,GAAW,IAAX;AACAF,QAAAA,GAAG,CAACC,SAAJ,GAAgB,EAAhB;AAEA,cAAMkB,CAAN;AACA,OAVK,CAAP;AAWA,KAnBK,CAAP;AAoBA,GA3CiB;;AA6ClB;AACD;AACA;AACA;AACA;AACCC,EAAAA,MAlDkB,oBAkDT;AACR,WAAOpB,GAAG,CAACG,OAAX;AACA,GApDiB;;AAsDlB;AACD;AACA;AACA;AACA;AACA;AACCkB,EAAAA,UA5DkB,wBA4DL;AACZ,QAAMC,MAAM,GAAGC,aAAKC,KAAL,CAAWxB,GAAG,CAACG,OAAf,CAAf;;AACAmB,IAAAA,MAAM,CAACG,QAAP,GAAkB,EAAlB;AACAH,IAAAA,MAAM,CAACI,MAAP,GAAgB,EAAhB;AACA,WAAOH,aAAKI,MAAL,CAAYL,MAAZ,CAAP;AACA,GAjEiB;;AAmElB;AACD;AACA;AACA;AACA;AACA;AACA;AACCM,EAAAA,cA1EkB,0BA0EHC,QA1EG,EA0EO;AACxB,QAAMC,GAAG,GAAG9B,GAAG,CAACC,SAAJ,CAAc4B,QAAd,CAAZ;;AACA,QAAI,CAACC,GAAL,EAAU;AACT,YAAM,IAAIC,KAAJ,gCAAkCF,QAAlC,EAAN;AACA;;AACD,WAAOC,GAAP;AACA;AAhFiB,CAAZ;;eAmFQ9B,G","sourcesContent":["import Promise from \"bluebird\";\nimport url2 from \"url\";\n\n/**\n * @namespace api\n */\n/**\n * Everything to do with the api endpoint\n * @constructor\n * @alias api.Api\n * @example\n * import {Api} from \"@livepreso/api\";\n */\nexport const Api = {\n\tresources: {},\n\tenvs: null,\n\t_apiURL: \"\",\n\n\t/**\n\t * @memberof api.Api\n\t * @prop {number} version\n\t */\n\tversion: 31,\n\n\t/**\n\t * Initialize the api. Connects to the network and returns the\n\t * api resource data.\n\t * @memberof api.Api\n\t * @method initialize\n\t * @param {string} apiURL - Api endpoint\n\t * @returns {Promise}\n\t */\n\tinitialize(apiURL, version = null) {\n\t\tApi._apiURL = apiURL;\n\t\tthis.version = version === null ? this.version : version;\n\n\t\treturn Promise.resolve()\n\t\t\t.then(() => {\n\t\t\t\treturn require(\"./models.js\");\n\t\t\t})\n\t\t\t.then(({ ApiModel, EnvsModel }) => {\n\t\t\t\tconst api = new ApiModel({ url: Api._apiURL });\n\t\t\t\tconst envs = new EnvsModel({ url: `${Api._apiURL}envs/` });\n\n\t\t\t\treturn Promise.all([api.fetch(), envs.fetch()])\n\t\t\t\t\t.then(() => {\n\t\t\t\t\t\tApi.resources = api.toJSON();\n\t\t\t\t\t\tApi.envs = envs.toJSON();\n\t\t\t\t\t})\n\t\t\t\t\t.catch((e) => {\n\t\t\t\t\t\tApi.envs = null;\n\t\t\t\t\t\tApi.resources = {};\n\n\t\t\t\t\t\tthrow e;\n\t\t\t\t\t});\n\t\t\t});\n\t},\n\n\t/**\n\t * Returns the full path of the api root\n\t * @memberof api.Api\n\t * @returns {string}\n\t */\n\tgetURL() {\n\t\treturn Api._apiURL;\n\t},\n\n\t/**\n\t * Returns the root URL (origin) of the api server. Ie,\n\t * server.com/api/ -> server.com/\n\t * @memberof api.Api\n\t * @returns {string}\n\t */\n\tgetRootURL() {\n\t\tconst urlObj = url2.parse(Api._apiURL);\n\t\turlObj.pathname = \"\";\n\t\turlObj.search = \"\";\n\t\treturn url2.format(urlObj);\n\t},\n\n\t/**\n\t * Returns the full path to a resource endpoint, based on the resource\n\t * name.\n\t * @memberof api.Api\n\t * @param {string} resource - name of resource\n\t * @returns {string}\n\t */\n\tgetResourceURL(resource) {\n\t\tconst res = Api.resources[resource];\n\t\tif (!res) {\n\t\t\tthrow new Error(`No API endpoint for: ${resource}`);\n\t\t}\n\t\treturn res;\n\t},\n};\n\nexport default Api;\n"],"file":"api.js"}
package/cjs/auth.js CHANGED
@@ -33,7 +33,7 @@ var _log = _interopRequireDefault(require("./log.js"));
33
33
  * @constructor
34
34
  * @alias auth.Auth
35
35
  * @example
36
- * import {Auth} from "sp-api";
36
+ * import {Auth} from "@livepreso/api";
37
37
  */
38
38
  var Auth = {
39
39
  _token: null,
@@ -115,9 +115,9 @@ var Auth = {
115
115
  var tokenModel = new _token.TokenModel({
116
116
  key: token
117
117
  });
118
- return tokenModel.fetch().then(function () {
118
+ return tokenModel.fetch().tap(function () {
119
119
  return tokenModel.user.fetch();
120
- }).then(function () {
120
+ }).tap(function () {
121
121
  Auth._user = tokenModel.user;
122
122
  Auth._loggedIn = true;
123
123
  });
package/cjs/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/auth.js"],"names":["Auth","_token","_user","_loggedIn","headers","headerObj","Accept","Api","version","Authorization","login","username","password","options","tokensURL","getResourceURL","agent","agentVersion","data","agent_version","set","send","then","res","body","token","statusCode","JSON","parse","text","key","e","log","error","loginWithToken","info","tokenModel","TokenModel","fetch","user","clear","loggedIn","BaseModel"],"mappings":"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","sourcesContent":["/**\n * @namespace auth\n */\nimport { Api } from \"./api.js\";\nimport { BaseModel } from \"./models/base.js\";\nimport SuperAgentRequest from \"superagent-bluebird-promise\";\nimport { TokenModel } from \"./models/token.js\";\nimport log from \"./log.js\";\n\n/**\n * Deals with authentication with the api\n * @constructor\n * @alias auth.Auth\n * @example\n * import {Auth} from \"sp-api\";\n */\nexport const Auth = {\n\t_token: null,\n\t_user: null,\n\t_loggedIn: false,\n\n\tget headers() {\n\t\tconst headerObj = {\n\t\t\tAccept: `application/vnd.salespreso+json; version=${Api.version}`,\n\t\t};\n\n\t\tif (this._token) {\n\t\t\theaderObj.Authorization = `Token ${this._token}`;\n\t\t}\n\n\t\treturn headerObj;\n\t},\n\n\t/**\n\t * Basic login using a login and password.\n\t * @memberof auth.Auth\n\t * @static\n\t * @param {string} username\n\t * @param {string} password\n\t * @param {object} options\n\t * @return {Promise}\n\t */\n\tlogin(username, password, options) {\n\t\tconst tokensURL = Api.getResourceURL(\"tokens\");\n\n\t\tconst agent = options?.agent;\n\t\tconst agentVersion = options?.agentVersion;\n\n\t\tconst data = {\n\t\t\tusername,\n\t\t\tpassword,\n\t\t};\n\n\t\tif (agent) {\n\t\t\tdata.agent = agent;\n\t\t}\n\n\t\tif (agentVersion) {\n\t\t\tdata.agent_version = agentVersion;\n\t\t}\n\n\t\treturn SuperAgentRequest(\"POST\", tokensURL)\n\t\t\t.set({\n\t\t\t\tAccept: Auth.headers.Accept,\n\t\t\t})\n\t\t\t.send(data)\n\t\t\t.then((res) => {\n\t\t\t\tlet body = {};\n\t\t\t\tlet token = \"\";\n\t\t\t\tif (res.statusCode === 200) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tbody = JSON.parse(res.text);\n\t\t\t\t\t\ttoken = body.key;\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tlog.error(\"Error parsing JSON\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn Auth.loginWithToken(token).then(() => {\n\t\t\t\t\treturn body;\n\t\t\t\t});\n\t\t\t});\n\t},\n\n\t/**\n\t * Login using a token\n\t * @memberof auth.Auth\n\t * @static\n\t * @param {string} token\n\t * @return {Promise}\n\t */\n\tloginWithToken(token) {\n\t\tAuth._token = token;\n\n\t\tlog.info(`Logging in with token: ${token}`);\n\n\t\tconst tokenModel = new TokenModel({ key: token });\n\n\t\treturn tokenModel\n\t\t\t.fetch()\n\t\t\t.then(() => {\n\t\t\t\treturn tokenModel.user.fetch();\n\t\t\t})\n\t\t\t.then(() => {\n\t\t\t\tAuth._user = tokenModel.user;\n\t\t\t\tAuth._loggedIn = true;\n\t\t\t});\n\t},\n\n\t/**\n\t * @memberof auth.Auth\n\t * @static\n\t * @return {void}\n\t */\n\tclear() {\n\t\tAuth._token = null;\n\t\tAuth._user = null;\n\t\tAuth._loggedIn = false;\n\t},\n\n\t/**\n\t * @memberof auth.Auth\n\t * @static\n\t * @type {Boolean}\n\t */\n\tget loggedIn() {\n\t\treturn Auth._loggedIn;\n\t},\n\n\t/**\n\t * @memberof auth.Auth\n\t * @static\n\t * @type {models.UserModel}\n\t */\n\tget user() {\n\t\treturn Auth._user;\n\t},\n\n\t/**\n\t * @memberof auth.Auth\n\t * @static\n\t * @type {String}\n\t */\n\tget token() {\n\t\treturn Auth._token;\n\t},\n};\n\nBaseModel.Auth = Auth;\n\nexport default Auth;\n\nexport { SuperAgentRequest };\n"],"file":"auth.js"}
1
+ {"version":3,"sources":["../src/auth.js"],"names":["Auth","_token","_user","_loggedIn","headers","headerObj","Accept","Api","version","Authorization","login","username","password","options","tokensURL","getResourceURL","agent","agentVersion","data","agent_version","set","send","then","res","body","token","statusCode","JSON","parse","text","key","e","log","error","loginWithToken","info","tokenModel","TokenModel","fetch","tap","user","clear","loggedIn","BaseModel"],"mappings":"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","sourcesContent":["/**\n * @namespace auth\n */\nimport { Api } from \"./api.js\";\nimport { BaseModel } from \"./models/base.js\";\nimport SuperAgentRequest from \"superagent-bluebird-promise\";\nimport { TokenModel } from \"./models/token.js\";\nimport log from \"./log.js\";\n\n/**\n * Deals with authentication with the api\n * @constructor\n * @alias auth.Auth\n * @example\n * import {Auth} from \"@livepreso/api\";\n */\nexport const Auth = {\n\t_token: null,\n\t_user: null,\n\t_loggedIn: false,\n\n\tget headers() {\n\t\tconst headerObj = {\n\t\t\tAccept: `application/vnd.salespreso+json; version=${Api.version}`,\n\t\t};\n\n\t\tif (this._token) {\n\t\t\theaderObj.Authorization = `Token ${this._token}`;\n\t\t}\n\n\t\treturn headerObj;\n\t},\n\n\t/**\n\t * Basic login using a login and password.\n\t * @memberof auth.Auth\n\t * @static\n\t * @param {string} username\n\t * @param {string} password\n\t * @param {object} options\n\t * @return {Promise}\n\t */\n\tlogin(username, password, options) {\n\t\tconst tokensURL = Api.getResourceURL(\"tokens\");\n\n\t\tconst agent = options?.agent;\n\t\tconst agentVersion = options?.agentVersion;\n\n\t\tconst data = {\n\t\t\tusername,\n\t\t\tpassword,\n\t\t};\n\n\t\tif (agent) {\n\t\t\tdata.agent = agent;\n\t\t}\n\n\t\tif (agentVersion) {\n\t\t\tdata.agent_version = agentVersion;\n\t\t}\n\n\t\treturn SuperAgentRequest(\"POST\", tokensURL)\n\t\t\t.set({\n\t\t\t\tAccept: Auth.headers.Accept,\n\t\t\t})\n\t\t\t.send(data)\n\t\t\t.then((res) => {\n\t\t\t\tlet body = {};\n\t\t\t\tlet token = \"\";\n\t\t\t\tif (res.statusCode === 200) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tbody = JSON.parse(res.text);\n\t\t\t\t\t\ttoken = body.key;\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tlog.error(\"Error parsing JSON\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn Auth.loginWithToken(token).then(() => {\n\t\t\t\t\treturn body;\n\t\t\t\t});\n\t\t\t});\n\t},\n\n\t/**\n\t * Login using a token\n\t * @memberof auth.Auth\n\t * @static\n\t * @param {string} token\n\t * @return {Promise}\n\t */\n\tloginWithToken(token) {\n\t\tAuth._token = token;\n\n\t\tlog.info(`Logging in with token: ${token}`);\n\n\t\tconst tokenModel = new TokenModel({ key: token });\n\n\t\treturn tokenModel\n\t\t\t.fetch()\n\t\t\t.tap(() => {\n\t\t\t\treturn tokenModel.user.fetch();\n\t\t\t})\n\t\t\t.tap(() => {\n\t\t\t\tAuth._user = tokenModel.user;\n\t\t\t\tAuth._loggedIn = true;\n\t\t\t});\n\t},\n\n\t/**\n\t * @memberof auth.Auth\n\t * @static\n\t * @return {void}\n\t */\n\tclear() {\n\t\tAuth._token = null;\n\t\tAuth._user = null;\n\t\tAuth._loggedIn = false;\n\t},\n\n\t/**\n\t * @memberof auth.Auth\n\t * @static\n\t * @type {Boolean}\n\t */\n\tget loggedIn() {\n\t\treturn Auth._loggedIn;\n\t},\n\n\t/**\n\t * @memberof auth.Auth\n\t * @static\n\t * @type {models.UserModel}\n\t */\n\tget user() {\n\t\treturn Auth._user;\n\t},\n\n\t/**\n\t * @memberof auth.Auth\n\t * @static\n\t * @type {String}\n\t */\n\tget token() {\n\t\treturn Auth._token;\n\t},\n};\n\nBaseModel.Auth = Auth;\n\nexport default Auth;\n\nexport { SuperAgentRequest };\n"],"file":"auth.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/activity.js"],"names":["ActivityCollection","BaseCollection","extend","model","constructor","data","options","registerStates","type","Error","modelName","prototype","apply","arguments","_fetchUpToCreated","fromActivityDate","page","activities","activity_date__lt","fetch","catch","e","status","then","lastActivity","last","tooManyAttempts","noPages","length","_options","per_page","models","slice","reverse","activity","ser","indexOf","groups","_","groupBy","appointment","url","hasAllActivities","Object","keys","reduce","resp","group","find","collection","fetchUpToCreated","_url","id"],"mappings":"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","sourcesContent":["import \"../models/activity-item.js\";\n\nimport { BaseCollection } from \"../collections/base.js\";\nimport _ from \"lodash\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.ActivityCollection\n * @extends collections.BaseCollection\n * @see models.ActivityModel\n */\nexport const ActivityCollection = BaseCollection.extend(\n\t/** @lends collections.ActivityCollection# */ {\n\t\tmodel: \"ActivityItemModel\",\n\n\t\tconstructor(data, options = {}) {\n\t\t\tthis.registerStates();\n\n\t\t\tif (!options || !options.type) {\n\t\t\t\tthrow new Error(\"No type specified for activity collection fetch\");\n\t\t\t}\n\n\t\t\tthis.model = this.model.extend({\n\t\t\t\tmodelName: `${options.type}-activities`,\n\t\t\t});\n\n\t\t\tBaseCollection.prototype.constructor.apply(this, arguments);\n\t\t},\n\n\t\t_fetchUpToCreated(\n\t\t\toptions = {},\n\t\t\tfromActivityDate = null,\n\t\t\tpage = 1,\n\t\t\tactivities = []\n\t\t) {\n\t\t\tconst data = { page };\n\t\t\tif (fromActivityDate) {\n\t\t\t\tdata.activity_date__lt = fromActivityDate;\n\t\t\t}\n\n\t\t\treturn this.fetch({ ...options, data: { ...options.data, ...data } })\n\t\t\t\t.catch((e) => {\n\t\t\t\t\t// If we did end up getting a page that doesn't exist, just return models\n\t\t\t\t\t// up to this point.\n\t\t\t\t\tif (e.status === 404) {\n\t\t\t\t\t\treturn activities;\n\t\t\t\t\t}\n\t\t\t\t\tthrow e;\n\t\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\tconst lastActivity = this.last();\n\t\t\t\t\tconst tooManyAttempts = page > 3;\n\t\t\t\t\tconst noPages = this.length < this._options.data.per_page;\n\n\t\t\t\t\tif (!lastActivity || tooManyAttempts || noPages) {\n\t\t\t\t\t\treturn [...activities, ...this.models];\n\t\t\t\t\t}\n\n\t\t\t\t\tif (page !== 1) {\n\t\t\t\t\t\tfor (const model of this.models.slice().reverse()) {\n\t\t\t\t\t\t\tif (model.activity === \"create\") {\n\t\t\t\t\t\t\t\tconst ser = this.models.slice(0, this.indexOf(model));\n\t\t\t\t\t\t\t\tconst groups = _.groupBy(ser, (model) => model.appointment.url);\n\t\t\t\t\t\t\t\tconst hasAllActivities = Object.keys(groups).reduce(\n\t\t\t\t\t\t\t\t\t(resp, url) => {\n\t\t\t\t\t\t\t\t\t\tconst group = groups[url];\n\t\t\t\t\t\t\t\t\t\tif (!_.find(group, { activity: \"create\" })) {\n\t\t\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\treturn resp;\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\tif (!hasAllActivities) {\n\t\t\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\treturn [...activities, ...ser];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tconst collection = new ActivityCollection({}, this._options);\n\t\t\t\t\treturn collection._fetchUpToCreated(\n\t\t\t\t\t\toptions,\n\t\t\t\t\t\tfromActivityDate,\n\t\t\t\t\t\tpage + 1,\n\t\t\t\t\t\t[...activities, ...this.models]\n\t\t\t\t\t);\n\t\t\t\t});\n\t\t},\n\n\t\t/**\n\t\t * Fetch pages until we have activity for an appointment all the way down\n\t\t * to a create activity.\n\t\t */\n\t\tfetchUpToCreated(options = {}, fromActivityDate = null) {\n\t\t\treturn this._fetchUpToCreated(options, fromActivityDate);\n\t\t},\n\n\t\tfetch(options = {}) {\n\t\t\tif (!this._url && !options.url) {\n\t\t\t\tif (!options || !options.id) {\n\t\t\t\t\tthrow new Error(\"No id specified for activity collection fetch\");\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis._options = _.extend({}, this._options, options);\n\n\t\t\treturn BaseCollection.prototype.fetch.apply(this, arguments);\n\t\t},\n\t}\n);\n\nregister(\"ActivityCollection\", ActivityCollection);\n"],"file":"activity.js"}
1
+ {"version":3,"sources":["../../src/collections/activity.js"],"names":["ActivityCollection","BaseCollection","extend","model","constructor","data","options","registerStates","type","Error","modelName","prototype","apply","arguments","_fetchUpToCreated","fromActivityDate","page","activities","activity_date__lt","fetch","catch","e","status","then","lastActivity","last","tooManyAttempts","noPages","length","_options","per_page","models","slice","reverse","activity","ser","indexOf","groups","_","groupBy","appointment","url","hasAllActivities","Object","keys","reduce","resp","group","find","collection","fetchUpToCreated","_url","id"],"mappings":"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","sourcesContent":["import \"../models/activity-item.js\";\n\nimport { BaseCollection } from \"../collections/base.js\";\nimport _ from \"lodash\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.ActivityCollection\n * @extends collections.BaseCollection\n * @see models.ActivityModel\n */\nexport const ActivityCollection = BaseCollection.extend(\n\t/** @lends collections.ActivityCollection# */ {\n\t\tmodel: \"ActivityItemModel\",\n\n\t\tconstructor(data, options = {}) {\n\t\t\tthis.registerStates();\n\n\t\t\tif (!options || !options.type) {\n\t\t\t\tthrow new Error(\"No type specified for activity collection fetch\");\n\t\t\t}\n\n\t\t\tthis.model = this.model.extend({\n\t\t\t\tmodelName: `${options.type}-activities`,\n\t\t\t});\n\n\t\t\tBaseCollection.prototype.constructor.apply(this, arguments);\n\t\t},\n\n\t\t_fetchUpToCreated(\n\t\t\toptions = {},\n\t\t\tfromActivityDate = null,\n\t\t\tpage = 1,\n\t\t\tactivities = [],\n\t\t) {\n\t\t\tconst data = { page };\n\t\t\tif (fromActivityDate) {\n\t\t\t\tdata.activity_date__lt = fromActivityDate;\n\t\t\t}\n\n\t\t\treturn this.fetch({ ...options, data: { ...options.data, ...data } })\n\t\t\t\t.catch((e) => {\n\t\t\t\t\t// If we did end up getting a page that doesn't exist, just return models\n\t\t\t\t\t// up to this point.\n\t\t\t\t\tif (e.status === 404) {\n\t\t\t\t\t\treturn activities;\n\t\t\t\t\t}\n\t\t\t\t\tthrow e;\n\t\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\tconst lastActivity = this.last();\n\t\t\t\t\tconst tooManyAttempts = page > 3;\n\t\t\t\t\tconst noPages = this.length < this._options.data.per_page;\n\n\t\t\t\t\tif (!lastActivity || tooManyAttempts || noPages) {\n\t\t\t\t\t\treturn [...activities, ...this.models];\n\t\t\t\t\t}\n\n\t\t\t\t\tif (page !== 1) {\n\t\t\t\t\t\tfor (const model of this.models.slice().reverse()) {\n\t\t\t\t\t\t\tif (model.activity === \"create\") {\n\t\t\t\t\t\t\t\tconst ser = this.models.slice(0, this.indexOf(model));\n\t\t\t\t\t\t\t\tconst groups = _.groupBy(ser, (model) => model.appointment.url);\n\t\t\t\t\t\t\t\tconst hasAllActivities = Object.keys(groups).reduce(\n\t\t\t\t\t\t\t\t\t(resp, url) => {\n\t\t\t\t\t\t\t\t\t\tconst group = groups[url];\n\t\t\t\t\t\t\t\t\t\tif (!_.find(group, { activity: \"create\" })) {\n\t\t\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\treturn resp;\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\ttrue,\n\t\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\t\tif (!hasAllActivities) {\n\t\t\t\t\t\t\t\t\tcontinue;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\treturn [...activities, ...ser];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tconst collection = new ActivityCollection({}, this._options);\n\t\t\t\t\treturn collection._fetchUpToCreated(\n\t\t\t\t\t\toptions,\n\t\t\t\t\t\tfromActivityDate,\n\t\t\t\t\t\tpage + 1,\n\t\t\t\t\t\t[...activities, ...this.models],\n\t\t\t\t\t);\n\t\t\t\t});\n\t\t},\n\n\t\t/**\n\t\t * Fetch pages until we have activity for an appointment all the way down\n\t\t * to a create activity.\n\t\t */\n\t\tfetchUpToCreated(options = {}, fromActivityDate = null) {\n\t\t\treturn this._fetchUpToCreated(options, fromActivityDate);\n\t\t},\n\n\t\tfetch(options = {}) {\n\t\t\tif (!this._url && !options.url) {\n\t\t\t\tif (!options || !options.id) {\n\t\t\t\t\tthrow new Error(\"No id specified for activity collection fetch\");\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis._options = _.extend({}, this._options, options);\n\n\t\t\treturn BaseCollection.prototype.fetch.apply(this, arguments);\n\t\t},\n\t},\n);\n\nregister(\"ActivityCollection\", ActivityCollection);\n"],"file":"activity.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/adjunct-sections.js"],"names":["AdjunctSectionCollection","BaseCollection","extend","comparator","model","fetchByAppointmentID","id","fetch","data","appointment"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,wBAAwB,GAAGC,qBAAeC,MAAf;AACvC;AAAoD;AACnDC,EAAAA,UAAU,EAAE,UADuC;AAEnDC,EAAAA,KAAK,EAAE,qBAF4C;;AAInD;AACF;AACA;AACA;AACA;AACEC,EAAAA,oBATmD,gCAS9BC,EAT8B,EAS1B;AACxB,WAAO,KAAKC,KAAL,CAAW;AACjBC,MAAAA,IAAI,EAAE;AACLC,QAAAA,WAAW,EAAEH;AADR;AADW,KAAX,CAAP;AAKA;AAfkD,CADb,CAAjC;;;AAoBP,6BAAS,0BAAT,EAAqCN,wBAArC","sourcesContent":["import \"../models/adjunct-section.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AdjunctSectionCollection\n * @extends collections.BaseCollection\n * @see models.AdjunctSectionModel\n */\nexport const AdjunctSectionCollection = BaseCollection.extend(\n\t/** @lends collections.AdjunctSectionCollection# */ {\n\t\tcomparator: \"sequence\",\n\t\tmodel: \"AdjunctSectionModel\",\n\n\t\t/**\n\t\t * Fetch a collection of adjunct sections related to an appointment\n\t\t * @param {Integer} id - The id of the appointment\n\t\t * @return {Promise} - A collection of AdjunctSection models\n\t\t */\n\t\tfetchByAppointmentID(id) {\n\t\t\treturn this.fetch({\n\t\t\t\tdata: {\n\t\t\t\t\tappointment: id,\n\t\t\t\t},\n\t\t\t});\n\t\t},\n\t}\n);\n\nregister(\"AdjunctSectionCollection\", AdjunctSectionCollection);\n"],"file":"adjunct-sections.js"}
1
+ {"version":3,"sources":["../../src/collections/adjunct-sections.js"],"names":["AdjunctSectionCollection","BaseCollection","extend","comparator","model","fetchByAppointmentID","id","fetch","data","appointment"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,wBAAwB,GAAGC,qBAAeC,MAAf;AACvC;AAAoD;AACnDC,EAAAA,UAAU,EAAE,UADuC;AAEnDC,EAAAA,KAAK,EAAE,qBAF4C;;AAInD;AACF;AACA;AACA;AACA;AACEC,EAAAA,oBATmD,gCAS9BC,EAT8B,EAS1B;AACxB,WAAO,KAAKC,KAAL,CAAW;AACjBC,MAAAA,IAAI,EAAE;AACLC,QAAAA,WAAW,EAAEH;AADR;AADW,KAAX,CAAP;AAKA;AAfkD,CADb,CAAjC;;;AAoBP,6BAAS,0BAAT,EAAqCN,wBAArC","sourcesContent":["import \"../models/adjunct-section.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AdjunctSectionCollection\n * @extends collections.BaseCollection\n * @see models.AdjunctSectionModel\n */\nexport const AdjunctSectionCollection = BaseCollection.extend(\n\t/** @lends collections.AdjunctSectionCollection# */ {\n\t\tcomparator: \"sequence\",\n\t\tmodel: \"AdjunctSectionModel\",\n\n\t\t/**\n\t\t * Fetch a collection of adjunct sections related to an appointment\n\t\t * @param {Integer} id - The id of the appointment\n\t\t * @return {Promise} - A collection of AdjunctSection models\n\t\t */\n\t\tfetchByAppointmentID(id) {\n\t\t\treturn this.fetch({\n\t\t\t\tdata: {\n\t\t\t\t\tappointment: id,\n\t\t\t\t},\n\t\t\t});\n\t\t},\n\t},\n);\n\nregister(\"AdjunctSectionCollection\", AdjunctSectionCollection);\n"],"file":"adjunct-sections.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/adjunct-slides.js"],"names":["AdjunctSlideCollection","BaseCollection","extend","comparator","model","fetchByAppointmentID","id","fetch","data","appointment"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,sBAAsB,GAAGC,qBAAeC,MAAf;AACrC;AAAkD;AACjDC,EAAAA,UAAU,EAAE,UADqC;AAEjDC,EAAAA,KAAK,EAAE,mBAF0C;;AAIjD;AACF;AACA;AACA;AACA;AACEC,EAAAA,oBATiD,gCAS5BC,EAT4B,EASxB;AACxB,WAAO,KAAKC,KAAL,CAAW;AACjBC,MAAAA,IAAI,EAAE;AACLC,QAAAA,WAAW,EAAEH;AADR;AADW,KAAX,CAAP;AAKA;AAfgD,CADb,CAA/B;;;AAoBP,6BAAS,wBAAT,EAAmCN,sBAAnC","sourcesContent":["import \"../models/adjunct-slide.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AdjunctSlideCollection\n * @extends collections.BaseCollection\n * @see models.AdjunctSlideModel\n */\nexport const AdjunctSlideCollection = BaseCollection.extend(\n\t/** @lends collections.AdjunctSlideCollection# */ {\n\t\tcomparator: \"sequence\",\n\t\tmodel: \"AdjunctSlideModel\",\n\n\t\t/**\n\t\t * Fetch a collection of adjunct slides related to an appointment\n\t\t * @param {Integer} id - The id of the appointment\n\t\t * @return {Promise} - A collection of AdjunctSlide models\n\t\t */\n\t\tfetchByAppointmentID(id) {\n\t\t\treturn this.fetch({\n\t\t\t\tdata: {\n\t\t\t\t\tappointment: id,\n\t\t\t\t},\n\t\t\t});\n\t\t},\n\t}\n);\n\nregister(\"AdjunctSlideCollection\", AdjunctSlideCollection);\n"],"file":"adjunct-slides.js"}
1
+ {"version":3,"sources":["../../src/collections/adjunct-slides.js"],"names":["AdjunctSlideCollection","BaseCollection","extend","comparator","model","fetchByAppointmentID","id","fetch","data","appointment"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,sBAAsB,GAAGC,qBAAeC,MAAf;AACrC;AAAkD;AACjDC,EAAAA,UAAU,EAAE,UADqC;AAEjDC,EAAAA,KAAK,EAAE,mBAF0C;;AAIjD;AACF;AACA;AACA;AACA;AACEC,EAAAA,oBATiD,gCAS5BC,EAT4B,EASxB;AACxB,WAAO,KAAKC,KAAL,CAAW;AACjBC,MAAAA,IAAI,EAAE;AACLC,QAAAA,WAAW,EAAEH;AADR;AADW,KAAX,CAAP;AAKA;AAfgD,CADb,CAA/B;;;AAoBP,6BAAS,wBAAT,EAAmCN,sBAAnC","sourcesContent":["import \"../models/adjunct-slide.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AdjunctSlideCollection\n * @extends collections.BaseCollection\n * @see models.AdjunctSlideModel\n */\nexport const AdjunctSlideCollection = BaseCollection.extend(\n\t/** @lends collections.AdjunctSlideCollection# */ {\n\t\tcomparator: \"sequence\",\n\t\tmodel: \"AdjunctSlideModel\",\n\n\t\t/**\n\t\t * Fetch a collection of adjunct slides related to an appointment\n\t\t * @param {Integer} id - The id of the appointment\n\t\t * @return {Promise} - A collection of AdjunctSlide models\n\t\t */\n\t\tfetchByAppointmentID(id) {\n\t\t\treturn this.fetch({\n\t\t\t\tdata: {\n\t\t\t\t\tappointment: id,\n\t\t\t\t},\n\t\t\t});\n\t\t},\n\t},\n);\n\nregister(\"AdjunctSlideCollection\", AdjunctSlideCollection);\n"],"file":"adjunct-slides.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/adjunct-sub-slides.js"],"names":["AdjunctSubSlideCollection","BaseCollection","extend","comparator","model"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,yBAAyB,GAAGC,qBAAeC,MAAf;AACxC;AAAqD;AACpDC,EAAAA,UAAU,EAAE,UADwC;AAEpDC,EAAAA,KAAK,EAAE;AAF6C,CADb,CAAlC;;;AAOP,6BAAS,2BAAT,EAAsCJ,yBAAtC","sourcesContent":["import \"../models/adjunct-sub-slide.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AdjunctSubSlideCollection\n * @extends collections.BaseCollection\n * @see models.AdjunctSubSlideModel\n */\nexport const AdjunctSubSlideCollection = BaseCollection.extend(\n\t/** @lends collections.AdjunctSubSlideCollection# */ {\n\t\tcomparator: \"sequence\",\n\t\tmodel: \"AdjunctSubSlideModel\",\n\t}\n);\n\nregister(\"AdjunctSubSlideCollection\", AdjunctSubSlideCollection);\n"],"file":"adjunct-sub-slides.js"}
1
+ {"version":3,"sources":["../../src/collections/adjunct-sub-slides.js"],"names":["AdjunctSubSlideCollection","BaseCollection","extend","comparator","model"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,yBAAyB,GAAGC,qBAAeC,MAAf;AACxC;AAAqD;AACpDC,EAAAA,UAAU,EAAE,UADwC;AAEpDC,EAAAA,KAAK,EAAE;AAF6C,CADb,CAAlC;;;AAOP,6BAAS,2BAAT,EAAsCJ,yBAAtC","sourcesContent":["import \"../models/adjunct-sub-slide.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AdjunctSubSlideCollection\n * @extends collections.BaseCollection\n * @see models.AdjunctSubSlideModel\n */\nexport const AdjunctSubSlideCollection = BaseCollection.extend(\n\t/** @lends collections.AdjunctSubSlideCollection# */ {\n\t\tcomparator: \"sequence\",\n\t\tmodel: \"AdjunctSubSlideModel\",\n\t},\n);\n\nregister(\"AdjunctSubSlideCollection\", AdjunctSubSlideCollection);\n"],"file":"adjunct-sub-slides.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/appointment-adjunct-tags.js"],"names":["AppointmentAdjunctTagsCollection","BaseCollection","extend","model"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,gCAAgC,GAAGC,qBAAeC,MAAf;AAC/C;AAA4D;AAC3DC,EAAAA,KAAK,EAAE;AADoD,CADb,CAAzC;;;AAMP,6BAAS,kCAAT,EAA6CH,gCAA7C","sourcesContent":["import \"../models/appointment-adjunct-tags.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AppointmentAdjunctTagsCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentAdjunctTagsModel\n */\nexport const AppointmentAdjunctTagsCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentAdjunctTagsCollection# */ {\n\t\tmodel: \"AppointmentAdjunctTagsModel\",\n\t}\n);\n\nregister(\"AppointmentAdjunctTagsCollection\", AppointmentAdjunctTagsCollection);\n"],"file":"appointment-adjunct-tags.js"}
1
+ {"version":3,"sources":["../../src/collections/appointment-adjunct-tags.js"],"names":["AppointmentAdjunctTagsCollection","BaseCollection","extend","model"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,gCAAgC,GAAGC,qBAAeC,MAAf;AAC/C;AAA4D;AAC3DC,EAAAA,KAAK,EAAE;AADoD,CADb,CAAzC;;;AAMP,6BAAS,kCAAT,EAA6CH,gCAA7C","sourcesContent":["import \"../models/appointment-adjunct-tags.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AppointmentAdjunctTagsCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentAdjunctTagsModel\n */\nexport const AppointmentAdjunctTagsCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentAdjunctTagsCollection# */ {\n\t\tmodel: \"AppointmentAdjunctTagsModel\",\n\t},\n);\n\nregister(\"AppointmentAdjunctTagsCollection\", AppointmentAdjunctTagsCollection);\n"],"file":"appointment-adjunct-tags.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/appointment-deckversion-tags.js"],"names":["AppointmentDeckVersionTagsCollection","BaseCollection","extend","model"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,oCAAoC,GAAGC,qBAAeC,MAAf;AACnD;AAAgE;AAC/DC,EAAAA,KAAK,EAAE;AADwD,CADb,CAA7C;;;AAMP,6BACC,sCADD,EAECH,oCAFD","sourcesContent":["import \"../models/appointment-deckversion-tags.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AppointmentDeckVersionTagsCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentDeckVersionTagsModel\n */\nexport const AppointmentDeckVersionTagsCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentDeckVersionTagsCollection# */ {\n\t\tmodel: \"AppointmentDeckVersionTagsModel\",\n\t}\n);\n\nregister(\n\t\"AppointmentDeckVersionTagsCollection\",\n\tAppointmentDeckVersionTagsCollection\n);\n"],"file":"appointment-deckversion-tags.js"}
1
+ {"version":3,"sources":["../../src/collections/appointment-deckversion-tags.js"],"names":["AppointmentDeckVersionTagsCollection","BaseCollection","extend","model"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,oCAAoC,GAAGC,qBAAeC,MAAf;AACnD;AAAgE;AAC/DC,EAAAA,KAAK,EAAE;AADwD,CADb,CAA7C;;;AAMP,6BACC,sCADD,EAECH,oCAFD","sourcesContent":["import \"../models/appointment-deckversion-tags.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AppointmentDeckVersionTagsCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentDeckVersionTagsModel\n */\nexport const AppointmentDeckVersionTagsCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentDeckVersionTagsCollection# */ {\n\t\tmodel: \"AppointmentDeckVersionTagsModel\",\n\t},\n);\n\nregister(\n\t\"AppointmentDeckVersionTagsCollection\",\n\tAppointmentDeckVersionTagsCollection,\n);\n"],"file":"appointment-deckversion-tags.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/appointment-editors.js"],"names":["AppointmentEditorCollection","BaseCollection","extend","comparator","model","url","_url","parent","_options","appointment","prototype","call"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,2BAA2B,GAAGC,qBAAeC,MAAf;AAC1C;AAAuD;AACtDC,EAAAA,UAAU,EAAE,UAD0C;AAEtDC,EAAAA,KAAK,EAAE,wBAF+C;AAGtDC,EAAAA,GAHsD,iBAGhD;AACL,QAAI,CAAC,KAAKC,IAAN,IAAc,KAAKC,MAAvB,EAA+B;AAC9B,WAAKC,QAAL,CAAcC,WAAd,GAA4B,KAAKF,MAAjC;AACA;;AAED,WAAON,qBAAeS,SAAf,CAAyBL,GAAzB,CAA6BM,IAA7B,CAAkC,IAAlC,CAAP;AACA;AATqD,CADb,CAApC;;;AAcP,6BAAS,6BAAT,EAAwCX,2BAAxC","sourcesContent":["import \"../models/appointment-editor.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AppointmentEditorCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentEditorModel\n */\nexport const AppointmentEditorCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentEditorCollection# */ {\n\t\tcomparator: \"sequence\",\n\t\tmodel: \"AppointmentEditorModel\",\n\t\turl() {\n\t\t\tif (!this._url && this.parent) {\n\t\t\t\tthis._options.appointment = this.parent;\n\t\t\t}\n\n\t\t\treturn BaseCollection.prototype.url.call(this);\n\t\t},\n\t}\n);\n\nregister(\"AppointmentEditorCollection\", AppointmentEditorCollection);\n"],"file":"appointment-editors.js"}
1
+ {"version":3,"sources":["../../src/collections/appointment-editors.js"],"names":["AppointmentEditorCollection","BaseCollection","extend","comparator","model","url","_url","parent","_options","appointment","prototype","call"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,2BAA2B,GAAGC,qBAAeC,MAAf;AAC1C;AAAuD;AACtDC,EAAAA,UAAU,EAAE,UAD0C;AAEtDC,EAAAA,KAAK,EAAE,wBAF+C;AAGtDC,EAAAA,GAHsD,iBAGhD;AACL,QAAI,CAAC,KAAKC,IAAN,IAAc,KAAKC,MAAvB,EAA+B;AAC9B,WAAKC,QAAL,CAAcC,WAAd,GAA4B,KAAKF,MAAjC;AACA;;AAED,WAAON,qBAAeS,SAAf,CAAyBL,GAAzB,CAA6BM,IAA7B,CAAkC,IAAlC,CAAP;AACA;AATqD,CADb,CAApC;;;AAcP,6BAAS,6BAAT,EAAwCX,2BAAxC","sourcesContent":["import \"../models/appointment-editor.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AppointmentEditorCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentEditorModel\n */\nexport const AppointmentEditorCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentEditorCollection# */ {\n\t\tcomparator: \"sequence\",\n\t\tmodel: \"AppointmentEditorModel\",\n\t\turl() {\n\t\t\tif (!this._url && this.parent) {\n\t\t\t\tthis._options.appointment = this.parent;\n\t\t\t}\n\n\t\t\treturn BaseCollection.prototype.url.call(this);\n\t\t},\n\t},\n);\n\nregister(\"AppointmentEditorCollection\", AppointmentEditorCollection);\n"],"file":"appointment-editors.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/appointment-section-tags.js"],"names":["AppointmentSectionTagsCollection","BaseCollection","extend","model"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,gCAAgC,GAAGC,qBAAeC,MAAf;AAC/C;AAA4D;AAC3DC,EAAAA,KAAK,EAAE;AADoD,CADb,CAAzC;;;AAMP,6BAAS,kCAAT,EAA6CH,gCAA7C","sourcesContent":["import \"../models/appointment-section-tags.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AppointmentSectionTagsCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentSectionTagsModel\n */\nexport const AppointmentSectionTagsCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentSectionTagsCollection# */ {\n\t\tmodel: \"AppointmentSectionTagsModel\",\n\t}\n);\n\nregister(\"AppointmentSectionTagsCollection\", AppointmentSectionTagsCollection);\n"],"file":"appointment-section-tags.js"}
1
+ {"version":3,"sources":["../../src/collections/appointment-section-tags.js"],"names":["AppointmentSectionTagsCollection","BaseCollection","extend","model"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,gCAAgC,GAAGC,qBAAeC,MAAf;AAC/C;AAA4D;AAC3DC,EAAAA,KAAK,EAAE;AADoD,CADb,CAAzC;;;AAMP,6BAAS,kCAAT,EAA6CH,gCAA7C","sourcesContent":["import \"../models/appointment-section-tags.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AppointmentSectionTagsCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentSectionTagsModel\n */\nexport const AppointmentSectionTagsCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentSectionTagsCollection# */ {\n\t\tmodel: \"AppointmentSectionTagsModel\",\n\t},\n);\n\nregister(\"AppointmentSectionTagsCollection\", AppointmentSectionTagsCollection);\n"],"file":"appointment-section-tags.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/appointment-slide-tags.js"],"names":["AppointmentSlideTagsCollection","BaseCollection","extend","model"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,8BAA8B,GAAGC,qBAAeC,MAAf;AAC7C;AAA0D;AACzDC,EAAAA,KAAK,EAAE;AADkD,CADb,CAAvC;;;AAMP,6BAAS,gCAAT,EAA2CH,8BAA3C","sourcesContent":["import \"../models/appointment-slide-tags.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AppointmentSlideTagsCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentSlideTagsModel\n */\nexport const AppointmentSlideTagsCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentSlideTagsCollection# */ {\n\t\tmodel: \"AppointmentSlideTagsModel\",\n\t}\n);\n\nregister(\"AppointmentSlideTagsCollection\", AppointmentSlideTagsCollection);\n"],"file":"appointment-slide-tags.js"}
1
+ {"version":3,"sources":["../../src/collections/appointment-slide-tags.js"],"names":["AppointmentSlideTagsCollection","BaseCollection","extend","model"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,8BAA8B,GAAGC,qBAAeC,MAAf;AAC7C;AAA0D;AACzDC,EAAAA,KAAK,EAAE;AADkD,CADb,CAAvC;;;AAMP,6BAAS,gCAAT,EAA2CH,8BAA3C","sourcesContent":["import \"../models/appointment-slide-tags.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AppointmentSlideTagsCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentSlideTagsModel\n */\nexport const AppointmentSlideTagsCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentSlideTagsCollection# */ {\n\t\tmodel: \"AppointmentSlideTagsModel\",\n\t},\n);\n\nregister(\"AppointmentSlideTagsCollection\", AppointmentSlideTagsCollection);\n"],"file":"appointment-slide-tags.js"}
@@ -159,17 +159,19 @@ var AppointmentTagsCollection = _base.BaseCollection.extend(
159
159
  case 5:
160
160
  tagModels = Object.values(_this2.tagNameCollectionMapping); // Fetch all the separate tag models and combine them into a single collection
161
161
 
162
- _context5.next = 8;
162
+ _context5.t0 = _lodash.default;
163
+ _context5.next = 9;
163
164
  return Promise.all(tagModels.map(function (tagModel) {
164
165
  var Collection = (0, _stateRegister.getState)(tagModel);
165
166
  var tags = new Collection({}, _this2._options);
166
167
  return tags.fetch(options);
167
168
  }));
168
169
 
169
- case 8:
170
- results = _context5.sent.flatMap(function (collection) {
170
+ case 9:
171
+ _context5.t1 = _context5.sent.flatMap(function (collection) {
171
172
  return collection.results;
172
- }).map(_this2._mapResultsToModel.bind(_this2));
173
+ });
174
+ results = _context5.t0.compact.call(_context5.t0, _context5.t1).map(_this2._mapResultsToModel.bind(_this2));
173
175
 
174
176
  _this2.add(results);
175
177
 
@@ -180,7 +182,7 @@ var AppointmentTagsCollection = _base.BaseCollection.extend(
180
182
  results: _this2.toJSON()
181
183
  });
182
184
 
183
- case 11:
185
+ case 13:
184
186
  case "end":
185
187
  return _context5.stop();
186
188
  }
@@ -193,10 +195,10 @@ var AppointmentTagsCollection = _base.BaseCollection.extend(
193
195
  addFromAppointment: function addFromAppointment(appointment) {
194
196
  var tagCollectionNames = ["appointmentdeckversiontags_set", "appointmentsectiontags_set", "appointmentslidetags_set", "appointmentadjuncttags_set"]; // flatMap currently doesn't work in TelePresenter
195
197
 
196
- var results = _lodash.default.flatten(tagCollectionNames.map(function (collectionName) {
198
+ var results = _lodash.default.compact(_lodash.default.flatten(tagCollectionNames.map(function (collectionName) {
197
199
  var collection = appointment[collectionName];
198
200
  return (collection === null || collection === void 0 ? void 0 : collection._data) || [];
199
- })).map(this._mapResultsToModel.bind(this));
201
+ }))).map(this._mapResultsToModel.bind(this));
200
202
 
201
203
  this.add(results);
202
204
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/appointment-tags.js"],"names":["AppointmentTagsCollection","BaseCollection","extend","model","tagNameCollectionMapping","deckversion","section","slide","adjunct","_mapResultsToModel","result","AppointmentTagsModel","resultType","Object","keys","find","key","includes","Error","tags","content_type","content_url","appointment","user","url","fetchSet","fetchModels","delete","save","fetch","options","AppointmentModel","hasAppointment","_options","parent","tagModels","values","Promise","all","map","tagModel","Collection","results","flatMap","collection","bind","add","count","length","next","previous","toJSON","addFromAppointment","tagCollectionNames","_","flatten","collectionName","_data","canBeEmpty"],"mappings":"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","sourcesContent":["import { getState, register } from \"../state-register.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport _ from \"lodash\";\n\n/**\n * @constructor\n * @alias collections.AppointmentTagsCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentTagsModel\n */\nexport const AppointmentTagsCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentTagsCollection# */ {\n\t\tmodel: \"AppointmentTagsModel\",\n\n\t\ttagNameCollectionMapping: {\n\t\t\tdeckversion: \"AppointmentDeckVersionTagsCollection\",\n\t\t\tsection: \"AppointmentSectionTagsCollection\",\n\t\t\tslide: \"AppointmentSlideTagsCollection\",\n\t\t\tadjunct: \"AppointmentAdjunctTagsCollection\",\n\t\t},\n\n\t\t_mapResultsToModel(result) {\n\t\t\t// Maps a model from a content specific tag to a more generic one.\n\t\t\t// It's generally the same thing, except instead of something like:\n\t\t\t//\n\t\t\t// slide: \"/api/slides/1/\"\n\t\t\t//\n\t\t\t// It becomes:\n\t\t\t//\n\t\t\t// content_type: \"slide\",\n\t\t\t// content_url: \"/api/slides/1/\"\n\t\t\t//\n\t\t\t// So that we can return the list side by side.\n\t\t\tconst AppointmentTagsModel = getState(\"AppointmentTagsModel\");\n\t\t\tconst resultType = Object.keys(result).find((key) => {\n\t\t\t\treturn Object.keys(this.tagNameCollectionMapping).includes(key);\n\t\t\t});\n\t\t\tif (!resultType) {\n\t\t\t\tthrow new Error(\"Unknown type of result found\");\n\t\t\t}\n\t\t\treturn new AppointmentTagsModel({\n\t\t\t\ttags: result.tags,\n\t\t\t\tcontent_type: resultType,\n\t\t\t\tcontent_url: result[resultType],\n\t\t\t\tappointment: result.appointment,\n\t\t\t\tuser: result.user,\n\t\t\t\turl: result.url,\n\t\t\t});\n\t\t},\n\n\t\t// These methods don't quite make sense right now, disable it for development.\n\t\tasync fetchSet() {\n\t\t\tthrow new Error(\"Not implemented\");\n\t\t},\n\n\t\tasync fetchModels() {\n\t\t\tthrow new Error(\"Not implemented\");\n\t\t},\n\n\t\tasync delete() {\n\t\t\tthrow new Error(\"Cannot delete using this collection\");\n\t\t},\n\n\t\tasync save() {\n\t\t\tthrow new Error(\"Not implemented\");\n\t\t},\n\n\t\tasync fetch(options) {\n\t\t\tconst AppointmentModel = getState(\"AppointmentModel\");\n\n\t\t\tlet hasAppointment =\n\t\t\t\tthis._options?.appointment instanceof AppointmentModel ||\n\t\t\t\toptions?.appointment instanceof AppointmentModel;\n\n\t\t\tif (!hasAppointment && this.parent instanceof AppointmentModel) {\n\t\t\t\toptions.appointment = this.parent;\n\t\t\t\thasAppointment = true;\n\t\t\t}\n\n\t\t\tif (!hasAppointment) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t\"Requires an appointment model in collection options to fetch.\"\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst tagModels = Object.values(this.tagNameCollectionMapping);\n\t\t\t// Fetch all the separate tag models and combine them into a single collection\n\t\t\tconst results = (\n\t\t\t\tawait Promise.all(\n\t\t\t\t\ttagModels.map((tagModel) => {\n\t\t\t\t\t\tconst Collection = getState(tagModel);\n\t\t\t\t\t\tconst tags = new Collection({}, this._options);\n\t\t\t\t\t\treturn tags.fetch(options);\n\t\t\t\t\t})\n\t\t\t\t)\n\t\t\t)\n\t\t\t\t.flatMap((collection) => collection.results)\n\t\t\t\t.map(this._mapResultsToModel.bind(this));\n\n\t\t\tthis.add(results);\n\n\t\t\treturn {\n\t\t\t\tcount: results.length,\n\t\t\t\tnext: null,\n\t\t\t\tprevious: null,\n\t\t\t\tresults: this.toJSON(),\n\t\t\t};\n\t\t},\n\n\t\t// Used by Telepresenter to add the tags in the hostedpreso bundle to\n\t\t// the appointment tags collection\n\t\taddFromAppointment(appointment) {\n\t\t\tconst tagCollectionNames = [\n\t\t\t\t\"appointmentdeckversiontags_set\",\n\t\t\t\t\"appointmentsectiontags_set\",\n\t\t\t\t\"appointmentslidetags_set\",\n\t\t\t\t\"appointmentadjuncttags_set\",\n\t\t\t];\n\n\t\t\t// flatMap currently doesn't work in TelePresenter\n\t\t\tconst results = _.flatten(\n\t\t\t\ttagCollectionNames.map((collectionName) => {\n\t\t\t\t\tconst collection = appointment[collectionName];\n\t\t\t\t\treturn collection?._data || [];\n\t\t\t\t})\n\t\t\t).map(this._mapResultsToModel.bind(this));\n\n\t\t\tthis.add(results);\n\t\t},\n\t}\n);\n\nAppointmentTagsCollection.canBeEmpty = true;\n\nregister(\"AppointmentTagsCollection\", AppointmentTagsCollection);\n"],"file":"appointment-tags.js"}
1
+ {"version":3,"sources":["../../src/collections/appointment-tags.js"],"names":["AppointmentTagsCollection","BaseCollection","extend","model","tagNameCollectionMapping","deckversion","section","slide","adjunct","_mapResultsToModel","result","AppointmentTagsModel","resultType","Object","keys","find","key","includes","Error","tags","content_type","content_url","appointment","user","url","fetchSet","fetchModels","delete","save","fetch","options","AppointmentModel","hasAppointment","_options","parent","tagModels","values","_","Promise","all","map","tagModel","Collection","flatMap","collection","results","compact","bind","add","count","length","next","previous","toJSON","addFromAppointment","tagCollectionNames","flatten","collectionName","_data","canBeEmpty"],"mappings":"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","sourcesContent":["import { getState, register } from \"../state-register.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport _ from \"lodash\";\n\n/**\n * @constructor\n * @alias collections.AppointmentTagsCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentTagsModel\n */\nexport const AppointmentTagsCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentTagsCollection# */ {\n\t\tmodel: \"AppointmentTagsModel\",\n\n\t\ttagNameCollectionMapping: {\n\t\t\tdeckversion: \"AppointmentDeckVersionTagsCollection\",\n\t\t\tsection: \"AppointmentSectionTagsCollection\",\n\t\t\tslide: \"AppointmentSlideTagsCollection\",\n\t\t\tadjunct: \"AppointmentAdjunctTagsCollection\",\n\t\t},\n\n\t\t_mapResultsToModel(result) {\n\t\t\t// Maps a model from a content specific tag to a more generic one.\n\t\t\t// It's generally the same thing, except instead of something like:\n\t\t\t//\n\t\t\t// slide: \"/api/slides/1/\"\n\t\t\t//\n\t\t\t// It becomes:\n\t\t\t//\n\t\t\t// content_type: \"slide\",\n\t\t\t// content_url: \"/api/slides/1/\"\n\t\t\t//\n\t\t\t// So that we can return the list side by side.\n\t\t\tconst AppointmentTagsModel = getState(\"AppointmentTagsModel\");\n\t\t\tconst resultType = Object.keys(result).find((key) => {\n\t\t\t\treturn Object.keys(this.tagNameCollectionMapping).includes(key);\n\t\t\t});\n\t\t\tif (!resultType) {\n\t\t\t\tthrow new Error(\"Unknown type of result found\");\n\t\t\t}\n\t\t\treturn new AppointmentTagsModel({\n\t\t\t\ttags: result.tags,\n\t\t\t\tcontent_type: resultType,\n\t\t\t\tcontent_url: result[resultType],\n\t\t\t\tappointment: result.appointment,\n\t\t\t\tuser: result.user,\n\t\t\t\turl: result.url,\n\t\t\t});\n\t\t},\n\n\t\t// These methods don't quite make sense right now, disable it for development.\n\t\tasync fetchSet() {\n\t\t\tthrow new Error(\"Not implemented\");\n\t\t},\n\n\t\tasync fetchModels() {\n\t\t\tthrow new Error(\"Not implemented\");\n\t\t},\n\n\t\tasync delete() {\n\t\t\tthrow new Error(\"Cannot delete using this collection\");\n\t\t},\n\n\t\tasync save() {\n\t\t\tthrow new Error(\"Not implemented\");\n\t\t},\n\n\t\tasync fetch(options) {\n\t\t\tconst AppointmentModel = getState(\"AppointmentModel\");\n\n\t\t\tlet hasAppointment =\n\t\t\t\tthis._options?.appointment instanceof AppointmentModel ||\n\t\t\t\toptions?.appointment instanceof AppointmentModel;\n\n\t\t\tif (!hasAppointment && this.parent instanceof AppointmentModel) {\n\t\t\t\toptions.appointment = this.parent;\n\t\t\t\thasAppointment = true;\n\t\t\t}\n\n\t\t\tif (!hasAppointment) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t\"Requires an appointment model in collection options to fetch.\",\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tconst tagModels = Object.values(this.tagNameCollectionMapping);\n\t\t\t// Fetch all the separate tag models and combine them into a single collection\n\t\t\tconst results = _.compact(\n\t\t\t\t(\n\t\t\t\t\tawait Promise.all(\n\t\t\t\t\t\ttagModels.map((tagModel) => {\n\t\t\t\t\t\t\tconst Collection = getState(tagModel);\n\t\t\t\t\t\t\tconst tags = new Collection({}, this._options);\n\t\t\t\t\t\t\treturn tags.fetch(options);\n\t\t\t\t\t\t}),\n\t\t\t\t\t)\n\t\t\t\t).flatMap((collection) => collection.results),\n\t\t\t).map(this._mapResultsToModel.bind(this));\n\n\t\t\tthis.add(results);\n\n\t\t\treturn {\n\t\t\t\tcount: results.length,\n\t\t\t\tnext: null,\n\t\t\t\tprevious: null,\n\t\t\t\tresults: this.toJSON(),\n\t\t\t};\n\t\t},\n\n\t\t// Used by Telepresenter to add the tags in the hostedpreso bundle to\n\t\t// the appointment tags collection\n\t\taddFromAppointment(appointment) {\n\t\t\tconst tagCollectionNames = [\n\t\t\t\t\"appointmentdeckversiontags_set\",\n\t\t\t\t\"appointmentsectiontags_set\",\n\t\t\t\t\"appointmentslidetags_set\",\n\t\t\t\t\"appointmentadjuncttags_set\",\n\t\t\t];\n\n\t\t\t// flatMap currently doesn't work in TelePresenter\n\t\t\tconst results = _.compact(\n\t\t\t\t_.flatten(\n\t\t\t\t\ttagCollectionNames.map((collectionName) => {\n\t\t\t\t\t\tconst collection = appointment[collectionName];\n\t\t\t\t\t\treturn collection?._data || [];\n\t\t\t\t\t}),\n\t\t\t\t),\n\t\t\t).map(this._mapResultsToModel.bind(this));\n\n\t\t\tthis.add(results);\n\t\t},\n\t},\n);\n\nAppointmentTagsCollection.canBeEmpty = true;\n\nregister(\"AppointmentTagsCollection\", AppointmentTagsCollection);\n"],"file":"appointment-tags.js"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AppointmentTemplateCollection = void 0;
7
+
8
+ require("../models/appointment-template.js");
9
+
10
+ var _base = require("./base.js");
11
+
12
+ var _stateRegister = require("../state-register.js");
13
+
14
+ /**
15
+ * @constructor
16
+ * @alias collections.AppointmentTemplateCollection
17
+ * @extends collections.BaseCollection
18
+ * @see models.AppointmentTemplateModel
19
+ */
20
+ var AppointmentTemplateCollection = _base.BaseCollection.extend(
21
+ /** @lends collections.AppointmentTemplateCollection# */
22
+ {
23
+ comparator: "sequence",
24
+ model: "AppointmentTemplateModel",
25
+ url: function url() {
26
+ if (!this._url && this.parent) {
27
+ this._options.appointment = this.parent;
28
+ }
29
+
30
+ return _base.BaseCollection.prototype.url.call(this);
31
+ }
32
+ });
33
+
34
+ exports.AppointmentTemplateCollection = AppointmentTemplateCollection;
35
+ (0, _stateRegister.register)("AppointmentTemplateCollection", AppointmentTemplateCollection);
36
+ //# sourceMappingURL=appointment-templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/collections/appointment-templates.js"],"names":["AppointmentTemplateCollection","BaseCollection","extend","comparator","model","url","_url","parent","_options","appointment","prototype","call"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,6BAA6B,GAAGC,qBAAeC,MAAf;AAC5C;AAAyD;AACxDC,EAAAA,UAAU,EAAE,UAD4C;AAExDC,EAAAA,KAAK,EAAE,0BAFiD;AAGxDC,EAAAA,GAHwD,iBAGlD;AACL,QAAI,CAAC,KAAKC,IAAN,IAAc,KAAKC,MAAvB,EAA+B;AAC9B,WAAKC,QAAL,CAAcC,WAAd,GAA4B,KAAKF,MAAjC;AACA;;AAED,WAAON,qBAAeS,SAAf,CAAyBL,GAAzB,CAA6BM,IAA7B,CAAkC,IAAlC,CAAP;AACA;AATuD,CADb,CAAtC;;;AAcP,6BAAS,+BAAT,EAA0CX,6BAA1C","sourcesContent":["import \"../models/appointment-template.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AppointmentTemplateCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentTemplateModel\n */\nexport const AppointmentTemplateCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentTemplateCollection# */ {\n\t\tcomparator: \"sequence\",\n\t\tmodel: \"AppointmentTemplateModel\",\n\t\turl() {\n\t\t\tif (!this._url && this.parent) {\n\t\t\t\tthis._options.appointment = this.parent;\n\t\t\t}\n\n\t\t\treturn BaseCollection.prototype.url.call(this);\n\t\t},\n\t},\n);\n\nregister(\"AppointmentTemplateCollection\", AppointmentTemplateCollection);\n"],"file":"appointment-templates.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/appointments.js"],"names":["AppointmentCollection","BaseCollection","extend","model","fetchEmpty","monthParametersForUser","log","warn","apply","arguments","fetchMonthForUser","date","moment","now","options","userID","Auth","user","id","fetch","data","fetchFortnightForUser","fortnightParametersForUser","fetchCreatedMonthForUser","parameter","dateFrom","subtract","format","dateTo","add","creation_status","startOf","endOf"],"mappings":";;;;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,qBAAqB,GAAGC,qBAAeC,MAAf;AACpC;AAAiD;AAChDC,EAAAA,KAAK,EAAE,kBADyC;AAEhDC,EAAAA,UAAU,EAAE,IAFoC;;AAIhD;AACF;AACA;AACA;AACA;AACEC,EAAAA,sBATgD,oCASvB;AACxBC,iBAAIC,IAAJ;;AAIA,WAAOP,qBAAqB,CAACK,sBAAtB,CAA6CG,KAA7C,CACN,IADM,EAENC,SAFM,CAAP;AAIA,GAlB+C;;AAoBhD;AACF;AACA;AACA;AACA;AACA;AACEC,EAAAA,iBA1BgD,+BA8B9C;AAAA,QAHDC,IAGC,uEAHMC,gBAAOC,GAAP,EAGN;AAAA,QAFDC,OAEC,uEAFS,EAET;AAAA,QADDC,MACC,uEADQC,WAAKC,IAAL,CAAUC,EAClB;AACD,WAAO,KAAKC,KAAL,iCACHL,OADG;AAENM,MAAAA,IAAI,EAAEpB,qBAAqB,CAACK,sBAAtB,CACLM,IADK,EAELI,MAFK,EAGL,MAHK;AAFA,OAAP;AAQA,GAvC+C;AAyChDM,EAAAA,qBAzCgD,mCA6C9C;AAAA,QAHDV,IAGC,uEAHMC,gBAAOC,GAAP,EAGN;AAAA,QAFDC,OAEC,uEAFS,EAET;AAAA,QADDC,MACC,uEADQC,WAAKC,IAAL,CAAUC,EAClB;AACD,WAAO,KAAKC,KAAL,iCACHL,OADG;AAENM,MAAAA,IAAI,EAAEpB,qBAAqB,CAACsB,0BAAtB,CACLX,IADK,EAELI,MAFK,EAGL,MAHK;AAFA,OAAP;AAQA,GAtD+C;;AAwDhD;AACF;AACA;AACA;AACA;AACA;AACEQ,EAAAA,wBA9DgD,oCA8DvBZ,IA9DuB,EA8DM;AAAA,QAAvBI,MAAuB,uEAAdC,WAAKC,IAAL,CAAUC,EAAI;AACrD,WAAO,KAAKC,KAAL,CAAW;AACjBC,MAAAA,IAAI,EAAEpB,qBAAqB,CAACK,sBAAtB,CACLM,IADK,EAELI,MAFK,EAGL,SAHK;AADW,KAAX,CAAP;AAOA;AAtE+C,CADb,CAA9B;AA2EP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;AACAf,qBAAqB,CAACsB,0BAAtB,GAAmD,UAClDX,IADkD,EAIjD;AAAA,MAFDI,MAEC,uEAFQC,WAAKC,IAAL,CAAUC,EAElB;AAAA,MADDM,SACC,uEADW,MACX;AACD,MAAMC,QAAQ,GAAG,qBAAOd,IAAP,EAAae,QAAb,CAAsB,CAAtB,EAAyB,MAAzB,EAAiCC,MAAjC,EAAjB;AACA,MAAMC,MAAM,GAAG,qBAAOjB,IAAP,EAAakB,GAAb,CAAiB,CAAjB,EAAoB,MAApB,EAA4BF,MAA5B,EAAf,CAFC,CAID;;AACA,MAAMP,IAAI,GAAG;AACZH,IAAAA,IAAI,EAAEF,MADM;AAEZe,IAAAA,eAAe,EAAE,CAAC,YAAD,EAAe,OAAf;AAFL,GAAb;AAKAV,EAAAA,IAAI,WAAII,SAAJ,gBAAJ,GAAiCC,QAAjC;AACAL,EAAAA,IAAI,WAAII,SAAJ,gBAAJ,GAAiCI,MAAjC;AAEA,SAAOR,IAAP;AACA,CAlBD;AAoBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACApB,qBAAqB,CAACK,sBAAtB,GAA+C,UAC9CM,IAD8C,EAI7C;AAAA,MAFDI,MAEC,uEAFQC,WAAKC,IAAL,CAAUC,EAElB;AAAA,MADDM,SACC,uEADW,MACX;AACD,MAAMC,QAAQ,GAAG,qBAAOd,IAAP,EAAaoB,OAAb,CAAqB,OAArB,EAA8BJ,MAA9B,EAAjB;AACA,MAAMC,MAAM,GAAG,qBAAOjB,IAAP,EAAaqB,KAAb,CAAmB,OAAnB,EAA4BL,MAA5B,EAAf,CAFC,CAID;;AACA,MAAMP,IAAI,GAAG;AACZH,IAAAA,IAAI,EAAEF,MADM;AAEZe,IAAAA,eAAe,EAAE,CAAC,YAAD,EAAe,OAAf;AAFL,GAAb;AAKAV,EAAAA,IAAI,WAAII,SAAJ,gBAAJ,GAAiCC,QAAjC;AACAL,EAAAA,IAAI,WAAII,SAAJ,gBAAJ,GAAiCI,MAAjC;AAEA,SAAOR,IAAP;AACA,CAlBD;;AAoBA,6BAAS,uBAAT,EAAkCpB,qBAAlC","sourcesContent":["import \"../models/appointment.js\";\n\nimport { Auth } from \"../auth.js\";\nimport { BaseCollection } from \"./base.js\";\nimport log from \"../log.js\";\nimport moment from \"moment\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AppointmentCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentModel\n */\nexport const AppointmentCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentCollection# */ {\n\t\tmodel: \"AppointmentModel\",\n\t\tfetchEmpty: true,\n\n\t\t/**\n\t\t * Returns a query parameter object for querying a months data for a user\n\t\t * @see collections.AppointmentCollection.monthParametersForUser\n\t\t * @deprecated\n\t\t */\n\t\tmonthParametersForUser() {\n\t\t\tlog.warn(`\n\t\t\tDeprecation: Calling fetchMonthForUser on an instance is deprecated.\n\t\t\tUse AppointmentCollection.monthParametersForUser instead\n\t\t`);\n\t\t\treturn AppointmentCollection.monthParametersForUser.apply(\n\t\t\t\tnull,\n\t\t\t\targuments\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * Fetch a month's schedule for a particular user.\n\t\t * @param {moment|string} date - A date in the month you wish to retrieve\n\t\t * @param {number} [userID] - A user's ID. Defaults to the current user if missing\n\t\t * @returns {Promise}\n\t\t */\n\t\tfetchMonthForUser(\n\t\t\tdate = moment.now(),\n\t\t\toptions = {},\n\t\t\tuserID = Auth.user.id\n\t\t) {\n\t\t\treturn this.fetch({\n\t\t\t\t...options,\n\t\t\t\tdata: AppointmentCollection.monthParametersForUser(\n\t\t\t\t\tdate,\n\t\t\t\t\tuserID,\n\t\t\t\t\t\"sort\"\n\t\t\t\t),\n\t\t\t});\n\t\t},\n\n\t\tfetchFortnightForUser(\n\t\t\tdate = moment.now(),\n\t\t\toptions = {},\n\t\t\tuserID = Auth.user.id\n\t\t) {\n\t\t\treturn this.fetch({\n\t\t\t\t...options,\n\t\t\t\tdata: AppointmentCollection.fortnightParametersForUser(\n\t\t\t\t\tdate,\n\t\t\t\t\tuserID,\n\t\t\t\t\t\"sort\"\n\t\t\t\t),\n\t\t\t});\n\t\t},\n\n\t\t/**\n\t\t * Fetch a month's created appointments for a particular user.\n\t\t * @param {moment|string} date - A date in the month you wish to retrieve\n\t\t * @param {number} [userID] - A user's ID. Defaults to the current user if missing\n\t\t * @returns {Promise}\n\t\t */\n\t\tfetchCreatedMonthForUser(date, userID = Auth.user.id) {\n\t\t\treturn this.fetch({\n\t\t\t\tdata: AppointmentCollection.monthParametersForUser(\n\t\t\t\t\tdate,\n\t\t\t\t\tuserID,\n\t\t\t\t\t\"created\"\n\t\t\t\t),\n\t\t\t});\n\t\t},\n\t}\n);\n\n/**\n * Returns a query parameter object for querying a months data for a user\n * @function monthParametersForUser\n * @memberof collections.AppointmentCollection\n * @param {moment|string} date\n * @param {number} [userID]\n * @param {string} [parameter=\"sort\"]\n * @returns {object}\n */\nAppointmentCollection.fortnightParametersForUser = function (\n\tdate,\n\tuserID = Auth.user.id,\n\tparameter = \"sort\"\n) {\n\tconst dateFrom = moment(date).subtract(1, \"week\").format();\n\tconst dateTo = moment(date).add(1, \"week\").format();\n\n\t// The server only returns apts with 'ready' creation status by default\n\tconst data = {\n\t\tuser: userID,\n\t\tcreation_status: [\"processing\", \"ready\"],\n\t};\n\n\tdata[`${parameter}_date__gte`] = dateFrom;\n\tdata[`${parameter}_date__lte`] = dateTo;\n\n\treturn data;\n};\n\n/**\n * Returns a query parameter object for querying a months data for a user\n * @function monthParametersForUser\n * @memberof collections.AppointmentCollection\n * @param {moment|string} date\n * @param {number} [userID]\n * @param {string} [parameter=\"sort\"]\n * @returns {object}\n */\nAppointmentCollection.monthParametersForUser = function (\n\tdate,\n\tuserID = Auth.user.id,\n\tparameter = \"sort\"\n) {\n\tconst dateFrom = moment(date).startOf(\"month\").format();\n\tconst dateTo = moment(date).endOf(\"month\").format();\n\n\t// The server only returns apts with 'ready' creation status by default\n\tconst data = {\n\t\tuser: userID,\n\t\tcreation_status: [\"processing\", \"ready\"],\n\t};\n\n\tdata[`${parameter}_date__gte`] = dateFrom;\n\tdata[`${parameter}_date__lte`] = dateTo;\n\n\treturn data;\n};\n\nregister(\"AppointmentCollection\", AppointmentCollection);\n"],"file":"appointments.js"}
1
+ {"version":3,"sources":["../../src/collections/appointments.js"],"names":["AppointmentCollection","BaseCollection","extend","model","fetchEmpty","monthParametersForUser","log","warn","apply","arguments","fetchMonthForUser","date","moment","now","options","userID","Auth","user","id","fetch","data","fetchFortnightForUser","fortnightParametersForUser","fetchCreatedMonthForUser","parameter","dateFrom","subtract","format","dateTo","add","creation_status","startOf","endOf"],"mappings":"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","sourcesContent":["import \"../models/appointment.js\";\n\nimport { Auth } from \"../auth.js\";\nimport { BaseCollection } from \"./base.js\";\nimport log from \"../log.js\";\nimport moment from \"moment\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AppointmentCollection\n * @extends collections.BaseCollection\n * @see models.AppointmentModel\n */\nexport const AppointmentCollection = BaseCollection.extend(\n\t/** @lends collections.AppointmentCollection# */ {\n\t\tmodel: \"AppointmentModel\",\n\t\tfetchEmpty: true,\n\n\t\t/**\n\t\t * Returns a query parameter object for querying a months data for a user\n\t\t * @see collections.AppointmentCollection.monthParametersForUser\n\t\t * @deprecated\n\t\t */\n\t\tmonthParametersForUser() {\n\t\t\tlog.warn(`\n\t\t\tDeprecation: Calling fetchMonthForUser on an instance is deprecated.\n\t\t\tUse AppointmentCollection.monthParametersForUser instead\n\t\t`);\n\t\t\treturn AppointmentCollection.monthParametersForUser.apply(\n\t\t\t\tnull,\n\t\t\t\targuments,\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * Fetch a month's schedule for a particular user.\n\t\t * @param {moment|string} date - A date in the month you wish to retrieve\n\t\t * @param {number} [userID] - A user's ID. Defaults to the current user if missing\n\t\t * @returns {Promise}\n\t\t */\n\t\tfetchMonthForUser(\n\t\t\tdate = moment.now(),\n\t\t\toptions = {},\n\t\t\tuserID = Auth.user.id,\n\t\t) {\n\t\t\treturn this.fetch({\n\t\t\t\t...options,\n\t\t\t\tdata: AppointmentCollection.monthParametersForUser(\n\t\t\t\t\tdate,\n\t\t\t\t\tuserID,\n\t\t\t\t\t\"sort\",\n\t\t\t\t),\n\t\t\t});\n\t\t},\n\n\t\tfetchFortnightForUser(\n\t\t\tdate = moment.now(),\n\t\t\toptions = {},\n\t\t\tuserID = Auth.user.id,\n\t\t) {\n\t\t\treturn this.fetch({\n\t\t\t\t...options,\n\t\t\t\tdata: AppointmentCollection.fortnightParametersForUser(\n\t\t\t\t\tdate,\n\t\t\t\t\tuserID,\n\t\t\t\t\t\"sort\",\n\t\t\t\t),\n\t\t\t});\n\t\t},\n\n\t\t/**\n\t\t * Fetch a month's created appointments for a particular user.\n\t\t * @param {moment|string} date - A date in the month you wish to retrieve\n\t\t * @param {number} [userID] - A user's ID. Defaults to the current user if missing\n\t\t * @returns {Promise}\n\t\t */\n\t\tfetchCreatedMonthForUser(date, userID = Auth.user.id) {\n\t\t\treturn this.fetch({\n\t\t\t\tdata: AppointmentCollection.monthParametersForUser(\n\t\t\t\t\tdate,\n\t\t\t\t\tuserID,\n\t\t\t\t\t\"created\",\n\t\t\t\t),\n\t\t\t});\n\t\t},\n\t},\n);\n\n/**\n * Returns a query parameter object for querying a months data for a user\n * @function monthParametersForUser\n * @memberof collections.AppointmentCollection\n * @param {moment|string} date\n * @param {number} [userID]\n * @param {string} [parameter=\"sort\"]\n * @returns {object}\n */\nAppointmentCollection.fortnightParametersForUser = function (\n\tdate,\n\tuserID = Auth.user.id,\n\tparameter = \"sort\",\n) {\n\tconst dateFrom = moment(date).subtract(1, \"week\").format();\n\tconst dateTo = moment(date).add(1, \"week\").format();\n\n\t// The server only returns apts with 'ready' creation status by default\n\tconst data = {\n\t\tuser: userID,\n\t\tcreation_status: [\"processing\", \"ready\"],\n\t};\n\n\tdata[`${parameter}_date__gte`] = dateFrom;\n\tdata[`${parameter}_date__lte`] = dateTo;\n\n\treturn data;\n};\n\n/**\n * Returns a query parameter object for querying a months data for a user\n * @function monthParametersForUser\n * @memberof collections.AppointmentCollection\n * @param {moment|string} date\n * @param {number} [userID]\n * @param {string} [parameter=\"sort\"]\n * @returns {object}\n */\nAppointmentCollection.monthParametersForUser = function (\n\tdate,\n\tuserID = Auth.user.id,\n\tparameter = \"sort\",\n) {\n\tconst dateFrom = moment(date).startOf(\"month\").format();\n\tconst dateTo = moment(date).endOf(\"month\").format();\n\n\t// The server only returns apts with 'ready' creation status by default\n\tconst data = {\n\t\tuser: userID,\n\t\tcreation_status: [\"processing\", \"ready\"],\n\t};\n\n\tdata[`${parameter}_date__gte`] = dateFrom;\n\tdata[`${parameter}_date__lte`] = dateTo;\n\n\treturn data;\n};\n\nregister(\"AppointmentCollection\", AppointmentCollection);\n"],"file":"appointments.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/assets.js"],"names":["AssetCollection","BaseCollection","extend","model"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,eAAe,GAAGC,qBAAeC,MAAf;AAC9B;AAA2C;AAC1CC,EAAAA,KAAK,EAAE;AADmC,CADb,CAAxB;;;AAMP,6BAAS,iBAAT,EAA4BH,eAA5B","sourcesContent":["import \"../models/asset.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AssetCollection\n * @extends collections.BaseCollection\n * @see models.AssetModel\n */\nexport const AssetCollection = BaseCollection.extend(\n\t/** @lends collections.AssetCollection# */ {\n\t\tmodel: \"AssetModel\",\n\t}\n);\n\nregister(\"AssetCollection\", AssetCollection);\n"],"file":"assets.js"}
1
+ {"version":3,"sources":["../../src/collections/assets.js"],"names":["AssetCollection","BaseCollection","extend","model"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,eAAe,GAAGC,qBAAeC,MAAf;AAC9B;AAA2C;AAC1CC,EAAAA,KAAK,EAAE;AADmC,CADb,CAAxB;;;AAMP,6BAAS,iBAAT,EAA4BH,eAA5B","sourcesContent":["import \"../models/asset.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AssetCollection\n * @extends collections.BaseCollection\n * @see models.AssetModel\n */\nexport const AssetCollection = BaseCollection.extend(\n\t/** @lends collections.AssetCollection# */ {\n\t\tmodel: \"AssetModel\",\n\t},\n);\n\nregister(\"AssetCollection\", AssetCollection);\n"],"file":"assets.js"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/collections/auto-adjuncts.js"],"names":["AutoAdjunctCollection","BaseCollection","extend","comparator","model","fetchByDeckID","deckID","options","fetch","data","deck","opts","user","Auth","team","concat","team_set","map","id","prototype","call"],"mappings":";;;;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,qBAAqB,GAAGC,qBAAeC,MAAf;AACpC;AAAiD;AAChDC,EAAAA,UAAU,EAAE,UADoC;AAEhDC,EAAAA,KAAK,EAAE,kBAFyC;AAIhDC,EAAAA,aAJgD,yBAIlCC,MAJkC,EAIZ;AAAA,QAAdC,OAAc,uEAAJ,EAAI;AACnC,WAAO,KAAKC,KAAL,iCACHD,OADG;AAENE,MAAAA,IAAI,EAAE;AACLC,QAAAA,IAAI,EAAEJ;AADD;AAFA,OAAP;AAMA,GAX+C;AAahDE,EAAAA,KAbgD,mBAa/B;AAAA,QAAXG,IAAW,uEAAJ,EAAI;AAChB,QAAQC,IAAR,GAAiBC,aAAjB,CAAQD,IAAR;;AAEA,QAAI,CAACD,IAAI,CAACF,IAAV,EAAgB;AACfE,MAAAA,IAAI,CAACF,IAAL,GAAY,EAAZ;AACA,KALe,CAOhB;AACA;;;AACA,QAAI,CAACE,IAAI,CAACF,IAAL,CAAUK,IAAf,EAAqB;AACpB;AACA;AACA;AACA;AACA;AACAH,MAAAA,IAAI,CAACF,IAAL,CAAUK,IAAV,GAAiB,CAAC,IAAD,EAAOC,MAAP,CAAcH,IAAI,CAACI,QAAL,CAAcC,GAAd,CAAkB,UAACH,IAAD;AAAA,eAAUA,IAAI,CAACI,EAAf;AAAA,OAAlB,CAAd,CAAjB;AACA;;AAED,WAAOjB,qBAAekB,SAAf,CAAyBX,KAAzB,CAA+BY,IAA/B,CAAoC,IAApC,EAA0CT,IAA1C,CAAP;AACA;AAhC+C,CADb,CAA9B;;;AAqCP,6BAAS,uBAAT,EAAkCX,qBAAlC","sourcesContent":["import \"../models/auto-adjunct.js\";\n\nimport Auth from \"../auth.js\";\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AutoAdjunctCollection\n * @extends collections.BaseCollection\n * @see models.AutoAdjunctModel\n */\nexport const AutoAdjunctCollection = BaseCollection.extend(\n\t/** @lends collections.AutoAdjunctCollection# */ {\n\t\tcomparator: \"sequence\",\n\t\tmodel: \"AutoAdjunctModel\",\n\n\t\tfetchByDeckID(deckID, options = {}) {\n\t\t\treturn this.fetch({\n\t\t\t\t...options,\n\t\t\t\tdata: {\n\t\t\t\t\tdeck: deckID,\n\t\t\t\t},\n\t\t\t});\n\t\t},\n\n\t\tfetch(opts = {}) {\n\t\t\tconst { user } = Auth;\n\n\t\t\tif (!opts.data) {\n\t\t\t\topts.data = {};\n\t\t\t}\n\n\t\t\t// Let's only add this if it's not already being set, in case a global user\n\t\t\t// DOES want to see a specific team.\n\t\t\tif (!opts.data.team) {\n\t\t\t\t//\n\t\t\t\t// Filter all global autoadjuncts, and only query teams that\n\t\t\t\t// the authorized user is a part of. This is mostly for the case where\n\t\t\t\t// a 'global' temp slide admin could end up seeing autoadjuncts for\n\t\t\t\t// many teams - which would be increadibly confusing.\n\t\t\t\topts.data.team = [null].concat(user.team_set.map((team) => team.id));\n\t\t\t}\n\n\t\t\treturn BaseCollection.prototype.fetch.call(this, opts);\n\t\t},\n\t}\n);\n\nregister(\"AutoAdjunctCollection\", AutoAdjunctCollection);\n"],"file":"auto-adjuncts.js"}
1
+ {"version":3,"sources":["../../src/collections/auto-adjuncts.js"],"names":["AutoAdjunctCollection","BaseCollection","extend","comparator","model","fetchByDeckID","deckID","options","fetch","data","deck","opts","user","Auth","team","concat","team_set","map","id","prototype","call"],"mappings":";;;;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,qBAAqB,GAAGC,qBAAeC,MAAf;AACpC;AAAiD;AAChDC,EAAAA,UAAU,EAAE,UADoC;AAEhDC,EAAAA,KAAK,EAAE,kBAFyC;AAIhDC,EAAAA,aAJgD,yBAIlCC,MAJkC,EAIZ;AAAA,QAAdC,OAAc,uEAAJ,EAAI;AACnC,WAAO,KAAKC,KAAL,iCACHD,OADG;AAENE,MAAAA,IAAI,EAAE;AACLC,QAAAA,IAAI,EAAEJ;AADD;AAFA,OAAP;AAMA,GAX+C;AAahDE,EAAAA,KAbgD,mBAa/B;AAAA,QAAXG,IAAW,uEAAJ,EAAI;AAChB,QAAQC,IAAR,GAAiBC,aAAjB,CAAQD,IAAR;;AAEA,QAAI,CAACD,IAAI,CAACF,IAAV,EAAgB;AACfE,MAAAA,IAAI,CAACF,IAAL,GAAY,EAAZ;AACA,KALe,CAOhB;AACA;;;AACA,QAAI,CAACE,IAAI,CAACF,IAAL,CAAUK,IAAf,EAAqB;AACpB;AACA;AACA;AACA;AACA;AACAH,MAAAA,IAAI,CAACF,IAAL,CAAUK,IAAV,GAAiB,CAAC,IAAD,EAAOC,MAAP,CAAcH,IAAI,CAACI,QAAL,CAAcC,GAAd,CAAkB,UAACH,IAAD;AAAA,eAAUA,IAAI,CAACI,EAAf;AAAA,OAAlB,CAAd,CAAjB;AACA;;AAED,WAAOjB,qBAAekB,SAAf,CAAyBX,KAAzB,CAA+BY,IAA/B,CAAoC,IAApC,EAA0CT,IAA1C,CAAP;AACA;AAhC+C,CADb,CAA9B;;;AAqCP,6BAAS,uBAAT,EAAkCX,qBAAlC","sourcesContent":["import \"../models/auto-adjunct.js\";\n\nimport Auth from \"../auth.js\";\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.AutoAdjunctCollection\n * @extends collections.BaseCollection\n * @see models.AutoAdjunctModel\n */\nexport const AutoAdjunctCollection = BaseCollection.extend(\n\t/** @lends collections.AutoAdjunctCollection# */ {\n\t\tcomparator: \"sequence\",\n\t\tmodel: \"AutoAdjunctModel\",\n\n\t\tfetchByDeckID(deckID, options = {}) {\n\t\t\treturn this.fetch({\n\t\t\t\t...options,\n\t\t\t\tdata: {\n\t\t\t\t\tdeck: deckID,\n\t\t\t\t},\n\t\t\t});\n\t\t},\n\n\t\tfetch(opts = {}) {\n\t\t\tconst { user } = Auth;\n\n\t\t\tif (!opts.data) {\n\t\t\t\topts.data = {};\n\t\t\t}\n\n\t\t\t// Let's only add this if it's not already being set, in case a global user\n\t\t\t// DOES want to see a specific team.\n\t\t\tif (!opts.data.team) {\n\t\t\t\t//\n\t\t\t\t// Filter all global autoadjuncts, and only query teams that\n\t\t\t\t// the authorized user is a part of. This is mostly for the case where\n\t\t\t\t// a 'global' temp slide admin could end up seeing autoadjuncts for\n\t\t\t\t// many teams - which would be increadibly confusing.\n\t\t\t\topts.data.team = [null].concat(user.team_set.map((team) => team.id));\n\t\t\t}\n\n\t\t\treturn BaseCollection.prototype.fetch.call(this, opts);\n\t\t},\n\t},\n);\n\nregister(\"AutoAdjunctCollection\", AutoAdjunctCollection);\n"],"file":"auto-adjuncts.js"}
@@ -174,6 +174,10 @@ var BaseCollection = _ampersandRestCollection.default.extend(
174
174
 
175
175
  if (resp.slice(-1) !== "/" && resp.indexOf("?") === -1) {
176
176
  resp += "/";
177
+ }
178
+
179
+ if (!resp.includes("{") || !resp.includes("}")) {
180
+ return this.getFullURLPath(resp);
177
181
  } // Replace any values in a url with one from the collection's options.
178
182
  // So if you have /path/to/{model.id}/models/
179
183
  // It will check the collection options for "model.id" and replace