payload
Version:
Node, React and MongoDB Headless CMS and Application Framework
197 lines (196 loc) • 15.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
function _export(target, all) {
for(var name in all)Object.defineProperty(target, name, {
enumerable: true,
get: all[name]
});
}
_export(exports, {
ListDrawer: function() {
return ListDrawer;
},
ListDrawerToggler: function() {
return ListDrawerToggler;
},
baseClass: function() {
return baseClass;
},
formatListDrawerSlug: function() {
return formatListDrawerSlug;
},
useListDrawer: function() {
return useListDrawer;
}
});
const _modal = require("@faceless-ui/modal");
const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
const _Config = require("../../utilities/Config");
const _EditDepth = require("../../utilities/EditDepth");
const _Drawer = require("../Drawer");
const _DrawerContent = require("./DrawerContent");
require("./index.scss");
function _getRequireWildcardCache(nodeInterop) {
if (typeof WeakMap !== "function") return null;
var cacheBabelInterop = new WeakMap();
var cacheNodeInterop = new WeakMap();
return (_getRequireWildcardCache = function(nodeInterop) {
return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
})(nodeInterop);
}
function _interop_require_wildcard(obj, nodeInterop) {
if (!nodeInterop && obj && obj.__esModule) {
return obj;
}
if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
return {
default: obj
};
}
var cache = _getRequireWildcardCache(nodeInterop);
if (cache && cache.has(obj)) {
return cache.get(obj);
}
var newObj = {
__proto__: null
};
var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
for(var key in obj){
if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
if (desc && (desc.get || desc.set)) {
Object.defineProperty(newObj, key, desc);
} else {
newObj[key] = obj[key];
}
}
}
newObj.default = obj;
if (cache) {
cache.set(obj, newObj);
}
return newObj;
}
const baseClass = 'list-drawer';
const formatListDrawerSlug = ({ depth, uuid })=>`list-drawer_${depth}_${uuid}`;
const ListDrawerToggler = ({ children, className, disabled, drawerSlug, ...rest })=>{
return /*#__PURE__*/ _react.default.createElement(_Drawer.DrawerToggler, {
className: [
className,
`${baseClass}__toggler`
].filter(Boolean).join(' '),
disabled: disabled,
slug: drawerSlug,
...rest
}, children);
};
const ListDrawer = (props)=>{
const { drawerSlug } = props;
return /*#__PURE__*/ _react.default.createElement(_Drawer.Drawer, {
className: baseClass,
gutter: false,
header: false,
slug: drawerSlug
}, /*#__PURE__*/ _react.default.createElement(_DrawerContent.ListDrawerContent, props));
};
const useListDrawer = ({ collectionSlugs: collectionSlugsFromProps, filterOptions, selectedCollection, uploads })=>{
const { collections } = (0, _Config.useConfig)();
const drawerDepth = (0, _EditDepth.useEditDepth)();
const uuid = (0, _react.useId)();
const { closeModal, modalState, openModal, toggleModal } = (0, _modal.useModal)();
const [isOpen, setIsOpen] = (0, _react.useState)(false);
const [collectionSlugs, setCollectionSlugs] = (0, _react.useState)(collectionSlugsFromProps);
const drawerSlug = formatListDrawerSlug({
depth: drawerDepth,
uuid
});
(0, _react.useEffect)(()=>{
setIsOpen(Boolean(modalState[drawerSlug]?.isOpen));
}, [
modalState,
drawerSlug
]);
(0, _react.useEffect)(()=>{
if (!collectionSlugs || collectionSlugs.length === 0) {
const filteredCollectionSlugs = collections.filter(({ upload })=>{
if (uploads) {
return Boolean(upload) === true;
}
return true;
});
setCollectionSlugs(filteredCollectionSlugs.map(({ slug })=>slug));
}
}, [
collectionSlugs,
uploads,
collections
]);
const toggleDrawer = (0, _react.useCallback)(()=>{
toggleModal(drawerSlug);
}, [
toggleModal,
drawerSlug
]);
const closeDrawer = (0, _react.useCallback)(()=>{
closeModal(drawerSlug);
}, [
drawerSlug,
closeModal
]);
const openDrawer = (0, _react.useCallback)(()=>{
openModal(drawerSlug);
}, [
drawerSlug,
openModal
]);
const MemoizedDrawer = (0, _react.useMemo)(()=>{
return (props)=>/*#__PURE__*/ _react.default.createElement(ListDrawer, {
...props,
closeDrawer: closeDrawer,
collectionSlugs: collectionSlugs,
drawerSlug: drawerSlug,
filterOptions: filterOptions,
key: drawerSlug,
selectedCollection: selectedCollection,
uploads: uploads
});
}, [
drawerSlug,
collectionSlugs,
uploads,
closeDrawer,
selectedCollection,
filterOptions
]);
const MemoizedDrawerToggler = (0, _react.useMemo)(()=>{
return (props)=>/*#__PURE__*/ _react.default.createElement(ListDrawerToggler, {
...props,
drawerSlug: drawerSlug
});
}, [
drawerSlug
]);
const MemoizedDrawerState = (0, _react.useMemo)(()=>({
closeDrawer,
drawerDepth,
drawerSlug,
isDrawerOpen: isOpen,
openDrawer,
toggleDrawer
}), [
drawerDepth,
drawerSlug,
isOpen,
toggleDrawer,
closeDrawer,
openDrawer
]);
return [
MemoizedDrawer,
MemoizedDrawerToggler,
MemoizedDrawerState
];
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hZG1pbi9jb21wb25lbnRzL2VsZW1lbnRzL0xpc3REcmF3ZXIvaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZU1vZGFsIH0gZnJvbSAnQGZhY2VsZXNzLXVpL21vZGFsJ1xuaW1wb3J0IFJlYWN0LCB7IHVzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZUlkLCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0J1xuXG5pbXBvcnQgdHlwZSB7IExpc3REcmF3ZXJQcm9wcywgTGlzdFRvZ2dsZXJQcm9wcywgVXNlTGlzdERyYXdlciB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCB7IHVzZUNvbmZpZyB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9Db25maWcnXG5pbXBvcnQgeyB1c2VFZGl0RGVwdGggfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvRWRpdERlcHRoJ1xuaW1wb3J0IHsgRHJhd2VyLCBEcmF3ZXJUb2dnbGVyIH0gZnJvbSAnLi4vRHJhd2VyJ1xuaW1wb3J0IHsgTGlzdERyYXdlckNvbnRlbnQgfSBmcm9tICcuL0RyYXdlckNvbnRlbnQnXG5pbXBvcnQgJy4vaW5kZXguc2NzcydcblxuZXhwb3J0IGNvbnN0IGJhc2VDbGFzcyA9ICdsaXN0LWRyYXdlcidcblxuZXhwb3J0IGNvbnN0IGZvcm1hdExpc3REcmF3ZXJTbHVnID0gKHtcbiAgZGVwdGgsXG4gIHV1aWQsXG59OiB7XG4gIGRlcHRoOiBudW1iZXJcbiAgdXVpZDogc3RyaW5nIC8vIHN1cHBseSB3aGVuIGNyZWF0aW5nIGEgbmV3IGRvY3VtZW50IGFuZCBubyBpZCBpcyBhdmFpbGFibGVcbn0pID0+IGBsaXN0LWRyYXdlcl8ke2RlcHRofV8ke3V1aWR9YFxuXG5leHBvcnQgY29uc3QgTGlzdERyYXdlclRvZ2dsZXI6IFJlYWN0LkZDPExpc3RUb2dnbGVyUHJvcHM+ID0gKHtcbiAgY2hpbGRyZW4sXG4gIGNsYXNzTmFtZSxcbiAgZGlzYWJsZWQsXG4gIGRyYXdlclNsdWcsXG4gIC4uLnJlc3Rcbn0pID0+IHtcbiAgcmV0dXJuIChcbiAgICA8RHJhd2VyVG9nZ2xlclxuICAgICAgY2xhc3NOYW1lPXtbY2xhc3NOYW1lLCBgJHtiYXNlQ2xhc3N9X190b2dnbGVyYF0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oJyAnKX1cbiAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgIHNsdWc9e2RyYXdlclNsdWd9XG4gICAgICB7Li4ucmVzdH1cbiAgICA+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9EcmF3ZXJUb2dnbGVyPlxuICApXG59XG5cbmV4cG9ydCBjb25zdCBMaXN0RHJhd2VyOiBSZWFjdC5GQzxMaXN0RHJhd2VyUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZHJhd2VyU2x1ZyB9ID0gcHJvcHNcblxuICByZXR1cm4gKFxuICAgIDxEcmF3ZXIgY2xhc3NOYW1lPXtiYXNlQ2xhc3N9IGd1dHRlcj17ZmFsc2V9IGhlYWRlcj17ZmFsc2V9IHNsdWc9e2RyYXdlclNsdWd9PlxuICAgICAgPExpc3REcmF3ZXJDb250ZW50IHsuLi5wcm9wc30gLz5cbiAgICA8L0RyYXdlcj5cbiAgKVxufVxuXG5leHBvcnQgY29uc3QgdXNlTGlzdERyYXdlcjogVXNlTGlzdERyYXdlciA9ICh7XG4gIGNvbGxlY3Rpb25TbHVnczogY29sbGVjdGlvblNsdWdzRnJvbVByb3BzLFxuICBmaWx0ZXJPcHRpb25zLFxuICBzZWxlY3RlZENvbGxlY3Rpb24sXG4gIHVwbG9hZHMsXG59KSA9PiB7XG4gIGNvbnN0IHsgY29sbGVjdGlvbnMgfSA9IHVzZUNvbmZpZygpXG4gIGNvbnN0IGRyYXdlckRlcHRoID0gdXNlRWRpdERlcHRoKClcbiAgY29uc3QgdXVpZCA9IHVzZUlkKClcbiAgY29uc3QgeyBjbG9zZU1vZGFsLCBtb2RhbFN0YXRlLCBvcGVuTW9kYWwsIHRvZ2dsZU1vZGFsIH0gPSB1c2VNb2RhbCgpXG4gIGNvbnN0IFtpc09wZW4sIHNldElzT3Blbl0gPSB1c2VTdGF0ZShmYWxzZSlcbiAgY29uc3QgW2NvbGxlY3Rpb25TbHVncywgc2V0Q29sbGVjdGlvblNsdWdzXSA9IHVzZVN0YXRlKGNvbGxlY3Rpb25TbHVnc0Zyb21Qcm9wcylcblxuICBjb25zdCBkcmF3ZXJTbHVnID0gZm9ybWF0TGlzdERyYXdlclNsdWcoe1xuICAgIGRlcHRoOiBkcmF3ZXJEZXB0aCxcbiAgICB1dWlkLFxuICB9KVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0SXNPcGVuKEJvb2xlYW4obW9kYWxTdGF0ZVtkcmF3ZXJTbHVnXT8uaXNPcGVuKSlcbiAgfSwgW21vZGFsU3RhdGUsIGRyYXdlclNsdWddKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFjb2xsZWN0aW9uU2x1Z3MgfHwgY29sbGVjdGlvblNsdWdzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgY29uc3QgZmlsdGVyZWRDb2xsZWN0aW9uU2x1Z3MgPSBjb2xsZWN0aW9ucy5maWx0ZXIoKHsgdXBsb2FkIH0pID0+IHtcbiAgICAgICAgaWYgKHVwbG9hZHMpIHtcbiAgICAgICAgICByZXR1cm4gQm9vbGVhbih1cGxvYWQpID09PSB0cnVlXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH0pXG5cbiAgICAgIHNldENvbGxlY3Rpb25TbHVncyhmaWx0ZXJlZENvbGxlY3Rpb25TbHVncy5tYXAoKHsgc2x1ZyB9KSA9PiBzbHVnKSlcbiAgICB9XG4gIH0sIFtjb2xsZWN0aW9uU2x1Z3MsIHVwbG9hZHMsIGNvbGxlY3Rpb25zXSlcbiAgY29uc3QgdG9nZ2xlRHJhd2VyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHRvZ2dsZU1vZGFsKGRyYXdlclNsdWcpXG4gIH0sIFt0b2dnbGVNb2RhbCwgZHJhd2VyU2x1Z10pXG5cbiAgY29uc3QgY2xvc2VEcmF3ZXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgY2xvc2VNb2RhbChkcmF3ZXJTbHVnKVxuICB9LCBbZHJhd2VyU2x1ZywgY2xvc2VNb2RhbF0pXG5cbiAgY29uc3Qgb3BlbkRyYXdlciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBvcGVuTW9kYWwoZHJhd2VyU2x1ZylcbiAgfSwgW2RyYXdlclNsdWcsIG9wZW5Nb2RhbF0pXG5cbiAgY29uc3QgTWVtb2l6ZWREcmF3ZXIgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gKHByb3BzKSA9PiAoXG4gICAgICA8TGlzdERyYXdlclxuICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgIGNsb3NlRHJhd2VyPXtjbG9zZURyYXdlcn1cbiAgICAgICAgY29sbGVjdGlvblNsdWdzPXtjb2xsZWN0aW9uU2x1Z3N9XG4gICAgICAgIGRyYXdlclNsdWc9e2RyYXdlclNsdWd9XG4gICAgICAgIGZpbHRlck9wdGlvbnM9e2ZpbHRlck9wdGlvbnN9XG4gICAgICAgIGtleT17ZHJhd2VyU2x1Z31cbiAgICAgICAgc2VsZWN0ZWRDb2xsZWN0aW9uPXtzZWxlY3RlZENvbGxlY3Rpb259XG4gICAgICAgIHVwbG9hZHM9e3VwbG9hZHN9XG4gICAgICAvPlxuICAgIClcbiAgfSwgW2RyYXdlclNsdWcsIGNvbGxlY3Rpb25TbHVncywgdXBsb2FkcywgY2xvc2VEcmF3ZXIsIHNlbGVjdGVkQ29sbGVjdGlvbiwgZmlsdGVyT3B0aW9uc10pXG5cbiAgY29uc3QgTWVtb2l6ZWREcmF3ZXJUb2dnbGVyID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIChwcm9wcykgPT4gPExpc3REcmF3ZXJUb2dnbGVyIHsuLi5wcm9wc30gZHJhd2VyU2x1Zz17ZHJhd2VyU2x1Z30gLz5cbiAgfSwgW2RyYXdlclNsdWddKVxuXG4gIGNvbnN0IE1lbW9pemVkRHJhd2VyU3RhdGUgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICBjbG9zZURyYXdlcixcbiAgICAgIGRyYXdlckRlcHRoLFxuICAgICAgZHJhd2VyU2x1ZyxcbiAgICAgIGlzRHJhd2VyT3BlbjogaXNPcGVuLFxuICAgICAgb3BlbkRyYXdlcixcbiAgICAgIHRvZ2dsZURyYXdlcixcbiAgICB9KSxcbiAgICBbZHJhd2VyRGVwdGgsIGRyYXdlclNsdWcsIGlzT3BlbiwgdG9nZ2xlRHJhd2VyLCBjbG9zZURyYXdlciwgb3BlbkRyYXdlcl0sXG4gIClcblxuICByZXR1cm4gW01lbW9pemVkRHJhd2VyLCBNZW1vaXplZERyYXdlclRvZ2dsZXIsIE1lbW9pemVkRHJhd2VyU3RhdGVdXG59XG4iXSwibmFtZXMiOlsiTGlzdERyYXdlciIsIkxpc3REcmF3ZXJUb2dnbGVyIiwiYmFzZUNsYXNzIiwiZm9ybWF0TGlzdERyYXdlclNsdWciLCJ1c2VMaXN0RHJhd2VyIiwiZGVwdGgiLCJ1dWlkIiwiY2hpbGRyZW4iLCJjbGFzc05hbWUiLCJkaXNhYmxlZCIsImRyYXdlclNsdWciLCJyZXN0IiwiRHJhd2VyVG9nZ2xlciIsImZpbHRlciIsIkJvb2xlYW4iLCJqb2luIiwic2x1ZyIsInByb3BzIiwiRHJhd2VyIiwiZ3V0dGVyIiwiaGVhZGVyIiwiTGlzdERyYXdlckNvbnRlbnQiLCJjb2xsZWN0aW9uU2x1Z3MiLCJjb2xsZWN0aW9uU2x1Z3NGcm9tUHJvcHMiLCJmaWx0ZXJPcHRpb25zIiwic2VsZWN0ZWRDb2xsZWN0aW9uIiwidXBsb2FkcyIsImNvbGxlY3Rpb25zIiwidXNlQ29uZmlnIiwiZHJhd2VyRGVwdGgiLCJ1c2VFZGl0RGVwdGgiLCJ1c2VJZCIsImNsb3NlTW9kYWwiLCJtb2RhbFN0YXRlIiwib3Blbk1vZGFsIiwidG9nZ2xlTW9kYWwiLCJ1c2VNb2RhbCIsImlzT3BlbiIsInNldElzT3BlbiIsInVzZVN0YXRlIiwic2V0Q29sbGVjdGlvblNsdWdzIiwidXNlRWZmZWN0IiwibGVuZ3RoIiwiZmlsdGVyZWRDb2xsZWN0aW9uU2x1Z3MiLCJ1cGxvYWQiLCJtYXAiLCJ0b2dnbGVEcmF3ZXIiLCJ1c2VDYWxsYmFjayIsImNsb3NlRHJhd2VyIiwib3BlbkRyYXdlciIsIk1lbW9pemVkRHJhd2VyIiwidXNlTWVtbyIsImtleSIsIk1lbW9pemVkRHJh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