UNPKG

@aplus-frontend/ui

Version:

2 lines (1 loc) 1.05 kB
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue"),A=require("lodash-unified"),r=Symbol("ag-grid-provider-key");function h(n){const t=o.ref(),c=o.ref(),s=o.ref(0),a=e=>{t.value=e},u=e=>{s.value=e},d=()=>t.value,i=(e="reset")=>{t.value&&e in t.value&&t.value[e]()},v=e=>{t.value?.rowSelection.setSelectedRowKeys(e)},S=()=>A.cloneDeep(t.value?.rowSelection.selectedRows.value),g=()=>t.value?.rowSelection.clearAll(),w=e=>t.value?.rowSelection.unSelectRows([e]);o.watch(t,e=>{e&&n?.onMounted?.()}),o.watch(()=>t.value?.rowSelection.selectedRows.value,e=>{c.value=e,n?.onSelectedRows?.(e)});const l={setInstance:a,refresh:i,getInstance:d,setSelectedRowKeys:v,getSelectedRows:S,clearAllSelected:g,removeSelected:w,setDataSourceLength:u},f=o.defineComponent({setup(e,{slots:R}){return o.provide(r,{...l,selectedRows:o.toRef(()=>c.value),dataSourceLength:o.toRef(()=>s.value)}),()=>R.default?.()}});return[l,f]}function I(){return o.inject(r)}exports.useAgGridInstance=h;exports.useAgGridModalInject=I;