@oruga-ui/oruga-next
Version:
UI components for Vue.js and CSS framework agnostic
53 lines (52 loc) • 1.95 kB
JavaScript
/*! Oruga v0.11.0 | MIT License | github.com/oruga-ui/oruga */
import { inject, computed, provide } from "vue";
import { c as getOption } from "./config-Dl7tu_Ly.mjs";
const $FieldKey = Symbol("FielData");
function provideField(data) {
provide($FieldKey, data);
}
function injectField() {
const parentField = inject(
$FieldKey,
computed(() => void 0)
);
const statusMessage = computed(() => {
var _a, _b, _c, _d;
if (Array.isArray((_a = parentField == null ? void 0 : parentField.value) == null ? void 0 : _a.message) && !((_b = parentField == null ? void 0 : parentField.value) == null ? void 0 : _b.message.length) || !Array.isArray((_c = parentField == null ? void 0 : parentField.value) == null ? void 0 : _c.message) && !((_d = parentField == null ? void 0 : parentField.value) == null ? void 0 : _d.message))
return void 0;
return parentField == null ? void 0 : parentField.value.message;
});
const statusVariant = computed(() => {
var _a;
if (!((_a = parentField == null ? void 0 : parentField.value) == null ? void 0 : _a.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 = getOption("statusVariantIcon", {
success: "check",
danger: "alert-circle",
info: "information",
warning: "alert"
});
const statusVariantIcon = computed(() => {
if (!statusVariant.value || !statusVariantIconConfig) return "";
return statusVariantIconConfig[statusVariant.value] || "";
});
return {
parentField,
statusVariant,
statusVariantIcon,
statusMessage
};
}
export {
injectField as i,
provideField as p
};
//# sourceMappingURL=fieldInjection-DJwnFcxS.mjs.map