balm-ui
Version:
A modular and customizable UI library based on Material Design and Vue 3
1 lines • 4.47 kB
JavaScript
!function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t(require("vue")):"function"===typeof define&&define.amd?define("UiNavigationBar",["vue"],t):"object"===typeof exports?exports.UiNavigationBar=t(require("vue")):e.UiNavigationBar=t(e.Vue)}("undefined"!==typeof self?self:this,(function(e){return function(){"use strict";var t={744:function(e){var t=function(e){return function(e){return!!e&&"object"===typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return"[object RegExp]"===t||"[object Date]"===t||function(e){return e.$$typeof===r}(e)}(e)};var r="function"===typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(e,t){return!1!==t.clone&&t.isMergeableObject(e)?s((r=e,Array.isArray(r)?[]:{}),e,t):e;var r}function o(e,t,r){return e.concat(t).map((function(e){return n(e,r)}))}function a(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return Object.propertyIsEnumerable.call(e,t)})):[]}(e))}function i(e,t){try{return t in e}catch(r){return!1}}function c(e,t,r){var o={};return r.isMergeableObject(e)&&a(e).forEach((function(t){o[t]=n(e[t],r)})),a(t).forEach((function(a){(function(e,t){return i(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))})(e,a)||(i(e,a)&&r.isMergeableObject(t[a])?o[a]=function(e,t){if(!t.customMerge)return s;var r=t.customMerge(e);return"function"===typeof r?r:s}(a,r)(e[a],t[a],r):o[a]=n(t[a],r))})),o}function s(e,r,a){(a=a||{}).arrayMerge=a.arrayMerge||o,a.isMergeableObject=a.isMergeableObject||t,a.cloneUnlessOtherwiseSpecified=n;var i=Array.isArray(r);return i===Array.isArray(e)?i?a.arrayMerge(e,r,a):c(e,r,a):n(r,a)}s.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,r){return s(e,r,t)}),{})};var u=s;e.exports=u},154:function(t){t.exports=e}},r={};function n(e){var o=r[e];if(void 0!==o)return o.exports;var a=r[e]={exports:{}};return t[e](a,a.exports,n),a.exports}n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,{a:t}),t},n.d=function(e,t){for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)};var o={};n.d(o,{default:function(){return g}});var a=n(744),i=n.n(a);const c=/(?:^\[object\s(.*?)\]$)/;var s=e=>Object.prototype.toString.call(e).replace(c,"$1").toLowerCase();const u=e=>{let{componentProps:t,propName:r,props:n}=e,o=n[r];if("object"===s(o)){const e=t[r].default;t[r].default=()=>i()(e,o)}else Array.isArray(o)?t[r].default=()=>o:t[r].default=o},p=e=>{let{componentMixins:t,propName:r,props:n}=e;if(t.length){let e=t.length;for(;e--;)if(t[e].props&&void 0!==t[e].props[r]){u({componentProps:t[e].props,propName:r,props:n});break}}};var l=(e,t)=>{for(const r of Object.keys(t))e.props?void 0===e.props[r]?p({componentMixins:e.mixins,propName:r,props:t}):u({componentProps:e.props,propName:r,props:t}):p({componentMixins:e.mixins,propName:r,props:t})};var f=e=>{const t={install(t){l(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}),t.component(e.name,e)}};return t},d=n(154);const m={class:"mdc-navigation-bar__destinations"},b="UiNavigationBar",y={FIXED_ADJUST:{STANDARD:"mdc-navigation-bar--fixed-adjust",STACKED:"mdc-navigation-bar--stacked-fixed-adjust"}},v={name:b,customOptions:{name:b,UI_NAVIGATION_BAR:y}};var g=f(Object.assign(v,{props:{contentSelector:{type:String,required:!0},stacked:{type:Boolean,default:!1},min:{type:Boolean,default:!1},max:{type:Boolean,default:!1}},setup(e){const t=e,r=(0,d.reactive)({destinations:4}),n=(0,d.computed)((()=>{let e=["mdc-navigation-bar",{"mdc-navigation-bar--stacked":t.stacked}];const n=Math.floor(100/r.destinations);return e.push(`mdc-navigation-bar--dest-${n}`),e}));return(0,d.onBeforeMount)((()=>{t.contentSelector||console.error(`[${b}]: The 'contentSelector' prop is required`),t.min?r.destinations=3:t.max&&(r.destinations=5)})),(0,d.onMounted)((()=>function(){const e=document.querySelector(t.contentSelector),r=document.createElement("div");r.classList.add(t.stacked?y.FIXED_ADJUST.STACKED:y.FIXED_ADJUST.STANDARD),e.appendChild(r)}())),(e,t)=>((0,d.openBlock)(),(0,d.createElementBlock)("div",{class:(0,d.normalizeClass)(n.value)},[(0,d.createElementVNode)("div",m,[(0,d.renderSlot)(e.$slots,"default")])],2))}}));return o=o.default}()}));