UNPKG

@userfrosting/sprinkle-core

Version:
69 lines (68 loc) 2.31 kB
import { ref as l, watchEffect as S } from "vue"; import { a as f, u as A } from "./useAlertsStore-Ca6nXz8C.js"; import u from "axios"; import "vue-router"; import { S as b } from "./severity-DwLpzIij.js"; const K = () => { const e = l(h()), n = l(y()), a = l(d(e.value)), s = l(d(n.value)); function i() { u.defaults.headers.post[e.value] = a.value, u.defaults.headers.post[n.value] = s.value, u.defaults.headers.put[e.value] = a.value, u.defaults.headers.put[n.value] = s.value, u.defaults.headers.delete[e.value] = a.value, u.defaults.headers.delete[n.value] = s.value, u.defaults.headers.patch[e.value] = a.value, u.defaults.headers.patch[n.value] = s.value; } async function g() { const t = await u.get("/api/csrf"); v(t.headers); } function h() { return f().get("csrf.name", "csrf") + "_name"; } function y() { return f().get("csrf.name", "csrf") + "_value"; } function d(t) { var o; return ((o = document.querySelector("meta[name='" + t + "']")) == null ? void 0 : o.getAttribute("content")) ?? ""; } function m(t, o) { const c = document.querySelector("meta[name='" + t + "']"); if (c) c.setAttribute("content", o); else { const r = document.createElement("meta"); r.setAttribute("name", t), r.setAttribute("content", o), document.head.appendChild(r); } } function v(t) { const o = f(), c = o.get("csrf.name", "csrf") + "-name", r = o.get("csrf.name", "csrf") + "-value"; c in t && (a.value = t[c]), r in t && (s.value = t[r]); } function p() { return f().get("csrf.enabled", !0); } return S(() => { p() && a.value !== "" && s.value !== "" && (m(e.value, a.value), m(n.value, s.value), i()); }), { key_name: e, key_value: n, name: a, token: s, isEnabled: p, updateFromHeaders: v, fetchCsrfToken: g }; }, _ = () => { u.interceptors.response.use( (e) => e, (e) => { var n, a, s; return e.response.status !== 401 && A().push({ title: e.response.data.title ?? ((n = e.response) == null ? void 0 : n.statusText), description: ((s = (a = e.response) == null ? void 0 : a.data) == null ? void 0 : s.description) ?? e.message, style: b.Danger }), Promise.reject(e); } ); }; export { K as a, _ as u };