@pisell/utils 1.0.37 → 2.0.1
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/es/firebase/index.js +10 -32
- package/es/otherUtils.d.ts +13 -2
- package/es/otherUtils.js +40 -2
- package/lib/firebase/index.js +0 -22
- package/lib/otherUtils.d.ts +13 -2
- package/lib/otherUtils.js +9 -1
- package/package.json +1 -1
package/es/firebase/index.js
CHANGED
|
@@ -12,12 +12,10 @@ var isClient = typeof window != "undefined" && window.document;
|
|
|
12
12
|
|
|
13
13
|
// 是否默认初始化firebase erp_admin默认不初始化
|
|
14
14
|
var isDefaultInit = isClient && (isUndefined((_window = window) === null || _window === void 0 ? void 0 : _window.__isDefaultInit) ? true : (_window2 = window) === null || _window2 === void 0 ? void 0 : _window2.__isDefaultInit);
|
|
15
|
-
var isInitialized = false;
|
|
16
15
|
var firebaseApp = {};
|
|
17
16
|
var auth = {};
|
|
18
17
|
var database = {};
|
|
19
18
|
export var initFirebase = function initFirebase(config) {
|
|
20
|
-
isInitialized = true;
|
|
21
19
|
// 初始化 Firebase
|
|
22
20
|
firebaseApp = initializeApp(config || firebaseConfig);
|
|
23
21
|
// 获取 Firebase Auth 实例
|
|
@@ -134,24 +132,21 @@ export var readData = /*#__PURE__*/function () {
|
|
|
134
132
|
while (1) switch (_context4.prev = _context4.next) {
|
|
135
133
|
case 0:
|
|
136
134
|
_context4.prev = 0;
|
|
137
|
-
|
|
138
|
-
initFirebase();
|
|
139
|
-
}
|
|
140
|
-
_context4.next = 4;
|
|
135
|
+
_context4.next = 3;
|
|
141
136
|
return get(ref(database, getPath(path)));
|
|
142
|
-
case
|
|
137
|
+
case 3:
|
|
143
138
|
dataSnapshot = _context4.sent;
|
|
144
139
|
return _context4.abrupt("return", dataSnapshot.val());
|
|
145
|
-
case
|
|
146
|
-
_context4.prev =
|
|
140
|
+
case 7:
|
|
141
|
+
_context4.prev = 7;
|
|
147
142
|
_context4.t0 = _context4["catch"](0);
|
|
148
143
|
console.error("Error reading data:", _context4.t0);
|
|
149
144
|
throw _context4.t0;
|
|
150
|
-
case
|
|
145
|
+
case 11:
|
|
151
146
|
case "end":
|
|
152
147
|
return _context4.stop();
|
|
153
148
|
}
|
|
154
|
-
}, _callee4, null, [[0,
|
|
149
|
+
}, _callee4, null, [[0, 7]]);
|
|
155
150
|
}));
|
|
156
151
|
return function readData(_x5) {
|
|
157
152
|
return _ref4.apply(this, arguments);
|
|
@@ -165,20 +160,17 @@ export var writeData = /*#__PURE__*/function () {
|
|
|
165
160
|
while (1) switch (_context5.prev = _context5.next) {
|
|
166
161
|
case 0:
|
|
167
162
|
_context5.prev = 0;
|
|
168
|
-
if (!isInitialized) {
|
|
169
|
-
initFirebase();
|
|
170
|
-
}
|
|
171
163
|
return _context5.abrupt("return", set(ref(database, getPath(path)), data));
|
|
172
|
-
case
|
|
173
|
-
_context5.prev =
|
|
164
|
+
case 4:
|
|
165
|
+
_context5.prev = 4;
|
|
174
166
|
_context5.t0 = _context5["catch"](0);
|
|
175
167
|
console.error("Error writing data:", _context5.t0);
|
|
176
168
|
throw _context5.t0;
|
|
177
|
-
case
|
|
169
|
+
case 8:
|
|
178
170
|
case "end":
|
|
179
171
|
return _context5.stop();
|
|
180
172
|
}
|
|
181
|
-
}, _callee5, null, [[0,
|
|
173
|
+
}, _callee5, null, [[0, 4]]);
|
|
182
174
|
}));
|
|
183
175
|
return function writeData(_x6, _x7) {
|
|
184
176
|
return _ref5.apply(this, arguments);
|
|
@@ -187,13 +179,6 @@ export var writeData = /*#__PURE__*/function () {
|
|
|
187
179
|
|
|
188
180
|
// onValue 方法 实现监听
|
|
189
181
|
export var onDataChange = function onDataChange(path, callback) {
|
|
190
|
-
try {
|
|
191
|
-
if (!isInitialized) {
|
|
192
|
-
initFirebase();
|
|
193
|
-
}
|
|
194
|
-
} catch (error) {
|
|
195
|
-
console.error('init error', error);
|
|
196
|
-
}
|
|
197
182
|
var databaseRef = ref(database, getPath(path));
|
|
198
183
|
var listener = onValue(databaseRef, callback);
|
|
199
184
|
|
|
@@ -203,13 +188,6 @@ export var onDataChange = function onDataChange(path, callback) {
|
|
|
203
188
|
|
|
204
189
|
// onChildChanged 方法 实现监听变化的key
|
|
205
190
|
export var onDataChanged = function onDataChanged(path, callback) {
|
|
206
|
-
try {
|
|
207
|
-
if (!isInitialized) {
|
|
208
|
-
initFirebase();
|
|
209
|
-
}
|
|
210
|
-
} catch (error) {
|
|
211
|
-
console.error('init error', error);
|
|
212
|
-
}
|
|
213
191
|
var databaseRef = ref(database, getPath(path));
|
|
214
192
|
var listener = onChildChanged(databaseRef, callback);
|
|
215
193
|
|
package/es/otherUtils.d.ts
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @title: 判断是否无痕模式
|
|
3
|
+
* @description:
|
|
4
|
+
* @return: *
|
|
5
|
+
* @Author: shengjie.zuo
|
|
6
|
+
* @Date: 2024-09-4 09:58:22
|
|
7
|
+
*/
|
|
8
|
+
export declare const detectIncognito: () => Promise<{
|
|
9
|
+
isPrivate: boolean;
|
|
10
|
+
browserName: string;
|
|
11
|
+
} | {
|
|
12
|
+
isPrivate: boolean;
|
|
13
|
+
}>;
|
|
3
14
|
/**
|
|
4
15
|
* @Description: 生成唯一id
|
|
5
16
|
* @Author: wzw
|
package/es/otherUtils.js
CHANGED
|
@@ -1,9 +1,47 @@
|
|
|
1
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2
|
+
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, defineProperty = Object.defineProperty || function (obj, key, desc) { obj[key] = desc.value; }, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return defineProperty(generator, "_invoke", { value: makeInvokeMethod(innerFn, self, context) }), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; defineProperty(this, "_invoke", { value: function value(method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; } function maybeInvokeDelegate(delegate, context) { var methodName = context.method, method = delegate.iterator[methodName]; if (undefined === method) return context.delegate = null, "throw" === methodName && delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method) || "return" !== methodName && (context.method = "throw", context.arg = new TypeError("The iterator does not provide a '" + methodName + "' method")), ContinueSentinel; var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), defineProperty(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (val) { var object = Object(val), keys = []; for (var key in object) keys.push(key); return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
|
|
3
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
4
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
1
5
|
// @ts-ignore
|
|
2
6
|
import md5 from "crypto-js/md5";
|
|
3
7
|
// @ts-ignore
|
|
4
8
|
import enc from "crypto-js/enc-hex";
|
|
5
|
-
import { detectIncognito } from "detectincognitojs";
|
|
6
|
-
|
|
9
|
+
import { detectIncognito as originDetectIncognito } from "detectincognitojs";
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @title: 判断是否无痕模式
|
|
13
|
+
* @description:
|
|
14
|
+
* @return: *
|
|
15
|
+
* @Author: shengjie.zuo
|
|
16
|
+
* @Date: 2024-09-4 09:58:22
|
|
17
|
+
*/
|
|
18
|
+
export var detectIncognito = /*#__PURE__*/function () {
|
|
19
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
20
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
21
|
+
while (1) switch (_context.prev = _context.next) {
|
|
22
|
+
case 0:
|
|
23
|
+
if (!navigator.userAgent.toLowerCase().includes('honor')) {
|
|
24
|
+
_context.next = 2;
|
|
25
|
+
break;
|
|
26
|
+
}
|
|
27
|
+
return _context.abrupt("return", {
|
|
28
|
+
isPrivate: false
|
|
29
|
+
});
|
|
30
|
+
case 2:
|
|
31
|
+
_context.next = 4;
|
|
32
|
+
return originDetectIncognito();
|
|
33
|
+
case 4:
|
|
34
|
+
return _context.abrupt("return", _context.sent);
|
|
35
|
+
case 5:
|
|
36
|
+
case "end":
|
|
37
|
+
return _context.stop();
|
|
38
|
+
}
|
|
39
|
+
}, _callee);
|
|
40
|
+
}));
|
|
41
|
+
return function detectIncognito() {
|
|
42
|
+
return _ref.apply(this, arguments);
|
|
43
|
+
};
|
|
44
|
+
}();
|
|
7
45
|
|
|
8
46
|
/**
|
|
9
47
|
* @Description: 生成唯一id
|
package/lib/firebase/index.js
CHANGED
|
@@ -46,12 +46,10 @@ var import_config = require("./config");
|
|
|
46
46
|
var import_typeUtils = require("../typeUtils");
|
|
47
47
|
var isClient = typeof window != "undefined" && window.document;
|
|
48
48
|
var isDefaultInit = isClient && ((0, import_typeUtils.isUndefined)(window == null ? void 0 : window.__isDefaultInit) ? true : window == null ? void 0 : window.__isDefaultInit);
|
|
49
|
-
var isInitialized = false;
|
|
50
49
|
var firebaseApp = {};
|
|
51
50
|
var auth = {};
|
|
52
51
|
var database = {};
|
|
53
52
|
var initFirebase = (config) => {
|
|
54
|
-
isInitialized = true;
|
|
55
53
|
firebaseApp = (0, import_app.initializeApp)(config || import_config.firebaseConfig);
|
|
56
54
|
auth = (0, import_auth.getAuth)(firebaseApp);
|
|
57
55
|
database = (0, import_database.getDatabase)(firebaseApp);
|
|
@@ -101,9 +99,6 @@ var signOutUser = async () => {
|
|
|
101
99
|
};
|
|
102
100
|
var readData = async (path) => {
|
|
103
101
|
try {
|
|
104
|
-
if (!isInitialized) {
|
|
105
|
-
initFirebase();
|
|
106
|
-
}
|
|
107
102
|
const dataSnapshot = await (0, import_database.get)((0, import_database.ref)(database, getPath(path)));
|
|
108
103
|
return dataSnapshot.val();
|
|
109
104
|
} catch (error) {
|
|
@@ -113,9 +108,6 @@ var readData = async (path) => {
|
|
|
113
108
|
};
|
|
114
109
|
var writeData = async (path, data) => {
|
|
115
110
|
try {
|
|
116
|
-
if (!isInitialized) {
|
|
117
|
-
initFirebase();
|
|
118
|
-
}
|
|
119
111
|
return (0, import_database.set)((0, import_database.ref)(database, getPath(path)), data);
|
|
120
112
|
} catch (error) {
|
|
121
113
|
console.error("Error writing data:", error);
|
|
@@ -123,25 +115,11 @@ var writeData = async (path, data) => {
|
|
|
123
115
|
}
|
|
124
116
|
};
|
|
125
117
|
var onDataChange = (path, callback) => {
|
|
126
|
-
try {
|
|
127
|
-
if (!isInitialized) {
|
|
128
|
-
initFirebase();
|
|
129
|
-
}
|
|
130
|
-
} catch (error) {
|
|
131
|
-
console.error("init error", error);
|
|
132
|
-
}
|
|
133
118
|
const databaseRef = (0, import_database.ref)(database, getPath(path));
|
|
134
119
|
const listener = (0, import_database.onValue)(databaseRef, callback);
|
|
135
120
|
return listener;
|
|
136
121
|
};
|
|
137
122
|
var onDataChanged = (path, callback) => {
|
|
138
|
-
try {
|
|
139
|
-
if (!isInitialized) {
|
|
140
|
-
initFirebase();
|
|
141
|
-
}
|
|
142
|
-
} catch (error) {
|
|
143
|
-
console.error("init error", error);
|
|
144
|
-
}
|
|
145
123
|
const databaseRef = (0, import_database.ref)(database, getPath(path));
|
|
146
124
|
const listener = (0, import_database.onChildChanged)(databaseRef, callback);
|
|
147
125
|
return listener;
|
package/lib/otherUtils.d.ts
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @title: 判断是否无痕模式
|
|
3
|
+
* @description:
|
|
4
|
+
* @return: *
|
|
5
|
+
* @Author: shengjie.zuo
|
|
6
|
+
* @Date: 2024-09-4 09:58:22
|
|
7
|
+
*/
|
|
8
|
+
export declare const detectIncognito: () => Promise<{
|
|
9
|
+
isPrivate: boolean;
|
|
10
|
+
browserName: string;
|
|
11
|
+
} | {
|
|
12
|
+
isPrivate: boolean;
|
|
13
|
+
}>;
|
|
3
14
|
/**
|
|
4
15
|
* @Description: 生成唯一id
|
|
5
16
|
* @Author: wzw
|
package/lib/otherUtils.js
CHANGED
|
@@ -31,7 +31,7 @@ var otherUtils_exports = {};
|
|
|
31
31
|
__export(otherUtils_exports, {
|
|
32
32
|
changeArray: () => changeArray,
|
|
33
33
|
createArray: () => createArray,
|
|
34
|
-
detectIncognito: () =>
|
|
34
|
+
detectIncognito: () => detectIncognito,
|
|
35
35
|
generateUniqueIdByObj: () => generateUniqueIdByObj,
|
|
36
36
|
getItemByArray: () => getItemByArray,
|
|
37
37
|
getUniqueId: () => getUniqueId
|
|
@@ -40,6 +40,14 @@ module.exports = __toCommonJS(otherUtils_exports);
|
|
|
40
40
|
var import_md5 = __toESM(require("crypto-js/md5"));
|
|
41
41
|
var import_enc_hex = __toESM(require("crypto-js/enc-hex"));
|
|
42
42
|
var import_detectincognitojs = require("detectincognitojs");
|
|
43
|
+
var detectIncognito = async () => {
|
|
44
|
+
if (navigator.userAgent.toLowerCase().includes("honor")) {
|
|
45
|
+
return {
|
|
46
|
+
isPrivate: false
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
return await (0, import_detectincognitojs.detectIncognito)();
|
|
50
|
+
};
|
|
43
51
|
var getUniqueId = (prefix = "", maxLength = 11) => {
|
|
44
52
|
return prefix + (Math.random() + "").replace(/\D/g, "").substring(0, maxLength);
|
|
45
53
|
};
|