@leancodepl/utils 7.3.4 → 7.3.6
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/index.cjs.js +16 -0
- package/index.esm.js +16 -1
- package/package.json +2 -2
- package/src/index.d.ts +1 -0
package/index.cjs.js
CHANGED
|
@@ -82,6 +82,21 @@ function ensureNotEmpty(value, message) {
|
|
|
82
82
|
return value;
|
|
83
83
|
}
|
|
84
84
|
|
|
85
|
+
function downloadFile(dataOrUrl, options = {}) {
|
|
86
|
+
if (typeof dataOrUrl === "string") {
|
|
87
|
+
const { name } = options;
|
|
88
|
+
const a = document.createElement("a");
|
|
89
|
+
a.href = dataOrUrl;
|
|
90
|
+
a.target = "_blank";
|
|
91
|
+
if (name) a.download = name;
|
|
92
|
+
a.click();
|
|
93
|
+
} else {
|
|
94
|
+
const url = URL.createObjectURL(dataOrUrl);
|
|
95
|
+
downloadFile(url, options);
|
|
96
|
+
URL.revokeObjectURL(url);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
|
|
85
100
|
function useRunInTask() {
|
|
86
101
|
const [runningTasks, setRunningTasks] = react.useState(0);
|
|
87
102
|
const runInTask = react.useCallback(async (task)=>{
|
|
@@ -153,6 +168,7 @@ exports.assertDefined = assertDefined;
|
|
|
153
168
|
exports.assertNotEmpty = assertNotEmpty;
|
|
154
169
|
exports.assertNotNull = assertNotNull;
|
|
155
170
|
exports.capitalizeDeep = capitalizeDeep;
|
|
171
|
+
exports.downloadFile = downloadFile;
|
|
156
172
|
exports.ensureDefined = ensureDefined;
|
|
157
173
|
exports.ensureNotEmpty = ensureNotEmpty;
|
|
158
174
|
exports.ensureNotNull = ensureNotNull;
|
package/index.esm.js
CHANGED
|
@@ -74,6 +74,21 @@ function ensureNotEmpty(value, message) {
|
|
|
74
74
|
return value;
|
|
75
75
|
}
|
|
76
76
|
|
|
77
|
+
function downloadFile(dataOrUrl, options = {}) {
|
|
78
|
+
if (typeof dataOrUrl === "string") {
|
|
79
|
+
const { name } = options;
|
|
80
|
+
const a = document.createElement("a");
|
|
81
|
+
a.href = dataOrUrl;
|
|
82
|
+
a.target = "_blank";
|
|
83
|
+
if (name) a.download = name;
|
|
84
|
+
a.click();
|
|
85
|
+
} else {
|
|
86
|
+
const url = URL.createObjectURL(dataOrUrl);
|
|
87
|
+
downloadFile(url, options);
|
|
88
|
+
URL.revokeObjectURL(url);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
77
92
|
function useRunInTask() {
|
|
78
93
|
const [runningTasks, setRunningTasks] = useState(0);
|
|
79
94
|
const runInTask = useCallback(async (task)=>{
|
|
@@ -141,4 +156,4 @@ function useDialog(onAfterClose) {
|
|
|
141
156
|
};
|
|
142
157
|
}
|
|
143
158
|
|
|
144
|
-
export { assertDefined, assertNotEmpty, assertNotNull, capitalizeDeep, ensureDefined, ensureNotEmpty, ensureNotNull, toLowerFirst, toUpperFirst, uncapitalizeDeep, useBoundRunInTask, useDialog, useKeyByRoute, useRunInTask, useSetUnset };
|
|
159
|
+
export { assertDefined, assertNotEmpty, assertNotNull, capitalizeDeep, downloadFile, ensureDefined, ensureNotEmpty, ensureNotNull, toLowerFirst, toUpperFirst, uncapitalizeDeep, useBoundRunInTask, useDialog, useKeyByRoute, useRunInTask, useSetUnset };
|
package/package.json
CHANGED
package/src/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export * from "./lib/assertNotEmpty";
|
|
|
7
7
|
export * from "./lib/ensureDefined";
|
|
8
8
|
export * from "./lib/ensureNotNull";
|
|
9
9
|
export * from "./lib/ensureNotEmpty";
|
|
10
|
+
export * from "./lib/downloadFile";
|
|
10
11
|
export * from "./lib/hooks/useRunInTask";
|
|
11
12
|
export * from "./lib/hooks/useBoundRunInTask";
|
|
12
13
|
export * from "./lib/hooks/useKeyByRoute";
|