balm-ui
Version:
A modular and customizable UI library based on Material Design and Vue 3
1 lines • 5 kB
JavaScript
!function(e,t){"object"===typeof exports&&"object"===typeof module?module.exports=t(require("vue")):"function"===typeof define&&define.amd?define("UiForm",["vue"],t):"object"===typeof exports?exports.UiForm=t(require("vue")):e.UiForm=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 o(e,t){return!1!==t.clone&&t.isMergeableObject(e)?c((r=e,Array.isArray(r)?[]:{}),e,t):e;var r}function n(e,t,r){return e.concat(t).map((function(e){return o(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 l(e,t,r){var n={};return r.isMergeableObject(e)&&a(e).forEach((function(t){n[t]=o(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])?n[a]=function(e,t){if(!t.customMerge)return c;var r=t.customMerge(e);return"function"===typeof r?r:c}(a,r)(e[a],t[a],r):n[a]=o(t[a],r))})),n}function c(e,r,a){(a=a||{}).arrayMerge=a.arrayMerge||n,a.isMergeableObject=a.isMergeableObject||t,a.cloneUnlessOtherwiseSpecified=o;var i=Array.isArray(r);return i===Array.isArray(e)?i?a.arrayMerge(e,r,a):l(e,r,a):o(r,a)}c.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,r){return c(e,r,t)}),{})};var s=c;e.exports=s},154:function(t){t.exports=e}},r={};function o(e){var n=r[e];if(void 0!==n)return n.exports;var a=r[e]={exports:{}};return t[e](a,a.exports,o),a.exports}o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,{a:t}),t},o.d=function(e,t){for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)};var n={};o.d(n,{default:function(){return g}});var a=o(744),i=o.n(a);const l=/(?:^\[object\s(.*?)\]$)/;var c=e=>Object.prototype.toString.call(e).replace(l,"$1").toLowerCase();const s=e=>{let{componentProps:t,propName:r,props:o}=e,n=o[r];if("object"===c(n)){const e=t[r].default;t[r].default=()=>i()(e,n)}else Array.isArray(n)?t[r].default=()=>n:t[r].default=n},p=e=>{let{componentMixins:t,propName:r,props:o}=e;if(t.length){let e=t.length;for(;e--;)if(t[e].props&&void 0!==t[e].props[r]){s({componentProps:t[e].props,propName:r,props:o});break}}};var u=(e,t)=>{for(const r of Object.keys(t))e.props?void 0===e.props[r]?p({componentMixins:e.mixins,propName:r,props:t}):s({componentProps:e.props,propName:r,props:t}):p({componentMixins:e.mixins,propName:r,props:t})};var f=e=>{const t={install(t){u(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}),t.component(e.name,e)}};return t},m=o(154);var b=(e,t,r)=>e[r]||e.type===t[r]||e.type===r;const d={TYPES:{horizontal:0,vertical:1},cssClasses:{item:"mdc-form__item",subitem:"mdc-form__subitem",actions:"mdc-form__actions"}},y={name:"UiForm",customOptions:{UI_FORM:d}};var g=f(Object.assign(y,{props:{type:{type:[String,Number],default:0},nowrap:{type:Boolean,default:!1},labelTopAligned:{type:Boolean,default:!1},labelRightAligned:{type:Boolean,default:!1},labelTopRightAligned:{type:Boolean,default:!1},itemMarginBottom:{type:[String,Number],default:0},actionAlign:{type:String,default:"left"},labelWidth:{type:[String,Number],default:0},labelMarginRight:{type:[String,Number],default:0},labelMarginBottom:{type:[String,Number],default:0}},setup(e){const t=e,r=(0,m.computed)((()=>b(t,d.TYPES,"vertical")||"|"===t.type)),o=(0,m.computed)((()=>({"mdc-form":!0,"mdc-form--horizontal":!r.value,"mdc-form--vertical":r.value,"mdc-form--nowrap":t.nowrap,"mdc-form--label-top-aligned":t.labelTopAligned,"mdc-form--label-right-aligned":t.labelRightAligned,"mdc-form--label-top-right-aligned":t.labelTopRightAligned,"mdc-form--actions-center":"center"===t.actionAlign,"mdc-form--actions-right":"right"===t.actionAlign}))),n=(0,m.ref)(null);return(0,m.onBeforeMount)((()=>{r.value?(t.labelWidth||t.labelMarginRight)&&console.warn("[UiForm]","The 'labelWidth'/'labelMarginRight' prop only takes effect in the horizontal type form"):t.labelMarginBottom&&console.warn("[UiForm]","The 'labelMarginBottom' prop only takes effect in the vertical type form")})),(e,t)=>((0,m.openBlock)(),(0,m.createElementBlock)("div",{ref_key:"form",ref:n,class:(0,m.normalizeClass)(o.value)},[(0,m.renderSlot)(e.$slots,"default",{itemClass:d.cssClasses.item,subitemClass:d.cssClasses.subitem,actionClass:d.cssClasses.actions})],2))}}));return n=n.default}()}));