Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
112 changes: 61 additions & 51 deletions contenttype-data.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,17 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/cl

var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));

var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));

function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }

function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }

var FetchContentTypes = /*#__PURE__*/function () {
function FetchContentTypes() {
function FetchContentTypes(query) {
(0, _classCallCheck2["default"])(this, FetchContentTypes);
(0, _defineProperty2["default"])(this, "query", void 0);
this.query = query;
}

(0, _createClass2["default"])(FetchContentTypes, [{
Expand Down Expand Up @@ -55,25 +59,27 @@ var FetchDefaultContentTypes = /*#__PURE__*/function (_FetchContentTypes) {

var _super = _createSuper(FetchDefaultContentTypes);

function FetchDefaultContentTypes() {
function FetchDefaultContentTypes(query) {
var _this;

(0, _classCallCheck2["default"])(this, FetchDefaultContentTypes);
return _super.apply(this, arguments);
_this = _super.call(this, query);
_this.query = query;
return _this;
}

(0, _createClass2["default"])(FetchDefaultContentTypes, [{
key: "getPagedData",
value: function () {
var _getPagedData2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(url, config, responseKey, fn) {
var query, result;
var result;
return _regenerator["default"].wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
query = {
include_global_field_schema: true
};
this.query.query = JSON.stringify(this.query.query);
_context2.next = 3;
return fn.apply(null, [url, config, responseKey, query]);
return fn.apply(null, [url, config, responseKey, this.query]);

case 3:
result = _context2.sent;
Expand All @@ -84,7 +90,7 @@ var FetchDefaultContentTypes = /*#__PURE__*/function (_FetchContentTypes) {
return _context2.stop();
}
}
}, _callee2);
}, _callee2, this);
}));

function getPagedData(_x, _x2, _x3, _x4) {
Expand All @@ -102,63 +108,65 @@ var FetchSpecifiedContentTypes = /*#__PURE__*/function (_FetchContentTypes2) {

var _super2 = _createSuper(FetchSpecifiedContentTypes);

function FetchSpecifiedContentTypes() {
function FetchSpecifiedContentTypes(query) {
var _this2;

(0, _classCallCheck2["default"])(this, FetchSpecifiedContentTypes);
return _super2.apply(this, arguments);
_this2 = _super2.call(this, query); // We don't want to restrict the specified content-types download by last fetch time, as it can ignore updates from referred content-types.

delete query.query;
_this2.query = query;
return _this2;
}

(0, _createClass2["default"])(FetchSpecifiedContentTypes, [{
key: "getPagedData",
value: function () {
var _getPagedData3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(url, config, responseKey, fn) {
var query, contentTypes, referredContentTypes, referredContentTypesList, referredContentTypesData, result;
var contentTypes, referredContentTypes, referredContentTypesList, referredContentTypesData, result;
return _regenerator["default"].wrap(function _callee3$(_context3) {
while (1) {
switch (_context3.prev = _context3.next) {
case 0:
query = {
query: JSON.stringify({
uid: {
$in: config.contentTypes
}
}),
include_global_field_schema: true
this.query.query.uid = {
$in: config.contentTypes
};
_context3.next = 3;
return fn.apply(null, [url, config, responseKey, query]);
this.query.query = JSON.stringify(this.query.query);
_context3.next = 4;
return fn.apply(null, [url, config, responseKey, this.query]);

case 3:
case 4:
contentTypes = _context3.sent;
referredContentTypes = new ReferredContentTypes();
referredContentTypesList = referredContentTypes.getReferredContentTypes(contentTypes);
referredContentTypesData = [];

if (!referredContentTypesList.length) {
_context3.next = 12;
_context3.next = 13;
break;
}

query.query = JSON.stringify({
this.query.query = JSON.stringify({
uid: {
$in: referredContentTypesList
}
});
_context3.next = 11;
return fn.apply(null, [url, config, responseKey, query]);
_context3.next = 12;
return fn.apply(null, [url, config, responseKey, this.query]);

case 11:
case 12:
referredContentTypesData = _context3.sent;

case 12:
case 13:
result = contentTypes.concat(referredContentTypesData);
return _context3.abrupt("return", result);

case 14:
case 15:
case "end":
return _context3.stop();
}
}
}, _callee3);
}, _callee3, this);
}));

function getPagedData(_x5, _x6, _x7, _x8) {
Expand All @@ -176,63 +184,65 @@ var FetchUnspecifiedContentTypes = /*#__PURE__*/function (_FetchContentTypes3) {

var _super3 = _createSuper(FetchUnspecifiedContentTypes);

function FetchUnspecifiedContentTypes() {
function FetchUnspecifiedContentTypes(query) {
var _this3;

(0, _classCallCheck2["default"])(this, FetchUnspecifiedContentTypes);
return _super3.apply(this, arguments);
_this3 = _super3.call(this, query); // We don't want to restrict the specified content-types download by last fetch time, as it can ignore updates from referred content-types.

delete query.query;
_this3.query = query;
return _this3;
}

(0, _createClass2["default"])(FetchUnspecifiedContentTypes, [{
key: "getPagedData",
value: function () {
var _getPagedData4 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(url, config, responseKey, fn) {
var query, contentTypes, referredContentTypes, referredContentTypesList, referredContentTypesData, result;
var contentTypes, referredContentTypes, referredContentTypesList, referredContentTypesData, result;
return _regenerator["default"].wrap(function _callee4$(_context4) {
while (1) {
switch (_context4.prev = _context4.next) {
case 0:
query = {
query: JSON.stringify({
uid: {
$nin: config.excludeContentTypes
}
}),
include_global_field_schema: true
this.query.query.uid = {
$nin: config.excludeContentTypes
};
_context4.next = 3;
return fn.apply(null, [url, config, responseKey, query]);
this.query.query = JSON.stringify(this.query.query);
_context4.next = 4;
return fn.apply(null, [url, config, responseKey, this.query]);

case 3:
case 4:
contentTypes = _context4.sent;
referredContentTypes = new ReferredContentTypes();
referredContentTypesList = referredContentTypes.getReferredContentTypes(contentTypes);
referredContentTypesData = [];

if (!referredContentTypesList.length) {
_context4.next = 12;
_context4.next = 13;
break;
}

query.query = JSON.stringify({
this.query.query = JSON.stringify({
uid: {
$in: referredContentTypesList
}
});
_context4.next = 11;
return fn.apply(null, [url, config, responseKey, query]);
_context4.next = 12;
return fn.apply(null, [url, config, responseKey, this.query]);

case 11:
case 12:
referredContentTypesData = _context4.sent;

case 12:
case 13:
result = contentTypes.concat(referredContentTypesData);
return _context4.abrupt("return", result);

case 14:
case 15:
case "end":
return _context4.stop();
}
}
}, _callee4);
}, _callee4, this);
}));

function getPagedData(_x9, _x10, _x11, _x12) {
Expand Down
2 changes: 1 addition & 1 deletion create-schema-customization.js
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ exports.createSchemaCustomization = /*#__PURE__*/function () {
_context2.prev = 3;
contentTypeOption = getContentTypeOption(configOptions);
_context2.next = 7;
return fetchContentTypes(configOptions, contentTypeOption);
return fetchContentTypes(configOptions, contentTypeOption, cache);

case 7:
contentTypes = _context2.sent;
Expand Down
Loading