datatables.net-vue3 2.1.1 → 2.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/datatables.net-vue3.js +1 -1
- package/dist/datatables.net-vue3.mjs +27 -26
- package/dist/datatables.net-vue3.umd.js +1 -1
- package/package.json +2 -2
- package/src/datatables.net-vue.vue +8 -2
- package/src/dtEvents.ts +47 -0
- package/src/index.ts +25 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const r=require("vue"),v=["childRow","column-sizing","column-visibility","destroy","draw","error","init","length","order","page","preDraw","preInit","preXhr","processing","requestChild","search","stateLoadParams","stateLoaded","stateSaveParams","xhr","autoFill","preAutoFill","buttons-action","buttons-processing","column-reorder","key","key-blur","key-focus","key-refocus","key-return-submit","responsive-display","responsive-resize","rowgroup-datasrc","pre-row-reorder","row-reorder","row-reordered","dtsb-inserted","deselect","select","select-blur","selectItems","selectStyle","user-select","stateRestore-change"];let
|
|
1
|
+
"use strict";const r=require("vue"),v=["childRow","column-sizing","column-visibility","destroy","draw","error","init","length","order","page","preDraw","preInit","preXhr","processing","requestChild","search","stateLoadParams","stateLoaded","stateSaveParams","xhr","autoFill","preAutoFill","buttons-action","buttons-processing","column-reorder","key","key-blur","key-focus","key-refocus","key-return-submit","responsive-display","responsive-resize","rowgroup-datasrc","pre-row-reorder","row-reorder","row-reordered","dtsb-inserted","deselect","select","select-blur","selectItems","selectStyle","user-select","stateRestore-change"];let c;const g={name:"Datatables.netVue",inheritAttrs:!1,use(o){c=o}},h=r.defineComponent({...g,props:{ajax:null,columns:null,data:null,options:null},emits:v,setup(o,{expose:d}){const s=o,f=r.ref(null),a=r.ref(),b=r.ref([]);r.watch(()=>s.data,e=>{var l,n,u,m;let t=(l=a.value)==null?void 0:l.data().toArray();for(let i of e)t!=null&&t.includes(i)||(n=a.value)==null||n.row.add(i);if(typeof t<"u")for(let i of t)e.includes(i)||(u=a.value)==null||u.row((k,y)=>y===i).remove();(m=a.value)==null||m.rows().invalidate().draw(!1),p(e)},{deep:!0}),r.onMounted(()=>{const e=r.getCurrentInstance();let t=s.options||{};if(s.data&&(t.data=s.data,p(t.data)),s.columns&&(t.columns=s.columns),s.ajax&&(t.ajax=s.ajax),!c)throw new Error("DataTables library not set. See https://datatables.net/tn/19 for details.");a.value=new c(r.unref(f),t);for(let l of v)a.value&&e&&a.value.on(l,function(){var n=Array.from(arguments),u=n.shift();n.unshift({event:u,dt:a}),n.unshift(l),e.emit.apply(e,n)})}),r.onBeforeUnmount(()=>{var e;(e=a.value)==null||e.destroy(!0)});function p(e){b.value=e.value?e.value.slice():e.slice()}return d({dt:a}),(e,t)=>t[0]||(r.setBlockTracking(-1),t[0]=r.createElementVNode("div",{class:"datatable"},[r.createElementVNode("table",r.mergeProps({ref_key:"table",ref:f},e.$attrs,{style:{width:"100%"}}),[r.renderSlot(e.$slots,"default")],16)]),r.setBlockTracking(1),t[0])}}),w=(()=>{const o=h;return o.install=d=>{d.component("Datatables.netVue",o)},o})();module.exports=w;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent as
|
|
1
|
+
import { defineComponent as g, ref as d, watch as k, onMounted as x, getCurrentInstance as D, unref as _, onBeforeUnmount as j, setBlockTracking as v, createElementVNode as b, mergeProps as A, renderSlot as S } from "vue";
|
|
2
2
|
const y = [
|
|
3
3
|
"childRow",
|
|
4
4
|
"column-sizing",
|
|
@@ -45,14 +45,14 @@ const y = [
|
|
|
45
45
|
"user-select",
|
|
46
46
|
"stateRestore-change"
|
|
47
47
|
];
|
|
48
|
-
let
|
|
48
|
+
let c;
|
|
49
49
|
const C = {
|
|
50
50
|
name: "Datatables.netVue",
|
|
51
51
|
inheritAttrs: !1,
|
|
52
52
|
use(s) {
|
|
53
|
-
|
|
53
|
+
c = s;
|
|
54
54
|
}
|
|
55
|
-
}, E = /* @__PURE__ */
|
|
55
|
+
}, E = /* @__PURE__ */ g({
|
|
56
56
|
...C,
|
|
57
57
|
props: {
|
|
58
58
|
ajax: null,
|
|
@@ -61,19 +61,19 @@ const C = {
|
|
|
61
61
|
options: null
|
|
62
62
|
},
|
|
63
63
|
emits: y,
|
|
64
|
-
setup(s, { expose:
|
|
65
|
-
const r = s,
|
|
64
|
+
setup(s, { expose: u }) {
|
|
65
|
+
const r = s, f = d(null), a = d(), h = d([]);
|
|
66
66
|
k(
|
|
67
67
|
() => r.data,
|
|
68
68
|
(e) => {
|
|
69
|
-
var
|
|
70
|
-
let t = (
|
|
71
|
-
for (let
|
|
72
|
-
t != null && t.includes(
|
|
69
|
+
var l, o, i, m;
|
|
70
|
+
let t = (l = a.value) == null ? void 0 : l.data().toArray();
|
|
71
|
+
for (let n of e)
|
|
72
|
+
t != null && t.includes(n) || (o = a.value) == null || o.row.add(n);
|
|
73
73
|
if (typeof t < "u")
|
|
74
|
-
for (let
|
|
75
|
-
e.includes(
|
|
76
|
-
(m = a.value) == null || m.rows().invalidate().draw(!1),
|
|
74
|
+
for (let n of t)
|
|
75
|
+
e.includes(n) || (i = a.value) == null || i.row((I, w) => w === n).remove();
|
|
76
|
+
(m = a.value) == null || m.rows().invalidate().draw(!1), p(e);
|
|
77
77
|
},
|
|
78
78
|
{
|
|
79
79
|
deep: !0
|
|
@@ -81,37 +81,38 @@ const C = {
|
|
|
81
81
|
), x(() => {
|
|
82
82
|
const e = D();
|
|
83
83
|
let t = r.options || {};
|
|
84
|
-
if (r.data && (t.data = r.data,
|
|
84
|
+
if (r.data && (t.data = r.data, p(t.data)), r.columns && (t.columns = r.columns), r.ajax && (t.ajax = r.ajax), !c)
|
|
85
85
|
throw new Error(
|
|
86
86
|
"DataTables library not set. See https://datatables.net/tn/19 for details."
|
|
87
87
|
);
|
|
88
|
-
a.value = new
|
|
89
|
-
for (let
|
|
90
|
-
a.value && e && a.value.on(
|
|
91
|
-
|
|
88
|
+
a.value = new c(_(f), t);
|
|
89
|
+
for (let l of y)
|
|
90
|
+
a.value && e && a.value.on(l, function() {
|
|
91
|
+
var o = Array.from(arguments), i = o.shift();
|
|
92
|
+
o.unshift({ event: i, dt: a }), o.unshift(l), e.emit.apply(e, o);
|
|
92
93
|
});
|
|
93
94
|
}), j(() => {
|
|
94
95
|
var e;
|
|
95
96
|
(e = a.value) == null || e.destroy(!0);
|
|
96
97
|
});
|
|
97
|
-
function
|
|
98
|
-
|
|
98
|
+
function p(e) {
|
|
99
|
+
h.value = e.value ? e.value.slice() : e.slice();
|
|
99
100
|
}
|
|
100
|
-
return
|
|
101
|
+
return u({
|
|
101
102
|
dt: a
|
|
102
103
|
}), (e, t) => t[0] || (v(-1), t[0] = b("div", { class: "datatable" }, [
|
|
103
|
-
b("table",
|
|
104
|
+
b("table", A({
|
|
104
105
|
ref_key: "table",
|
|
105
|
-
ref:
|
|
106
|
+
ref: f
|
|
106
107
|
}, e.$attrs, { style: { width: "100%" } }), [
|
|
107
|
-
|
|
108
|
+
S(e.$slots, "default")
|
|
108
109
|
], 16)
|
|
109
110
|
]), v(1), t[0]);
|
|
110
111
|
}
|
|
111
112
|
}), P = /* @__PURE__ */ (() => {
|
|
112
113
|
const s = E;
|
|
113
|
-
return s.install = (
|
|
114
|
-
|
|
114
|
+
return s.install = (u) => {
|
|
115
|
+
u.component("Datatables.netVue", s);
|
|
115
116
|
}, s;
|
|
116
117
|
})();
|
|
117
118
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(e,
|
|
1
|
+
(function(e,l){typeof exports=="object"&&typeof module<"u"?module.exports=l(require("vue")):typeof define=="function"&&define.amd?define(["vue"],l):(e=typeof globalThis<"u"?globalThis:e||self,e.datatables=e.datatables||{},e.datatables["net-vue3"]=l(e.Vue))})(this,function(e){"use strict";const l=["childRow","column-sizing","column-visibility","destroy","draw","error","init","length","order","page","preDraw","preInit","preXhr","processing","requestChild","search","stateLoadParams","stateLoaded","stateSaveParams","xhr","autoFill","preAutoFill","buttons-action","buttons-processing","column-reorder","key","key-blur","key-focus","key-refocus","key-return-submit","responsive-display","responsive-resize","rowgroup-datasrc","pre-row-reorder","row-reorder","row-reordered","dtsb-inserted","deselect","select","select-blur","selectItems","selectStyle","user-select","stateRestore-change"];let f;const y={name:"Datatables.netVue",inheritAttrs:!1,use(n){f=n}},h=e.defineComponent({...y,props:{ajax:null,columns:null,data:null,options:null},emits:l,setup(n,{expose:c}){const s=n,p=e.ref(null),r=e.ref(),w=e.ref([]);e.watch(()=>s.data,t=>{var i,o,u,b;let a=(i=r.value)==null?void 0:i.data().toArray();for(let d of t)a!=null&&a.includes(d)||(o=r.value)==null||o.row.add(d);if(typeof a<"u")for(let d of a)t.includes(d)||(u=r.value)==null||u.row((k,v)=>v===d).remove();(b=r.value)==null||b.rows().invalidate().draw(!1),m(t)},{deep:!0}),e.onMounted(()=>{const t=e.getCurrentInstance();let a=s.options||{};if(s.data&&(a.data=s.data,m(a.data)),s.columns&&(a.columns=s.columns),s.ajax&&(a.ajax=s.ajax),!f)throw new Error("DataTables library not set. See https://datatables.net/tn/19 for details.");r.value=new f(e.unref(p),a);for(let i of l)r.value&&t&&r.value.on(i,function(){var o=Array.from(arguments),u=o.shift();o.unshift({event:u,dt:r}),o.unshift(i),t.emit.apply(t,o)})}),e.onBeforeUnmount(()=>{var t;(t=r.value)==null||t.destroy(!0)});function m(t){w.value=t.value?t.value.slice():t.slice()}return c({dt:r}),(t,a)=>a[0]||(e.setBlockTracking(-1),a[0]=e.createElementVNode("div",{class:"datatable"},[e.createElementVNode("table",e.mergeProps({ref_key:"table",ref:p},t.$attrs,{style:{width:"100%"}}),[e.renderSlot(t.$slots,"default")],16)]),e.setBlockTracking(1),a[0])}});return(()=>{const n=h;return n.install=c=>{c.component("Datatables.netVue",n)},n})()});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "datatables.net-vue3",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.3",
|
|
4
4
|
"description": "Vue3 component for DataTables",
|
|
5
5
|
"main": "dist/datatables.net-vue3.umd.js",
|
|
6
6
|
"module": "dist/datatables.net-vue3.mjs",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"types": "dist/datatables.net-vue3.d.ts",
|
|
10
10
|
"files": [
|
|
11
11
|
"dist/*",
|
|
12
|
-
"src
|
|
12
|
+
"src/**/*"
|
|
13
13
|
],
|
|
14
14
|
"sideEffects": false,
|
|
15
15
|
"scripts": {
|
|
@@ -111,8 +111,14 @@ onMounted(() => {
|
|
|
111
111
|
// `on` method and then emit them to our Vue component
|
|
112
112
|
for (let eName of dtEvents) {
|
|
113
113
|
if (dt.value && inst) {
|
|
114
|
-
dt.value.on(eName, (
|
|
115
|
-
|
|
114
|
+
dt.value.on(eName, function() {
|
|
115
|
+
var args = Array.from(arguments);
|
|
116
|
+
var event = args.shift();
|
|
117
|
+
|
|
118
|
+
args.unshift({ event: event, dt: dt });
|
|
119
|
+
args.unshift(eName);
|
|
120
|
+
|
|
121
|
+
inst.emit.apply(inst, args as any);
|
|
116
122
|
});
|
|
117
123
|
}
|
|
118
124
|
}
|
package/src/dtEvents.ts
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
|
|
2
|
+
export default [
|
|
3
|
+
'childRow',
|
|
4
|
+
'column-sizing',
|
|
5
|
+
'column-visibility',
|
|
6
|
+
'destroy',
|
|
7
|
+
'draw',
|
|
8
|
+
'error',
|
|
9
|
+
'init',
|
|
10
|
+
'length',
|
|
11
|
+
'order',
|
|
12
|
+
'page',
|
|
13
|
+
'preDraw',
|
|
14
|
+
'preInit',
|
|
15
|
+
'preXhr',
|
|
16
|
+
'processing',
|
|
17
|
+
'requestChild',
|
|
18
|
+
'search',
|
|
19
|
+
'stateLoadParams',
|
|
20
|
+
'stateLoaded',
|
|
21
|
+
'stateSaveParams',
|
|
22
|
+
'xhr',
|
|
23
|
+
'autoFill',
|
|
24
|
+
'preAutoFill',
|
|
25
|
+
'buttons-action',
|
|
26
|
+
'buttons-processing',
|
|
27
|
+
'column-reorder',
|
|
28
|
+
'key',
|
|
29
|
+
'key-blur',
|
|
30
|
+
'key-focus',
|
|
31
|
+
'key-refocus',
|
|
32
|
+
'key-return-submit',
|
|
33
|
+
'responsive-display',
|
|
34
|
+
'responsive-resize',
|
|
35
|
+
'rowgroup-datasrc',
|
|
36
|
+
'pre-row-reorder',
|
|
37
|
+
'row-reorder',
|
|
38
|
+
'row-reordered',
|
|
39
|
+
'dtsb-inserted',
|
|
40
|
+
'deselect',
|
|
41
|
+
'select',
|
|
42
|
+
'select-blur',
|
|
43
|
+
'selectItems',
|
|
44
|
+
'selectStyle',
|
|
45
|
+
'user-select',
|
|
46
|
+
'stateRestore-change',
|
|
47
|
+
];
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { App, Plugin } from 'vue';
|
|
2
|
+
|
|
3
|
+
// Import vue component
|
|
4
|
+
import { default as component } from './datatables.net-vue.vue';
|
|
5
|
+
|
|
6
|
+
// Define typescript interfaces for installable component
|
|
7
|
+
export type InstallableComponent = typeof component & { install: Exclude<Plugin['install'], undefined> };
|
|
8
|
+
|
|
9
|
+
// Default export is installable instance of component.
|
|
10
|
+
// IIFE injects install function into component, allowing component
|
|
11
|
+
// to be registered via Vue.use() as well as Vue.component(),
|
|
12
|
+
export default /*#__PURE__*/((): InstallableComponent => {
|
|
13
|
+
// Assign InstallableComponent type
|
|
14
|
+
const installable = component as unknown as InstallableComponent;
|
|
15
|
+
|
|
16
|
+
// Attach install function executed by Vue.use()
|
|
17
|
+
installable.install = (app: App) => {
|
|
18
|
+
app.component('Datatables.netVue', installable);
|
|
19
|
+
};
|
|
20
|
+
return installable;
|
|
21
|
+
})();
|
|
22
|
+
|
|
23
|
+
// It's possible to expose named exports when writing components that can
|
|
24
|
+
// also be used as directives, etc. - eg. import { RollupDemoDirective } from 'rollup-demo';
|
|
25
|
+
// export const RollupDemoDirective = directive;
|