@livepreso/api 6.46.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 (350) hide show
  1. package/.rush/temp/package-deps_build.json +156 -141
  2. package/.rush/temp/shrinkwrap-deps.json +424 -374
  3. package/CHANGELOG.json +17 -0
  4. package/CHANGELOG.md +8 -1
  5. package/api.build.log +6 -1
  6. package/cjs/api.js +18 -3
  7. package/cjs/api.js.map +1 -1
  8. package/cjs/api.spec.js +4 -0
  9. package/cjs/api.spec.js.map +1 -1
  10. package/cjs/auth.js +29 -2
  11. package/cjs/auth.js.map +1 -1
  12. package/cjs/auth.spec.js +77 -52
  13. package/cjs/auth.spec.js.map +1 -1
  14. package/cjs/caching.js +7 -2
  15. package/cjs/caching.js.map +1 -1
  16. package/cjs/collections/activity.js +56 -16
  17. package/cjs/collections/activity.js.map +1 -1
  18. package/cjs/collections/adjunct-sections.js +10 -1
  19. package/cjs/collections/adjunct-sections.js.map +1 -1
  20. package/cjs/collections/adjunct-slides.js +10 -1
  21. package/cjs/collections/adjunct-slides.js.map +1 -1
  22. package/cjs/collections/adjunct-sub-slides.js +9 -1
  23. package/cjs/collections/adjunct-sub-slides.js.map +1 -1
  24. package/cjs/collections/appointment-adjunct-tags.js +9 -1
  25. package/cjs/collections/appointment-adjunct-tags.js.map +1 -1
  26. package/cjs/collections/appointment-deckversion-tags.js +9 -1
  27. package/cjs/collections/appointment-deckversion-tags.js.map +1 -1
  28. package/cjs/collections/appointment-editors.js +10 -1
  29. package/cjs/collections/appointment-editors.js.map +1 -1
  30. package/cjs/collections/appointment-section-tags.js +9 -1
  31. package/cjs/collections/appointment-section-tags.js.map +1 -1
  32. package/cjs/collections/appointment-slide-tags.js +9 -1
  33. package/cjs/collections/appointment-slide-tags.js.map +1 -1
  34. package/cjs/collections/appointment-tags.js +103 -64
  35. package/cjs/collections/appointment-tags.js.map +1 -1
  36. package/cjs/collections/appointment-templates.js +10 -1
  37. package/cjs/collections/appointment-templates.js.map +1 -1
  38. package/cjs/collections/appointments.js +29 -9
  39. package/cjs/collections/appointments.js.map +1 -1
  40. package/cjs/collections/assets.js +9 -1
  41. package/cjs/collections/assets.js.map +1 -1
  42. package/cjs/collections/auto-adjuncts.js +21 -6
  43. package/cjs/collections/auto-adjuncts.js.map +1 -1
  44. package/cjs/collections/base.js +112 -34
  45. package/cjs/collections/base.js.map +1 -1
  46. package/cjs/collections/base.spec.js +233 -186
  47. package/cjs/collections/base.spec.js.map +1 -1
  48. package/cjs/collections/cms-vals.js +16 -4
  49. package/cjs/collections/cms-vals.js.map +1 -1
  50. package/cjs/collections/contact-phones.js +9 -1
  51. package/cjs/collections/contact-phones.js.map +1 -1
  52. package/cjs/collections/contacts.js +9 -1
  53. package/cjs/collections/contacts.js.map +1 -1
  54. package/cjs/collections/created-assets.js +10 -1
  55. package/cjs/collections/created-assets.js.map +1 -1
  56. package/cjs/collections/customers.js +9 -1
  57. package/cjs/collections/customers.js.map +1 -1
  58. package/cjs/collections/deck-notes.js +10 -1
  59. package/cjs/collections/deck-notes.js.map +1 -1
  60. package/cjs/collections/deck-version-screenshots.js +17 -4
  61. package/cjs/collections/deck-version-screenshots.js.map +1 -1
  62. package/cjs/collections/deck-versions.js +20 -5
  63. package/cjs/collections/deck-versions.js.map +1 -1
  64. package/cjs/collections/decks.js +9 -1
  65. package/cjs/collections/decks.js.map +1 -1
  66. package/cjs/collections/deleted-assets.js +10 -1
  67. package/cjs/collections/deleted-assets.js.map +1 -1
  68. package/cjs/collections/dispatches.js +13 -1
  69. package/cjs/collections/dispatches.js.map +1 -1
  70. package/cjs/collections/event-objects.js +9 -1
  71. package/cjs/collections/event-objects.js.map +1 -1
  72. package/cjs/collections/events.js +9 -1
  73. package/cjs/collections/events.js.map +1 -1
  74. package/cjs/collections/groups.js +9 -1
  75. package/cjs/collections/groups.js.map +1 -1
  76. package/cjs/collections/images.js +9 -1
  77. package/cjs/collections/images.js.map +1 -1
  78. package/cjs/collections/locations.js +9 -1
  79. package/cjs/collections/locations.js.map +1 -1
  80. package/cjs/collections/opportunities.js +9 -1
  81. package/cjs/collections/opportunities.js.map +1 -1
  82. package/cjs/collections/pack-diffs.js +9 -1
  83. package/cjs/collections/pack-diffs.js.map +1 -1
  84. package/cjs/collections/packs.js +9 -1
  85. package/cjs/collections/packs.js.map +1 -1
  86. package/cjs/collections/presets.js +9 -1
  87. package/cjs/collections/presets.js.map +1 -1
  88. package/cjs/collections/section-selections.js +9 -1
  89. package/cjs/collections/section-selections.js.map +1 -1
  90. package/cjs/collections/sections.js +9 -1
  91. package/cjs/collections/sections.js.map +1 -1
  92. package/cjs/collections/signers.js +28 -0
  93. package/cjs/collections/signers.js.map +1 -0
  94. package/cjs/collections/signing-requests.js +28 -0
  95. package/cjs/collections/signing-requests.js.map +1 -0
  96. package/cjs/collections/slide-selections.js +9 -1
  97. package/cjs/collections/slide-selections.js.map +1 -1
  98. package/cjs/collections/slides.js +9 -1
  99. package/cjs/collections/slides.js.map +1 -1
  100. package/cjs/collections/snapshots.js +9 -1
  101. package/cjs/collections/snapshots.js.map +1 -1
  102. package/cjs/collections/sub-slides.js +9 -1
  103. package/cjs/collections/sub-slides.js.map +1 -1
  104. package/cjs/collections/tags.js +9 -1
  105. package/cjs/collections/tags.js.map +1 -1
  106. package/cjs/collections/teams.js +9 -1
  107. package/cjs/collections/teams.js.map +1 -1
  108. package/cjs/collections/templates.js +9 -1
  109. package/cjs/collections/templates.js.map +1 -1
  110. package/cjs/collections/uploads.js +9 -1
  111. package/cjs/collections/uploads.js.map +1 -1
  112. package/cjs/collections/users.js +9 -1
  113. package/cjs/collections/users.js.map +1 -1
  114. package/cjs/collections.js +116 -11
  115. package/cjs/collections.js.map +1 -1
  116. package/cjs/fixtures.js +60 -15
  117. package/cjs/fixtures.js.map +1 -1
  118. package/cjs/index.js +36 -2
  119. package/cjs/index.js.map +1 -1
  120. package/cjs/log.js +1 -0
  121. package/cjs/log.js.map +1 -1
  122. package/cjs/middleware.js +7 -2
  123. package/cjs/middleware.js.map +1 -1
  124. package/cjs/middlewares/auth.js +17 -1
  125. package/cjs/middlewares/auth.js.map +1 -1
  126. package/cjs/middlewares/base.js +9 -3
  127. package/cjs/middlewares/base.js.map +1 -1
  128. package/cjs/middlewares/json.js +19 -1
  129. package/cjs/middlewares/json.js.map +1 -1
  130. package/cjs/middlewares/redirect.js +21 -5
  131. package/cjs/middlewares/redirect.js.map +1 -1
  132. package/cjs/models/activity-item.js +29 -5
  133. package/cjs/models/activity-item.js.map +1 -1
  134. package/cjs/models/adjunct-section.js +19 -1
  135. package/cjs/models/adjunct-section.js.map +1 -1
  136. package/cjs/models/adjunct-slide.js +19 -1
  137. package/cjs/models/adjunct-slide.js.map +1 -1
  138. package/cjs/models/adjunct-sub-slide.js +16 -1
  139. package/cjs/models/adjunct-sub-slide.js.map +1 -1
  140. package/cjs/models/adjunct.js +22 -6
  141. package/cjs/models/adjunct.js.map +1 -1
  142. package/cjs/models/api.js +6 -1
  143. package/cjs/models/api.js.map +1 -1
  144. package/cjs/models/appointment-adjunct-tags.js +13 -1
  145. package/cjs/models/appointment-adjunct-tags.js.map +1 -1
  146. package/cjs/models/appointment-deckversion-tags.js +13 -1
  147. package/cjs/models/appointment-deckversion-tags.js.map +1 -1
  148. package/cjs/models/appointment-editor.js +14 -1
  149. package/cjs/models/appointment-editor.js.map +1 -1
  150. package/cjs/models/appointment-section-tags.js +13 -1
  151. package/cjs/models/appointment-section-tags.js.map +1 -1
  152. package/cjs/models/appointment-slide-tags.js +13 -1
  153. package/cjs/models/appointment-slide-tags.js.map +1 -1
  154. package/cjs/models/appointment-stats.js +11 -1
  155. package/cjs/models/appointment-stats.js.map +1 -1
  156. package/cjs/models/appointment-tags.js +10 -1
  157. package/cjs/models/appointment-tags.js.map +1 -1
  158. package/cjs/models/appointment-template.js +6 -1
  159. package/cjs/models/appointment-template.js.map +1 -1
  160. package/cjs/models/appointment-viewing.js +8 -1
  161. package/cjs/models/appointment-viewing.js.map +1 -1
  162. package/cjs/models/appointment.js +98 -20
  163. package/cjs/models/appointment.js.map +1 -1
  164. package/cjs/models/asset.js +12 -1
  165. package/cjs/models/asset.js.map +1 -1
  166. package/cjs/models/auto-adjunct-key-check.js +15 -1
  167. package/cjs/models/auto-adjunct-key-check.js.map +1 -1
  168. package/cjs/models/auto-adjunct.js +13 -1
  169. package/cjs/models/auto-adjunct.js.map +1 -1
  170. package/cjs/models/base.js +175 -53
  171. package/cjs/models/base.js.map +1 -1
  172. package/cjs/models/base.spec.js +31 -0
  173. package/cjs/models/base.spec.js.map +1 -1
  174. package/cjs/models/choicelist.js +8 -1
  175. package/cjs/models/choicelist.js.map +1 -1
  176. package/cjs/models/cms-val.js +26 -5
  177. package/cjs/models/cms-val.js.map +1 -1
  178. package/cjs/models/cms-val.spec.js +19 -12
  179. package/cjs/models/cms-val.spec.js.map +1 -1
  180. package/cjs/models/contact-phone.js +13 -1
  181. package/cjs/models/contact-phone.js.map +1 -1
  182. package/cjs/models/contact.js +18 -1
  183. package/cjs/models/contact.js.map +1 -1
  184. package/cjs/models/customer.js +30 -3
  185. package/cjs/models/customer.js.map +1 -1
  186. package/cjs/models/deck-note.js +9 -1
  187. package/cjs/models/deck-note.js.map +1 -1
  188. package/cjs/models/deck-tags.js +12 -1
  189. package/cjs/models/deck-tags.js.map +1 -1
  190. package/cjs/models/deck-version-screenshot.js +13 -1
  191. package/cjs/models/deck-version-screenshot.js.map +1 -1
  192. package/cjs/models/deck-version.js +40 -1
  193. package/cjs/models/deck-version.js.map +1 -1
  194. package/cjs/models/deck.js +14 -1
  195. package/cjs/models/deck.js.map +1 -1
  196. package/cjs/models/dispatch-preview.js +13 -1
  197. package/cjs/models/dispatch-preview.js.map +1 -1
  198. package/cjs/models/dispatch.js +23 -1
  199. package/cjs/models/dispatch.js.map +1 -1
  200. package/cjs/models/envs.js +6 -1
  201. package/cjs/models/envs.js.map +1 -1
  202. package/cjs/models/event-object.js +11 -1
  203. package/cjs/models/event-object.js.map +1 -1
  204. package/cjs/models/event.js +13 -1
  205. package/cjs/models/event.js.map +1 -1
  206. package/cjs/models/feed-data.js +13 -1
  207. package/cjs/models/feed-data.js.map +1 -1
  208. package/cjs/models/file.js +11 -1
  209. package/cjs/models/file.js.map +1 -1
  210. package/cjs/models/group.js +11 -1
  211. package/cjs/models/group.js.map +1 -1
  212. package/cjs/models/handover.js +13 -1
  213. package/cjs/models/handover.js.map +1 -1
  214. package/cjs/models/hosted-preso.js +15 -1
  215. package/cjs/models/hosted-preso.js.map +1 -1
  216. package/cjs/models/image.js +16 -1
  217. package/cjs/models/image.js.map +1 -1
  218. package/cjs/models/location.js +13 -1
  219. package/cjs/models/location.js.map +1 -1
  220. package/cjs/models/manifest-json.js +88 -21
  221. package/cjs/models/manifest-json.js.map +1 -1
  222. package/cjs/models/onshare.js +14 -1
  223. package/cjs/models/onshare.js.map +1 -1
  224. package/cjs/models/opportunity.js +14 -1
  225. package/cjs/models/opportunity.js.map +1 -1
  226. package/cjs/models/pack-diff.js +14 -1
  227. package/cjs/models/pack-diff.js.map +1 -1
  228. package/cjs/models/pack.js +12 -1
  229. package/cjs/models/pack.js.map +1 -1
  230. package/cjs/models/preset.js +21 -2
  231. package/cjs/models/preset.js.map +1 -1
  232. package/cjs/models/refresh-request.js +22 -4
  233. package/cjs/models/refresh-request.js.map +1 -1
  234. package/cjs/models/room.js +9 -1
  235. package/cjs/models/room.js.map +1 -1
  236. package/cjs/models/salesforce-lookup.js +12 -1
  237. package/cjs/models/salesforce-lookup.js.map +1 -1
  238. package/cjs/models/section-selection.js +14 -1
  239. package/cjs/models/section-selection.js.map +1 -1
  240. package/cjs/models/section.js +14 -1
  241. package/cjs/models/section.js.map +1 -1
  242. package/cjs/models/signer.js +47 -0
  243. package/cjs/models/signer.js.map +1 -0
  244. package/cjs/models/signing-request.js +66 -0
  245. package/cjs/models/signing-request.js.map +1 -0
  246. package/cjs/models/slide-selection.js +14 -1
  247. package/cjs/models/slide-selection.js.map +1 -1
  248. package/cjs/models/slide.js +14 -1
  249. package/cjs/models/slide.js.map +1 -1
  250. package/cjs/models/snapshot.js +45 -4
  251. package/cjs/models/snapshot.js.map +1 -1
  252. package/cjs/models/snapshot.spec.js +32 -25
  253. package/cjs/models/snapshot.spec.js.map +1 -1
  254. package/cjs/models/sub-slide.js +12 -1
  255. package/cjs/models/sub-slide.js.map +1 -1
  256. package/cjs/models/support-ticket.js +11 -1
  257. package/cjs/models/support-ticket.js.map +1 -1
  258. package/cjs/models/tag.js +13 -1
  259. package/cjs/models/tag.js.map +1 -1
  260. package/cjs/models/team.js +13 -1
  261. package/cjs/models/team.js.map +1 -1
  262. package/cjs/models/template.js +78 -48
  263. package/cjs/models/template.js.map +1 -1
  264. package/cjs/models/tenancy.js +11 -1
  265. package/cjs/models/tenancy.js.map +1 -1
  266. package/cjs/models/timing-log.js +78 -21
  267. package/cjs/models/timing-log.js.map +1 -1
  268. package/cjs/models/timing-log.spec.js +37 -24
  269. package/cjs/models/timing-log.spec.js.map +1 -1
  270. package/cjs/models/token.js +11 -1
  271. package/cjs/models/token.js.map +1 -1
  272. package/cjs/models/transcribe-socket.js +8 -1
  273. package/cjs/models/transcribe-socket.js.map +1 -1
  274. package/cjs/models/upload.js +7 -1
  275. package/cjs/models/upload.js.map +1 -1
  276. package/cjs/models/user.js +26 -3
  277. package/cjs/models/user.js.map +1 -1
  278. package/cjs/models/user.spec.js +30 -20
  279. package/cjs/models/user.spec.js.map +1 -1
  280. package/cjs/models.js +160 -11
  281. package/cjs/models.js.map +1 -1
  282. package/cjs/presentation/appointment-presentation.js +35 -9
  283. package/cjs/presentation/appointment-presentation.js.map +1 -1
  284. package/cjs/presentation/base-presentation-collection.js +7 -1
  285. package/cjs/presentation/base-presentation-collection.js.map +1 -1
  286. package/cjs/presentation/base-presentation-model.js +65 -22
  287. package/cjs/presentation/base-presentation-model.js.map +1 -1
  288. package/cjs/presentation/base-presentation-model.spec.js +27 -6
  289. package/cjs/presentation/base-presentation-model.spec.js.map +1 -1
  290. package/cjs/presentation/presentation-deck.js +82 -41
  291. package/cjs/presentation/presentation-deck.js.map +1 -1
  292. package/cjs/presentation/presentation-deck.spec.js +95 -72
  293. package/cjs/presentation/presentation-deck.spec.js.map +1 -1
  294. package/cjs/presentation/presentation-decks.js +9 -1
  295. package/cjs/presentation/presentation-decks.js.map +1 -1
  296. package/cjs/presentation/presentation-section.js +74 -9
  297. package/cjs/presentation/presentation-section.js.map +1 -1
  298. package/cjs/presentation/presentation-section.spec.js +256 -203
  299. package/cjs/presentation/presentation-section.spec.js.map +1 -1
  300. package/cjs/presentation/presentation-sections.js +9 -1
  301. package/cjs/presentation/presentation-sections.js.map +1 -1
  302. package/cjs/presentation/presentation-slide.js +77 -16
  303. package/cjs/presentation/presentation-slide.js.map +1 -1
  304. package/cjs/presentation/presentation-slide.spec.js +176 -136
  305. package/cjs/presentation/presentation-slide.spec.js.map +1 -1
  306. package/cjs/presentation/presentation-slides.js +9 -1
  307. package/cjs/presentation/presentation-slides.js.map +1 -1
  308. package/cjs/presentation/presentation-subslide.js +23 -3
  309. package/cjs/presentation/presentation-subslide.js.map +1 -1
  310. package/cjs/presentation/presentation-subslide.spec.js +125 -101
  311. package/cjs/presentation/presentation-subslide.spec.js.map +1 -1
  312. package/cjs/presentation/presentation-subslides.js +9 -1
  313. package/cjs/presentation/presentation-subslides.js.map +1 -1
  314. package/cjs/presentation/presentation.js +115 -61
  315. package/cjs/presentation/presentation.js.map +1 -1
  316. package/cjs/presentation.js +20 -0
  317. package/cjs/presentation.js.map +1 -1
  318. package/cjs/selections.js +29 -4
  319. package/cjs/selections.js.map +1 -1
  320. package/cjs/state-register.js +11 -3
  321. package/cjs/state-register.js.map +1 -1
  322. package/cjs/sync.js +76 -32
  323. package/cjs/sync.js.map +1 -1
  324. package/cjs/utils.js +49 -21
  325. package/cjs/utils.js.map +1 -1
  326. package/cjs/utils.spec.js +5 -1
  327. package/cjs/utils.spec.js.map +1 -1
  328. package/package.json +4 -4
  329. package/src/collections/signers.js +18 -0
  330. package/src/collections/signing-requests.js +18 -0
  331. package/src/collections.js +2 -1
  332. package/src/fixtures.js +11 -9
  333. package/src/index.js +2 -3
  334. package/src/models/activity-item.js +8 -0
  335. package/src/models/appointment.js +3 -0
  336. package/src/models/deck-version.js +1 -0
  337. package/src/models/manifest-json.js +9 -0
  338. package/src/models/preset.js +1 -0
  339. package/src/models/refresh-request.js +1 -0
  340. package/src/models/signer.js +37 -0
  341. package/src/models/signing-request.js +56 -0
  342. package/src/models/snapshot.js +19 -0
  343. package/src/models.js +2 -1
  344. package/src/utils.spec.js +4 -4
  345. package/cjs/collections/appointment-duplicates.js +0 -21
  346. package/cjs/collections/appointment-duplicates.js.map +0 -1
  347. package/cjs/models/appointment-duplicate.js +0 -72
  348. package/cjs/models/appointment-duplicate.js.map +0 -1
  349. package/src/collections/appointment-duplicates.js +0 -19
  350. package/src/models/appointment-duplicate.js +0 -73
package/CHANGELOG.json CHANGED
@@ -1,6 +1,23 @@
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
+ },
4
21
  {
5
22
  "version": "6.46.0",
6
23
  "tag": "@livepreso/api_v6.46.0",
package/CHANGELOG.md CHANGED
@@ -1,6 +1,13 @@
1
1
  # Change Log - @livepreso/api
2
2
 
3
- This log was last generated on Sun, 03 Mar 2024 23:59:09 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
4
11
 
5
12
  ## 6.46.0
6
13
  Sun, 03 Mar 2024 23:59:09 GMT
package/api.build.log CHANGED
@@ -1,4 +1,9 @@
1
1
  This project was not found in the build cache.
2
2
 
3
- Invoking: jest --coverage --coverageReporters=json
3
+ Invoking: run-p build:*
4
4
 
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).
package/cjs/api.js CHANGED
@@ -1,15 +1,20 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = exports.Api = void 0;
9
+
8
10
  var _bluebird = _interopRequireDefault(require("bluebird"));
11
+
9
12
  var _url = _interopRequireDefault(require("url"));
13
+
10
14
  /**
11
15
  * @namespace api
12
16
  */
17
+
13
18
  /**
14
19
  * Everything to do with the api endpoint
15
20
  * @constructor
@@ -17,15 +22,17 @@ var _url = _interopRequireDefault(require("url"));
17
22
  * @example
18
23
  * import {Api} from "@livepreso/api";
19
24
  */
20
- var Api = exports.Api = {
25
+ var Api = {
21
26
  resources: {},
22
27
  envs: null,
23
28
  _apiURL: "",
29
+
24
30
  /**
25
31
  * @memberof api.Api
26
32
  * @prop {number} version
27
33
  */
28
34
  version: 31,
35
+
29
36
  /**
30
37
  * Initialize the api. Connects to the network and returns the
31
38
  * api resource data.
@@ -42,7 +49,7 @@ var Api = exports.Api = {
42
49
  return require("./models.js");
43
50
  }).then(function (_ref) {
44
51
  var ApiModel = _ref.ApiModel,
45
- EnvsModel = _ref.EnvsModel;
52
+ EnvsModel = _ref.EnvsModel;
46
53
  var api = new ApiModel({
47
54
  url: Api._apiURL
48
55
  });
@@ -59,6 +66,7 @@ var Api = exports.Api = {
59
66
  });
60
67
  });
61
68
  },
69
+
62
70
  /**
63
71
  * Returns the full path of the api root
64
72
  * @memberof api.Api
@@ -67,6 +75,7 @@ var Api = exports.Api = {
67
75
  getURL: function getURL() {
68
76
  return Api._apiURL;
69
77
  },
78
+
70
79
  /**
71
80
  * Returns the root URL (origin) of the api server. Ie,
72
81
  * server.com/api/ -> server.com/
@@ -75,10 +84,12 @@ var Api = exports.Api = {
75
84
  */
76
85
  getRootURL: function getRootURL() {
77
86
  var urlObj = _url.default.parse(Api._apiURL);
87
+
78
88
  urlObj.pathname = "";
79
89
  urlObj.search = "";
80
90
  return _url.default.format(urlObj);
81
91
  },
92
+
82
93
  /**
83
94
  * Returns the full path to a resource endpoint, based on the resource
84
95
  * name.
@@ -88,11 +99,15 @@ var Api = exports.Api = {
88
99
  */
89
100
  getResourceURL: function getResourceURL(resource) {
90
101
  var res = Api.resources[resource];
102
+
91
103
  if (!res) {
92
104
  throw new Error("No API endpoint for: ".concat(resource));
93
105
  }
106
+
94
107
  return res;
95
108
  }
96
109
  };
97
- var _default = exports.default = Api;
110
+ exports.Api = Api;
111
+ var _default = Api;
112
+ exports.default = _default;
98
113
  //# sourceMappingURL=api.js.map
package/cjs/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","names":["_bluebird","_interopRequireDefault","require","_url","Api","exports","resources","envs","_apiURL","version","initialize","apiURL","arguments","length","undefined","Promise","resolve","then","_ref","ApiModel","EnvsModel","api","url","concat","all","fetch","toJSON","catch","e","getURL","getRootURL","urlObj","url2","parse","pathname","search","format","getResourceURL","resource","res","Error","_default","default"],"sources":["../src/api.js"],"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"],"mappings":";;;;;;;AAAA,IAAAA,SAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAME,GAAG,GAAAC,OAAA,CAAAD,GAAA,GAAG;EAClBE,SAAS,EAAE,CAAC,CAAC;EACbC,IAAI,EAAE,IAAI;EACVC,OAAO,EAAE,EAAE;EAEX;AACD;AACA;AACA;EACCC,OAAO,EAAE,EAAE;EAEX;AACD;AACA;AACA;AACA;AACA;AACA;AACA;EACCC,UAAU,WAAAA,WAACC,MAAM,EAAkB;IAAA,IAAhBF,OAAO,GAAAG,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAI;IAChCR,GAAG,CAACI,OAAO,GAAGG,MAAM;IACpB,IAAI,CAACF,OAAO,GAAGA,OAAO,KAAK,IAAI,GAAG,IAAI,CAACA,OAAO,GAAGA,OAAO;IAExD,OAAOM,iBAAO,CAACC,OAAO,CAAC,CAAC,CACtBC,IAAI,CAAC,YAAM;MACX,OAAOf,OAAO,CAAC,aAAa,CAAC;IAC9B,CAAC,CAAC,CACDe,IAAI,CAAC,UAAAC,IAAA,EAA6B;MAAA,IAA1BC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;QAAEC,SAAS,GAAAF,IAAA,CAATE,SAAS;MAC3B,IAAMC,GAAG,GAAG,IAAIF,QAAQ,CAAC;QAAEG,GAAG,EAAElB,GAAG,CAACI;MAAQ,CAAC,CAAC;MAC9C,IAAMD,IAAI,GAAG,IAAIa,SAAS,CAAC;QAAEE,GAAG,KAAAC,MAAA,CAAKnB,GAAG,CAACI,OAAO;MAAQ,CAAC,CAAC;MAE1D,OAAOO,iBAAO,CAACS,GAAG,CAAC,CAACH,GAAG,CAACI,KAAK,CAAC,CAAC,EAAElB,IAAI,CAACkB,KAAK,CAAC,CAAC,CAAC,CAAC,CAC7CR,IAAI,CAAC,YAAM;QACXb,GAAG,CAACE,SAAS,GAAGe,GAAG,CAACK,MAAM,CAAC,CAAC;QAC5BtB,GAAG,CAACG,IAAI,GAAGA,IAAI,CAACmB,MAAM,CAAC,CAAC;MACzB,CAAC,CAAC,CACDC,KAAK,CAAC,UAACC,CAAC,EAAK;QACbxB,GAAG,CAACG,IAAI,GAAG,IAAI;QACfH,GAAG,CAACE,SAAS,GAAG,CAAC,CAAC;QAElB,MAAMsB,CAAC;MACR,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ,CAAC;EAED;AACD;AACA;AACA;AACA;EACCC,MAAM,WAAAA,OAAA,EAAG;IACR,OAAOzB,GAAG,CAACI,OAAO;EACnB,CAAC;EAED;AACD;AACA;AACA;AACA;AACA;EACCsB,UAAU,WAAAA,WAAA,EAAG;IACZ,IAAMC,MAAM,GAAGC,YAAI,CAACC,KAAK,CAAC7B,GAAG,CAACI,OAAO,CAAC;IACtCuB,MAAM,CAACG,QAAQ,GAAG,EAAE;IACpBH,MAAM,CAACI,MAAM,GAAG,EAAE;IAClB,OAAOH,YAAI,CAACI,MAAM,CAACL,MAAM,CAAC;EAC3B,CAAC;EAED;AACD;AACA;AACA;AACA;AACA;AACA;EACCM,cAAc,WAAAA,eAACC,QAAQ,EAAE;IACxB,IAAMC,GAAG,GAAGnC,GAAG,CAACE,SAAS,CAACgC,QAAQ,CAAC;IACnC,IAAI,CAACC,GAAG,EAAE;MACT,MAAM,IAAIC,KAAK,yBAAAjB,MAAA,CAAyBe,QAAQ,CAAE,CAAC;IACpD;IACA,OAAOC,GAAG;EACX;AACD,CAAC;AAAC,IAAAE,QAAA,GAAApC,OAAA,CAAAqC,OAAA,GAEatC,GAAG"}
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/api.spec.js CHANGED
@@ -1,10 +1,14 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  var _api = require("./api.js");
6
+
5
7
  var _testdouble = _interopRequireDefault(require("testdouble"));
8
+
6
9
  test("should return a resource by name", function () {
7
10
  _testdouble.default.replace(_api.Api, "resources", _testdouble.default.object());
11
+
8
12
  _api.Api.resources = {
9
13
  foo: "bar"
10
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"api.spec.js","names":["_api","require","_testdouble","_interopRequireDefault","test","td","replace","Api","object","resources","foo","expect","getResourceURL","toEqual","toThrow","message"],"sources":["../src/api.spec.js"],"sourcesContent":["import { Api } from \"./api.js\";\nimport td from \"testdouble\";\n\ntest(\"should return a resource by name\", () => {\n\ttd.replace(Api, \"resources\", td.object());\n\tApi.resources = { foo: \"bar\" };\n\texpect(Api.getResourceURL(\"foo\")).toEqual(\"bar\");\n});\n\ntest(\"should throw an error if resource does not exist\", function () {\n\texpect(() => Api.getResourceURL(\"foo\")).toThrow({\n\t\tmessage: \"No API endpoint for: foo\",\n\t});\n});\n"],"mappings":";;;AAAA,IAAAA,IAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEAG,IAAI,CAAC,kCAAkC,EAAE,YAAM;EAC9CC,mBAAE,CAACC,OAAO,CAACC,QAAG,EAAE,WAAW,EAAEF,mBAAE,CAACG,MAAM,CAAC,CAAC,CAAC;EACzCD,QAAG,CAACE,SAAS,GAAG;IAAEC,GAAG,EAAE;EAAM,CAAC;EAC9BC,MAAM,CAACJ,QAAG,CAACK,cAAc,CAAC,KAAK,CAAC,CAAC,CAACC,OAAO,CAAC,KAAK,CAAC;AACjD,CAAC,CAAC;AAEFT,IAAI,CAAC,kDAAkD,EAAE,YAAY;EACpEO,MAAM,CAAC;IAAA,OAAMJ,QAAG,CAACK,cAAc,CAAC,KAAK,CAAC;EAAA,EAAC,CAACE,OAAO,CAAC;IAC/CC,OAAO,EAAE;EACV,CAAC,CAAC;AACH,CAAC,CAAC"}
1
+ {"version":3,"sources":["../src/api.spec.js"],"names":["test","td","replace","Api","object","resources","foo","expect","getResourceURL","toEqual","toThrow","message"],"mappings":";;;;AAAA;;AACA;;AAEAA,IAAI,CAAC,kCAAD,EAAqC,YAAM;AAC9CC,sBAAGC,OAAH,CAAWC,QAAX,EAAgB,WAAhB,EAA6BF,oBAAGG,MAAH,EAA7B;;AACAD,WAAIE,SAAJ,GAAgB;AAAEC,IAAAA,GAAG,EAAE;AAAP,GAAhB;AACAC,EAAAA,MAAM,CAACJ,SAAIK,cAAJ,CAAmB,KAAnB,CAAD,CAAN,CAAkCC,OAAlC,CAA0C,KAA1C;AACA,CAJG,CAAJ;AAMAT,IAAI,CAAC,kDAAD,EAAqD,YAAY;AACpEO,EAAAA,MAAM,CAAC;AAAA,WAAMJ,SAAIK,cAAJ,CAAmB,KAAnB,CAAN;AAAA,GAAD,CAAN,CAAwCE,OAAxC,CAAgD;AAC/CC,IAAAA,OAAO,EAAE;AADsC,GAAhD;AAGA,CAJG,CAAJ","sourcesContent":["import { Api } from \"./api.js\";\nimport td from \"testdouble\";\n\ntest(\"should return a resource by name\", () => {\n\ttd.replace(Api, \"resources\", td.object());\n\tApi.resources = { foo: \"bar\" };\n\texpect(Api.getResourceURL(\"foo\")).toEqual(\"bar\");\n});\n\ntest(\"should throw an error if resource does not exist\", function () {\n\texpect(() => Api.getResourceURL(\"foo\")).toThrow({\n\t\tmessage: \"No API endpoint for: foo\",\n\t});\n});\n"],"file":"api.spec.js"}
package/cjs/auth.js CHANGED
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
@@ -12,11 +13,17 @@ Object.defineProperty(exports, "SuperAgentRequest", {
12
13
  }
13
14
  });
14
15
  exports.default = void 0;
16
+
15
17
  var _api = require("./api.js");
18
+
16
19
  var _base = require("./models/base.js");
20
+
17
21
  var _superagentBluebirdPromise = _interopRequireDefault(require("superagent-bluebird-promise"));
22
+
18
23
  var _token = require("./models/token.js");
24
+
19
25
  var _log = _interopRequireDefault(require("./log.js"));
26
+
20
27
  /**
21
28
  * @namespace auth
22
29
  */
@@ -28,19 +35,23 @@ var _log = _interopRequireDefault(require("./log.js"));
28
35
  * @example
29
36
  * import {Auth} from "@livepreso/api";
30
37
  */
31
- var Auth = exports.Auth = {
38
+ var Auth = {
32
39
  _token: null,
33
40
  _user: null,
34
41
  _loggedIn: false,
42
+
35
43
  get headers() {
36
44
  var headerObj = {
37
45
  Accept: "application/vnd.salespreso+json; version=".concat(_api.Api.version)
38
46
  };
47
+
39
48
  if (this._token) {
40
49
  headerObj.Authorization = "Token ".concat(this._token);
41
50
  }
51
+
42
52
  return headerObj;
43
53
  },
54
+
44
55
  /**
45
56
  * Basic login using a login and password.
46
57
  * @memberof auth.Auth
@@ -52,23 +63,28 @@ var Auth = exports.Auth = {
52
63
  */
53
64
  login: function login(username, password, options) {
54
65
  var tokensURL = _api.Api.getResourceURL("tokens");
66
+
55
67
  var agent = options === null || options === void 0 ? void 0 : options.agent;
56
68
  var agentVersion = options === null || options === void 0 ? void 0 : options.agentVersion;
57
69
  var data = {
58
70
  username: username,
59
71
  password: password
60
72
  };
73
+
61
74
  if (agent) {
62
75
  data.agent = agent;
63
76
  }
77
+
64
78
  if (agentVersion) {
65
79
  data.agent_version = agentVersion;
66
80
  }
81
+
67
82
  return (0, _superagentBluebirdPromise.default)("POST", tokensURL).set({
68
83
  Accept: Auth.headers.Accept
69
84
  }).send(data).then(function (res) {
70
85
  var body = {};
71
86
  var token = "";
87
+
72
88
  if (res.statusCode === 200) {
73
89
  try {
74
90
  body = JSON.parse(res.text);
@@ -77,11 +93,13 @@ var Auth = exports.Auth = {
77
93
  _log.default.error("Error parsing JSON");
78
94
  }
79
95
  }
96
+
80
97
  return Auth.loginWithToken(token).then(function () {
81
98
  return body;
82
99
  });
83
100
  });
84
101
  },
102
+
85
103
  /**
86
104
  * Login using a token
87
105
  * @memberof auth.Auth
@@ -91,7 +109,9 @@ var Auth = exports.Auth = {
91
109
  */
92
110
  loginWithToken: function loginWithToken(token) {
93
111
  Auth._token = token;
112
+
94
113
  _log.default.info("Logging in with token: ".concat(token));
114
+
95
115
  var tokenModel = new _token.TokenModel({
96
116
  key: token
97
117
  });
@@ -102,6 +122,7 @@ var Auth = exports.Auth = {
102
122
  Auth._loggedIn = true;
103
123
  });
104
124
  },
125
+
105
126
  /**
106
127
  * @memberof auth.Auth
107
128
  * @static
@@ -112,6 +133,7 @@ var Auth = exports.Auth = {
112
133
  Auth._user = null;
113
134
  Auth._loggedIn = false;
114
135
  },
136
+
115
137
  /**
116
138
  * @memberof auth.Auth
117
139
  * @static
@@ -120,6 +142,7 @@ var Auth = exports.Auth = {
120
142
  get loggedIn() {
121
143
  return Auth._loggedIn;
122
144
  },
145
+
123
146
  /**
124
147
  * @memberof auth.Auth
125
148
  * @static
@@ -128,6 +151,7 @@ var Auth = exports.Auth = {
128
151
  get user() {
129
152
  return Auth._user;
130
153
  },
154
+
131
155
  /**
132
156
  * @memberof auth.Auth
133
157
  * @static
@@ -136,7 +160,10 @@ var Auth = exports.Auth = {
136
160
  get token() {
137
161
  return Auth._token;
138
162
  }
163
+
139
164
  };
165
+ exports.Auth = Auth;
140
166
  _base.BaseModel.Auth = Auth;
141
- var _default = exports.default = Auth;
167
+ var _default = Auth;
168
+ exports.default = _default;
142
169
  //# sourceMappingURL=auth.js.map
package/cjs/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","names":["_api","require","_base","_superagentBluebirdPromise","_interopRequireDefault","_token","_log","Auth","exports","_user","_loggedIn","headers","headerObj","Accept","concat","Api","version","Authorization","login","username","password","options","tokensURL","getResourceURL","agent","agentVersion","data","agent_version","SuperAgentRequest","set","send","then","res","body","token","statusCode","JSON","parse","text","key","e","log","error","loginWithToken","info","tokenModel","TokenModel","fetch","tap","user","clear","loggedIn","BaseModel","_default","default"],"sources":["../src/auth.js"],"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"],"mappings":"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"}
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"}
package/cjs/auth.spec.js CHANGED
@@ -1,81 +1,106 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
6
+
5
7
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
8
+
6
9
  var _api = require("./api.js");
10
+
7
11
  var _auth = require("./auth.js");
12
+
8
13
  var _api2 = require("sp-test/api");
14
+
9
15
  var _superagentBluebirdPromise = _interopRequireDefault(require("superagent-bluebird-promise"));
16
+
10
17
  var _testdouble = _interopRequireDefault(require("testdouble"));
18
+
11
19
  beforeEach(function () {
12
20
  _auth.Auth._loggedIn = false;
13
21
  });
14
22
  test("set the token", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
15
23
  return _regenerator.default.wrap(function _callee$(_context) {
16
- while (1) switch (_context.prev = _context.next) {
17
- case 0:
18
- (0, _api2.G)("TokenModel").respondWith({
19
- user: (0, _api2.G)("UserModel")
20
- });
21
- (0, _api2.G)("UserModel").respondWith();
22
- _context.next = 4;
23
- return _auth.Auth.loginWithToken("token");
24
- case 4:
25
- expect(_auth.Auth.token).toEqual("token");
26
- expect(_auth.Auth.loggedIn).toBe(true);
27
- case 6:
28
- case "end":
29
- return _context.stop();
24
+ while (1) {
25
+ switch (_context.prev = _context.next) {
26
+ case 0:
27
+ (0, _api2.G)("TokenModel").respondWith({
28
+ user: (0, _api2.G)("UserModel")
29
+ });
30
+ (0, _api2.G)("UserModel").respondWith();
31
+ _context.next = 4;
32
+ return _auth.Auth.loginWithToken("token");
33
+
34
+ case 4:
35
+ expect(_auth.Auth.token).toEqual("token");
36
+ expect(_auth.Auth.loggedIn).toBe(true);
37
+
38
+ case 6:
39
+ case "end":
40
+ return _context.stop();
41
+ }
30
42
  }
31
43
  }, _callee);
32
44
  })));
33
45
  test("set the user on success", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
34
46
  return _regenerator.default.wrap(function _callee2$(_context2) {
35
- while (1) switch (_context2.prev = _context2.next) {
36
- case 0:
37
- (0, _api2.G)("TokenModel").respondWith({
38
- user: (0, _api2.G)("UserModel")
39
- });
40
- (0, _api2.G)("UserModel").respondWith({
41
- first_name: "John",
42
- last_name: "Doe"
43
- });
44
- _context2.next = 4;
45
- return _auth.Auth.loginWithToken("token");
46
- case 4:
47
- expect(_auth.Auth.user.first_name).toEqual("John");
48
- expect(_auth.Auth.user.last_name).toEqual("Doe");
49
- case 6:
50
- case "end":
51
- return _context2.stop();
47
+ while (1) {
48
+ switch (_context2.prev = _context2.next) {
49
+ case 0:
50
+ (0, _api2.G)("TokenModel").respondWith({
51
+ user: (0, _api2.G)("UserModel")
52
+ });
53
+ (0, _api2.G)("UserModel").respondWith({
54
+ first_name: "John",
55
+ last_name: "Doe"
56
+ });
57
+ _context2.next = 4;
58
+ return _auth.Auth.loginWithToken("token");
59
+
60
+ case 4:
61
+ expect(_auth.Auth.user.first_name).toEqual("John");
62
+ expect(_auth.Auth.user.last_name).toEqual("Doe");
63
+
64
+ case 6:
65
+ case "end":
66
+ return _context2.stop();
67
+ }
52
68
  }
53
69
  }, _callee2);
54
70
  })));
55
71
  it("return a token from an auth request", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
56
72
  var login, response;
57
73
  return _regenerator.default.wrap(function _callee3$(_context3) {
58
- while (1) switch (_context3.prev = _context3.next) {
59
- case 0:
60
- login = _testdouble.default.func();
61
- response = _testdouble.default.func();
62
- _testdouble.default.replace(_api.Api, "getResourceURL", function () {
63
- return "/api/tokens";
64
- });
65
- _testdouble.default.replace(_auth.Auth, "loginWithToken", login);
66
- _testdouble.default.replace(_superagentBluebirdPromise.default.Request.prototype, "promise", response);
67
- _testdouble.default.when(response()).thenResolve({
68
- statusCode: 200,
69
- text: JSON.stringify({
70
- key: "token123"
71
- })
72
- });
73
- _testdouble.default.when(login("token123")).thenResolve();
74
- _context3.next = 9;
75
- return _auth.Auth.login("login", "password");
76
- case 9:
77
- case "end":
78
- return _context3.stop();
74
+ while (1) {
75
+ switch (_context3.prev = _context3.next) {
76
+ case 0:
77
+ login = _testdouble.default.func();
78
+ response = _testdouble.default.func();
79
+
80
+ _testdouble.default.replace(_api.Api, "getResourceURL", function () {
81
+ return "/api/tokens";
82
+ });
83
+
84
+ _testdouble.default.replace(_auth.Auth, "loginWithToken", login);
85
+
86
+ _testdouble.default.replace(_superagentBluebirdPromise.default.Request.prototype, "promise", response);
87
+
88
+ _testdouble.default.when(response()).thenResolve({
89
+ statusCode: 200,
90
+ text: JSON.stringify({
91
+ key: "token123"
92
+ })
93
+ });
94
+
95
+ _testdouble.default.when(login("token123")).thenResolve();
96
+
97
+ _context3.next = 9;
98
+ return _auth.Auth.login("login", "password");
99
+
100
+ case 9:
101
+ case "end":
102
+ return _context3.stop();
103
+ }
79
104
  }
80
105
  }, _callee3);
81
106
  })));
@@ -1 +1 @@
1
- {"version":3,"file":"auth.spec.js","names":["_api","require","_auth","_api2","_superagentBluebirdPromise","_interopRequireDefault","_testdouble","beforeEach","Auth","_loggedIn","test","_asyncToGenerator2","default","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","G","respondWith","user","loginWithToken","expect","token","toEqual","loggedIn","toBe","stop","_callee2","_callee2$","_context2","first_name","last_name","it","_callee3","login","response","_callee3$","_context3","td","func","replace","Api","superagent","Request","prototype","when","thenResolve","statusCode","text","JSON","stringify","key"],"sources":["../src/auth.spec.js"],"sourcesContent":["import { Api } from \"./api.js\";\nimport { Auth } from \"./auth.js\";\nimport { G } from \"sp-test/api\";\nimport superagent from \"superagent-bluebird-promise\";\nimport td from \"testdouble\";\n\nbeforeEach(() => {\n\tAuth._loggedIn = false;\n});\n\ntest(\"set the token\", async () => {\n\tG(\"TokenModel\").respondWith({ user: G(\"UserModel\") });\n\tG(\"UserModel\").respondWith();\n\tawait Auth.loginWithToken(\"token\");\n\texpect(Auth.token).toEqual(\"token\");\n\texpect(Auth.loggedIn).toBe(true);\n});\n\ntest(\"set the user on success\", async () => {\n\tG(\"TokenModel\").respondWith({ user: G(\"UserModel\") });\n\tG(\"UserModel\").respondWith({ first_name: \"John\", last_name: \"Doe\" });\n\tawait Auth.loginWithToken(\"token\");\n\texpect(Auth.user.first_name).toEqual(\"John\");\n\texpect(Auth.user.last_name).toEqual(\"Doe\");\n});\n\nit(\"return a token from an auth request\", async () => {\n\tconst login = td.func();\n\tconst response = td.func();\n\n\ttd.replace(Api, \"getResourceURL\", () => \"/api/tokens\");\n\ttd.replace(Auth, \"loginWithToken\", login);\n\ttd.replace(superagent.Request.prototype, \"promise\", response);\n\n\ttd.when(response()).thenResolve({\n\t\tstatusCode: 200,\n\t\ttext: JSON.stringify({ key: \"token123\" }),\n\t});\n\ttd.when(login(\"token123\")).thenResolve();\n\n\tawait Auth.login(\"login\", \"password\");\n});\n"],"mappings":"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"}
1
+ {"version":3,"sources":["../src/auth.spec.js"],"names":["beforeEach","Auth","_loggedIn","test","respondWith","user","loginWithToken","expect","token","toEqual","loggedIn","toBe","first_name","last_name","it","login","td","func","response","replace","Api","superagent","Request","prototype","when","thenResolve","statusCode","text","JSON","stringify","key"],"mappings":";;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEAA,UAAU,CAAC,YAAM;AAChBC,aAAKC,SAAL,GAAiB,KAAjB;AACA,CAFS,CAAV;AAIAC,IAAI,CAAC,eAAD,uFAAkB;AAAA;AAAA;AAAA;AAAA;AACrB,uBAAE,YAAF,EAAgBC,WAAhB,CAA4B;AAAEC,YAAAA,IAAI,EAAE,aAAE,WAAF;AAAR,WAA5B;AACA,uBAAE,WAAF,EAAeD,WAAf;AAFqB;AAAA,iBAGfH,WAAKK,cAAL,CAAoB,OAApB,CAHe;;AAAA;AAIrBC,UAAAA,MAAM,CAACN,WAAKO,KAAN,CAAN,CAAmBC,OAAnB,CAA2B,OAA3B;AACAF,UAAAA,MAAM,CAACN,WAAKS,QAAN,CAAN,CAAsBC,IAAtB,CAA2B,IAA3B;;AALqB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAAlB,GAAJ;AAQAR,IAAI,CAAC,yBAAD,uFAA4B;AAAA;AAAA;AAAA;AAAA;AAC/B,uBAAE,YAAF,EAAgBC,WAAhB,CAA4B;AAAEC,YAAAA,IAAI,EAAE,aAAE,WAAF;AAAR,WAA5B;AACA,uBAAE,WAAF,EAAeD,WAAf,CAA2B;AAAEQ,YAAAA,UAAU,EAAE,MAAd;AAAsBC,YAAAA,SAAS,EAAE;AAAjC,WAA3B;AAF+B;AAAA,iBAGzBZ,WAAKK,cAAL,CAAoB,OAApB,CAHyB;;AAAA;AAI/BC,UAAAA,MAAM,CAACN,WAAKI,IAAL,CAAUO,UAAX,CAAN,CAA6BH,OAA7B,CAAqC,MAArC;AACAF,UAAAA,MAAM,CAACN,WAAKI,IAAL,CAAUQ,SAAX,CAAN,CAA4BJ,OAA5B,CAAoC,KAApC;;AAL+B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAA5B,GAAJ;AAQAK,EAAE,CAAC,qCAAD,uFAAwC;AAAA;AAAA;AAAA;AAAA;AAAA;AACnCC,UAAAA,KADmC,GAC3BC,oBAAGC,IAAH,EAD2B;AAEnCC,UAAAA,QAFmC,GAExBF,oBAAGC,IAAH,EAFwB;;AAIzCD,8BAAGG,OAAH,CAAWC,QAAX,EAAgB,gBAAhB,EAAkC;AAAA,mBAAM,aAAN;AAAA,WAAlC;;AACAJ,8BAAGG,OAAH,CAAWlB,UAAX,EAAiB,gBAAjB,EAAmCc,KAAnC;;AACAC,8BAAGG,OAAH,CAAWE,mCAAWC,OAAX,CAAmBC,SAA9B,EAAyC,SAAzC,EAAoDL,QAApD;;AAEAF,8BAAGQ,IAAH,CAAQN,QAAQ,EAAhB,EAAoBO,WAApB,CAAgC;AAC/BC,YAAAA,UAAU,EAAE,GADmB;AAE/BC,YAAAA,IAAI,EAAEC,IAAI,CAACC,SAAL,CAAe;AAAEC,cAAAA,GAAG,EAAE;AAAP,aAAf;AAFyB,WAAhC;;AAIAd,8BAAGQ,IAAH,CAAQT,KAAK,CAAC,UAAD,CAAb,EAA2BU,WAA3B;;AAZyC;AAAA,iBAcnCxB,WAAKc,KAAL,CAAW,OAAX,EAAoB,UAApB,CAdmC;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAAxC,GAAF","sourcesContent":["import { Api } from \"./api.js\";\nimport { Auth } from \"./auth.js\";\nimport { G } from \"sp-test/api\";\nimport superagent from \"superagent-bluebird-promise\";\nimport td from \"testdouble\";\n\nbeforeEach(() => {\n\tAuth._loggedIn = false;\n});\n\ntest(\"set the token\", async () => {\n\tG(\"TokenModel\").respondWith({ user: G(\"UserModel\") });\n\tG(\"UserModel\").respondWith();\n\tawait Auth.loginWithToken(\"token\");\n\texpect(Auth.token).toEqual(\"token\");\n\texpect(Auth.loggedIn).toBe(true);\n});\n\ntest(\"set the user on success\", async () => {\n\tG(\"TokenModel\").respondWith({ user: G(\"UserModel\") });\n\tG(\"UserModel\").respondWith({ first_name: \"John\", last_name: \"Doe\" });\n\tawait Auth.loginWithToken(\"token\");\n\texpect(Auth.user.first_name).toEqual(\"John\");\n\texpect(Auth.user.last_name).toEqual(\"Doe\");\n});\n\nit(\"return a token from an auth request\", async () => {\n\tconst login = td.func();\n\tconst response = td.func();\n\n\ttd.replace(Api, \"getResourceURL\", () => \"/api/tokens\");\n\ttd.replace(Auth, \"loginWithToken\", login);\n\ttd.replace(superagent.Request.prototype, \"promise\", response);\n\n\ttd.when(response()).thenResolve({\n\t\tstatusCode: 200,\n\t\ttext: JSON.stringify({ key: \"token123\" }),\n\t});\n\ttd.when(login(\"token123\")).thenResolve();\n\n\tawait Auth.login(\"login\", \"password\");\n});\n"],"file":"auth.spec.js"}
package/cjs/caching.js CHANGED
@@ -7,14 +7,19 @@ exports.IGNORE = exports.FOREVER = void 0;
7
7
  exports.daysToSeconds = daysToSeconds;
8
8
  exports.hoursToSeconds = hoursToSeconds;
9
9
  exports.minutesToSeconds = minutesToSeconds;
10
- var FOREVER = exports.FOREVER = "forever";
11
- var IGNORE = exports.IGNORE = 0;
10
+ var FOREVER = "forever";
11
+ exports.FOREVER = FOREVER;
12
+ var IGNORE = 0;
13
+ exports.IGNORE = IGNORE;
14
+
12
15
  function minutesToSeconds(minutes) {
13
16
  return minutes * 60;
14
17
  }
18
+
15
19
  function hoursToSeconds(hours) {
16
20
  return minutesToSeconds(hours * 60);
17
21
  }
22
+
18
23
  function daysToSeconds(days) {
19
24
  return hoursToSeconds(days * 24);
20
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"caching.js","names":["FOREVER","exports","IGNORE","minutesToSeconds","minutes","hoursToSeconds","hours","daysToSeconds","days"],"sources":["../src/caching.js"],"sourcesContent":["export const FOREVER = \"forever\";\nexport const IGNORE = 0;\n\nexport function minutesToSeconds(minutes) {\n\treturn minutes * 60;\n}\n\nexport function hoursToSeconds(hours) {\n\treturn minutesToSeconds(hours * 60);\n}\n\nexport function daysToSeconds(days) {\n\treturn hoursToSeconds(days * 24);\n}\n"],"mappings":";;;;;;;;;AAAO,IAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG,SAAS;AACzB,IAAME,MAAM,GAAAD,OAAA,CAAAC,MAAA,GAAG,CAAC;AAEhB,SAASC,gBAAgBA,CAACC,OAAO,EAAE;EACzC,OAAOA,OAAO,GAAG,EAAE;AACpB;AAEO,SAASC,cAAcA,CAACC,KAAK,EAAE;EACrC,OAAOH,gBAAgB,CAACG,KAAK,GAAG,EAAE,CAAC;AACpC;AAEO,SAASC,aAAaA,CAACC,IAAI,EAAE;EACnC,OAAOH,cAAc,CAACG,IAAI,GAAG,EAAE,CAAC;AACjC"}
1
+ {"version":3,"sources":["../src/caching.js"],"names":["FOREVER","IGNORE","minutesToSeconds","minutes","hoursToSeconds","hours","daysToSeconds","days"],"mappings":";;;;;;;;;AAAO,IAAMA,OAAO,GAAG,SAAhB;;AACA,IAAMC,MAAM,GAAG,CAAf;;;AAEA,SAASC,gBAAT,CAA0BC,OAA1B,EAAmC;AACzC,SAAOA,OAAO,GAAG,EAAjB;AACA;;AAEM,SAASC,cAAT,CAAwBC,KAAxB,EAA+B;AACrC,SAAOH,gBAAgB,CAACG,KAAK,GAAG,EAAT,CAAvB;AACA;;AAEM,SAASC,aAAT,CAAuBC,IAAvB,EAA6B;AACnC,SAAOH,cAAc,CAACG,IAAI,GAAG,EAAR,CAArB;AACA","sourcesContent":["export const FOREVER = \"forever\";\nexport const IGNORE = 0;\n\nexport function minutesToSeconds(minutes) {\n\treturn minutes * 60;\n}\n\nexport function hoursToSeconds(hours) {\n\treturn minutesToSeconds(hours * 60);\n}\n\nexport function daysToSeconds(days) {\n\treturn hoursToSeconds(days * 24);\n}\n"],"file":"caching.js"}