@livepreso/api 6.56.1 → 6.57.1
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/chunked-rush-logs/api.build.chunks.jsonl +5 -15
- package/.rush/temp/operation/build/all.log +5 -15
- package/.rush/temp/operation/build/error.log +3 -13
- package/.rush/temp/operation/build/log-chunks.jsonl +5 -15
- package/.rush/temp/operation/build/state.json +1 -1
- package/CHANGELOG.json +35 -0
- package/CHANGELOG.md +17 -1
- package/cjs/collections/adjunct-sub-slides.js +13 -1
- package/cjs/collections/adjunct-sub-slides.js.map +1 -1
- package/cjs/fixtures.js +13 -2
- package/cjs/fixtures.js.map +1 -1
- package/cjs/models/base.js +12 -3
- package/cjs/models/base.js.map +1 -1
- package/cjs/models/deck-version.js +2 -0
- package/cjs/models/deck-version.js.map +1 -1
- package/cjs/models/dispatch-preview.js +0 -2
- package/cjs/models/dispatch-preview.js.map +1 -1
- package/cjs/models/dispatch.js +1 -1
- package/cjs/models/dispatch.js.map +1 -1
- package/cjs/models/manifest-json.js +0 -2
- package/cjs/models/manifest-json.js.map +1 -1
- package/cjs/models/room.js +4 -0
- package/cjs/models/room.js.map +1 -1
- package/cjs/models/user.js +1 -1
- package/cjs/models/user.js.map +1 -1
- package/cjs/presentation/base-presentation-model.js +6 -6
- package/cjs/presentation/base-presentation-model.js.map +1 -1
- package/cjs/presentation/presentation-deck.js +82 -27
- package/cjs/presentation/presentation-deck.js.map +1 -1
- package/cjs/presentation/presentation-section.js +42 -47
- package/cjs/presentation/presentation-section.js.map +1 -1
- package/cjs/presentation/presentation-slide.js +35 -39
- package/cjs/presentation/presentation-slide.js.map +1 -1
- package/cjs/sync.js +3 -3
- package/cjs/sync.js.map +1 -1
- package/cjs/utils.js +9 -6
- package/cjs/utils.js.map +1 -1
- package/package.json +2 -2
- package/rush-logs/api.build.error.log +3 -13
- package/rush-logs/api.build.log +5 -15
- package/src/collections/adjunct-sub-slides.js +13 -0
- package/src/fixtures.js +16 -2
- package/src/models/base.js +16 -3
- package/src/models/deck-version.js +2 -0
- package/src/models/dispatch-preview.js +0 -3
- package/src/models/dispatch.js +1 -1
- package/src/models/manifest-json.js +7 -12
- package/src/models/room.js +5 -0
- package/src/models/user.js +4 -4
- package/src/presentation/base-presentation-model.js +14 -6
- package/src/presentation/presentation-deck.js +63 -24
- package/src/presentation/presentation-section.js +31 -50
- package/src/presentation/presentation-slide.js +36 -43
- package/src/sync.js +3 -4
- package/src/utils.js +9 -6
- package/.rush/temp/1aebf46f78ad5c45f82f8147751890adb37bef9d.log +0 -10
- package/.rush/temp/256021b5963b4c0221d3dec247b697b9691a9b2c.log +0 -10
- package/.rush/temp/2a322f00f12cf9d1e64afe81275cc78d01c49050.log +0 -10
- package/.rush/temp/30061f1865447dcbb3f20a305061205f3dbe6091.log +0 -10
- package/.rush/temp/3cdc82c352e8ed90607952873f3aa4c200490874.log +0 -10
- package/.rush/temp/45522aea0dee8cb2be1a53248ba45bd235743b43.log +0 -10
- package/.rush/temp/5489ab737e406518983c16c57fc3e1edc07c0341.log +0 -10
- package/.rush/temp/58fcbb7f15a76326d40e0839ab179755da82a891.log +0 -10
- package/.rush/temp/5bc0bba70b733baa4dd976667ba0a1386e516186.log +0 -10
- package/.rush/temp/64f1bb696f8d7d7e72907b80df316b127f72e23e.log +0 -10
- package/.rush/temp/6f640f951414ea68adb65c17e4ed7527cde54faf.log +0 -10
- package/.rush/temp/7c7b958682d4ab5697530be47d0aac62efe1adf1.log +0 -10
- package/.rush/temp/82bfb987463fbcfebf04022e6ed00015c73879c8.log +0 -10
- package/.rush/temp/844034aa6e542115075e8f3dc5ffc640973e0064.log +0 -10
- package/.rush/temp/8b42957a7c15da1f29cb57bee125f13affa70dca.log +0 -10
- package/.rush/temp/924652444ab5a6063f328a2217123a2227058896.log +0 -10
- package/.rush/temp/9f2030f96d62f3e38052e35201819a216566f14f.log +0 -10
- package/.rush/temp/a769db9d81a23000c0e9b1bf4f1a9a9e721d0d7c.log +0 -10
- package/.rush/temp/a87d3a8b4ece87ec66f27c86226a9f205617681f.log +0 -10
- package/.rush/temp/bb7a5bdcc4af4ad1507f81f33774b31f5b4e4fb7.log +0 -10
- package/.rush/temp/build-cache-tar.log +0 -7
- package/.rush/temp/c20e29ccaaa9231b38a28bb24451b4ce7562cdc0.log +0 -10
- package/.rush/temp/chunked-rush-logs/api.test.chunks.jsonl +0 -1
- package/.rush/temp/e21303db8f59b4625fd184c9114377d781fd24f8.log +0 -10
- package/.rush/temp/e6d303862765b6a5f41dd483d0f9ae083a1fae10.log +0 -10
- package/.rush/temp/eaf69fbc059d2f1258d7569136180d4a1d3c7072.log +0 -10
- package/.rush/temp/f85d279e2674966daaec83e1c3986a96f86ef304.log +0 -10
- package/.rush/temp/fc0a332c5b34c6b90006850cf2d93a48fb4b9a6e.log +0 -10
- package/.rush/temp/operation/test/all.log +0 -21
- package/.rush/temp/operation/test/log-chunks.jsonl +0 -21
- package/.rush/temp/operation/test/state.json +0 -3
- package/.rush/temp/package-deps_build.json +0 -185
- package/api.build.log +0 -9
- package/api.test.cache.log +0 -1
- package/api.test.log +0 -19
- package/rush-logs/api.test.cache.log +0 -1
- package/rush-logs/api.test.log +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest-json.js","names":["_lodash","_interopRequireDefault","require","_superagent","_base","_stateRegister","_utils","_createForOfIteratorHelper","r","e","t","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","n","done","value","f","TypeError","o","a","u","call","next","return","_arrayLikeToArray","toString","slice","constructor","name","from","test","ownKeys","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","ManifestJSONModel","exports","BaseModel","extend","props","key","maintainer","common","feeds","hooks","fixtures","limits","ordering","tags","titles","templates","content_editors","persistentcontext","type","screenshotpreferences","vector","dimensions","width","height","pdfpreferences","quality_level","has_editable_share_support","has_signing_support","point_in_time_share_policy","notify_salesperson_after_feeds_fetched","require_verification","companywide_editable","app_settings","appointment","show_visible_default","fieldsets","enforce_required","requires_user_connectivity","derived","screenDimensions","deps","fn","getScreenDimensions","getDimensionsByName","dimension","find","d","_d$name","toLowerCase","getPDFDimensions","_this$pdfpreferences","defaultPDFDimensions","defaultDimensions","getAssetPath","undefined","_key$split","split","_key$split2","_slicedToArray2","sectionKey","_key$split2$","slideKey","sectionKeyPath","resolveURL","url","concat","getTemplateAssetPath","getFixtures","rootAssetUrl","_this","_asyncToGenerator2","_regenerator","mark","_callee","fixturePaths","imports","wrap","_context","prev","_","map","fixture","path","superagent","get","then","response","text","JSON","parse","body","catch","SuperagentPromiseError","Promise","all","abrupt","stop","parent","modelName","getPlainURL","prototype","createFromProject","projectFile","impostor","maxAdjunctSlides","sections","reduce","num","section","title","slides","newSection","_toConsumableArray2","_iterator","_step","slide","err","template","index","adjunctslide","slideIndex","_iterator2","_step2","_iterator3","_step3","welcome","manifest","screen","Error","canBeEmpty","register"],"sources":["../../src/models/manifest-json.js"],"sourcesContent":["import _ from \"lodash\";\nimport \"./pack.js\";\n\nimport superagent from \"superagent\";\nimport { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\nimport { resolveURL } from \"../utils.js\";\n\n/**\n * @constructor\n * @alias models.ManifestJSONModel\n * @extends models.BaseModel\n */\nexport const ManifestJSONModel = BaseModel.extend(\n\t/** @lends models.ManifestJSONModel# */ {\n\t\t/**\n\t\t * @property {string} key\n\t\t * @property {string} maintainer\n\t\t * @property {object} common\n\t\t * @property {object} feeds\n\t\t * @property {object} hooks\n\t\t * @property {object} limits\n\t\t * @property {object} ordering\n\t\t * @property {object} tags\n\t\t * @property {object} titles\n\t\t * @property {object} templates\n\t\t * @property {object} screenshotpreferences\n\t\t * @property {object} dimensions\n\t\t * @property {object} pdfpreferences\n\t\t * @property {boolean} has_editable_share_support\n\t\t * @property {boolean} has_signing_support\n\t\t * @property {boolean} notify_salesperson_after_feeds_fetched\n\t\t * @property {boolean} require_verification\n\t\t * @property {boolean} companywide_editable\n\t\t * @property {object} content_editors\n\t\t */\n\t\tprops: {\n\t\t\tkey: \"string\",\n\t\t\tmaintainer: \"string\",\n\t\t\tcommon: \"object\",\n\t\t\tfeeds: \"object\",\n\t\t\thooks: \"string\",\n\t\t\tfixtures: \"object\",\n\t\t\tlimits: \"object\",\n\t\t\tordering: \"object\",\n\t\t\ttags: \"object\",\n\t\t\ttitles: \"object\",\n\t\t\ttemplates: \"object\",\n\t\t\tcontent_editors: \"object\",\n\t\t\tpersistentcontext: {\n\t\t\t\ttype: \"boolean\",\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\tscreenshotpreferences: {\n\t\t\t\ttype: \"object\",\n\t\t\t\tdefault: function () {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tvector: false,\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t},\n\t\t\tdimensions: {\n\t\t\t\t// This could be a list or an object\n\t\t\t\ttype: \"any\",\n\t\t\t\tdefault: function () {\n\t\t\t\t\treturn {\n\t\t\t\t\t\twidth: 1024,\n\t\t\t\t\t\theight: 768,\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t},\n\t\t\tpdfpreferences: {\n\t\t\t\ttype: \"object\",\n\t\t\t\tdefault: function () {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tquality_level: \"prepress\",\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t},\n\t\t\thas_editable_share_support: {\n\t\t\t\ttype: \"boolean\",\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\thas_signing_support: {\n\t\t\t\ttype: \"boolean\",\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\tpoint_in_time_share_policy: {\n\t\t\t\ttype: \"string\",\n\t\t\t},\n\t\t\tnotify_salesperson_after_feeds_fetched: {\n\t\t\t\ttype: \"boolean\",\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\trequire_verification: {\n\t\t\t\ttype: \"boolean\",\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\tcompanywide_editable: {\n\t\t\t\ttype: \"boolean\",\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\tapp_settings: {\n\t\t\t\ttype: \"object\",\n\t\t\t\tdefault: function () {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tappointment: {\n\t\t\t\t\t\t\tshow_visible_default: false,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tfieldsets: {\n\t\t\t\t\t\t\tenforce_required: false,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t},\n\t\t\trequires_user_connectivity: {\n\t\t\t\ttype: \"array\",\n\t\t\t\tdefault: () => {\n\t\t\t\t\treturn [];\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tderived: {\n\t\t\t// Most places just need this value, and making it derived\n\t\t\t// gives us lower overhead (when we convert with .toJSON() it will\n\t\t\t// also include this value, and means we don't have to convert back to\n\t\t\t// a model just to get this again.)\n\t\t\tscreenDimensions: {\n\t\t\t\tdeps: [\"dimensions\"],\n\t\t\t\tfn: function () {\n\t\t\t\t\treturn this.getScreenDimensions();\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tgetDimensionsByName(name) {\n\t\t\tif (Array.isArray(this.dimensions)) {\n\t\t\t\tconst dimension = this.dimensions.find(\n\t\t\t\t\t(d) => d.name?.toLowerCase() === name.toLowerCase(),\n\t\t\t\t);\n\t\t\t\tif (!dimension) {\n\t\t\t\t\treturn { width: 1024, height: 767 };\n\t\t\t\t}\n\t\t\t\treturn { width: dimension.width, height: dimension.height };\n\t\t\t}\n\t\t\treturn this.dimensions;\n\t\t},\n\n\t\tgetScreenDimensions() {\n\t\t\treturn this.getDimensionsByName(\"screen\");\n\t\t},\n\n\t\tgetPDFDimensions() {\n\t\t\tif (Array.isArray(this.dimensions)) {\n\t\t\t\tconst defaultPDFDimensions =\n\t\t\t\t\tthis.pdfpreferences?.defaultDimensions || \"screen\";\n\t\t\t\treturn this.getDimensionsByName(defaultPDFDimensions);\n\t\t\t}\n\t\t\treturn this.dimensions;\n\t\t},\n\n\t\t/**\n\t\t * Returns the path to a manifest asset, using its url as the base.\n\t\t * @param {?string} key\n\t\t * @returns {?string}\n\t\t */\n\t\tgetAssetPath(key = null) {\n\t\t\tif (key) {\n\t\t\t\tconst [sectionKey, slideKey = null] = key.split(\"/\");\n\t\t\t\tconst sectionKeyPath = resolveURL(\n\t\t\t\t\tthis.url(),\n\t\t\t\t\t`sections/${sectionKey}/`,\n\t\t\t\t);\n\t\t\t\tif (slideKey) {\n\t\t\t\t\treturn resolveURL(sectionKeyPath, `slides/${slideKey}/`);\n\t\t\t\t}\n\t\t\t\treturn sectionKeyPath;\n\t\t\t}\n\n\t\t\treturn this.url();\n\t\t},\n\n\t\t/**\n\t\t Returns path to template assets, which are exceptional to regular slide assets\n\t\t * @param {?string} key\n\t\t * @returns {?string}\n\t\t */\n\t\tgetTemplateAssetPath(key) {\n\t\t\treturn resolveURL(this.getAssetPath(), `templates/${key}/`);\n\t\t},\n\n\t\tasync getFixtures(rootAssetUrl) {\n\t\t\tconst fixturePaths = this.fixtures || {};\n\t\t\tconst fixtures = {};\n\n\t\t\tconst imports = _.map(fixturePaths, (fixture, key) => {\n\t\t\t\tconst path = `${rootAssetUrl}${fixture}`;\n\n\t\t\t\treturn superagent\n\t\t\t\t\t.get(path)\n\t\t\t\t\t.then((response) => {\n\t\t\t\t\t\tif (response.text) {\n\t\t\t\t\t\t\tfixtures[key] = JSON.parse(response.text);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tfixtures[key] = response.body || {};\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t\t.catch(superagent.SuperagentPromiseError, (e) => {\n\t\t\t\t\t\tthrow e;\n\t\t\t\t\t});\n\t\t\t});\n\n\t\t\tawait Promise.all(imports);\n\n\t\t\treturn fixtures;\n\t\t},\n\n\t\turl() {\n\t\t\tif (this.parent && this.parent.modelName === \"deckversions\") {\n\t\t\t\treturn `${this.parent.getPlainURL()}manifest/`;\n\t\t\t}\n\n\t\t\treturn BaseModel.prototype.url.call(this);\n\t\t},\n\t},\n);\n\n/**\n * Converts a project file into a manifest json object. This expected\n * the project.yaml file to have been already read into a javascript\n * object.\n */\nManifestJSONModel.createFromProject = function (projectFile) {\n\t// If the deck is an impostor deck, we have to update some things for\n\t// them to make sense in the impostor format\n\tif (projectFile.impostor) {\n\t\t// There is only one real section; all of the \"sections\" defined in the\n\t\t// project.yaml are actually slides, and slides can't have a maxAdjunctSlides\n\t\t// value. We get around this by totalling up all of the maxAdjunctSlides values\n\t\t// across the sections and give that number to the real section. Later e.g. in the\n\t\t// app, that number will be taken and divided by the number of impostor sections\n\t\t// to get the maxAdjunctSlides value for each impostor section\n\t\tconst maxAdjunctSlides = projectFile.sections.reduce((num, section) => {\n\t\t\treturn num + (section.maxAdjunctSlides || 0);\n\t\t}, 0);\n\n\t\t// Create a \"real\" section (that will never be seen by the user) and give\n\t\t// it all of the sections & slides. Impostor sections (which are technically\n\t\t// slides) are given the \"section-header\" tag to mark them as sections\n\t\tprojectFile.sections = [\n\t\t\t{\n\t\t\t\tmaxAdjunctSlides,\n\t\t\t\tkey: projectFile.key,\n\t\t\t\ttitle: projectFile.name,\n\t\t\t\tslides: projectFile.sections.reduce((sections, section) => {\n\t\t\t\t\tconst newSection = {\n\t\t\t\t\t\t...section,\n\t\t\t\t\t\tslides: [],\n\t\t\t\t\t};\n\t\t\t\t\tnewSection.tags = [\"section-header\"].concat(newSection.tags || []);\n\n\t\t\t\t\tsections.push(newSection, ...(section.slides || []));\n\t\t\t\t\treturn sections;\n\t\t\t\t}, []),\n\t\t\t},\n\t\t];\n\t}\n\n\tconst titles = projectFile.sections.reduce((titles, section) => {\n\t\ttitles[section.key] = section.title;\n\t\tfor (const slide of section.slides || []) {\n\t\t\ttitles[`${section.key}/${slide.key}`] = slide.title;\n\t\t}\n\t\treturn titles;\n\t}, {});\n\n\tconst templates = (projectFile.templates || []).reduce(\n\t\t(templates, template, index) => {\n\t\t\ttemplates[template.key] = {\n\t\t\t\ttitle: template.title,\n\t\t\t\tordering: index + 1,\n\t\t\t};\n\t\t\treturn templates;\n\t\t},\n\t\t{},\n\t);\n\n\tconst limits = {\n\t\tadjunctslide: projectFile.sections.reduce((limits, section) => {\n\t\t\tif (typeof section.maxAdjunctSlides === \"number\") {\n\t\t\t\tlimits[section.key] = section.maxAdjunctSlides;\n\t\t\t}\n\t\t\treturn limits;\n\t\t}, {}),\n\t};\n\n\tconst ordering = projectFile.sections.reduce((ordering, section, index) => {\n\t\tordering[section.key] = index + 1;\n\t\tlet slideIndex = 0;\n\t\tfor (const slide of section.slides || []) {\n\t\t\tslideIndex++;\n\t\t\tordering[`${section.key}/${slide.key}`] = slideIndex;\n\t\t}\n\t\treturn ordering;\n\t}, {});\n\n\tconst tags = projectFile.sections.reduce((tags, section) => {\n\t\ttags[section.key] = section.tags || [];\n\t\tfor (const slide of section.slides || []) {\n\t\t\ttags[`${section.key}/${slide.key}`] = slide.tags || [];\n\t\t}\n\t\treturn tags;\n\t}, {});\n\n\t// Add config for the Welcome slide here - it's namespaced in\n\t// the project.yaml under the \"welcome\" key\n\tif (projectFile.welcome) {\n\t\tif (projectFile.welcome.tags) {\n\t\t\t// It's convention to use an empty string for the\n\t\t\t// Welcome slide's key\n\t\t\ttags[\"\"] = projectFile.welcome.tags || [];\n\t\t}\n\t}\n\n\tconst manifest = new ManifestJSONModel({\n\t\tcommon: projectFile.common,\n\t\tfeeds: projectFile.feeds,\n\t\thooks: projectFile.hooks,\n\t\tfixtures: projectFile.fixtures,\n\t\ttitles,\n\t\ttemplates,\n\t\tordering,\n\t\tlimits,\n\t\ttags,\n\t\tkey: projectFile.key,\n\t});\n\n\tif (projectFile.content_editors) {\n\t\tmanifest.content_editors = projectFile.content_editors;\n\t}\n\n\tif (projectFile.screenshotpreferences) {\n\t\tmanifest.screenshotpreferences = projectFile.screenshotpreferences;\n\t}\n\n\tif (projectFile.pdfpreferences) {\n\t\tmanifest.pdfpreferences = projectFile.pdfpreferences;\n\t}\n\n\tif (projectFile.persistentcontext) {\n\t\tmanifest.persistentcontext = projectFile.persistentcontext;\n\t}\n\n\tif (projectFile.maintainer) {\n\t\tmanifest.maintainer = projectFile.maintainer;\n\t}\n\n\tif (projectFile.dimensions) {\n\t\tconst { dimensions } = projectFile;\n\n\t\tif (Array.isArray(dimensions)) {\n\t\t\tconst screen = dimensions.filter((d) => d.name === \"Screen\");\n\t\t\tif (!screen.length || screen.length > 1) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t\"Dimensions must contain one value named 'Screen' in project.yaml\",\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tmanifest.dimensions = dimensions;\n\t}\n\n\tif (projectFile.has_editable_share_support) {\n\t\tmanifest.has_editable_share_support =\n\t\t\tprojectFile.has_editable_share_support;\n\t}\n\n\tif (projectFile.has_signing_support) {\n\t\tmanifest.has_signing_support = projectFile.has_signing_support;\n\t}\n\n\tif (projectFile.point_in_time_share_policy) {\n\t\tmanifest.point_in_time_share_policy =\n\t\t\tprojectFile.point_in_time_share_policy;\n\t}\n\n\tif (projectFile.notify_salesperson_after_feeds_fetched) {\n\t\tmanifest.notify_salesperson_after_feeds_fetched =\n\t\t\tprojectFile.notify_salesperson_after_feeds_fetched;\n\t}\n\n\tif (projectFile.require_verification) {\n\t\tmanifest.require_verification = projectFile.require_verification;\n\t}\n\n\tif (projectFile.app_settings) {\n\t\tmanifest.app_settings = {\n\t\t\t...manifest.app_settings,\n\t\t\t...projectFile.app_settings,\n\t\t};\n\t}\n\n\tif (projectFile.requires_user_connectivity) {\n\t\tmanifest.requires_user_connectivity =\n\t\t\tprojectFile.requires_user_connectivity;\n\t}\n\n\t// For all new decks going forward, this should be set to true.\n\t// This means we validate that a fieldset field has a value. Before\n\t// this change, it was possible to save with a required field unfilled.\n\t// This just keeps backwards compatability.\n\tmanifest.app_settings.fieldsets.enforce_required = false;\n\n\treturn manifest;\n};\n\nManifestJSONModel.canBeEmpty = true;\n\nregister(\"ManifestJSONModel\", ManifestJSONModel);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"manifest-json.js","names":["_lodash","_interopRequireDefault","require","_superagent","_base","_stateRegister","_utils","_createForOfIteratorHelper","r","e","t","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","n","done","value","f","TypeError","o","a","u","call","next","return","_arrayLikeToArray","toString","slice","constructor","name","from","test","ownKeys","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","ManifestJSONModel","exports","BaseModel","extend","props","key","maintainer","common","feeds","hooks","fixtures","limits","ordering","tags","titles","templates","content_editors","persistentcontext","type","screenshotpreferences","vector","dimensions","width","height","pdfpreferences","quality_level","has_editable_share_support","has_signing_support","point_in_time_share_policy","notify_salesperson_after_feeds_fetched","require_verification","companywide_editable","app_settings","appointment","show_visible_default","fieldsets","enforce_required","requires_user_connectivity","derived","screenDimensions","deps","fn","getScreenDimensions","getDimensionsByName","dimension","find","d","_d$name","toLowerCase","getPDFDimensions","_this$pdfpreferences","defaultPDFDimensions","defaultDimensions","getAssetPath","undefined","_key$split","split","_key$split2","_slicedToArray2","sectionKey","_key$split2$","slideKey","sectionKeyPath","resolveURL","url","concat","getTemplateAssetPath","getFixtures","rootAssetUrl","_this","_asyncToGenerator2","_regenerator","mark","_callee","fixturePaths","imports","wrap","_context","prev","_","map","fixture","path","superagent","get","then","response","text","JSON","parse","body","Promise","all","abrupt","stop","parent","modelName","getPlainURL","prototype","createFromProject","projectFile","impostor","maxAdjunctSlides","sections","reduce","num","section","title","slides","newSection","_toConsumableArray2","_iterator","_step","slide","err","template","index","adjunctslide","slideIndex","_iterator2","_step2","_iterator3","_step3","welcome","manifest","screen","Error","canBeEmpty","register"],"sources":["../../src/models/manifest-json.js"],"sourcesContent":["import _ from \"lodash\";\nimport \"./pack.js\";\n\nimport superagent from \"superagent\";\nimport { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\nimport { resolveURL } from \"../utils.js\";\n\n/**\n * @constructor\n * @alias models.ManifestJSONModel\n * @extends models.BaseModel\n */\nexport const ManifestJSONModel = BaseModel.extend(\n\t/** @lends models.ManifestJSONModel# */ {\n\t\t/**\n\t\t * @property {string} key\n\t\t * @property {string} maintainer\n\t\t * @property {object} common\n\t\t * @property {object} feeds\n\t\t * @property {object} hooks\n\t\t * @property {object} limits\n\t\t * @property {object} ordering\n\t\t * @property {object} tags\n\t\t * @property {object} titles\n\t\t * @property {object} templates\n\t\t * @property {object} screenshotpreferences\n\t\t * @property {object} dimensions\n\t\t * @property {object} pdfpreferences\n\t\t * @property {boolean} has_editable_share_support\n\t\t * @property {boolean} has_signing_support\n\t\t * @property {boolean} notify_salesperson_after_feeds_fetched\n\t\t * @property {boolean} require_verification\n\t\t * @property {boolean} companywide_editable\n\t\t * @property {object} content_editors\n\t\t */\n\t\tprops: {\n\t\t\tkey: \"string\",\n\t\t\tmaintainer: \"string\",\n\t\t\tcommon: \"object\",\n\t\t\tfeeds: \"object\",\n\t\t\thooks: \"string\",\n\t\t\tfixtures: \"object\",\n\t\t\tlimits: \"object\",\n\t\t\tordering: \"object\",\n\t\t\ttags: \"object\",\n\t\t\ttitles: \"object\",\n\t\t\ttemplates: \"object\",\n\t\t\tcontent_editors: \"object\",\n\t\t\tpersistentcontext: {\n\t\t\t\ttype: \"boolean\",\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\tscreenshotpreferences: {\n\t\t\t\ttype: \"object\",\n\t\t\t\tdefault: function () {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tvector: false,\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t},\n\t\t\tdimensions: {\n\t\t\t\t// This could be a list or an object\n\t\t\t\ttype: \"any\",\n\t\t\t\tdefault: function () {\n\t\t\t\t\treturn {\n\t\t\t\t\t\twidth: 1024,\n\t\t\t\t\t\theight: 768,\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t},\n\t\t\tpdfpreferences: {\n\t\t\t\ttype: \"object\",\n\t\t\t\tdefault: function () {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tquality_level: \"prepress\",\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t},\n\t\t\thas_editable_share_support: {\n\t\t\t\ttype: \"boolean\",\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\thas_signing_support: {\n\t\t\t\ttype: \"boolean\",\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\tpoint_in_time_share_policy: {\n\t\t\t\ttype: \"string\",\n\t\t\t},\n\t\t\tnotify_salesperson_after_feeds_fetched: {\n\t\t\t\ttype: \"boolean\",\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\trequire_verification: {\n\t\t\t\ttype: \"boolean\",\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\tcompanywide_editable: {\n\t\t\t\ttype: \"boolean\",\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\tapp_settings: {\n\t\t\t\ttype: \"object\",\n\t\t\t\tdefault: function () {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tappointment: {\n\t\t\t\t\t\t\tshow_visible_default: false,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tfieldsets: {\n\t\t\t\t\t\t\tenforce_required: false,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t},\n\t\t\trequires_user_connectivity: {\n\t\t\t\ttype: \"array\",\n\t\t\t\tdefault: () => {\n\t\t\t\t\treturn [];\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tderived: {\n\t\t\t// Most places just need this value, and making it derived\n\t\t\t// gives us lower overhead (when we convert with .toJSON() it will\n\t\t\t// also include this value, and means we don't have to convert back to\n\t\t\t// a model just to get this again.)\n\t\t\tscreenDimensions: {\n\t\t\t\tdeps: [\"dimensions\"],\n\t\t\t\tfn: function () {\n\t\t\t\t\treturn this.getScreenDimensions();\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tgetDimensionsByName(name) {\n\t\t\tif (Array.isArray(this.dimensions)) {\n\t\t\t\tconst dimension = this.dimensions.find(\n\t\t\t\t\t(d) => d.name?.toLowerCase() === name.toLowerCase(),\n\t\t\t\t);\n\t\t\t\tif (!dimension) {\n\t\t\t\t\treturn { width: 1024, height: 767 };\n\t\t\t\t}\n\t\t\t\treturn { width: dimension.width, height: dimension.height };\n\t\t\t}\n\t\t\treturn this.dimensions;\n\t\t},\n\n\t\tgetScreenDimensions() {\n\t\t\treturn this.getDimensionsByName(\"screen\");\n\t\t},\n\n\t\tgetPDFDimensions() {\n\t\t\tif (Array.isArray(this.dimensions)) {\n\t\t\t\tconst defaultPDFDimensions =\n\t\t\t\t\tthis.pdfpreferences?.defaultDimensions || \"screen\";\n\t\t\t\treturn this.getDimensionsByName(defaultPDFDimensions);\n\t\t\t}\n\t\t\treturn this.dimensions;\n\t\t},\n\n\t\t/**\n\t\t * Returns the path to a manifest asset, using its url as the base.\n\t\t * @param {?string} key\n\t\t * @returns {?string}\n\t\t */\n\t\tgetAssetPath(key = null) {\n\t\t\tif (key) {\n\t\t\t\tconst [sectionKey, slideKey = null] = key.split(\"/\");\n\t\t\t\tconst sectionKeyPath = resolveURL(\n\t\t\t\t\tthis.url(),\n\t\t\t\t\t`sections/${sectionKey}/`,\n\t\t\t\t);\n\t\t\t\tif (slideKey) {\n\t\t\t\t\treturn resolveURL(sectionKeyPath, `slides/${slideKey}/`);\n\t\t\t\t}\n\t\t\t\treturn sectionKeyPath;\n\t\t\t}\n\n\t\t\treturn this.url();\n\t\t},\n\n\t\t/**\n\t\t Returns path to template assets, which are exceptional to regular slide assets\n\t\t * @param {?string} key\n\t\t * @returns {?string}\n\t\t */\n\t\tgetTemplateAssetPath(key) {\n\t\t\treturn resolveURL(this.getAssetPath(), `templates/${key}/`);\n\t\t},\n\n\t\tasync getFixtures(rootAssetUrl) {\n\t\t\tconst fixturePaths = this.fixtures || {};\n\t\t\tconst fixtures = {};\n\n\t\t\tconst imports = _.map(fixturePaths, (fixture, key) => {\n\t\t\t\tconst path = `${rootAssetUrl}${fixture}`;\n\n\t\t\t\treturn superagent.get(path).then((response) => {\n\t\t\t\t\tif (response.text) {\n\t\t\t\t\t\tfixtures[key] = JSON.parse(response.text);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfixtures[key] = response.body || {};\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\n\t\t\tawait Promise.all(imports);\n\n\t\t\treturn fixtures;\n\t\t},\n\n\t\turl() {\n\t\t\tif (this.parent && this.parent.modelName === \"deckversions\") {\n\t\t\t\treturn `${this.parent.getPlainURL()}manifest/`;\n\t\t\t}\n\n\t\t\treturn BaseModel.prototype.url.call(this);\n\t\t},\n\t},\n);\n\n/**\n * Converts a project file into a manifest json object. This expected\n * the project.yaml file to have been already read into a javascript\n * object.\n */\nManifestJSONModel.createFromProject = function (projectFile) {\n\t// If the deck is an impostor deck, we have to update some things for\n\t// them to make sense in the impostor format\n\tif (projectFile.impostor) {\n\t\t// There is only one real section; all of the \"sections\" defined in the\n\t\t// project.yaml are actually slides, and slides can't have a maxAdjunctSlides\n\t\t// value. We get around this by totalling up all of the maxAdjunctSlides values\n\t\t// across the sections and give that number to the real section. Later e.g. in the\n\t\t// app, that number will be taken and divided by the number of impostor sections\n\t\t// to get the maxAdjunctSlides value for each impostor section\n\t\tconst maxAdjunctSlides = projectFile.sections.reduce((num, section) => {\n\t\t\treturn num + (section.maxAdjunctSlides || 0);\n\t\t}, 0);\n\n\t\t// Create a \"real\" section (that will never be seen by the user) and give\n\t\t// it all of the sections & slides. Impostor sections (which are technically\n\t\t// slides) are given the \"section-header\" tag to mark them as sections\n\t\tprojectFile.sections = [\n\t\t\t{\n\t\t\t\tmaxAdjunctSlides,\n\t\t\t\tkey: projectFile.key,\n\t\t\t\ttitle: projectFile.name,\n\t\t\t\tslides: projectFile.sections.reduce((sections, section) => {\n\t\t\t\t\tconst newSection = {\n\t\t\t\t\t\t...section,\n\t\t\t\t\t\tslides: [],\n\t\t\t\t\t};\n\t\t\t\t\tnewSection.tags = [\"section-header\"].concat(newSection.tags || []);\n\n\t\t\t\t\tsections.push(newSection, ...(section.slides || []));\n\t\t\t\t\treturn sections;\n\t\t\t\t}, []),\n\t\t\t},\n\t\t];\n\t}\n\n\tconst titles = projectFile.sections.reduce((titles, section) => {\n\t\ttitles[section.key] = section.title;\n\t\tfor (const slide of section.slides || []) {\n\t\t\ttitles[`${section.key}/${slide.key}`] = slide.title;\n\t\t}\n\t\treturn titles;\n\t}, {});\n\n\tconst templates = (projectFile.templates || []).reduce(\n\t\t(templates, template, index) => {\n\t\t\ttemplates[template.key] = {\n\t\t\t\ttitle: template.title,\n\t\t\t\tordering: index + 1,\n\t\t\t};\n\t\t\treturn templates;\n\t\t},\n\t\t{},\n\t);\n\n\tconst limits = {\n\t\tadjunctslide: projectFile.sections.reduce((limits, section) => {\n\t\t\tif (typeof section.maxAdjunctSlides === \"number\") {\n\t\t\t\tlimits[section.key] = section.maxAdjunctSlides;\n\t\t\t}\n\t\t\treturn limits;\n\t\t}, {}),\n\t};\n\n\tconst ordering = projectFile.sections.reduce((ordering, section, index) => {\n\t\tordering[section.key] = index + 1;\n\t\tlet slideIndex = 0;\n\t\tfor (const slide of section.slides || []) {\n\t\t\tslideIndex++;\n\t\t\tordering[`${section.key}/${slide.key}`] = slideIndex;\n\t\t}\n\t\treturn ordering;\n\t}, {});\n\n\tconst tags = projectFile.sections.reduce((tags, section) => {\n\t\ttags[section.key] = section.tags || [];\n\t\tfor (const slide of section.slides || []) {\n\t\t\ttags[`${section.key}/${slide.key}`] = slide.tags || [];\n\t\t}\n\t\treturn tags;\n\t}, {});\n\n\t// Add config for the Welcome slide here - it's namespaced in\n\t// the project.yaml under the \"welcome\" key\n\tif (projectFile.welcome) {\n\t\tif (projectFile.welcome.tags) {\n\t\t\t// It's convention to use an empty string for the\n\t\t\t// Welcome slide's key\n\t\t\ttags[\"\"] = projectFile.welcome.tags || [];\n\t\t}\n\t}\n\n\tconst manifest = new ManifestJSONModel({\n\t\tcommon: projectFile.common,\n\t\tfeeds: projectFile.feeds,\n\t\thooks: projectFile.hooks,\n\t\tfixtures: projectFile.fixtures,\n\t\ttitles,\n\t\ttemplates,\n\t\tordering,\n\t\tlimits,\n\t\ttags,\n\t\tkey: projectFile.key,\n\t});\n\n\tif (projectFile.content_editors) {\n\t\tmanifest.content_editors = projectFile.content_editors;\n\t}\n\n\tif (projectFile.screenshotpreferences) {\n\t\tmanifest.screenshotpreferences = projectFile.screenshotpreferences;\n\t}\n\n\tif (projectFile.pdfpreferences) {\n\t\tmanifest.pdfpreferences = projectFile.pdfpreferences;\n\t}\n\n\tif (projectFile.persistentcontext) {\n\t\tmanifest.persistentcontext = projectFile.persistentcontext;\n\t}\n\n\tif (projectFile.maintainer) {\n\t\tmanifest.maintainer = projectFile.maintainer;\n\t}\n\n\tif (projectFile.dimensions) {\n\t\tconst { dimensions } = projectFile;\n\n\t\tif (Array.isArray(dimensions)) {\n\t\t\tconst screen = dimensions.filter((d) => d.name === \"Screen\");\n\t\t\tif (!screen.length || screen.length > 1) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t\"Dimensions must contain one value named 'Screen' in project.yaml\",\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tmanifest.dimensions = dimensions;\n\t}\n\n\tif (projectFile.has_editable_share_support) {\n\t\tmanifest.has_editable_share_support =\n\t\t\tprojectFile.has_editable_share_support;\n\t}\n\n\tif (projectFile.has_signing_support) {\n\t\tmanifest.has_signing_support = projectFile.has_signing_support;\n\t}\n\n\tif (projectFile.point_in_time_share_policy) {\n\t\tmanifest.point_in_time_share_policy =\n\t\t\tprojectFile.point_in_time_share_policy;\n\t}\n\n\tif (projectFile.notify_salesperson_after_feeds_fetched) {\n\t\tmanifest.notify_salesperson_after_feeds_fetched =\n\t\t\tprojectFile.notify_salesperson_after_feeds_fetched;\n\t}\n\n\tif (projectFile.require_verification) {\n\t\tmanifest.require_verification = projectFile.require_verification;\n\t}\n\n\tif (projectFile.app_settings) {\n\t\tmanifest.app_settings = {\n\t\t\t...manifest.app_settings,\n\t\t\t...projectFile.app_settings,\n\t\t};\n\t}\n\n\tif (projectFile.requires_user_connectivity) {\n\t\tmanifest.requires_user_connectivity =\n\t\t\tprojectFile.requires_user_connectivity;\n\t}\n\n\t// For all new decks going forward, this should be set to true.\n\t// This means we validate that a fieldset field has a value. Before\n\t// this change, it was possible to save with a required field unfilled.\n\t// This just keeps backwards compatability.\n\tmanifest.app_settings.fieldsets.enforce_required = false;\n\n\treturn manifest;\n};\n\nManifestJSONModel.canBeEmpty = true;\n\nregister(\"ManifestJSONModel\", ManifestJSONModel);\n"],"mappings":"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","ignoreList":[]}
|
package/cjs/models/room.js
CHANGED
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.RoomModel = void 0;
|
|
7
7
|
var _base = require("./base.js");
|
|
8
8
|
var _stateRegister = require("../state-register.js");
|
|
9
|
+
require("./hosted-preso.js");
|
|
9
10
|
/**
|
|
10
11
|
* @constructor
|
|
11
12
|
* @alias models.RoomModel
|
|
@@ -40,6 +41,9 @@ var RoomModel = exports.RoomModel = _base.BaseModel.extend(/** @lends models.Roo
|
|
|
40
41
|
rtms_token: "string",
|
|
41
42
|
wamp_version: "string",
|
|
42
43
|
websocket_server_uri: "string"
|
|
44
|
+
},
|
|
45
|
+
children: {
|
|
46
|
+
hostedpreso: "HostedPresoModel"
|
|
43
47
|
}
|
|
44
48
|
});
|
|
45
49
|
(0, _stateRegister.register)("RoomModel", RoomModel);
|
package/cjs/models/room.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"room.js","names":["_base","require","_stateRegister","RoomModel","exports","BaseModel","extend","modelName","props","channel_id","created_date","creation_status","longpoll_server_uri","modified_date","room_token","rtms_namespace","rtms_uri","rtms_version","rtms_token","wamp_version","websocket_server_uri","register"],"sources":["../../src/models/room.js"],"sourcesContent":["import { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.RoomModel\n * @extends models.BaseModel\n */\nexport const RoomModel = BaseModel.extend(\n\t/** @lends models.RoomModel# */ {\n\t\tmodelName: \"rooms\",\n\n\t\t/**\n\t\t * @property {string} channel_id\n\t\t * @property {date} created_date\n\t\t * @property {string} creation_status\n\t\t * @property {string} longpoll_server_uri\n\t\t * @property {date} modified_date\n\t\t * @property {string} room_token\n\t\t * @property {string} rtms_namespace\n\t\t * @property {string} rtms_uri\n\t\t * @property {string} rtms_version\n\t\t * @property {string} rtms_token\n\t\t * @property {string} wamp_version\n\t\t * @property {string} websocket_server_uri\n\t\t */\n\t\tprops: {\n\t\t\tchannel_id: \"string\",\n\t\t\tcreated_date: \"date\",\n\t\t\tcreation_status: \"string\",\n\t\t\tlongpoll_server_uri: \"string\",\n\t\t\tmodified_date: \"date\",\n\t\t\troom_token: \"string\",\n\t\t\trtms_namespace: \"string\",\n\t\t\trtms_uri: \"string\",\n\t\t\trtms_version: \"string\",\n\t\t\trtms_token: \"string\",\n\t\t\twamp_version: \"string\",\n\t\t\twebsocket_server_uri: \"string\",\n\t\t},\n\t},\n);\n\nregister(\"RoomModel\", RoomModel);\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,IAAME,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,eAAS,CAACC,MAAM,CACxC,+BAAgC;EAC/BC,SAAS,EAAE,OAAO;EAElB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,KAAK,EAAE;IACNC,UAAU,EAAE,QAAQ;IACpBC,YAAY,EAAE,MAAM;IACpBC,eAAe,EAAE,QAAQ;IACzBC,mBAAmB,EAAE,QAAQ;IAC7BC,aAAa,EAAE,MAAM;IACrBC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE,QAAQ;IACxBC,QAAQ,EAAE,QAAQ;IAClBC,YAAY,EAAE,QAAQ;IACtBC,UAAU,EAAE,QAAQ;IACpBC,YAAY,EAAE,QAAQ;IACtBC,oBAAoB,EAAE;EACvB;AACD,CACD,CAAC;AAED,IAAAC,uBAAQ,EAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"room.js","names":["_base","require","_stateRegister","RoomModel","exports","BaseModel","extend","modelName","props","channel_id","created_date","creation_status","longpoll_server_uri","modified_date","room_token","rtms_namespace","rtms_uri","rtms_version","rtms_token","wamp_version","websocket_server_uri","children","hostedpreso","register"],"sources":["../../src/models/room.js"],"sourcesContent":["import { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\nimport \"./hosted-preso.js\";\n\n/**\n * @constructor\n * @alias models.RoomModel\n * @extends models.BaseModel\n */\nexport const RoomModel = BaseModel.extend(\n\t/** @lends models.RoomModel# */ {\n\t\tmodelName: \"rooms\",\n\n\t\t/**\n\t\t * @property {string} channel_id\n\t\t * @property {date} created_date\n\t\t * @property {string} creation_status\n\t\t * @property {string} longpoll_server_uri\n\t\t * @property {date} modified_date\n\t\t * @property {string} room_token\n\t\t * @property {string} rtms_namespace\n\t\t * @property {string} rtms_uri\n\t\t * @property {string} rtms_version\n\t\t * @property {string} rtms_token\n\t\t * @property {string} wamp_version\n\t\t * @property {string} websocket_server_uri\n\t\t */\n\t\tprops: {\n\t\t\tchannel_id: \"string\",\n\t\t\tcreated_date: \"date\",\n\t\t\tcreation_status: \"string\",\n\t\t\tlongpoll_server_uri: \"string\",\n\t\t\tmodified_date: \"date\",\n\t\t\troom_token: \"string\",\n\t\t\trtms_namespace: \"string\",\n\t\t\trtms_uri: \"string\",\n\t\t\trtms_version: \"string\",\n\t\t\trtms_token: \"string\",\n\t\t\twamp_version: \"string\",\n\t\t\twebsocket_server_uri: \"string\",\n\t\t},\n\n\t\tchildren: {\n\t\t\thostedpreso: \"HostedPresoModel\",\n\t\t},\n\t},\n);\n\nregister(\"RoomModel\", RoomModel);\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACAA,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,IAAME,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,eAAS,CAACC,MAAM,CACxC,+BAAgC;EAC/BC,SAAS,EAAE,OAAO;EAElB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,KAAK,EAAE;IACNC,UAAU,EAAE,QAAQ;IACpBC,YAAY,EAAE,MAAM;IACpBC,eAAe,EAAE,QAAQ;IACzBC,mBAAmB,EAAE,QAAQ;IAC7BC,aAAa,EAAE,MAAM;IACrBC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE,QAAQ;IACxBC,QAAQ,EAAE,QAAQ;IAClBC,YAAY,EAAE,QAAQ;IACtBC,UAAU,EAAE,QAAQ;IACpBC,YAAY,EAAE,QAAQ;IACtBC,oBAAoB,EAAE;EACvB,CAAC;EAEDC,QAAQ,EAAE;IACTC,WAAW,EAAE;EACd;AACD,CACD,CAAC;AAED,IAAAC,uBAAQ,EAAC,WAAW,EAAEpB,SAAS,CAAC","ignoreList":[]}
|
package/cjs/models/user.js
CHANGED
|
@@ -132,8 +132,8 @@ var UserModel = exports.UserModel = _base.BaseModel.extend(/** @lends models.Use
|
|
|
132
132
|
};
|
|
133
133
|
presomanager.canModifyNotes = presomanager.canAddGlobalNotes || presomanager.canAddTeamNotes;
|
|
134
134
|
presomanager.canModifyTemporarySlides = presomanager.isGlobalTemporarySlideManager || presomanager.isTeamTemporarySlideManager;
|
|
135
|
-
presomanager.isPresoManagerUser = presomanager.canModifyTemporarySlides || presomanager.canModifyNotes || presomanager.canModifyContent;
|
|
136
135
|
presomanager.canModifyContent = this.actions.indexOf("Create Content") > -1 || this.actions.indexOf("Manage Team Editable Text") > -1;
|
|
136
|
+
presomanager.isPresoManagerUser = presomanager.canModifyTemporarySlides || presomanager.canModifyNotes || presomanager.canModifyContent;
|
|
137
137
|
var appointments = {
|
|
138
138
|
canUploadCustomSlides: this.actions.indexOf("Upload Custom Slides") > -1 && this.actions.indexOf("Upload Custom Sections") > -1,
|
|
139
139
|
isContentAdmin: this.actions.indexOf("Administer Content") > -1,
|
package/cjs/models/user.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.js","names":["require","_api","_auth","_base","_superagentBluebirdPromise","_interopRequireDefault","_stateRegister","UserModel","exports","BaseModel","extend","modelName","initialize","options","arguments","length","undefined","self","anon","props","actions","type","default","preferences","notification_sender","email_signature","app_prefs","timezone","eula_key","calendar_feed","date_joined","email","first_name","last_name","is_active","is_staff","is_superuser","is_support","is_manager","last_login","username","profile","rtms_topic","rtms_token","last_reset_request","children","tenancy","collections","groups","team_set","derived","fullName","deps","fn","concat","permissions","presets","canCreateCompanyPresets","indexOf","canCreateTeamPresets","presomanager","isGlobalTemporarySlideManager","isTeamTemporarySlideManager","isContentAdmin","isTeamContentManager","canAddGlobalNotes","canAddTeamNotes","isContentCreator","canModifyNotes","canModifyTemporarySlides","isPresoManagerUser","canModifyContent","appointments","canUploadCustomSlides","telePresenter","livePresenter","canViewPresosOfOthers","canShare","canPresent","canCreateWithoutTeam","canUseClosedCaptions","canCreateMutedAppointments","canHandoverPresosOfOthers","canChooseShareVisAnyone","canChooseShareVis2fa","customers","signing","canUseSigning","includes","fetchJwtLogin","redirectURL","authURL","Api","getResourceURL","SuperAgentRequest","set","Auth","headers","then","resp","body","url","fetch","_this","prototype","apply","tap","originalUrl","call","toServer","data","id","map","group","register"],"sources":["../../src/models/user.js"],"sourcesContent":["import \"./tenancy.js\";\nimport \"../collections/groups.js\";\nimport \"../collections/teams.js\";\n\nimport { Api } from \"../api.js\";\nimport { Auth } from \"../auth.js\";\nimport { BaseModel } from \"./base.js\";\nimport SuperAgentRequest from \"superagent-bluebird-promise\";\nimport { register } from \"../state-register.js\";\n\n/**\n\n * @constructor\n * @alias models.UserModel\n * @extends models.BaseModel\n */\nexport const UserModel = BaseModel.extend(\n\t/** @lends models.UserModel# */ {\n\t\tmodelName: \"users\",\n\n\t\tinitialize(options = { self: false, anon: false }) {\n\t\t\tthis.self = options && options.self ? options.self : false;\n\t\t\tthis.anon = options && options.anon ? options.anon : false;\n\t\t},\n\n\t\t/**\n\t\t * @property {string[]} actions\n\t\t * @property {date} date_joined\n\t\t * @property {string} email\n\t\t * @property {string} first_name\n\t\t * @property {string} last_name\n\t\t * @property {boolean} is_active\n\t\t * @property {boolean} is_staff\n\t\t * @property {boolean} is_superuser\n\t\t * @property {boolean} is_support\n\t\t * @property {boolean} is_manager\n\t\t * @property {date} last_login\n\t\t * @property {string} username\n\t\t * @property {object} preferences\n\t\t * @property {object} profile\n\t\t * @property {string} rtms_topic\n\t\t * @property {string} rtms_token\n\t\t * @property {date} last_reset_request\n\t\t */\n\t\tprops: {\n\t\t\tactions: {\n\t\t\t\ttype: \"array\",\n\t\t\t\tdefault: () => [],\n\t\t\t},\n\t\t\tpreferences: {\n\t\t\t\ttype: \"object\",\n\t\t\t\tdefault: () => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tnotification_sender: \"default\",\n\t\t\t\t\t\temail_signature: \"\",\n\t\t\t\t\t\tapp_prefs: {},\n\t\t\t\t\t\ttimezone: \"\",\n\t\t\t\t\t\teula_key: \"\",\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t},\n\t\t\tcalendar_feed: \"string\",\n\t\t\tdate_joined: \"date\",\n\t\t\temail: \"string\",\n\t\t\tfirst_name: \"string\",\n\t\t\tlast_name: \"string\",\n\t\t\tis_active: \"boolean\",\n\t\t\tis_staff: \"boolean\",\n\t\t\tis_superuser: \"boolean\",\n\t\t\tis_support: \"boolean\",\n\t\t\tis_manager: \"boolean\",\n\t\t\tlast_login: \"date\",\n\t\t\tusername: \"string\",\n\t\t\tprofile: \"object\",\n\t\t\trtms_topic: \"string\",\n\t\t\trtms_token: \"string\",\n\t\t\tlast_reset_request: \"string\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.TenancyModel} tenancy\n\t\t */\n\t\tchildren: {\n\t\t\ttenancy: \"TenancyModel\",\n\t\t},\n\n\t\t/**\n\t\t * @property {collections.GroupCollection} groups\n\t\t * @property {collections.TeamCollection} team_set\n\t\t */\n\t\tcollections: {\n\t\t\tgroups: \"GroupCollection\",\n\t\t\tteam_set: \"TeamCollection\",\n\t\t},\n\n\t\t/**\n\t\t * @property {string} fullName - The full name of the user\n\t\t * @property {object} permissions - The one place for testing user permissions\n\t\t * @property {boolean} permissions.canCreateCompanyPresets - Has ability to create a company preset\n\t\t */\n\t\tderived: {\n\t\t\tfullName: {\n\t\t\t\tdeps: [\"first_name\", \"last_name\"],\n\t\t\t\tfn: function () {\n\t\t\t\t\treturn `${this.first_name} ${this.last_name}`;\n\t\t\t\t},\n\t\t\t},\n\n\t\t\tpermissions: {\n\t\t\t\tdeps: [\"actions\"],\n\t\t\t\tfn: function () {\n\t\t\t\t\tconst presets = {\n\t\t\t\t\t\tcanCreateCompanyPresets:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Manage Deck Presets\") > -1,\n\t\t\t\t\t\tcanCreateTeamPresets:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Manage Team Presets\") > -1,\n\t\t\t\t\t};\n\n\t\t\t\t\tconst presomanager = {\n\t\t\t\t\t\t// Can create or delete slides\n\t\t\t\t\t\tisGlobalTemporarySlideManager:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Manage Temporary Slides\") > -1,\n\t\t\t\t\t\tisTeamTemporarySlideManager:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Manage Team Temporary Slides\") > -1,\n\n\t\t\t\t\t\t// Can update content within a slide (text, images, etc.)\n\t\t\t\t\t\tisContentAdmin: this.actions.indexOf(\"Administer Content\") > -1,\n\t\t\t\t\t\tisTeamContentManager:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Manage Team Editable Text\") > -1,\n\n\t\t\t\t\t\tcanAddGlobalNotes: this.actions.indexOf(\"Manage Notes\") > -1,\n\t\t\t\t\t\tcanAddTeamNotes: this.actions.indexOf(\"Manage Team Notes\") > -1,\n\n\t\t\t\t\t\t// This is someone that uses the CDK/publishes content, not someone\n\t\t\t\t\t\t// that edits content.\n\t\t\t\t\t\tisContentCreator: this.actions.indexOf(\"Create Content\") > -1,\n\t\t\t\t\t};\n\n\t\t\t\t\tpresomanager.canModifyNotes =\n\t\t\t\t\t\tpresomanager.canAddGlobalNotes || presomanager.canAddTeamNotes;\n\n\t\t\t\t\tpresomanager.canModifyTemporarySlides =\n\t\t\t\t\t\tpresomanager.isGlobalTemporarySlideManager ||\n\t\t\t\t\t\tpresomanager.isTeamTemporarySlideManager;\n\n\t\t\t\t\tpresomanager.isPresoManagerUser =\n\t\t\t\t\t\tpresomanager.canModifyTemporarySlides ||\n\t\t\t\t\t\tpresomanager.canModifyNotes ||\n\t\t\t\t\t\tpresomanager.canModifyContent;\n\n\t\t\t\t\tpresomanager.canModifyContent =\n\t\t\t\t\t\tthis.actions.indexOf(\"Create Content\") > -1 ||\n\t\t\t\t\t\tthis.actions.indexOf(\"Manage Team Editable Text\") > -1;\n\n\t\t\t\t\tconst appointments = {\n\t\t\t\t\t\tcanUploadCustomSlides:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Upload Custom Slides\") > -1 &&\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Upload Custom Sections\") > -1,\n\n\t\t\t\t\t\tisContentAdmin: this.actions.indexOf(\"Administer Content\") > -1,\n\t\t\t\t\t\tisContentCreator: this.actions.indexOf(\"Create Content\") > -1,\n\n\t\t\t\t\t\ttelePresenter: this.actions.indexOf(\"TelePresent\") > -1,\n\t\t\t\t\t\tlivePresenter: this.actions.indexOf(\"LivePresent\") > -1,\n\n\t\t\t\t\t\tcanViewPresosOfOthers:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"View Presos of Others\") > -1,\n\t\t\t\t\t\tcanShare: this.actions.indexOf(\"Share preso\") > -1,\n\t\t\t\t\t\tcanPresent: this.actions.indexOf(\"Present preso\") > -1,\n\t\t\t\t\t\tcanCreateWithoutTeam:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Allow Teamless Appointments\") > -1,\n\t\t\t\t\t\tcanUseClosedCaptions:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Use Closed Captions\") > -1,\n\t\t\t\t\t\tcanCreateMutedAppointments:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Create Muted Appointments\") > -1,\n\t\t\t\t\t\tcanHandoverPresosOfOthers:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Handover Presos of Others\") > -1,\n\t\t\t\t\t\tcanChooseShareVisAnyone:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Choose Share Visibility Anyone\") > -1,\n\t\t\t\t\t\tcanChooseShareVis2fa:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Choose Share Visibility 2FA\") > -1,\n\t\t\t\t\t};\n\n\t\t\t\t\tconst customers = {\n\t\t\t\t\t\tcanCreateWithoutTeam:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Allow Teamless Customers\") > -1,\n\t\t\t\t\t};\n\n\t\t\t\t\tconst signing = {\n\t\t\t\t\t\tcanUseSigning: this.actions.includes(\"Use Signing\"),\n\t\t\t\t\t};\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\tpresets,\n\t\t\t\t\t\tappointments,\n\t\t\t\t\t\tpresomanager,\n\t\t\t\t\t\tcustomers,\n\t\t\t\t\t\tsigning,\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tfetchJwtLogin(redirectURL = null) {\n\t\t\tconst authURL = Api.getResourceURL(\"hq-authorized-link\");\n\n\t\t\treturn SuperAgentRequest(\"GET\", authURL)\n\t\t\t\t.set(Auth.headers)\n\t\t\t\t.then((resp) => {\n\t\t\t\t\treturn resp.body.url + (redirectURL ? `&next=${redirectURL}` : \"\");\n\t\t\t\t});\n\t\t},\n\n\t\tfetch() {\n\t\t\tconst fetch = BaseModel.prototype.fetch.apply(this, arguments);\n\n\t\t\treturn fetch.tap(() => {\n\t\t\t\tif (this.self) {\n\t\t\t\t\tthis.self = false;\n\t\t\t\t}\n\n\t\t\t\tif (this.anon) {\n\t\t\t\t\tthis.anon = false;\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\n\t\turl() {\n\t\t\tconst originalUrl = BaseModel.prototype.url.call(this);\n\t\t\tif (this.self) {\n\t\t\t\treturn `${originalUrl}self/`;\n\t\t\t} else if (this.anon) {\n\t\t\t\treturn `${originalUrl}anon/`;\n\t\t\t}\n\t\t\treturn originalUrl;\n\t\t},\n\n\t\ttoServer() {\n\t\t\tconst data = {\n\t\t\t\tid: this.id,\n\t\t\t\tpreferences: this.preferences,\n\t\t\t};\n\n\t\t\tif (this.groups) {\n\t\t\t\tdata.groups = this.groups.map((group) => group.url());\n\t\t\t}\n\n\t\t\tif (!data.preferences.timezone) {\n\t\t\t\tdelete data.preferences.timezone;\n\t\t\t}\n\n\t\t\treturn data;\n\t\t},\n\t},\n);\n\nregister(\"UserModel\", UserModel);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"user.js","names":["require","_api","_auth","_base","_superagentBluebirdPromise","_interopRequireDefault","_stateRegister","UserModel","exports","BaseModel","extend","modelName","initialize","options","arguments","length","undefined","self","anon","props","actions","type","default","preferences","notification_sender","email_signature","app_prefs","timezone","eula_key","calendar_feed","date_joined","email","first_name","last_name","is_active","is_staff","is_superuser","is_support","is_manager","last_login","username","profile","rtms_topic","rtms_token","last_reset_request","children","tenancy","collections","groups","team_set","derived","fullName","deps","fn","concat","permissions","presets","canCreateCompanyPresets","indexOf","canCreateTeamPresets","presomanager","isGlobalTemporarySlideManager","isTeamTemporarySlideManager","isContentAdmin","isTeamContentManager","canAddGlobalNotes","canAddTeamNotes","isContentCreator","canModifyNotes","canModifyTemporarySlides","canModifyContent","isPresoManagerUser","appointments","canUploadCustomSlides","telePresenter","livePresenter","canViewPresosOfOthers","canShare","canPresent","canCreateWithoutTeam","canUseClosedCaptions","canCreateMutedAppointments","canHandoverPresosOfOthers","canChooseShareVisAnyone","canChooseShareVis2fa","customers","signing","canUseSigning","includes","fetchJwtLogin","redirectURL","authURL","Api","getResourceURL","SuperAgentRequest","set","Auth","headers","then","resp","body","url","fetch","_this","prototype","apply","tap","originalUrl","call","toServer","data","id","map","group","register"],"sources":["../../src/models/user.js"],"sourcesContent":["import \"./tenancy.js\";\nimport \"../collections/groups.js\";\nimport \"../collections/teams.js\";\n\nimport { Api } from \"../api.js\";\nimport { Auth } from \"../auth.js\";\nimport { BaseModel } from \"./base.js\";\nimport SuperAgentRequest from \"superagent-bluebird-promise\";\nimport { register } from \"../state-register.js\";\n\n/**\n\n * @constructor\n * @alias models.UserModel\n * @extends models.BaseModel\n */\nexport const UserModel = BaseModel.extend(\n\t/** @lends models.UserModel# */ {\n\t\tmodelName: \"users\",\n\n\t\tinitialize(options = { self: false, anon: false }) {\n\t\t\tthis.self = options && options.self ? options.self : false;\n\t\t\tthis.anon = options && options.anon ? options.anon : false;\n\t\t},\n\n\t\t/**\n\t\t * @property {string[]} actions\n\t\t * @property {date} date_joined\n\t\t * @property {string} email\n\t\t * @property {string} first_name\n\t\t * @property {string} last_name\n\t\t * @property {boolean} is_active\n\t\t * @property {boolean} is_staff\n\t\t * @property {boolean} is_superuser\n\t\t * @property {boolean} is_support\n\t\t * @property {boolean} is_manager\n\t\t * @property {date} last_login\n\t\t * @property {string} username\n\t\t * @property {object} preferences\n\t\t * @property {object} profile\n\t\t * @property {string} rtms_topic\n\t\t * @property {string} rtms_token\n\t\t * @property {date} last_reset_request\n\t\t */\n\t\tprops: {\n\t\t\tactions: {\n\t\t\t\ttype: \"array\",\n\t\t\t\tdefault: () => [],\n\t\t\t},\n\t\t\tpreferences: {\n\t\t\t\ttype: \"object\",\n\t\t\t\tdefault: () => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tnotification_sender: \"default\",\n\t\t\t\t\t\temail_signature: \"\",\n\t\t\t\t\t\tapp_prefs: {},\n\t\t\t\t\t\ttimezone: \"\",\n\t\t\t\t\t\teula_key: \"\",\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t},\n\t\t\tcalendar_feed: \"string\",\n\t\t\tdate_joined: \"date\",\n\t\t\temail: \"string\",\n\t\t\tfirst_name: \"string\",\n\t\t\tlast_name: \"string\",\n\t\t\tis_active: \"boolean\",\n\t\t\tis_staff: \"boolean\",\n\t\t\tis_superuser: \"boolean\",\n\t\t\tis_support: \"boolean\",\n\t\t\tis_manager: \"boolean\",\n\t\t\tlast_login: \"date\",\n\t\t\tusername: \"string\",\n\t\t\tprofile: \"object\",\n\t\t\trtms_topic: \"string\",\n\t\t\trtms_token: \"string\",\n\t\t\tlast_reset_request: \"string\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.TenancyModel} tenancy\n\t\t */\n\t\tchildren: {\n\t\t\ttenancy: \"TenancyModel\",\n\t\t},\n\n\t\t/**\n\t\t * @property {collections.GroupCollection} groups\n\t\t * @property {collections.TeamCollection} team_set\n\t\t */\n\t\tcollections: {\n\t\t\tgroups: \"GroupCollection\",\n\t\t\tteam_set: \"TeamCollection\",\n\t\t},\n\n\t\t/**\n\t\t * @property {string} fullName - The full name of the user\n\t\t * @property {object} permissions - The one place for testing user permissions\n\t\t * @property {boolean} permissions.canCreateCompanyPresets - Has ability to create a company preset\n\t\t */\n\t\tderived: {\n\t\t\tfullName: {\n\t\t\t\tdeps: [\"first_name\", \"last_name\"],\n\t\t\t\tfn: function () {\n\t\t\t\t\treturn `${this.first_name} ${this.last_name}`;\n\t\t\t\t},\n\t\t\t},\n\n\t\t\tpermissions: {\n\t\t\t\tdeps: [\"actions\"],\n\t\t\t\tfn: function () {\n\t\t\t\t\tconst presets = {\n\t\t\t\t\t\tcanCreateCompanyPresets:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Manage Deck Presets\") > -1,\n\t\t\t\t\t\tcanCreateTeamPresets:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Manage Team Presets\") > -1,\n\t\t\t\t\t};\n\n\t\t\t\t\tconst presomanager = {\n\t\t\t\t\t\t// Can create or delete slides\n\t\t\t\t\t\tisGlobalTemporarySlideManager:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Manage Temporary Slides\") > -1,\n\t\t\t\t\t\tisTeamTemporarySlideManager:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Manage Team Temporary Slides\") > -1,\n\n\t\t\t\t\t\t// Can update content within a slide (text, images, etc.)\n\t\t\t\t\t\tisContentAdmin: this.actions.indexOf(\"Administer Content\") > -1,\n\t\t\t\t\t\tisTeamContentManager:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Manage Team Editable Text\") > -1,\n\n\t\t\t\t\t\tcanAddGlobalNotes: this.actions.indexOf(\"Manage Notes\") > -1,\n\t\t\t\t\t\tcanAddTeamNotes: this.actions.indexOf(\"Manage Team Notes\") > -1,\n\n\t\t\t\t\t\t// This is someone that uses the CDK/publishes content, not someone\n\t\t\t\t\t\t// that edits content.\n\t\t\t\t\t\tisContentCreator: this.actions.indexOf(\"Create Content\") > -1,\n\t\t\t\t\t};\n\n\t\t\t\t\tpresomanager.canModifyNotes =\n\t\t\t\t\t\tpresomanager.canAddGlobalNotes || presomanager.canAddTeamNotes;\n\n\t\t\t\t\tpresomanager.canModifyTemporarySlides =\n\t\t\t\t\t\tpresomanager.isGlobalTemporarySlideManager ||\n\t\t\t\t\t\tpresomanager.isTeamTemporarySlideManager;\n\n\t\t\t\t\tpresomanager.canModifyContent =\n\t\t\t\t\t\tthis.actions.indexOf(\"Create Content\") > -1 ||\n\t\t\t\t\t\tthis.actions.indexOf(\"Manage Team Editable Text\") > -1;\n\n\t\t\t\t\tpresomanager.isPresoManagerUser =\n\t\t\t\t\t\tpresomanager.canModifyTemporarySlides ||\n\t\t\t\t\t\tpresomanager.canModifyNotes ||\n\t\t\t\t\t\tpresomanager.canModifyContent;\n\n\t\t\t\t\tconst appointments = {\n\t\t\t\t\t\tcanUploadCustomSlides:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Upload Custom Slides\") > -1 &&\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Upload Custom Sections\") > -1,\n\n\t\t\t\t\t\tisContentAdmin: this.actions.indexOf(\"Administer Content\") > -1,\n\t\t\t\t\t\tisContentCreator: this.actions.indexOf(\"Create Content\") > -1,\n\n\t\t\t\t\t\ttelePresenter: this.actions.indexOf(\"TelePresent\") > -1,\n\t\t\t\t\t\tlivePresenter: this.actions.indexOf(\"LivePresent\") > -1,\n\n\t\t\t\t\t\tcanViewPresosOfOthers:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"View Presos of Others\") > -1,\n\t\t\t\t\t\tcanShare: this.actions.indexOf(\"Share preso\") > -1,\n\t\t\t\t\t\tcanPresent: this.actions.indexOf(\"Present preso\") > -1,\n\t\t\t\t\t\tcanCreateWithoutTeam:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Allow Teamless Appointments\") > -1,\n\t\t\t\t\t\tcanUseClosedCaptions:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Use Closed Captions\") > -1,\n\t\t\t\t\t\tcanCreateMutedAppointments:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Create Muted Appointments\") > -1,\n\t\t\t\t\t\tcanHandoverPresosOfOthers:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Handover Presos of Others\") > -1,\n\t\t\t\t\t\tcanChooseShareVisAnyone:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Choose Share Visibility Anyone\") > -1,\n\t\t\t\t\t\tcanChooseShareVis2fa:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Choose Share Visibility 2FA\") > -1,\n\t\t\t\t\t};\n\n\t\t\t\t\tconst customers = {\n\t\t\t\t\t\tcanCreateWithoutTeam:\n\t\t\t\t\t\t\tthis.actions.indexOf(\"Allow Teamless Customers\") > -1,\n\t\t\t\t\t};\n\n\t\t\t\t\tconst signing = {\n\t\t\t\t\t\tcanUseSigning: this.actions.includes(\"Use Signing\"),\n\t\t\t\t\t};\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\tpresets,\n\t\t\t\t\t\tappointments,\n\t\t\t\t\t\tpresomanager,\n\t\t\t\t\t\tcustomers,\n\t\t\t\t\t\tsigning,\n\t\t\t\t\t};\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tfetchJwtLogin(redirectURL = null) {\n\t\t\tconst authURL = Api.getResourceURL(\"hq-authorized-link\");\n\n\t\t\treturn SuperAgentRequest(\"GET\", authURL)\n\t\t\t\t.set(Auth.headers)\n\t\t\t\t.then((resp) => {\n\t\t\t\t\treturn resp.body.url + (redirectURL ? `&next=${redirectURL}` : \"\");\n\t\t\t\t});\n\t\t},\n\n\t\tfetch() {\n\t\t\tconst fetch = BaseModel.prototype.fetch.apply(this, arguments);\n\n\t\t\treturn fetch.tap(() => {\n\t\t\t\tif (this.self) {\n\t\t\t\t\tthis.self = false;\n\t\t\t\t}\n\n\t\t\t\tif (this.anon) {\n\t\t\t\t\tthis.anon = false;\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\n\t\turl() {\n\t\t\tconst originalUrl = BaseModel.prototype.url.call(this);\n\t\t\tif (this.self) {\n\t\t\t\treturn `${originalUrl}self/`;\n\t\t\t} else if (this.anon) {\n\t\t\t\treturn `${originalUrl}anon/`;\n\t\t\t}\n\t\t\treturn originalUrl;\n\t\t},\n\n\t\ttoServer() {\n\t\t\tconst data = {\n\t\t\t\tid: this.id,\n\t\t\t\tpreferences: this.preferences,\n\t\t\t};\n\n\t\t\tif (this.groups) {\n\t\t\t\tdata.groups = this.groups.map((group) => group.url());\n\t\t\t}\n\n\t\t\tif (!data.preferences.timezone) {\n\t\t\t\tdelete data.preferences.timezone;\n\t\t\t}\n\n\t\t\treturn data;\n\t\t},\n\t},\n);\n\nregister(\"UserModel\", UserModel);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -135,11 +135,11 @@ BasePresentationModel.getVisibilityAndSequence = function (model) {
|
|
|
135
135
|
if (choicelist) {
|
|
136
136
|
// All items should have a choicelist entry - if it's not in
|
|
137
137
|
// the choicelist, it's not in the preso
|
|
138
|
-
var choice = choicelist.find(function (item) {
|
|
138
|
+
var choice = options.choicelistMap ? options.choicelistMap.get(url) : choicelist.find(function (item) {
|
|
139
139
|
return item.url === url;
|
|
140
140
|
});
|
|
141
141
|
if (choice) {
|
|
142
|
-
config.sequence = choicelist.indexOf(choice);
|
|
142
|
+
config.sequence = options.choicelistMap ? choice._idx : choicelist.indexOf(choice);
|
|
143
143
|
config.visible = choice.visible;
|
|
144
144
|
} else {
|
|
145
145
|
config.visible = false;
|
|
@@ -148,7 +148,7 @@ BasePresentationModel.getVisibilityAndSequence = function (model) {
|
|
|
148
148
|
// Non-adjunct subslides and adjunct sections/slides/subslides
|
|
149
149
|
// have no selections - they fall through here using their
|
|
150
150
|
// model's values
|
|
151
|
-
var selection = selections.find(function (selection) {
|
|
151
|
+
var selection = options.selectionsMap ? options.selectionsMap.get(url) : selections.find(function (selection) {
|
|
152
152
|
return selection.url === url;
|
|
153
153
|
});
|
|
154
154
|
if (selection) {
|
|
@@ -163,10 +163,10 @@ BasePresentationModel.getVisibilityAndSequence = function (model) {
|
|
|
163
163
|
|
|
164
164
|
return config;
|
|
165
165
|
};
|
|
166
|
-
var getAppointmentTags = function getAppointmentTags(model, tags) {
|
|
166
|
+
var getAppointmentTags = function getAppointmentTags(model, tags, options) {
|
|
167
167
|
var _model$adjunct;
|
|
168
168
|
var url = ((_model$adjunct = model.adjunct) === null || _model$adjunct === void 0 ? void 0 : _model$adjunct.url()) || model.url();
|
|
169
|
-
var tagItem = tags.find(function (tag) {
|
|
169
|
+
var tagItem = options !== null && options !== void 0 && options.appointmentTagsMap ? options.appointmentTagsMap.get(url) : tags.find(function (tag) {
|
|
170
170
|
return tag.content_url === url;
|
|
171
171
|
});
|
|
172
172
|
if (tagItem) {
|
|
@@ -212,7 +212,7 @@ var getDeckTags = function getDeckTags(model, tags) {
|
|
|
212
212
|
BasePresentationModel.getTags = function (model) {
|
|
213
213
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
214
214
|
if (options.appointmentTags) {
|
|
215
|
-
return getAppointmentTags(model, options.appointmentTags);
|
|
215
|
+
return getAppointmentTags(model, options.appointmentTags, options);
|
|
216
216
|
}
|
|
217
217
|
if (options.deckTags) {
|
|
218
218
|
return getDeckTags(model, options.deckTags);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-presentation-model.js","names":["_base","require","_deckVersionScreenshots","_scenario2","_lodash","_interopRequireDefault","_createForOfIteratorHelper","r","e","t","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","n","done","value","f","TypeError","o","a","u","call","next","return","_arrayLikeToArray","toString","slice","constructor","name","from","test","ownKeys","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","BasePresentationModel","exports","BaseModel","extend","url","screenshotsToMap","screenshots","models","reduce","result","model","subject","Error","image_256","getThumbnail","filterScreenshotsByScenario","_screenshots","_scenario","undefined","DeckVersionScreenshotCollection","scenario","ScenarioModel","id","globalScreenshots","screen","map","toJSON","scenarioScreenshots","_iterator","_step","scenarioScreen","existingGlobalIndex","_","findIndex","err","ordered","orderBy","getVisibilityAndSequence","options","_options$choicelist","choicelist","_options$selections","selections","config","visible","enabled","sequence","selectionID","choice","find","item","indexOf","adjunct","selection","getAppointmentTags","tags","_model$adjunct","tagItem","tag","content_url","getDeckTags","namespaced_key","isAutoAdjunct","key","includes","splitKey","split","deck","getTags","appointmentTags","deckTags","canBeEmpty"],"sources":["../../src/presentation/base-presentation-model.js"],"sourcesContent":["import { BaseModel } from \"../models/base.js\";\nimport { DeckVersionScreenshotCollection } from \"../collections/deck-version-screenshots.js\";\nimport { ScenarioModel } from \"../models/scenario.js\";\nimport _ from \"lodash\";\n\n/**\n * @constructor\n * @alias presentation.BasePresentationModel\n * @extends presentation.BaseModel\n */\nexport const BasePresentationModel = BaseModel.extend(\n\t/** @lends presentation.BasePresentationModel# */ {\n\t\turl() {\n\t\t\treturn null;\n\t\t},\n\t},\n);\n\nBasePresentationModel.screenshotsToMap = function (screenshots) {\n\tif (!screenshots?.models) {\n\t\treturn screenshots;\n\t}\n\n\treturn screenshots.reduce((result, model) => {\n\t\tif (result[model.subject]) {\n\t\t\tthrow new Error(`\n\t\t\t\tFound multiple screenshots that could match this subject. If there is a scenario\n\t\t\t\tand a global, be sure to remove the screenshot that you don't need.\n\t\t\t`);\n\t\t}\n\t\tresult[model.subject] = model.image_256;\n\t\treturn result;\n\t}, {});\n};\n\n/**\n * Logic to pick a thumbnail based on either the model itself or from\n * and overriding screenshot if one exists.\n */\nBasePresentationModel.getThumbnail = function (model, screenshots) {\n\tif (screenshots?.models) {\n\t\tthrow new Error(\"Expected map file\");\n\t}\n\n\tif (!model) {\n\t\treturn null;\n\t}\n\n\treturn screenshots[model.url()] || model.image_256;\n};\n\n/**\n * Takes a list of screenshots and filters it to only be a list used by a single scenario\n * (or company wide).\n *\n * The logic should be like this:\n *\n *\t* If the scenario is null, we just return all global screenshots (scenario = null)\n *\t* If we select a scenario, we take those global screenshots and replace any that have a\n *\t\tscenario specific version of that screenshot. If none is found, the\n *\t\tscenario will want to see the same global version. Obviously only one\n *\t\tscenario's screenshots should be available.\n */\nBasePresentationModel.filterScreenshotsByScenario = function (\n\t_screenshots,\n\t_scenario = null,\n) {\n\tconst screenshots = new DeckVersionScreenshotCollection(_screenshots);\n\tconst scenario = _scenario ? new ScenarioModel({ id: _scenario }) : null;\n\n\tconst globalScreenshots = screenshots\n\t\t.filter((screen) => screen.scenario === null)\n\t\t.map((screen) => screen.toJSON());\n\n\tconst result = globalScreenshots;\n\n\tif (scenario) {\n\t\tconst scenarioScreenshots = screenshots\n\t\t\t.filter(\n\t\t\t\t(screen) => screen.scenario && screen.scenario.url() === scenario.url(),\n\t\t\t)\n\t\t\t.map((screen) => ({\n\t\t\t\t...screen.toJSON(),\n\t\t\t\tscenario: screen.scenario.url(),\n\t\t\t}));\n\n\t\tfor (const scenarioScreen of scenarioScreenshots) {\n\t\t\tconst existingGlobalIndex = _.findIndex(result, {\n\t\t\t\tsubject: scenarioScreen.subject,\n\t\t\t});\n\n\t\t\tif (existingGlobalIndex === -1) {\n\t\t\t\t// If there isn't an existing global version, just add the scenario\n\t\t\t\t// screenshot to the list\n\t\t\t\tresult.push(scenarioScreen);\n\t\t\t} else {\n\t\t\t\t// Otherwise we should use the scenario version instead of the global version\n\t\t\t\tresult[existingGlobalIndex] = scenarioScreen;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Try to return it in the same order every time\n\tconst ordered = _.orderBy(result, [\"scenario\", \"subject\"], [\"desc\", \"asc\"]);\n\treturn new DeckVersionScreenshotCollection(ordered);\n};\n\n/**\n * Standard function for retrieving the visibility and sequence of a model\n * from a choicelist or section & slide selections. If a choicelist is\n * provided we prefer the choicelist, otherwise we use selections.\n * Adjuncts are included in choicelists but not in selections so we use the\n * model's state to determine sequence & vis when selections are used.\n */\nBasePresentationModel.getVisibilityAndSequence = function (\n\tmodel,\n\toptions = {},\n) {\n\tconst { choicelist = null, selections = null } = options;\n\tconst url = model.url();\n\n\tconst config = {\n\t\tvisible: model.visible || model.enabled || false,\n\t\tsequence: model.sequence,\n\t\tselectionID: null,\n\t};\n\n\tif (choicelist) {\n\t\t// All items should have a choicelist entry - if it's not in\n\t\t// the choicelist, it's not in the preso\n\t\tconst choice = choicelist.find((item) => item.url === url);\n\n\t\tif (choice) {\n\t\t\tconfig.sequence = choicelist.indexOf(choice);\n\t\t\tconfig.visible = choice.visible;\n\t\t} else {\n\t\t\tconfig.visible = false;\n\t\t}\n\t} else if (selections && !model.adjunct) {\n\t\t// Non-adjunct subslides and adjunct sections/slides/subslides\n\t\t// have no selections - they fall through here using their\n\t\t// model's values\n\t\tconst selection = selections.find((selection) => selection.url === url);\n\n\t\tif (selection) {\n\t\t\tconfig.visible = selection.visible;\n\t\t\tconfig.sequence = selection.sequence;\n\t\t\tconfig.selectionID = selection.id;\n\t\t}\n\t}\n\n\t// If neither a choicelist nor selections are available, the\n\t// values on the model will be used.\n\n\treturn config;\n};\n\nconst getAppointmentTags = function (model, tags) {\n\tconst url = model.adjunct?.url() || model.url();\n\tconst tagItem = tags.find((tag) => tag.content_url === url);\n\n\tif (tagItem) {\n\t\treturn tagItem.tags || [];\n\t}\n\n\t// Subslide tags currently aren't included in the\n\t// appointmentTags data.\n\treturn model.tags || [];\n};\n\nconst getDeckTags = function (model, tags) {\n\t// All non-adjunct sections, slides and subslides have namespaced_key\n\tif (model.namespaced_key) {\n\t\treturn tags[model.namespaced_key] || model.tags || [];\n\t} else if (model.adjunct || model.isAutoAdjunct) {\n\t\t// Autoadjunct keys are unique and move around so we search for them\n\t\t// and ignore the rest of the namespaced key\n\t\tconst keys = Object.keys(tags).filter((key) => {\n\t\t\tif (key.includes(\"/\")) {\n\t\t\t\tconst splitKey = key.split(\"/\");\n\n\t\t\t\treturn splitKey[splitKey.length - 1] === model.key;\n\t\t\t}\n\t\t\treturn key === model.key;\n\t\t});\n\t\treturn keys.length ? tags[keys[0]] : [];\n\t} else if (model.deck) {\n\t\t// The deck's namespaced key is always \"\" - this is because the\n\t\t// namespaced key format is section-key/slide-key, but the\n\t\t// deck sits above sections.\n\t\treturn tags[\"\"] || model.tags || [];\n\t}\n\n\treturn model.tags || [];\n};\n\n// Retrieve the tags for the model.\n// If appointmentTags is passed through in the options, we call the\n// getAppointmentTags function above to retrieve the appointment tags\n// for the model.\n// if there are no appointmentTags but deckTags are passed\n// through then we call the getDeckTags function.\n// In the future we will always use one of these two methods and\n// references to model.tags should be removed.\nBasePresentationModel.getTags = function (model, options = {}) {\n\tif (options.appointmentTags) {\n\t\treturn getAppointmentTags(model, options.appointmentTags);\n\t}\n\n\tif (options.deckTags) {\n\t\treturn getDeckTags(model, options.deckTags);\n\t}\n\n\treturn model.tags || [];\n};\n\nBasePresentationModel.canBeEmpty = true;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"base-presentation-model.js","names":["_base","require","_deckVersionScreenshots","_scenario2","_lodash","_interopRequireDefault","_createForOfIteratorHelper","r","e","t","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","n","done","value","f","TypeError","o","a","u","call","next","return","_arrayLikeToArray","toString","slice","constructor","name","from","test","ownKeys","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","BasePresentationModel","exports","BaseModel","extend","url","screenshotsToMap","screenshots","models","reduce","result","model","subject","Error","image_256","getThumbnail","filterScreenshotsByScenario","_screenshots","_scenario","undefined","DeckVersionScreenshotCollection","scenario","ScenarioModel","id","globalScreenshots","screen","map","toJSON","scenarioScreenshots","_iterator","_step","scenarioScreen","existingGlobalIndex","_","findIndex","err","ordered","orderBy","getVisibilityAndSequence","options","_options$choicelist","choicelist","_options$selections","selections","config","visible","enabled","sequence","selectionID","choice","choicelistMap","get","find","item","_idx","indexOf","adjunct","selection","selectionsMap","getAppointmentTags","tags","_model$adjunct","tagItem","appointmentTagsMap","tag","content_url","getDeckTags","namespaced_key","isAutoAdjunct","key","includes","splitKey","split","deck","getTags","appointmentTags","deckTags","canBeEmpty"],"sources":["../../src/presentation/base-presentation-model.js"],"sourcesContent":["import { BaseModel } from \"../models/base.js\";\nimport { DeckVersionScreenshotCollection } from \"../collections/deck-version-screenshots.js\";\nimport { ScenarioModel } from \"../models/scenario.js\";\nimport _ from \"lodash\";\n\n/**\n * @constructor\n * @alias presentation.BasePresentationModel\n * @extends presentation.BaseModel\n */\nexport const BasePresentationModel = BaseModel.extend(\n\t/** @lends presentation.BasePresentationModel# */ {\n\t\turl() {\n\t\t\treturn null;\n\t\t},\n\t},\n);\n\nBasePresentationModel.screenshotsToMap = function (screenshots) {\n\tif (!screenshots?.models) {\n\t\treturn screenshots;\n\t}\n\n\treturn screenshots.reduce((result, model) => {\n\t\tif (result[model.subject]) {\n\t\t\tthrow new Error(`\n\t\t\t\tFound multiple screenshots that could match this subject. If there is a scenario\n\t\t\t\tand a global, be sure to remove the screenshot that you don't need.\n\t\t\t`);\n\t\t}\n\t\tresult[model.subject] = model.image_256;\n\t\treturn result;\n\t}, {});\n};\n\n/**\n * Logic to pick a thumbnail based on either the model itself or from\n * and overriding screenshot if one exists.\n */\nBasePresentationModel.getThumbnail = function (model, screenshots) {\n\tif (screenshots?.models) {\n\t\tthrow new Error(\"Expected map file\");\n\t}\n\n\tif (!model) {\n\t\treturn null;\n\t}\n\n\treturn screenshots[model.url()] || model.image_256;\n};\n\n/**\n * Takes a list of screenshots and filters it to only be a list used by a single scenario\n * (or company wide).\n *\n * The logic should be like this:\n *\n *\t* If the scenario is null, we just return all global screenshots (scenario = null)\n *\t* If we select a scenario, we take those global screenshots and replace any that have a\n *\t\tscenario specific version of that screenshot. If none is found, the\n *\t\tscenario will want to see the same global version. Obviously only one\n *\t\tscenario's screenshots should be available.\n */\nBasePresentationModel.filterScreenshotsByScenario = function (\n\t_screenshots,\n\t_scenario = null,\n) {\n\tconst screenshots = new DeckVersionScreenshotCollection(_screenshots);\n\tconst scenario = _scenario ? new ScenarioModel({ id: _scenario }) : null;\n\n\tconst globalScreenshots = screenshots\n\t\t.filter((screen) => screen.scenario === null)\n\t\t.map((screen) => screen.toJSON());\n\n\tconst result = globalScreenshots;\n\n\tif (scenario) {\n\t\tconst scenarioScreenshots = screenshots\n\t\t\t.filter(\n\t\t\t\t(screen) => screen.scenario && screen.scenario.url() === scenario.url(),\n\t\t\t)\n\t\t\t.map((screen) => ({\n\t\t\t\t...screen.toJSON(),\n\t\t\t\tscenario: screen.scenario.url(),\n\t\t\t}));\n\n\t\tfor (const scenarioScreen of scenarioScreenshots) {\n\t\t\tconst existingGlobalIndex = _.findIndex(result, {\n\t\t\t\tsubject: scenarioScreen.subject,\n\t\t\t});\n\n\t\t\tif (existingGlobalIndex === -1) {\n\t\t\t\t// If there isn't an existing global version, just add the scenario\n\t\t\t\t// screenshot to the list\n\t\t\t\tresult.push(scenarioScreen);\n\t\t\t} else {\n\t\t\t\t// Otherwise we should use the scenario version instead of the global version\n\t\t\t\tresult[existingGlobalIndex] = scenarioScreen;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Try to return it in the same order every time\n\tconst ordered = _.orderBy(result, [\"scenario\", \"subject\"], [\"desc\", \"asc\"]);\n\treturn new DeckVersionScreenshotCollection(ordered);\n};\n\n/**\n * Standard function for retrieving the visibility and sequence of a model\n * from a choicelist or section & slide selections. If a choicelist is\n * provided we prefer the choicelist, otherwise we use selections.\n * Adjuncts are included in choicelists but not in selections so we use the\n * model's state to determine sequence & vis when selections are used.\n */\nBasePresentationModel.getVisibilityAndSequence = function (\n\tmodel,\n\toptions = {},\n) {\n\tconst { choicelist = null, selections = null } = options;\n\tconst url = model.url();\n\n\tconst config = {\n\t\tvisible: model.visible || model.enabled || false,\n\t\tsequence: model.sequence,\n\t\tselectionID: null,\n\t};\n\n\tif (choicelist) {\n\t\t// All items should have a choicelist entry - if it's not in\n\t\t// the choicelist, it's not in the preso\n\t\tconst choice = options.choicelistMap\n\t\t\t? options.choicelistMap.get(url)\n\t\t\t: choicelist.find((item) => item.url === url);\n\n\t\tif (choice) {\n\t\t\tconfig.sequence = options.choicelistMap\n\t\t\t\t? choice._idx\n\t\t\t\t: choicelist.indexOf(choice);\n\t\t\tconfig.visible = choice.visible;\n\t\t} else {\n\t\t\tconfig.visible = false;\n\t\t}\n\t} else if (selections && !model.adjunct) {\n\t\t// Non-adjunct subslides and adjunct sections/slides/subslides\n\t\t// have no selections - they fall through here using their\n\t\t// model's values\n\t\tconst selection = options.selectionsMap\n\t\t\t? options.selectionsMap.get(url)\n\t\t\t: selections.find((selection) => selection.url === url);\n\n\t\tif (selection) {\n\t\t\tconfig.visible = selection.visible;\n\t\t\tconfig.sequence = selection.sequence;\n\t\t\tconfig.selectionID = selection.id;\n\t\t}\n\t}\n\n\t// If neither a choicelist nor selections are available, the\n\t// values on the model will be used.\n\n\treturn config;\n};\n\nconst getAppointmentTags = function (model, tags, options) {\n\tconst url = model.adjunct?.url() || model.url();\n\tconst tagItem = options?.appointmentTagsMap\n\t\t? options.appointmentTagsMap.get(url)\n\t\t: tags.find((tag) => tag.content_url === url);\n\n\tif (tagItem) {\n\t\treturn tagItem.tags || [];\n\t}\n\n\t// Subslide tags currently aren't included in the\n\t// appointmentTags data.\n\treturn model.tags || [];\n};\n\nconst getDeckTags = function (model, tags) {\n\t// All non-adjunct sections, slides and subslides have namespaced_key\n\tif (model.namespaced_key) {\n\t\treturn tags[model.namespaced_key] || model.tags || [];\n\t} else if (model.adjunct || model.isAutoAdjunct) {\n\t\t// Autoadjunct keys are unique and move around so we search for them\n\t\t// and ignore the rest of the namespaced key\n\t\tconst keys = Object.keys(tags).filter((key) => {\n\t\t\tif (key.includes(\"/\")) {\n\t\t\t\tconst splitKey = key.split(\"/\");\n\n\t\t\t\treturn splitKey[splitKey.length - 1] === model.key;\n\t\t\t}\n\t\t\treturn key === model.key;\n\t\t});\n\t\treturn keys.length ? tags[keys[0]] : [];\n\t} else if (model.deck) {\n\t\t// The deck's namespaced key is always \"\" - this is because the\n\t\t// namespaced key format is section-key/slide-key, but the\n\t\t// deck sits above sections.\n\t\treturn tags[\"\"] || model.tags || [];\n\t}\n\n\treturn model.tags || [];\n};\n\n// Retrieve the tags for the model.\n// If appointmentTags is passed through in the options, we call the\n// getAppointmentTags function above to retrieve the appointment tags\n// for the model.\n// if there are no appointmentTags but deckTags are passed\n// through then we call the getDeckTags function.\n// In the future we will always use one of these two methods and\n// references to model.tags should be removed.\nBasePresentationModel.getTags = function (model, options = {}) {\n\tif (options.appointmentTags) {\n\t\treturn getAppointmentTags(model, options.appointmentTags, options);\n\t}\n\n\tif (options.deckTags) {\n\t\treturn getDeckTags(model, options.deckTags);\n\t}\n\n\treturn model.tags || [];\n};\n\nBasePresentationModel.canBeEmpty = true;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.PresentationDeck = void 0;
|
|
9
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
11
|
require("./presentation-sections.js");
|
|
11
12
|
var collections = _interopRequireWildcard(require("../collections"));
|
|
@@ -19,6 +20,9 @@ var _index = require("../index.js");
|
|
|
19
20
|
var _log = _interopRequireDefault(require("../log.js"));
|
|
20
21
|
var _stateRegister = require("../state-register");
|
|
21
22
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
23
|
+
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t.return || t.return(); } finally { if (u) throw o; } } }; }
|
|
24
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
25
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
22
26
|
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; }
|
|
23
27
|
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; }
|
|
24
28
|
/**
|
|
@@ -124,22 +128,19 @@ var PresentationDeck = exports.PresentationDeck = _basePresentationModel.BasePre
|
|
|
124
128
|
* @returns {presentation.PresentationDeck}
|
|
125
129
|
*/
|
|
126
130
|
PresentationDeck.createFromDeckVersion = function (deckVersionModel) {
|
|
127
|
-
var _deckVersionModel$nam;
|
|
131
|
+
var _options$index, _options$autoAdjuncts, _options$adjunctSecti, _options$adjunctSlide, _options$adjunctSubSl, _options$sectionSelec, _options$slideSelecti, _options$rootAssetPat, _options$templates, _options$choicelist, _options$screenshots, _deckVersionModel$nam;
|
|
128
132
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
choicelist: null
|
|
141
|
-
});
|
|
142
|
-
options.screenshots = PresentationDeck.screenshotsToMap(options.screenshots);
|
|
133
|
+
(_options$index = options.index) !== null && _options$index !== void 0 ? _options$index : options.index = 0;
|
|
134
|
+
(_options$autoAdjuncts = options.autoAdjuncts) !== null && _options$autoAdjuncts !== void 0 ? _options$autoAdjuncts : options.autoAdjuncts = new collections.AutoAdjunctCollection();
|
|
135
|
+
(_options$adjunctSecti = options.adjunctSections) !== null && _options$adjunctSecti !== void 0 ? _options$adjunctSecti : options.adjunctSections = new collections.AdjunctSectionCollection();
|
|
136
|
+
(_options$adjunctSlide = options.adjunctSlides) !== null && _options$adjunctSlide !== void 0 ? _options$adjunctSlide : options.adjunctSlides = new collections.AdjunctSlideCollection();
|
|
137
|
+
(_options$adjunctSubSl = options.adjunctSubSlides) !== null && _options$adjunctSubSl !== void 0 ? _options$adjunctSubSl : options.adjunctSubSlides = new collections.AdjunctSubSlideCollection();
|
|
138
|
+
(_options$sectionSelec = options.sectionSelections) !== null && _options$sectionSelec !== void 0 ? _options$sectionSelec : options.sectionSelections = new collections.SectionSelectionCollection();
|
|
139
|
+
(_options$slideSelecti = options.slideSelections) !== null && _options$slideSelecti !== void 0 ? _options$slideSelecti : options.slideSelections = new collections.SlideSelectionCollection();
|
|
140
|
+
(_options$rootAssetPat = options.rootAssetPath) !== null && _options$rootAssetPat !== void 0 ? _options$rootAssetPat : options.rootAssetPath = null;
|
|
141
|
+
(_options$templates = options.templates) !== null && _options$templates !== void 0 ? _options$templates : options.templates = null;
|
|
142
|
+
(_options$choicelist = options.choicelist) !== null && _options$choicelist !== void 0 ? _options$choicelist : options.choicelist = null;
|
|
143
|
+
options.screenshots = PresentationDeck.screenshotsToMap((_options$screenshots = options.screenshots) !== null && _options$screenshots !== void 0 ? _options$screenshots : new collections.DeckVersionScreenshotCollection());
|
|
143
144
|
var assetRoot = (0, _index.getAssetRoot)(deckVersionModel.index_asset.url());
|
|
144
145
|
var html;
|
|
145
146
|
var css;
|
|
@@ -197,10 +198,57 @@ PresentationDeck.createFromDeckVersion = function (deckVersionModel) {
|
|
|
197
198
|
id: selection.id
|
|
198
199
|
};
|
|
199
200
|
}));
|
|
201
|
+
options.selectionsMap = new Map(options.selections.map(function (s) {
|
|
202
|
+
return [s.url, s];
|
|
203
|
+
}));
|
|
204
|
+
if (options.appointmentTags) {
|
|
205
|
+
options.appointmentTagsMap = new Map(options.appointmentTags.map(function (t) {
|
|
206
|
+
return [t.content_url, t];
|
|
207
|
+
}));
|
|
208
|
+
}
|
|
209
|
+
if (options.rootAssetPath) {
|
|
210
|
+
options.baseRoot = (0, _index.getAssetRoot)(deckVersionModel.index_asset.url());
|
|
211
|
+
}
|
|
212
|
+
options.adjunctSlidesBySection = new Map();
|
|
213
|
+
var _iterator = _createForOfIteratorHelper(options.adjunctSlides.models),
|
|
214
|
+
_step;
|
|
215
|
+
try {
|
|
216
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
217
|
+
var slide = _step.value;
|
|
218
|
+
if (slide.section) {
|
|
219
|
+
var key = slide.section.id;
|
|
220
|
+
if (!options.adjunctSlidesBySection.has(key)) {
|
|
221
|
+
options.adjunctSlidesBySection.set(key, []);
|
|
222
|
+
}
|
|
223
|
+
options.adjunctSlidesBySection.get(key).push(slide);
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
} catch (err) {
|
|
227
|
+
_iterator.e(err);
|
|
228
|
+
} finally {
|
|
229
|
+
_iterator.f();
|
|
230
|
+
}
|
|
231
|
+
options.adjunctSubSlidesBySlide = new Map();
|
|
232
|
+
var _iterator2 = _createForOfIteratorHelper(options.adjunctSubSlides.models),
|
|
233
|
+
_step2;
|
|
234
|
+
try {
|
|
235
|
+
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
236
|
+
var subslide = _step2.value;
|
|
237
|
+
var _key = subslide.slide.id;
|
|
238
|
+
if (!options.adjunctSubSlidesBySlide.has(_key)) {
|
|
239
|
+
options.adjunctSubSlidesBySlide.set(_key, []);
|
|
240
|
+
}
|
|
241
|
+
options.adjunctSubSlidesBySlide.get(_key).push(subslide);
|
|
242
|
+
}
|
|
200
243
|
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
244
|
+
// We want all adjuncts to have fake ids that can't possibly overlap with the ids of
|
|
245
|
+
// normal sections, slides and subslides, so we make a base ID that is larger than
|
|
246
|
+
// all existing IDs then use the getUniqueAdjunctID function to retrieve an incremented ID
|
|
247
|
+
} catch (err) {
|
|
248
|
+
_iterator2.e(err);
|
|
249
|
+
} finally {
|
|
250
|
+
_iterator2.f();
|
|
251
|
+
}
|
|
204
252
|
var maxID = (0, _utils.getMaxID)(deckVersionModel);
|
|
205
253
|
options.getUniqueAdjunctID = function () {
|
|
206
254
|
return ++maxID;
|
|
@@ -220,12 +268,11 @@ PresentationDeck.createFromDeckVersion = function (deckVersionModel) {
|
|
|
220
268
|
// the selections or choicelist data.
|
|
221
269
|
|
|
222
270
|
deckVersionModel.section_set.forEach(function (sectionModel) {
|
|
271
|
+
var _options$adjunctSlide2;
|
|
223
272
|
var section = _presentationSection.PresentationSection.createFromSection(sectionModel, options);
|
|
224
273
|
section.addSlides(sectionModel.slide_set, options);
|
|
225
274
|
deck.sections.add(section);
|
|
226
|
-
var adjunctSlides = options.
|
|
227
|
-
return slide.section && slide.section.id === section.id;
|
|
228
|
-
});
|
|
275
|
+
var adjunctSlides = (_options$adjunctSlide2 = options.adjunctSlidesBySection.get(section.id)) !== null && _options$adjunctSlide2 !== void 0 ? _options$adjunctSlide2 : [];
|
|
229
276
|
section.addSlides(adjunctSlides, options);
|
|
230
277
|
});
|
|
231
278
|
options.adjunctSections.forEach(function (adjunctSection) {
|
|
@@ -278,10 +325,16 @@ PresentationDeck.createFromDeckVersion = function (deckVersionModel) {
|
|
|
278
325
|
// slides with the sequence > 110 then I know that all slides with a sequence > 110
|
|
279
326
|
// are valid. I then remove those slides from the slides array and move down to the
|
|
280
327
|
// next section.
|
|
328
|
+
slides.sort(function (a, b) {
|
|
329
|
+
return b.sequence - a.sequence;
|
|
330
|
+
});
|
|
331
|
+
var slideIdx = 0;
|
|
281
332
|
deck.sections.models.reverse().forEach(function (section) {
|
|
282
|
-
var sectionSlides =
|
|
283
|
-
|
|
284
|
-
|
|
333
|
+
var sectionSlides = [];
|
|
334
|
+
while (slideIdx < slides.length && slides[slideIdx].sequence > section.sequence) {
|
|
335
|
+
sectionSlides.push(slides[slideIdx]);
|
|
336
|
+
slideIdx++;
|
|
337
|
+
}
|
|
285
338
|
section.slides.add(sectionSlides);
|
|
286
339
|
|
|
287
340
|
// Slides have a "section" on their model that represents the section
|
|
@@ -293,8 +346,8 @@ PresentationDeck.createFromDeckVersion = function (deckVersionModel) {
|
|
|
293
346
|
section.slides.forEach(function (slide) {
|
|
294
347
|
slide.section = section.id;
|
|
295
348
|
});
|
|
296
|
-
|
|
297
|
-
|
|
349
|
+
sectionSlides.forEach(function (slide) {
|
|
350
|
+
slide._values.section = section.id;
|
|
298
351
|
});
|
|
299
352
|
});
|
|
300
353
|
|
|
@@ -419,7 +472,9 @@ PresentationDeck.createFromManifestJSON = function (manifestJSON, project) {
|
|
|
419
472
|
cmsvalkey_set: cmsvals
|
|
420
473
|
});
|
|
421
474
|
});
|
|
422
|
-
var minID =
|
|
475
|
+
var minID = Math.max.apply(Math, (0, _toConsumableArray2.default)(deck.sections.map(function (s) {
|
|
476
|
+
return s.id;
|
|
477
|
+
})));
|
|
423
478
|
deck.sections.add(templates.map(function (template, index) {
|
|
424
479
|
var _project$templates2, _project$templates2$f;
|
|
425
480
|
var section = _presentationSection.PresentationSection.createFromTemplate(template, index, minID);
|