@prisma-cms/front-editor
Version:
78 lines • 3.41 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const react_1 = __importStar(require("react"));
const __1 = __importStar(require(".."));
const LastPage_1 = __importDefault(require("material-ui-icons/LastPage"));
const EditorComponent_1 = __importDefault(require("../../../../EditorComponent"));
const Pagination_1 = __importDefault(require("../../../../common/Pagination"));
// TODO Fix pagination
class Pagination extends EditorComponent_1.default {
renderPanelView(content) {
return super.renderPanelView(content || (react_1.default.createElement("div", { className: "editor-component--panel-icon" },
react_1.default.createElement(LastPage_1.default, null),
" Pagination")));
}
canBeChild() {
return false;
}
canBeParent(parent) {
let can = false;
// return false;
if (super.canBeParent(parent)) {
while (parent) {
if (parent instanceof __1.default) {
can = true;
break;
}
parent = parent.props.parent;
}
}
return can;
}
renderChildren() {
return (react_1.default.createElement(react_1.Fragment, { key: "pagination" },
react_1.default.createElement(__1.ConnectorContext.Consumer, null, (context) => {
const { data, pageVariable = 'page' } = context;
if (!data) {
return;
}
const { objectsConnection, variables } = data;
if (!objectsConnection) {
return null;
}
const { aggregate: { count: total }, } = objectsConnection;
const { first: limit } = variables || {};
const { uri } = this.context;
let { [pageVariable]: page } = uri.query(true);
page = parseInt(page) || 0;
return (react_1.default.createElement(Pagination_1.default, { pageVariable: pageVariable, limit: limit, total: total, page: page || 1 }));
}),
super.renderChildren()));
}
}
Pagination.Name = 'Pagination';
Pagination.defaultProps = Object.assign(Object.assign({}, EditorComponent_1.default.defaultProps), { hide_wrapper_in_default_mode: true });
exports.default = Pagination;
//# sourceMappingURL=index.js.map