UNPKG

various-ui

Version:

This is a test version of the Vue 3 component library

78 lines (73 loc) 2.62 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); var index = require('./index.js'); var composable = require('./src/composable.js'); const _hoisted_1 = { class: "ui-form-container" }; const _hoisted_2 = { key: 0, class: "ui-form-message" }; const __default__ = vue.defineComponent({ name: "UiFormItem" }); var _sfc_main = /* @__PURE__ */ vue.defineComponent({ ...__default__, props: index.UiFormItemPropsOption, setup(__props, { expose: __expose }) { const define = __props; const { refs, rules, methods, computeds, emitter } = composable.useComposable(define); const { show, hidden, validator } = methods; const { visible, content, verifyTimer } = refs; const { style, className } = computeds; if (rules && define.prop && rules[define.prop]) { emitter == null ? void 0 : emitter.on(define.prop, async (type) => methods.validator(type)); emitter == null ? void 0 : emitter.on(`trigger:${define.prop}`, (error) => methods.show(error.message, error.type || "error")); emitter == null ? void 0 : emitter.on(`reset:${define.prop}`, () => methods.hidden()); } vue.onBeforeUnmount(() => { verifyTimer.value && clearTimeout(verifyTimer.value); }); ; __expose({ show, hidden, validator }); return (_ctx, _cache) => { return vue.openBlock(), vue.createElementBlock( "div", { class: vue.normalizeClass(["ui-form-item", vue.unref(className)]) }, [ _ctx.label ? (vue.openBlock(), vue.createElementBlock( "div", { key: 0, class: "ui-form-name", style: vue.normalizeStyle(vue.unref(style)) }, vue.toDisplayString(_ctx.label), 5 /* TEXT, STYLE */ )) : vue.createCommentVNode("v-if", true), vue.createElementVNode("div", _hoisted_1, [ vue.renderSlot(_ctx.$slots, "default"), vue.createVNode(vue.Transition, null, { default: vue.withCtx(() => [ vue.unref(visible) ? (vue.openBlock(), vue.createElementBlock( "div", _hoisted_2, vue.toDisplayString(vue.unref(content)), 1 /* TEXT */ )) : vue.createCommentVNode("v-if", true) ]), _: 1 /* STABLE */ }) ]) ], 2 /* CLASS */ ); }; } }); exports.default = _sfc_main; //# sourceMappingURL=index.vue2.js.map