UNPKG

dbl-components

Version:

Framework based on bootstrap 5

2 lines 6.34 kB
function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)}return t}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){_defineProperty(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},_typeof(o)}function _classCallCheck(a,n){if(!(a instanceof n))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,_toPropertyKey(o.key),o)}}function _createClass(e,r,t){return r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function _callSuper(t,o,e){return o=_getPrototypeOf(o),_possibleConstructorReturn(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],_getPrototypeOf(t).constructor):o.apply(t,e))}function _possibleConstructorReturn(t,e){if(e&&("object"==_typeof(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(t)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(_isNativeReflectConstruct=function _isNativeReflectConstruct(){return!!t})()}function _getPrototypeOf(t){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},_getPrototypeOf(t)}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&_setPrototypeOf(t,e)}function _setPrototypeOf(t,e){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},_setPrototypeOf(t,e)}function _defineProperty(e,r,t){return(r=_toPropertyKey(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+""}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(t)}import Component,{nameSuffixes}from"../../complex-component";var schema={view:{link:{name:"$nameLink",component:"NavLink",classes:"$classesLink",to:"$data/to",exact:"$data/exact",activeClassName:"$data/activeClassName",content:{icon:{name:"$nameIcon",component:"Icons",icon:"$data/icon",classes:"$classesIcon",style:{width:"$data/iconSize",height:"$data/iconSize"}},label:{name:"$nameLabel",classes:"$classesLabel",tag:"span",content:"$dataLabel"}}},badge:{name:"$nameBadge",tag:"small",classes:"$classesBadge",content:"$data/badge",style:{pointerEvents:"none"}}},definitions:{}};var MenuItem=/*#__PURE__*/function(_Component){function MenuItem(){var _this;_classCallCheck(this,MenuItem);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key]}_this=_callSuper(this,MenuItem,[].concat(args));_defineProperty(_this,"classes","position-relative");return _this}_inherits(MenuItem,_Component);return _createClass(MenuItem,[{key:"mutations",value:function mutations(sn,s){var name=this.props.name;switch(sn){case name+"Badge":var classes=[this.props.rules.$classesBadge[1][0],this.props.classes.badge,this.props.activeLabel?" top-0 end-0":" top-0 start-0"].flat().join(" ");var badgeSize=!this.props.activeLabel?.6*this.props.iconSize:22;return{active:!!this.props.badge,content:this.props.badge,classes:classes,style:{zIndex:1,height:badgeSize,width:badgeSize,marginLeft:!this.props.activeLabel?this.props.iconSize*.75:0,marginTop:!this.props.activeLabel?this.props.iconSize:(this.props.iconSize+badgeSize)*.41}};case name+"Icon":return typeof this.props.icon==="string"?{icon:this.props.icon,inline:this.props.iconInline,style:{pointerEvents:"none",width:this.props.iconSize,height:this.props.iconSize}}:_typeof(this.props.icon)==="object"?this.props.icon:{active:false};case name+"Label":return{active:this.props.activeLabel,content:this.props.label};case name+"Link":return{component:!this.props.to?"Component":"NavLink",tag:!this.props.to?"span":this.props.href?"a":undefined,_props:this.props.href?{target:"_blank",href:this.props.href}:undefined};default:break}return this.state[sn]}}])}(Component);_defineProperty(MenuItem,"jsClass","MenuItem");_defineProperty(MenuItem,"defaultProps",_objectSpread(_objectSpread({},Component.defaultProps),{},{schema:schema,exact:false,activeClassName:"active",icon:"circle",iconSize:40,activeLabel:true,definitions:{},iconInline:true,classes:{".":"",link:"d-block p-2",badge:"bg-danger border-light",icon:"align-middle",label:""},rules:_objectSpread(_objectSpread({},nameSuffixes(["Link","Icon","Label","Badge"])),{},{"$classesLink":["join",["im-link","$data/classes/link"]," "],"$classesIcon":["join",["me-2","$data/classes/icon"]," "],"$classesLabel":["join",["im-label","$data/classes/label"]," "],"$classesBadge":["join",["position-absolute translate-middle-y rounded-pill badge border d-flex justify-content-center align-items-center","$data/classes/badge"]," "],"$dataLabel":["ignore","$data/label"]})}));export{MenuItem as default}; //# sourceMappingURL=menu-item.js.map