@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
@@ -20,7 +20,7 @@ export const SlideSelectionCollection = BaseCollection.extend(
20
20
  },
21
21
  };
22
22
  },
23
- }
23
+ },
24
24
  );
25
25
 
26
26
  register("SlideSelectionCollection", SlideSelectionCollection);
@@ -12,7 +12,7 @@ import { register } from "../state-register.js";
12
12
  export const SlideCollection = BaseCollection.extend(
13
13
  /** @lends collections.SlideCollection# */ {
14
14
  model: "SlideModel",
15
- }
15
+ },
16
16
  );
17
17
 
18
18
  register("SlideCollection", SlideCollection);
@@ -12,7 +12,7 @@ import { register } from "../state-register.js";
12
12
  export const SnapshotCollection = BaseCollection.extend(
13
13
  /** @lends collections.SnapshotCollection# */ {
14
14
  model: "SnapshotModel",
15
- }
15
+ },
16
16
  );
17
17
 
18
18
  register("SnapshotCollection", SnapshotCollection);
@@ -12,7 +12,7 @@ import { register } from "../state-register.js";
12
12
  export const SubSlideCollection = BaseCollection.extend(
13
13
  /** @lends collections.SubSlideCollection# */ {
14
14
  model: "SubSlideModel",
15
- }
15
+ },
16
16
  );
17
17
 
18
18
  register("SubSlideCollection", SubSlideCollection);
@@ -12,7 +12,7 @@ import { register } from "../state-register.js";
12
12
  export const TagCollection = BaseCollection.extend(
13
13
  /** @lends collections.TagCollection# */ {
14
14
  model: "TagModel",
15
- }
15
+ },
16
16
  );
17
17
 
18
18
  register("TagCollection", TagCollection);
@@ -12,7 +12,7 @@ import { register } from "../state-register.js";
12
12
  export const TeamCollection = BaseCollection.extend(
13
13
  /** @lends collections.TeamCollection# */ {
14
14
  model: "TeamModel",
15
- }
15
+ },
16
16
  );
17
17
 
18
18
  TeamCollection.canBeEmpty = true;
@@ -12,7 +12,7 @@ import { register } from "../state-register.js";
12
12
  export const TemplateCollection = BaseCollection.extend(
13
13
  /** @lends collections.TemplateCollection# */ {
14
14
  model: "TemplateModel",
15
- }
15
+ },
16
16
  );
17
17
 
18
18
  TemplateCollection.canBeEmpty = true;
@@ -13,7 +13,7 @@ export const UploadCollection = BaseCollection.extend(
13
13
  /** @lends collections.UploadCollection# */ {
14
14
  comparator: "sequence",
15
15
  model: "UploadModel",
16
- }
16
+ },
17
17
  );
18
18
 
19
19
  register("UploadCollection", UploadCollection);
@@ -12,7 +12,7 @@ import { register } from "../state-register.js";
12
12
  export const UserCollection = BaseCollection.extend(
13
13
  /** @lends collections.UserCollection# */ {
14
14
  model: "UserModel",
15
- }
15
+ },
16
16
  );
17
17
 
18
18
  register("UserCollection", UserCollection);
@@ -11,6 +11,7 @@ export * from "./collections/auto-adjuncts";
11
11
  export * from "./collections/base";
12
12
  export * from "./collections/cms-vals";
13
13
  export * from "./collections/contacts";
14
+ export * from "./collections/contact-phones";
14
15
  export * from "./collections/created-assets";
15
16
  export * from "./collections/customers";
16
17
  export * from "./collections/deck-versions";
@@ -27,6 +28,8 @@ export * from "./collections/packs";
27
28
  export * from "./collections/presets";
28
29
  export * from "./collections/section-selections";
29
30
  export * from "./collections/sections";
31
+ export * from "./collections/signing-requests";
32
+ export * from "./collections/signers";
30
33
  export * from "./collections/slide-selections";
31
34
  export * from "./collections/slides";
32
35
  export * from "./collections/snapshots";
@@ -36,7 +39,6 @@ export * from "./collections/images";
36
39
  export * from "./collections/users";
37
40
  export * from "./collections/uploads";
38
41
  export * from "./collections/appointment-editors.js";
39
- export * from "./collections/appointment-duplicates.js";
40
42
  export * from "./collections/tags.js";
41
43
  export * from "./collections/teams.js";
42
44
  export * from "./collections/templates.js";
@@ -45,3 +47,4 @@ export * from "./collections/appointment-deckversion-tags.js";
45
47
  export * from "./collections/appointment-section-tags.js";
46
48
  export * from "./collections/appointment-slide-tags.js";
47
49
  export * from "./collections/appointment-adjunct-tags.js";
50
+ export * from "./collections/appointment-templates.js";
@@ -0,0 +1,195 @@
1
+ import * as collections from "./collections.js";
2
+ import * as models from "./models.js";
3
+ import * as presentation from "./presentation.js";
4
+
5
+ import { Factory } from "rosie";
6
+ import { faker } from "@faker-js/faker";
7
+
8
+ const presentationModels = {
9
+ AppointmentPresentation: presentation.AppointmentPresentation,
10
+ PresentationDeck: presentation.PresentationDeck,
11
+ PresentationSection: presentation.PresentationSection,
12
+ PresentationSlide: presentation.PresentationSlide,
13
+ PresentationSubSlide: presentation.PresentationSubSlide,
14
+ Presentation: presentation.Presentation,
15
+ };
16
+
17
+ const presentationCollections = {
18
+ PresentationDecks: presentation.PresentationDecks,
19
+ PresentationSections: presentation.PresentationSections,
20
+ PresentationSlides: presentation.PresentationSlides,
21
+ PresentationSubSlides: presentation.PresentationSubSlides,
22
+ };
23
+
24
+ function makeFactory(name, Model, ignoreFields = []) {
25
+ const factory = Factory.define(name, Model).sequence("id");
26
+
27
+ const { _definition: definition, _children: children } = Model.prototype;
28
+
29
+ if (definition) {
30
+ for (const [key, value] of Object.entries(definition)) {
31
+ if (typeof value.default !== "undefined") {
32
+ // If we have a default actually specified on the model, use that
33
+ let defaultValue = value.default;
34
+ if (typeof defaultValue === "function") {
35
+ defaultValue = defaultValue();
36
+ }
37
+ factory.attr(key, defaultValue);
38
+ } else if (value.type === "string") {
39
+ factory.attr(key, "");
40
+ } else if (value.type === "number") {
41
+ factory.attr(key, 0);
42
+ } else if (value.type === "array") {
43
+ factory.attr(key, []);
44
+ } else if (value.type === "object") {
45
+ factory.attr(key, {});
46
+ }
47
+ }
48
+ }
49
+
50
+ if (children) {
51
+ for (const [key, value] of Object.entries(children)) {
52
+ if (ignoreFields.includes(key)) {
53
+ continue;
54
+ }
55
+ factory.attr(key, () => {
56
+ return Factory.build(value);
57
+ });
58
+ }
59
+ }
60
+
61
+ return factory;
62
+ }
63
+
64
+ const allModels = { ...models, ...presentationModels };
65
+
66
+ const factories = Object.keys(allModels).reduce((registered, key) => {
67
+ registered[key] = makeFactory(key, allModels[key]);
68
+ return registered;
69
+ }, {});
70
+
71
+ export function M(modelName, opts) {
72
+ if (!factories[modelName]) {
73
+ throw new Error(
74
+ `Model with name '${modelName}' not found. Check your spelling of the model`,
75
+ );
76
+ }
77
+ const model = factories[modelName].build(opts);
78
+ return model;
79
+ }
80
+
81
+ export function C(collectionName, data) {
82
+ const allCollections = { ...collections, ...presentationCollections };
83
+ const Collection = allCollections[collectionName];
84
+ if (!Collection) {
85
+ throw new Error(`Collection with name ${collectionName} does not exist`);
86
+ }
87
+
88
+ const modelName = Collection.prototype.model;
89
+
90
+ return new Collection(data.map((d) => M(modelName, d)));
91
+ }
92
+
93
+ factories.AppointmentModel.attr("latest_snapshot", null)
94
+ .attr("latest_feed_data", null)
95
+ .attr("latest_tele", null)
96
+ .attr("stats", null)
97
+ .attr("appointmentssection_set", [])
98
+ .attr("appointmentsslide_set", [])
99
+ .after((appt) => {
100
+ if (!appt.latest_snapshot) {
101
+ appt.latest_snapshot = M("SnapshotModel", {
102
+ appointment: appt,
103
+ });
104
+ }
105
+
106
+ if (!appt.latest_feed_data) {
107
+ appt.latest_feed_data = M("FeedDataModel", {
108
+ snapshot: appt.latest_snapshot,
109
+ });
110
+ }
111
+ });
112
+
113
+ factories.DeckModel.attr("approved_version", null)
114
+ .attr("head_version", null)
115
+ .after((deck) => {
116
+ if (!deck.approved_version || !deck.head_version) {
117
+ const dv = M("DeckVersionModel", { deck });
118
+ if (!deck.approved_version) {
119
+ deck.approved_version = dv;
120
+ }
121
+ if (!deck.head_version) {
122
+ deck.head_version = dv;
123
+ }
124
+ }
125
+ });
126
+
127
+ factories.SnapshotModel.attr("creation_status", "ready").after((snapshot) => {
128
+ snapshot.created_date = new Date();
129
+ snapshot.modified_date = new Date();
130
+ });
131
+
132
+ factories.AutoAdjunctModel.attr("team", null)
133
+ .attr("enabled", true)
134
+ .sequence("sequence")
135
+ .attr("_tenancy", {
136
+ editable: true,
137
+ owner_id: null,
138
+ })
139
+ .after((auto) => {
140
+ if (auto.template?.cmsvalkey_set) {
141
+ auto.cmsvalkey_set = auto.template.cmsvalkey_set.map((key) => {
142
+ return `${key}-autoadjunct-${auto.id}`;
143
+ });
144
+ }
145
+ });
146
+
147
+ factories.DeckVersionModel.attr("deck", null)
148
+ .attr("approved", true)
149
+ .attr("creation_status", "created")
150
+ .attr("approval", "approved")
151
+ .after((dv) => {
152
+ if (!dv.deck) {
153
+ dv.deck = M("DeckModel", {
154
+ approved_version: dv,
155
+ head_version: dv,
156
+ });
157
+ }
158
+ });
159
+
160
+ factories.UserModel.attr("first_name", () => faker.name.firstName()).attr(
161
+ "last_name",
162
+ () => faker.name.lastName(),
163
+ );
164
+
165
+ factories.TenancyModel.attr("administrator", null);
166
+
167
+ factories.TemplateModel.sequence("sequence")
168
+ // Prevent max call stack overflow
169
+ .attr("original_template", null)
170
+ .sequence("index")
171
+ .after((template) => {
172
+ if (template.original_template?.index_asset) {
173
+ template.index_asset = template.original_template.index_asset.url();
174
+ }
175
+ });
176
+
177
+ factories.ContactModel.attr("customer", null)
178
+ .attr("name_first", () => faker.name.firstName())
179
+ .attr("name_last", () => faker.name.lastName())
180
+ .attr("email", () => faker.internet.email())
181
+ .after((contact, options) => {
182
+ if (!contact.customer) {
183
+ contact.customer = M("CustomerModel", {
184
+ contact_set: [contact],
185
+ });
186
+ }
187
+
188
+ contact.customer.contact_set = [contact.toJSON()];
189
+ });
190
+
191
+ factories.CustomerModel.attr("default_location", null)
192
+ .attr("default_opportunity", null)
193
+ .attr("title", () => faker.company.name());
194
+
195
+ export { Factory };
package/src/index.js CHANGED
@@ -1,6 +1,3 @@
1
- import "./models.js";
2
- import "./collections.js";
3
-
4
1
  export function getAssetRoot(path) {
5
2
  if (!path) {
6
3
  return "";
@@ -11,3 +8,5 @@ export function getAssetRoot(path) {
11
8
  export * from "./api";
12
9
  export * from "./auth";
13
10
  export * from "./presentation";
11
+ export * from "./models.js";
12
+ export * from "./collections.js";
@@ -40,12 +40,20 @@ export const ActivityItemModel = BaseModel.extend(
40
40
  view_type: "string",
41
41
  is_muted: "boolean",
42
42
  appointment_is_deleted: "boolean",
43
+ signing_backend: "string",
44
+ status: "string",
45
+ concluded_date: "date",
46
+ signed_document: "string",
47
+ original_document: "string",
48
+ cancellation_reason: "string",
49
+ requested_by_contact: "boolean",
43
50
  },
44
51
 
45
52
  children: {
46
53
  hostedpreso: "HostedPresoModel",
47
54
  dispatch: "DispatchModel",
48
55
  appointmentviewing: "AppointmentViewingModel",
56
+ signingrequest: "SigningRequestModel",
49
57
  },
50
58
 
51
59
  serialize() {
@@ -60,7 +68,7 @@ export const ActivityItemModel = BaseModel.extend(
60
68
  ...data,
61
69
  };
62
70
  },
63
- }
71
+ },
64
72
  );
65
73
 
66
74
  register("ActivityItemModel", ActivityItemModel);
@@ -43,7 +43,10 @@ export const AdjunctSectionModel = BaseModel.extend(
43
43
  title: "string",
44
44
  sequence: "number",
45
45
  deleted: "boolean",
46
- enabled: "boolean",
46
+ enabled: {
47
+ type: "boolean",
48
+ default: true,
49
+ },
47
50
  created_by_autoadjunct: "boolean",
48
51
  impostor: "boolean",
49
52
  tags: "array",
@@ -67,8 +70,10 @@ export const AdjunctSectionModel = BaseModel.extend(
67
70
  const data = {
68
71
  sequence: this.sequence,
69
72
  appointment: this._retrieveURL(this.appointment),
73
+ template: this._retrieveURL(this.template),
70
74
  deckversion: this._retrieveURL(this.deckversion),
71
75
  enabled: this.enabled,
76
+ tags: this.tags,
72
77
  };
73
78
 
74
79
  if (this.adjunct) {
@@ -90,7 +95,7 @@ export const AdjunctSectionModel = BaseModel.extend(
90
95
 
91
96
  return data;
92
97
  },
93
- }
98
+ },
94
99
  );
95
100
 
96
101
  register("AdjunctSectionModel", AdjunctSectionModel);
@@ -43,7 +43,10 @@ export const AdjunctSlideModel = BaseModel.extend(
43
43
  modified_date: "date",
44
44
  title: "string",
45
45
  sequence: "number",
46
- enabled: "boolean",
46
+ enabled: {
47
+ type: "boolean",
48
+ default: true,
49
+ },
47
50
  created_by_autoadjunct: "boolean",
48
51
  tags: "array",
49
52
  },
@@ -67,8 +70,10 @@ export const AdjunctSlideModel = BaseModel.extend(
67
70
  const data = {
68
71
  sequence: this.sequence,
69
72
  appointment: this._retrieveURL(this.appointment),
73
+ template: this._retrieveURL(this.template),
70
74
  section: this._retrieveURL(this.section),
71
75
  enabled: this.enabled,
76
+ tags: this.tags,
72
77
  };
73
78
 
74
79
  if (this.adjunct) {
@@ -90,7 +95,7 @@ export const AdjunctSlideModel = BaseModel.extend(
90
95
 
91
96
  return data;
92
97
  },
93
- }
98
+ },
94
99
  );
95
100
 
96
101
  register("AdjunctSlideModel", AdjunctSlideModel);
@@ -70,7 +70,7 @@ export const AdjunctSubSlideModel = BaseModel.extend(
70
70
 
71
71
  return data;
72
72
  },
73
- }
73
+ },
74
74
  );
75
75
 
76
76
  register("AdjunctSubSlideModel", AdjunctSubSlideModel);
@@ -31,7 +31,45 @@ export const AdjunctModel = BaseModel.extend(
31
31
  children: {
32
32
  template: "TemplateModel",
33
33
  },
34
- }
34
+
35
+ url() {
36
+ if (this._data.url) {
37
+ return this._data.url;
38
+ }
39
+
40
+ if (this._data.id) {
41
+ return `${this.getResourceURL()}adjuncts/${this._data.id}/`;
42
+ }
43
+
44
+ return null;
45
+ },
46
+
47
+ getID() {
48
+ if (this._data.id) {
49
+ return this._data.id;
50
+ }
51
+
52
+ const resourceURL = `${this.getResourceURL()}adjuncts/`;
53
+ const url = this.url();
54
+
55
+ return this._getIDFromURL(url, resourceURL);
56
+ },
57
+
58
+ toJSON() {
59
+ const data = BaseModel.prototype.toJSON.apply(this, arguments);
60
+
61
+ // There's no "adjuncts" resource endpoint, so we have to use a
62
+ // workaround to get the ID.
63
+ const id = this.getID();
64
+ const url = this.url();
65
+
66
+ return {
67
+ ...data,
68
+ url,
69
+ id,
70
+ };
71
+ },
72
+ },
35
73
  );
36
74
 
37
75
  register("AdjunctModel", AdjunctModel);
@@ -35,7 +35,7 @@ export const AppointmentAdjunctTagsModel = BaseModel.extend(
35
35
  adjunct: "AdjunctModel",
36
36
  user: "UserModel",
37
37
  },
38
- }
38
+ },
39
39
  );
40
40
 
41
41
  register("AppointmentAdjunctTagsModel", AppointmentAdjunctTagsModel);
@@ -35,7 +35,7 @@ export const AppointmentDeckVersionTagsModel = BaseModel.extend(
35
35
  deckversion: "DeckVersionModel",
36
36
  user: "UserModel",
37
37
  },
38
- }
38
+ },
39
39
  );
40
40
 
41
41
  register("AppointmentDeckVersionTagsModel", AppointmentDeckVersionTagsModel);
@@ -50,7 +50,7 @@ export const AppointmentEditorModel = BaseModel.extend(
50
50
 
51
51
  return data;
52
52
  },
53
- }
53
+ },
54
54
  );
55
55
 
56
56
  register("AppointmentEditorModel", AppointmentEditorModel);
@@ -35,7 +35,7 @@ export const AppointmentSectionTagsModel = BaseModel.extend(
35
35
  section: "SectionModel",
36
36
  user: "UserModel",
37
37
  },
38
- }
38
+ },
39
39
  );
40
40
 
41
41
  register("AppointmentSectionTagsModel", AppointmentSectionTagsModel);
@@ -35,7 +35,7 @@ export const AppointmentSlideTagsModel = BaseModel.extend(
35
35
  slide: "SlideModel",
36
36
  user: "UserModel",
37
37
  },
38
- }
38
+ },
39
39
  );
40
40
 
41
41
  register("AppointmentSlideTagsModel", AppointmentSlideTagsModel);
@@ -33,7 +33,7 @@ export const AppointmentStatsModel = BaseModel.extend(
33
33
  children: {
34
34
  appointment: "AppointmentModel",
35
35
  },
36
- }
36
+ },
37
37
  );
38
38
 
39
39
  register("AppointmentStatsModel", AppointmentStatsModel);
@@ -31,7 +31,7 @@ export const AppointmentTagsModel = BaseModel.extend(
31
31
  appointment: "AppointmentModel",
32
32
  user: "UserModel",
33
33
  },
34
- }
34
+ },
35
35
  );
36
36
 
37
37
  AppointmentTagsModel.canBeEmpty = true;
@@ -0,0 +1,19 @@
1
+ import { TemplateModel } from "./template.js";
2
+ import { register } from "../state-register.js";
3
+
4
+ /**
5
+ * @constructor
6
+ * @alias models.AppointmentTemplateModel
7
+ * @extends models.BaseModel
8
+ */
9
+ export const AppointmentTemplateModel = TemplateModel.extend({
10
+ modelName: "appointment-templates",
11
+
12
+ getResourceURL() {
13
+ return TemplateModel.prototype.getResourceURL.call({
14
+ modelName: TemplateModel.prototype.modelName,
15
+ });
16
+ },
17
+ });
18
+
19
+ register("AppointmentTemplateModel", AppointmentTemplateModel);
@@ -22,7 +22,7 @@ export const AppointmentViewingModel = BaseModel.extend(
22
22
  top_slides: "array",
23
23
  not_viewed: "array",
24
24
  },
25
- }
25
+ },
26
26
  );
27
27
 
28
28
  register("AppointmentViewingModel", AppointmentViewingModel);