@livepreso/api 6.42.1 → 6.45.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.js +3 -0
- package/.rush/temp/256021b5963b4c0221d3dec247b697b9691a9b2c.log +10 -0
- package/.rush/temp/2a322f00f12cf9d1e64afe81275cc78d01c49050.log +10 -0
- package/.rush/temp/30061f1865447dcbb3f20a305061205f3dbe6091.log +10 -0
- package/.rush/temp/45522aea0dee8cb2be1a53248ba45bd235743b43.log +10 -0
- package/.rush/temp/58fcbb7f15a76326d40e0839ab179755da82a891.log +10 -0
- package/.rush/temp/5bc0bba70b733baa4dd976667ba0a1386e516186.log +10 -0
- package/.rush/temp/64f1bb696f8d7d7e72907b80df316b127f72e23e.log +10 -0
- package/.rush/temp/6f640f951414ea68adb65c17e4ed7527cde54faf.log +10 -0
- package/.rush/temp/7c7b958682d4ab5697530be47d0aac62efe1adf1.log +10 -0
- package/.rush/temp/82bfb987463fbcfebf04022e6ed00015c73879c8.log +10 -0
- package/.rush/temp/844034aa6e542115075e8f3dc5ffc640973e0064.log +10 -0
- package/.rush/temp/8b42957a7c15da1f29cb57bee125f13affa70dca.log +10 -0
- package/.rush/temp/a769db9d81a23000c0e9b1bf4f1a9a9e721d0d7c.log +10 -0
- package/.rush/temp/a87d3a8b4ece87ec66f27c86226a9f205617681f.log +10 -0
- package/.rush/temp/bb7a5bdcc4af4ad1507f81f33774b31f5b4e4fb7.log +10 -0
- package/.rush/temp/build-cache-tar.log +7 -0
- package/.rush/temp/c20e29ccaaa9231b38a28bb24451b4ce7562cdc0.log +10 -0
- package/.rush/temp/e21303db8f59b4625fd184c9114377d781fd24f8.log +10 -0
- package/.rush/temp/e6d303862765b6a5f41dd483d0f9ae083a1fae10.log +10 -0
- package/.rush/temp/eaf69fbc059d2f1258d7569136180d4a1d3c7072.log +10 -0
- package/.rush/temp/f85d279e2674966daaec83e1c3986a96f86ef304.log +10 -0
- package/.rush/temp/fc0a332c5b34c6b90006850cf2d93a48fb4b9a6e.log +10 -0
- package/.rush/temp/package-deps_build.json +152 -134
- package/.rush/temp/package-deps_test.json +172 -0
- package/.rush/temp/shrinkwrap-deps.json +946 -847
- package/CHANGELOG.json +41 -0
- package/CHANGELOG.md +22 -1
- package/api.build.log +3 -26
- package/babel.config.js +1 -1
- package/bin/test.sh +0 -1
- package/cjs/api.js +1 -1
- package/cjs/api.js.map +1 -1
- package/cjs/auth.js +38 -11
- package/cjs/auth.js.map +1 -1
- package/cjs/auth.spec.js +12 -6
- package/cjs/auth.spec.js.map +1 -1
- package/cjs/caching.js +3 -3
- package/cjs/collections/activity.js +2 -2
- package/cjs/collections/appointment-adjunct-tags.js +28 -0
- package/cjs/collections/appointment-adjunct-tags.js.map +1 -0
- package/cjs/collections/appointment-deckversion-tags.js +28 -0
- package/cjs/collections/appointment-deckversion-tags.js.map +1 -0
- package/cjs/collections/appointment-section-tags.js +28 -0
- package/cjs/collections/appointment-section-tags.js.map +1 -0
- package/cjs/collections/appointment-slide-tags.js +28 -0
- package/cjs/collections/appointment-slide-tags.js.map +1 -0
- package/cjs/collections/appointment-tags.js +208 -0
- package/cjs/collections/appointment-tags.js.map +1 -0
- package/cjs/collections/appointments.js +2 -2
- package/cjs/collections/auto-adjuncts.js +2 -2
- package/cjs/collections/base.js +84 -3
- package/cjs/collections/base.js.map +1 -1
- package/cjs/collections/base.spec.js +178 -0
- package/cjs/collections/base.spec.js.map +1 -1
- package/cjs/collections/deck-version-screenshots.js +62 -0
- package/cjs/collections/deck-version-screenshots.js.map +1 -0
- package/cjs/collections/deck-versions.js +2 -2
- package/cjs/collections/tags.js +28 -0
- package/cjs/collections/tags.js.map +1 -0
- package/cjs/collections.js +91 -0
- package/cjs/collections.js.map +1 -1
- package/cjs/models/activity-item.js +5 -3
- package/cjs/models/activity-item.js.map +1 -1
- package/cjs/models/appointment-adjunct-tags.js +52 -0
- package/cjs/models/appointment-adjunct-tags.js.map +1 -0
- package/cjs/models/appointment-deckversion-tags.js +52 -0
- package/cjs/models/appointment-deckversion-tags.js.map +1 -0
- package/cjs/models/appointment-duplicate.js +2 -2
- package/cjs/models/appointment-section-tags.js +52 -0
- package/cjs/models/appointment-section-tags.js.map +1 -0
- package/cjs/models/appointment-slide-tags.js +52 -0
- package/cjs/models/appointment-slide-tags.js.map +1 -0
- package/cjs/models/appointment-tags.js +16 -15
- package/cjs/models/appointment-tags.js.map +1 -1
- package/cjs/models/appointment.js +19 -3
- package/cjs/models/appointment.js.map +1 -1
- package/cjs/models/auto-adjunct.js +3 -1
- package/cjs/models/auto-adjunct.js.map +1 -1
- package/cjs/models/base.js +19 -1
- package/cjs/models/base.js.map +1 -1
- package/cjs/models/base.spec.js +9 -0
- package/cjs/models/base.spec.js.map +1 -1
- package/cjs/models/deck-tags.js +61 -0
- package/cjs/models/deck-tags.js.map +1 -0
- package/cjs/models/deck-version-screenshot.js +59 -0
- package/cjs/models/deck-version-screenshot.js.map +1 -0
- package/cjs/models/deck-version.js +30 -5
- package/cjs/models/deck-version.js.map +1 -1
- package/cjs/models/deck.js +4 -1
- package/cjs/models/deck.js.map +1 -1
- package/cjs/models/feed-data.js +5 -0
- package/cjs/models/feed-data.js.map +1 -1
- package/cjs/models/image.js +34 -0
- package/cjs/models/image.js.map +1 -1
- package/cjs/models/manifest-json.js +56 -13
- package/cjs/models/manifest-json.js.map +1 -1
- package/cjs/models/preset.js +21 -1
- package/cjs/models/preset.js.map +1 -1
- package/cjs/models/section.js +3 -1
- package/cjs/models/section.js.map +1 -1
- package/cjs/models/slide.js +3 -1
- package/cjs/models/slide.js.map +1 -1
- package/cjs/models/tag.js +54 -0
- package/cjs/models/tag.js.map +1 -0
- package/cjs/models/template.js +3 -1
- package/cjs/models/template.js.map +1 -1
- package/cjs/models/token.js +56 -0
- package/cjs/models/token.js.map +1 -0
- package/cjs/models/user.js +4 -2
- package/cjs/models/user.js.map +1 -1
- package/cjs/models.js +104 -0
- package/cjs/models.js.map +1 -1
- package/cjs/presentation/appointment-presentation.js +11 -4
- package/cjs/presentation/appointment-presentation.js.map +1 -1
- package/cjs/presentation/base-presentation-model.js +167 -9
- package/cjs/presentation/base-presentation-model.js.map +1 -1
- package/cjs/presentation/base-presentation-model.spec.js +96 -6
- package/cjs/presentation/base-presentation-model.spec.js.map +1 -1
- package/cjs/presentation/presentation-deck.js +36 -8
- package/cjs/presentation/presentation-deck.js.map +1 -1
- package/cjs/presentation/presentation-deck.spec.js +53 -0
- package/cjs/presentation/presentation-deck.spec.js.map +1 -1
- package/cjs/presentation/presentation-section.js +64 -25
- package/cjs/presentation/presentation-section.js.map +1 -1
- package/cjs/presentation/presentation-section.spec.js +536 -0
- package/cjs/presentation/presentation-section.spec.js.map +1 -0
- package/cjs/presentation/presentation-slide.js +43 -18
- package/cjs/presentation/presentation-slide.js.map +1 -1
- package/cjs/presentation/presentation-slide.spec.js +386 -0
- package/cjs/presentation/presentation-slide.spec.js.map +1 -0
- package/cjs/presentation/presentation-subslide.js +5 -2
- package/cjs/presentation/presentation-subslide.js.map +1 -1
- package/cjs/presentation/presentation-subslide.spec.js +58 -12
- package/cjs/presentation/presentation-subslide.spec.js.map +1 -1
- package/cjs/presentation/presentation.js +120 -6
- package/cjs/presentation/presentation.js.map +1 -1
- package/cjs/state-register.js +11 -1
- package/cjs/state-register.js.map +1 -1
- package/cjs/sync.js +1 -1
- package/cjs/utils.js +5 -5
- package/config/rush-project.json +11 -0
- package/jest.config.js +1 -0
- package/package.json +66 -66
- package/src/api.js +1 -1
- package/src/auth.js +44 -8
- package/src/auth.spec.js +2 -0
- package/src/collections/appointment-adjunct-tags.js +18 -0
- package/src/collections/appointment-deckversion-tags.js +21 -0
- package/src/collections/appointment-section-tags.js +18 -0
- package/src/collections/appointment-slide-tags.js +18 -0
- package/src/collections/appointment-tags.js +136 -0
- package/src/collections/base.js +80 -3
- package/src/collections/base.spec.js +108 -1
- package/src/collections/deck-version-screenshots.js +48 -0
- package/src/collections/tags.js +18 -0
- package/src/collections.js +7 -0
- package/src/models/activity-item.js +2 -0
- package/src/models/appointment-adjunct-tags.js +41 -0
- package/src/models/appointment-deckversion-tags.js +41 -0
- package/src/models/appointment-section-tags.js +41 -0
- package/src/models/appointment-slide-tags.js +41 -0
- package/src/models/appointment-tags.js +16 -14
- package/src/models/appointment.js +18 -1
- package/src/models/auto-adjunct.js +2 -0
- package/src/models/base.js +19 -1
- package/src/models/base.spec.js +16 -9
- package/src/models/deck-tags.js +52 -0
- package/src/models/deck-version-screenshot.js +48 -0
- package/src/models/deck-version.js +32 -4
- package/src/models/deck.js +2 -0
- package/src/models/feed-data.js +2 -0
- package/src/models/image.js +32 -0
- package/src/models/manifest-json.js +55 -7
- package/src/models/preset.js +19 -0
- package/src/models/section.js +2 -0
- package/src/models/slide.js +2 -0
- package/src/models/tag.js +42 -0
- package/src/models/template.js +2 -0
- package/src/models/token.js +47 -0
- package/src/models/user.js +4 -0
- package/src/models.js +8 -0
- package/src/presentation/appointment-presentation.js +13 -2
- package/src/presentation/base-presentation-model.js +129 -8
- package/src/presentation/base-presentation-model.spec.js +121 -6
- package/src/presentation/presentation-deck.js +41 -2
- package/src/presentation/presentation-deck.spec.js +53 -0
- package/src/presentation/presentation-section.js +57 -14
- package/src/presentation/presentation-section.spec.js +496 -0
- package/src/presentation/presentation-slide.js +41 -8
- package/src/presentation/presentation-slide.spec.js +352 -0
- package/src/presentation/presentation-subslide.js +7 -2
- package/src/presentation/presentation-subslide.spec.js +32 -3
- package/src/presentation/presentation.js +35 -6
- package/src/state-register.js +7 -0
- package/api.build.error.log +0 -16
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.AppointmentDeckVersionTagsModel = void 0;
|
|
7
|
+
|
|
8
|
+
require("./appointment.js");
|
|
9
|
+
|
|
10
|
+
require("./user.js");
|
|
11
|
+
|
|
12
|
+
require("./deck-version.js");
|
|
13
|
+
|
|
14
|
+
var _base = require("./base.js");
|
|
15
|
+
|
|
16
|
+
var _stateRegister = require("../state-register.js");
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @constructor
|
|
20
|
+
* @alias models.AppointmentDeckVersionTagsModel
|
|
21
|
+
* @extends models.BaseModel
|
|
22
|
+
*/
|
|
23
|
+
var AppointmentDeckVersionTagsModel = _base.BaseModel.extend(
|
|
24
|
+
/** @lends models.AppointmentDeckVersionTagsModel# */
|
|
25
|
+
{
|
|
26
|
+
modelName: "appointment-deckversion-tags",
|
|
27
|
+
urlMatchKeys: {
|
|
28
|
+
"appointment.id": "number"
|
|
29
|
+
},
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* @property {string[]} tags
|
|
33
|
+
*/
|
|
34
|
+
props: {
|
|
35
|
+
tags: "array"
|
|
36
|
+
},
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* @property {models.AppointmentModel} appointment
|
|
40
|
+
* @property {models.DeckVersionModel} deckversion
|
|
41
|
+
* @property {models.UserModel} user
|
|
42
|
+
*/
|
|
43
|
+
children: {
|
|
44
|
+
appointment: "AppointmentModel",
|
|
45
|
+
deckversion: "DeckVersionModel",
|
|
46
|
+
user: "UserModel"
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
exports.AppointmentDeckVersionTagsModel = AppointmentDeckVersionTagsModel;
|
|
51
|
+
(0, _stateRegister.register)("AppointmentDeckVersionTagsModel", AppointmentDeckVersionTagsModel);
|
|
52
|
+
//# sourceMappingURL=appointment-deckversion-tags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/models/appointment-deckversion-tags.js"],"names":["AppointmentDeckVersionTagsModel","BaseModel","extend","modelName","urlMatchKeys","props","tags","children","appointment","deckversion","user"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMA,+BAA+B,GAAGC,gBAAUC,MAAV;AAC9C;AAAsD;AACrDC,EAAAA,SAAS,EAAE,8BAD0C;AAGrDC,EAAAA,YAAY,EAAE;AACb,sBAAkB;AADL,GAHuC;;AAOrD;AACF;AACA;AACEC,EAAAA,KAAK,EAAE;AACNC,IAAAA,IAAI,EAAE;AADA,GAV8C;;AAcrD;AACF;AACA;AACA;AACA;AACEC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,WAAW,EAAE,kBADJ;AAETC,IAAAA,WAAW,EAAE,kBAFJ;AAGTC,IAAAA,IAAI,EAAE;AAHG;AAnB2C,CADR,CAAxC;;;AA4BP,6BAAS,iCAAT,EAA4CV,+BAA5C","sourcesContent":["import \"./appointment.js\";\nimport \"./user.js\";\nimport \"./deck-version.js\";\n\nimport { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.AppointmentDeckVersionTagsModel\n * @extends models.BaseModel\n */\nexport const AppointmentDeckVersionTagsModel = BaseModel.extend(\n\t/** @lends models.AppointmentDeckVersionTagsModel# */ {\n\t\tmodelName: \"appointment-deckversion-tags\",\n\n\t\turlMatchKeys: {\n\t\t\t\"appointment.id\": \"number\",\n\t\t},\n\n\t\t/**\n\t\t * @property {string[]} tags\n\t\t */\n\t\tprops: {\n\t\t\ttags: \"array\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.AppointmentModel} appointment\n\t\t * @property {models.DeckVersionModel} deckversion\n\t\t * @property {models.UserModel} user\n\t\t */\n\t\tchildren: {\n\t\t\tappointment: \"AppointmentModel\",\n\t\t\tdeckversion: \"DeckVersionModel\",\n\t\t\tuser: \"UserModel\",\n\t\t},\n\t}\n);\n\nregister(\"AppointmentDeckVersionTagsModel\", AppointmentDeckVersionTagsModel);\n"],"file":"appointment-deckversion-tags.js"}
|
|
@@ -23,9 +23,9 @@ var _base = require("./base.js");
|
|
|
23
23
|
|
|
24
24
|
var _stateRegister = require("../state-register.js");
|
|
25
25
|
|
|
26
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object);
|
|
26
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
27
27
|
|
|
28
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]
|
|
28
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
29
29
|
|
|
30
30
|
/**
|
|
31
31
|
* @constructor
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.AppointmentSectionTagsModel = void 0;
|
|
7
|
+
|
|
8
|
+
require("./appointment.js");
|
|
9
|
+
|
|
10
|
+
require("./user.js");
|
|
11
|
+
|
|
12
|
+
require("./slide.js");
|
|
13
|
+
|
|
14
|
+
var _base = require("./base.js");
|
|
15
|
+
|
|
16
|
+
var _stateRegister = require("../state-register.js");
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @constructor
|
|
20
|
+
* @alias models.AppointmentSectionTagsModel
|
|
21
|
+
* @extends models.BaseModel
|
|
22
|
+
*/
|
|
23
|
+
var AppointmentSectionTagsModel = _base.BaseModel.extend(
|
|
24
|
+
/** @lends models.AppointmentSectionTagsModel# */
|
|
25
|
+
{
|
|
26
|
+
modelName: "appointment-section-tags",
|
|
27
|
+
urlMatchKeys: {
|
|
28
|
+
"appointment.id": "number"
|
|
29
|
+
},
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* @property {string[]} tags
|
|
33
|
+
*/
|
|
34
|
+
props: {
|
|
35
|
+
tags: "array"
|
|
36
|
+
},
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* @property {models.AppointmentModel} appointment
|
|
40
|
+
* @property {models.SectionModel} slide
|
|
41
|
+
* @property {models.UserModel} user
|
|
42
|
+
*/
|
|
43
|
+
children: {
|
|
44
|
+
appointment: "AppointmentModel",
|
|
45
|
+
section: "SectionModel",
|
|
46
|
+
user: "UserModel"
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
exports.AppointmentSectionTagsModel = AppointmentSectionTagsModel;
|
|
51
|
+
(0, _stateRegister.register)("AppointmentSectionTagsModel", AppointmentSectionTagsModel);
|
|
52
|
+
//# sourceMappingURL=appointment-section-tags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/models/appointment-section-tags.js"],"names":["AppointmentSectionTagsModel","BaseModel","extend","modelName","urlMatchKeys","props","tags","children","appointment","section","user"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMA,2BAA2B,GAAGC,gBAAUC,MAAV;AAC1C;AAAkD;AACjDC,EAAAA,SAAS,EAAE,0BADsC;AAGjDC,EAAAA,YAAY,EAAE;AACb,sBAAkB;AADL,GAHmC;;AAOjD;AACF;AACA;AACEC,EAAAA,KAAK,EAAE;AACNC,IAAAA,IAAI,EAAE;AADA,GAV0C;;AAcjD;AACF;AACA;AACA;AACA;AACEC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,WAAW,EAAE,kBADJ;AAETC,IAAAA,OAAO,EAAE,cAFA;AAGTC,IAAAA,IAAI,EAAE;AAHG;AAnBuC,CADR,CAApC;;;AA4BP,6BAAS,6BAAT,EAAwCV,2BAAxC","sourcesContent":["import \"./appointment.js\";\nimport \"./user.js\";\nimport \"./slide.js\";\n\nimport { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.AppointmentSectionTagsModel\n * @extends models.BaseModel\n */\nexport const AppointmentSectionTagsModel = BaseModel.extend(\n\t/** @lends models.AppointmentSectionTagsModel# */ {\n\t\tmodelName: \"appointment-section-tags\",\n\n\t\turlMatchKeys: {\n\t\t\t\"appointment.id\": \"number\",\n\t\t},\n\n\t\t/**\n\t\t * @property {string[]} tags\n\t\t */\n\t\tprops: {\n\t\t\ttags: \"array\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.AppointmentModel} appointment\n\t\t * @property {models.SectionModel} slide\n\t\t * @property {models.UserModel} user\n\t\t */\n\t\tchildren: {\n\t\t\tappointment: \"AppointmentModel\",\n\t\t\tsection: \"SectionModel\",\n\t\t\tuser: \"UserModel\",\n\t\t},\n\t}\n);\n\nregister(\"AppointmentSectionTagsModel\", AppointmentSectionTagsModel);\n"],"file":"appointment-section-tags.js"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.AppointmentSlideTagsModel = void 0;
|
|
7
|
+
|
|
8
|
+
require("./appointment.js");
|
|
9
|
+
|
|
10
|
+
require("./user.js");
|
|
11
|
+
|
|
12
|
+
require("./slide.js");
|
|
13
|
+
|
|
14
|
+
var _base = require("./base.js");
|
|
15
|
+
|
|
16
|
+
var _stateRegister = require("../state-register.js");
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @constructor
|
|
20
|
+
* @alias models.AppointmentSlideTagsModel
|
|
21
|
+
* @extends models.BaseModel
|
|
22
|
+
*/
|
|
23
|
+
var AppointmentSlideTagsModel = _base.BaseModel.extend(
|
|
24
|
+
/** @lends models.AppointmentSlideTagsModel# */
|
|
25
|
+
{
|
|
26
|
+
modelName: "appointment-slide-tags",
|
|
27
|
+
urlMatchKeys: {
|
|
28
|
+
"appointment.id": "number"
|
|
29
|
+
},
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* @property {string[]} tags
|
|
33
|
+
*/
|
|
34
|
+
props: {
|
|
35
|
+
tags: "array"
|
|
36
|
+
},
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* @property {models.AppointmentModel} appointment
|
|
40
|
+
* @property {models.SlideModel} slide
|
|
41
|
+
* @property {models.UserModel} user
|
|
42
|
+
*/
|
|
43
|
+
children: {
|
|
44
|
+
appointment: "AppointmentModel",
|
|
45
|
+
slide: "SlideModel",
|
|
46
|
+
user: "UserModel"
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
exports.AppointmentSlideTagsModel = AppointmentSlideTagsModel;
|
|
51
|
+
(0, _stateRegister.register)("AppointmentSlideTagsModel", AppointmentSlideTagsModel);
|
|
52
|
+
//# sourceMappingURL=appointment-slide-tags.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/models/appointment-slide-tags.js"],"names":["AppointmentSlideTagsModel","BaseModel","extend","modelName","urlMatchKeys","props","tags","children","appointment","slide","user"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMA,yBAAyB,GAAGC,gBAAUC,MAAV;AACxC;AAAgD;AAC/CC,EAAAA,SAAS,EAAE,wBADoC;AAG/CC,EAAAA,YAAY,EAAE;AACb,sBAAkB;AADL,GAHiC;;AAO/C;AACF;AACA;AACEC,EAAAA,KAAK,EAAE;AACNC,IAAAA,IAAI,EAAE;AADA,GAVwC;;AAc/C;AACF;AACA;AACA;AACA;AACEC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,WAAW,EAAE,kBADJ;AAETC,IAAAA,KAAK,EAAE,YAFE;AAGTC,IAAAA,IAAI,EAAE;AAHG;AAnBqC,CADR,CAAlC;;;AA4BP,6BAAS,2BAAT,EAAsCV,yBAAtC","sourcesContent":["import \"./appointment.js\";\nimport \"./user.js\";\nimport \"./slide.js\";\n\nimport { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.AppointmentSlideTagsModel\n * @extends models.BaseModel\n */\nexport const AppointmentSlideTagsModel = BaseModel.extend(\n\t/** @lends models.AppointmentSlideTagsModel# */ {\n\t\tmodelName: \"appointment-slide-tags\",\n\n\t\turlMatchKeys: {\n\t\t\t\"appointment.id\": \"number\",\n\t\t},\n\n\t\t/**\n\t\t * @property {string[]} tags\n\t\t */\n\t\tprops: {\n\t\t\ttags: \"array\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.AppointmentModel} appointment\n\t\t * @property {models.SlideModel} slide\n\t\t * @property {models.UserModel} user\n\t\t */\n\t\tchildren: {\n\t\t\tappointment: \"AppointmentModel\",\n\t\t\tslide: \"SlideModel\",\n\t\t\tuser: \"UserModel\",\n\t\t},\n\t}\n);\n\nregister(\"AppointmentSlideTagsModel\", AppointmentSlideTagsModel);\n"],"file":"appointment-slide-tags.js"}
|
|
@@ -17,27 +17,28 @@ var _stateRegister = require("../state-register.js");
|
|
|
17
17
|
var AppointmentTagsModel = _base.BaseModel.extend(
|
|
18
18
|
/** @lends models.AppointmentTagsModel# */
|
|
19
19
|
{
|
|
20
|
-
|
|
20
|
+
urlMatchKeys: {
|
|
21
|
+
"appointment.id": "number"
|
|
22
|
+
},
|
|
21
23
|
|
|
22
24
|
/**
|
|
23
|
-
* @property {
|
|
25
|
+
* @property {string[]} tags
|
|
26
|
+
* @property {string} content_type
|
|
27
|
+
* @property {string} content_url
|
|
24
28
|
*/
|
|
25
29
|
props: {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
if (this.parent && this.parent.modelName === "appointments") {
|
|
30
|
-
return this.getFullURLPath("".concat(this.parent.getPlainURL(), "tags/"));
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
return _base.BaseModel.prototype.url.call(this);
|
|
30
|
+
tags: "array",
|
|
31
|
+
content_type: "string",
|
|
32
|
+
content_url: "string"
|
|
34
33
|
},
|
|
35
|
-
fetch: function fetch() {
|
|
36
|
-
var _this = this;
|
|
37
34
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
35
|
+
/**
|
|
36
|
+
* @property {models.AppointmentModel} appointment
|
|
37
|
+
* @property {models.UserModel} user
|
|
38
|
+
*/
|
|
39
|
+
children: {
|
|
40
|
+
appointment: "AppointmentModel",
|
|
41
|
+
user: "UserModel"
|
|
41
42
|
}
|
|
42
43
|
});
|
|
43
44
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/models/appointment-tags.js"],"names":["AppointmentTagsModel","BaseModel","extend","
|
|
1
|
+
{"version":3,"sources":["../../src/models/appointment-tags.js"],"names":["AppointmentTagsModel","BaseModel","extend","urlMatchKeys","props","tags","content_type","content_url","children","appointment","user","canBeEmpty"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMA,oBAAoB,GAAGC,gBAAUC,MAAV;AACnC;AAA2C;AAC1CC,EAAAA,YAAY,EAAE;AACb,sBAAkB;AADL,GAD4B;;AAK1C;AACF;AACA;AACA;AACA;AACEC,EAAAA,KAAK,EAAE;AACNC,IAAAA,IAAI,EAAE,OADA;AAENC,IAAAA,YAAY,EAAE,QAFR;AAGNC,IAAAA,WAAW,EAAE;AAHP,GAVmC;;AAgB1C;AACF;AACA;AACA;AACEC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,WAAW,EAAE,kBADJ;AAETC,IAAAA,IAAI,EAAE;AAFG;AApBgC,CADR,CAA7B;;;AA4BPV,oBAAoB,CAACW,UAArB,GAAkC,IAAlC;AAEA,6BAAS,sBAAT,EAAiCX,oBAAjC","sourcesContent":["import { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.AppointmentTagsModel\n * @extends models.BaseModel\n */\nexport const AppointmentTagsModel = BaseModel.extend(\n\t/** @lends models.AppointmentTagsModel# */ {\n\t\turlMatchKeys: {\n\t\t\t\"appointment.id\": \"number\",\n\t\t},\n\n\t\t/**\n\t\t * @property {string[]} tags\n\t\t * @property {string} content_type\n\t\t * @property {string} content_url\n\t\t */\n\t\tprops: {\n\t\t\ttags: \"array\",\n\t\t\tcontent_type: \"string\",\n\t\t\tcontent_url: \"string\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.AppointmentModel} appointment\n\t\t * @property {models.UserModel} user\n\t\t */\n\t\tchildren: {\n\t\t\tappointment: \"AppointmentModel\",\n\t\t\tuser: \"UserModel\",\n\t\t},\n\t}\n);\n\nAppointmentTagsModel.canBeEmpty = true;\n\nregister(\"AppointmentTagsModel\", AppointmentTagsModel);\n"],"file":"appointment-tags.js"}
|
|
@@ -41,6 +41,8 @@ require("../collections/dispatches.js");
|
|
|
41
41
|
|
|
42
42
|
require("../collections/users.js");
|
|
43
43
|
|
|
44
|
+
require("../collections/appointment-tags");
|
|
45
|
+
|
|
44
46
|
var _adjunctSections = require("../collections/adjunct-sections.js");
|
|
45
47
|
|
|
46
48
|
var _adjunctSlides = require("../collections/adjunct-slides.js");
|
|
@@ -84,6 +86,7 @@ var AppointmentModel = _base.BaseModel.extend(
|
|
|
84
86
|
* @property {string} display_title
|
|
85
87
|
* @property {string} viewtype
|
|
86
88
|
* @property {boolean} support_mode
|
|
89
|
+
* @property {boolean} is_muted
|
|
87
90
|
* @property {date} no_edit_after
|
|
88
91
|
* @property {date} no_share_after
|
|
89
92
|
* @property {date} no_delete_after
|
|
@@ -107,6 +110,7 @@ var AppointmentModel = _base.BaseModel.extend(
|
|
|
107
110
|
display_title: "stringSanitized",
|
|
108
111
|
viewtype: "string",
|
|
109
112
|
support_mode: "boolean",
|
|
113
|
+
is_muted: "boolean",
|
|
110
114
|
no_edit_after: "date",
|
|
111
115
|
no_share_after: "date",
|
|
112
116
|
no_delete_after: "date",
|
|
@@ -128,7 +132,12 @@ var AppointmentModel = _base.BaseModel.extend(
|
|
|
128
132
|
appointmentssection_set: "SectionSelectionCollection",
|
|
129
133
|
appointmentsslide_set: "SlideSelectionCollection",
|
|
130
134
|
dispatch_set: "DispatchCollection",
|
|
131
|
-
current_editor_set: "UserCollection"
|
|
135
|
+
current_editor_set: "UserCollection",
|
|
136
|
+
tags: "AppointmentTagsCollection",
|
|
137
|
+
appointmentdeckversiontags_set: "AppointmentDeckVersionTagsCollection",
|
|
138
|
+
appointmentsectiontags_set: "AppointmentSectionTagsCollection",
|
|
139
|
+
appointmentslidetags_set: "AppointmentSlideTagsCollection",
|
|
140
|
+
appointmentadjuncttags_set: "AppointmentAdjunctTagsCollection"
|
|
132
141
|
},
|
|
133
142
|
|
|
134
143
|
/**
|
|
@@ -144,7 +153,6 @@ var AppointmentModel = _base.BaseModel.extend(
|
|
|
144
153
|
user: "UserModel",
|
|
145
154
|
latest_tele: "HostedPresoModel",
|
|
146
155
|
stats: "AppointmentStatsModel",
|
|
147
|
-
tags: "AppointmentTagsModel",
|
|
148
156
|
team: "TeamModel"
|
|
149
157
|
},
|
|
150
158
|
|
|
@@ -246,6 +254,13 @@ var AppointmentModel = _base.BaseModel.extend(
|
|
|
246
254
|
}
|
|
247
255
|
}
|
|
248
256
|
},
|
|
257
|
+
getHooksPath: function getHooksPath() {
|
|
258
|
+
if (!this.deckversion_set.length) {
|
|
259
|
+
throw new Error("Requires a deckversion to get hooks.");
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
return this.deckversion_set.first().getHooksPath();
|
|
263
|
+
},
|
|
249
264
|
fetchAll: function fetchAll() {
|
|
250
265
|
var _this = this;
|
|
251
266
|
|
|
@@ -303,7 +318,7 @@ var AppointmentModel = _base.BaseModel.extend(
|
|
|
303
318
|
return _bluebird.default.all([].concat((0, _toConsumableArray2.default)(adjunctSlides), (0, _toConsumableArray2.default)(adjunctSections)));
|
|
304
319
|
}).then(function () {
|
|
305
320
|
return _bluebird.default.all(_this.deckversion_set.map(function (model) {
|
|
306
|
-
return _bluebird.default.all([model.template_set.fetchSet(options), model.manifest_json.fetch(options), model.deck.fetch(options)]);
|
|
321
|
+
return _bluebird.default.all([model.screenshots.fetch(options), model.template_set.fetchSet(options), model.manifest_json.fetch(options), model.deck.fetch(options)]);
|
|
307
322
|
}));
|
|
308
323
|
}).return(this);
|
|
309
324
|
},
|
|
@@ -322,6 +337,7 @@ var AppointmentModel = _base.BaseModel.extend(
|
|
|
322
337
|
viewtype: appointment.viewtype,
|
|
323
338
|
preset: this._retrieveURL(appointment.preset),
|
|
324
339
|
locks: appointment.locks,
|
|
340
|
+
is_muted: appointment.is_muted,
|
|
325
341
|
no_edit_after: appointment.no_edit_after,
|
|
326
342
|
no_share_after: appointment.no_share_after,
|
|
327
343
|
no_delete_after: appointment.no_delete_after,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/models/appointment.js"],"names":["AppointmentModel","BaseModel","extend","modelName","props","name","attendees","begin","content_modified_date","created_by_support","created_date","creation_status","creation_status_history","editors_can_change_editors","end","locks","modified_date","notes","sort_date","display_contacts","display_title","viewtype","support_mode","no_edit_after","no_share_after","no_delete_after","no_snapshot_create_after","collections","contact_set","deckversion_set","opportunity_set","appointmenteditor_set","appointmentssection_set","appointmentsslide_set","dispatch_set","current_editor_set","children","preset","latest_snapshot","latest_feed_data","user","latest_tele","stats","tags","team","derived","adjunctSlides","deps","fn","AdjunctSlideCollection","queryData","appointment","id","adjunctSections","AdjunctSectionCollection","adjunctSubSlides","AdjunctSubSlideCollection","deckNotes","appointmentUrl","url","DeckNoteCollection","cannotShare","noShareAfter","diff","cannotEdit","noEditAfter","cannotDelete","noDeleteAfter","cannotCreateSnapshot","noCreateAfter","readOnly","shareOnly","fetchAll","fetchSelf","options","Promise","resolve","then","_url","fetch","fetches","fetchModels","fetchSet","catch","e","status","log","error","toJSON","push","all","filter","adj","template","map","model","template_set","manifest_json","deck","return","toServer","data","_retrieveURL"],"mappings":"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","sourcesContent":["import \"./user.js\";\nimport \"./snapshot.js\";\nimport \"./feed-data.js\";\nimport \"./preset.js\";\nimport \"./team.js\";\nimport \"./hosted-preso.js\";\nimport \"./appointment-stats.js\";\nimport \"./appointment-tags.js\";\nimport \"../collections/contacts.js\";\nimport \"../collections/appointment-editors.js\";\nimport \"../collections/deck-versions.js\";\nimport \"../collections/opportunities.js\";\nimport \"../collections/section-selections.js\";\nimport \"../collections/slide-selections.js\";\nimport \"../collections/dispatches.js\";\nimport \"../collections/users.js\";\n\nimport { AdjunctSectionCollection } from \"../collections/adjunct-sections.js\";\nimport { AdjunctSlideCollection } from \"../collections/adjunct-slides.js\";\nimport { AdjunctSubSlideCollection } from \"../collections/adjunct-sub-slides.js\";\nimport { BaseModel } from \"./base.js\";\nimport { DeckNoteCollection } from \"../collections/deck-notes.js\";\nimport Promise from \"bluebird\";\nimport log from \"../log.js\";\nimport moment from \"moment\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.AppointmentModel\n * @extends models.BaseModel\n */\nexport const AppointmentModel = BaseModel.extend(\n\t/** @lends models.AppointmentModel# */ {\n\t\tmodelName: \"appointments\",\n\n\t\t/**\n\t\t * @property {string} name\n\t\t * @property {string} attendees\n\t\t * @property {date} begin\n\t\t * @property {boolean} created_by_support\n\t\t * @property {date} created_date\n\t\t * @property {string} creation_state\n\t\t * @property {date} end\n\t\t * @property {date} modified_date\n\t\t * @property {string} notes\n\t\t * @property {date} sort_date\n\t\t * @property {string} display_contacts\n\t\t * @property {string} display_title\n\t\t * @property {string} viewtype\n\t\t * @property {boolean} support_mode\n\t\t * @property {date} no_edit_after\n\t\t * @property {date} no_share_after\n\t\t * @property {date} no_delete_after\n\t\t */\n\t\tprops: {\n\t\t\tname: \"stringSanitized\",\n\t\t\tattendees: \"string\",\n\t\t\tbegin: \"date\",\n\t\t\tcontent_modified_date: \"date\",\n\t\t\tcreated_by_support: \"boolean\",\n\t\t\tcreated_date: \"date\",\n\t\t\tcreation_status: \"string\",\n\t\t\tcreation_status_history: \"array\",\n\t\t\teditors_can_change_editors: \"boolean\",\n\t\t\tend: \"date\",\n\t\t\tlocks: \"array\",\n\t\t\tmodified_date: \"date\",\n\t\t\tnotes: \"stringSanitized\",\n\t\t\tsort_date: \"date\",\n\t\t\tdisplay_contacts: \"string\",\n\t\t\tdisplay_title: \"stringSanitized\",\n\t\t\tviewtype: \"string\",\n\t\t\tsupport_mode: \"boolean\",\n\t\t\tno_edit_after: \"date\",\n\t\t\tno_share_after: \"date\",\n\t\t\tno_delete_after: \"date\",\n\t\t\tno_snapshot_create_after: \"date\",\n\t\t},\n\n\t\t/**\n\t\t * @property {collections.ContactCollection} contact_set\n\t\t * @property {collections.DeckVersionCollection} deckversion_set\n\t\t * @property {collections.OpportunityCollection} opportunity_set\n\t\t * @property {collections.SectionSelectionCollection} appointmentssection_set\n\t\t * @property {collections.SlideSelectionCollection} appointmentsslide_set\n\t\t */\n\t\tcollections: {\n\t\t\tcontact_set: \"ContactCollection\",\n\t\t\tdeckversion_set: \"DeckVersionCollection\",\n\t\t\topportunity_set: \"OpportunityCollection\",\n\t\t\tappointmenteditor_set: \"AppointmentEditorCollection\",\n\t\t\tappointmentssection_set: \"SectionSelectionCollection\",\n\t\t\tappointmentsslide_set: \"SlideSelectionCollection\",\n\t\t\tdispatch_set: \"DispatchCollection\",\n\t\t\tcurrent_editor_set: \"UserCollection\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.PresetModel} preset\n\t\t * @property {models.SnapshotModel} latest_snapshot\n\t\t * @property {models.UserModel} user\n\t\t * @property {models.AppointmentStatsModel} appointmentStats\n\t\t */\n\t\tchildren: {\n\t\t\tpreset: \"PresetModel\",\n\t\t\tlatest_snapshot: \"SnapshotModel\",\n\t\t\tlatest_feed_data: \"FeedDataModel\",\n\t\t\tuser: \"UserModel\",\n\t\t\tlatest_tele: \"HostedPresoModel\",\n\t\t\tstats: \"AppointmentStatsModel\",\n\t\t\ttags: \"AppointmentTagsModel\",\n\t\t\tteam: \"TeamModel\",\n\t\t},\n\n\t\t/**\n\t\t * @property {collections.AdjunctSlideCollection} adjunctSlides\n\t\t * @property {collections.AdjunctSectionCollection} adjunctSections\n\t\t * @property {collections.AdjunctSubSlideCollection} adjunctSubSlides\n\t\t * @property {boolean} readOnly\n\t\t * @property {boolean} shareOnly\n\t\t */\n\t\tderived: {\n\t\t\tadjunctSlides: {\n\t\t\t\tdeps: [\"id\"],\n\t\t\t\tfn() {\n\t\t\t\t\tconst adjunctSlides = new AdjunctSlideCollection();\n\t\t\t\t\tadjunctSlides.queryData.appointment = this.id;\n\t\t\t\t\treturn adjunctSlides;\n\t\t\t\t},\n\t\t\t},\n\t\t\tadjunctSections: {\n\t\t\t\tdeps: [\"id\"],\n\t\t\t\tfn() {\n\t\t\t\t\tconst adjunctSections = new AdjunctSectionCollection();\n\t\t\t\t\tadjunctSections.queryData.appointment = this.id;\n\t\t\t\t\treturn adjunctSections;\n\t\t\t\t},\n\t\t\t},\n\t\t\tadjunctSubSlides: {\n\t\t\t\tdeps: [\"id\"],\n\t\t\t\tfn() {\n\t\t\t\t\tconst adjunctSubSlides = new AdjunctSubSlideCollection();\n\t\t\t\t\tadjunctSubSlides.queryData.appointment = this.id;\n\t\t\t\t\treturn adjunctSubSlides;\n\t\t\t\t},\n\t\t\t},\n\t\t\tdeckNotes: {\n\t\t\t\tdeps: [\"id\"],\n\t\t\t\tfn() {\n\t\t\t\t\tconst appointmentUrl = this.url();\n\t\t\t\t\treturn new DeckNoteCollection({ url: `${appointmentUrl}notes/` });\n\t\t\t\t},\n\t\t\t},\n\t\t\tcannotShare: {\n\t\t\t\tdeps: [\"no_share_after\"],\n\t\t\t\tfn() {\n\t\t\t\t\tif (!this.no_share_after) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tconst noShareAfter = moment(this.no_share_after);\n\t\t\t\t\treturn moment().diff(noShareAfter) > 0;\n\t\t\t\t},\n\t\t\t},\n\t\t\tcannotEdit: {\n\t\t\t\tdeps: [\"no_edit_after\"],\n\t\t\t\tfn() {\n\t\t\t\t\tif (!this.no_edit_after) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tconst noEditAfter = moment(this.no_edit_after);\n\t\t\t\t\treturn moment().diff(noEditAfter) > 0;\n\t\t\t\t},\n\t\t\t},\n\t\t\tcannotDelete: {\n\t\t\t\tdeps: [\"no_delete_after\"],\n\t\t\t\tfn() {\n\t\t\t\t\tif (!this.no_delete_after) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tconst noDeleteAfter = moment(this.no_delete_after);\n\t\t\t\t\treturn moment().diff(noDeleteAfter) > 0;\n\t\t\t\t},\n\t\t\t},\n\t\t\tcannotCreateSnapshot: {\n\t\t\t\tdeps: [\"no_snapshot_create_after\"],\n\t\t\t\tfn() {\n\t\t\t\t\tif (!this.no_snapshot_create_after) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tconst noCreateAfter = moment(this.no_snapshot_create_after);\n\t\t\t\t\treturn moment().diff(noCreateAfter) > 0;\n\t\t\t\t},\n\t\t\t},\n\t\t\treadOnly: {\n\t\t\t\tdeps: [\"cannotShare\"],\n\t\t\t\tfn() {\n\t\t\t\t\treturn this.cannotShare;\n\t\t\t\t},\n\t\t\t},\n\t\t\tshareOnly: {\n\t\t\t\tdeps: [\"cannotEdit\", \"cannotDelete\"],\n\t\t\t\tfn() {\n\t\t\t\t\treturn this.cannotEdit || this.cannotDelete;\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tfetchAll(fetchSelf = false, options = {}) {\n\t\t\treturn Promise.resolve()\n\t\t\t\t.then(() => {\n\t\t\t\t\tif (!this._url || fetchSelf) {\n\t\t\t\t\t\treturn this.fetch(options);\n\t\t\t\t\t}\n\t\t\t\t\treturn Promise.resolve();\n\t\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\tconst fetches = [\n\t\t\t\t\t\tthis.deckversion_set.fetchModels(options),\n\t\t\t\t\t\tthis.appointmentssection_set.fetch(options),\n\t\t\t\t\t\tthis.appointmentsslide_set.fetch(options),\n\t\t\t\t\t\tthis.appointmenteditor_set.fetch(options),\n\t\t\t\t\t\tthis.adjunctSlides.fetch(options),\n\t\t\t\t\t\tthis.adjunctSections.fetch(options),\n\t\t\t\t\t\tthis.adjunctSubSlides.fetch(options),\n\t\t\t\t\t\tthis.contact_set.fetchSet(options),\n\t\t\t\t\t\tthis.tags.fetch(options),\n\t\t\t\t\t\tthis.user.fetch(options).catch((e) => {\n\t\t\t\t\t\t\tif (e.status && e.status === 404) {\n\t\t\t\t\t\t\t\t// It's possible for a user to be deactivated, which means they'll\n\t\t\t\t\t\t\t\t// return with a 404. We want to be able to still load the preso,\n\t\t\t\t\t\t\t\t// but it will be readonly.\n\t\t\t\t\t\t\t\tthis.user = null;\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tthrow e;\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tthis.deckNotes.fetch(options),\n\t\t\t\t\t\tthis.opportunity_set.fetchSet(options).catch(() => {\n\t\t\t\t\t\t\tlog.error(\n\t\t\t\t\t\t\t\t`Failed to fetch Opportunity set`,\n\t\t\t\t\t\t\t\tthis.opportunity_set.toJSON()\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\treturn Promise.resolve();\n\t\t\t\t\t\t}),\n\t\t\t\t\t];\n\n\t\t\t\t\tif (this.latest_snapshot) {\n\t\t\t\t\t\tfetches.push(this.latest_snapshot.fetch(options));\n\t\t\t\t\t}\n\n\t\t\t\t\tif (this.latest_feed_data) {\n\t\t\t\t\t\tfetches.push(this.latest_feed_data.fetch(options));\n\t\t\t\t\t}\n\n\t\t\t\t\tif (this.latest_tele) {\n\t\t\t\t\t\tfetches.push(this.latest_tele.fetch(options));\n\t\t\t\t\t}\n\n\t\t\t\t\treturn Promise.all(fetches);\n\t\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\tconst adjunctSlides = this.adjunctSlides\n\t\t\t\t\t\t.filter((adj) => adj.template)\n\t\t\t\t\t\t.map((adj) => adj.template.fetch(options));\n\t\t\t\t\tconst adjunctSections = this.adjunctSections\n\t\t\t\t\t\t.filter((adj) => adj.template)\n\t\t\t\t\t\t.map((adj) => adj.template.fetch(options));\n\n\t\t\t\t\treturn Promise.all([...adjunctSlides, ...adjunctSections]);\n\t\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\treturn Promise.all(\n\t\t\t\t\t\tthis.deckversion_set.map((model) => {\n\t\t\t\t\t\t\treturn Promise.all([\n\t\t\t\t\t\t\t\tmodel.template_set.fetchSet(options),\n\t\t\t\t\t\t\t\tmodel.manifest_json.fetch(options),\n\t\t\t\t\t\t\t\tmodel.deck.fetch(options),\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t})\n\t\t\t\t\t);\n\t\t\t\t})\n\t\t\t\t.return(this);\n\t\t},\n\n\t\ttoServer() {\n\t\t\tconst appointment = this.toJSON();\n\n\t\t\tconst data = {\n\t\t\t\tname: appointment.name,\n\t\t\t\tbegin: appointment.begin,\n\t\t\t\tend: appointment.end,\n\t\t\t\tcreation_status: appointment.creation_status,\n\t\t\t\tcontact_set: this._retrieveURL(appointment.contact_set),\n\t\t\t\tdeckversion_set: this._retrieveURL(appointment.deckversion_set),\n\t\t\t\tnotes: appointment.notes,\n\t\t\t\topportunity_set: this._retrieveURL(appointment.opportunity_set),\n\t\t\t\tuser: this._retrieveURL(appointment.user),\n\t\t\t\tviewtype: appointment.viewtype,\n\t\t\t\tpreset: this._retrieveURL(appointment.preset),\n\t\t\t\tlocks: appointment.locks,\n\t\t\t\tno_edit_after: appointment.no_edit_after,\n\t\t\t\tno_share_after: appointment.no_share_after,\n\t\t\t\tno_delete_after: appointment.no_delete_after,\n\t\t\t\tteam: this._retrieveURL(appointment.team),\n\t\t\t\teditors_can_change_editors: appointment.editors_can_change_editors,\n\t\t\t};\n\n\t\t\tif (this.id) {\n\t\t\t\tdata.id = this.id;\n\t\t\t}\n\n\t\t\treturn data;\n\t\t},\n\t}\n);\n\nregister(\"AppointmentModel\", AppointmentModel);\n"],"file":"appointment.js"}
|
|
1
|
+
{"version":3,"sources":["../../src/models/appointment.js"],"names":["AppointmentModel","BaseModel","extend","modelName","props","name","attendees","begin","content_modified_date","created_by_support","created_date","creation_status","creation_status_history","editors_can_change_editors","end","locks","modified_date","notes","sort_date","display_contacts","display_title","viewtype","support_mode","is_muted","no_edit_after","no_share_after","no_delete_after","no_snapshot_create_after","collections","contact_set","deckversion_set","opportunity_set","appointmenteditor_set","appointmentssection_set","appointmentsslide_set","dispatch_set","current_editor_set","tags","appointmentdeckversiontags_set","appointmentsectiontags_set","appointmentslidetags_set","appointmentadjuncttags_set","children","preset","latest_snapshot","latest_feed_data","user","latest_tele","stats","team","derived","adjunctSlides","deps","fn","AdjunctSlideCollection","queryData","appointment","id","adjunctSections","AdjunctSectionCollection","adjunctSubSlides","AdjunctSubSlideCollection","deckNotes","appointmentUrl","url","DeckNoteCollection","cannotShare","noShareAfter","diff","cannotEdit","noEditAfter","cannotDelete","noDeleteAfter","cannotCreateSnapshot","noCreateAfter","readOnly","shareOnly","getHooksPath","length","Error","first","fetchAll","fetchSelf","options","Promise","resolve","then","_url","fetch","fetches","fetchModels","fetchSet","catch","e","status","log","error","toJSON","push","all","filter","adj","template","map","model","screenshots","template_set","manifest_json","deck","return","toServer","data","_retrieveURL"],"mappings":"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","sourcesContent":["import \"./user.js\";\nimport \"./snapshot.js\";\nimport \"./feed-data.js\";\nimport \"./preset.js\";\nimport \"./team.js\";\nimport \"./hosted-preso.js\";\nimport \"./appointment-stats.js\";\nimport \"./appointment-tags.js\";\nimport \"../collections/contacts.js\";\nimport \"../collections/appointment-editors.js\";\nimport \"../collections/deck-versions.js\";\nimport \"../collections/opportunities.js\";\nimport \"../collections/section-selections.js\";\nimport \"../collections/slide-selections.js\";\nimport \"../collections/dispatches.js\";\nimport \"../collections/users.js\";\nimport \"../collections/appointment-tags\";\n\nimport { AdjunctSectionCollection } from \"../collections/adjunct-sections.js\";\nimport { AdjunctSlideCollection } from \"../collections/adjunct-slides.js\";\nimport { AdjunctSubSlideCollection } from \"../collections/adjunct-sub-slides.js\";\nimport { BaseModel } from \"./base.js\";\nimport { DeckNoteCollection } from \"../collections/deck-notes.js\";\nimport Promise from \"bluebird\";\nimport log from \"../log.js\";\nimport moment from \"moment\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.AppointmentModel\n * @extends models.BaseModel\n */\nexport const AppointmentModel = BaseModel.extend(\n\t/** @lends models.AppointmentModel# */ {\n\t\tmodelName: \"appointments\",\n\n\t\t/**\n\t\t * @property {string} name\n\t\t * @property {string} attendees\n\t\t * @property {date} begin\n\t\t * @property {boolean} created_by_support\n\t\t * @property {date} created_date\n\t\t * @property {string} creation_state\n\t\t * @property {date} end\n\t\t * @property {date} modified_date\n\t\t * @property {string} notes\n\t\t * @property {date} sort_date\n\t\t * @property {string} display_contacts\n\t\t * @property {string} display_title\n\t\t * @property {string} viewtype\n\t\t * @property {boolean} support_mode\n\t\t * @property {boolean} is_muted\n\t\t * @property {date} no_edit_after\n\t\t * @property {date} no_share_after\n\t\t * @property {date} no_delete_after\n\t\t */\n\t\tprops: {\n\t\t\tname: \"stringSanitized\",\n\t\t\tattendees: \"string\",\n\t\t\tbegin: \"date\",\n\t\t\tcontent_modified_date: \"date\",\n\t\t\tcreated_by_support: \"boolean\",\n\t\t\tcreated_date: \"date\",\n\t\t\tcreation_status: \"string\",\n\t\t\tcreation_status_history: \"array\",\n\t\t\teditors_can_change_editors: \"boolean\",\n\t\t\tend: \"date\",\n\t\t\tlocks: \"array\",\n\t\t\tmodified_date: \"date\",\n\t\t\tnotes: \"stringSanitized\",\n\t\t\tsort_date: \"date\",\n\t\t\tdisplay_contacts: \"string\",\n\t\t\tdisplay_title: \"stringSanitized\",\n\t\t\tviewtype: \"string\",\n\t\t\tsupport_mode: \"boolean\",\n\t\t\tis_muted: \"boolean\",\n\t\t\tno_edit_after: \"date\",\n\t\t\tno_share_after: \"date\",\n\t\t\tno_delete_after: \"date\",\n\t\t\tno_snapshot_create_after: \"date\",\n\t\t},\n\n\t\t/**\n\t\t * @property {collections.ContactCollection} contact_set\n\t\t * @property {collections.DeckVersionCollection} deckversion_set\n\t\t * @property {collections.OpportunityCollection} opportunity_set\n\t\t * @property {collections.SectionSelectionCollection} appointmentssection_set\n\t\t * @property {collections.SlideSelectionCollection} appointmentsslide_set\n\t\t */\n\t\tcollections: {\n\t\t\tcontact_set: \"ContactCollection\",\n\t\t\tdeckversion_set: \"DeckVersionCollection\",\n\t\t\topportunity_set: \"OpportunityCollection\",\n\t\t\tappointmenteditor_set: \"AppointmentEditorCollection\",\n\t\t\tappointmentssection_set: \"SectionSelectionCollection\",\n\t\t\tappointmentsslide_set: \"SlideSelectionCollection\",\n\t\t\tdispatch_set: \"DispatchCollection\",\n\t\t\tcurrent_editor_set: \"UserCollection\",\n\t\t\ttags: \"AppointmentTagsCollection\",\n\t\t\tappointmentdeckversiontags_set: \"AppointmentDeckVersionTagsCollection\",\n\t\t\tappointmentsectiontags_set: \"AppointmentSectionTagsCollection\",\n\t\t\tappointmentslidetags_set: \"AppointmentSlideTagsCollection\",\n\t\t\tappointmentadjuncttags_set: \"AppointmentAdjunctTagsCollection\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.PresetModel} preset\n\t\t * @property {models.SnapshotModel} latest_snapshot\n\t\t * @property {models.UserModel} user\n\t\t * @property {models.AppointmentStatsModel} appointmentStats\n\t\t */\n\t\tchildren: {\n\t\t\tpreset: \"PresetModel\",\n\t\t\tlatest_snapshot: \"SnapshotModel\",\n\t\t\tlatest_feed_data: \"FeedDataModel\",\n\t\t\tuser: \"UserModel\",\n\t\t\tlatest_tele: \"HostedPresoModel\",\n\t\t\tstats: \"AppointmentStatsModel\",\n\t\t\tteam: \"TeamModel\",\n\t\t},\n\n\t\t/**\n\t\t * @property {collections.AdjunctSlideCollection} adjunctSlides\n\t\t * @property {collections.AdjunctSectionCollection} adjunctSections\n\t\t * @property {collections.AdjunctSubSlideCollection} adjunctSubSlides\n\t\t * @property {boolean} readOnly\n\t\t * @property {boolean} shareOnly\n\t\t */\n\t\tderived: {\n\t\t\tadjunctSlides: {\n\t\t\t\tdeps: [\"id\"],\n\t\t\t\tfn() {\n\t\t\t\t\tconst adjunctSlides = new AdjunctSlideCollection();\n\t\t\t\t\tadjunctSlides.queryData.appointment = this.id;\n\t\t\t\t\treturn adjunctSlides;\n\t\t\t\t},\n\t\t\t},\n\t\t\tadjunctSections: {\n\t\t\t\tdeps: [\"id\"],\n\t\t\t\tfn() {\n\t\t\t\t\tconst adjunctSections = new AdjunctSectionCollection();\n\t\t\t\t\tadjunctSections.queryData.appointment = this.id;\n\t\t\t\t\treturn adjunctSections;\n\t\t\t\t},\n\t\t\t},\n\t\t\tadjunctSubSlides: {\n\t\t\t\tdeps: [\"id\"],\n\t\t\t\tfn() {\n\t\t\t\t\tconst adjunctSubSlides = new AdjunctSubSlideCollection();\n\t\t\t\t\tadjunctSubSlides.queryData.appointment = this.id;\n\t\t\t\t\treturn adjunctSubSlides;\n\t\t\t\t},\n\t\t\t},\n\t\t\tdeckNotes: {\n\t\t\t\tdeps: [\"id\"],\n\t\t\t\tfn() {\n\t\t\t\t\tconst appointmentUrl = this.url();\n\t\t\t\t\treturn new DeckNoteCollection({ url: `${appointmentUrl}notes/` });\n\t\t\t\t},\n\t\t\t},\n\t\t\tcannotShare: {\n\t\t\t\tdeps: [\"no_share_after\"],\n\t\t\t\tfn() {\n\t\t\t\t\tif (!this.no_share_after) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tconst noShareAfter = moment(this.no_share_after);\n\t\t\t\t\treturn moment().diff(noShareAfter) > 0;\n\t\t\t\t},\n\t\t\t},\n\t\t\tcannotEdit: {\n\t\t\t\tdeps: [\"no_edit_after\"],\n\t\t\t\tfn() {\n\t\t\t\t\tif (!this.no_edit_after) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tconst noEditAfter = moment(this.no_edit_after);\n\t\t\t\t\treturn moment().diff(noEditAfter) > 0;\n\t\t\t\t},\n\t\t\t},\n\t\t\tcannotDelete: {\n\t\t\t\tdeps: [\"no_delete_after\"],\n\t\t\t\tfn() {\n\t\t\t\t\tif (!this.no_delete_after) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tconst noDeleteAfter = moment(this.no_delete_after);\n\t\t\t\t\treturn moment().diff(noDeleteAfter) > 0;\n\t\t\t\t},\n\t\t\t},\n\t\t\tcannotCreateSnapshot: {\n\t\t\t\tdeps: [\"no_snapshot_create_after\"],\n\t\t\t\tfn() {\n\t\t\t\t\tif (!this.no_snapshot_create_after) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tconst noCreateAfter = moment(this.no_snapshot_create_after);\n\t\t\t\t\treturn moment().diff(noCreateAfter) > 0;\n\t\t\t\t},\n\t\t\t},\n\t\t\treadOnly: {\n\t\t\t\tdeps: [\"cannotShare\"],\n\t\t\t\tfn() {\n\t\t\t\t\treturn this.cannotShare;\n\t\t\t\t},\n\t\t\t},\n\t\t\tshareOnly: {\n\t\t\t\tdeps: [\"cannotEdit\", \"cannotDelete\"],\n\t\t\t\tfn() {\n\t\t\t\t\treturn this.cannotEdit || this.cannotDelete;\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\tgetHooksPath() {\n\t\t\tif (!this.deckversion_set.length) {\n\t\t\t\tthrow new Error(\"Requires a deckversion to get hooks.\");\n\t\t\t}\n\t\t\treturn this.deckversion_set.first().getHooksPath();\n\t\t},\n\n\t\tfetchAll(fetchSelf = false, options = {}) {\n\t\t\treturn Promise.resolve()\n\t\t\t\t.then(() => {\n\t\t\t\t\tif (!this._url || fetchSelf) {\n\t\t\t\t\t\treturn this.fetch(options);\n\t\t\t\t\t}\n\t\t\t\t\treturn Promise.resolve();\n\t\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\tconst fetches = [\n\t\t\t\t\t\tthis.deckversion_set.fetchModels(options),\n\t\t\t\t\t\tthis.appointmentssection_set.fetch(options),\n\t\t\t\t\t\tthis.appointmentsslide_set.fetch(options),\n\t\t\t\t\t\tthis.appointmenteditor_set.fetch(options),\n\t\t\t\t\t\tthis.adjunctSlides.fetch(options),\n\t\t\t\t\t\tthis.adjunctSections.fetch(options),\n\t\t\t\t\t\tthis.adjunctSubSlides.fetch(options),\n\t\t\t\t\t\tthis.contact_set.fetchSet(options),\n\t\t\t\t\t\tthis.tags.fetch(options),\n\t\t\t\t\t\tthis.user.fetch(options).catch((e) => {\n\t\t\t\t\t\t\tif (e.status && e.status === 404) {\n\t\t\t\t\t\t\t\t// It's possible for a user to be deactivated, which means they'll\n\t\t\t\t\t\t\t\t// return with a 404. We want to be able to still load the preso,\n\t\t\t\t\t\t\t\t// but it will be readonly.\n\t\t\t\t\t\t\t\tthis.user = null;\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tthrow e;\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tthis.deckNotes.fetch(options),\n\t\t\t\t\t\tthis.opportunity_set.fetchSet(options).catch(() => {\n\t\t\t\t\t\t\tlog.error(\n\t\t\t\t\t\t\t\t`Failed to fetch Opportunity set`,\n\t\t\t\t\t\t\t\tthis.opportunity_set.toJSON()\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\treturn Promise.resolve();\n\t\t\t\t\t\t}),\n\t\t\t\t\t];\n\n\t\t\t\t\tif (this.latest_snapshot) {\n\t\t\t\t\t\tfetches.push(this.latest_snapshot.fetch(options));\n\t\t\t\t\t}\n\n\t\t\t\t\tif (this.latest_feed_data) {\n\t\t\t\t\t\tfetches.push(this.latest_feed_data.fetch(options));\n\t\t\t\t\t}\n\n\t\t\t\t\tif (this.latest_tele) {\n\t\t\t\t\t\tfetches.push(this.latest_tele.fetch(options));\n\t\t\t\t\t}\n\n\t\t\t\t\treturn Promise.all(fetches);\n\t\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\tconst adjunctSlides = this.adjunctSlides\n\t\t\t\t\t\t.filter((adj) => adj.template)\n\t\t\t\t\t\t.map((adj) => adj.template.fetch(options));\n\t\t\t\t\tconst adjunctSections = this.adjunctSections\n\t\t\t\t\t\t.filter((adj) => adj.template)\n\t\t\t\t\t\t.map((adj) => adj.template.fetch(options));\n\n\t\t\t\t\treturn Promise.all([...adjunctSlides, ...adjunctSections]);\n\t\t\t\t})\n\t\t\t\t.then(() => {\n\t\t\t\t\treturn Promise.all(\n\t\t\t\t\t\tthis.deckversion_set.map((model) => {\n\t\t\t\t\t\t\treturn Promise.all([\n\t\t\t\t\t\t\t\tmodel.screenshots.fetch(options),\n\t\t\t\t\t\t\t\tmodel.template_set.fetchSet(options),\n\t\t\t\t\t\t\t\tmodel.manifest_json.fetch(options),\n\t\t\t\t\t\t\t\tmodel.deck.fetch(options),\n\t\t\t\t\t\t\t]);\n\t\t\t\t\t\t})\n\t\t\t\t\t);\n\t\t\t\t})\n\t\t\t\t.return(this);\n\t\t},\n\n\t\ttoServer() {\n\t\t\tconst appointment = this.toJSON();\n\n\t\t\tconst data = {\n\t\t\t\tname: appointment.name,\n\t\t\t\tbegin: appointment.begin,\n\t\t\t\tend: appointment.end,\n\t\t\t\tcreation_status: appointment.creation_status,\n\t\t\t\tcontact_set: this._retrieveURL(appointment.contact_set),\n\t\t\t\tdeckversion_set: this._retrieveURL(appointment.deckversion_set),\n\t\t\t\tnotes: appointment.notes,\n\t\t\t\topportunity_set: this._retrieveURL(appointment.opportunity_set),\n\t\t\t\tuser: this._retrieveURL(appointment.user),\n\t\t\t\tviewtype: appointment.viewtype,\n\t\t\t\tpreset: this._retrieveURL(appointment.preset),\n\t\t\t\tlocks: appointment.locks,\n\t\t\t\tis_muted: appointment.is_muted,\n\t\t\t\tno_edit_after: appointment.no_edit_after,\n\t\t\t\tno_share_after: appointment.no_share_after,\n\t\t\t\tno_delete_after: appointment.no_delete_after,\n\t\t\t\tteam: this._retrieveURL(appointment.team),\n\t\t\t\teditors_can_change_editors: appointment.editors_can_change_editors,\n\t\t\t};\n\n\t\t\tif (this.id) {\n\t\t\t\tdata.id = this.id;\n\t\t\t}\n\n\t\t\treturn data;\n\t\t},\n\t}\n);\n\nregister(\"AppointmentModel\", AppointmentModel);\n"],"file":"appointment.js"}
|
|
@@ -36,6 +36,7 @@ var AutoAdjunctModel = _base.BaseModel.extend(
|
|
|
36
36
|
* @property {string} after_key
|
|
37
37
|
* @property {boolean} enabled
|
|
38
38
|
* @property {number} sequence
|
|
39
|
+
* @property {string[]} cmsvalkey_set
|
|
39
40
|
*/
|
|
40
41
|
props: {
|
|
41
42
|
image_128: "string",
|
|
@@ -49,7 +50,8 @@ var AutoAdjunctModel = _base.BaseModel.extend(
|
|
|
49
50
|
key: "string",
|
|
50
51
|
enabled: "boolean",
|
|
51
52
|
sequence: "number",
|
|
52
|
-
tags: "array"
|
|
53
|
+
tags: "array",
|
|
54
|
+
cmsvalkey_set: "array"
|
|
53
55
|
},
|
|
54
56
|
|
|
55
57
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/models/auto-adjunct.js"],"names":["AutoAdjunctModel","BaseModel","extend","modelName","props","image_128","image_256","image_512","image_1024","image_original","name","parent_key","after_key","key","enabled","sequence","tags","children","deck","template","team"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMA,gBAAgB,GAAGC,gBAAUC,MAAV;AAC/B;AAAuC;AACtCC,EAAAA,SAAS,EAAE,cAD2B;;AAGtC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,KAAK,EAAE;AACNC,IAAAA,SAAS,EAAE,QADL;AAENC,IAAAA,SAAS,EAAE,QAFL;AAGNC,IAAAA,SAAS,EAAE,QAHL;AAINC,IAAAA,UAAU,EAAE,QAJN;AAKNC,IAAAA,cAAc,EAAE,QALV;AAMNC,IAAAA,IAAI,EAAE,iBANA;AAONC,IAAAA,UAAU,EAAE,QAPN;AAQNC,IAAAA,SAAS,EAAE,QARL;AASNC,IAAAA,GAAG,EAAE,QATC;AAUNC,IAAAA,OAAO,EAAE,SAVH;AAWNC,IAAAA,QAAQ,EAAE,QAXJ;AAYNC,IAAAA,IAAI,EAAE;
|
|
1
|
+
{"version":3,"sources":["../../src/models/auto-adjunct.js"],"names":["AutoAdjunctModel","BaseModel","extend","modelName","props","image_128","image_256","image_512","image_1024","image_original","name","parent_key","after_key","key","enabled","sequence","tags","cmsvalkey_set","children","deck","template","team"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACO,IAAMA,gBAAgB,GAAGC,gBAAUC,MAAV;AAC/B;AAAuC;AACtCC,EAAAA,SAAS,EAAE,cAD2B;;AAGtC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,KAAK,EAAE;AACNC,IAAAA,SAAS,EAAE,QADL;AAENC,IAAAA,SAAS,EAAE,QAFL;AAGNC,IAAAA,SAAS,EAAE,QAHL;AAINC,IAAAA,UAAU,EAAE,QAJN;AAKNC,IAAAA,cAAc,EAAE,QALV;AAMNC,IAAAA,IAAI,EAAE,iBANA;AAONC,IAAAA,UAAU,EAAE,QAPN;AAQNC,IAAAA,SAAS,EAAE,QARL;AASNC,IAAAA,GAAG,EAAE,QATC;AAUNC,IAAAA,OAAO,EAAE,SAVH;AAWNC,IAAAA,QAAQ,EAAE,QAXJ;AAYNC,IAAAA,IAAI,EAAE,OAZA;AAaNC,IAAAA,aAAa,EAAE;AAbT,GAhB+B;;AAgCtC;AACF;AACA;AACA;AACEC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,IAAI,EAAE,WADG;AAETC,IAAAA,QAAQ,EAAE,eAFD;AAGTC,IAAAA,IAAI,EAAE;AAHG;AApC4B,CADR,CAAzB;;;AA6CP,6BAAS,kBAAT,EAA6BrB,gBAA7B","sourcesContent":["import \"./template.js\";\nimport \"./team.js\";\nimport \"./deck.js\";\n\nimport { BaseModel } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias models.AutoAdjunctModel\n * @extends models.BaseModel\n */\nexport const AutoAdjunctModel = BaseModel.extend(\n\t/** @lends models.AutoAdjunctModel# */ {\n\t\tmodelName: \"autoadjuncts\",\n\n\t\t/**\n\t\t * @property {string} image_128\n\t\t * @property {string} image_256\n\t\t * @property {string} image_512\n\t\t * @property {string} image_1024\n\t\t * @property {string} image_original\n\t\t * @property {string} name\n\t\t * @property {string} parent_key\n\t\t * @property {string} after_key\n\t\t * @property {boolean} enabled\n\t\t * @property {number} sequence\n\t\t * @property {string[]} cmsvalkey_set\n\t\t */\n\t\tprops: {\n\t\t\timage_128: \"string\",\n\t\t\timage_256: \"string\",\n\t\t\timage_512: \"string\",\n\t\t\timage_1024: \"string\",\n\t\t\timage_original: \"string\",\n\t\t\tname: \"stringSanitized\",\n\t\t\tparent_key: \"string\",\n\t\t\tafter_key: \"string\",\n\t\t\tkey: \"string\",\n\t\t\tenabled: \"boolean\",\n\t\t\tsequence: \"number\",\n\t\t\ttags: \"array\",\n\t\t\tcmsvalkey_set: \"array\",\n\t\t},\n\n\t\t/**\n\t\t * @property {models.DeckModel} deck\n\t\t * @property {models.TemplateModel} template\n\t\t */\n\t\tchildren: {\n\t\t\tdeck: \"DeckModel\",\n\t\t\ttemplate: \"TemplateModel\",\n\t\t\tteam: \"TeamModel\",\n\t\t},\n\t}\n);\n\nregister(\"AutoAdjunctModel\", AutoAdjunctModel);\n"],"file":"auto-adjunct.js"}
|
package/cjs/models/base.js
CHANGED
|
@@ -57,6 +57,9 @@ var BaseModel = _ampersandModel.default.extend(
|
|
|
57
57
|
// This is unfortunately necessary to avoid the default ampersand model/state
|
|
58
58
|
// behaviour from automatically hydrating all children and collections on a fetch.
|
|
59
59
|
isFetching: false,
|
|
60
|
+
// Useful to figure out whether the model is just a URL (unfetched), or has been
|
|
61
|
+
// fetched from the server (an object).
|
|
62
|
+
_isFetched: true,
|
|
60
63
|
// Object of regexes that should be used to match a url in `matchesURL`
|
|
61
64
|
// For example the URL: /api/foo/{pk}/bar/ might have the following:
|
|
62
65
|
//
|
|
@@ -69,13 +72,15 @@ var BaseModel = _ampersandModel.default.extend(
|
|
|
69
72
|
// ```
|
|
70
73
|
urlMatchKeys: {},
|
|
71
74
|
constructor: function constructor() {
|
|
72
|
-
var
|
|
75
|
+
var _data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
76
|
+
|
|
73
77
|
var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
74
78
|
|
|
75
79
|
var options = _lodash.default.defaults(opts, {
|
|
76
80
|
data: {}
|
|
77
81
|
});
|
|
78
82
|
|
|
83
|
+
var data = _data;
|
|
79
84
|
this._unsetChildren = {};
|
|
80
85
|
this._unsetCollections = {};
|
|
81
86
|
this._expandedValues = {};
|
|
@@ -95,6 +100,15 @@ var BaseModel = _ampersandModel.default.extend(
|
|
|
95
100
|
data = {
|
|
96
101
|
url: data
|
|
97
102
|
};
|
|
103
|
+
this._isFetched = false;
|
|
104
|
+
} // Convert model ids into a format we can understand
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
if (_lodash.default.isNumber(data)) {
|
|
108
|
+
data = {
|
|
109
|
+
id: data
|
|
110
|
+
};
|
|
111
|
+
this._isFetched = false;
|
|
98
112
|
}
|
|
99
113
|
|
|
100
114
|
var dataCopy = _lodash.default.extend({}, data);
|
|
@@ -420,6 +434,7 @@ var BaseModel = _ampersandModel.default.extend(
|
|
|
420
434
|
this._options = _lodash.default.extend({}, this._options, options);
|
|
421
435
|
this.isFetching = true;
|
|
422
436
|
return _ampersandModel.default.prototype.fetch.apply(this, arguments).tap(function (response) {
|
|
437
|
+
_this4._isFetched = true;
|
|
423
438
|
_this4.isFetching = false;
|
|
424
439
|
|
|
425
440
|
_this4._updateResponse(response);
|
|
@@ -440,6 +455,9 @@ var BaseModel = _ampersandModel.default.extend(
|
|
|
440
455
|
return null;
|
|
441
456
|
});
|
|
442
457
|
},
|
|
458
|
+
isFetched: function isFetched() {
|
|
459
|
+
return this._isFetched;
|
|
460
|
+
},
|
|
443
461
|
getSafeAttrs: function getSafeAttrs(key) {
|
|
444
462
|
var _this5 = this;
|
|
445
463
|
|