diff --git a/.gitignore b/.gitignore
index 14c4b9b..e28be0a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
npm-debug.log
node_modules
-package-lock.json
\ No newline at end of file
+package-lock.json
+.idea
\ No newline at end of file
diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml
new file mode 100644
index 0000000..a55e7a1
--- /dev/null
+++ b/.idea/codeStyles/codeStyleConfig.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..e6874d4
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vue-json-excel.iml b/.idea/vue-json-excel.iml
new file mode 100644
index 0000000..c956989
--- /dev/null
+++ b/.idea/vue-json-excel.iml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
new file mode 100644
index 0000000..cc237d2
--- /dev/null
+++ b/.idea/workspace.xml
@@ -0,0 +1,77 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1626175362623
+
+
+ 1626175362623
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/JsonExcel.vue b/JsonExcel.vue
index fd04dd4..11d54da 100644
--- a/JsonExcel.vue
+++ b/JsonExcel.vue
@@ -9,6 +9,11 @@ import download from "downloadjs";
export default {
props: {
+ // If true, don't download but emit a Blob
+ emitBlob: {
+ type: Boolean,
+ default: false,
+ },
// mime type [xls, csv]
type: {
type: String,
@@ -133,7 +138,8 @@ export default {
export: async function (data, filename, mime) {
let blob = this.base64ToBlob(data, mime);
if (typeof this.beforeFinish === "function") await this.beforeFinish();
- download(blob, filename, mime);
+ if (this.emitBlob) this.$emit("blob", blob);
+ else download(blob, filename, mime);
},
/*
jsonToXLS
diff --git a/dist/vue-json-excel.cjs.js b/dist/vue-json-excel.cjs.js
index 48b0d55..fa6023d 100644
--- a/dist/vue-json-excel.cjs.js
+++ b/dist/vue-json-excel.cjs.js
@@ -174,6 +174,11 @@ var download = createCommonjsModule(function (module, exports) {
var script = {
props: {
+ // If true, don't download but emit a Blob
+ emitBlob: {
+ type: Boolean,
+ default: false,
+ },
// mime type [xls, csv]
type: {
type: String,
@@ -298,7 +303,8 @@ var script = {
export: async function (data, filename, mime) {
let blob = this.base64ToBlob(data, mime);
if (typeof this.beforeFinish === "function") await this.beforeFinish();
- download(blob, filename, mime);
+ if (this.emitBlob) this.$emit("blob", blob);
+ else download(blob, filename, mime);
},
/*
jsonToXLS
@@ -619,7 +625,11 @@ var __vue_render__ = function() {
return _c(
"div",
{ attrs: { id: _vm.idName }, on: { click: _vm.generate } },
- [_vm._t("default", [_vm._v(" Download " + _vm._s(_vm.name) + " ")])],
+ [
+ _vm._t("default", function() {
+ return [_vm._v(" Download " + _vm._s(_vm.name) + " ")]
+ })
+ ],
2
)
};
diff --git a/dist/vue-json-excel.esm.js b/dist/vue-json-excel.esm.js
index 2d9535d..2daeb54 100644
--- a/dist/vue-json-excel.esm.js
+++ b/dist/vue-json-excel.esm.js
@@ -172,6 +172,11 @@ var download = createCommonjsModule(function (module, exports) {
var script = {
props: {
+ // If true, don't download but emit a Blob
+ emitBlob: {
+ type: Boolean,
+ default: false,
+ },
// mime type [xls, csv]
type: {
type: String,
@@ -296,7 +301,8 @@ var script = {
export: async function (data, filename, mime) {
let blob = this.base64ToBlob(data, mime);
if (typeof this.beforeFinish === "function") await this.beforeFinish();
- download(blob, filename, mime);
+ if (this.emitBlob) this.$emit("blob", blob);
+ else download(blob, filename, mime);
},
/*
jsonToXLS
@@ -617,7 +623,11 @@ var __vue_render__ = function() {
return _c(
"div",
{ attrs: { id: _vm.idName }, on: { click: _vm.generate } },
- [_vm._t("default", [_vm._v(" Download " + _vm._s(_vm.name) + " ")])],
+ [
+ _vm._t("default", function() {
+ return [_vm._v(" Download " + _vm._s(_vm.name) + " ")]
+ })
+ ],
2
)
};
diff --git a/dist/vue-json-excel.umd.js b/dist/vue-json-excel.umd.js
index bd2c0dc..f369dc7 100644
--- a/dist/vue-json-excel.umd.js
+++ b/dist/vue-json-excel.umd.js
@@ -178,6 +178,11 @@
var script = {
props: {
+ // If true, don't download but emit a Blob
+ emitBlob: {
+ type: Boolean,
+ default: false,
+ },
// mime type [xls, csv]
type: {
type: String,
@@ -302,7 +307,8 @@
export: async function (data, filename, mime) {
let blob = this.base64ToBlob(data, mime);
if (typeof this.beforeFinish === "function") await this.beforeFinish();
- download(blob, filename, mime);
+ if (this.emitBlob) this.$emit("blob", blob);
+ else download(blob, filename, mime);
},
/*
jsonToXLS
@@ -623,7 +629,11 @@
return _c(
"div",
{ attrs: { id: _vm.idName }, on: { click: _vm.generate } },
- [_vm._t("default", [_vm._v(" Download " + _vm._s(_vm.name) + " ")])],
+ [
+ _vm._t("default", function() {
+ return [_vm._v(" Download " + _vm._s(_vm.name) + " ")]
+ })
+ ],
2
)
};
diff --git a/package.json b/package.json
index 86de058..4b50bd7 100644
--- a/package.json
+++ b/package.json
@@ -41,4 +41,4 @@
"rollup-plugin-vue": "^4.7.2",
"vue-template-compiler": "^2.6.10"
}
-}
\ No newline at end of file
+}