vxe-pc-ui
Version:
A vue based PC component library
1 lines • 2 kB
JavaScript
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.VxeDrawer=exports.DrawerController=exports.Drawer=void 0;var _core=require("@vxe-ui/core"),_xeUtils=_interopRequireDefault(require("xe-utils")),_drawer=_interopRequireWildcard(require("./src/drawer")),_dynamics=require("../dynamics");function _interopRequireWildcard(e,r){var o,i;return"function"==typeof WeakMap&&(o=new WeakMap,i=new WeakMap),(_interopRequireWildcard=function(r,e){if(!e&&r&&r.__esModule)return r;var t,a,n={__proto__:null,default:r};if(null!==r&&("object"==typeof r||"function"==typeof r)){if(t=e?i:o){if(t.has(r))return t.get(r);t.set(r,n)}for(let e in r)"default"!==e&&{}.hasOwnProperty.call(r,e)&&((a=(t=Object.defineProperty)&&Object.getOwnPropertyDescriptor(r,e))&&(a.get||a.set)?t(n,e,a):n[e]=r[e])}return n})(e,r)}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function handleDrawer(r){return(0,_dynamics.checkDynamic)(),new Promise(n=>{if(r&&r.id&&_drawer.allActiveDrawers.some(e=>e.props.id===r.id))n("exist");else{let t=r.onHide,a=Object.assign(r,{key:_xeUtils.default.uniqueId(),modelValue:!0,onHide(e){var r=_dynamics.dynamicStore.drawers;t&&t(e),_dynamics.dynamicStore.drawers=r.filter(e=>e.key!==a.key),n(e.type)}});_dynamics.dynamicStore.drawers.push(a)}})}function getDrawer(r){return _xeUtils.default.find(_drawer.allActiveDrawers,e=>e.props.id===r)}function closeDrawer(e){e=e?[getDrawer(e)]:_drawer.allActiveDrawers;let r=[];return e.forEach(e=>{e&&r.push(e.close())}),Promise.all(r)}function openDrawer(e){return handleDrawer(Object.assign({},e))}let DrawerController=exports.DrawerController={get:getDrawer,close:closeDrawer,open:openDrawer},VxeDrawer=exports.VxeDrawer=Object.assign(_drawer.default,{install:function(e){e.component(_drawer.default.name,_drawer.default)}}),Drawer=(_core.VxeUI.drawer=DrawerController,_dynamics.dynamicApp.use(VxeDrawer),_core.VxeUI.component(_drawer.default),exports.Drawer=VxeDrawer);var _default=exports.default=VxeDrawer;