@livepreso/api 6.46.0 → 6.48.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 (365) 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 +29 -0
  4. package/CHANGELOG.md +15 -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 +14 -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-backends.js +28 -0
  95. package/cjs/collections/signing-backends.js.map +1 -0
  96. package/cjs/collections/signing-requests.js +28 -0
  97. package/cjs/collections/signing-requests.js.map +1 -0
  98. package/cjs/collections/slide-selections.js +9 -1
  99. package/cjs/collections/slide-selections.js.map +1 -1
  100. package/cjs/collections/slides.js +9 -1
  101. package/cjs/collections/slides.js.map +1 -1
  102. package/cjs/collections/snapshots.js +9 -1
  103. package/cjs/collections/snapshots.js.map +1 -1
  104. package/cjs/collections/sub-slides.js +9 -1
  105. package/cjs/collections/sub-slides.js.map +1 -1
  106. package/cjs/collections/tags.js +9 -1
  107. package/cjs/collections/tags.js.map +1 -1
  108. package/cjs/collections/teams.js +9 -1
  109. package/cjs/collections/teams.js.map +1 -1
  110. package/cjs/collections/templates.js +9 -1
  111. package/cjs/collections/templates.js.map +1 -1
  112. package/cjs/collections/uploads.js +9 -1
  113. package/cjs/collections/uploads.js.map +1 -1
  114. package/cjs/collections/users.js +9 -1
  115. package/cjs/collections/users.js.map +1 -1
  116. package/cjs/collections.js +129 -11
  117. package/cjs/collections.js.map +1 -1
  118. package/cjs/fixtures.js +60 -15
  119. package/cjs/fixtures.js.map +1 -1
  120. package/cjs/index.js +36 -2
  121. package/cjs/index.js.map +1 -1
  122. package/cjs/log.js +1 -0
  123. package/cjs/log.js.map +1 -1
  124. package/cjs/middleware.js +7 -2
  125. package/cjs/middleware.js.map +1 -1
  126. package/cjs/middlewares/auth.js +17 -1
  127. package/cjs/middlewares/auth.js.map +1 -1
  128. package/cjs/middlewares/base.js +9 -3
  129. package/cjs/middlewares/base.js.map +1 -1
  130. package/cjs/middlewares/json.js +19 -1
  131. package/cjs/middlewares/json.js.map +1 -1
  132. package/cjs/middlewares/redirect.js +21 -5
  133. package/cjs/middlewares/redirect.js.map +1 -1
  134. package/cjs/models/activity-item.js +28 -5
  135. package/cjs/models/activity-item.js.map +1 -1
  136. package/cjs/models/adjunct-section.js +19 -1
  137. package/cjs/models/adjunct-section.js.map +1 -1
  138. package/cjs/models/adjunct-slide.js +19 -1
  139. package/cjs/models/adjunct-slide.js.map +1 -1
  140. package/cjs/models/adjunct-sub-slide.js +16 -1
  141. package/cjs/models/adjunct-sub-slide.js.map +1 -1
  142. package/cjs/models/adjunct.js +22 -6
  143. package/cjs/models/adjunct.js.map +1 -1
  144. package/cjs/models/api.js +6 -1
  145. package/cjs/models/api.js.map +1 -1
  146. package/cjs/models/appointment-adjunct-tags.js +13 -1
  147. package/cjs/models/appointment-adjunct-tags.js.map +1 -1
  148. package/cjs/models/appointment-deckversion-tags.js +13 -1
  149. package/cjs/models/appointment-deckversion-tags.js.map +1 -1
  150. package/cjs/models/appointment-editor.js +14 -1
  151. package/cjs/models/appointment-editor.js.map +1 -1
  152. package/cjs/models/appointment-section-tags.js +13 -1
  153. package/cjs/models/appointment-section-tags.js.map +1 -1
  154. package/cjs/models/appointment-slide-tags.js +13 -1
  155. package/cjs/models/appointment-slide-tags.js.map +1 -1
  156. package/cjs/models/appointment-stats.js +11 -1
  157. package/cjs/models/appointment-stats.js.map +1 -1
  158. package/cjs/models/appointment-tags.js +10 -1
  159. package/cjs/models/appointment-tags.js.map +1 -1
  160. package/cjs/models/appointment-template.js +6 -1
  161. package/cjs/models/appointment-template.js.map +1 -1
  162. package/cjs/models/appointment-viewing.js +8 -1
  163. package/cjs/models/appointment-viewing.js.map +1 -1
  164. package/cjs/models/appointment.js +98 -20
  165. package/cjs/models/appointment.js.map +1 -1
  166. package/cjs/models/asset.js +12 -1
  167. package/cjs/models/asset.js.map +1 -1
  168. package/cjs/models/auto-adjunct-key-check.js +15 -1
  169. package/cjs/models/auto-adjunct-key-check.js.map +1 -1
  170. package/cjs/models/auto-adjunct.js +13 -1
  171. package/cjs/models/auto-adjunct.js.map +1 -1
  172. package/cjs/models/base.js +230 -59
  173. package/cjs/models/base.js.map +1 -1
  174. package/cjs/models/base.spec.js +31 -0
  175. package/cjs/models/base.spec.js.map +1 -1
  176. package/cjs/models/choicelist.js +8 -1
  177. package/cjs/models/choicelist.js.map +1 -1
  178. package/cjs/models/cms-val.js +26 -5
  179. package/cjs/models/cms-val.js.map +1 -1
  180. package/cjs/models/cms-val.spec.js +19 -12
  181. package/cjs/models/cms-val.spec.js.map +1 -1
  182. package/cjs/models/contact-phone.js +13 -1
  183. package/cjs/models/contact-phone.js.map +1 -1
  184. package/cjs/models/contact.js +18 -1
  185. package/cjs/models/contact.js.map +1 -1
  186. package/cjs/models/customer.js +30 -3
  187. package/cjs/models/customer.js.map +1 -1
  188. package/cjs/models/deck-note.js +9 -1
  189. package/cjs/models/deck-note.js.map +1 -1
  190. package/cjs/models/deck-tags.js +15 -1
  191. package/cjs/models/deck-tags.js.map +1 -1
  192. package/cjs/models/deck-version-screenshot.js +13 -1
  193. package/cjs/models/deck-version-screenshot.js.map +1 -1
  194. package/cjs/models/deck-version.js +38 -12
  195. package/cjs/models/deck-version.js.map +1 -1
  196. package/cjs/models/deck.js +14 -1
  197. package/cjs/models/deck.js.map +1 -1
  198. package/cjs/models/dispatch-preview.js +13 -1
  199. package/cjs/models/dispatch-preview.js.map +1 -1
  200. package/cjs/models/dispatch.js +37 -2
  201. package/cjs/models/dispatch.js.map +1 -1
  202. package/cjs/models/envs.js +6 -1
  203. package/cjs/models/envs.js.map +1 -1
  204. package/cjs/models/event-object.js +11 -1
  205. package/cjs/models/event-object.js.map +1 -1
  206. package/cjs/models/event.js +13 -1
  207. package/cjs/models/event.js.map +1 -1
  208. package/cjs/models/feed-data.js +13 -1
  209. package/cjs/models/feed-data.js.map +1 -1
  210. package/cjs/models/file.js +11 -1
  211. package/cjs/models/file.js.map +1 -1
  212. package/cjs/models/group.js +11 -1
  213. package/cjs/models/group.js.map +1 -1
  214. package/cjs/models/handover.js +13 -1
  215. package/cjs/models/handover.js.map +1 -1
  216. package/cjs/models/hosted-preso.js +20 -2
  217. package/cjs/models/hosted-preso.js.map +1 -1
  218. package/cjs/models/image.js +16 -1
  219. package/cjs/models/image.js.map +1 -1
  220. package/cjs/models/location.js +13 -1
  221. package/cjs/models/location.js.map +1 -1
  222. package/cjs/models/manifest-json.js +88 -21
  223. package/cjs/models/manifest-json.js.map +1 -1
  224. package/cjs/models/onshare.js +14 -1
  225. package/cjs/models/onshare.js.map +1 -1
  226. package/cjs/models/opportunity.js +14 -1
  227. package/cjs/models/opportunity.js.map +1 -1
  228. package/cjs/models/pack-diff.js +14 -1
  229. package/cjs/models/pack-diff.js.map +1 -1
  230. package/cjs/models/pack.js +12 -1
  231. package/cjs/models/pack.js.map +1 -1
  232. package/cjs/models/preset.js +21 -2
  233. package/cjs/models/preset.js.map +1 -1
  234. package/cjs/models/refresh-request.js +11 -17
  235. package/cjs/models/refresh-request.js.map +1 -1
  236. package/cjs/models/room.js +9 -1
  237. package/cjs/models/room.js.map +1 -1
  238. package/cjs/models/salesforce-lookup.js +12 -1
  239. package/cjs/models/salesforce-lookup.js.map +1 -1
  240. package/cjs/models/section-selection.js +14 -1
  241. package/cjs/models/section-selection.js.map +1 -1
  242. package/cjs/models/section.js +14 -1
  243. package/cjs/models/section.js.map +1 -1
  244. package/cjs/models/signer.js +47 -0
  245. package/cjs/models/signer.js.map +1 -0
  246. package/cjs/models/signing-backend.js +39 -0
  247. package/cjs/models/signing-backend.js.map +1 -0
  248. package/cjs/models/signing-request.js +66 -0
  249. package/cjs/models/signing-request.js.map +1 -0
  250. package/cjs/models/slide-selection.js +14 -1
  251. package/cjs/models/slide-selection.js.map +1 -1
  252. package/cjs/models/slide.js +14 -1
  253. package/cjs/models/slide.js.map +1 -1
  254. package/cjs/models/snapshot.js +21 -4
  255. package/cjs/models/snapshot.js.map +1 -1
  256. package/cjs/models/snapshot.spec.js +32 -25
  257. package/cjs/models/snapshot.spec.js.map +1 -1
  258. package/cjs/models/sub-slide.js +12 -1
  259. package/cjs/models/sub-slide.js.map +1 -1
  260. package/cjs/models/support-ticket.js +11 -1
  261. package/cjs/models/support-ticket.js.map +1 -1
  262. package/cjs/models/tag.js +13 -1
  263. package/cjs/models/tag.js.map +1 -1
  264. package/cjs/models/team.js +13 -1
  265. package/cjs/models/team.js.map +1 -1
  266. package/cjs/models/template.js +78 -48
  267. package/cjs/models/template.js.map +1 -1
  268. package/cjs/models/tenancy.js +11 -1
  269. package/cjs/models/tenancy.js.map +1 -1
  270. package/cjs/models/timing-log.js +78 -21
  271. package/cjs/models/timing-log.js.map +1 -1
  272. package/cjs/models/timing-log.spec.js +37 -24
  273. package/cjs/models/timing-log.spec.js.map +1 -1
  274. package/cjs/models/token.js +11 -1
  275. package/cjs/models/token.js.map +1 -1
  276. package/cjs/models/transcribe-socket.js +8 -1
  277. package/cjs/models/transcribe-socket.js.map +1 -1
  278. package/cjs/models/upload.js +7 -1
  279. package/cjs/models/upload.js.map +1 -1
  280. package/cjs/models/user.js +37 -12
  281. package/cjs/models/user.js.map +1 -1
  282. package/cjs/models/user.spec.js +30 -20
  283. package/cjs/models/user.spec.js.map +1 -1
  284. package/cjs/models.js +173 -11
  285. package/cjs/models.js.map +1 -1
  286. package/cjs/presentation/appointment-presentation.js +35 -9
  287. package/cjs/presentation/appointment-presentation.js.map +1 -1
  288. package/cjs/presentation/base-presentation-collection.js +7 -1
  289. package/cjs/presentation/base-presentation-collection.js.map +1 -1
  290. package/cjs/presentation/base-presentation-model.js +65 -22
  291. package/cjs/presentation/base-presentation-model.js.map +1 -1
  292. package/cjs/presentation/base-presentation-model.spec.js +27 -6
  293. package/cjs/presentation/base-presentation-model.spec.js.map +1 -1
  294. package/cjs/presentation/presentation-deck.js +82 -41
  295. package/cjs/presentation/presentation-deck.js.map +1 -1
  296. package/cjs/presentation/presentation-deck.spec.js +95 -72
  297. package/cjs/presentation/presentation-deck.spec.js.map +1 -1
  298. package/cjs/presentation/presentation-decks.js +9 -1
  299. package/cjs/presentation/presentation-decks.js.map +1 -1
  300. package/cjs/presentation/presentation-section.js +74 -9
  301. package/cjs/presentation/presentation-section.js.map +1 -1
  302. package/cjs/presentation/presentation-section.spec.js +268 -215
  303. package/cjs/presentation/presentation-section.spec.js.map +1 -1
  304. package/cjs/presentation/presentation-sections.js +9 -1
  305. package/cjs/presentation/presentation-sections.js.map +1 -1
  306. package/cjs/presentation/presentation-slide.js +77 -16
  307. package/cjs/presentation/presentation-slide.js.map +1 -1
  308. package/cjs/presentation/presentation-slide.spec.js +187 -147
  309. package/cjs/presentation/presentation-slide.spec.js.map +1 -1
  310. package/cjs/presentation/presentation-slides.js +9 -1
  311. package/cjs/presentation/presentation-slides.js.map +1 -1
  312. package/cjs/presentation/presentation-subslide.js +23 -3
  313. package/cjs/presentation/presentation-subslide.js.map +1 -1
  314. package/cjs/presentation/presentation-subslide.spec.js +135 -111
  315. package/cjs/presentation/presentation-subslide.spec.js.map +1 -1
  316. package/cjs/presentation/presentation-subslides.js +9 -1
  317. package/cjs/presentation/presentation-subslides.js.map +1 -1
  318. package/cjs/presentation/presentation.js +115 -61
  319. package/cjs/presentation/presentation.js.map +1 -1
  320. package/cjs/presentation.js +20 -0
  321. package/cjs/presentation.js.map +1 -1
  322. package/cjs/selections.js +29 -4
  323. package/cjs/selections.js.map +1 -1
  324. package/cjs/state-register.js +11 -3
  325. package/cjs/state-register.js.map +1 -1
  326. package/cjs/sync.js +76 -32
  327. package/cjs/sync.js.map +1 -1
  328. package/cjs/utils.js +49 -21
  329. package/cjs/utils.js.map +1 -1
  330. package/cjs/utils.spec.js +5 -1
  331. package/cjs/utils.spec.js.map +1 -1
  332. package/package.json +4 -4
  333. package/src/collections/dispatches.js +1 -0
  334. package/src/collections/signers.js +18 -0
  335. package/src/collections/signing-backends.js +18 -0
  336. package/src/collections/signing-requests.js +18 -0
  337. package/src/collections.js +3 -1
  338. package/src/fixtures.js +11 -9
  339. package/src/index.js +2 -3
  340. package/src/models/activity-item.js +7 -0
  341. package/src/models/appointment.js +3 -0
  342. package/src/models/base.js +19 -0
  343. package/src/models/deck-tags.js +4 -0
  344. package/src/models/deck-version.js +1 -9
  345. package/src/models/dispatch.js +14 -1
  346. package/src/models/hosted-preso.js +4 -0
  347. package/src/models/manifest-json.js +9 -0
  348. package/src/models/preset.js +1 -0
  349. package/src/models/refresh-request.js +0 -14
  350. package/src/models/signer.js +37 -0
  351. package/src/models/signing-backend.js +29 -0
  352. package/src/models/signing-request.js +55 -0
  353. package/src/models/snapshot.js +4 -0
  354. package/src/models/user.js +9 -10
  355. package/src/models.js +3 -1
  356. package/src/presentation/presentation-section.spec.js +12 -13
  357. package/src/presentation/presentation-slide.spec.js +11 -12
  358. package/src/presentation/presentation-subslide.spec.js +11 -11
  359. package/src/utils.spec.js +4 -4
  360. package/cjs/collections/appointment-duplicates.js +0 -21
  361. package/cjs/collections/appointment-duplicates.js.map +0 -1
  362. package/cjs/models/appointment-duplicate.js +0 -72
  363. package/cjs/models/appointment-duplicate.js.map +0 -1
  364. package/src/collections/appointment-duplicates.js +0 -19
  365. package/src/models/appointment-duplicate.js +0 -73
@@ -1,26 +1,40 @@
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.CMSValModel = void 0;
9
+
8
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
+
9
12
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+
10
14
  require("./user.js");
15
+
11
16
  require("./team.js");
17
+
12
18
  require("./deck.js");
19
+
13
20
  var _base = require("../models/base.js");
21
+
14
22
  var _stateRegister = require("../state-register.js");
23
+
15
24
  var _utils = require("../utils.js");
16
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
17
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
25
+
26
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
27
+
28
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
29
+
18
30
  /**
19
31
  * @constructor
20
32
  * @alias models.CMSValModel
21
33
  * @extends models.BaseModel
22
34
  */
23
- var CMSValModel = exports.CMSValModel = _base.BaseModel.extend( /** @lends models.CMSValModel# */{
35
+ var CMSValModel = _base.BaseModel.extend(
36
+ /** @lends models.CMSValModel# */
37
+ {
24
38
  modelName: "cmsvals",
25
39
  props: {
26
40
  modified_date: "date",
@@ -31,6 +45,7 @@ var CMSValModel = exports.CMSValModel = _base.BaseModel.extend( /** @lends model
31
45
  value: "string",
32
46
  _tenancy: "object"
33
47
  },
48
+
34
49
  /**
35
50
  * @property {models.UserModel} user
36
51
  * @property {models.DeckModel} deck
@@ -53,15 +68,18 @@ var CMSValModel = exports.CMSValModel = _base.BaseModel.extend( /** @lends model
53
68
  this._url = _base.BaseModel.prototype.url.apply(this, arguments);
54
69
  }
55
70
  }
71
+
56
72
  return this._url;
57
73
  },
58
74
  toJSON: function toJSON() {
59
75
  var data = _base.BaseModel.prototype.toJSON.apply(this, arguments);
76
+
60
77
  data.user = this.user ? this.user.url() : undefined;
61
78
  return data;
62
79
  },
63
80
  toServer: function toServer() {
64
81
  var obj = _base.BaseModel.prototype.toServer.call(this);
82
+
65
83
  return _objectSpread(_objectSpread({}, obj), {}, {
66
84
  // We shouldn't allow any base64 to get in here, otherwise it can
67
85
  // KO all users appointments.
@@ -73,12 +91,15 @@ var CMSValModel = exports.CMSValModel = _base.BaseModel.extend( /** @lends model
73
91
  var wanted = ["key", "value", "mime", "scope"];
74
92
  var compact = Object.fromEntries(Object.entries(json).filter(function (_ref) {
75
93
  var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
76
- key = _ref2[0],
77
- val = _ref2[1];
94
+ key = _ref2[0],
95
+ val = _ref2[1];
96
+
78
97
  return wanted.includes(key);
79
98
  }));
80
99
  return compact;
81
100
  }
82
101
  });
102
+
103
+ exports.CMSValModel = CMSValModel;
83
104
  (0, _stateRegister.register)("CMSValModel", CMSValModel);
84
105
  //# sourceMappingURL=cms-val.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cms-val.js","names":["require","_base","_stateRegister","_utils","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","CMSValModel","exports","BaseModel","extend","modelName","props","modified_date","created_date","key","scope","mime","value","_tenancy","children","user","deck","team","url","_url","id","model","baseURL","concat","prototype","toJSON","data","undefined","toServer","obj","call","sanitizeBase64","toCompactJSON","json","wanted","compact","fromEntries","entries","_ref","_ref2","_slicedToArray2","val","includes","register"],"sources":["../../src/models/cms-val.js"],"sourcesContent":["import \"./user.js\";\nimport \"./team.js\";\nimport \"./deck.js\";\n\nimport { BaseModel } from \"../models/base.js\";\nimport { register } from \"../state-register.js\";\nimport { sanitizeBase64 } from \"../utils.js\";\n\n/**\n * @constructor\n * @alias models.CMSValModel\n * @extends models.BaseModel\n */\nexport const CMSValModel = BaseModel.extend(\n\t/** @lends models.CMSValModel# */ {\n\t\tmodelName: \"cmsvals\",\n\n\t\tprops: {\n\t\t\tmodified_date: \"date\",\n\t\t\tcreated_date: \"date\",\n\t\t\tkey: \"string\",\n\t\t\tscope: \"string\",\n\t\t\tmime: \"string\",\n\t\t\tvalue: \"string\",\n\t\t\t_tenancy: \"object\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.UserModel} user\n\t\t * @property {models.DeckModel} deck\n\t\t * @property {models.TeamModel} team\n\t\t */\n\t\tchildren: {\n\t\t\tuser: \"UserModel\",\n\t\t\tdeck: \"DeckModel\",\n\t\t\tteam: \"TeamModel\",\n\t\t},\n\n\t\turl() {\n\t\t\tif (!this._url) {\n\t\t\t\tif (this.id && this.key) {\n\t\t\t\t\tconst model = new CMSValModel({ key: this.key });\n\t\t\t\t\tconst baseURL = model.url();\n\t\t\t\t\tthis._url = `${baseURL}${this.key}/`;\n\t\t\t\t} else {\n\t\t\t\t\tthis._url = BaseModel.prototype.url.apply(this, arguments);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn this._url;\n\t\t},\n\n\t\ttoJSON() {\n\t\t\tconst data = BaseModel.prototype.toJSON.apply(this, arguments);\n\n\t\t\tdata.user = this.user ? this.user.url() : undefined;\n\n\t\t\treturn data;\n\t\t},\n\n\t\ttoServer() {\n\t\t\tconst obj = BaseModel.prototype.toServer.call(this);\n\t\t\treturn {\n\t\t\t\t...obj,\n\t\t\t\t// We shouldn't allow any base64 to get in here, otherwise it can\n\t\t\t\t// KO all users appointments.\n\t\t\t\tvalue: sanitizeBase64(obj.value),\n\t\t\t};\n\t\t},\n\n\t\ttoCompactJSON() {\n\t\t\tconst json = this.toJSON();\n\t\t\tconst wanted = [\"key\", \"value\", \"mime\", \"scope\"];\n\n\t\t\tconst compact = Object.fromEntries(\n\t\t\t\tObject.entries(json).filter(([key, val]) => wanted.includes(key)),\n\t\t\t);\n\n\t\t\treturn compact;\n\t\t},\n\t},\n);\n\nregister(\"CMSValModel\", CMSValModel);\n"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/models/cms-val.js"],"names":["CMSValModel","BaseModel","extend","modelName","props","modified_date","created_date","key","scope","mime","value","_tenancy","children","user","deck","team","url","_url","id","model","baseURL","prototype","apply","arguments","toJSON","data","undefined","toServer","obj","call","toCompactJSON","json","wanted","compact","Object","fromEntries","entries","filter","val","includes"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AACA;;;;;;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMA,WAAW,GAAGC,gBAAUC,MAAV;AAC1B;AAAkC;AACjCC,EAAAA,SAAS,EAAE,SADsB;AAGjCC,EAAAA,KAAK,EAAE;AACNC,IAAAA,aAAa,EAAE,MADT;AAENC,IAAAA,YAAY,EAAE,MAFR;AAGNC,IAAAA,GAAG,EAAE,QAHC;AAINC,IAAAA,KAAK,EAAE,QAJD;AAKNC,IAAAA,IAAI,EAAE,QALA;AAMNC,IAAAA,KAAK,EAAE,QAND;AAONC,IAAAA,QAAQ,EAAE;AAPJ,GAH0B;;AAajC;AACF;AACA;AACA;AACA;AACEC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,IAAI,EAAE,WADG;AAETC,IAAAA,IAAI,EAAE,WAFG;AAGTC,IAAAA,IAAI,EAAE;AAHG,GAlBuB;AAwBjCC,EAAAA,GAxBiC,iBAwB3B;AACL,QAAI,CAAC,KAAKC,IAAV,EAAgB;AACf,UAAI,KAAKC,EAAL,IAAW,KAAKX,GAApB,EAAyB;AACxB,YAAMY,KAAK,GAAG,IAAInB,WAAJ,CAAgB;AAAEO,UAAAA,GAAG,EAAE,KAAKA;AAAZ,SAAhB,CAAd;AACA,YAAMa,OAAO,GAAGD,KAAK,CAACH,GAAN,EAAhB;AACA,aAAKC,IAAL,aAAeG,OAAf,SAAyB,KAAKb,GAA9B;AACA,OAJD,MAIO;AACN,aAAKU,IAAL,GAAYhB,gBAAUoB,SAAV,CAAoBL,GAApB,CAAwBM,KAAxB,CAA8B,IAA9B,EAAoCC,SAApC,CAAZ;AACA;AACD;;AAED,WAAO,KAAKN,IAAZ;AACA,GApCgC;AAsCjCO,EAAAA,MAtCiC,oBAsCxB;AACR,QAAMC,IAAI,GAAGxB,gBAAUoB,SAAV,CAAoBG,MAApB,CAA2BF,KAA3B,CAAiC,IAAjC,EAAuCC,SAAvC,CAAb;;AAEAE,IAAAA,IAAI,CAACZ,IAAL,GAAY,KAAKA,IAAL,GAAY,KAAKA,IAAL,CAAUG,GAAV,EAAZ,GAA8BU,SAA1C;AAEA,WAAOD,IAAP;AACA,GA5CgC;AA8CjCE,EAAAA,QA9CiC,sBA8CtB;AACV,QAAMC,GAAG,GAAG3B,gBAAUoB,SAAV,CAAoBM,QAApB,CAA6BE,IAA7B,CAAkC,IAAlC,CAAZ;;AACA,2CACID,GADJ;AAEC;AACA;AACAlB,MAAAA,KAAK,EAAE,2BAAekB,GAAG,CAAClB,KAAnB;AAJR;AAMA,GAtDgC;AAwDjCoB,EAAAA,aAxDiC,2BAwDjB;AACf,QAAMC,IAAI,GAAG,KAAKP,MAAL,EAAb;AACA,QAAMQ,MAAM,GAAG,CAAC,KAAD,EAAQ,OAAR,EAAiB,MAAjB,EAAyB,OAAzB,CAAf;AAEA,QAAMC,OAAO,GAAGC,MAAM,CAACC,WAAP,CACfD,MAAM,CAACE,OAAP,CAAeL,IAAf,EAAqBM,MAArB,CAA4B;AAAA;AAAA,UAAE9B,GAAF;AAAA,UAAO+B,GAAP;;AAAA,aAAgBN,MAAM,CAACO,QAAP,CAAgBhC,GAAhB,CAAhB;AAAA,KAA5B,CADe,CAAhB;AAIA,WAAO0B,OAAP;AACA;AAjEgC,CADR,CAApB;;;AAsEP,6BAAS,aAAT,EAAwBjC,WAAxB","sourcesContent":["import \"./user.js\";\nimport \"./team.js\";\nimport \"./deck.js\";\n\nimport { BaseModel } from \"../models/base.js\";\nimport { register } from \"../state-register.js\";\nimport { sanitizeBase64 } from \"../utils.js\";\n\n/**\n * @constructor\n * @alias models.CMSValModel\n * @extends models.BaseModel\n */\nexport const CMSValModel = BaseModel.extend(\n\t/** @lends models.CMSValModel# */ {\n\t\tmodelName: \"cmsvals\",\n\n\t\tprops: {\n\t\t\tmodified_date: \"date\",\n\t\t\tcreated_date: \"date\",\n\t\t\tkey: \"string\",\n\t\t\tscope: \"string\",\n\t\t\tmime: \"string\",\n\t\t\tvalue: \"string\",\n\t\t\t_tenancy: \"object\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.UserModel} user\n\t\t * @property {models.DeckModel} deck\n\t\t * @property {models.TeamModel} team\n\t\t */\n\t\tchildren: {\n\t\t\tuser: \"UserModel\",\n\t\t\tdeck: \"DeckModel\",\n\t\t\tteam: \"TeamModel\",\n\t\t},\n\n\t\turl() {\n\t\t\tif (!this._url) {\n\t\t\t\tif (this.id && this.key) {\n\t\t\t\t\tconst model = new CMSValModel({ key: this.key });\n\t\t\t\t\tconst baseURL = model.url();\n\t\t\t\t\tthis._url = `${baseURL}${this.key}/`;\n\t\t\t\t} else {\n\t\t\t\t\tthis._url = BaseModel.prototype.url.apply(this, arguments);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn this._url;\n\t\t},\n\n\t\ttoJSON() {\n\t\t\tconst data = BaseModel.prototype.toJSON.apply(this, arguments);\n\n\t\t\tdata.user = this.user ? this.user.url() : undefined;\n\n\t\t\treturn data;\n\t\t},\n\n\t\ttoServer() {\n\t\t\tconst obj = BaseModel.prototype.toServer.call(this);\n\t\t\treturn {\n\t\t\t\t...obj,\n\t\t\t\t// We shouldn't allow any base64 to get in here, otherwise it can\n\t\t\t\t// KO all users appointments.\n\t\t\t\tvalue: sanitizeBase64(obj.value),\n\t\t\t};\n\t\t},\n\n\t\ttoCompactJSON() {\n\t\t\tconst json = this.toJSON();\n\t\t\tconst wanted = [\"key\", \"value\", \"mime\", \"scope\"];\n\n\t\t\tconst compact = Object.fromEntries(\n\t\t\t\tObject.entries(json).filter(([key, val]) => wanted.includes(key)),\n\t\t\t);\n\n\t\t\treturn compact;\n\t\t},\n\t},\n);\n\nregister(\"CMSValModel\", CMSValModel);\n"],"file":"cms-val.js"}
@@ -1,24 +1,31 @@
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("sp-test/api");
10
+
7
11
  it("should remove large base64 strings from value when saving", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
8
12
  var CMSValModel, largeBase64, cmsVal;
9
13
  return _regenerator.default.wrap(function _callee$(_context) {
10
- while (1) switch (_context.prev = _context.next) {
11
- case 0:
12
- CMSValModel = (0, _api.G)("CMSValModel");
13
- largeBase64 = "data:image/gif;base64," + new Array(50000).fill("a").join("");
14
- cmsVal = new CMSValModel({
15
- mime: "image",
16
- value: largeBase64
17
- });
18
- expect(cmsVal.toServer().value).toEqual("");
19
- case 4:
20
- case "end":
21
- return _context.stop();
14
+ while (1) {
15
+ switch (_context.prev = _context.next) {
16
+ case 0:
17
+ CMSValModel = (0, _api.G)("CMSValModel");
18
+ largeBase64 = "data:image/gif;base64," + new Array(50000).fill("a").join("");
19
+ cmsVal = new CMSValModel({
20
+ mime: "image",
21
+ value: largeBase64
22
+ });
23
+ expect(cmsVal.toServer().value).toEqual("");
24
+
25
+ case 4:
26
+ case "end":
27
+ return _context.stop();
28
+ }
22
29
  }
23
30
  }, _callee);
24
31
  })));
@@ -1 +1 @@
1
- {"version":3,"file":"cms-val.spec.js","names":["_api","require","it","_asyncToGenerator2","default","_regenerator","mark","_callee","CMSValModel","largeBase64","cmsVal","wrap","_callee$","_context","prev","next","G","Array","fill","join","mime","value","expect","toServer","toEqual","stop"],"sources":["../../src/models/cms-val.spec.js"],"sourcesContent":["import { G } from \"sp-test/api\";\n\nit(\"should remove large base64 strings from value when saving\", async () => {\n\tconst CMSValModel = G(\"CMSValModel\");\n\tconst largeBase64 =\n\t\t\"data:image/gif;base64,\" + new Array(50_000).fill(\"a\").join(\"\");\n\n\tconst cmsVal = new CMSValModel({\n\t\tmime: \"image\",\n\t\tvalue: largeBase64,\n\t});\n\n\texpect(cmsVal.toServer().value).toEqual(\"\");\n});\n"],"mappings":";;;;;AAAA,IAAAA,IAAA,GAAAC,OAAA;AAEAC,EAAE,CAAC,2DAA2D,mBAAAC,kBAAA,CAAAC,OAAA,gBAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAAE,SAAAC,QAAA;EAAA,IAAAC,WAAA,EAAAC,WAAA,EAAAC,MAAA;EAAA,OAAAL,YAAA,CAAAD,OAAA,CAAAO,IAAA,UAAAC,SAAAC,QAAA;IAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;MAAA;QACzDP,WAAW,GAAG,IAAAQ,MAAC,EAAC,aAAa,CAAC;QAC9BP,WAAW,GAChB,wBAAwB,GAAG,IAAIQ,KAAK,CAAC,KAAM,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC,CAACC,IAAI,CAAC,EAAE,CAAC;QAE1DT,MAAM,GAAG,IAAIF,WAAW,CAAC;UAC9BY,IAAI,EAAE,OAAO;UACbC,KAAK,EAAEZ;QACR,CAAC,CAAC;QAEFa,MAAM,CAACZ,MAAM,CAACa,QAAQ,CAAC,CAAC,CAACF,KAAK,CAAC,CAACG,OAAO,CAAC,EAAE,CAAC;MAAC;MAAA;QAAA,OAAAX,QAAA,CAAAY,IAAA;IAAA;EAAA,GAAAlB,OAAA;AAAA,CAC5C,GAAC"}
1
+ {"version":3,"sources":["../../src/models/cms-val.spec.js"],"names":["it","CMSValModel","largeBase64","Array","fill","join","cmsVal","mime","value","expect","toServer","toEqual"],"mappings":";;;;;;;;AAAA;;AAEAA,EAAE,CAAC,2DAAD,uFAA8D;AAAA;AAAA;AAAA;AAAA;AAAA;AACzDC,UAAAA,WADyD,GAC3C,YAAE,aAAF,CAD2C;AAEzDC,UAAAA,WAFyD,GAG9D,2BAA2B,IAAIC,KAAJ,CAAU,KAAV,EAAkBC,IAAlB,CAAuB,GAAvB,EAA4BC,IAA5B,CAAiC,EAAjC,CAHmC;AAKzDC,UAAAA,MALyD,GAKhD,IAAIL,WAAJ,CAAgB;AAC9BM,YAAAA,IAAI,EAAE,OADwB;AAE9BC,YAAAA,KAAK,EAAEN;AAFuB,WAAhB,CALgD;AAU/DO,UAAAA,MAAM,CAACH,MAAM,CAACI,QAAP,GAAkBF,KAAnB,CAAN,CAAgCG,OAAhC,CAAwC,EAAxC;;AAV+D;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,CAA9D,GAAF","sourcesContent":["import { G } from \"sp-test/api\";\n\nit(\"should remove large base64 strings from value when saving\", async () => {\n\tconst CMSValModel = G(\"CMSValModel\");\n\tconst largeBase64 =\n\t\t\"data:image/gif;base64,\" + new Array(50_000).fill(\"a\").join(\"\");\n\n\tconst cmsVal = new CMSValModel({\n\t\tmime: \"image\",\n\t\tvalue: largeBase64,\n\t});\n\n\texpect(cmsVal.toServer().value).toEqual(\"\");\n});\n"],"file":"cms-val.spec.js"}
@@ -4,16 +4,23 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.ContactPhoneModel = void 0;
7
+
7
8
  require("./customer.js");
9
+
8
10
  var _base = require("./base.js");
11
+
9
12
  var _stateRegister = require("../state-register.js");
13
+
10
14
  /**
11
15
  * @constructor
12
16
  * @alias models.ContactModel
13
17
  * @extends models.BaseModel
14
18
  */
15
- var ContactPhoneModel = exports.ContactPhoneModel = _base.BaseModel.extend( /** @lends models.ContactPhoneModel# */{
19
+ var ContactPhoneModel = _base.BaseModel.extend(
20
+ /** @lends models.ContactPhoneModel# */
21
+ {
16
22
  modelName: "contact-phones",
23
+
17
24
  /**
18
25
  * @property {date} created_date
19
26
  * @property {date} modified_date
@@ -32,6 +39,7 @@ var ContactPhoneModel = exports.ContactPhoneModel = _base.BaseModel.extend( /**
32
39
  national_format: "string",
33
40
  number_type: "string"
34
41
  },
42
+
35
43
  /**
36
44
  * @property {models.ContactModel} contact
37
45
  */
@@ -44,11 +52,15 @@ var ContactPhoneModel = exports.ContactPhoneModel = _base.BaseModel.extend( /**
44
52
  raw: this.raw,
45
53
  contact: this._retrieveURL(this.contact)
46
54
  };
55
+
47
56
  if (this.id) {
48
57
  data.id = this.id;
49
58
  }
59
+
50
60
  return data;
51
61
  }
52
62
  });
63
+
64
+ exports.ContactPhoneModel = ContactPhoneModel;
53
65
  (0, _stateRegister.register)("ContactPhoneModel", ContactPhoneModel);
54
66
  //# sourceMappingURL=contact-phone.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contact-phone.js","names":["require","_base","_stateRegister","ContactPhoneModel","exports","BaseModel","extend","modelName","props","created_date","modified_date","is_valid","raw","e164_format","national_format","number_type","children","contact","toServer","data","_retrieveURL","id","register"],"sources":["../../src/models/contact-phone.js"],"sourcesContent":["import \"./customer.js\";\n\nimport { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.ContactModel\n * @extends models.BaseModel\n */\nexport const ContactPhoneModel = BaseModel.extend(\n\t/** @lends models.ContactPhoneModel# */ {\n\t\tmodelName: \"contact-phones\",\n\n\t\t/**\n\t\t * @property {date} created_date\n\t\t * @property {date} modified_date\n\t\t * @property {boolean} is_valid\n\t\t * @property {string} raw\n\t\t * @property {string} e164_format\n\t\t * @property {string} national_format\n\t\t * @property {string} number_type\n\t\t */\n\t\tprops: {\n\t\t\tcreated_date: \"date\",\n\t\t\tmodified_date: \"date\",\n\t\t\tis_valid: \"boolean\",\n\t\t\traw: \"string\",\n\t\t\te164_format: \"string\",\n\t\t\tnational_format: \"string\",\n\t\t\tnumber_type: \"string\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.ContactModel} contact\n\t\t */\n\t\tchildren: {\n\t\t\tcontact: \"ContactModel\",\n\t\t},\n\n\t\ttoServer() {\n\t\t\t/* Only write to `raw` field. The others are derived on the server */\n\t\t\tconst data = {\n\t\t\t\traw: this.raw,\n\t\t\t\tcontact: this._retrieveURL(this.contact),\n\t\t\t};\n\n\t\t\tif (this.id) {\n\t\t\t\tdata.id = this.id;\n\t\t\t}\n\n\t\t\treturn data;\n\t\t},\n\t},\n);\n\nregister(\"ContactPhoneModel\", ContactPhoneModel);\n"],"mappings":";;;;;;AAAAA,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMG,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAGE,eAAS,CAACC,MAAM,EAChD,uCAAwC;EACvCC,SAAS,EAAE,gBAAgB;EAE3B;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,KAAK,EAAE;IACNC,YAAY,EAAE,MAAM;IACpBC,aAAa,EAAE,MAAM;IACrBC,QAAQ,EAAE,SAAS;IACnBC,GAAG,EAAE,QAAQ;IACbC,WAAW,EAAE,QAAQ;IACrBC,eAAe,EAAE,QAAQ;IACzBC,WAAW,EAAE;EACd,CAAC;EAED;AACF;AACA;EACEC,QAAQ,EAAE;IACTC,OAAO,EAAE;EACV,CAAC;EAEDC,QAAQ,WAAAA,SAAA,EAAG;IACV;IACA,IAAMC,IAAI,GAAG;MACZP,GAAG,EAAE,IAAI,CAACA,GAAG;MACbK,OAAO,EAAE,IAAI,CAACG,YAAY,CAAC,IAAI,CAACH,OAAO;IACxC,CAAC;IAED,IAAI,IAAI,CAACI,EAAE,EAAE;MACZF,IAAI,CAACE,EAAE,GAAG,IAAI,CAACA,EAAE;IAClB;IAEA,OAAOF,IAAI;EACZ;AACD,CACD,CAAC;AAED,IAAAG,uBAAQ,EAAC,mBAAmB,EAAEnB,iBAAiB,CAAC"}
1
+ {"version":3,"sources":["../../src/models/contact-phone.js"],"names":["ContactPhoneModel","BaseModel","extend","modelName","props","created_date","modified_date","is_valid","raw","e164_format","national_format","number_type","children","contact","toServer","data","_retrieveURL","id"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMA,iBAAiB,GAAGC,gBAAUC,MAAV;AAChC;AAAwC;AACvCC,EAAAA,SAAS,EAAE,gBAD4B;;AAGvC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,KAAK,EAAE;AACNC,IAAAA,YAAY,EAAE,MADR;AAENC,IAAAA,aAAa,EAAE,MAFT;AAGNC,IAAAA,QAAQ,EAAE,SAHJ;AAINC,IAAAA,GAAG,EAAE,QAJC;AAKNC,IAAAA,WAAW,EAAE,QALP;AAMNC,IAAAA,eAAe,EAAE,QANX;AAONC,IAAAA,WAAW,EAAE;AAPP,GAZgC;;AAsBvC;AACF;AACA;AACEC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,OAAO,EAAE;AADA,GAzB6B;AA6BvCC,EAAAA,QA7BuC,sBA6B5B;AACV;AACA,QAAMC,IAAI,GAAG;AACZP,MAAAA,GAAG,EAAE,KAAKA,GADE;AAEZK,MAAAA,OAAO,EAAE,KAAKG,YAAL,CAAkB,KAAKH,OAAvB;AAFG,KAAb;;AAKA,QAAI,KAAKI,EAAT,EAAa;AACZF,MAAAA,IAAI,CAACE,EAAL,GAAU,KAAKA,EAAf;AACA;;AAED,WAAOF,IAAP;AACA;AAzCsC,CADR,CAA1B;;;AA8CP,6BAAS,mBAAT,EAA8Bf,iBAA9B","sourcesContent":["import \"./customer.js\";\n\nimport { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.ContactModel\n * @extends models.BaseModel\n */\nexport const ContactPhoneModel = BaseModel.extend(\n\t/** @lends models.ContactPhoneModel# */ {\n\t\tmodelName: \"contact-phones\",\n\n\t\t/**\n\t\t * @property {date} created_date\n\t\t * @property {date} modified_date\n\t\t * @property {boolean} is_valid\n\t\t * @property {string} raw\n\t\t * @property {string} e164_format\n\t\t * @property {string} national_format\n\t\t * @property {string} number_type\n\t\t */\n\t\tprops: {\n\t\t\tcreated_date: \"date\",\n\t\t\tmodified_date: \"date\",\n\t\t\tis_valid: \"boolean\",\n\t\t\traw: \"string\",\n\t\t\te164_format: \"string\",\n\t\t\tnational_format: \"string\",\n\t\t\tnumber_type: \"string\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.ContactModel} contact\n\t\t */\n\t\tchildren: {\n\t\t\tcontact: \"ContactModel\",\n\t\t},\n\n\t\ttoServer() {\n\t\t\t/* Only write to `raw` field. The others are derived on the server */\n\t\t\tconst data = {\n\t\t\t\traw: this.raw,\n\t\t\t\tcontact: this._retrieveURL(this.contact),\n\t\t\t};\n\n\t\t\tif (this.id) {\n\t\t\t\tdata.id = this.id;\n\t\t\t}\n\n\t\t\treturn data;\n\t\t},\n\t},\n);\n\nregister(\"ContactPhoneModel\", ContactPhoneModel);\n"],"file":"contact-phone.js"}
@@ -4,19 +4,29 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.ContactModel = void 0;
7
+
7
8
  require("./user.js");
9
+
8
10
  require("./customer.js");
11
+
9
12
  require("./location.js");
13
+
10
14
  require("../collections/opportunities.js");
15
+
11
16
  var _base = require("./base.js");
17
+
12
18
  var _stateRegister = require("../state-register.js");
19
+
13
20
  /**
14
21
  * @constructor
15
22
  * @alias models.ContactModel
16
23
  * @extends models.BaseModel
17
24
  */
18
- var ContactModel = exports.ContactModel = _base.BaseModel.extend( /** @lends models.ContactModel# */{
25
+ var ContactModel = _base.BaseModel.extend(
26
+ /** @lends models.ContactModel# */
27
+ {
19
28
  modelName: "contacts",
29
+
20
30
  /**
21
31
  * @property {date} created_date
22
32
  * @property {string} email
@@ -46,12 +56,14 @@ var ContactModel = exports.ContactModel = _base.BaseModel.extend( /** @lends mod
46
56
  profile: "object",
47
57
  fixture_key: "string"
48
58
  },
59
+
49
60
  /**
50
61
  * @property {collections.OpportunityCollection} opportunity_set
51
62
  */
52
63
  collections: {
53
64
  opportunity_set: "OpportunityCollection"
54
65
  },
66
+
55
67
  /**
56
68
  * @property {models.LocationModel} location
57
69
  * @property {models.CustomerModel} customer
@@ -62,6 +74,7 @@ var ContactModel = exports.ContactModel = _base.BaseModel.extend( /** @lends mod
62
74
  customer: "CustomerModel",
63
75
  user: "UserModel"
64
76
  },
77
+
65
78
  /**
66
79
  * @property {string} fullName
67
80
  */
@@ -91,11 +104,15 @@ var ContactModel = exports.ContactModel = _base.BaseModel.extend( /** @lends mod
91
104
  location: this._retrieveURL(this.location),
92
105
  user: this._retrieveURL(this.user)
93
106
  };
107
+
94
108
  if (this.id) {
95
109
  data.id = this.id;
96
110
  }
111
+
97
112
  return data;
98
113
  }
99
114
  });
115
+
116
+ exports.ContactModel = ContactModel;
100
117
  (0, _stateRegister.register)("ContactModel", ContactModel);
101
118
  //# sourceMappingURL=contact.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contact.js","names":["require","_base","_stateRegister","ContactModel","exports","BaseModel","extend","modelName","props","created_date","email","modified_date","name_first","name_last","notes","phone","photo_128","photo_256","photo_512","position","profile","fixture_key","collections","opportunity_set","children","location","customer","user","derived","fullName","deps","fn","concat","toServer","data","_retrieveURL","id","register"],"sources":["../../src/models/contact.js"],"sourcesContent":["import \"./user.js\";\nimport \"./customer.js\";\nimport \"./location.js\";\nimport \"../collections/opportunities.js\";\n\nimport { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.ContactModel\n * @extends models.BaseModel\n */\nexport const ContactModel = BaseModel.extend(\n\t/** @lends models.ContactModel# */ {\n\t\tmodelName: \"contacts\",\n\n\t\t/**\n\t\t * @property {date} created_date\n\t\t * @property {string} email\n\t\t * @property {date} modified_date\n\t\t * @property {string} name_first\n\t\t * @property {string} name_last\n\t\t * @property {string} notes\n\t\t * @property {string} phone\n\t\t * @property {string} photo_128\n\t\t * @property {string} photo_256\n\t\t * @property {string} photo_512\n\t\t * @property {string} position\n\t\t * @property {object} profile\n\t\t */\n\t\tprops: {\n\t\t\tcreated_date: \"date\",\n\t\t\temail: \"string\",\n\t\t\tmodified_date: \"date\",\n\t\t\tname_first: \"stringSanitized\",\n\t\t\tname_last: \"stringSanitized\",\n\t\t\tnotes: \"stringSanitized\",\n\t\t\tphone: \"stringSanitized\",\n\t\t\tphoto_128: \"string\",\n\t\t\tphoto_256: \"string\",\n\t\t\tphoto_512: \"string\",\n\t\t\tposition: \"string\",\n\t\t\tprofile: \"object\",\n\t\t\tfixture_key: \"string\",\n\t\t},\n\n\t\t/**\n\t\t * @property {collections.OpportunityCollection} opportunity_set\n\t\t */\n\t\tcollections: {\n\t\t\topportunity_set: \"OpportunityCollection\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.LocationModel} location\n\t\t * @property {models.CustomerModel} customer\n\t\t * @property {models.UserModel} user\n\t\t */\n\t\tchildren: {\n\t\t\tlocation: \"LocationModel\",\n\t\t\tcustomer: \"CustomerModel\",\n\t\t\tuser: \"UserModel\",\n\t\t},\n\n\t\t/**\n\t\t * @property {string} fullName\n\t\t */\n\t\tderived: {\n\t\t\t/**\n\t\t\t * The full name of the contact\n\t\t\t * @property fullName\n\t\t\t * @type String\n\t\t\t */\n\t\t\tfullName: {\n\t\t\t\tdeps: [\"name_first\", \"name_last\"],\n\t\t\t\tfn: function () {\n\t\t\t\t\treturn `${this.name_first} ${this.name_last}`;\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\ttoServer() {\n\t\t\tconst data = {\n\t\t\t\temail: this.email,\n\t\t\t\tname_first: this.name_first,\n\t\t\t\tname_last: this.name_last,\n\t\t\t\tnotes: this.notes,\n\t\t\t\tphone: this.phone,\n\t\t\t\tposition: this.position,\n\t\t\t\topportunity_set: this._retrieveURL(this.opportunity_set),\n\t\t\t\tcustomer: this._retrieveURL(this.customer),\n\t\t\t\tlocation: this._retrieveURL(this.location),\n\t\t\t\tuser: this._retrieveURL(this.user),\n\t\t\t};\n\n\t\t\tif (this.id) {\n\t\t\t\tdata.id = this.id;\n\t\t\t}\n\n\t\t\treturn data;\n\t\t},\n\t},\n);\n\nregister(\"ContactModel\", ContactModel);\n"],"mappings":";;;;;;AAAAA,OAAA;AACAA,OAAA;AACAA,OAAA;AACAA,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMG,YAAY,GAAAC,OAAA,CAAAD,YAAA,GAAGE,eAAS,CAACC,MAAM,EAC3C,kCAAmC;EAClCC,SAAS,EAAE,UAAU;EAErB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,KAAK,EAAE;IACNC,YAAY,EAAE,MAAM;IACpBC,KAAK,EAAE,QAAQ;IACfC,aAAa,EAAE,MAAM;IACrBC,UAAU,EAAE,iBAAiB;IAC7BC,SAAS,EAAE,iBAAiB;IAC5BC,KAAK,EAAE,iBAAiB;IACxBC,KAAK,EAAE,iBAAiB;IACxBC,SAAS,EAAE,QAAQ;IACnBC,SAAS,EAAE,QAAQ;IACnBC,SAAS,EAAE,QAAQ;IACnBC,QAAQ,EAAE,QAAQ;IAClBC,OAAO,EAAE,QAAQ;IACjBC,WAAW,EAAE;EACd,CAAC;EAED;AACF;AACA;EACEC,WAAW,EAAE;IACZC,eAAe,EAAE;EAClB,CAAC;EAED;AACF;AACA;AACA;AACA;EACEC,QAAQ,EAAE;IACTC,QAAQ,EAAE,eAAe;IACzBC,QAAQ,EAAE,eAAe;IACzBC,IAAI,EAAE;EACP,CAAC;EAED;AACF;AACA;EACEC,OAAO,EAAE;IACR;AACH;AACA;AACA;AACA;IACGC,QAAQ,EAAE;MACTC,IAAI,EAAE,CAAC,YAAY,EAAE,WAAW,CAAC;MACjCC,EAAE,EAAE,SAAAA,GAAA,EAAY;QACf,UAAAC,MAAA,CAAU,IAAI,CAACpB,UAAU,OAAAoB,MAAA,CAAI,IAAI,CAACnB,SAAS;MAC5C;IACD;EACD,CAAC;EAEDoB,QAAQ,WAAAA,SAAA,EAAG;IACV,IAAMC,IAAI,GAAG;MACZxB,KAAK,EAAE,IAAI,CAACA,KAAK;MACjBE,UAAU,EAAE,IAAI,CAACA,UAAU;MAC3BC,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBC,KAAK,EAAE,IAAI,CAACA,KAAK;MACjBC,KAAK,EAAE,IAAI,CAACA,KAAK;MACjBI,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBI,eAAe,EAAE,IAAI,CAACY,YAAY,CAAC,IAAI,CAACZ,eAAe,CAAC;MACxDG,QAAQ,EAAE,IAAI,CAACS,YAAY,CAAC,IAAI,CAACT,QAAQ,CAAC;MAC1CD,QAAQ,EAAE,IAAI,CAACU,YAAY,CAAC,IAAI,CAACV,QAAQ,CAAC;MAC1CE,IAAI,EAAE,IAAI,CAACQ,YAAY,CAAC,IAAI,CAACR,IAAI;IAClC,CAAC;IAED,IAAI,IAAI,CAACS,EAAE,EAAE;MACZF,IAAI,CAACE,EAAE,GAAG,IAAI,CAACA,EAAE;IAClB;IAEA,OAAOF,IAAI;EACZ;AACD,CACD,CAAC;AAED,IAAAG,uBAAQ,EAAC,cAAc,EAAElC,YAAY,CAAC"}
1
+ {"version":3,"sources":["../../src/models/contact.js"],"names":["ContactModel","BaseModel","extend","modelName","props","created_date","email","modified_date","name_first","name_last","notes","phone","photo_128","photo_256","photo_512","position","profile","fixture_key","collections","opportunity_set","children","location","customer","user","derived","fullName","deps","fn","toServer","data","_retrieveURL","id"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMA,YAAY,GAAGC,gBAAUC,MAAV;AAC3B;AAAmC;AAClCC,EAAAA,SAAS,EAAE,UADuB;;AAGlC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,KAAK,EAAE;AACNC,IAAAA,YAAY,EAAE,MADR;AAENC,IAAAA,KAAK,EAAE,QAFD;AAGNC,IAAAA,aAAa,EAAE,MAHT;AAINC,IAAAA,UAAU,EAAE,iBAJN;AAKNC,IAAAA,SAAS,EAAE,iBALL;AAMNC,IAAAA,KAAK,EAAE,iBAND;AAONC,IAAAA,KAAK,EAAE,iBAPD;AAQNC,IAAAA,SAAS,EAAE,QARL;AASNC,IAAAA,SAAS,EAAE,QATL;AAUNC,IAAAA,SAAS,EAAE,QAVL;AAWNC,IAAAA,QAAQ,EAAE,QAXJ;AAYNC,IAAAA,OAAO,EAAE,QAZH;AAaNC,IAAAA,WAAW,EAAE;AAbP,GAjB2B;;AAiClC;AACF;AACA;AACEC,EAAAA,WAAW,EAAE;AACZC,IAAAA,eAAe,EAAE;AADL,GApCqB;;AAwClC;AACF;AACA;AACA;AACA;AACEC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,QAAQ,EAAE,eADD;AAETC,IAAAA,QAAQ,EAAE,eAFD;AAGTC,IAAAA,IAAI,EAAE;AAHG,GA7CwB;;AAmDlC;AACF;AACA;AACEC,EAAAA,OAAO,EAAE;AACR;AACH;AACA;AACA;AACA;AACGC,IAAAA,QAAQ,EAAE;AACTC,MAAAA,IAAI,EAAE,CAAC,YAAD,EAAe,WAAf,CADG;AAETC,MAAAA,EAAE,EAAE,cAAY;AACf,yBAAU,KAAKnB,UAAf,cAA6B,KAAKC,SAAlC;AACA;AAJQ;AANF,GAtDyB;AAoElCmB,EAAAA,QApEkC,sBAoEvB;AACV,QAAMC,IAAI,GAAG;AACZvB,MAAAA,KAAK,EAAE,KAAKA,KADA;AAEZE,MAAAA,UAAU,EAAE,KAAKA,UAFL;AAGZC,MAAAA,SAAS,EAAE,KAAKA,SAHJ;AAIZC,MAAAA,KAAK,EAAE,KAAKA,KAJA;AAKZC,MAAAA,KAAK,EAAE,KAAKA,KALA;AAMZI,MAAAA,QAAQ,EAAE,KAAKA,QANH;AAOZI,MAAAA,eAAe,EAAE,KAAKW,YAAL,CAAkB,KAAKX,eAAvB,CAPL;AAQZG,MAAAA,QAAQ,EAAE,KAAKQ,YAAL,CAAkB,KAAKR,QAAvB,CARE;AASZD,MAAAA,QAAQ,EAAE,KAAKS,YAAL,CAAkB,KAAKT,QAAvB,CATE;AAUZE,MAAAA,IAAI,EAAE,KAAKO,YAAL,CAAkB,KAAKP,IAAvB;AAVM,KAAb;;AAaA,QAAI,KAAKQ,EAAT,EAAa;AACZF,MAAAA,IAAI,CAACE,EAAL,GAAU,KAAKA,EAAf;AACA;;AAED,WAAOF,IAAP;AACA;AAvFiC,CADR,CAArB;;;AA4FP,6BAAS,cAAT,EAAyB7B,YAAzB","sourcesContent":["import \"./user.js\";\nimport \"./customer.js\";\nimport \"./location.js\";\nimport \"../collections/opportunities.js\";\n\nimport { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.ContactModel\n * @extends models.BaseModel\n */\nexport const ContactModel = BaseModel.extend(\n\t/** @lends models.ContactModel# */ {\n\t\tmodelName: \"contacts\",\n\n\t\t/**\n\t\t * @property {date} created_date\n\t\t * @property {string} email\n\t\t * @property {date} modified_date\n\t\t * @property {string} name_first\n\t\t * @property {string} name_last\n\t\t * @property {string} notes\n\t\t * @property {string} phone\n\t\t * @property {string} photo_128\n\t\t * @property {string} photo_256\n\t\t * @property {string} photo_512\n\t\t * @property {string} position\n\t\t * @property {object} profile\n\t\t */\n\t\tprops: {\n\t\t\tcreated_date: \"date\",\n\t\t\temail: \"string\",\n\t\t\tmodified_date: \"date\",\n\t\t\tname_first: \"stringSanitized\",\n\t\t\tname_last: \"stringSanitized\",\n\t\t\tnotes: \"stringSanitized\",\n\t\t\tphone: \"stringSanitized\",\n\t\t\tphoto_128: \"string\",\n\t\t\tphoto_256: \"string\",\n\t\t\tphoto_512: \"string\",\n\t\t\tposition: \"string\",\n\t\t\tprofile: \"object\",\n\t\t\tfixture_key: \"string\",\n\t\t},\n\n\t\t/**\n\t\t * @property {collections.OpportunityCollection} opportunity_set\n\t\t */\n\t\tcollections: {\n\t\t\topportunity_set: \"OpportunityCollection\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.LocationModel} location\n\t\t * @property {models.CustomerModel} customer\n\t\t * @property {models.UserModel} user\n\t\t */\n\t\tchildren: {\n\t\t\tlocation: \"LocationModel\",\n\t\t\tcustomer: \"CustomerModel\",\n\t\t\tuser: \"UserModel\",\n\t\t},\n\n\t\t/**\n\t\t * @property {string} fullName\n\t\t */\n\t\tderived: {\n\t\t\t/**\n\t\t\t * The full name of the contact\n\t\t\t * @property fullName\n\t\t\t * @type String\n\t\t\t */\n\t\t\tfullName: {\n\t\t\t\tdeps: [\"name_first\", \"name_last\"],\n\t\t\t\tfn: function () {\n\t\t\t\t\treturn `${this.name_first} ${this.name_last}`;\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\ttoServer() {\n\t\t\tconst data = {\n\t\t\t\temail: this.email,\n\t\t\t\tname_first: this.name_first,\n\t\t\t\tname_last: this.name_last,\n\t\t\t\tnotes: this.notes,\n\t\t\t\tphone: this.phone,\n\t\t\t\tposition: this.position,\n\t\t\t\topportunity_set: this._retrieveURL(this.opportunity_set),\n\t\t\t\tcustomer: this._retrieveURL(this.customer),\n\t\t\t\tlocation: this._retrieveURL(this.location),\n\t\t\t\tuser: this._retrieveURL(this.user),\n\t\t\t};\n\n\t\t\tif (this.id) {\n\t\t\t\tdata.id = this.id;\n\t\t\t}\n\n\t\t\treturn data;\n\t\t},\n\t},\n);\n\nregister(\"ContactModel\", ContactModel);\n"],"file":"contact.js"}
@@ -4,20 +4,31 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.CustomerModel = void 0;
7
+
7
8
  require("../models/opportunity.js");
9
+
8
10
  require("../collections/locations.js");
11
+
9
12
  require("../collections/contacts.js");
13
+
10
14
  require("../collections/opportunities.js");
15
+
11
16
  require("../collections/teams.js");
17
+
12
18
  var _base = require("./base.js");
19
+
13
20
  var _stateRegister = require("../state-register.js");
21
+
14
22
  /**
15
23
  * @constructor
16
24
  * @alias models.CustomerModel
17
25
  * @extends models.BaseModel
18
26
  */
19
- var CustomerModel = exports.CustomerModel = _base.BaseModel.extend( /** @lends models.CustomerModel# */{
27
+ var CustomerModel = _base.BaseModel.extend(
28
+ /** @lends models.CustomerModel# */
29
+ {
20
30
  modelName: "customers",
31
+
21
32
  /**
22
33
  * @property {date} created_date
23
34
  * @property {string} logo_128
@@ -46,6 +57,7 @@ var CustomerModel = exports.CustomerModel = _base.BaseModel.extend( /** @lends m
46
57
  title: "stringSanitized",
47
58
  website: "string"
48
59
  },
60
+
49
61
  /**
50
62
  * @property {models.LocationModel} default_location
51
63
  * @property {models.OpportunityModel} default_opportunity
@@ -54,6 +66,7 @@ var CustomerModel = exports.CustomerModel = _base.BaseModel.extend( /** @lends m
54
66
  default_location: "LocationModel",
55
67
  default_opportunity: "OpportunityModel"
56
68
  },
69
+
57
70
  /**
58
71
  * @property {collections.ContactCollection} contact_set
59
72
  * @property {collections.OpportunityCollection} opportunity_set
@@ -65,6 +78,7 @@ var CustomerModel = exports.CustomerModel = _base.BaseModel.extend( /** @lends m
65
78
  location_set: "LocationCollection",
66
79
  team_set: "TeamCollection"
67
80
  },
81
+
68
82
  /**
69
83
  * @property {string} logo
70
84
  * @property {string} primaryColour
@@ -74,10 +88,12 @@ var CustomerModel = exports.CustomerModel = _base.BaseModel.extend( /** @lends m
74
88
  deps: ["logo_512", "profile"],
75
89
  fn: function fn() {
76
90
  var _this$profile;
91
+
77
92
  // HACK: Check for the REA usecase where it gets images from profile
78
93
  if ((_this$profile = this.profile) !== null && _this$profile !== void 0 && _this$profile.rea_image_large) {
79
94
  return this.profile.rea_image_large;
80
95
  }
96
+
81
97
  return this.logo_512;
82
98
  }
83
99
  },
@@ -88,31 +104,38 @@ var CustomerModel = exports.CustomerModel = _base.BaseModel.extend( /** @lends m
88
104
  if (this.profile && this.profile.primary_colour) {
89
105
  return this.profile.primary_colour;
90
106
  }
107
+
91
108
  return this.primary_colour;
92
109
  }
93
110
  }
94
111
  },
95
112
  fetch: function fetch() {
96
113
  var _this = this;
114
+
97
115
  var baseFetch = _base.BaseModel.prototype.fetch.apply(this, arguments);
116
+
98
117
  return baseFetch.then(function () {
99
118
  var topParent;
100
119
  var curParent = _this.parent;
120
+
101
121
  while (typeof curParent !== "undefined") {
102
122
  curParent = curParent.parent;
123
+
103
124
  if (curParent) {
104
125
  topParent = curParent;
105
126
  }
106
- }
127
+ } // Filter contacts if this is fetched from an appointment
128
+
107
129
 
108
- // Filter contacts if this is fetched from an appointment
109
130
  if (topParent && topParent.name === "appointments") {
110
131
  var contactUrls = _this.contact_set.map(function (contact) {
111
132
  return _this._retrieveUrl(contact);
112
133
  });
134
+
113
135
  var filteredContacts = topParent.contact_set.filter(function (contact) {
114
136
  return contactUrls.indexOf(_this._retrieveUrl(contact)) > -1;
115
137
  });
138
+
116
139
  _this.contact_set.set(filteredContacts);
117
140
  }
118
141
  });
@@ -125,11 +148,15 @@ var CustomerModel = exports.CustomerModel = _base.BaseModel.extend( /** @lends m
125
148
  website: this.website,
126
149
  team_set: this._retrieveURL(this.team_set)
127
150
  };
151
+
128
152
  if (this.id) {
129
153
  data.id = this.id;
130
154
  }
155
+
131
156
  return data;
132
157
  }
133
158
  });
159
+
160
+ exports.CustomerModel = CustomerModel;
134
161
  (0, _stateRegister.register)("CustomerModel", CustomerModel);
135
162
  //# sourceMappingURL=customer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"customer.js","names":["require","_base","_stateRegister","CustomerModel","exports","BaseModel","extend","modelName","props","created_date","logo_128","logo_256","logo_512","logo_original","modified_date","notes","primary_colour","profile","soft_deleted","title","website","children","default_location","default_opportunity","collections","contact_set","opportunity_set","location_set","team_set","derived","logo","deps","fn","_this$profile","rea_image_large","primaryColour","fetch","_this","baseFetch","prototype","apply","arguments","then","topParent","curParent","parent","name","contactUrls","map","contact","_retrieveUrl","filteredContacts","filter","indexOf","set","toServer","data","_retrieveURL","id","register"],"sources":["../../src/models/customer.js"],"sourcesContent":["import \"../models/opportunity.js\";\nimport \"../collections/locations.js\";\nimport \"../collections/contacts.js\";\nimport \"../collections/locations.js\";\nimport \"../collections/opportunities.js\";\nimport \"../collections/teams.js\";\n\nimport { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.CustomerModel\n * @extends models.BaseModel\n */\nexport const CustomerModel = BaseModel.extend(\n\t/** @lends models.CustomerModel# */ {\n\t\tmodelName: \"customers\",\n\n\t\t/**\n\t\t * @property {date} created_date\n\t\t * @property {string} logo_128\n\t\t * @property {string} logo_256\n\t\t * @property {string} logo_512\n\t\t * @property {string} logo_original\n\t\t * @property {date} modified_date\n\t\t * @property {string} notes\n\t\t * @property {string} primary_colour\n\t\t * @property {object} profile\n\t\t * @property {boolean} soft_deleted\n\t\t * @property {string} title\n\t\t * @property {string} website\n\t\t */\n\t\tprops: {\n\t\t\tcreated_date: \"date\",\n\t\t\tlogo_128: \"string\",\n\t\t\tlogo_256: \"string\",\n\t\t\tlogo_512: \"string\",\n\t\t\tlogo_original: \"string\",\n\t\t\tmodified_date: \"date\",\n\t\t\tnotes: \"stringSanitized\",\n\t\t\tprimary_colour: \"string\",\n\t\t\tprofile: \"object\",\n\t\t\tsoft_deleted: \"boolean\",\n\t\t\ttitle: \"stringSanitized\",\n\t\t\twebsite: \"string\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.LocationModel} default_location\n\t\t * @property {models.OpportunityModel} default_opportunity\n\t\t */\n\t\tchildren: {\n\t\t\tdefault_location: \"LocationModel\",\n\t\t\tdefault_opportunity: \"OpportunityModel\",\n\t\t},\n\n\t\t/**\n\t\t * @property {collections.ContactCollection} contact_set\n\t\t * @property {collections.OpportunityCollection} opportunity_set\n\t\t * @property {collections.LocationCollection} location_set\n\t\t */\n\t\tcollections: {\n\t\t\tcontact_set: \"ContactCollection\",\n\t\t\topportunity_set: \"OpportunityCollection\",\n\t\t\tlocation_set: \"LocationCollection\",\n\t\t\tteam_set: \"TeamCollection\",\n\t\t},\n\n\t\t/**\n\t\t * @property {string} logo\n\t\t * @property {string} primaryColour\n\t\t */\n\t\tderived: {\n\t\t\tlogo: {\n\t\t\t\tdeps: [\"logo_512\", \"profile\"],\n\t\t\t\tfn: function () {\n\t\t\t\t\t// HACK: Check for the REA usecase where it gets images from profile\n\t\t\t\t\tif (this.profile?.rea_image_large) {\n\t\t\t\t\t\treturn this.profile.rea_image_large;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn this.logo_512;\n\t\t\t\t},\n\t\t\t},\n\t\t\tprimaryColour: {\n\t\t\t\tdeps: [\"primary_colour\", \"profile\"],\n\t\t\t\tfn: function () {\n\t\t\t\t\t// HACK: Check for the REA usecase where it gets primary colour from profile\n\t\t\t\t\tif (this.profile && this.profile.primary_colour) {\n\t\t\t\t\t\treturn this.profile.primary_colour;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn this.primary_colour;\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tfetch() {\n\t\t\tconst baseFetch = BaseModel.prototype.fetch.apply(this, arguments);\n\n\t\t\treturn baseFetch.then(() => {\n\t\t\t\tlet topParent;\n\t\t\t\tlet curParent = this.parent;\n\n\t\t\t\twhile (typeof curParent !== \"undefined\") {\n\t\t\t\t\tcurParent = curParent.parent;\n\t\t\t\t\tif (curParent) {\n\t\t\t\t\t\ttopParent = curParent;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Filter contacts if this is fetched from an appointment\n\t\t\t\tif (topParent && topParent.name === \"appointments\") {\n\t\t\t\t\tconst contactUrls = this.contact_set.map((contact) =>\n\t\t\t\t\t\tthis._retrieveUrl(contact),\n\t\t\t\t\t);\n\n\t\t\t\t\tconst filteredContacts = topParent.contact_set.filter((contact) => {\n\t\t\t\t\t\treturn contactUrls.indexOf(this._retrieveUrl(contact)) > -1;\n\t\t\t\t\t});\n\n\t\t\t\t\tthis.contact_set.set(filteredContacts);\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\n\t\ttoServer() {\n\t\t\tconst data = {\n\t\t\t\tnotes: this.notes,\n\t\t\t\tprimary_colour: this.primary_colour,\n\t\t\t\ttitle: this.title,\n\t\t\t\twebsite: this.website,\n\t\t\t\tteam_set: this._retrieveURL(this.team_set),\n\t\t\t};\n\n\t\t\tif (this.id) {\n\t\t\t\tdata.id = this.id;\n\t\t\t}\n\n\t\t\treturn data;\n\t\t},\n\t},\n);\n\nregister(\"CustomerModel\", CustomerModel);\n"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/models/customer.js"],"names":["CustomerModel","BaseModel","extend","modelName","props","created_date","logo_128","logo_256","logo_512","logo_original","modified_date","notes","primary_colour","profile","soft_deleted","title","website","children","default_location","default_opportunity","collections","contact_set","opportunity_set","location_set","team_set","derived","logo","deps","fn","rea_image_large","primaryColour","fetch","baseFetch","prototype","apply","arguments","then","topParent","curParent","parent","name","contactUrls","map","contact","_retrieveUrl","filteredContacts","filter","indexOf","set","toServer","data","_retrieveURL","id"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMA,aAAa,GAAGC,gBAAUC,MAAV;AAC5B;AAAoC;AACnCC,EAAAA,SAAS,EAAE,WADwB;;AAGnC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,KAAK,EAAE;AACNC,IAAAA,YAAY,EAAE,MADR;AAENC,IAAAA,QAAQ,EAAE,QAFJ;AAGNC,IAAAA,QAAQ,EAAE,QAHJ;AAINC,IAAAA,QAAQ,EAAE,QAJJ;AAKNC,IAAAA,aAAa,EAAE,QALT;AAMNC,IAAAA,aAAa,EAAE,MANT;AAONC,IAAAA,KAAK,EAAE,iBAPD;AAQNC,IAAAA,cAAc,EAAE,QARV;AASNC,IAAAA,OAAO,EAAE,QATH;AAUNC,IAAAA,YAAY,EAAE,SAVR;AAWNC,IAAAA,KAAK,EAAE,iBAXD;AAYNC,IAAAA,OAAO,EAAE;AAZH,GAjB4B;;AAgCnC;AACF;AACA;AACA;AACEC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,gBAAgB,EAAE,eADT;AAETC,IAAAA,mBAAmB,EAAE;AAFZ,GApCyB;;AAyCnC;AACF;AACA;AACA;AACA;AACEC,EAAAA,WAAW,EAAE;AACZC,IAAAA,WAAW,EAAE,mBADD;AAEZC,IAAAA,eAAe,EAAE,uBAFL;AAGZC,IAAAA,YAAY,EAAE,oBAHF;AAIZC,IAAAA,QAAQ,EAAE;AAJE,GA9CsB;;AAqDnC;AACF;AACA;AACA;AACEC,EAAAA,OAAO,EAAE;AACRC,IAAAA,IAAI,EAAE;AACLC,MAAAA,IAAI,EAAE,CAAC,UAAD,EAAa,SAAb,CADD;AAELC,MAAAA,EAAE,EAAE,cAAY;AAAA;;AACf;AACA,6BAAI,KAAKf,OAAT,0CAAI,cAAcgB,eAAlB,EAAmC;AAClC,iBAAO,KAAKhB,OAAL,CAAagB,eAApB;AACA;;AAED,eAAO,KAAKrB,QAAZ;AACA;AATI,KADE;AAYRsB,IAAAA,aAAa,EAAE;AACdH,MAAAA,IAAI,EAAE,CAAC,gBAAD,EAAmB,SAAnB,CADQ;AAEdC,MAAAA,EAAE,EAAE,cAAY;AACf;AACA,YAAI,KAAKf,OAAL,IAAgB,KAAKA,OAAL,CAAaD,cAAjC,EAAiD;AAChD,iBAAO,KAAKC,OAAL,CAAaD,cAApB;AACA;;AAED,eAAO,KAAKA,cAAZ;AACA;AATa;AAZP,GAzD0B;AAkFnCmB,EAAAA,KAlFmC,mBAkF3B;AAAA;;AACP,QAAMC,SAAS,GAAG/B,gBAAUgC,SAAV,CAAoBF,KAApB,CAA0BG,KAA1B,CAAgC,IAAhC,EAAsCC,SAAtC,CAAlB;;AAEA,WAAOH,SAAS,CAACI,IAAV,CAAe,YAAM;AAC3B,UAAIC,SAAJ;AACA,UAAIC,SAAS,GAAG,KAAI,CAACC,MAArB;;AAEA,aAAO,OAAOD,SAAP,KAAqB,WAA5B,EAAyC;AACxCA,QAAAA,SAAS,GAAGA,SAAS,CAACC,MAAtB;;AACA,YAAID,SAAJ,EAAe;AACdD,UAAAA,SAAS,GAAGC,SAAZ;AACA;AACD,OAT0B,CAW3B;;;AACA,UAAID,SAAS,IAAIA,SAAS,CAACG,IAAV,KAAmB,cAApC,EAAoD;AACnD,YAAMC,WAAW,GAAG,KAAI,CAACpB,WAAL,CAAiBqB,GAAjB,CAAqB,UAACC,OAAD;AAAA,iBACxC,KAAI,CAACC,YAAL,CAAkBD,OAAlB,CADwC;AAAA,SAArB,CAApB;;AAIA,YAAME,gBAAgB,GAAGR,SAAS,CAAChB,WAAV,CAAsByB,MAAtB,CAA6B,UAACH,OAAD,EAAa;AAClE,iBAAOF,WAAW,CAACM,OAAZ,CAAoB,KAAI,CAACH,YAAL,CAAkBD,OAAlB,CAApB,IAAkD,CAAC,CAA1D;AACA,SAFwB,CAAzB;;AAIA,QAAA,KAAI,CAACtB,WAAL,CAAiB2B,GAAjB,CAAqBH,gBAArB;AACA;AACD,KAvBM,CAAP;AAwBA,GA7GkC;AA+GnCI,EAAAA,QA/GmC,sBA+GxB;AACV,QAAMC,IAAI,GAAG;AACZvC,MAAAA,KAAK,EAAE,KAAKA,KADA;AAEZC,MAAAA,cAAc,EAAE,KAAKA,cAFT;AAGZG,MAAAA,KAAK,EAAE,KAAKA,KAHA;AAIZC,MAAAA,OAAO,EAAE,KAAKA,OAJF;AAKZQ,MAAAA,QAAQ,EAAE,KAAK2B,YAAL,CAAkB,KAAK3B,QAAvB;AALE,KAAb;;AAQA,QAAI,KAAK4B,EAAT,EAAa;AACZF,MAAAA,IAAI,CAACE,EAAL,GAAU,KAAKA,EAAf;AACA;;AAED,WAAOF,IAAP;AACA;AA7HkC,CADR,CAAtB;;;AAkIP,6BAAS,eAAT,EAA0BlD,aAA1B","sourcesContent":["import \"../models/opportunity.js\";\nimport \"../collections/locations.js\";\nimport \"../collections/contacts.js\";\nimport \"../collections/locations.js\";\nimport \"../collections/opportunities.js\";\nimport \"../collections/teams.js\";\n\nimport { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.CustomerModel\n * @extends models.BaseModel\n */\nexport const CustomerModel = BaseModel.extend(\n\t/** @lends models.CustomerModel# */ {\n\t\tmodelName: \"customers\",\n\n\t\t/**\n\t\t * @property {date} created_date\n\t\t * @property {string} logo_128\n\t\t * @property {string} logo_256\n\t\t * @property {string} logo_512\n\t\t * @property {string} logo_original\n\t\t * @property {date} modified_date\n\t\t * @property {string} notes\n\t\t * @property {string} primary_colour\n\t\t * @property {object} profile\n\t\t * @property {boolean} soft_deleted\n\t\t * @property {string} title\n\t\t * @property {string} website\n\t\t */\n\t\tprops: {\n\t\t\tcreated_date: \"date\",\n\t\t\tlogo_128: \"string\",\n\t\t\tlogo_256: \"string\",\n\t\t\tlogo_512: \"string\",\n\t\t\tlogo_original: \"string\",\n\t\t\tmodified_date: \"date\",\n\t\t\tnotes: \"stringSanitized\",\n\t\t\tprimary_colour: \"string\",\n\t\t\tprofile: \"object\",\n\t\t\tsoft_deleted: \"boolean\",\n\t\t\ttitle: \"stringSanitized\",\n\t\t\twebsite: \"string\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.LocationModel} default_location\n\t\t * @property {models.OpportunityModel} default_opportunity\n\t\t */\n\t\tchildren: {\n\t\t\tdefault_location: \"LocationModel\",\n\t\t\tdefault_opportunity: \"OpportunityModel\",\n\t\t},\n\n\t\t/**\n\t\t * @property {collections.ContactCollection} contact_set\n\t\t * @property {collections.OpportunityCollection} opportunity_set\n\t\t * @property {collections.LocationCollection} location_set\n\t\t */\n\t\tcollections: {\n\t\t\tcontact_set: \"ContactCollection\",\n\t\t\topportunity_set: \"OpportunityCollection\",\n\t\t\tlocation_set: \"LocationCollection\",\n\t\t\tteam_set: \"TeamCollection\",\n\t\t},\n\n\t\t/**\n\t\t * @property {string} logo\n\t\t * @property {string} primaryColour\n\t\t */\n\t\tderived: {\n\t\t\tlogo: {\n\t\t\t\tdeps: [\"logo_512\", \"profile\"],\n\t\t\t\tfn: function () {\n\t\t\t\t\t// HACK: Check for the REA usecase where it gets images from profile\n\t\t\t\t\tif (this.profile?.rea_image_large) {\n\t\t\t\t\t\treturn this.profile.rea_image_large;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn this.logo_512;\n\t\t\t\t},\n\t\t\t},\n\t\t\tprimaryColour: {\n\t\t\t\tdeps: [\"primary_colour\", \"profile\"],\n\t\t\t\tfn: function () {\n\t\t\t\t\t// HACK: Check for the REA usecase where it gets primary colour from profile\n\t\t\t\t\tif (this.profile && this.profile.primary_colour) {\n\t\t\t\t\t\treturn this.profile.primary_colour;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn this.primary_colour;\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tfetch() {\n\t\t\tconst baseFetch = BaseModel.prototype.fetch.apply(this, arguments);\n\n\t\t\treturn baseFetch.then(() => {\n\t\t\t\tlet topParent;\n\t\t\t\tlet curParent = this.parent;\n\n\t\t\t\twhile (typeof curParent !== \"undefined\") {\n\t\t\t\t\tcurParent = curParent.parent;\n\t\t\t\t\tif (curParent) {\n\t\t\t\t\t\ttopParent = curParent;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Filter contacts if this is fetched from an appointment\n\t\t\t\tif (topParent && topParent.name === \"appointments\") {\n\t\t\t\t\tconst contactUrls = this.contact_set.map((contact) =>\n\t\t\t\t\t\tthis._retrieveUrl(contact),\n\t\t\t\t\t);\n\n\t\t\t\t\tconst filteredContacts = topParent.contact_set.filter((contact) => {\n\t\t\t\t\t\treturn contactUrls.indexOf(this._retrieveUrl(contact)) > -1;\n\t\t\t\t\t});\n\n\t\t\t\t\tthis.contact_set.set(filteredContacts);\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\n\t\ttoServer() {\n\t\t\tconst data = {\n\t\t\t\tnotes: this.notes,\n\t\t\t\tprimary_colour: this.primary_colour,\n\t\t\t\ttitle: this.title,\n\t\t\t\twebsite: this.website,\n\t\t\t\tteam_set: this._retrieveURL(this.team_set),\n\t\t\t};\n\n\t\t\tif (this.id) {\n\t\t\t\tdata.id = this.id;\n\t\t\t}\n\n\t\t\treturn data;\n\t\t},\n\t},\n);\n\nregister(\"CustomerModel\", CustomerModel);\n"],"file":"customer.js"}
@@ -4,15 +4,21 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.DeckNoteModel = void 0;
7
+
7
8
  var _base = require("./base.js");
9
+
8
10
  var _stateRegister = require("../state-register.js");
11
+
9
12
  /**
10
13
  * @constructor
11
14
  * @alias models.DeckModel
12
15
  * @extends models.BaseModel
13
16
  */
14
- var DeckNoteModel = exports.DeckNoteModel = _base.BaseModel.extend( /** @lends models.NoteModel# */{
17
+ var DeckNoteModel = _base.BaseModel.extend(
18
+ /** @lends models.NoteModel# */
19
+ {
15
20
  modelName: "decknotes",
21
+
16
22
  /**
17
23
  * @property {string} attached_to_key
18
24
  * @property {date} created_date
@@ -33,6 +39,8 @@ var DeckNoteModel = exports.DeckNoteModel = _base.BaseModel.extend( /** @lends m
33
39
  team: "TeamModel"
34
40
  }
35
41
  });
42
+
43
+ exports.DeckNoteModel = DeckNoteModel;
36
44
  DeckNoteModel.canBeEmpty = true;
37
45
  (0, _stateRegister.register)("DeckNoteModel", DeckNoteModel);
38
46
  //# sourceMappingURL=deck-note.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deck-note.js","names":["_base","require","_stateRegister","DeckNoteModel","exports","BaseModel","extend","modelName","props","created_date","modified_date","note","mime","parent_key","children","deck","user","team","canBeEmpty","register"],"sources":["../../src/models/deck-note.js"],"sourcesContent":["import { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.DeckModel\n * @extends models.BaseModel\n */\nexport const DeckNoteModel = BaseModel.extend(\n\t/** @lends models.NoteModel# */ {\n\t\tmodelName: \"decknotes\",\n\n\t\t/**\n\t\t * @property {string} attached_to_key\n\t\t * @property {date} created_date\n\t\t * @property {date} modified_date\n\t\t * @property {string} note\n\t\t * @property {string} mime\n\t\t */\n\t\tprops: {\n\t\t\tcreated_date: \"date\",\n\t\t\tmodified_date: \"date\",\n\t\t\tnote: \"string\",\n\t\t\tmime: \"string\",\n\t\t\tparent_key: \"string\",\n\t\t},\n\n\t\tchildren: {\n\t\t\tdeck: \"DeckModel\",\n\t\t\tuser: \"UserModel\",\n\t\t\tteam: \"TeamModel\",\n\t\t},\n\t},\n);\n\nDeckNoteModel.canBeEmpty = true;\n\nregister(\"DeckNoteModel\", DeckNoteModel);\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,IAAME,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAGE,eAAS,CAACC,MAAM,EAC5C,+BAAgC;EAC/BC,SAAS,EAAE,WAAW;EAEtB;AACF;AACA;AACA;AACA;AACA;AACA;EACEC,KAAK,EAAE;IACNC,YAAY,EAAE,MAAM;IACpBC,aAAa,EAAE,MAAM;IACrBC,IAAI,EAAE,QAAQ;IACdC,IAAI,EAAE,QAAQ;IACdC,UAAU,EAAE;EACb,CAAC;EAEDC,QAAQ,EAAE;IACTC,IAAI,EAAE,WAAW;IACjBC,IAAI,EAAE,WAAW;IACjBC,IAAI,EAAE;EACP;AACD,CACD,CAAC;AAEDd,aAAa,CAACe,UAAU,GAAG,IAAI;AAE/B,IAAAC,uBAAQ,EAAC,eAAe,EAAEhB,aAAa,CAAC"}
1
+ {"version":3,"sources":["../../src/models/deck-note.js"],"names":["DeckNoteModel","BaseModel","extend","modelName","props","created_date","modified_date","note","mime","parent_key","children","deck","user","team","canBeEmpty"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMA,aAAa,GAAGC,gBAAUC,MAAV;AAC5B;AAAgC;AAC/BC,EAAAA,SAAS,EAAE,WADoB;;AAG/B;AACF;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,KAAK,EAAE;AACNC,IAAAA,YAAY,EAAE,MADR;AAENC,IAAAA,aAAa,EAAE,MAFT;AAGNC,IAAAA,IAAI,EAAE,QAHA;AAINC,IAAAA,IAAI,EAAE,QAJA;AAKNC,IAAAA,UAAU,EAAE;AALN,GAVwB;AAkB/BC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,IAAI,EAAE,WADG;AAETC,IAAAA,IAAI,EAAE,WAFG;AAGTC,IAAAA,IAAI,EAAE;AAHG;AAlBqB,CADJ,CAAtB;;;AA2BPb,aAAa,CAACc,UAAd,GAA2B,IAA3B;AAEA,6BAAS,eAAT,EAA0Bd,aAA1B","sourcesContent":["import { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.DeckModel\n * @extends models.BaseModel\n */\nexport const DeckNoteModel = BaseModel.extend(\n\t/** @lends models.NoteModel# */ {\n\t\tmodelName: \"decknotes\",\n\n\t\t/**\n\t\t * @property {string} attached_to_key\n\t\t * @property {date} created_date\n\t\t * @property {date} modified_date\n\t\t * @property {string} note\n\t\t * @property {string} mime\n\t\t */\n\t\tprops: {\n\t\t\tcreated_date: \"date\",\n\t\t\tmodified_date: \"date\",\n\t\t\tnote: \"string\",\n\t\t\tmime: \"string\",\n\t\t\tparent_key: \"string\",\n\t\t},\n\n\t\tchildren: {\n\t\t\tdeck: \"DeckModel\",\n\t\t\tuser: \"UserModel\",\n\t\t\tteam: \"TeamModel\",\n\t\t},\n\t},\n);\n\nDeckNoteModel.canBeEmpty = true;\n\nregister(\"DeckNoteModel\", DeckNoteModel);\n"],"file":"deck-note.js"}
@@ -4,15 +4,21 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.DeckTagsModel = void 0;
7
+
7
8
  var _base = require("./base.js");
9
+
8
10
  var _stateRegister = require("../state-register.js");
11
+
9
12
  /**
10
13
  * @constructor
11
14
  * @alias models.DeckTagsModel
12
15
  * @extends models.BaseModel
13
16
  */
14
- var DeckTagsModel = exports.DeckTagsModel = _base.BaseModel.extend( /** @lends models.DeckTagsModel# */{
17
+ var DeckTagsModel = _base.BaseModel.extend(
18
+ /** @lends models.DeckTagsModel# */
19
+ {
15
20
  modelName: "deck-tags",
21
+
16
22
  /**
17
23
  * @property {object} items
18
24
  */
@@ -23,10 +29,12 @@ var DeckTagsModel = exports.DeckTagsModel = _base.BaseModel.extend( /** @lends m
23
29
  if (this.parent && this.parent.modelName === "decks") {
24
30
  return this.getFullURLPath("".concat(this.parent.getPlainURL(), "tags/"));
25
31
  }
32
+
26
33
  return _base.BaseModel.prototype.url.call(this);
27
34
  },
28
35
  fetch: function fetch(opts) {
29
36
  var _this = this;
37
+
30
38
  return _base.BaseModel.prototype.fetch.call(this, opts).tap(function (tags) {
31
39
  _this.items = tags;
32
40
  });
@@ -40,11 +48,17 @@ var DeckTagsModel = exports.DeckTagsModel = _base.BaseModel.extend( /** @lends m
40
48
  },
41
49
  save: function save() {
42
50
  var _this2 = this;
51
+
43
52
  return _base.BaseModel.prototype.save.call(this).tap(function (tags) {
44
53
  _this2.items = tags;
45
54
  });
46
55
  }
47
56
  });
57
+
58
+ exports.DeckTagsModel = DeckTagsModel;
59
+ DeckTagsModel.tags = {
60
+ SIGNING: "has-signing"
61
+ };
48
62
  DeckTagsModel.canBeEmpty = true;
49
63
  (0, _stateRegister.register)("DeckTagsModel", DeckTagsModel);
50
64
  //# sourceMappingURL=deck-tags.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deck-tags.js","names":["_base","require","_stateRegister","DeckTagsModel","exports","BaseModel","extend","modelName","props","items","url","parent","getFullURLPath","concat","getPlainURL","prototype","call","fetch","opts","_this","tap","tags","isNew","toServer","save","_this2","canBeEmpty","register"],"sources":["../../src/models/deck-tags.js"],"sourcesContent":["import { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.DeckTagsModel\n * @extends models.BaseModel\n */\nexport const DeckTagsModel = BaseModel.extend(\n\t/** @lends models.DeckTagsModel# */ {\n\t\tmodelName: \"deck-tags\",\n\n\t\t/**\n\t\t * @property {object} items\n\t\t */\n\t\tprops: {\n\t\t\titems: \"object\",\n\t\t},\n\n\t\turl() {\n\t\t\tif (this.parent && this.parent.modelName === \"decks\") {\n\t\t\t\treturn this.getFullURLPath(`${this.parent.getPlainURL()}tags/`);\n\t\t\t}\n\t\t\treturn BaseModel.prototype.url.call(this);\n\t\t},\n\n\t\tfetch(opts) {\n\t\t\treturn BaseModel.prototype.fetch.call(this, opts).tap((tags) => {\n\t\t\t\tthis.items = tags;\n\t\t\t});\n\t\t},\n\n\t\tisNew() {\n\t\t\t// Force deck-tags to always use PUT.\n\t\t\treturn false;\n\t\t},\n\n\t\ttoServer() {\n\t\t\treturn this.items;\n\t\t},\n\n\t\tsave() {\n\t\t\treturn BaseModel.prototype.save.call(this).tap((tags) => {\n\t\t\t\tthis.items = tags;\n\t\t\t});\n\t\t},\n\t},\n);\n\nDeckTagsModel.canBeEmpty = true;\n\nregister(\"DeckTagsModel\", DeckTagsModel);\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,IAAME,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAGE,eAAS,CAACC,MAAM,EAC5C,mCAAoC;EACnCC,SAAS,EAAE,WAAW;EAEtB;AACF;AACA;EACEC,KAAK,EAAE;IACNC,KAAK,EAAE;EACR,CAAC;EAEDC,GAAG,WAAAA,IAAA,EAAG;IACL,IAAI,IAAI,CAACC,MAAM,IAAI,IAAI,CAACA,MAAM,CAACJ,SAAS,KAAK,OAAO,EAAE;MACrD,OAAO,IAAI,CAACK,cAAc,IAAAC,MAAA,CAAI,IAAI,CAACF,MAAM,CAACG,WAAW,CAAC,CAAC,UAAO,CAAC;IAChE;IACA,OAAOT,eAAS,CAACU,SAAS,CAACL,GAAG,CAACM,IAAI,CAAC,IAAI,CAAC;EAC1C,CAAC;EAEDC,KAAK,WAAAA,MAACC,IAAI,EAAE;IAAA,IAAAC,KAAA;IACX,OAAOd,eAAS,CAACU,SAAS,CAACE,KAAK,CAACD,IAAI,CAAC,IAAI,EAAEE,IAAI,CAAC,CAACE,GAAG,CAAC,UAACC,IAAI,EAAK;MAC/DF,KAAI,CAACV,KAAK,GAAGY,IAAI;IAClB,CAAC,CAAC;EACH,CAAC;EAEDC,KAAK,WAAAA,MAAA,EAAG;IACP;IACA,OAAO,KAAK;EACb,CAAC;EAEDC,QAAQ,WAAAA,SAAA,EAAG;IACV,OAAO,IAAI,CAACd,KAAK;EAClB,CAAC;EAEDe,IAAI,WAAAA,KAAA,EAAG;IAAA,IAAAC,MAAA;IACN,OAAOpB,eAAS,CAACU,SAAS,CAACS,IAAI,CAACR,IAAI,CAAC,IAAI,CAAC,CAACI,GAAG,CAAC,UAACC,IAAI,EAAK;MACxDI,MAAI,CAAChB,KAAK,GAAGY,IAAI;IAClB,CAAC,CAAC;EACH;AACD,CACD,CAAC;AAEDlB,aAAa,CAACuB,UAAU,GAAG,IAAI;AAE/B,IAAAC,uBAAQ,EAAC,eAAe,EAAExB,aAAa,CAAC"}
1
+ {"version":3,"sources":["../../src/models/deck-tags.js"],"names":["DeckTagsModel","BaseModel","extend","modelName","props","items","url","parent","getFullURLPath","getPlainURL","prototype","call","fetch","opts","tap","tags","isNew","toServer","save","SIGNING","canBeEmpty"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMA,aAAa,GAAGC,gBAAUC,MAAV;AAC5B;AAAoC;AACnCC,EAAAA,SAAS,EAAE,WADwB;;AAGnC;AACF;AACA;AACEC,EAAAA,KAAK,EAAE;AACNC,IAAAA,KAAK,EAAE;AADD,GAN4B;AAUnCC,EAAAA,GAVmC,iBAU7B;AACL,QAAI,KAAKC,MAAL,IAAe,KAAKA,MAAL,CAAYJ,SAAZ,KAA0B,OAA7C,EAAsD;AACrD,aAAO,KAAKK,cAAL,WAAuB,KAAKD,MAAL,CAAYE,WAAZ,EAAvB,WAAP;AACA;;AACD,WAAOR,gBAAUS,SAAV,CAAoBJ,GAApB,CAAwBK,IAAxB,CAA6B,IAA7B,CAAP;AACA,GAfkC;AAiBnCC,EAAAA,KAjBmC,iBAiB7BC,IAjB6B,EAiBvB;AAAA;;AACX,WAAOZ,gBAAUS,SAAV,CAAoBE,KAApB,CAA0BD,IAA1B,CAA+B,IAA/B,EAAqCE,IAArC,EAA2CC,GAA3C,CAA+C,UAACC,IAAD,EAAU;AAC/D,MAAA,KAAI,CAACV,KAAL,GAAaU,IAAb;AACA,KAFM,CAAP;AAGA,GArBkC;AAuBnCC,EAAAA,KAvBmC,mBAuB3B;AACP;AACA,WAAO,KAAP;AACA,GA1BkC;AA4BnCC,EAAAA,QA5BmC,sBA4BxB;AACV,WAAO,KAAKZ,KAAZ;AACA,GA9BkC;AAgCnCa,EAAAA,IAhCmC,kBAgC5B;AAAA;;AACN,WAAOjB,gBAAUS,SAAV,CAAoBQ,IAApB,CAAyBP,IAAzB,CAA8B,IAA9B,EAAoCG,GAApC,CAAwC,UAACC,IAAD,EAAU;AACxD,MAAA,MAAI,CAACV,KAAL,GAAaU,IAAb;AACA,KAFM,CAAP;AAGA;AApCkC,CADR,CAAtB;;;AAyCPf,aAAa,CAACe,IAAd,GAAqB;AACpBI,EAAAA,OAAO,EAAE;AADW,CAArB;AAIAnB,aAAa,CAACoB,UAAd,GAA2B,IAA3B;AAEA,6BAAS,eAAT,EAA0BpB,aAA1B","sourcesContent":["import { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.DeckTagsModel\n * @extends models.BaseModel\n */\nexport const DeckTagsModel = BaseModel.extend(\n\t/** @lends models.DeckTagsModel# */ {\n\t\tmodelName: \"deck-tags\",\n\n\t\t/**\n\t\t * @property {object} items\n\t\t */\n\t\tprops: {\n\t\t\titems: \"object\",\n\t\t},\n\n\t\turl() {\n\t\t\tif (this.parent && this.parent.modelName === \"decks\") {\n\t\t\t\treturn this.getFullURLPath(`${this.parent.getPlainURL()}tags/`);\n\t\t\t}\n\t\t\treturn BaseModel.prototype.url.call(this);\n\t\t},\n\n\t\tfetch(opts) {\n\t\t\treturn BaseModel.prototype.fetch.call(this, opts).tap((tags) => {\n\t\t\t\tthis.items = tags;\n\t\t\t});\n\t\t},\n\n\t\tisNew() {\n\t\t\t// Force deck-tags to always use PUT.\n\t\t\treturn false;\n\t\t},\n\n\t\ttoServer() {\n\t\t\treturn this.items;\n\t\t},\n\n\t\tsave() {\n\t\t\treturn BaseModel.prototype.save.call(this).tap((tags) => {\n\t\t\t\tthis.items = tags;\n\t\t\t});\n\t\t},\n\t},\n);\n\nDeckTagsModel.tags = {\n\tSIGNING: \"has-signing\",\n};\n\nDeckTagsModel.canBeEmpty = true;\n\nregister(\"DeckTagsModel\", DeckTagsModel);\n"],"file":"deck-tags.js"}