@livepreso/api 6.41.0 → 6.44.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.
- package/.eslintrc.js +5 -0
- package/.rush/temp/build-cache-tar.log +7 -0
- package/.rush/temp/package-deps_test.json +170 -0
- package/.rush/temp/shrinkwrap-deps.json +957 -0
- package/CHANGELOG.json +53 -0
- package/CHANGELOG.md +32 -0
- package/api.build.log +4 -0
- package/babel.config.js +9 -18
- package/cjs/api.js +1 -1
- package/cjs/api.js.map +1 -1
- package/cjs/api.spec.js +2 -2
- package/cjs/api.spec.js.map +1 -1
- package/cjs/auth.js +6 -5
- package/cjs/auth.js.map +1 -1
- package/cjs/auth.spec.js +25 -23
- package/cjs/auth.spec.js.map +1 -1
- package/cjs/caching.js +3 -3
- package/cjs/collections/activity.js +22 -27
- package/cjs/collections/activity.js.map +1 -1
- package/cjs/collections/adjunct-sections.js +2 -2
- package/cjs/collections/adjunct-sections.js.map +1 -1
- package/cjs/collections/adjunct-slides.js +2 -2
- package/cjs/collections/adjunct-slides.js.map +1 -1
- package/cjs/collections/adjunct-sub-slides.js +2 -2
- package/cjs/collections/adjunct-sub-slides.js.map +1 -1
- package/cjs/collections/appointment-adjunct-tags.js +28 -0
- package/cjs/collections/appointment-adjunct-tags.js.map +1 -0
- package/cjs/collections/appointment-deckversion-tags.js +28 -0
- package/cjs/collections/appointment-deckversion-tags.js.map +1 -0
- package/cjs/collections/appointment-duplicates.js +2 -2
- package/cjs/collections/appointment-duplicates.js.map +1 -1
- package/cjs/collections/appointment-editors.js +2 -2
- package/cjs/collections/appointment-editors.js.map +1 -1
- package/cjs/collections/appointment-section-tags.js +28 -0
- package/cjs/collections/appointment-section-tags.js.map +1 -0
- package/cjs/collections/appointment-slide-tags.js +28 -0
- package/cjs/collections/appointment-slide-tags.js.map +1 -0
- package/cjs/collections/appointment-tags.js +208 -0
- package/cjs/collections/appointment-tags.js.map +1 -0
- package/cjs/collections/appointments.js +10 -6
- package/cjs/collections/appointments.js.map +1 -1
- package/cjs/collections/assets.js +2 -2
- package/cjs/collections/assets.js.map +1 -1
- package/cjs/collections/auto-adjuncts.js +7 -3
- package/cjs/collections/auto-adjuncts.js.map +1 -1
- package/cjs/collections/base.js +103 -25
- package/cjs/collections/base.js.map +1 -1
- package/cjs/collections/base.spec.js +231 -123
- package/cjs/collections/base.spec.js.map +1 -1
- package/cjs/collections/cms-vals.js +2 -2
- package/cjs/collections/cms-vals.js.map +1 -1
- package/cjs/collections/contacts.js +2 -2
- package/cjs/collections/contacts.js.map +1 -1
- package/cjs/collections/created-assets.js +2 -2
- package/cjs/collections/created-assets.js.map +1 -1
- package/cjs/collections/customers.js +2 -2
- package/cjs/collections/customers.js.map +1 -1
- package/cjs/collections/deck-notes.js +2 -2
- package/cjs/collections/deck-notes.js.map +1 -1
- package/cjs/collections/deck-versions.js +20 -8
- package/cjs/collections/deck-versions.js.map +1 -1
- package/cjs/collections/decks.js +2 -2
- package/cjs/collections/decks.js.map +1 -1
- package/cjs/collections/deleted-assets.js +2 -2
- package/cjs/collections/deleted-assets.js.map +1 -1
- package/cjs/collections/dispatches.js +4 -4
- package/cjs/collections/dispatches.js.map +1 -1
- package/cjs/collections/event-objects.js +2 -2
- package/cjs/collections/event-objects.js.map +1 -1
- package/cjs/collections/events.js +2 -2
- package/cjs/collections/events.js.map +1 -1
- package/cjs/collections/groups.js +2 -2
- package/cjs/collections/groups.js.map +1 -1
- package/cjs/collections/images.js +2 -2
- package/cjs/collections/images.js.map +1 -1
- package/cjs/collections/locations.js +2 -2
- package/cjs/collections/locations.js.map +1 -1
- package/cjs/collections/opportunities.js +2 -2
- package/cjs/collections/opportunities.js.map +1 -1
- package/cjs/collections/pack-diffs.js +2 -2
- package/cjs/collections/pack-diffs.js.map +1 -1
- package/cjs/collections/packs.js +2 -2
- package/cjs/collections/packs.js.map +1 -1
- package/cjs/collections/presets.js +2 -2
- package/cjs/collections/presets.js.map +1 -1
- package/cjs/collections/section-selections.js +2 -2
- package/cjs/collections/section-selections.js.map +1 -1
- package/cjs/collections/sections.js +2 -2
- package/cjs/collections/sections.js.map +1 -1
- package/cjs/collections/slide-selections.js +2 -2
- package/cjs/collections/slide-selections.js.map +1 -1
- package/cjs/collections/slides.js +2 -2
- package/cjs/collections/slides.js.map +1 -1
- package/cjs/collections/snapshots.js +2 -2
- package/cjs/collections/snapshots.js.map +1 -1
- package/cjs/collections/sub-slides.js +2 -2
- package/cjs/collections/sub-slides.js.map +1 -1
- package/cjs/collections/tags.js +28 -0
- package/cjs/collections/tags.js.map +1 -0
- package/cjs/collections/teams.js +2 -2
- package/cjs/collections/teams.js.map +1 -1
- package/cjs/collections/templates.js +2 -2
- package/cjs/collections/templates.js.map +1 -1
- package/cjs/collections/uploads.js +2 -2
- package/cjs/collections/uploads.js.map +1 -1
- package/cjs/collections/users.js +2 -2
- package/cjs/collections/users.js.map +1 -1
- package/cjs/collections.js +115 -0
- package/cjs/collections.js.map +1 -1
- package/cjs/index.js +3 -0
- package/cjs/index.js.map +1 -1
- package/cjs/middleware.js.map +1 -1
- package/cjs/middlewares/auth.js +10 -6
- package/cjs/middlewares/auth.js.map +1 -1
- package/cjs/middlewares/base.js +1 -3
- package/cjs/middlewares/base.js.map +1 -1
- package/cjs/middlewares/json.js +10 -6
- package/cjs/middlewares/json.js.map +1 -1
- package/cjs/middlewares/redirect.js +10 -6
- package/cjs/middlewares/redirect.js.map +1 -1
- package/cjs/models/activity-item.js +6 -2
- package/cjs/models/activity-item.js.map +1 -1
- package/cjs/models/adjunct-section.js +2 -2
- package/cjs/models/adjunct-section.js.map +1 -1
- package/cjs/models/adjunct-slide.js +2 -2
- package/cjs/models/adjunct-slide.js.map +1 -1
- package/cjs/models/adjunct-sub-slide.js +2 -2
- package/cjs/models/adjunct-sub-slide.js.map +1 -1
- package/cjs/models/adjunct.js +2 -2
- package/cjs/models/adjunct.js.map +1 -1
- package/cjs/models/api.js.map +1 -1
- package/cjs/models/appointment-adjunct-tags.js +52 -0
- package/cjs/models/appointment-adjunct-tags.js.map +1 -0
- package/cjs/models/appointment-deckversion-tags.js +52 -0
- package/cjs/models/appointment-deckversion-tags.js.map +1 -0
- package/cjs/models/appointment-duplicate.js +8 -3
- package/cjs/models/appointment-duplicate.js.map +1 -1
- package/cjs/models/appointment-editor.js +2 -2
- package/cjs/models/appointment-editor.js.map +1 -1
- package/cjs/models/appointment-section-tags.js +52 -0
- package/cjs/models/appointment-section-tags.js.map +1 -0
- package/cjs/models/appointment-slide-tags.js +52 -0
- package/cjs/models/appointment-slide-tags.js.map +1 -0
- package/cjs/models/appointment-stats.js +2 -2
- package/cjs/models/appointment-stats.js.map +1 -1
- package/cjs/models/appointment-tags.js +48 -0
- package/cjs/models/appointment-tags.js.map +1 -0
- package/cjs/models/appointment-viewing.js +2 -2
- package/cjs/models/appointment-viewing.js.map +1 -1
- package/cjs/models/appointment.js +16 -7
- package/cjs/models/appointment.js.map +1 -1
- package/cjs/models/asset.js +2 -2
- package/cjs/models/asset.js.map +1 -1
- package/cjs/models/auto-adjunct-key-check.js +2 -2
- package/cjs/models/auto-adjunct-key-check.js.map +1 -1
- package/cjs/models/auto-adjunct.js +2 -2
- package/cjs/models/auto-adjunct.js.map +1 -1
- package/cjs/models/base.js +25 -36
- package/cjs/models/base.js.map +1 -1
- package/cjs/models/base.spec.js +45 -45
- package/cjs/models/base.spec.js.map +1 -1
- package/cjs/models/choicelist.js.map +1 -1
- package/cjs/models/cms-val.js.map +1 -1
- package/cjs/models/contact.js +2 -2
- package/cjs/models/contact.js.map +1 -1
- package/cjs/models/customer.js +2 -2
- package/cjs/models/customer.js.map +1 -1
- package/cjs/models/deck-note.js +2 -2
- package/cjs/models/deck-note.js.map +1 -1
- package/cjs/models/deck-tags.js +61 -0
- package/cjs/models/deck-tags.js.map +1 -0
- package/cjs/models/deck-version.js +5 -3
- package/cjs/models/deck-version.js.map +1 -1
- package/cjs/models/deck.js +6 -3
- package/cjs/models/deck.js.map +1 -1
- package/cjs/models/dispatch-preview.js +3 -3
- package/cjs/models/dispatch-preview.js.map +1 -1
- package/cjs/models/dispatch.js +2 -2
- package/cjs/models/dispatch.js.map +1 -1
- package/cjs/models/envs.js.map +1 -1
- package/cjs/models/event-object.js +2 -2
- package/cjs/models/event-object.js.map +1 -1
- package/cjs/models/event.js +2 -2
- package/cjs/models/event.js.map +1 -1
- package/cjs/models/feed-data.js +2 -2
- package/cjs/models/feed-data.js.map +1 -1
- package/cjs/models/file.js +2 -2
- package/cjs/models/file.js.map +1 -1
- package/cjs/models/group.js +2 -2
- package/cjs/models/group.js.map +1 -1
- package/cjs/models/handover.js +2 -2
- package/cjs/models/handover.js.map +1 -1
- package/cjs/models/hosted-preso.js +2 -2
- package/cjs/models/hosted-preso.js.map +1 -1
- package/cjs/models/image.js +2 -2
- package/cjs/models/image.js.map +1 -1
- package/cjs/models/location.js +2 -2
- package/cjs/models/location.js.map +1 -1
- package/cjs/models/manifest-json.js +83 -58
- package/cjs/models/manifest-json.js.map +1 -1
- package/cjs/models/onshare.js +2 -2
- package/cjs/models/onshare.js.map +1 -1
- package/cjs/models/opportunity.js +2 -2
- package/cjs/models/opportunity.js.map +1 -1
- package/cjs/models/pack-diff.js +2 -2
- package/cjs/models/pack-diff.js.map +1 -1
- package/cjs/models/pack.js +2 -2
- package/cjs/models/pack.js.map +1 -1
- package/cjs/models/preset.js +22 -2
- package/cjs/models/preset.js.map +1 -1
- package/cjs/models/refresh-request.js +2 -2
- package/cjs/models/refresh-request.js.map +1 -1
- package/cjs/models/room.js +2 -2
- package/cjs/models/room.js.map +1 -1
- package/cjs/models/salesforce-lookup.js +2 -2
- package/cjs/models/salesforce-lookup.js.map +1 -1
- package/cjs/models/section-selection.js +2 -2
- package/cjs/models/section-selection.js.map +1 -1
- package/cjs/models/section.js +2 -2
- package/cjs/models/section.js.map +1 -1
- package/cjs/models/slide-selection.js +2 -2
- package/cjs/models/slide-selection.js.map +1 -1
- package/cjs/models/slide.js +2 -2
- package/cjs/models/slide.js.map +1 -1
- package/cjs/models/snapshot.js +2 -2
- package/cjs/models/snapshot.js.map +1 -1
- package/cjs/models/sub-slide.js +2 -2
- package/cjs/models/sub-slide.js.map +1 -1
- package/cjs/models/support-ticket.js +2 -2
- package/cjs/models/support-ticket.js.map +1 -1
- package/cjs/models/tag.js +54 -0
- package/cjs/models/tag.js.map +1 -0
- package/cjs/models/team.js +2 -2
- package/cjs/models/team.js.map +1 -1
- package/cjs/models/template.js +2 -2
- package/cjs/models/template.js.map +1 -1
- package/cjs/models/tenancy.js +2 -2
- package/cjs/models/tenancy.js.map +1 -1
- package/cjs/models/timing-log.js +20 -41
- package/cjs/models/timing-log.js.map +1 -1
- package/cjs/models/timing-log.spec.js +18 -86
- package/cjs/models/timing-log.spec.js.map +1 -1
- package/cjs/models/transcribe-socket.js +2 -2
- package/cjs/models/transcribe-socket.js.map +1 -1
- package/cjs/models/upload.js +2 -2
- package/cjs/models/upload.js.map +1 -1
- package/cjs/models/user.js +4 -3
- package/cjs/models/user.js.map +1 -1
- package/cjs/models/user.spec.js +10 -8
- package/cjs/models/user.spec.js.map +1 -1
- package/cjs/models.js +148 -0
- package/cjs/models.js.map +1 -1
- package/cjs/presentation/appointment-presentation.js +13 -5
- package/cjs/presentation/appointment-presentation.js.map +1 -1
- package/cjs/presentation/base-presentation-collection.js.map +1 -1
- package/cjs/presentation/base-presentation-model.js +65 -0
- package/cjs/presentation/base-presentation-model.js.map +1 -1
- package/cjs/presentation/base-presentation-model.spec.js +87 -0
- package/cjs/presentation/base-presentation-model.spec.js.map +1 -1
- package/cjs/presentation/presentation-deck.js +31 -20
- package/cjs/presentation/presentation-deck.js.map +1 -1
- package/cjs/presentation/presentation-deck.spec.js +15 -13
- package/cjs/presentation/presentation-deck.spec.js.map +1 -1
- package/cjs/presentation/presentation-decks.js +2 -2
- package/cjs/presentation/presentation-decks.js.map +1 -1
- package/cjs/presentation/presentation-section.js +36 -17
- package/cjs/presentation/presentation-section.js.map +1 -1
- package/cjs/presentation/presentation-section.spec.js +418 -0
- package/cjs/presentation/presentation-section.spec.js.map +1 -0
- package/cjs/presentation/presentation-sections.js +2 -2
- package/cjs/presentation/presentation-sections.js.map +1 -1
- package/cjs/presentation/presentation-slide.js +35 -18
- package/cjs/presentation/presentation-slide.js.map +1 -1
- package/cjs/presentation/presentation-slide.spec.js +294 -0
- package/cjs/presentation/presentation-slide.spec.js.map +1 -0
- package/cjs/presentation/presentation-slides.js +2 -2
- package/cjs/presentation/presentation-slides.js.map +1 -1
- package/cjs/presentation/presentation-subslide.js +11 -7
- package/cjs/presentation/presentation-subslide.js.map +1 -1
- package/cjs/presentation/presentation-subslide.spec.js +68 -20
- package/cjs/presentation/presentation-subslide.spec.js.map +1 -1
- package/cjs/presentation/presentation-subslides.js +2 -2
- package/cjs/presentation/presentation-subslides.js.map +1 -1
- package/cjs/presentation/presentation.js +19 -9
- package/cjs/presentation/presentation.js.map +1 -1
- package/cjs/presentation.js +10 -0
- package/cjs/presentation.js.map +1 -1
- package/cjs/state-register.js +11 -1
- package/cjs/state-register.js.map +1 -1
- package/cjs/sync.js +7 -7
- package/cjs/sync.js.map +1 -1
- package/cjs/utils.js +7 -7
- package/cjs/utils.js.map +1 -1
- package/cjs/utils.spec.js.map +1 -1
- package/config/rush-project.json +11 -0
- package/index.js +0 -1
- package/jest.config.js +4 -4
- package/package.json +19 -59
- package/setup-tests.js +2 -1
- package/src/api.js +3 -3
- package/src/api.spec.js +3 -4
- package/src/auth.js +6 -7
- package/src/auth.spec.js +3 -4
- package/src/collections/activity.js +5 -6
- package/src/collections/adjunct-sections.js +4 -4
- package/src/collections/adjunct-slides.js +4 -4
- package/src/collections/adjunct-sub-slides.js +2 -2
- package/src/collections/appointment-adjunct-tags.js +18 -0
- package/src/collections/appointment-deckversion-tags.js +21 -0
- package/src/collections/appointment-duplicates.js +2 -2
- package/src/collections/appointment-editors.js +2 -2
- package/src/collections/appointment-section-tags.js +18 -0
- package/src/collections/appointment-slide-tags.js +18 -0
- package/src/collections/appointment-tags.js +136 -0
- package/src/collections/appointments.js +18 -23
- package/src/collections/assets.js +2 -2
- package/src/collections/auto-adjuncts.js +5 -5
- package/src/collections/base.js +88 -18
- package/src/collections/base.spec.js +100 -8
- package/src/collections/cms-vals.js +3 -3
- package/src/collections/contacts.js +2 -2
- package/src/collections/created-assets.js +2 -2
- package/src/collections/customers.js +2 -2
- package/src/collections/deck-notes.js +2 -2
- package/src/collections/deck-versions.js +18 -15
- package/src/collections/decks.js +2 -2
- package/src/collections/deleted-assets.js +2 -2
- package/src/collections/dispatches.js +8 -13
- package/src/collections/event-objects.js +2 -2
- package/src/collections/events.js +2 -2
- package/src/collections/groups.js +2 -2
- package/src/collections/images.js +2 -2
- package/src/collections/locations.js +2 -2
- package/src/collections/opportunities.js +2 -2
- package/src/collections/pack-diffs.js +2 -2
- package/src/collections/packs.js +2 -2
- package/src/collections/presets.js +2 -2
- package/src/collections/section-selections.js +4 -4
- package/src/collections/sections.js +2 -2
- package/src/collections/slide-selections.js +4 -4
- package/src/collections/slides.js +2 -2
- package/src/collections/snapshots.js +2 -2
- package/src/collections/sub-slides.js +2 -2
- package/src/collections/tags.js +18 -0
- package/src/collections/teams.js +2 -2
- package/src/collections/templates.js +2 -2
- package/src/collections/uploads.js +2 -2
- package/src/collections/users.js +2 -2
- package/src/collections.js +6 -0
- package/src/index.js +1 -4
- package/src/middleware.js +1 -1
- package/src/middlewares/json.js +2 -2
- package/src/middlewares/redirect.js +1 -2
- package/src/models/activity-item.js +6 -6
- package/src/models/adjunct-section.js +5 -5
- package/src/models/adjunct-slide.js +5 -5
- package/src/models/adjunct-sub-slide.js +5 -5
- package/src/models/adjunct.js +4 -4
- package/src/models/api.js +1 -1
- package/src/models/appointment-adjunct-tags.js +41 -0
- package/src/models/appointment-deckversion-tags.js +41 -0
- package/src/models/appointment-duplicate.js +7 -7
- package/src/models/appointment-editor.js +6 -6
- package/src/models/appointment-section-tags.js +41 -0
- package/src/models/appointment-slide-tags.js +41 -0
- package/src/models/appointment-stats.js +5 -5
- package/src/models/appointment-tags.js +39 -0
- package/src/models/appointment-viewing.js +3 -3
- package/src/models/appointment.js +35 -29
- package/src/models/asset.js +5 -5
- package/src/models/auto-adjunct-key-check.js +5 -5
- package/src/models/auto-adjunct.js +4 -4
- package/src/models/base.js +36 -37
- package/src/models/base.spec.js +61 -62
- package/src/models/choicelist.js +2 -2
- package/src/models/cms-val.js +3 -3
- package/src/models/contact.js +9 -9
- package/src/models/customer.js +13 -13
- package/src/models/deck-note.js +4 -4
- package/src/models/deck-tags.js +52 -0
- package/src/models/deck-version.js +9 -8
- package/src/models/deck.js +8 -6
- package/src/models/dispatch-preview.js +6 -7
- package/src/models/dispatch.js +6 -7
- package/src/models/envs.js +1 -1
- package/src/models/event-object.js +6 -6
- package/src/models/event.js +7 -7
- package/src/models/feed-data.js +5 -5
- package/src/models/file.js +4 -4
- package/src/models/group.js +3 -3
- package/src/models/handover.js +5 -5
- package/src/models/hosted-preso.js +5 -5
- package/src/models/image.js +4 -4
- package/src/models/location.js +5 -5
- package/src/models/manifest-json.js +77 -30
- package/src/models/onshare.js +5 -5
- package/src/models/opportunity.js +5 -5
- package/src/models/pack-diff.js +5 -5
- package/src/models/pack.js +4 -4
- package/src/models/preset.js +24 -5
- package/src/models/refresh-request.js +6 -6
- package/src/models/room.js +3 -3
- package/src/models/salesforce-lookup.js +3 -3
- package/src/models/section-selection.js +6 -6
- package/src/models/section.js +7 -7
- package/src/models/slide-selection.js +6 -6
- package/src/models/slide.js +7 -7
- package/src/models/snapshot.js +5 -5
- package/src/models/sub-slide.js +5 -5
- package/src/models/support-ticket.js +4 -4
- package/src/models/tag.js +42 -0
- package/src/models/team.js +4 -4
- package/src/models/template.js +4 -4
- package/src/models/tenancy.js +5 -5
- package/src/models/timing-log.js +18 -18
- package/src/models/timing-log.spec.js +28 -29
- package/src/models/transcribe-socket.js +3 -3
- package/src/models/upload.js +3 -3
- package/src/models/user.js +19 -17
- package/src/models/user.spec.js +2 -2
- package/src/models.js +7 -0
- package/src/presentation/appointment-presentation.js +14 -10
- package/src/presentation/base-presentation-model.js +67 -5
- package/src/presentation/base-presentation-model.spec.js +114 -22
- package/src/presentation/presentation-deck.js +54 -52
- package/src/presentation/presentation-deck.spec.js +26 -27
- package/src/presentation/presentation-decks.js +2 -2
- package/src/presentation/presentation-section.js +62 -48
- package/src/presentation/presentation-section.spec.js +363 -0
- package/src/presentation/presentation-sections.js +2 -2
- package/src/presentation/presentation-slide.js +51 -36
- package/src/presentation/presentation-slide.spec.js +250 -0
- package/src/presentation/presentation-slides.js +2 -2
- package/src/presentation/presentation-subslide.js +24 -17
- package/src/presentation/presentation-subslide.spec.js +40 -12
- package/src/presentation/presentation-subslides.js +2 -2
- package/src/presentation/presentation.js +27 -15
- package/src/state-register.js +7 -0
- package/src/sync.js +21 -23
- package/src/utils.js +8 -7
- package/src/utils.spec.js +15 -15
- package/.editorconfig +0 -9
- package/.eslintrc +0 -25
- package/.prettierrc.js +0 -3
- package/jsdoc.json +0 -12
- package/yarn.lock +0 -8099
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
import "./presentation-slides.js";
|
|
2
2
|
|
|
3
|
-
import url2 from "url";
|
|
4
|
-
|
|
5
|
-
import _ from "lodash";
|
|
6
|
-
|
|
7
|
-
import { getAssetRoot } from "../index.js";
|
|
8
3
|
import {
|
|
9
4
|
AdjunctSectionModel,
|
|
10
5
|
AdjunctSlideModel,
|
|
@@ -12,11 +7,15 @@ import {
|
|
|
12
7
|
DeckVersionModel,
|
|
13
8
|
SectionModel,
|
|
14
9
|
SlideModel,
|
|
15
|
-
TemplateModel
|
|
10
|
+
TemplateModel,
|
|
16
11
|
} from "../models.js";
|
|
17
|
-
|
|
12
|
+
|
|
18
13
|
import { BasePresentationModel } from "./base-presentation-model.js";
|
|
19
14
|
import { PresentationSlide } from "./presentation-slide.js";
|
|
15
|
+
import _ from "lodash";
|
|
16
|
+
import { getAssetRoot } from "../index.js";
|
|
17
|
+
import { register } from "../state-register.js";
|
|
18
|
+
import url2 from "url";
|
|
20
19
|
|
|
21
20
|
/**
|
|
22
21
|
* @constructor
|
|
@@ -57,23 +56,23 @@ export const PresentationSection = BasePresentationModel.extend(
|
|
|
57
56
|
adjunctID: "number",
|
|
58
57
|
autoAdjunctID: {
|
|
59
58
|
type: "number",
|
|
60
|
-
default: null
|
|
59
|
+
default: null,
|
|
61
60
|
},
|
|
62
61
|
templateID: {
|
|
63
62
|
type: "number",
|
|
64
|
-
default: null
|
|
63
|
+
default: null,
|
|
65
64
|
},
|
|
66
65
|
createdByAutoAdjunct: {
|
|
67
66
|
type: "boolean",
|
|
68
|
-
default: false
|
|
67
|
+
default: false,
|
|
69
68
|
},
|
|
70
69
|
createdByTemplate: {
|
|
71
70
|
type: "boolean",
|
|
72
|
-
default: false
|
|
71
|
+
default: false,
|
|
73
72
|
},
|
|
74
73
|
adjunctSlideLimit: {
|
|
75
74
|
type: "number",
|
|
76
|
-
default: 0
|
|
75
|
+
default: 0,
|
|
77
76
|
},
|
|
78
77
|
html: "string",
|
|
79
78
|
css: "string",
|
|
@@ -94,22 +93,22 @@ export const PresentationSection = BasePresentationModel.extend(
|
|
|
94
93
|
impostor: "boolean",
|
|
95
94
|
isWelcome: {
|
|
96
95
|
type: "boolean",
|
|
97
|
-
default: () => false
|
|
98
|
-
}
|
|
96
|
+
default: () => false,
|
|
97
|
+
},
|
|
99
98
|
},
|
|
100
99
|
|
|
101
100
|
/**
|
|
102
101
|
* @property {models.AdjunctModel} adjunct
|
|
103
102
|
*/
|
|
104
103
|
children: {
|
|
105
|
-
adjunct: "AdjunctModel"
|
|
104
|
+
adjunct: "AdjunctModel",
|
|
106
105
|
},
|
|
107
106
|
|
|
108
107
|
/**
|
|
109
108
|
* @property {presentation.PresentationSlideCollection} slides
|
|
110
109
|
*/
|
|
111
110
|
collections: {
|
|
112
|
-
slides: "PresentationSlideCollection"
|
|
111
|
+
slides: "PresentationSlideCollection",
|
|
113
112
|
},
|
|
114
113
|
|
|
115
114
|
addSlides(slides, options = {}) {
|
|
@@ -119,7 +118,7 @@ export const PresentationSection = BasePresentationModel.extend(
|
|
|
119
118
|
choicelist: null,
|
|
120
119
|
getUniqueAdjunctID: () => {
|
|
121
120
|
return parseInt(_.uniqueId(), 10);
|
|
122
|
-
}
|
|
121
|
+
},
|
|
123
122
|
});
|
|
124
123
|
|
|
125
124
|
if (this.createdByTemplate) {
|
|
@@ -127,7 +126,7 @@ export const PresentationSection = BasePresentationModel.extend(
|
|
|
127
126
|
}
|
|
128
127
|
|
|
129
128
|
this.slides.add(
|
|
130
|
-
slides.map(slide => {
|
|
129
|
+
slides.map((slide) => {
|
|
131
130
|
if (slide.modelName === "adjunctslides") {
|
|
132
131
|
return PresentationSlide.createFromAdjunctSlide(
|
|
133
132
|
slide,
|
|
@@ -154,7 +153,7 @@ export const PresentationSection = BasePresentationModel.extend(
|
|
|
154
153
|
}
|
|
155
154
|
}
|
|
156
155
|
return this._url;
|
|
157
|
-
}
|
|
156
|
+
},
|
|
158
157
|
}
|
|
159
158
|
);
|
|
160
159
|
|
|
@@ -165,11 +164,11 @@ export const PresentationSection = BasePresentationModel.extend(
|
|
|
165
164
|
* @param {object} [options]
|
|
166
165
|
* @returns {presentation.PresentationSection}
|
|
167
166
|
*/
|
|
168
|
-
PresentationSection.createFromSection = function(sectionModel, options = {}) {
|
|
167
|
+
PresentationSection.createFromSection = function (sectionModel, options = {}) {
|
|
169
168
|
_.defaults(options, {
|
|
170
169
|
rootAssetPath: null,
|
|
171
170
|
selections: null,
|
|
172
|
-
choicelist: null
|
|
171
|
+
choicelist: null,
|
|
173
172
|
});
|
|
174
173
|
|
|
175
174
|
let html;
|
|
@@ -193,6 +192,8 @@ PresentationSection.createFromSection = function(sectionModel, options = {}) {
|
|
|
193
192
|
options
|
|
194
193
|
);
|
|
195
194
|
|
|
195
|
+
const tags = PresentationSection.getTags(sectionModel, options);
|
|
196
|
+
|
|
196
197
|
const section = new PresentationSection({
|
|
197
198
|
id: sectionModel.id,
|
|
198
199
|
adjunctID: null,
|
|
@@ -205,12 +206,12 @@ PresentationSection.createFromSection = function(sectionModel, options = {}) {
|
|
|
205
206
|
impostor: false,
|
|
206
207
|
title: sectionModel.title,
|
|
207
208
|
deckversion: sectionModel.deckversion.id,
|
|
208
|
-
editable:
|
|
209
|
-
tags
|
|
209
|
+
editable: tags.indexOf("editable") > -1,
|
|
210
|
+
tags,
|
|
210
211
|
index: config.sequence,
|
|
211
212
|
sequence: config.sequence,
|
|
212
213
|
visible: config.visible,
|
|
213
|
-
selectionID: config.selectionID
|
|
214
|
+
selectionID: config.selectionID,
|
|
214
215
|
});
|
|
215
216
|
|
|
216
217
|
return section;
|
|
@@ -224,10 +225,10 @@ PresentationSection.createFromSection = function(sectionModel, options = {}) {
|
|
|
224
225
|
* @param {object} [options]
|
|
225
226
|
* @returns {presentation.PresentationSection}
|
|
226
227
|
*/
|
|
227
|
-
PresentationSection.createFromAdjunctSection = function(
|
|
228
|
+
PresentationSection.createFromAdjunctSection = function (
|
|
228
229
|
adjunctSectionModel,
|
|
229
230
|
deckVersionModel,
|
|
230
|
-
options
|
|
231
|
+
options = {}
|
|
231
232
|
) {
|
|
232
233
|
_.defaults(options, {
|
|
233
234
|
rootAssetPath: null,
|
|
@@ -235,7 +236,7 @@ PresentationSection.createFromAdjunctSection = function(
|
|
|
235
236
|
choicelist: null,
|
|
236
237
|
getUniqueAdjunctID: () => {
|
|
237
238
|
return parseInt(_.uniqueId(), 10);
|
|
238
|
-
}
|
|
239
|
+
},
|
|
239
240
|
});
|
|
240
241
|
|
|
241
242
|
const keyID =
|
|
@@ -250,6 +251,7 @@ PresentationSection.createFromAdjunctSection = function(
|
|
|
250
251
|
key = adjunctSectionModel.key;
|
|
251
252
|
} else if (keyID) {
|
|
252
253
|
key = `adjunct-${keyID}`;
|
|
254
|
+
adjunctSectionModel.key = key;
|
|
253
255
|
}
|
|
254
256
|
|
|
255
257
|
const config = PresentationSection.getVisibilityAndSequence(
|
|
@@ -257,6 +259,8 @@ PresentationSection.createFromAdjunctSection = function(
|
|
|
257
259
|
options
|
|
258
260
|
);
|
|
259
261
|
|
|
262
|
+
const tags = PresentationSection.getTags(adjunctSectionModel, options);
|
|
263
|
+
|
|
260
264
|
const section = new PresentationSection({
|
|
261
265
|
id: options.getUniqueAdjunctID(),
|
|
262
266
|
adjunct: adjunctSectionModel.adjunct
|
|
@@ -271,17 +275,15 @@ PresentationSection.createFromAdjunctSection = function(
|
|
|
271
275
|
custom: !adjunctSectionModel.created_by_autoadjunct,
|
|
272
276
|
createdByAutoAdjunct: adjunctSectionModel.created_by_autoadjunct,
|
|
273
277
|
createdByTemplate: Boolean(adjunctSectionModel.template),
|
|
274
|
-
impostor:
|
|
275
|
-
|
|
276
|
-
adjunctSectionModel.tags.indexOf("section-header") > -1,
|
|
277
|
-
tags: adjunctSectionModel.tags,
|
|
278
|
+
impostor: tags.indexOf("section-header") > -1,
|
|
279
|
+
tags: tags,
|
|
278
280
|
temporary: adjunctSectionModel.created_by_autoadjunct,
|
|
279
281
|
title: adjunctSectionModel.title,
|
|
280
282
|
deckversion: deckVersionModel.id,
|
|
281
283
|
editable: false,
|
|
282
284
|
index: config.sequence,
|
|
283
285
|
sequence: config.sequence,
|
|
284
|
-
visible: config.visible
|
|
286
|
+
visible: config.visible,
|
|
285
287
|
});
|
|
286
288
|
|
|
287
289
|
if (adjunctSectionModel.template) {
|
|
@@ -314,15 +316,15 @@ PresentationSection.createFromAdjunctSection = function(
|
|
|
314
316
|
return section;
|
|
315
317
|
};
|
|
316
318
|
|
|
317
|
-
PresentationSection.createFromImpostorSection = function(
|
|
319
|
+
PresentationSection.createFromImpostorSection = function (
|
|
318
320
|
slideModel,
|
|
319
321
|
DeckVersionModel,
|
|
320
|
-
options
|
|
322
|
+
options = {}
|
|
321
323
|
) {
|
|
322
324
|
_.defaults(options, {
|
|
323
325
|
rootAssetPath: null,
|
|
324
326
|
selections: null,
|
|
325
|
-
choicelist: null
|
|
327
|
+
choicelist: null,
|
|
326
328
|
});
|
|
327
329
|
|
|
328
330
|
let html;
|
|
@@ -348,6 +350,8 @@ PresentationSection.createFromImpostorSection = function(
|
|
|
348
350
|
options
|
|
349
351
|
);
|
|
350
352
|
|
|
353
|
+
const tags = PresentationSection.getTags(slideModel, options);
|
|
354
|
+
|
|
351
355
|
const section = new PresentationSection({
|
|
352
356
|
id: slideModel.id,
|
|
353
357
|
adjunctID: null,
|
|
@@ -360,18 +364,18 @@ PresentationSection.createFromImpostorSection = function(
|
|
|
360
364
|
impostor: true,
|
|
361
365
|
title: slideModel.title,
|
|
362
366
|
deckversion: slideModel.section.deckversion.id,
|
|
363
|
-
editable:
|
|
364
|
-
tags
|
|
367
|
+
editable: tags.indexOf("editable") > -1,
|
|
368
|
+
tags,
|
|
365
369
|
index: config.sequence,
|
|
366
370
|
sequence: config.sequence,
|
|
367
371
|
visible: config.visible,
|
|
368
|
-
selectionID: config.selectionID
|
|
372
|
+
selectionID: config.selectionID,
|
|
369
373
|
});
|
|
370
374
|
|
|
371
375
|
return section;
|
|
372
376
|
};
|
|
373
377
|
|
|
374
|
-
PresentationSection.createFromManifestJSON = function(
|
|
378
|
+
PresentationSection.createFromManifestJSON = function (
|
|
375
379
|
manifestJSON,
|
|
376
380
|
sectionKey,
|
|
377
381
|
index
|
|
@@ -388,10 +392,10 @@ PresentationSection.createFromManifestJSON = function(
|
|
|
388
392
|
custom: false,
|
|
389
393
|
visible: true,
|
|
390
394
|
deckversion: 1,
|
|
391
|
-
tags: manifestJSON.tags[sectionKey] || null
|
|
395
|
+
tags: manifestJSON.tags[sectionKey] || null,
|
|
392
396
|
});
|
|
393
397
|
|
|
394
|
-
const slideKeys = Object.keys(manifestJSON.titles).filter(slideKey => {
|
|
398
|
+
const slideKeys = Object.keys(manifestJSON.titles).filter((slideKey) => {
|
|
395
399
|
return slideKey.startsWith(sectionKey) && slideKey.split("/").length > 1;
|
|
396
400
|
});
|
|
397
401
|
|
|
@@ -409,7 +413,7 @@ PresentationSection.createFromManifestJSON = function(
|
|
|
409
413
|
return section;
|
|
410
414
|
};
|
|
411
415
|
|
|
412
|
-
PresentationSection.createFromManifestImpostor = function(section, index) {
|
|
416
|
+
PresentationSection.createFromManifestImpostor = function (section, index) {
|
|
413
417
|
const slides = section.slides || [];
|
|
414
418
|
section.slides = null;
|
|
415
419
|
|
|
@@ -420,7 +424,7 @@ PresentationSection.createFromManifestImpostor = function(section, index) {
|
|
|
420
424
|
visible: true,
|
|
421
425
|
deckversion: 1,
|
|
422
426
|
index,
|
|
423
|
-
...section
|
|
427
|
+
...section,
|
|
424
428
|
});
|
|
425
429
|
|
|
426
430
|
slides.forEach((slide, index) => {
|
|
@@ -436,7 +440,7 @@ PresentationSection.createFromManifestImpostor = function(section, index) {
|
|
|
436
440
|
return presentationSection;
|
|
437
441
|
};
|
|
438
442
|
|
|
439
|
-
PresentationSection.createFromAutoAdjunct = function(model, opts) {
|
|
443
|
+
PresentationSection.createFromAutoAdjunct = function (model, opts = {}) {
|
|
440
444
|
const requiredKeys = ["index", "deckversionID"];
|
|
441
445
|
for (const key of requiredKeys) {
|
|
442
446
|
if (typeof opts[key] === "undefined") {
|
|
@@ -450,9 +454,18 @@ PresentationSection.createFromAutoAdjunct = function(model, opts) {
|
|
|
450
454
|
index: -1,
|
|
451
455
|
deckversionID: -1,
|
|
452
456
|
sequence: opts.index,
|
|
453
|
-
impostor: false
|
|
457
|
+
impostor: false,
|
|
454
458
|
});
|
|
455
459
|
|
|
460
|
+
const tags = PresentationSection.getTags(
|
|
461
|
+
{
|
|
462
|
+
isAutoAdjunct: true,
|
|
463
|
+
key: model.key,
|
|
464
|
+
tags: model.tags,
|
|
465
|
+
},
|
|
466
|
+
options
|
|
467
|
+
);
|
|
468
|
+
|
|
456
469
|
const autoAdjunct = new AutoAdjunctModel(model);
|
|
457
470
|
|
|
458
471
|
const autoAdjunctSection = new PresentationSection({
|
|
@@ -473,7 +486,8 @@ PresentationSection.createFromAutoAdjunct = function(model, opts) {
|
|
|
473
486
|
visible: options.visible,
|
|
474
487
|
allowConvert: options.allowConvert,
|
|
475
488
|
deckversion: options.deckversionID,
|
|
476
|
-
impostor: options.impostor
|
|
489
|
+
impostor: options.impostor,
|
|
490
|
+
tags,
|
|
477
491
|
});
|
|
478
492
|
|
|
479
493
|
if (autoAdjunct.template) {
|
|
@@ -488,7 +502,7 @@ PresentationSection.createFromAutoAdjunct = function(model, opts) {
|
|
|
488
502
|
return autoAdjunctSection;
|
|
489
503
|
};
|
|
490
504
|
|
|
491
|
-
PresentationSection.createFromTemplate = function(template, index, minID = 0) {
|
|
505
|
+
PresentationSection.createFromTemplate = function (template, index, minID = 0) {
|
|
492
506
|
const templateModel = new TemplateModel(template);
|
|
493
507
|
|
|
494
508
|
const deckversion = new DeckVersionModel(templateModel.deckversion);
|
|
@@ -510,7 +524,7 @@ PresentationSection.createFromTemplate = function(template, index, minID = 0) {
|
|
|
510
524
|
// of a list of sections
|
|
511
525
|
sequence: 9000 + templateModel.sequence,
|
|
512
526
|
createdByTemplate: true,
|
|
513
|
-
index
|
|
527
|
+
index,
|
|
514
528
|
});
|
|
515
529
|
|
|
516
530
|
return presentationSection;
|
|
@@ -0,0 +1,363 @@
|
|
|
1
|
+
import { AdjunctSectionModel } from "../models/adjunct-section";
|
|
2
|
+
import { AutoAdjunctModel } from "../models/auto-adjunct";
|
|
3
|
+
import { PresentationSection } from "./presentation-section";
|
|
4
|
+
import { SectionModel } from "../models/section";
|
|
5
|
+
import { SlideModel } from "../models/slide";
|
|
6
|
+
|
|
7
|
+
describe("#createFromSection", () => {
|
|
8
|
+
const getSectionJSON = () => {
|
|
9
|
+
return {
|
|
10
|
+
adjunctslide_limit: 0,
|
|
11
|
+
created_date: "2021-07-19T01:17:59.522119Z",
|
|
12
|
+
deckversion: "https://staging-test.salespreso.com/api/deckversions/408/",
|
|
13
|
+
description: "",
|
|
14
|
+
enabled: true,
|
|
15
|
+
id: 1728,
|
|
16
|
+
image_128:
|
|
17
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/section/123/456.jpg",
|
|
18
|
+
image_256:
|
|
19
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/section/123/456.jpg",
|
|
20
|
+
image_512:
|
|
21
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/section/123/456.jpg",
|
|
22
|
+
index_asset: {
|
|
23
|
+
created_date: "2021-07-19T01:17:58.068483Z",
|
|
24
|
+
data: "sections/agenda/index.html",
|
|
25
|
+
hash_algorithm: "sha-256",
|
|
26
|
+
hash_digest:
|
|
27
|
+
"f84e1e0b43f4b25168e4a8997b11a2c1c2848376b128b2d72ba5bd4f44c17dcc",
|
|
28
|
+
id: 148115,
|
|
29
|
+
modified_date: "2021-07-19T01:17:58.068507Z",
|
|
30
|
+
orig_path: "sections/agenda",
|
|
31
|
+
pack: "https://staging-test.salespreso.com/api/packs/409/",
|
|
32
|
+
url: "https://staging-test-cdn.salespreso.com/media/pack/409/assets/sections/agenda/index.html",
|
|
33
|
+
},
|
|
34
|
+
key: "agenda",
|
|
35
|
+
modified_date: "2021-07-19T01:20:43.815965Z",
|
|
36
|
+
namespaced_key: "agenda",
|
|
37
|
+
sequence: 0,
|
|
38
|
+
slide_set: [],
|
|
39
|
+
tags: [],
|
|
40
|
+
title: "Agenda",
|
|
41
|
+
url: "https://staging-test.salespreso.com/api/sections/1728/",
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
it("should create a presentation section", async () => {
|
|
46
|
+
const section = new SectionModel(getSectionJSON());
|
|
47
|
+
const presentationSection = PresentationSection.createFromSection(section);
|
|
48
|
+
|
|
49
|
+
const expected = {
|
|
50
|
+
adjunctID: null,
|
|
51
|
+
adjunctSlideLimit: 0,
|
|
52
|
+
autoAdjunctID: null,
|
|
53
|
+
createdByAutoAdjunct: false,
|
|
54
|
+
createdByTemplate: false,
|
|
55
|
+
css: "https://staging-test-cdn.salespreso.com/media/pack/409/assets/sections/agenda/slide.css",
|
|
56
|
+
custom: false,
|
|
57
|
+
deckversion: 408,
|
|
58
|
+
editable: false,
|
|
59
|
+
html: "https://staging-test-cdn.salespreso.com/media/pack/409/assets/sections/agenda/index.html",
|
|
60
|
+
id: 1728,
|
|
61
|
+
impostor: false,
|
|
62
|
+
index: 0,
|
|
63
|
+
isWelcome: false,
|
|
64
|
+
key: "agenda",
|
|
65
|
+
selectionID: null,
|
|
66
|
+
sequence: 0,
|
|
67
|
+
slides: [],
|
|
68
|
+
tags: [],
|
|
69
|
+
templateID: null,
|
|
70
|
+
thumbnail:
|
|
71
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/section/123/456.jpg",
|
|
72
|
+
title: "Agenda",
|
|
73
|
+
url: "/api/sections/1728/",
|
|
74
|
+
visible: true,
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
expect(presentationSection.toJSON()).toEqual(expected);
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
it("should use deckTags when available", async () => {
|
|
81
|
+
const section = new SectionModel(getSectionJSON());
|
|
82
|
+
const options = {
|
|
83
|
+
deckTags: { agenda: ["section-tag"] },
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
const presentationSection = PresentationSection.createFromSection(
|
|
87
|
+
section,
|
|
88
|
+
options
|
|
89
|
+
);
|
|
90
|
+
|
|
91
|
+
expect(presentationSection.tags).toEqual(["section-tag"]);
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
describe("#createFromAdjunctSection", () => {
|
|
96
|
+
const getAdjunctSectionJSON = () => {
|
|
97
|
+
return {
|
|
98
|
+
adjunct: "https://staging-test.salespreso.com/api/adjuncts/7470/",
|
|
99
|
+
appointment: "https://staging-test.salespreso.com/api/appointments/2422/",
|
|
100
|
+
created_by_autoadjunct: true,
|
|
101
|
+
created_date: "2021-09-20T01:57:55.125224Z",
|
|
102
|
+
creator_autoadjunct:
|
|
103
|
+
"https://staging-test.salespreso.com/api/autoadjuncts/545/",
|
|
104
|
+
deckversion: "https://staging-test.salespreso.com/api/deckversions/408/",
|
|
105
|
+
deleted: false,
|
|
106
|
+
enabled: true,
|
|
107
|
+
html_content:
|
|
108
|
+
'<img src="https://staging-test-cdn.salespreso.com/media/autoadjunct/123.png">',
|
|
109
|
+
id: 1737,
|
|
110
|
+
image_128:
|
|
111
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/autoadjunct/123/456.jpg",
|
|
112
|
+
image_256:
|
|
113
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/autoadjunct/123/456.jpg",
|
|
114
|
+
image_512:
|
|
115
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/autoadjunct/123/456.jpg",
|
|
116
|
+
image_1024:
|
|
117
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/autoadjunct/123/456.png",
|
|
118
|
+
image_original:
|
|
119
|
+
"https://staging-test-cdn.salespreso.com/media/autoadjunct/123.png",
|
|
120
|
+
modified_date: "2021-09-20T01:57:55.125229Z",
|
|
121
|
+
sequence: 1,
|
|
122
|
+
tags: [],
|
|
123
|
+
template: null,
|
|
124
|
+
title: "Five",
|
|
125
|
+
url: "https://staging-test.salespreso.com/api/adjunctsections/1737/",
|
|
126
|
+
};
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
it("should create a presentation section", async () => {
|
|
130
|
+
const adjunctSection = new AdjunctSectionModel(getAdjunctSectionJSON());
|
|
131
|
+
const presentationSection = PresentationSection.createFromAdjunctSection(
|
|
132
|
+
adjunctSection,
|
|
133
|
+
{ id: 1 }
|
|
134
|
+
);
|
|
135
|
+
|
|
136
|
+
const expected = {
|
|
137
|
+
adjunct: {
|
|
138
|
+
url: "https://staging-test.salespreso.com/api/adjuncts/7470/",
|
|
139
|
+
},
|
|
140
|
+
adjunctID: 1737,
|
|
141
|
+
adjunctSlideLimit: 0,
|
|
142
|
+
autoAdjunctID: 545,
|
|
143
|
+
createdByAutoAdjunct: true,
|
|
144
|
+
createdByTemplate: false,
|
|
145
|
+
custom: false,
|
|
146
|
+
deckversion: 1,
|
|
147
|
+
editable: false,
|
|
148
|
+
id: 1,
|
|
149
|
+
image:
|
|
150
|
+
"https://staging-test-cdn.salespreso.com/media/autoadjunct/123.png",
|
|
151
|
+
impostor: false,
|
|
152
|
+
index: 1,
|
|
153
|
+
isWelcome: false,
|
|
154
|
+
key: "adjunct-1737",
|
|
155
|
+
sequence: 1,
|
|
156
|
+
slides: [],
|
|
157
|
+
tags: [],
|
|
158
|
+
templateID: null,
|
|
159
|
+
temporary: true,
|
|
160
|
+
thumbnail:
|
|
161
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/autoadjunct/123/456.jpg",
|
|
162
|
+
title: "Five",
|
|
163
|
+
url: "/api/adjunctsections/1737/",
|
|
164
|
+
visible: true,
|
|
165
|
+
};
|
|
166
|
+
|
|
167
|
+
expect(presentationSection.toJSON()).toEqual(expected);
|
|
168
|
+
});
|
|
169
|
+
|
|
170
|
+
it("should use deckTags when available", async () => {
|
|
171
|
+
const adjunctSection = new AdjunctSectionModel(getAdjunctSectionJSON());
|
|
172
|
+
const options = {
|
|
173
|
+
deckTags: { "adjunct-1737": ["adjunctsection-tag"] },
|
|
174
|
+
};
|
|
175
|
+
const presentationSection = PresentationSection.createFromAdjunctSection(
|
|
176
|
+
adjunctSection,
|
|
177
|
+
{ id: 1 },
|
|
178
|
+
options
|
|
179
|
+
);
|
|
180
|
+
|
|
181
|
+
expect(presentationSection.tags).toEqual(["adjunctsection-tag"]);
|
|
182
|
+
});
|
|
183
|
+
});
|
|
184
|
+
|
|
185
|
+
describe("#createFromImpostorSection", () => {
|
|
186
|
+
const getImpostorSectionJSON = () => {
|
|
187
|
+
return {
|
|
188
|
+
created_date: "2021-09-20T02:59:06.968285Z",
|
|
189
|
+
description: "",
|
|
190
|
+
enabled: true,
|
|
191
|
+
id: 23898,
|
|
192
|
+
image_128:
|
|
193
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/slide/123/456.jpg",
|
|
194
|
+
image_256:
|
|
195
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/slide/123/456.jpg",
|
|
196
|
+
image_512:
|
|
197
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/slide/123/456.jpg",
|
|
198
|
+
index_asset: {
|
|
199
|
+
created_date: "2021-09-20T02:59:02.361498Z",
|
|
200
|
+
data: "sections/test-deck/slides/agenda/index.html",
|
|
201
|
+
hash_algorithm: "sha-256",
|
|
202
|
+
hash_digest:
|
|
203
|
+
"b77283717f1a99bce5b8aea67e007f11aad06473f5fe26412c15e707f8758343",
|
|
204
|
+
id: 153400,
|
|
205
|
+
modified_date: "2021-09-20T02:59:02.361528Z",
|
|
206
|
+
orig_path: "sections/test-deck/slides/agenda",
|
|
207
|
+
pack: "https://staging-test.salespreso.com/api/packs/427/",
|
|
208
|
+
url: "https://staging-test-cdn.salespreso.com/media/pack/427/assets/sections/test-deck/slides/agenda/index.html",
|
|
209
|
+
},
|
|
210
|
+
key: "agenda",
|
|
211
|
+
modified_date: "2021-09-20T03:05:27.811485Z",
|
|
212
|
+
namespaced_key: "test-deck/agenda",
|
|
213
|
+
section: {
|
|
214
|
+
id: 2,
|
|
215
|
+
deckversion: {
|
|
216
|
+
id: 3,
|
|
217
|
+
},
|
|
218
|
+
},
|
|
219
|
+
sequence: 0,
|
|
220
|
+
subslide_set: [],
|
|
221
|
+
tags: ["section-header"],
|
|
222
|
+
title: "Agenda",
|
|
223
|
+
url: "https://staging-test.salespreso.com/api/slides/23898/",
|
|
224
|
+
};
|
|
225
|
+
};
|
|
226
|
+
|
|
227
|
+
it("should create a presentation section", async () => {
|
|
228
|
+
const impostorSection = new SlideModel(getImpostorSectionJSON());
|
|
229
|
+
const presentationSection =
|
|
230
|
+
PresentationSection.createFromImpostorSection(impostorSection);
|
|
231
|
+
|
|
232
|
+
const expected = {
|
|
233
|
+
adjunctID: null,
|
|
234
|
+
adjunctSlideLimit: 0,
|
|
235
|
+
autoAdjunctID: null,
|
|
236
|
+
createdByAutoAdjunct: false,
|
|
237
|
+
createdByTemplate: false,
|
|
238
|
+
css: "https://staging-test-cdn.salespreso.com/media/pack/427/assets/sections/test-deck/slides/agenda/slide.css",
|
|
239
|
+
custom: false,
|
|
240
|
+
deckversion: 3,
|
|
241
|
+
editable: false,
|
|
242
|
+
html: "https://staging-test-cdn.salespreso.com/media/pack/427/assets/sections/test-deck/slides/agenda/index.html",
|
|
243
|
+
id: 23898,
|
|
244
|
+
impostor: true,
|
|
245
|
+
index: 0,
|
|
246
|
+
isWelcome: false,
|
|
247
|
+
key: "agenda",
|
|
248
|
+
selectionID: null,
|
|
249
|
+
sequence: 0,
|
|
250
|
+
slides: [],
|
|
251
|
+
tags: ["section-header"],
|
|
252
|
+
templateID: null,
|
|
253
|
+
thumbnail:
|
|
254
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/slide/123/456.jpg",
|
|
255
|
+
title: "Agenda",
|
|
256
|
+
url: "/api/slides/23898/",
|
|
257
|
+
visible: true,
|
|
258
|
+
};
|
|
259
|
+
|
|
260
|
+
expect(presentationSection.toJSON()).toEqual(expected);
|
|
261
|
+
});
|
|
262
|
+
|
|
263
|
+
it("should use deckTags when available", async () => {
|
|
264
|
+
const impostorSection = new SlideModel(getImpostorSectionJSON());
|
|
265
|
+
const options = {
|
|
266
|
+
deckTags: { "test-deck/agenda": ["impostorsection-tag"] },
|
|
267
|
+
};
|
|
268
|
+
const presentationSection = PresentationSection.createFromImpostorSection(
|
|
269
|
+
impostorSection,
|
|
270
|
+
null,
|
|
271
|
+
options
|
|
272
|
+
);
|
|
273
|
+
|
|
274
|
+
expect(presentationSection.tags).toEqual(["impostorsection-tag"]);
|
|
275
|
+
});
|
|
276
|
+
});
|
|
277
|
+
|
|
278
|
+
describe("#createFromAutoAdjunct", () => {
|
|
279
|
+
const getAutoAdjunctJSON = () => {
|
|
280
|
+
return {
|
|
281
|
+
after_key: "autoadjunct-i-am-template-section",
|
|
282
|
+
created_date: "2021-09-16T04:25:54.459641Z",
|
|
283
|
+
deck: "https://staging-test.salespreso.com/api/decks/6/",
|
|
284
|
+
enabled: true,
|
|
285
|
+
id: 545,
|
|
286
|
+
image_128:
|
|
287
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/autoadjunct/123/456.jpg",
|
|
288
|
+
image_256:
|
|
289
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/autoadjunct/123/456.jpg",
|
|
290
|
+
image_512:
|
|
291
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/autoadjunct/123/456.jpg",
|
|
292
|
+
image_1024:
|
|
293
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/autoadjunct/123/456.png",
|
|
294
|
+
image_original:
|
|
295
|
+
"https://staging-test-cdn.salespreso.com/media/autoadjunct/123.png",
|
|
296
|
+
key: "autoadjunct-five",
|
|
297
|
+
modified_date: "2021-09-20T01:57:55.090828Z",
|
|
298
|
+
name: "Five",
|
|
299
|
+
parent_key: "",
|
|
300
|
+
sequence: 1,
|
|
301
|
+
tags: [],
|
|
302
|
+
team: null,
|
|
303
|
+
template: null,
|
|
304
|
+
url: "https://staging-test.salespreso.com/api/autoadjuncts/545/",
|
|
305
|
+
};
|
|
306
|
+
};
|
|
307
|
+
|
|
308
|
+
it("should create a presentation section", async () => {
|
|
309
|
+
const autoAdjunct = new AutoAdjunctModel(getAutoAdjunctJSON());
|
|
310
|
+
const options = {
|
|
311
|
+
index: 3,
|
|
312
|
+
deckversionID: 12,
|
|
313
|
+
};
|
|
314
|
+
const presentationSection = PresentationSection.createFromAutoAdjunct(
|
|
315
|
+
autoAdjunct,
|
|
316
|
+
options
|
|
317
|
+
);
|
|
318
|
+
|
|
319
|
+
const expected = {
|
|
320
|
+
adjunctID: 545,
|
|
321
|
+
adjunctSlideLimit: 0,
|
|
322
|
+
autoAdjunctID: 545,
|
|
323
|
+
createdByAutoAdjunct: false,
|
|
324
|
+
createdByTemplate: false,
|
|
325
|
+
css: "",
|
|
326
|
+
deckversion: 12,
|
|
327
|
+
html: "",
|
|
328
|
+
id: 545,
|
|
329
|
+
image:
|
|
330
|
+
"https://staging-test-cdn.salespreso.com/media/autoadjunct/123.png",
|
|
331
|
+
impostor: false,
|
|
332
|
+
index: 3,
|
|
333
|
+
isWelcome: false,
|
|
334
|
+
key: "autoadjunct-five",
|
|
335
|
+
sequence: 3,
|
|
336
|
+
slides: [],
|
|
337
|
+
tags: [],
|
|
338
|
+
templateID: null,
|
|
339
|
+
temporary: true,
|
|
340
|
+
thumbnail:
|
|
341
|
+
"https://staging-test-cdn.salespreso.com/media/CACHE/images/autoadjunct/123/456.jpg",
|
|
342
|
+
title: "Five",
|
|
343
|
+
url: "/api/adjunctsections/545/",
|
|
344
|
+
visible: true,
|
|
345
|
+
};
|
|
346
|
+
expect(presentationSection.toJSON()).toEqual(expected);
|
|
347
|
+
});
|
|
348
|
+
|
|
349
|
+
it("should use deckTags when available", async () => {
|
|
350
|
+
const autoAdjunct = new AutoAdjunctModel(getAutoAdjunctJSON());
|
|
351
|
+
const options = {
|
|
352
|
+
index: 3,
|
|
353
|
+
deckversionID: 12,
|
|
354
|
+
deckTags: { "autoadjunct-five": ["autoadjunct-tag"] },
|
|
355
|
+
};
|
|
356
|
+
const presentationSection = PresentationSection.createFromAutoAdjunct(
|
|
357
|
+
autoAdjunct,
|
|
358
|
+
options
|
|
359
|
+
);
|
|
360
|
+
|
|
361
|
+
expect(presentationSection.tags).toEqual(["autoadjunct-tag"]);
|
|
362
|
+
});
|
|
363
|
+
});
|