datatables.net-vue3 3.0.2 → 3.0.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.
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("vue"),b=["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 p;const k={name:"Datatables.netVue",inheritAttrs:!1,use(i){p=i}},h=l.defineComponent({...k,props:{ajax:null,columns:null,data:null,options:null},emits:b,setup(i,{expose:f}){const o=i,m=l.ref(null),u={},c=l.ref(),g=l.ref([]);l.watch(()=>o.data,r=>{let e=c.value;if(e){for(var n=Object.keys(u),a=0;a<n.length;a++)delete u[n[a]];e.clear(),e.rows.add(r).draw(!1)}},{deep:!0}),l.onMounted(()=>{var n;const r=l.getCurrentInstance();let e=o.options||{};if(o.data&&(e.data=o.data,w(e.data)),o.columns&&(e.columns=o.columns),e.columns&&v(e.columns,r),o.ajax&&(e.ajax=o.ajax),e.columnDefs||(e.columnDefs=[]),r){let a=Object.keys(r.slots);for(let t=0;t<a.length;t++){let s=a[t];if(s.match(/^column\-/)){let d=s.replace("column-","");e.columnDefs.push({target:d.match(/^\d+$/)?parseInt(d):d+":name",render:"#"+s})}}v(e.columnDefs,r)}if(!p)throw new Error("DataTables library not set. See https://datatables.net/tn/19 for details.");c.value=new p(l.unref(m),e),(n=c.value)==null||n.on("preXhr",function(){let a=Object.keys(u);for(var t=0;t<a.length;t++)delete u[a[t]]});for(let a of b)c.value&&r&&c.value.on(a,function(){var t=Array.from(arguments),s=t.shift();t.unshift({event:s,dt:c}),t.unshift(a),r.emit.apply(r,t)})}),l.onBeforeUnmount(()=>{var r;(r=c.value)==null||r.destroy(!0)});function w(r){g.value=r.value?r.value.slice():r.slice()}function y(r){return function(e,n,a,t){let s=t.row+","+t.col;if(!u[s]){let d=l.h("div",r({cellData:e,colIndex:t.col,rowData:a,rowIndex:t.row,type:n}));u[s]=document.createElement("div"),l.render(d,u[s])}return u[s]}}function v(r,e){if(e)for(let a=0;a<r.length;a++){let t=r[a];if(typeof t.render=="string"&&t.render.charAt(0)==="#"){var n=t.render.replace("#","");e.slots[n]&&(t.render=y(e.slots[n]))}else if(typeof t.render=="object"&&typeof t.render.display=="string"&&t.render.display.charAt(0)==="#"){var n=t.render.display.replace("#","");e.slots[n]&&(t.render.display=y(e.slots[n]))}}}return f({dt:c}),(r,e)=>e[0]||(l.setBlockTracking(-1),e[0]=l.createElementVNode("div",{class:"datatable"},[l.createElementVNode("table",l.mergeProps({ref_key:"table",ref:m},r.$attrs,{style:{width:"100%"}}),[l.renderSlot(r.$slots,"default")],16)]),l.setBlockTracking(1),e[0])}}),D=(()=>{const i=h;return i.install=f=>{f.component("Datatables.netVue",i)},i})();exports.DataTable=h;exports.default=D;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("vue"),h=["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 m;const D={name:"Datatables.netVue",inheritAttrs:!1,use(u){m=u}},g=n.defineComponent({...D,props:{ajax:null,columns:null,data:null,options:null},emits:h,setup(u,{expose:f}){const i=u,v=n.ref(null),c={},s=n.ref(),w=n.ref([]);n.watch(()=>i.data,t=>{let e=s.value;e&&(p(e),e.clear(),e.rows.add(t).draw(!1))},{deep:!0}),n.onMounted(()=>{var a;const t=n.getCurrentInstance();let e=Object.assign({},i.options)||{};if(i.data&&(e.data=i.data,k(e.data)),i.columns&&(e.columns=i.columns),e.columns&&b(e.columns,t),i.ajax&&(e.ajax=i.ajax),e.columnDefs||(e.columnDefs=[]),t){let l=Object.keys(t.slots);for(let r=0;r<l.length;r++){let o=l[r];if(o.match(/^column\-/)){let d=o.replace("column-","");e.columnDefs.push({target:d.match(/^\d+$/)?parseInt(d):d+":name",render:"#"+o})}}b(e.columnDefs,t)}if(!m)throw new Error("DataTables library not set. See https://datatables.net/tn/19 for details.");s.value=new m(n.unref(v),e),(a=s.value)==null||a.on("preXhr",function(){p(s.value)});for(let l of h)s.value&&t&&s.value.on(l,function(){var r=Array.from(arguments),o=r.shift();r.unshift({event:o,dt:s}),r.unshift(l),t.emit.apply(t,r)})}),n.onBeforeUnmount(()=>{var t;p(s.value),(t=s.value)==null||t.destroy(!0)});function k(t){w.value=t.value?t.value.slice():t.slice()}function y(t){return function(e,a,l,r){let o=r.row+","+r.col;if(!c[o]){let d=n.h("div",t({cellData:e,colIndex:r.col,rowData:l,rowIndex:r.row,type:a}));c[o]=document.createElement("div"),n.render(d,c[o])}return c[o]}}function b(t,e){if(e)for(let l=0;l<t.length;l++){let r=t[l];if(typeof r.render=="string"&&r.render.charAt(0)==="#"){var a=r.render.replace("#","");e.slots[a]&&(r.render=y(e.slots[a]))}else if(typeof r.render=="object"&&typeof r.render.display=="string"&&r.render.display.charAt(0)==="#"){var a=r.render.display.replace("#","");e.slots[a]&&(r.render.display=y(e.slots[a]))}}}function p(t){let e=Object.keys(c),a=t.table().node().id;for(var l=0;l<e.length;l++)e[l].indexOf(a+",")===0&&delete c[e[l]]}return f({dt:s}),(t,e)=>e[0]||(n.setBlockTracking(-1),e[0]=n.createElementVNode("div",{class:"datatable"},[n.createElementVNode("table",n.mergeProps({ref_key:"table",ref:v},t.$attrs,{style:{width:"100%"}}),[n.renderSlot(t.$slots,"default")],16)]),n.setBlockTracking(1),e[0])}}),j=(()=>{const u=g;return u.install=f=>{f.component("Datatables.netVue",u)},u})();exports.DataTable=g;exports.default=j;
@@ -1,5 +1,5 @@
1
- import { defineComponent as D, ref as f, watch as j, onMounted as x, getCurrentInstance as I, unref as A, onBeforeUnmount as E, setBlockTracking as b, createElementVNode as h, mergeProps as O, renderSlot as R, h as S, render as T } from "vue";
2
- const g = [
1
+ import { defineComponent as x, ref as p, watch as j, onMounted as I, getCurrentInstance as A, unref as E, onBeforeUnmount as O, setBlockTracking as h, createElementVNode as g, mergeProps as R, renderSlot as S, h as T, render as _ } from "vue";
2
+ const w = [
3
3
  "childRow",
4
4
  "column-sizing",
5
5
  "column-visibility",
@@ -45,123 +45,122 @@ const g = [
45
45
  "user-select",
46
46
  "stateRestore-change"
47
47
  ];
48
- let p;
49
- const _ = {
48
+ let m;
49
+ const C = {
50
50
  name: "Datatables.netVue",
51
51
  inheritAttrs: !1,
52
52
  use(i) {
53
- p = i;
53
+ m = i;
54
54
  }
55
- }, C = /* @__PURE__ */ D({
56
- ..._,
55
+ }, L = /* @__PURE__ */ x({
56
+ ...C,
57
57
  props: {
58
58
  ajax: null,
59
59
  columns: null,
60
60
  data: null,
61
61
  options: null
62
62
  },
63
- emits: g,
63
+ emits: w,
64
64
  setup(i, { expose: d }) {
65
- const s = i, m = f(null), o = {}, c = f(), w = f([]);
65
+ const o = i, y = p(null), u = {}, l = p(), D = p([]);
66
66
  j(
67
- () => s.data,
68
- (r) => {
69
- let e = c.value;
70
- if (e) {
71
- for (var n = Object.keys(o), a = 0; a < n.length; a++)
72
- delete o[n[a]];
73
- e.clear(), e.rows.add(r).draw(!1);
74
- }
67
+ () => o.data,
68
+ (t) => {
69
+ let e = l.value;
70
+ e && (f(e), e.clear(), e.rows.add(t).draw(!1));
75
71
  },
76
72
  {
77
73
  deep: !0
78
74
  }
79
- ), x(() => {
80
- var n;
81
- const r = I();
82
- let e = s.options || {};
83
- if (s.data && (e.data = s.data, k(e.data)), s.columns && (e.columns = s.columns), e.columns && v(e.columns, r), s.ajax && (e.ajax = s.ajax), e.columnDefs || (e.columnDefs = []), r) {
84
- let a = Object.keys(r.slots);
85
- for (let t = 0; t < a.length; t++) {
86
- let l = a[t];
87
- if (l.match(/^column\-/)) {
88
- let u = l.replace("column-", "");
75
+ ), I(() => {
76
+ var a;
77
+ const t = A();
78
+ let e = Object.assign({}, o.options) || {};
79
+ if (o.data && (e.data = o.data, k(e.data)), o.columns && (e.columns = o.columns), e.columns && b(e.columns, t), o.ajax && (e.ajax = o.ajax), e.columnDefs || (e.columnDefs = []), t) {
80
+ let n = Object.keys(t.slots);
81
+ for (let r = 0; r < n.length; r++) {
82
+ let s = n[r];
83
+ if (s.match(/^column\-/)) {
84
+ let c = s.replace("column-", "");
89
85
  e.columnDefs.push({
90
- target: u.match(/^\d+$/) ? parseInt(u) : u + ":name",
91
- render: "#" + l
86
+ target: c.match(/^\d+$/) ? parseInt(c) : c + ":name",
87
+ render: "#" + s
92
88
  });
93
89
  }
94
90
  }
95
- v(e.columnDefs, r);
91
+ b(e.columnDefs, t);
96
92
  }
97
- if (!p)
93
+ if (!m)
98
94
  throw new Error(
99
95
  "DataTables library not set. See https://datatables.net/tn/19 for details."
100
96
  );
101
- c.value = new p(A(m), e), (n = c.value) == null || n.on("preXhr", function() {
102
- let a = Object.keys(o);
103
- for (var t = 0; t < a.length; t++)
104
- delete o[a[t]];
97
+ l.value = new m(E(y), e), (a = l.value) == null || a.on("preXhr", function() {
98
+ f(l.value);
105
99
  });
106
- for (let a of g)
107
- c.value && r && c.value.on(a, function() {
108
- var t = Array.from(arguments), l = t.shift();
109
- t.unshift({ event: l, dt: c }), t.unshift(a), r.emit.apply(r, t);
100
+ for (let n of w)
101
+ l.value && t && l.value.on(n, function() {
102
+ var r = Array.from(arguments), s = r.shift();
103
+ r.unshift({ event: s, dt: l }), r.unshift(n), t.emit.apply(t, r);
110
104
  });
111
- }), E(() => {
112
- var r;
113
- (r = c.value) == null || r.destroy(!0);
105
+ }), O(() => {
106
+ var t;
107
+ f(l.value), (t = l.value) == null || t.destroy(!0);
114
108
  });
115
- function k(r) {
116
- w.value = r.value ? r.value.slice() : r.slice();
109
+ function k(t) {
110
+ D.value = t.value ? t.value.slice() : t.slice();
117
111
  }
118
- function y(r) {
119
- return function(e, n, a, t) {
120
- let l = t.row + "," + t.col;
121
- if (!o[l]) {
122
- let u = S("div", r({
112
+ function v(t) {
113
+ return function(e, a, n, r) {
114
+ let s = r.row + "," + r.col;
115
+ if (!u[s]) {
116
+ let c = T("div", t({
123
117
  cellData: e,
124
- colIndex: t.col,
125
- rowData: a,
126
- rowIndex: t.row,
127
- type: n
118
+ colIndex: r.col,
119
+ rowData: n,
120
+ rowIndex: r.row,
121
+ type: a
128
122
  }));
129
- o[l] = document.createElement("div"), T(u, o[l]);
123
+ u[s] = document.createElement("div"), _(c, u[s]);
130
124
  }
131
- return o[l];
125
+ return u[s];
132
126
  };
133
127
  }
134
- function v(r, e) {
128
+ function b(t, e) {
135
129
  if (e)
136
- for (let a = 0; a < r.length; a++) {
137
- let t = r[a];
138
- if (typeof t.render == "string" && t.render.charAt(0) === "#") {
139
- var n = t.render.replace("#", "");
140
- e.slots[n] && (t.render = y(e.slots[n]));
141
- } else if (typeof t.render == "object" && typeof t.render.display == "string" && t.render.display.charAt(0) === "#") {
142
- var n = t.render.display.replace("#", "");
143
- e.slots[n] && (t.render.display = y(e.slots[n]));
130
+ for (let n = 0; n < t.length; n++) {
131
+ let r = t[n];
132
+ if (typeof r.render == "string" && r.render.charAt(0) === "#") {
133
+ var a = r.render.replace("#", "");
134
+ e.slots[a] && (r.render = v(e.slots[a]));
135
+ } else if (typeof r.render == "object" && typeof r.render.display == "string" && r.render.display.charAt(0) === "#") {
136
+ var a = r.render.display.replace("#", "");
137
+ e.slots[a] && (r.render.display = v(e.slots[a]));
144
138
  }
145
139
  }
146
140
  }
141
+ function f(t) {
142
+ let e = Object.keys(u), a = t.table().node().id;
143
+ for (var n = 0; n < e.length; n++)
144
+ e[n].indexOf(a + ",") === 0 && delete u[e[n]];
145
+ }
147
146
  return d({
148
- dt: c
149
- }), (r, e) => e[0] || (b(-1), e[0] = h("div", { class: "datatable" }, [
150
- h("table", O({
147
+ dt: l
148
+ }), (t, e) => e[0] || (h(-1), e[0] = g("div", { class: "datatable" }, [
149
+ g("table", R({
151
150
  ref_key: "table",
152
- ref: m
153
- }, r.$attrs, { style: { width: "100%" } }), [
154
- R(r.$slots, "default")
151
+ ref: y
152
+ }, t.$attrs, { style: { width: "100%" } }), [
153
+ S(t.$slots, "default")
155
154
  ], 16)
156
- ]), b(1), e[0]);
155
+ ]), h(1), e[0]);
157
156
  }
158
- }), P = /* @__PURE__ */ (() => {
159
- const i = C;
157
+ }), V = /* @__PURE__ */ (() => {
158
+ const i = L;
160
159
  return i.install = (d) => {
161
160
  d.component("Datatables.netVue", i);
162
161
  }, i;
163
162
  })();
164
163
  export {
165
- C as DataTable,
166
- P as default
164
+ L as DataTable,
165
+ V as default
167
166
  };
@@ -1 +1 @@
1
- (function(l,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],n):(l=typeof globalThis<"u"?globalThis:l||self,n((l.datatables=l.datatables||{},l.datatables["net-vue3"]={}),l.Vue))})(this,function(l,n){"use strict";const y=["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 p;const k={name:"Datatables.netVue",inheritAttrs:!1,use(u){p=u}},b=n.defineComponent({...k,props:{ajax:null,columns:null,data:null,options:null},emits:y,setup(u,{expose:m}){const i=u,h=n.ref(null),d={},c=n.ref(),D=n.ref([]);n.watch(()=>i.data,r=>{let e=c.value;if(e){for(var s=Object.keys(d),a=0;a<s.length;a++)delete d[s[a]];e.clear(),e.rows.add(r).draw(!1)}},{deep:!0}),n.onMounted(()=>{var s;const r=n.getCurrentInstance();let e=i.options||{};if(i.data&&(e.data=i.data,j(e.data)),i.columns&&(e.columns=i.columns),e.columns&&w(e.columns,r),i.ajax&&(e.ajax=i.ajax),e.columnDefs||(e.columnDefs=[]),r){let a=Object.keys(r.slots);for(let t=0;t<a.length;t++){let o=a[t];if(o.match(/^column\-/)){let f=o.replace("column-","");e.columnDefs.push({target:f.match(/^\d+$/)?parseInt(f):f+":name",render:"#"+o})}}w(e.columnDefs,r)}if(!p)throw new Error("DataTables library not set. See https://datatables.net/tn/19 for details.");c.value=new p(n.unref(h),e),(s=c.value)==null||s.on("preXhr",function(){let a=Object.keys(d);for(var t=0;t<a.length;t++)delete d[a[t]]});for(let a of y)c.value&&r&&c.value.on(a,function(){var t=Array.from(arguments),o=t.shift();t.unshift({event:o,dt:c}),t.unshift(a),r.emit.apply(r,t)})}),n.onBeforeUnmount(()=>{var r;(r=c.value)==null||r.destroy(!0)});function j(r){D.value=r.value?r.value.slice():r.slice()}function g(r){return function(e,s,a,t){let o=t.row+","+t.col;if(!d[o]){let f=n.h("div",r({cellData:e,colIndex:t.col,rowData:a,rowIndex:t.row,type:s}));d[o]=document.createElement("div"),n.render(f,d[o])}return d[o]}}function w(r,e){if(e)for(let a=0;a<r.length;a++){let t=r[a];if(typeof t.render=="string"&&t.render.charAt(0)==="#"){var s=t.render.replace("#","");e.slots[s]&&(t.render=g(e.slots[s]))}else if(typeof t.render=="object"&&typeof t.render.display=="string"&&t.render.display.charAt(0)==="#"){var s=t.render.display.replace("#","");e.slots[s]&&(t.render.display=g(e.slots[s]))}}}return m({dt:c}),(r,e)=>e[0]||(n.setBlockTracking(-1),e[0]=n.createElementVNode("div",{class:"datatable"},[n.createElementVNode("table",n.mergeProps({ref_key:"table",ref:h},r.$attrs,{style:{width:"100%"}}),[n.renderSlot(r.$slots,"default")],16)]),n.setBlockTracking(1),e[0])}}),v=(()=>{const u=b;return u.install=m=>{m.component("Datatables.netVue",u)},u})();l.DataTable=b,l.default=v,Object.defineProperties(l,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(l,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],n):(l=typeof globalThis<"u"?globalThis:l||self,n((l.datatables=l.datatables||{},l.datatables["net-vue3"]={}),l.Vue))})(this,function(l,n){"use strict";const b=["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 p;const k={name:"Datatables.netVue",inheritAttrs:!1,use(c){p=c}},h=n.defineComponent({...k,props:{ajax:null,columns:null,data:null,options:null},emits:b,setup(c,{expose:m}){const d=c,g=n.ref(null),u={},o=n.ref(),j=n.ref([]);n.watch(()=>d.data,t=>{let e=o.value;e&&(y(e),e.clear(),e.rows.add(t).draw(!1))},{deep:!0}),n.onMounted(()=>{var s;const t=n.getCurrentInstance();let e=Object.assign({},d.options)||{};if(d.data&&(e.data=d.data,x(e.data)),d.columns&&(e.columns=d.columns),e.columns&&v(e.columns,t),d.ajax&&(e.ajax=d.ajax),e.columnDefs||(e.columnDefs=[]),t){let a=Object.keys(t.slots);for(let r=0;r<a.length;r++){let i=a[r];if(i.match(/^column\-/)){let f=i.replace("column-","");e.columnDefs.push({target:f.match(/^\d+$/)?parseInt(f):f+":name",render:"#"+i})}}v(e.columnDefs,t)}if(!p)throw new Error("DataTables library not set. See https://datatables.net/tn/19 for details.");o.value=new p(n.unref(g),e),(s=o.value)==null||s.on("preXhr",function(){y(o.value)});for(let a of b)o.value&&t&&o.value.on(a,function(){var r=Array.from(arguments),i=r.shift();r.unshift({event:i,dt:o}),r.unshift(a),t.emit.apply(t,r)})}),n.onBeforeUnmount(()=>{var t;y(o.value),(t=o.value)==null||t.destroy(!0)});function x(t){j.value=t.value?t.value.slice():t.slice()}function w(t){return function(e,s,a,r){let i=r.row+","+r.col;if(!u[i]){let f=n.h("div",t({cellData:e,colIndex:r.col,rowData:a,rowIndex:r.row,type:s}));u[i]=document.createElement("div"),n.render(f,u[i])}return u[i]}}function v(t,e){if(e)for(let a=0;a<t.length;a++){let r=t[a];if(typeof r.render=="string"&&r.render.charAt(0)==="#"){var s=r.render.replace("#","");e.slots[s]&&(r.render=w(e.slots[s]))}else if(typeof r.render=="object"&&typeof r.render.display=="string"&&r.render.display.charAt(0)==="#"){var s=r.render.display.replace("#","");e.slots[s]&&(r.render.display=w(e.slots[s]))}}}function y(t){let e=Object.keys(u),s=t.table().node().id;for(var a=0;a<e.length;a++)e[a].indexOf(s+",")===0&&delete u[e[a]]}return m({dt:o}),(t,e)=>e[0]||(n.setBlockTracking(-1),e[0]=n.createElementVNode("div",{class:"datatable"},[n.createElementVNode("table",n.mergeProps({ref_key:"table",ref:g},t.$attrs,{style:{width:"100%"}}),[n.renderSlot(t.$slots,"default")],16)]),n.setBlockTracking(1),e[0])}}),D=(()=>{const c=h;return c.install=m=>{m.component("Datatables.netVue",c)},c})();l.DataTable=h,l.default=D,Object.defineProperties(l,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "datatables.net-vue3",
3
- "version": "3.0.2",
3
+ "version": "3.0.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",
package/src/DataTable.vue CHANGED
@@ -68,11 +68,7 @@ watch(
68
68
  return;
69
69
  }
70
70
 
71
- var keys = Object.keys(elements);
72
-
73
- for (var i = 0; i < keys.length; i++) {
74
- delete elements[keys[i]];
75
- }
71
+ deleteElements(api);
76
72
 
77
73
  api.clear();
78
74
  api.rows.add(newVal).draw(false);
@@ -85,7 +81,7 @@ watch(
85
81
  // lifecycle
86
82
  onMounted(() => {
87
83
  const inst = getCurrentInstance();
88
- let options: any = props.options || {};
84
+ let options: any = Object.assign({}, props.options) || {};
89
85
 
90
86
  if (props.data) {
91
87
  options.data = props.data;
@@ -143,11 +139,7 @@ onMounted(() => {
143
139
  // When server-side processing or Ajax loading data, the data indexes for
144
140
  // rows are reused, so we need to clear out any rendered elements for slots.
145
141
  dt.value?.on('preXhr', function () {
146
- let keys = Object.keys(elements);
147
-
148
- for (var i=0 ; i<keys.length ; i++) {
149
- delete elements[keys[i]];
150
- }
142
+ deleteElements(dt.value!);
151
143
  });
152
144
 
153
145
  // Re-export all DataTables events by listening for them using DataTable's
@@ -168,6 +160,7 @@ onMounted(() => {
168
160
  });
169
161
 
170
162
  onBeforeUnmount(() => {
163
+ deleteElements(dt.value!);
171
164
  dt.value?.destroy(true);
172
165
  });
173
166
 
@@ -230,7 +223,7 @@ function applyRenderers(columns: any[], inst: any) {
230
223
  }
231
224
  }
232
225
  else if (
233
- // Display orhtogonal data point given as a slot name
226
+ // Display orthogonal data point given as a slot name
234
227
  typeof col.render === 'object' &&
235
228
  typeof col.render.display === 'string' &&
236
229
  col.render.display.charAt(0) === '#'
@@ -244,6 +237,17 @@ function applyRenderers(columns: any[], inst: any) {
244
237
  }
245
238
  }
246
239
 
240
+ function deleteElements(dt: Api) {
241
+ let keys = Object.keys(elements);
242
+ let id = (dt.table().node() as any).id;
243
+
244
+ for (var i = 0; i < keys.length; i++) {
245
+ if (keys[i].indexOf(id + ',') === 0) {
246
+ delete elements[keys[i]];
247
+ }
248
+ }
249
+ }
250
+
247
251
  // expose
248
252
  defineExpose({
249
253
  /**