UNPKG

@scalar/api-client

Version:

the open source API testing client

40 lines (39 loc) 962 B
import { serverSchema as o } from "@scalar/oas-utils/entities/spec"; import { LS_KEYS as u } from "@scalar/helpers/object/local-storage"; import { mutationFactory as a } from "@scalar/object-utils/mutator-record"; import { reactive as m } from "vue"; function R(s) { const r = m({}), v = a(r, m({}), s && u.SERVER); return { servers: r, serverMutators: v }; } function h({ serverMutators: s, collections: r, collectionMutators: v, requests: f, requestMutators: d }) { return { addServer: (S, e) => { const t = o.parse(S); return r[e] ? v.edit(e, "servers", [ ...r[e].servers, t.uid ]) : f[e] && d.edit(e, "servers", [...f[e].servers, t.uid]), s.add(t), t; }, deleteServer: (S, e) => { r[e] && (v.edit( e, "servers", r[e].servers.filter((t) => t !== S) ), s.delete(S)); } }; } export { R as createStoreServers, h as extendedServerDataFactory };