UNPKG

@opentiny/vue-renderless

Version:

An enterprise-class UI component library, support both Vue.js 2 and Vue.js 3, as well as PC and mobile.

39 lines (38 loc) 1.17 kB
import "../chunk-G2ADBYYC.js"; import { initEspace } from "@opentiny/utils"; import { getUserHref, getUserTitle, doUserAction, initEspaceLink, openEspace, testUID, soundEspace } from "./index"; const api = [ "getUserHref", "getUserTitle", "doUserAction", "initEspaceLink", "openEspace", "testUID", "soundEspace" ]; const renderless = (props, { reactive }, { service }) => { const api2 = {}; const { setting = {} } = service || {}; const { widgets = {} } = setting; const eSpaceCtrlDisabled = widgets.ESpaceCtrl && !widgets.ESpaceCtrl.autoLink; const eSpaceCtrl = eSpaceCtrlDisabled ? {} : initEspace(); const state = reactive({ initialized: false, dataItem: null }); Object.assign(api2, { state, testUID, getUserTitle, getUserHref: getUserHref({ api: api2, props }), initEspaceLink: initEspaceLink({ api: api2, props, state, eSpaceCtrl, eSpaceCtrlDisabled }), doUserAction: doUserAction({ api: api2, props, state, eSpaceCtrl }), openEspace: openEspace({ api: api2, state, eSpaceCtrl }), soundEspace: soundEspace({ api: api2, state, eSpaceCtrl }) }); return api2; }; export { api, renderless };