@livepreso/api 6.53.1 → 6.55.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.rush/temp/chunked-rush-logs/api.build.chunks.jsonl +2 -2
- package/.rush/temp/operation/build/all.log +2 -2
- package/.rush/temp/operation/build/error.log +1 -1
- package/.rush/temp/operation/build/log-chunks.jsonl +2 -2
- package/.rush/temp/operation/build/state.json +1 -1
- package/.rush/temp/shrinkwrap-deps.json +65 -15
- package/CHANGELOG.json +46 -0
- package/CHANGELOG.md +27 -1
- package/cjs/api.js +1 -1
- package/cjs/api.js.map +1 -1
- package/cjs/collections/auto-adjuncts.js +0 -22
- package/cjs/collections/auto-adjuncts.js.map +1 -1
- package/cjs/collections/cms-vals.js +25 -0
- package/cjs/collections/cms-vals.js.map +1 -1
- package/cjs/collections/cms-vals.spec.js +73 -0
- package/cjs/collections/cms-vals.spec.js.map +1 -0
- package/cjs/collections/deck-version-screenshots.js +0 -23
- package/cjs/collections/deck-version-screenshots.js.map +1 -1
- package/cjs/collections/scenarios.js +20 -0
- package/cjs/collections/scenarios.js.map +1 -0
- package/cjs/collections.js +11 -22
- package/cjs/collections.js.map +1 -1
- package/cjs/fixtures.js +18 -1
- package/cjs/fixtures.js.map +1 -1
- package/cjs/middlewares/base.js +1 -2
- package/cjs/middlewares/base.js.map +1 -1
- package/cjs/models/appointment.js +29 -8
- package/cjs/models/appointment.js.map +1 -1
- package/cjs/models/auto-adjunct.js +3 -2
- package/cjs/models/auto-adjunct.js.map +1 -1
- package/cjs/models/base.js +3 -1
- package/cjs/models/base.js.map +1 -1
- package/cjs/models/cms-val.js +3 -3
- package/cjs/models/cms-val.js.map +1 -1
- package/cjs/models/customer.js +2 -1
- package/cjs/models/customer.js.map +1 -1
- package/cjs/models/deck-layout.js +52 -0
- package/cjs/models/deck-layout.js.map +1 -0
- package/cjs/models/deck-version-screenshot.js +2 -2
- package/cjs/models/deck-version-screenshot.js.map +1 -1
- package/cjs/models/deck-version.js +43 -20
- package/cjs/models/deck-version.js.map +1 -1
- package/cjs/models/image.js +0 -2
- package/cjs/models/image.js.map +1 -1
- package/cjs/models/pack-diff.js +18 -9
- package/cjs/models/pack-diff.js.map +1 -1
- package/cjs/models/preset.js +8 -6
- package/cjs/models/preset.js.map +1 -1
- package/cjs/models/scenario.js +41 -0
- package/cjs/models/scenario.js.map +1 -0
- package/cjs/models/user.js +8 -3
- package/cjs/models/user.js.map +1 -1
- package/cjs/models.js +22 -0
- package/cjs/models.js.map +1 -1
- package/cjs/presentation/appointment-presentation.js +5 -3
- package/cjs/presentation/appointment-presentation.js.map +1 -1
- package/cjs/presentation/base-presentation-model.js +26 -23
- package/cjs/presentation/base-presentation-model.js.map +1 -1
- package/cjs/presentation/base-presentation-model.spec.js +21 -21
- package/cjs/presentation/base-presentation-model.spec.js.map +1 -1
- package/cjs/presentation/presentation-deck.js +6 -0
- package/cjs/presentation/presentation-deck.js.map +1 -1
- package/cjs/presentation/presentation-section.js +28 -3
- package/cjs/presentation/presentation-section.js.map +1 -1
- package/cjs/presentation/presentation-section.spec.js +16 -3
- package/cjs/presentation/presentation-section.spec.js.map +1 -1
- package/cjs/presentation/presentation-slide.js +25 -1
- package/cjs/presentation/presentation-slide.js.map +1 -1
- package/cjs/presentation/presentation-slide.spec.js +8 -1
- package/cjs/presentation/presentation-slide.spec.js.map +1 -1
- package/cjs/sync.js +17 -9
- package/cjs/sync.js.map +1 -1
- package/cjs/utils.js +12 -3
- package/cjs/utils.js.map +1 -1
- package/cjs/utils.spec.js +22 -0
- package/cjs/utils.spec.js.map +1 -1
- package/package.json +1 -1
- package/rush-logs/api.build.error.log +1 -1
- package/rush-logs/api.build.log +2 -2
- package/src/api.js +1 -1
- package/src/collections/auto-adjuncts.js +0 -22
- package/src/collections/cms-vals.js +28 -0
- package/src/collections/cms-vals.spec.js +66 -0
- package/src/collections/deck-version-screenshots.js +0 -22
- package/src/collections/scenarios.js +18 -0
- package/src/collections.js +1 -2
- package/src/fixtures.js +17 -1
- package/src/middlewares/base.js +1 -2
- package/src/models/appointment.js +32 -6
- package/src/models/auto-adjunct.js +3 -2
- package/src/models/base.js +3 -2
- package/src/models/cms-val.js +3 -3
- package/src/models/customer.js +1 -0
- package/src/models/deck-layout.js +54 -0
- package/src/models/deck-version-screenshot.js +2 -2
- package/src/models/deck-version.js +12 -14
- package/src/models/image.js +0 -3
- package/src/models/pack-diff.js +14 -9
- package/src/models/preset.js +8 -6
- package/src/models/scenario.js +39 -0
- package/src/models/user.js +8 -1
- package/src/models.js +2 -0
- package/src/presentation/appointment-presentation.js +7 -4
- package/src/presentation/base-presentation-model.js +29 -23
- package/src/presentation/base-presentation-model.spec.js +22 -22
- package/src/presentation/presentation-deck.js +6 -0
- package/src/presentation/presentation-section.js +26 -1
- package/src/presentation/presentation-section.spec.js +14 -1
- package/src/presentation/presentation-slide.js +24 -0
- package/src/presentation/presentation-slide.spec.js +7 -0
- package/src/sync.js +16 -12
- package/src/utils.js +13 -3
- package/src/utils.spec.js +27 -0
- package/cjs/collections/created-assets.js +0 -26
- package/cjs/collections/created-assets.js.map +0 -1
- package/cjs/collections/deleted-assets.js +0 -26
- package/cjs/collections/deleted-assets.js.map +0 -1
- package/src/collections/created-assets.js +0 -26
- package/src/collections/deleted-assets.js +0 -26
package/src/sync.js
CHANGED
|
@@ -40,7 +40,7 @@ export const buildURL = function ({ method, model }) {
|
|
|
40
40
|
return url;
|
|
41
41
|
};
|
|
42
42
|
|
|
43
|
-
export const sync = function (method) {
|
|
43
|
+
export const sync = function (method, model, defaultOpts) {
|
|
44
44
|
const syncArguments = arguments;
|
|
45
45
|
|
|
46
46
|
if (method === "read") {
|
|
@@ -52,18 +52,19 @@ export const sync = function (method) {
|
|
|
52
52
|
}
|
|
53
53
|
});
|
|
54
54
|
|
|
55
|
-
return Promise.all(syncActions).then(() => {
|
|
56
|
-
|
|
55
|
+
return Promise.all(syncActions).then((...newOpts) => {
|
|
56
|
+
const joinedOpts = _.merge({}, defaultOpts, ...newOpts.flat());
|
|
57
|
+
return ajaxSync.call(this, method, model, joinedOpts);
|
|
57
58
|
});
|
|
58
59
|
}
|
|
59
|
-
return ajaxSync.
|
|
60
|
+
return ajaxSync.call(this, method, model, defaultOpts);
|
|
60
61
|
};
|
|
61
62
|
|
|
62
63
|
export const ajaxSync = function (method, model, options) {
|
|
63
64
|
const type = methodMap[method];
|
|
64
65
|
|
|
65
66
|
// Default options, unless specified.
|
|
66
|
-
defaults(options ||
|
|
67
|
+
defaults(options || {}, {
|
|
67
68
|
emulateHTTP: false,
|
|
68
69
|
emulateJSON: false,
|
|
69
70
|
});
|
|
@@ -118,7 +119,7 @@ export const ajaxSync = function (method, model, options) {
|
|
|
118
119
|
|
|
119
120
|
middlewares.forEach((middleware) => {
|
|
120
121
|
if (middleware.preflight) {
|
|
121
|
-
middleware.preflight(request);
|
|
122
|
+
middleware.preflight(request, model, options);
|
|
122
123
|
}
|
|
123
124
|
});
|
|
124
125
|
|
|
@@ -155,10 +156,10 @@ export const ajaxSync = function (method, model, options) {
|
|
|
155
156
|
|
|
156
157
|
// TODO: Remove me when this can be moved... for now this removal is quite a complex
|
|
157
158
|
// process.
|
|
158
|
-
if (options.
|
|
159
|
+
if (options.cachedResponse) {
|
|
159
160
|
return Promise.resolve(options.cachedResponse)
|
|
160
161
|
.then(getNextMiddleware(request))
|
|
161
|
-
.then(
|
|
162
|
+
.then((response) => {
|
|
162
163
|
if (!response.data) {
|
|
163
164
|
response.data = JSON.parse(response.text);
|
|
164
165
|
}
|
|
@@ -173,7 +174,7 @@ export const ajaxSync = function (method, model, options) {
|
|
|
173
174
|
return response.data;
|
|
174
175
|
});
|
|
175
176
|
})
|
|
176
|
-
.catch(
|
|
177
|
+
.catch((response) => {
|
|
177
178
|
return Promise.each(middlewares, (middleware) => {
|
|
178
179
|
return middleware.error(response, model);
|
|
179
180
|
}).then(() => {
|
|
@@ -189,9 +190,12 @@ export const ajaxSync = function (method, model, options) {
|
|
|
189
190
|
request
|
|
190
191
|
// Force a timeout on every request. Intermittent connections
|
|
191
192
|
// can have the request continue trying for minutes otherwise.
|
|
192
|
-
|
|
193
|
+
// 60 seconds is the timeout the server has, so we go for 65 seconds,
|
|
194
|
+
// so we give the chance to the server to time out first - helps with
|
|
195
|
+
// debugging.
|
|
196
|
+
.timeout(65 * 1000)
|
|
193
197
|
.then(getNextMiddleware(request))
|
|
194
|
-
.then(
|
|
198
|
+
.then((response) => {
|
|
195
199
|
let data;
|
|
196
200
|
try {
|
|
197
201
|
data = JSON.parse(response.text);
|
|
@@ -223,7 +227,7 @@ export const ajaxSync = function (method, model, options) {
|
|
|
223
227
|
}
|
|
224
228
|
throw e;
|
|
225
229
|
})
|
|
226
|
-
.catch(
|
|
230
|
+
.catch((response) => {
|
|
227
231
|
return Promise.each(middlewares, (middleware) => {
|
|
228
232
|
return middleware.error(response);
|
|
229
233
|
}).then(() => {
|
package/src/utils.js
CHANGED
|
@@ -149,9 +149,19 @@ export function sanitizeBase64(obj, conditionFn = () => true) {
|
|
|
149
149
|
return { ...acc, [key]: sanitizeBase64(obj[key], conditionFn) };
|
|
150
150
|
}, {});
|
|
151
151
|
} else if (typeof obj === "string") {
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
152
|
+
// Catch anything that looks like base64, or base64%2C (which is the encoded version)
|
|
153
|
+
// and strip it. This is a last resort, we'd prefer not to be in this position!
|
|
154
|
+
const re = /base64(,|(%2C))/;
|
|
155
|
+
|
|
156
|
+
if (re.test(obj)) {
|
|
157
|
+
// If you're a developer, let's throw an error.
|
|
158
|
+
if (process.env.NODE_ENV === "development" && !window.Cypress) {
|
|
159
|
+
throw new Error("Tried to save a base64 string. Figure out why!");
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
if (conditionFn?.(obj) ?? true) {
|
|
163
|
+
return "";
|
|
164
|
+
}
|
|
155
165
|
}
|
|
156
166
|
}
|
|
157
167
|
return obj;
|
package/src/utils.spec.js
CHANGED
|
@@ -3,6 +3,7 @@ import {
|
|
|
3
3
|
getShortURL,
|
|
4
4
|
removeMultiByteChars,
|
|
5
5
|
replaceHostname,
|
|
6
|
+
sanitizeBase64,
|
|
6
7
|
} from "./utils.js";
|
|
7
8
|
|
|
8
9
|
describe("getShortURL()", () => {
|
|
@@ -160,3 +161,29 @@ describe("replaceHostname()", () => {
|
|
|
160
161
|
expect(actual).toEqual(expected);
|
|
161
162
|
});
|
|
162
163
|
});
|
|
164
|
+
|
|
165
|
+
describe.only("sanitizeBase64()", () => {
|
|
166
|
+
["data:image/webp;base64,", "data%3Aimage%2Fwebp%3Bbase64%2C"].forEach(
|
|
167
|
+
(base64) => {
|
|
168
|
+
it("should strip base64 from string", () => {
|
|
169
|
+
expect(sanitizeBase64(base64)).toEqual("");
|
|
170
|
+
});
|
|
171
|
+
|
|
172
|
+
it("should strip base64 from array", () => {
|
|
173
|
+
expect(sanitizeBase64([base64])).toEqual([""]);
|
|
174
|
+
});
|
|
175
|
+
|
|
176
|
+
it("should strip base64 from nested object", () => {
|
|
177
|
+
expect(
|
|
178
|
+
sanitizeBase64({
|
|
179
|
+
foo: [base64],
|
|
180
|
+
}),
|
|
181
|
+
).toEqual({ foo: [""] });
|
|
182
|
+
});
|
|
183
|
+
|
|
184
|
+
it("should not strip if condition says not to", () => {
|
|
185
|
+
expect(sanitizeBase64(base64, () => false)).toEqual(base64);
|
|
186
|
+
});
|
|
187
|
+
},
|
|
188
|
+
);
|
|
189
|
+
});
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.CreatedAssetCollection = void 0;
|
|
7
|
-
require("../models/asset.js");
|
|
8
|
-
var _base = require("./base.js");
|
|
9
|
-
var _stateRegister = require("../state-register.js");
|
|
10
|
-
/**
|
|
11
|
-
* @constructor
|
|
12
|
-
* @alias collections.CreatedAssetCollection
|
|
13
|
-
* @extends collections.BaseCollection
|
|
14
|
-
* @see models.AssetModel
|
|
15
|
-
*/
|
|
16
|
-
var CreatedAssetCollection = exports.CreatedAssetCollection = _base.BaseCollection.extend(/** @lends collections.CreatedAssetCollection# */{
|
|
17
|
-
model: "AssetModel",
|
|
18
|
-
url: function url() {
|
|
19
|
-
if (!this._url && this.parent) {
|
|
20
|
-
this._url = this.getFullURLPath("".concat(this.parent.getPlainURL(), "created/"));
|
|
21
|
-
}
|
|
22
|
-
return _base.BaseCollection.prototype.url.call(this);
|
|
23
|
-
}
|
|
24
|
-
});
|
|
25
|
-
(0, _stateRegister.register)("CreatedAssetCollection", CreatedAssetCollection);
|
|
26
|
-
//# sourceMappingURL=created-assets.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"created-assets.js","names":["require","_base","_stateRegister","CreatedAssetCollection","exports","BaseCollection","extend","model","url","_url","parent","getFullURLPath","concat","getPlainURL","prototype","call","register"],"sources":["../../src/collections/created-assets.js"],"sourcesContent":["import \"../models/asset.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.CreatedAssetCollection\n * @extends collections.BaseCollection\n * @see models.AssetModel\n */\nexport const CreatedAssetCollection = BaseCollection.extend(\n\t/** @lends collections.CreatedAssetCollection# */ {\n\t\tmodel: \"AssetModel\",\n\n\t\turl() {\n\t\t\tif (!this._url && this.parent) {\n\t\t\t\tthis._url = this.getFullURLPath(`${this.parent.getPlainURL()}created/`);\n\t\t\t}\n\n\t\t\treturn BaseCollection.prototype.url.call(this);\n\t\t},\n\t},\n);\n\nregister(\"CreatedAssetCollection\", CreatedAssetCollection);\n"],"mappings":";;;;;;AAAAA,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMG,sBAAsB,GAAAC,OAAA,CAAAD,sBAAA,GAAGE,oBAAc,CAACC,MAAM,CAC1D,iDAAkD;EACjDC,KAAK,EAAE,YAAY;EAEnBC,GAAG,WAAHA,GAAGA,CAAA,EAAG;IACL,IAAI,CAAC,IAAI,CAACC,IAAI,IAAI,IAAI,CAACC,MAAM,EAAE;MAC9B,IAAI,CAACD,IAAI,GAAG,IAAI,CAACE,cAAc,IAAAC,MAAA,CAAI,IAAI,CAACF,MAAM,CAACG,WAAW,CAAC,CAAC,aAAU,CAAC;IACxE;IAEA,OAAOR,oBAAc,CAACS,SAAS,CAACN,GAAG,CAACO,IAAI,CAAC,IAAI,CAAC;EAC/C;AACD,CACD,CAAC;AAED,IAAAC,uBAAQ,EAAC,wBAAwB,EAAEb,sBAAsB,CAAC","ignoreList":[]}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.DeletedAssetCollection = void 0;
|
|
7
|
-
require("../models/asset.js");
|
|
8
|
-
var _base = require("./base.js");
|
|
9
|
-
var _stateRegister = require("../state-register.js");
|
|
10
|
-
/**
|
|
11
|
-
* @constructor
|
|
12
|
-
* @alias collections.DeletedAssetCollection
|
|
13
|
-
* @extends collections.BaseCollection
|
|
14
|
-
* @see models.AssetModel
|
|
15
|
-
*/
|
|
16
|
-
var DeletedAssetCollection = exports.DeletedAssetCollection = _base.BaseCollection.extend(/** @lends collections.DeletedAssetCollection# */{
|
|
17
|
-
model: "AssetModel",
|
|
18
|
-
url: function url() {
|
|
19
|
-
if (!this._url && this.parent) {
|
|
20
|
-
this._url = this.getFullURLPath("".concat(this.parent.getPlainURL(), "deleted/"));
|
|
21
|
-
}
|
|
22
|
-
return _base.BaseCollection.prototype.url.call(this);
|
|
23
|
-
}
|
|
24
|
-
});
|
|
25
|
-
(0, _stateRegister.register)("DeletedAssetCollection", DeletedAssetCollection);
|
|
26
|
-
//# sourceMappingURL=deleted-assets.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deleted-assets.js","names":["require","_base","_stateRegister","DeletedAssetCollection","exports","BaseCollection","extend","model","url","_url","parent","getFullURLPath","concat","getPlainURL","prototype","call","register"],"sources":["../../src/collections/deleted-assets.js"],"sourcesContent":["import \"../models/asset.js\";\n\nimport { BaseCollection } from \"./base.js\";\nimport { register } from \"../state-register.js\";\n\n/**\n * @constructor\n * @alias collections.DeletedAssetCollection\n * @extends collections.BaseCollection\n * @see models.AssetModel\n */\nexport const DeletedAssetCollection = BaseCollection.extend(\n\t/** @lends collections.DeletedAssetCollection# */ {\n\t\tmodel: \"AssetModel\",\n\n\t\turl() {\n\t\t\tif (!this._url && this.parent) {\n\t\t\t\tthis._url = this.getFullURLPath(`${this.parent.getPlainURL()}deleted/`);\n\t\t\t}\n\n\t\t\treturn BaseCollection.prototype.url.call(this);\n\t\t},\n\t},\n);\n\nregister(\"DeletedAssetCollection\", DeletedAssetCollection);\n"],"mappings":";;;;;;AAAAA,OAAA;AAEA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMG,sBAAsB,GAAAC,OAAA,CAAAD,sBAAA,GAAGE,oBAAc,CAACC,MAAM,CAC1D,iDAAkD;EACjDC,KAAK,EAAE,YAAY;EAEnBC,GAAG,WAAHA,GAAGA,CAAA,EAAG;IACL,IAAI,CAAC,IAAI,CAACC,IAAI,IAAI,IAAI,CAACC,MAAM,EAAE;MAC9B,IAAI,CAACD,IAAI,GAAG,IAAI,CAACE,cAAc,IAAAC,MAAA,CAAI,IAAI,CAACF,MAAM,CAACG,WAAW,CAAC,CAAC,aAAU,CAAC;IACxE;IAEA,OAAOR,oBAAc,CAACS,SAAS,CAACN,GAAG,CAACO,IAAI,CAAC,IAAI,CAAC;EAC/C;AACD,CACD,CAAC;AAED,IAAAC,uBAAQ,EAAC,wBAAwB,EAAEb,sBAAsB,CAAC","ignoreList":[]}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import "../models/asset.js";
|
|
2
|
-
|
|
3
|
-
import { BaseCollection } from "./base.js";
|
|
4
|
-
import { register } from "../state-register.js";
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* @constructor
|
|
8
|
-
* @alias collections.CreatedAssetCollection
|
|
9
|
-
* @extends collections.BaseCollection
|
|
10
|
-
* @see models.AssetModel
|
|
11
|
-
*/
|
|
12
|
-
export const CreatedAssetCollection = BaseCollection.extend(
|
|
13
|
-
/** @lends collections.CreatedAssetCollection# */ {
|
|
14
|
-
model: "AssetModel",
|
|
15
|
-
|
|
16
|
-
url() {
|
|
17
|
-
if (!this._url && this.parent) {
|
|
18
|
-
this._url = this.getFullURLPath(`${this.parent.getPlainURL()}created/`);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
return BaseCollection.prototype.url.call(this);
|
|
22
|
-
},
|
|
23
|
-
},
|
|
24
|
-
);
|
|
25
|
-
|
|
26
|
-
register("CreatedAssetCollection", CreatedAssetCollection);
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import "../models/asset.js";
|
|
2
|
-
|
|
3
|
-
import { BaseCollection } from "./base.js";
|
|
4
|
-
import { register } from "../state-register.js";
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* @constructor
|
|
8
|
-
* @alias collections.DeletedAssetCollection
|
|
9
|
-
* @extends collections.BaseCollection
|
|
10
|
-
* @see models.AssetModel
|
|
11
|
-
*/
|
|
12
|
-
export const DeletedAssetCollection = BaseCollection.extend(
|
|
13
|
-
/** @lends collections.DeletedAssetCollection# */ {
|
|
14
|
-
model: "AssetModel",
|
|
15
|
-
|
|
16
|
-
url() {
|
|
17
|
-
if (!this._url && this.parent) {
|
|
18
|
-
this._url = this.getFullURLPath(`${this.parent.getPlainURL()}deleted/`);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
return BaseCollection.prototype.url.call(this);
|
|
22
|
-
},
|
|
23
|
-
},
|
|
24
|
-
);
|
|
25
|
-
|
|
26
|
-
register("DeletedAssetCollection", DeletedAssetCollection);
|