@livepreso/api 6.45.0 → 6.46.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/.rush/temp/1aebf46f78ad5c45f82f8147751890adb37bef9d.log +10 -0
- package/.rush/temp/3cdc82c352e8ed90607952873f3aa4c200490874.log +10 -0
- package/.rush/temp/5489ab737e406518983c16c57fc3e1edc07c0341.log +10 -0
- package/.rush/temp/924652444ab5a6063f328a2217123a2227058896.log +10 -0
- package/.rush/temp/9f2030f96d62f3e38052e35201819a216566f14f.log +10 -0
- package/.rush/temp/operation/test/all.log +19 -0
- package/.rush/temp/operation/test/state.json +3 -0
- package/.rush/temp/shrinkwrap-deps.json +563 -546
- package/CHANGELOG.json +12 -0
- package/CHANGELOG.md +8 -1
- package/README.md +4 -4
- package/api.build.log +2 -4
- package/api.test.cache.log +1 -0
- package/api.test.log +19 -0
- package/cjs/api.js +18 -17
- package/cjs/api.js.map +1 -1
- package/cjs/api.spec.js +0 -4
- package/cjs/api.spec.js.map +1 -1
- package/cjs/auth.js +5 -32
- package/cjs/auth.js.map +1 -1
- package/cjs/auth.spec.js +52 -77
- package/cjs/auth.spec.js.map +1 -1
- package/cjs/caching.js +2 -7
- package/cjs/caching.js.map +1 -1
- package/cjs/collections/activity.js +16 -56
- package/cjs/collections/activity.js.map +1 -1
- package/cjs/collections/adjunct-sections.js +1 -10
- package/cjs/collections/adjunct-sections.js.map +1 -1
- package/cjs/collections/adjunct-slides.js +1 -10
- package/cjs/collections/adjunct-slides.js.map +1 -1
- package/cjs/collections/adjunct-sub-slides.js +1 -9
- package/cjs/collections/adjunct-sub-slides.js.map +1 -1
- package/cjs/collections/appointment-adjunct-tags.js +1 -9
- package/cjs/collections/appointment-adjunct-tags.js.map +1 -1
- package/cjs/collections/appointment-deckversion-tags.js +1 -9
- package/cjs/collections/appointment-deckversion-tags.js.map +1 -1
- package/cjs/collections/appointment-duplicates.js +1 -9
- package/cjs/collections/appointment-duplicates.js.map +1 -1
- package/cjs/collections/appointment-editors.js +1 -10
- package/cjs/collections/appointment-editors.js.map +1 -1
- package/cjs/collections/appointment-section-tags.js +1 -9
- package/cjs/collections/appointment-section-tags.js.map +1 -1
- package/cjs/collections/appointment-slide-tags.js +1 -9
- package/cjs/collections/appointment-slide-tags.js.map +1 -1
- package/cjs/collections/appointment-tags.js +66 -103
- package/cjs/collections/appointment-tags.js.map +1 -1
- package/cjs/collections/appointment-templates.js +27 -0
- package/cjs/collections/appointment-templates.js.map +1 -0
- package/cjs/collections/appointments.js +9 -29
- package/cjs/collections/appointments.js.map +1 -1
- package/cjs/collections/assets.js +1 -9
- package/cjs/collections/assets.js.map +1 -1
- package/cjs/collections/auto-adjuncts.js +6 -21
- package/cjs/collections/auto-adjuncts.js.map +1 -1
- package/cjs/collections/base.js +37 -111
- package/cjs/collections/base.js.map +1 -1
- package/cjs/collections/base.spec.js +186 -233
- package/cjs/collections/base.spec.js.map +1 -1
- package/cjs/collections/cms-vals.js +9 -16
- package/cjs/collections/cms-vals.js.map +1 -1
- package/cjs/collections/contact-phones.js +20 -0
- package/cjs/collections/contact-phones.js.map +1 -0
- package/cjs/collections/contacts.js +1 -9
- package/cjs/collections/contacts.js.map +1 -1
- package/cjs/collections/created-assets.js +1 -10
- package/cjs/collections/created-assets.js.map +1 -1
- package/cjs/collections/customers.js +1 -9
- package/cjs/collections/customers.js.map +1 -1
- package/cjs/collections/deck-notes.js +1 -10
- package/cjs/collections/deck-notes.js.map +1 -1
- package/cjs/collections/deck-version-screenshots.js +4 -17
- package/cjs/collections/deck-version-screenshots.js.map +1 -1
- package/cjs/collections/deck-versions.js +5 -20
- package/cjs/collections/deck-versions.js.map +1 -1
- package/cjs/collections/decks.js +1 -9
- package/cjs/collections/decks.js.map +1 -1
- package/cjs/collections/deleted-assets.js +1 -10
- package/cjs/collections/deleted-assets.js.map +1 -1
- package/cjs/collections/dispatches.js +1 -13
- package/cjs/collections/dispatches.js.map +1 -1
- package/cjs/collections/event-objects.js +1 -9
- package/cjs/collections/event-objects.js.map +1 -1
- package/cjs/collections/events.js +1 -9
- package/cjs/collections/events.js.map +1 -1
- package/cjs/collections/groups.js +1 -9
- package/cjs/collections/groups.js.map +1 -1
- package/cjs/collections/images.js +1 -9
- package/cjs/collections/images.js.map +1 -1
- package/cjs/collections/locations.js +1 -9
- package/cjs/collections/locations.js.map +1 -1
- package/cjs/collections/opportunities.js +1 -9
- package/cjs/collections/opportunities.js.map +1 -1
- package/cjs/collections/pack-diffs.js +1 -9
- package/cjs/collections/pack-diffs.js.map +1 -1
- package/cjs/collections/packs.js +1 -9
- package/cjs/collections/packs.js.map +1 -1
- package/cjs/collections/presets.js +1 -9
- package/cjs/collections/presets.js.map +1 -1
- package/cjs/collections/section-selections.js +1 -9
- package/cjs/collections/section-selections.js.map +1 -1
- package/cjs/collections/sections.js +1 -9
- package/cjs/collections/sections.js.map +1 -1
- package/cjs/collections/slide-selections.js +1 -9
- package/cjs/collections/slide-selections.js.map +1 -1
- package/cjs/collections/slides.js +1 -9
- package/cjs/collections/slides.js.map +1 -1
- package/cjs/collections/snapshots.js +1 -9
- package/cjs/collections/snapshots.js.map +1 -1
- package/cjs/collections/sub-slides.js +1 -9
- package/cjs/collections/sub-slides.js.map +1 -1
- package/cjs/collections/tags.js +1 -9
- package/cjs/collections/tags.js.map +1 -1
- package/cjs/collections/teams.js +1 -9
- package/cjs/collections/teams.js.map +1 -1
- package/cjs/collections/templates.js +1 -9
- package/cjs/collections/templates.js.map +1 -1
- package/cjs/collections/uploads.js +1 -9
- package/cjs/collections/uploads.js.map +1 -1
- package/cjs/collections/users.js +1 -9
- package/cjs/collections/users.js.map +1 -1
- package/cjs/collections.js +22 -88
- package/cjs/collections.js.map +1 -1
- package/cjs/fixtures.js +187 -0
- package/cjs/fixtures.js.map +1 -0
- package/cjs/index.js +0 -10
- package/cjs/index.js.map +1 -1
- package/cjs/log.js +0 -1
- package/cjs/log.js.map +1 -1
- package/cjs/middleware.js +2 -7
- package/cjs/middleware.js.map +1 -1
- package/cjs/middlewares/auth.js +1 -17
- package/cjs/middlewares/auth.js.map +1 -1
- package/cjs/middlewares/base.js +3 -9
- package/cjs/middlewares/base.js.map +1 -1
- package/cjs/middlewares/json.js +1 -19
- package/cjs/middlewares/json.js.map +1 -1
- package/cjs/middlewares/redirect.js +5 -21
- package/cjs/middlewares/redirect.js.map +1 -1
- package/cjs/models/activity-item.js +3 -19
- package/cjs/models/activity-item.js.map +1 -1
- package/cjs/models/adjunct-section.js +8 -21
- package/cjs/models/adjunct-section.js.map +1 -1
- package/cjs/models/adjunct-slide.js +8 -21
- package/cjs/models/adjunct-slide.js.map +1 -1
- package/cjs/models/adjunct-sub-slide.js +1 -16
- package/cjs/models/adjunct-sub-slide.js.map +1 -1
- package/cjs/models/adjunct.js +34 -10
- package/cjs/models/adjunct.js.map +1 -1
- package/cjs/models/api.js +1 -6
- package/cjs/models/api.js.map +1 -1
- package/cjs/models/appointment-adjunct-tags.js +1 -13
- package/cjs/models/appointment-adjunct-tags.js.map +1 -1
- package/cjs/models/appointment-deckversion-tags.js +1 -13
- package/cjs/models/appointment-deckversion-tags.js.map +1 -1
- package/cjs/models/appointment-duplicate.js +3 -25
- package/cjs/models/appointment-duplicate.js.map +1 -1
- package/cjs/models/appointment-editor.js +1 -14
- package/cjs/models/appointment-editor.js.map +1 -1
- package/cjs/models/appointment-section-tags.js +1 -13
- package/cjs/models/appointment-section-tags.js.map +1 -1
- package/cjs/models/appointment-slide-tags.js +1 -13
- package/cjs/models/appointment-slide-tags.js.map +1 -1
- package/cjs/models/appointment-stats.js +1 -11
- package/cjs/models/appointment-stats.js.map +1 -1
- package/cjs/models/appointment-tags.js +1 -10
- package/cjs/models/appointment-tags.js.map +1 -1
- package/cjs/models/appointment-template.js +23 -0
- package/cjs/models/appointment-template.js.map +1 -0
- package/cjs/models/appointment-viewing.js +1 -8
- package/cjs/models/appointment-viewing.js.map +1 -1
- package/cjs/models/appointment.js +85 -70
- package/cjs/models/appointment.js.map +1 -1
- package/cjs/models/asset.js +12 -11
- package/cjs/models/asset.js.map +1 -1
- package/cjs/models/auto-adjunct-key-check.js +1 -15
- package/cjs/models/auto-adjunct-key-check.js.map +1 -1
- package/cjs/models/auto-adjunct.js +3 -14
- package/cjs/models/auto-adjunct.js.map +1 -1
- package/cjs/models/base.js +74 -176
- package/cjs/models/base.js.map +1 -1
- package/cjs/models/base.spec.js +0 -31
- package/cjs/models/base.spec.js.map +1 -1
- package/cjs/models/choicelist.js +1 -8
- package/cjs/models/choicelist.js.map +1 -1
- package/cjs/models/cms-val.js +28 -15
- package/cjs/models/cms-val.js.map +1 -1
- package/cjs/models/cms-val.spec.js +25 -0
- package/cjs/models/cms-val.spec.js.map +1 -0
- package/cjs/models/contact-phone.js +54 -0
- package/cjs/models/contact-phone.js.map +1 -0
- package/cjs/models/contact.js +1 -18
- package/cjs/models/contact.js.map +1 -1
- package/cjs/models/customer.js +5 -30
- package/cjs/models/customer.js.map +1 -1
- package/cjs/models/deck-note.js +1 -9
- package/cjs/models/deck-note.js.map +1 -1
- package/cjs/models/deck-tags.js +1 -12
- package/cjs/models/deck-tags.js.map +1 -1
- package/cjs/models/deck-version-screenshot.js +1 -13
- package/cjs/models/deck-version-screenshot.js.map +1 -1
- package/cjs/models/deck-version.js +28 -44
- package/cjs/models/deck-version.js.map +1 -1
- package/cjs/models/deck.js +1 -14
- package/cjs/models/deck.js.map +1 -1
- package/cjs/models/dispatch-preview.js +1 -13
- package/cjs/models/dispatch-preview.js.map +1 -1
- package/cjs/models/dispatch.js +1 -23
- package/cjs/models/dispatch.js.map +1 -1
- package/cjs/models/envs.js +1 -6
- package/cjs/models/envs.js.map +1 -1
- package/cjs/models/event-object.js +1 -11
- package/cjs/models/event-object.js.map +1 -1
- package/cjs/models/event.js +1 -13
- package/cjs/models/event.js.map +1 -1
- package/cjs/models/feed-data.js +1 -13
- package/cjs/models/feed-data.js.map +1 -1
- package/cjs/models/file.js +1 -11
- package/cjs/models/file.js.map +1 -1
- package/cjs/models/group.js +1 -11
- package/cjs/models/group.js.map +1 -1
- package/cjs/models/handover.js +1 -13
- package/cjs/models/handover.js.map +1 -1
- package/cjs/models/hosted-preso.js +1 -15
- package/cjs/models/hosted-preso.js.map +1 -1
- package/cjs/models/image.js +1 -16
- package/cjs/models/image.js.map +1 -1
- package/cjs/models/location.js +1 -13
- package/cjs/models/location.js.map +1 -1
- package/cjs/models/manifest-json.js +74 -73
- package/cjs/models/manifest-json.js.map +1 -1
- package/cjs/models/onshare.js +1 -14
- package/cjs/models/onshare.js.map +1 -1
- package/cjs/models/opportunity.js +1 -14
- package/cjs/models/opportunity.js.map +1 -1
- package/cjs/models/pack-diff.js +1 -14
- package/cjs/models/pack-diff.js.map +1 -1
- package/cjs/models/pack.js +1 -12
- package/cjs/models/pack.js.map +1 -1
- package/cjs/models/preset.js +4 -20
- package/cjs/models/preset.js.map +1 -1
- package/cjs/models/refresh-request.js +17 -11
- package/cjs/models/refresh-request.js.map +1 -1
- package/cjs/models/room.js +1 -9
- package/cjs/models/room.js.map +1 -1
- package/cjs/models/salesforce-lookup.js +1 -12
- package/cjs/models/salesforce-lookup.js.map +1 -1
- package/cjs/models/section-selection.js +1 -14
- package/cjs/models/section-selection.js.map +1 -1
- package/cjs/models/section.js +1 -14
- package/cjs/models/section.js.map +1 -1
- package/cjs/models/slide-selection.js +1 -14
- package/cjs/models/slide-selection.js.map +1 -1
- package/cjs/models/slide.js +1 -14
- package/cjs/models/slide.js.map +1 -1
- package/cjs/models/snapshot.js +13 -15
- package/cjs/models/snapshot.js.map +1 -1
- package/cjs/models/snapshot.spec.js +44 -0
- package/cjs/models/snapshot.spec.js.map +1 -0
- package/cjs/models/sub-slide.js +1 -12
- package/cjs/models/sub-slide.js.map +1 -1
- package/cjs/models/support-ticket.js +1 -11
- package/cjs/models/support-ticket.js.map +1 -1
- package/cjs/models/tag.js +1 -13
- package/cjs/models/tag.js.map +1 -1
- package/cjs/models/team.js +14 -13
- package/cjs/models/team.js.map +1 -1
- package/cjs/models/template.js +87 -15
- package/cjs/models/template.js.map +1 -1
- package/cjs/models/tenancy.js +4 -11
- package/cjs/models/tenancy.js.map +1 -1
- package/cjs/models/timing-log.js +21 -78
- package/cjs/models/timing-log.js.map +1 -1
- package/cjs/models/timing-log.spec.js +24 -37
- package/cjs/models/timing-log.spec.js.map +1 -1
- package/cjs/models/token.js +1 -11
- package/cjs/models/token.js.map +1 -1
- package/cjs/models/transcribe-socket.js +1 -8
- package/cjs/models/transcribe-socket.js.map +1 -1
- package/cjs/models/upload.js +1 -7
- package/cjs/models/upload.js.map +1 -1
- package/cjs/models/user.js +10 -28
- package/cjs/models/user.js.map +1 -1
- package/cjs/models/user.spec.js +20 -30
- package/cjs/models/user.spec.js.map +1 -1
- package/cjs/models.js +22 -132
- package/cjs/models.js.map +1 -1
- package/cjs/presentation/appointment-presentation.js +9 -35
- package/cjs/presentation/appointment-presentation.js.map +1 -1
- package/cjs/presentation/base-presentation-collection.js +1 -7
- package/cjs/presentation/base-presentation-collection.js.map +1 -1
- package/cjs/presentation/base-presentation-model.js +40 -74
- package/cjs/presentation/base-presentation-model.js.map +1 -1
- package/cjs/presentation/base-presentation-model.spec.js +6 -27
- package/cjs/presentation/base-presentation-model.spec.js.map +1 -1
- package/cjs/presentation/presentation-deck.js +46 -83
- package/cjs/presentation/presentation-deck.js.map +1 -1
- package/cjs/presentation/presentation-deck.spec.js +72 -95
- package/cjs/presentation/presentation-deck.spec.js.map +1 -1
- package/cjs/presentation/presentation-decks.js +1 -9
- package/cjs/presentation/presentation-decks.js.map +1 -1
- package/cjs/presentation/presentation-section.js +37 -77
- package/cjs/presentation/presentation-section.js.map +1 -1
- package/cjs/presentation/presentation-section.spec.js +211 -271
- package/cjs/presentation/presentation-section.spec.js.map +1 -1
- package/cjs/presentation/presentation-sections.js +1 -9
- package/cjs/presentation/presentation-sections.js.map +1 -1
- package/cjs/presentation/presentation-slide.js +49 -76
- package/cjs/presentation/presentation-slide.js.map +1 -1
- package/cjs/presentation/presentation-slide.spec.js +145 -192
- package/cjs/presentation/presentation-slide.spec.js.map +1 -1
- package/cjs/presentation/presentation-slides.js +1 -9
- package/cjs/presentation/presentation-slides.js.map +1 -1
- package/cjs/presentation/presentation-subslide.js +3 -23
- package/cjs/presentation/presentation-subslide.js.map +1 -1
- package/cjs/presentation/presentation-subslide.spec.js +101 -125
- package/cjs/presentation/presentation-subslide.spec.js.map +1 -1
- package/cjs/presentation/presentation-subslides.js +1 -9
- package/cjs/presentation/presentation-subslides.js.map +1 -1
- package/cjs/presentation/presentation.js +62 -111
- package/cjs/presentation/presentation.js.map +1 -1
- package/cjs/presentation.js +0 -20
- package/cjs/presentation.js.map +1 -1
- package/cjs/selections.js +81 -0
- package/cjs/selections.js.map +1 -0
- package/cjs/state-register.js +3 -11
- package/cjs/state-register.js.map +1 -1
- package/cjs/sync.js +32 -76
- package/cjs/sync.js.map +1 -1
- package/cjs/utils.js +51 -42
- package/cjs/utils.js.map +1 -1
- package/cjs/utils.spec.js +0 -4
- package/cjs/utils.spec.js.map +1 -1
- package/jest.config.js +4 -3
- package/package.json +9 -6
- package/src/api.js +17 -2
- package/src/auth.js +3 -3
- package/src/collections/activity.js +4 -4
- package/src/collections/adjunct-sections.js +1 -1
- package/src/collections/adjunct-slides.js +1 -1
- package/src/collections/adjunct-sub-slides.js +1 -1
- package/src/collections/appointment-adjunct-tags.js +1 -1
- package/src/collections/appointment-deckversion-tags.js +2 -2
- package/src/collections/appointment-duplicates.js +1 -1
- package/src/collections/appointment-editors.js +1 -1
- package/src/collections/appointment-section-tags.js +1 -1
- package/src/collections/appointment-slide-tags.js +1 -1
- package/src/collections/appointment-tags.js +20 -18
- package/src/collections/appointment-templates.js +26 -0
- package/src/collections/appointments.js +9 -9
- package/src/collections/assets.js +1 -1
- package/src/collections/auto-adjuncts.js +1 -1
- package/src/collections/base.js +10 -6
- package/src/collections/base.spec.js +2 -2
- package/src/collections/cms-vals.js +5 -1
- package/src/collections/contact-phones.js +18 -0
- package/src/collections/contacts.js +1 -1
- package/src/collections/created-assets.js +1 -1
- package/src/collections/customers.js +1 -1
- package/src/collections/deck-notes.js +1 -1
- package/src/collections/deck-version-screenshots.js +1 -1
- package/src/collections/deck-versions.js +1 -1
- package/src/collections/decks.js +1 -1
- package/src/collections/deleted-assets.js +1 -1
- package/src/collections/dispatches.js +2 -2
- package/src/collections/event-objects.js +1 -1
- package/src/collections/events.js +1 -1
- package/src/collections/groups.js +1 -1
- package/src/collections/images.js +1 -1
- package/src/collections/locations.js +1 -1
- package/src/collections/opportunities.js +1 -1
- package/src/collections/pack-diffs.js +1 -1
- package/src/collections/packs.js +1 -1
- package/src/collections/presets.js +1 -1
- package/src/collections/section-selections.js +1 -1
- package/src/collections/sections.js +1 -1
- package/src/collections/slide-selections.js +1 -1
- package/src/collections/slides.js +1 -1
- package/src/collections/snapshots.js +1 -1
- package/src/collections/sub-slides.js +1 -1
- package/src/collections/tags.js +1 -1
- package/src/collections/teams.js +1 -1
- package/src/collections/templates.js +1 -1
- package/src/collections/uploads.js +1 -1
- package/src/collections/users.js +1 -1
- package/src/collections.js +2 -0
- package/src/fixtures.js +193 -0
- package/src/models/activity-item.js +1 -1
- package/src/models/adjunct-section.js +7 -2
- package/src/models/adjunct-slide.js +7 -2
- package/src/models/adjunct-sub-slide.js +1 -1
- package/src/models/adjunct.js +39 -1
- package/src/models/appointment-adjunct-tags.js +1 -1
- package/src/models/appointment-deckversion-tags.js +1 -1
- package/src/models/appointment-duplicate.js +1 -1
- package/src/models/appointment-editor.js +1 -1
- package/src/models/appointment-section-tags.js +1 -1
- package/src/models/appointment-slide-tags.js +1 -1
- package/src/models/appointment-stats.js +1 -1
- package/src/models/appointment-tags.js +1 -1
- package/src/models/appointment-template.js +19 -0
- package/src/models/appointment-viewing.js +1 -1
- package/src/models/appointment.js +101 -38
- package/src/models/asset.js +15 -1
- package/src/models/auto-adjunct-key-check.js +1 -1
- package/src/models/auto-adjunct.js +2 -1
- package/src/models/base.js +36 -21
- package/src/models/base.spec.js +18 -18
- package/src/models/choicelist.js +1 -1
- package/src/models/cms-val.js +24 -1
- package/src/models/cms-val.spec.js +14 -0
- package/src/models/contact-phone.js +57 -0
- package/src/models/contact.js +1 -1
- package/src/models/customer.js +3 -3
- package/src/models/deck-note.js +1 -1
- package/src/models/deck-tags.js +1 -1
- package/src/models/deck-version-screenshot.js +1 -1
- package/src/models/deck-version.js +31 -6
- package/src/models/deck.js +1 -1
- package/src/models/dispatch-preview.js +1 -1
- package/src/models/dispatch.js +1 -1
- package/src/models/event-object.js +1 -1
- package/src/models/event.js +1 -1
- package/src/models/feed-data.js +2 -2
- package/src/models/file.js +1 -1
- package/src/models/group.js +1 -1
- package/src/models/handover.js +1 -1
- package/src/models/hosted-preso.js +1 -1
- package/src/models/image.js +1 -1
- package/src/models/location.js +1 -1
- package/src/models/manifest-json.js +56 -5
- package/src/models/onshare.js +1 -1
- package/src/models/opportunity.js +1 -1
- package/src/models/pack-diff.js +1 -1
- package/src/models/pack.js +1 -1
- package/src/models/preset.js +3 -1
- package/src/models/refresh-request.js +15 -1
- package/src/models/room.js +1 -1
- package/src/models/salesforce-lookup.js +1 -1
- package/src/models/section-selection.js +1 -1
- package/src/models/section.js +1 -1
- package/src/models/slide-selection.js +1 -1
- package/src/models/slide.js +1 -1
- package/src/models/snapshot.js +11 -2
- package/src/models/snapshot.spec.js +31 -0
- package/src/models/sub-slide.js +1 -1
- package/src/models/support-ticket.js +1 -1
- package/src/models/tag.js +1 -1
- package/src/models/team.js +14 -3
- package/src/models/template.js +72 -2
- package/src/models/tenancy.js +4 -1
- package/src/models/timing-log.js +2 -2
- package/src/models/timing-log.spec.js +1 -1
- package/src/models/token.js +1 -1
- package/src/models/transcribe-socket.js +1 -1
- package/src/models/user.js +13 -2
- package/src/models.js +2 -0
- package/src/presentation/appointment-presentation.js +4 -4
- package/src/presentation/base-presentation-collection.js +1 -1
- package/src/presentation/base-presentation-model.js +25 -16
- package/src/presentation/base-presentation-model.spec.js +5 -5
- package/src/presentation/presentation-deck.js +28 -23
- package/src/presentation/presentation-deck.spec.js +4 -4
- package/src/presentation/presentation-decks.js +1 -1
- package/src/presentation/presentation-section.js +59 -31
- package/src/presentation/presentation-section.spec.js +31 -32
- package/src/presentation/presentation-sections.js +1 -1
- package/src/presentation/presentation-slide.js +51 -25
- package/src/presentation/presentation-slide.spec.js +21 -27
- package/src/presentation/presentation-slides.js +1 -1
- package/src/presentation/presentation-subslide.js +5 -5
- package/src/presentation/presentation-subslide.spec.js +3 -3
- package/src/presentation/presentation-subslides.js +1 -1
- package/src/presentation/presentation.js +5 -3
- package/src/selections.js +71 -0
- package/src/sync.js +1 -1
- package/src/utils.js +31 -8
- package/src/utils.spec.js +4 -4
- package/.rush/temp/package-deps_test.json +0 -172
package/src/models/base.spec.js
CHANGED
|
@@ -53,7 +53,7 @@ it("should replace child model strings with the registered model", () => {
|
|
|
53
53
|
const Model = G(
|
|
54
54
|
BaseModel.extend({
|
|
55
55
|
children: { test: "TestModel" },
|
|
56
|
-
})
|
|
56
|
+
}),
|
|
57
57
|
);
|
|
58
58
|
const model = new Model({ test: 1 });
|
|
59
59
|
expect(model.test).toBeInstanceOf(TestModel);
|
|
@@ -64,7 +64,7 @@ it("should allow the model to be passed in", () => {
|
|
|
64
64
|
const Model = G(
|
|
65
65
|
BaseModel.extend({
|
|
66
66
|
children: { test: "TestModel" },
|
|
67
|
-
})
|
|
67
|
+
}),
|
|
68
68
|
);
|
|
69
69
|
const model = new Model({ test: new TestModel({ id: 1 }) });
|
|
70
70
|
expect(model.test.id).toEqual(1);
|
|
@@ -76,7 +76,7 @@ it("should reference parent model if foreign key exists", () => {
|
|
|
76
76
|
const Model = G(
|
|
77
77
|
BaseModel.extend({
|
|
78
78
|
children: { test: "TestModel" },
|
|
79
|
-
})
|
|
79
|
+
}),
|
|
80
80
|
);
|
|
81
81
|
const model = new Model({ test: 1 });
|
|
82
82
|
expect(model).toEqual(model.test.parent);
|
|
@@ -86,7 +86,7 @@ it("should throw an error if the child model doesn't exist", () => {
|
|
|
86
86
|
const Model = G(
|
|
87
87
|
BaseModel.extend({
|
|
88
88
|
children: { test: "DoesntExist" },
|
|
89
|
-
})
|
|
89
|
+
}),
|
|
90
90
|
);
|
|
91
91
|
|
|
92
92
|
expect(() => new Model()).toThrow();
|
|
@@ -97,7 +97,7 @@ it("should convert a url into a model", () => {
|
|
|
97
97
|
const Model = G(
|
|
98
98
|
BaseModel.extend({
|
|
99
99
|
children: { test: "TestModel" },
|
|
100
|
-
})
|
|
100
|
+
}),
|
|
101
101
|
);
|
|
102
102
|
const model = new Model({ test: "/api/tests/1/" });
|
|
103
103
|
expect(model.test.id).toEqual(1);
|
|
@@ -115,7 +115,7 @@ it("should convert an object into a model", () => {
|
|
|
115
115
|
const Model = G(
|
|
116
116
|
BaseModel.extend({
|
|
117
117
|
children: { test: "TestModel" },
|
|
118
|
-
})
|
|
118
|
+
}),
|
|
119
119
|
);
|
|
120
120
|
const model = new Model({ test: { id: 1 } });
|
|
121
121
|
expect(model.test.id).toEqual(1);
|
|
@@ -127,12 +127,12 @@ it("should replace collection strings with their registered state", () => {
|
|
|
127
127
|
BaseCollection.extend({
|
|
128
128
|
model: "TestModel",
|
|
129
129
|
}),
|
|
130
|
-
"TestCollection"
|
|
130
|
+
"TestCollection",
|
|
131
131
|
);
|
|
132
132
|
const Model = G(
|
|
133
133
|
BaseModel.extend({
|
|
134
134
|
collections: { tests: "TestCollection" },
|
|
135
|
-
})
|
|
135
|
+
}),
|
|
136
136
|
);
|
|
137
137
|
const model = new Model({
|
|
138
138
|
tests: [{ id: 1 }],
|
|
@@ -146,12 +146,12 @@ it("should allow a list of models to be passed into a collection", () => {
|
|
|
146
146
|
BaseCollection.extend({
|
|
147
147
|
model: "TestModel",
|
|
148
148
|
}),
|
|
149
|
-
"TestCollection"
|
|
149
|
+
"TestCollection",
|
|
150
150
|
);
|
|
151
151
|
const Model = G(
|
|
152
152
|
BaseModel.extend({
|
|
153
153
|
collections: { tests: "TestCollection" },
|
|
154
|
-
})
|
|
154
|
+
}),
|
|
155
155
|
);
|
|
156
156
|
const test = new TestModel({ id: 1 });
|
|
157
157
|
const model = new Model({
|
|
@@ -166,12 +166,12 @@ it("should allow a collection to be passed in directly", () => {
|
|
|
166
166
|
BaseCollection.extend({
|
|
167
167
|
model: "TestModel",
|
|
168
168
|
}),
|
|
169
|
-
"TestCollection"
|
|
169
|
+
"TestCollection",
|
|
170
170
|
);
|
|
171
171
|
const Model = G(
|
|
172
172
|
BaseModel.extend({
|
|
173
173
|
collections: { tests: "TestCollection" },
|
|
174
|
-
})
|
|
174
|
+
}),
|
|
175
175
|
);
|
|
176
176
|
const model = new Model({
|
|
177
177
|
tests: new TestCollection([{ id: 1 }]),
|
|
@@ -192,12 +192,12 @@ it("should convert a url into a collection", () => {
|
|
|
192
192
|
BaseCollection.extend({
|
|
193
193
|
model: "TestModel",
|
|
194
194
|
}),
|
|
195
|
-
"TestCollection"
|
|
195
|
+
"TestCollection",
|
|
196
196
|
);
|
|
197
197
|
const Model = G(
|
|
198
198
|
BaseModel.extend({
|
|
199
199
|
collections: { tests: "TestCollection" },
|
|
200
|
-
})
|
|
200
|
+
}),
|
|
201
201
|
);
|
|
202
202
|
const model = new Model({ tests: "/api/tests/" });
|
|
203
203
|
expect(model.tests).toBeInstanceOf(TestCollection);
|
|
@@ -209,7 +209,7 @@ it("should convert an array of objects into a collection", () => {
|
|
|
209
209
|
const Model = G(
|
|
210
210
|
BaseModel.extend({
|
|
211
211
|
collections: { tests: "TestCollection" },
|
|
212
|
-
})
|
|
212
|
+
}),
|
|
213
213
|
);
|
|
214
214
|
const model = new Model({
|
|
215
215
|
tests: [{ id: 1 }, { id: 2 }],
|
|
@@ -331,13 +331,13 @@ it("should pass through values into a derived collection", () => {
|
|
|
331
331
|
name: "string",
|
|
332
332
|
},
|
|
333
333
|
}),
|
|
334
|
-
"DerivedModel"
|
|
334
|
+
"DerivedModel",
|
|
335
335
|
);
|
|
336
336
|
|
|
337
337
|
const DerivedCollection = G(
|
|
338
338
|
BaseCollection.extend({
|
|
339
339
|
model: "DerivedModel",
|
|
340
|
-
})
|
|
340
|
+
}),
|
|
341
341
|
);
|
|
342
342
|
|
|
343
343
|
const TestModel = G(
|
|
@@ -351,7 +351,7 @@ it("should pass through values into a derived collection", () => {
|
|
|
351
351
|
},
|
|
352
352
|
},
|
|
353
353
|
}),
|
|
354
|
-
"TestModel"
|
|
354
|
+
"TestModel",
|
|
355
355
|
);
|
|
356
356
|
|
|
357
357
|
const model = new TestModel({
|
package/src/models/choicelist.js
CHANGED
package/src/models/cms-val.js
CHANGED
|
@@ -4,6 +4,7 @@ import "./deck.js";
|
|
|
4
4
|
|
|
5
5
|
import { BaseModel } from "../models/base.js";
|
|
6
6
|
import { register } from "../state-register.js";
|
|
7
|
+
import { sanitizeBase64 } from "../utils.js";
|
|
7
8
|
|
|
8
9
|
/**
|
|
9
10
|
* @constructor
|
|
@@ -21,6 +22,7 @@ export const CMSValModel = BaseModel.extend(
|
|
|
21
22
|
scope: "string",
|
|
22
23
|
mime: "string",
|
|
23
24
|
value: "string",
|
|
25
|
+
_tenancy: "object",
|
|
24
26
|
},
|
|
25
27
|
|
|
26
28
|
/**
|
|
@@ -55,7 +57,28 @@ export const CMSValModel = BaseModel.extend(
|
|
|
55
57
|
|
|
56
58
|
return data;
|
|
57
59
|
},
|
|
58
|
-
|
|
60
|
+
|
|
61
|
+
toServer() {
|
|
62
|
+
const obj = BaseModel.prototype.toServer.call(this);
|
|
63
|
+
return {
|
|
64
|
+
...obj,
|
|
65
|
+
// We shouldn't allow any base64 to get in here, otherwise it can
|
|
66
|
+
// KO all users appointments.
|
|
67
|
+
value: sanitizeBase64(obj.value),
|
|
68
|
+
};
|
|
69
|
+
},
|
|
70
|
+
|
|
71
|
+
toCompactJSON() {
|
|
72
|
+
const json = this.toJSON();
|
|
73
|
+
const wanted = ["key", "value", "mime", "scope"];
|
|
74
|
+
|
|
75
|
+
const compact = Object.fromEntries(
|
|
76
|
+
Object.entries(json).filter(([key, val]) => wanted.includes(key)),
|
|
77
|
+
);
|
|
78
|
+
|
|
79
|
+
return compact;
|
|
80
|
+
},
|
|
81
|
+
},
|
|
59
82
|
);
|
|
60
83
|
|
|
61
84
|
register("CMSValModel", CMSValModel);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { G } from "sp-test/api";
|
|
2
|
+
|
|
3
|
+
it("should remove large base64 strings from value when saving", async () => {
|
|
4
|
+
const CMSValModel = G("CMSValModel");
|
|
5
|
+
const largeBase64 =
|
|
6
|
+
"data:image/gif;base64," + new Array(50_000).fill("a").join("");
|
|
7
|
+
|
|
8
|
+
const cmsVal = new CMSValModel({
|
|
9
|
+
mime: "image",
|
|
10
|
+
value: largeBase64,
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
expect(cmsVal.toServer().value).toEqual("");
|
|
14
|
+
});
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import "./customer.js";
|
|
2
|
+
|
|
3
|
+
import { BaseModel } from "./base.js";
|
|
4
|
+
import { register } from "../state-register.js";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @constructor
|
|
8
|
+
* @alias models.ContactModel
|
|
9
|
+
* @extends models.BaseModel
|
|
10
|
+
*/
|
|
11
|
+
export const ContactPhoneModel = BaseModel.extend(
|
|
12
|
+
/** @lends models.ContactPhoneModel# */ {
|
|
13
|
+
modelName: "contact-phones",
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @property {date} created_date
|
|
17
|
+
* @property {date} modified_date
|
|
18
|
+
* @property {boolean} is_valid
|
|
19
|
+
* @property {string} raw
|
|
20
|
+
* @property {string} e164_format
|
|
21
|
+
* @property {string} national_format
|
|
22
|
+
* @property {string} number_type
|
|
23
|
+
*/
|
|
24
|
+
props: {
|
|
25
|
+
created_date: "date",
|
|
26
|
+
modified_date: "date",
|
|
27
|
+
is_valid: "boolean",
|
|
28
|
+
raw: "string",
|
|
29
|
+
e164_format: "string",
|
|
30
|
+
national_format: "string",
|
|
31
|
+
number_type: "string",
|
|
32
|
+
},
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* @property {models.ContactModel} contact
|
|
36
|
+
*/
|
|
37
|
+
children: {
|
|
38
|
+
contact: "ContactModel",
|
|
39
|
+
},
|
|
40
|
+
|
|
41
|
+
toServer() {
|
|
42
|
+
/* Only write to `raw` field. The others are derived on the server */
|
|
43
|
+
const data = {
|
|
44
|
+
raw: this.raw,
|
|
45
|
+
contact: this._retrieveURL(this.contact),
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
if (this.id) {
|
|
49
|
+
data.id = this.id;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
return data;
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
);
|
|
56
|
+
|
|
57
|
+
register("ContactPhoneModel", ContactPhoneModel);
|
package/src/models/contact.js
CHANGED
package/src/models/customer.js
CHANGED
|
@@ -76,7 +76,7 @@ export const CustomerModel = BaseModel.extend(
|
|
|
76
76
|
deps: ["logo_512", "profile"],
|
|
77
77
|
fn: function () {
|
|
78
78
|
// HACK: Check for the REA usecase where it gets images from profile
|
|
79
|
-
if (this.profile
|
|
79
|
+
if (this.profile?.rea_image_large) {
|
|
80
80
|
return this.profile.rea_image_large;
|
|
81
81
|
}
|
|
82
82
|
|
|
@@ -113,7 +113,7 @@ export const CustomerModel = BaseModel.extend(
|
|
|
113
113
|
// Filter contacts if this is fetched from an appointment
|
|
114
114
|
if (topParent && topParent.name === "appointments") {
|
|
115
115
|
const contactUrls = this.contact_set.map((contact) =>
|
|
116
|
-
this._retrieveUrl(contact)
|
|
116
|
+
this._retrieveUrl(contact),
|
|
117
117
|
);
|
|
118
118
|
|
|
119
119
|
const filteredContacts = topParent.contact_set.filter((contact) => {
|
|
@@ -140,7 +140,7 @@ export const CustomerModel = BaseModel.extend(
|
|
|
140
140
|
|
|
141
141
|
return data;
|
|
142
142
|
},
|
|
143
|
-
}
|
|
143
|
+
},
|
|
144
144
|
);
|
|
145
145
|
|
|
146
146
|
register("CustomerModel", CustomerModel);
|
package/src/models/deck-note.js
CHANGED
package/src/models/deck-tags.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import "../collections/sections.js";
|
|
2
2
|
import "../collections/deck-notes.js";
|
|
3
|
-
import "../collections/templates.js";
|
|
4
3
|
import "./pack.js";
|
|
5
4
|
import "./deck.js";
|
|
6
5
|
import "./asset.js";
|
|
@@ -9,6 +8,7 @@ import "./manifest-json.js";
|
|
|
9
8
|
import { BaseModel } from "./base.js";
|
|
10
9
|
import { DeckVersionScreenshotCollection } from "../collections/deck-version-screenshots.js";
|
|
11
10
|
import Promise from "bluebird";
|
|
11
|
+
import { TemplateCollection } from "../collections.js";
|
|
12
12
|
import _ from "lodash";
|
|
13
13
|
import { register } from "../state-register.js";
|
|
14
14
|
import superagent from "superagent";
|
|
@@ -80,12 +80,10 @@ export const DeckVersionModel = BaseModel.extend(
|
|
|
80
80
|
/**
|
|
81
81
|
* @property {collections.SectionCollection} section_set
|
|
82
82
|
* @property {models.DeckNoteCollection} note_set
|
|
83
|
-
* @property {models.TemplateCollection} template_set
|
|
84
83
|
*/
|
|
85
84
|
collections: {
|
|
86
85
|
section_set: "SectionCollection",
|
|
87
86
|
note_set: "DeckNoteCollection",
|
|
88
|
-
template_set: "TemplateCollection",
|
|
89
87
|
},
|
|
90
88
|
|
|
91
89
|
/**
|
|
@@ -99,17 +97,33 @@ export const DeckVersionModel = BaseModel.extend(
|
|
|
99
97
|
{},
|
|
100
98
|
{
|
|
101
99
|
deckversion: this,
|
|
102
|
-
}
|
|
100
|
+
},
|
|
103
101
|
);
|
|
104
102
|
return screenshots;
|
|
105
103
|
},
|
|
106
104
|
},
|
|
105
|
+
|
|
106
|
+
template_set: {
|
|
107
|
+
deps: ["id"],
|
|
108
|
+
fn: function () {
|
|
109
|
+
const templates = new TemplateCollection(
|
|
110
|
+
{},
|
|
111
|
+
{
|
|
112
|
+
data: {
|
|
113
|
+
deckversion: this.id,
|
|
114
|
+
scope: "global",
|
|
115
|
+
},
|
|
116
|
+
},
|
|
117
|
+
);
|
|
118
|
+
return templates;
|
|
119
|
+
},
|
|
120
|
+
},
|
|
107
121
|
},
|
|
108
122
|
|
|
109
123
|
getHooksPath() {
|
|
110
124
|
if (this.isNew()) {
|
|
111
125
|
throw new Error(
|
|
112
|
-
"Can only get hooks from a fetched deckversion or at least have an ID"
|
|
126
|
+
"Can only get hooks from a fetched deckversion or at least have an ID",
|
|
113
127
|
);
|
|
114
128
|
}
|
|
115
129
|
|
|
@@ -178,6 +192,17 @@ export const DeckVersionModel = BaseModel.extend(
|
|
|
178
192
|
return Promise.all(imports);
|
|
179
193
|
},
|
|
180
194
|
|
|
195
|
+
fetch() {
|
|
196
|
+
const fetch = BaseModel.prototype.fetch.apply(this, arguments);
|
|
197
|
+
|
|
198
|
+
return Promise.resolve(fetch).tap(() => {
|
|
199
|
+
// `template_set` used to come on the deckversion response, but we have since
|
|
200
|
+
// decided to request it separately (this helps with caching). To keep the app
|
|
201
|
+
// working with minimal changes, we're making the extra request here.
|
|
202
|
+
return this.template_set.fetch();
|
|
203
|
+
});
|
|
204
|
+
},
|
|
205
|
+
|
|
181
206
|
waitForReady() {
|
|
182
207
|
return this.fetch().then(() => {
|
|
183
208
|
if (["created", "failed"].indexOf(this.creation_status) > -1) {
|
|
@@ -204,7 +229,7 @@ export const DeckVersionModel = BaseModel.extend(
|
|
|
204
229
|
upgrade_description: this.upgrade_description,
|
|
205
230
|
};
|
|
206
231
|
},
|
|
207
|
-
}
|
|
232
|
+
},
|
|
208
233
|
);
|
|
209
234
|
|
|
210
235
|
register("DeckVersionModel", DeckVersionModel);
|
package/src/models/deck.js
CHANGED
package/src/models/dispatch.js
CHANGED
package/src/models/event.js
CHANGED
package/src/models/feed-data.js
CHANGED
|
@@ -19,7 +19,7 @@ export const FeedDataModel = BaseModel.extend(
|
|
|
19
19
|
*/
|
|
20
20
|
props: {
|
|
21
21
|
feed_data: "object",
|
|
22
|
-
feed_debug: {type: "object", default: () => {}},
|
|
22
|
+
feed_debug: { type: "object", default: () => {} },
|
|
23
23
|
creation_status: "string",
|
|
24
24
|
},
|
|
25
25
|
|
|
@@ -42,7 +42,7 @@ export const FeedDataModel = BaseModel.extend(
|
|
|
42
42
|
|
|
43
43
|
return data;
|
|
44
44
|
},
|
|
45
|
-
}
|
|
45
|
+
},
|
|
46
46
|
);
|
|
47
47
|
|
|
48
48
|
register("FeedDataModel", FeedDataModel);
|
package/src/models/file.js
CHANGED
package/src/models/group.js
CHANGED
package/src/models/handover.js
CHANGED
package/src/models/image.js
CHANGED
package/src/models/location.js
CHANGED
|
@@ -57,7 +57,8 @@ export const ManifestJSONModel = BaseModel.extend(
|
|
|
57
57
|
},
|
|
58
58
|
},
|
|
59
59
|
dimensions: {
|
|
60
|
-
|
|
60
|
+
// This could be a list or an object
|
|
61
|
+
type: "any",
|
|
61
62
|
default: function () {
|
|
62
63
|
return {
|
|
63
64
|
width: 1024,
|
|
@@ -107,6 +108,45 @@ export const ManifestJSONModel = BaseModel.extend(
|
|
|
107
108
|
},
|
|
108
109
|
},
|
|
109
110
|
|
|
111
|
+
derived: {
|
|
112
|
+
// Most places just need this value, and making it derived
|
|
113
|
+
// gives us lower overhead (when we convert with .toJSON() it will
|
|
114
|
+
// also include this value, and means we don't have to convert back to
|
|
115
|
+
// a model just to get this again.)
|
|
116
|
+
screenDimensions: {
|
|
117
|
+
deps: ["dimensions"],
|
|
118
|
+
fn: function () {
|
|
119
|
+
return this.getScreenDimensions();
|
|
120
|
+
},
|
|
121
|
+
},
|
|
122
|
+
},
|
|
123
|
+
|
|
124
|
+
getDimensionsByName(name) {
|
|
125
|
+
if (Array.isArray(this.dimensions)) {
|
|
126
|
+
const dimension = this.dimensions.find(
|
|
127
|
+
(d) => d.name.toLowerCase() === name.toLowerCase(),
|
|
128
|
+
);
|
|
129
|
+
if (!dimension) {
|
|
130
|
+
return { width: 1024, height: 767 };
|
|
131
|
+
}
|
|
132
|
+
return { width: dimension.width, height: dimension.height };
|
|
133
|
+
}
|
|
134
|
+
return this.dimensions;
|
|
135
|
+
},
|
|
136
|
+
|
|
137
|
+
getScreenDimensions() {
|
|
138
|
+
return this.getDimensionsByName("screen");
|
|
139
|
+
},
|
|
140
|
+
|
|
141
|
+
getPDFDimensions() {
|
|
142
|
+
if (Array.isArray(this.dimensions)) {
|
|
143
|
+
const defaultPDFDimensions =
|
|
144
|
+
this.pdfpreferences?.defaultDimensions || "screen";
|
|
145
|
+
return this.getDimensionsByName(defaultPDFDimensions);
|
|
146
|
+
}
|
|
147
|
+
return this.dimensions;
|
|
148
|
+
},
|
|
149
|
+
|
|
110
150
|
/**
|
|
111
151
|
* Returns the path to a manifest asset, using its url as the base.
|
|
112
152
|
* @param {?string} key
|
|
@@ -117,7 +157,7 @@ export const ManifestJSONModel = BaseModel.extend(
|
|
|
117
157
|
const [sectionKey, slideKey = null] = key.split("/");
|
|
118
158
|
const sectionKeyPath = url2.resolve(
|
|
119
159
|
this.url(),
|
|
120
|
-
`sections/${sectionKey}
|
|
160
|
+
`sections/${sectionKey}/`,
|
|
121
161
|
);
|
|
122
162
|
if (slideKey) {
|
|
123
163
|
return url2.resolve(sectionKeyPath, `slides/${slideKey}/`);
|
|
@@ -144,7 +184,7 @@ export const ManifestJSONModel = BaseModel.extend(
|
|
|
144
184
|
|
|
145
185
|
return BaseModel.prototype.url.call(this);
|
|
146
186
|
},
|
|
147
|
-
}
|
|
187
|
+
},
|
|
148
188
|
);
|
|
149
189
|
|
|
150
190
|
/**
|
|
@@ -204,7 +244,7 @@ ManifestJSONModel.createFromProject = function (projectFile) {
|
|
|
204
244
|
};
|
|
205
245
|
return templates;
|
|
206
246
|
},
|
|
207
|
-
{}
|
|
247
|
+
{},
|
|
208
248
|
);
|
|
209
249
|
|
|
210
250
|
const limits = {
|
|
@@ -278,7 +318,18 @@ ManifestJSONModel.createFromProject = function (projectFile) {
|
|
|
278
318
|
}
|
|
279
319
|
|
|
280
320
|
if (projectFile.dimensions) {
|
|
281
|
-
|
|
321
|
+
const { dimensions } = projectFile;
|
|
322
|
+
|
|
323
|
+
if (Array.isArray(dimensions)) {
|
|
324
|
+
const screen = dimensions.filter((d) => d.name === "Screen");
|
|
325
|
+
if (!screen.length || screen.length > 1) {
|
|
326
|
+
throw new Error(
|
|
327
|
+
"Dimensions must contain one value named 'Screen' in project.yaml",
|
|
328
|
+
);
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
manifest.dimensions = dimensions;
|
|
282
333
|
}
|
|
283
334
|
|
|
284
335
|
if (projectFile.has_editable_share_support) {
|
package/src/models/onshare.js
CHANGED