UNPKG

@oruga-ui/oruga-next

Version:

UI components for Vue.js and CSS framework agnostic

50 lines (49 loc) 1.62 kB
"use strict"; /*! Oruga v0.11.4 | MIT License | github.com/oruga-ui/oruga */ const vue = require("vue"); const config = require("./config-D4SNSQp_.cjs"); const $FieldKey = Symbol("FielData"); function provideField(data) { vue.provide($FieldKey, data); } function injectField() { const parentField = vue.inject( $FieldKey, vue.computed(() => void 0) ); const statusMessage = vue.computed(() => { if (Array.isArray(parentField?.value?.message) && !parentField?.value?.message.length || !Array.isArray(parentField?.value?.message) && !parentField?.value?.message) return void 0; return parentField?.value.message; }); const statusVariant = vue.computed(() => { if (!parentField?.value?.variant) return void 0; if (typeof parentField.value.variant === "string") return parentField.value.variant; if (Array.isArray(parentField.value.variant)) { for (const key in parentField.value.variant) { if (parentField.value.variant[key]) return key; } } return void 0; }); const statusVariantIconConfig = config.getOption("statusVariantIcon", { success: "check", danger: "alert-circle", info: "information", warning: "alert" }); const statusVariantIcon = vue.computed(() => { if (!statusVariant.value || !statusVariantIconConfig) return ""; return statusVariantIconConfig[statusVariant.value] || ""; }); return { parentField, statusVariant, statusVariantIcon, statusMessage }; } exports.injectField = injectField; exports.provideField = provideField; //# sourceMappingURL=fieldInjection-D1hnNd0L.cjs.map