@blocklet/discuss-kit-ux 1.6.253 → 1.6.254
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/components/chat/hooks.d.ts +1 -0
- package/dist/components/chat/unread-notification.d.ts +1 -0
- package/dist/components/editor/preview.d.ts +3 -0
- package/dist/{editor-CxgvO4o6.mjs → editor-DHGKk8sm.mjs} +1 -1
- package/dist/{index-CNu5t46j.mjs → index-DxtzXjYS.mjs} +38 -911
- package/dist/index.es.js +1 -1
- package/dist/index.umd.js +178 -1052
- package/package.json +8 -7
|
@@ -9,7 +9,7 @@ import { Labels2, LabelPicker } from "@blocklet/labels";
|
|
|
9
9
|
import { jsx, jsxs, Fragment } from "react/jsx-runtime";
|
|
10
10
|
import { useTheme, ThemeProvider, styled } from "@mui/material/styles";
|
|
11
11
|
import { create as create$1, styled as styled$1 } from "@arcblock/ux/lib/Theme";
|
|
12
|
-
import
|
|
12
|
+
import { useEffect, useRef, useState, createElement, useContext, useMemo, isValidElement, lazy, Suspense, createContext, Fragment as Fragment$1, forwardRef, useCallback } from "react";
|
|
13
13
|
import { Box, useTheme as useTheme$1, useMediaQuery, Tooltip as Tooltip$1, Chip as Chip$1, alpha, ClickAwayListener, Dialog as Dialog$1, DialogTitle, DialogContent, DialogActions, DialogContentText, Button as Button$1, Divider, Skeleton, IconButton as IconButton$2, InputBase, tooltipClasses as tooltipClasses$1, Backdrop, Autocomplete, Typography as Typography$1, TextField as TextField$1, InputAdornment, SwipeableDrawer, Badge as Badge$1, Paper, ToggleButtonGroup, ToggleButton } from "@mui/material";
|
|
14
14
|
import isNil from "lodash/isNil";
|
|
15
15
|
import { useEditorConfig, EditorConfigProvider } from "@blocklet/editor/lib/config";
|
|
@@ -68,6 +68,7 @@ import { Flipper, Flipped } from "react-flip-toolkit";
|
|
|
68
68
|
import grey$1 from "@mui/material/colors/grey";
|
|
69
69
|
import cmp from "semver-compare";
|
|
70
70
|
import bridge from "@arcblock/bridge";
|
|
71
|
+
import { useBrowser } from "@arcblock/react-hooks";
|
|
71
72
|
import Fab from "@mui/material/Fab";
|
|
72
73
|
import debounce from "lodash/debounce";
|
|
73
74
|
import TextField from "@mui/material/TextField";
|
|
@@ -2859,7 +2860,7 @@ function CoverImage({
|
|
|
2859
2860
|
fetchpriority = "auto",
|
|
2860
2861
|
loading = "eager",
|
|
2861
2862
|
shadow = true,
|
|
2862
|
-
fallback,
|
|
2863
|
+
fallback: fallback2,
|
|
2863
2864
|
...rest
|
|
2864
2865
|
}) {
|
|
2865
2866
|
const [loaded, setLoaded] = useState(false);
|
|
@@ -2928,7 +2929,7 @@ function CoverImage({
|
|
|
2928
2929
|
width: "100%",
|
|
2929
2930
|
height: "100%"
|
|
2930
2931
|
},
|
|
2931
|
-
children:
|
|
2932
|
+
children: fallback2
|
|
2932
2933
|
}
|
|
2933
2934
|
)
|
|
2934
2935
|
]
|
|
@@ -3589,23 +3590,30 @@ const useUnreadNotification = () => useContext(UnreadNotificationContext);
|
|
|
3589
3590
|
function UnreadNotificationProvider({ fetchUnreadState, children }) {
|
|
3590
3591
|
const { session } = useSessionContext();
|
|
3591
3592
|
const [unread, setUnread] = useState(false);
|
|
3593
|
+
const [initialUnread, setInitialState] = useState(void 0);
|
|
3592
3594
|
const markAsUnread = useCallback((value2 = true) => setUnread(value2), []);
|
|
3593
3595
|
const update = async () => {
|
|
3594
3596
|
const unreadState = await fetchUnreadState();
|
|
3595
3597
|
setUnread(unreadState);
|
|
3598
|
+
return unreadState;
|
|
3596
3599
|
};
|
|
3597
3600
|
useEffect(() => {
|
|
3598
|
-
|
|
3599
|
-
|
|
3600
|
-
|
|
3601
|
+
const init = async () => {
|
|
3602
|
+
if (session.user && !preferences.disableNotificationBadge) {
|
|
3603
|
+
const unreadState = await update();
|
|
3604
|
+
setInitialState(unreadState);
|
|
3605
|
+
}
|
|
3606
|
+
};
|
|
3607
|
+
init();
|
|
3601
3608
|
}, [session.user]);
|
|
3602
3609
|
const value = useMemo(
|
|
3603
3610
|
() => ({
|
|
3604
3611
|
unread,
|
|
3612
|
+
initialUnread,
|
|
3605
3613
|
markAsUnread
|
|
3606
3614
|
}),
|
|
3607
3615
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
3608
|
-
[unread]
|
|
3616
|
+
[unread, initialUnread]
|
|
3609
3617
|
);
|
|
3610
3618
|
return /* @__PURE__ */ jsx(UnreadNotificationContext.Provider, { value, children });
|
|
3611
3619
|
}
|
|
@@ -3916,901 +3924,9 @@ function ChannelGroup({ size = "normal", chat, children, ...rest }) {
|
|
|
3916
3924
|
] })
|
|
3917
3925
|
] });
|
|
3918
3926
|
}
|
|
3919
|
-
function getAugmentedNamespace(n) {
|
|
3920
|
-
if (n.__esModule)
|
|
3921
|
-
return n;
|
|
3922
|
-
var f = n.default;
|
|
3923
|
-
if (typeof f == "function") {
|
|
3924
|
-
var a = function a2() {
|
|
3925
|
-
if (this instanceof a2) {
|
|
3926
|
-
return Reflect.construct(f, arguments, this.constructor);
|
|
3927
|
-
}
|
|
3928
|
-
return f.apply(this, arguments);
|
|
3929
|
-
};
|
|
3930
|
-
a.prototype = f.prototype;
|
|
3931
|
-
} else
|
|
3932
|
-
a = {};
|
|
3933
|
-
Object.defineProperty(a, "__esModule", { value: true });
|
|
3934
|
-
Object.keys(n).forEach(function(k) {
|
|
3935
|
-
var d = Object.getOwnPropertyDescriptor(n, k);
|
|
3936
|
-
Object.defineProperty(a, k, d.get ? d : {
|
|
3937
|
-
enumerable: true,
|
|
3938
|
-
get: function() {
|
|
3939
|
-
return n[k];
|
|
3940
|
-
}
|
|
3941
|
-
});
|
|
3942
|
-
});
|
|
3943
|
-
return a;
|
|
3944
|
-
}
|
|
3945
|
-
var lib = {};
|
|
3946
|
-
var useInterval$1 = {};
|
|
3947
|
-
Object.defineProperty(useInterval$1, "__esModule", {
|
|
3948
|
-
value: true
|
|
3949
|
-
});
|
|
3950
|
-
useInterval$1.default = useInterval;
|
|
3951
|
-
var _react$2 = require$$0;
|
|
3952
|
-
function useInterval(callback, delay) {
|
|
3953
|
-
const savedCallback = (0, _react$2.useRef)();
|
|
3954
|
-
(0, _react$2.useEffect)(() => {
|
|
3955
|
-
savedCallback.current = callback;
|
|
3956
|
-
}, [callback]);
|
|
3957
|
-
(0, _react$2.useEffect)(() => {
|
|
3958
|
-
function tick() {
|
|
3959
|
-
savedCallback.current();
|
|
3960
|
-
}
|
|
3961
|
-
if (delay !== null) {
|
|
3962
|
-
const id2 = setInterval(tick, delay);
|
|
3963
|
-
return () => clearInterval(id2);
|
|
3964
|
-
}
|
|
3965
|
-
}, [delay]);
|
|
3966
|
-
}
|
|
3967
|
-
var useStorage$1 = {};
|
|
3968
|
-
const privateData = /* @__PURE__ */ new WeakMap();
|
|
3969
|
-
const wrappers = /* @__PURE__ */ new WeakMap();
|
|
3970
|
-
function pd(event) {
|
|
3971
|
-
const retv = privateData.get(event);
|
|
3972
|
-
console.assert(
|
|
3973
|
-
retv != null,
|
|
3974
|
-
"'this' is expected an Event object, but got",
|
|
3975
|
-
event
|
|
3976
|
-
);
|
|
3977
|
-
return retv;
|
|
3978
|
-
}
|
|
3979
|
-
function setCancelFlag(data) {
|
|
3980
|
-
if (data.passiveListener != null) {
|
|
3981
|
-
if (typeof console !== "undefined" && typeof console.error === "function") {
|
|
3982
|
-
console.error(
|
|
3983
|
-
"Unable to preventDefault inside passive event listener invocation.",
|
|
3984
|
-
data.passiveListener
|
|
3985
|
-
);
|
|
3986
|
-
}
|
|
3987
|
-
return;
|
|
3988
|
-
}
|
|
3989
|
-
if (!data.event.cancelable) {
|
|
3990
|
-
return;
|
|
3991
|
-
}
|
|
3992
|
-
data.canceled = true;
|
|
3993
|
-
if (typeof data.event.preventDefault === "function") {
|
|
3994
|
-
data.event.preventDefault();
|
|
3995
|
-
}
|
|
3996
|
-
}
|
|
3997
|
-
function Event(eventTarget, event) {
|
|
3998
|
-
privateData.set(this, {
|
|
3999
|
-
eventTarget,
|
|
4000
|
-
event,
|
|
4001
|
-
eventPhase: 2,
|
|
4002
|
-
currentTarget: eventTarget,
|
|
4003
|
-
canceled: false,
|
|
4004
|
-
stopped: false,
|
|
4005
|
-
immediateStopped: false,
|
|
4006
|
-
passiveListener: null,
|
|
4007
|
-
timeStamp: event.timeStamp || Date.now()
|
|
4008
|
-
});
|
|
4009
|
-
Object.defineProperty(this, "isTrusted", { value: false, enumerable: true });
|
|
4010
|
-
const keys = Object.keys(event);
|
|
4011
|
-
for (let i = 0; i < keys.length; ++i) {
|
|
4012
|
-
const key = keys[i];
|
|
4013
|
-
if (!(key in this)) {
|
|
4014
|
-
Object.defineProperty(this, key, defineRedirectDescriptor(key));
|
|
4015
|
-
}
|
|
4016
|
-
}
|
|
4017
|
-
}
|
|
4018
|
-
Event.prototype = {
|
|
4019
|
-
/**
|
|
4020
|
-
* The type of this event.
|
|
4021
|
-
* @type {string}
|
|
4022
|
-
*/
|
|
4023
|
-
get type() {
|
|
4024
|
-
return pd(this).event.type;
|
|
4025
|
-
},
|
|
4026
|
-
/**
|
|
4027
|
-
* The target of this event.
|
|
4028
|
-
* @type {EventTarget}
|
|
4029
|
-
*/
|
|
4030
|
-
get target() {
|
|
4031
|
-
return pd(this).eventTarget;
|
|
4032
|
-
},
|
|
4033
|
-
/**
|
|
4034
|
-
* The target of this event.
|
|
4035
|
-
* @type {EventTarget}
|
|
4036
|
-
*/
|
|
4037
|
-
get currentTarget() {
|
|
4038
|
-
return pd(this).currentTarget;
|
|
4039
|
-
},
|
|
4040
|
-
/**
|
|
4041
|
-
* @returns {EventTarget[]} The composed path of this event.
|
|
4042
|
-
*/
|
|
4043
|
-
composedPath() {
|
|
4044
|
-
const currentTarget = pd(this).currentTarget;
|
|
4045
|
-
if (currentTarget == null) {
|
|
4046
|
-
return [];
|
|
4047
|
-
}
|
|
4048
|
-
return [currentTarget];
|
|
4049
|
-
},
|
|
4050
|
-
/**
|
|
4051
|
-
* Constant of NONE.
|
|
4052
|
-
* @type {number}
|
|
4053
|
-
*/
|
|
4054
|
-
get NONE() {
|
|
4055
|
-
return 0;
|
|
4056
|
-
},
|
|
4057
|
-
/**
|
|
4058
|
-
* Constant of CAPTURING_PHASE.
|
|
4059
|
-
* @type {number}
|
|
4060
|
-
*/
|
|
4061
|
-
get CAPTURING_PHASE() {
|
|
4062
|
-
return 1;
|
|
4063
|
-
},
|
|
4064
|
-
/**
|
|
4065
|
-
* Constant of AT_TARGET.
|
|
4066
|
-
* @type {number}
|
|
4067
|
-
*/
|
|
4068
|
-
get AT_TARGET() {
|
|
4069
|
-
return 2;
|
|
4070
|
-
},
|
|
4071
|
-
/**
|
|
4072
|
-
* Constant of BUBBLING_PHASE.
|
|
4073
|
-
* @type {number}
|
|
4074
|
-
*/
|
|
4075
|
-
get BUBBLING_PHASE() {
|
|
4076
|
-
return 3;
|
|
4077
|
-
},
|
|
4078
|
-
/**
|
|
4079
|
-
* The target of this event.
|
|
4080
|
-
* @type {number}
|
|
4081
|
-
*/
|
|
4082
|
-
get eventPhase() {
|
|
4083
|
-
return pd(this).eventPhase;
|
|
4084
|
-
},
|
|
4085
|
-
/**
|
|
4086
|
-
* Stop event bubbling.
|
|
4087
|
-
* @returns {void}
|
|
4088
|
-
*/
|
|
4089
|
-
stopPropagation() {
|
|
4090
|
-
const data = pd(this);
|
|
4091
|
-
data.stopped = true;
|
|
4092
|
-
if (typeof data.event.stopPropagation === "function") {
|
|
4093
|
-
data.event.stopPropagation();
|
|
4094
|
-
}
|
|
4095
|
-
},
|
|
4096
|
-
/**
|
|
4097
|
-
* Stop event bubbling.
|
|
4098
|
-
* @returns {void}
|
|
4099
|
-
*/
|
|
4100
|
-
stopImmediatePropagation() {
|
|
4101
|
-
const data = pd(this);
|
|
4102
|
-
data.stopped = true;
|
|
4103
|
-
data.immediateStopped = true;
|
|
4104
|
-
if (typeof data.event.stopImmediatePropagation === "function") {
|
|
4105
|
-
data.event.stopImmediatePropagation();
|
|
4106
|
-
}
|
|
4107
|
-
},
|
|
4108
|
-
/**
|
|
4109
|
-
* The flag to be bubbling.
|
|
4110
|
-
* @type {boolean}
|
|
4111
|
-
*/
|
|
4112
|
-
get bubbles() {
|
|
4113
|
-
return Boolean(pd(this).event.bubbles);
|
|
4114
|
-
},
|
|
4115
|
-
/**
|
|
4116
|
-
* The flag to be cancelable.
|
|
4117
|
-
* @type {boolean}
|
|
4118
|
-
*/
|
|
4119
|
-
get cancelable() {
|
|
4120
|
-
return Boolean(pd(this).event.cancelable);
|
|
4121
|
-
},
|
|
4122
|
-
/**
|
|
4123
|
-
* Cancel this event.
|
|
4124
|
-
* @returns {void}
|
|
4125
|
-
*/
|
|
4126
|
-
preventDefault() {
|
|
4127
|
-
setCancelFlag(pd(this));
|
|
4128
|
-
},
|
|
4129
|
-
/**
|
|
4130
|
-
* The flag to indicate cancellation state.
|
|
4131
|
-
* @type {boolean}
|
|
4132
|
-
*/
|
|
4133
|
-
get defaultPrevented() {
|
|
4134
|
-
return pd(this).canceled;
|
|
4135
|
-
},
|
|
4136
|
-
/**
|
|
4137
|
-
* The flag to be composed.
|
|
4138
|
-
* @type {boolean}
|
|
4139
|
-
*/
|
|
4140
|
-
get composed() {
|
|
4141
|
-
return Boolean(pd(this).event.composed);
|
|
4142
|
-
},
|
|
4143
|
-
/**
|
|
4144
|
-
* The unix time of this event.
|
|
4145
|
-
* @type {number}
|
|
4146
|
-
*/
|
|
4147
|
-
get timeStamp() {
|
|
4148
|
-
return pd(this).timeStamp;
|
|
4149
|
-
},
|
|
4150
|
-
/**
|
|
4151
|
-
* The target of this event.
|
|
4152
|
-
* @type {EventTarget}
|
|
4153
|
-
* @deprecated
|
|
4154
|
-
*/
|
|
4155
|
-
get srcElement() {
|
|
4156
|
-
return pd(this).eventTarget;
|
|
4157
|
-
},
|
|
4158
|
-
/**
|
|
4159
|
-
* The flag to stop event bubbling.
|
|
4160
|
-
* @type {boolean}
|
|
4161
|
-
* @deprecated
|
|
4162
|
-
*/
|
|
4163
|
-
get cancelBubble() {
|
|
4164
|
-
return pd(this).stopped;
|
|
4165
|
-
},
|
|
4166
|
-
set cancelBubble(value) {
|
|
4167
|
-
if (!value) {
|
|
4168
|
-
return;
|
|
4169
|
-
}
|
|
4170
|
-
const data = pd(this);
|
|
4171
|
-
data.stopped = true;
|
|
4172
|
-
if (typeof data.event.cancelBubble === "boolean") {
|
|
4173
|
-
data.event.cancelBubble = true;
|
|
4174
|
-
}
|
|
4175
|
-
},
|
|
4176
|
-
/**
|
|
4177
|
-
* The flag to indicate cancellation state.
|
|
4178
|
-
* @type {boolean}
|
|
4179
|
-
* @deprecated
|
|
4180
|
-
*/
|
|
4181
|
-
get returnValue() {
|
|
4182
|
-
return !pd(this).canceled;
|
|
4183
|
-
},
|
|
4184
|
-
set returnValue(value) {
|
|
4185
|
-
if (!value) {
|
|
4186
|
-
setCancelFlag(pd(this));
|
|
4187
|
-
}
|
|
4188
|
-
},
|
|
4189
|
-
/**
|
|
4190
|
-
* Initialize this event object. But do nothing under event dispatching.
|
|
4191
|
-
* @param {string} type The event type.
|
|
4192
|
-
* @param {boolean} [bubbles=false] The flag to be possible to bubble up.
|
|
4193
|
-
* @param {boolean} [cancelable=false] The flag to be possible to cancel.
|
|
4194
|
-
* @deprecated
|
|
4195
|
-
*/
|
|
4196
|
-
initEvent() {
|
|
4197
|
-
}
|
|
4198
|
-
};
|
|
4199
|
-
Object.defineProperty(Event.prototype, "constructor", {
|
|
4200
|
-
value: Event,
|
|
4201
|
-
configurable: true,
|
|
4202
|
-
writable: true
|
|
4203
|
-
});
|
|
4204
|
-
if (typeof window !== "undefined" && typeof window.Event !== "undefined") {
|
|
4205
|
-
Object.setPrototypeOf(Event.prototype, window.Event.prototype);
|
|
4206
|
-
wrappers.set(window.Event.prototype, Event);
|
|
4207
|
-
}
|
|
4208
|
-
function defineRedirectDescriptor(key) {
|
|
4209
|
-
return {
|
|
4210
|
-
get() {
|
|
4211
|
-
return pd(this).event[key];
|
|
4212
|
-
},
|
|
4213
|
-
set(value) {
|
|
4214
|
-
pd(this).event[key] = value;
|
|
4215
|
-
},
|
|
4216
|
-
configurable: true,
|
|
4217
|
-
enumerable: true
|
|
4218
|
-
};
|
|
4219
|
-
}
|
|
4220
|
-
function defineCallDescriptor(key) {
|
|
4221
|
-
return {
|
|
4222
|
-
value() {
|
|
4223
|
-
const event = pd(this).event;
|
|
4224
|
-
return event[key].apply(event, arguments);
|
|
4225
|
-
},
|
|
4226
|
-
configurable: true,
|
|
4227
|
-
enumerable: true
|
|
4228
|
-
};
|
|
4229
|
-
}
|
|
4230
|
-
function defineWrapper(BaseEvent, proto) {
|
|
4231
|
-
const keys = Object.keys(proto);
|
|
4232
|
-
if (keys.length === 0) {
|
|
4233
|
-
return BaseEvent;
|
|
4234
|
-
}
|
|
4235
|
-
function CustomEvent2(eventTarget, event) {
|
|
4236
|
-
BaseEvent.call(this, eventTarget, event);
|
|
4237
|
-
}
|
|
4238
|
-
CustomEvent2.prototype = Object.create(BaseEvent.prototype, {
|
|
4239
|
-
constructor: { value: CustomEvent2, configurable: true, writable: true }
|
|
4240
|
-
});
|
|
4241
|
-
for (let i = 0; i < keys.length; ++i) {
|
|
4242
|
-
const key = keys[i];
|
|
4243
|
-
if (!(key in BaseEvent.prototype)) {
|
|
4244
|
-
const descriptor = Object.getOwnPropertyDescriptor(proto, key);
|
|
4245
|
-
const isFunc = typeof descriptor.value === "function";
|
|
4246
|
-
Object.defineProperty(
|
|
4247
|
-
CustomEvent2.prototype,
|
|
4248
|
-
key,
|
|
4249
|
-
isFunc ? defineCallDescriptor(key) : defineRedirectDescriptor(key)
|
|
4250
|
-
);
|
|
4251
|
-
}
|
|
4252
|
-
}
|
|
4253
|
-
return CustomEvent2;
|
|
4254
|
-
}
|
|
4255
|
-
function getWrapper(proto) {
|
|
4256
|
-
if (proto == null || proto === Object.prototype) {
|
|
4257
|
-
return Event;
|
|
4258
|
-
}
|
|
4259
|
-
let wrapper = wrappers.get(proto);
|
|
4260
|
-
if (wrapper == null) {
|
|
4261
|
-
wrapper = defineWrapper(getWrapper(Object.getPrototypeOf(proto)), proto);
|
|
4262
|
-
wrappers.set(proto, wrapper);
|
|
4263
|
-
}
|
|
4264
|
-
return wrapper;
|
|
4265
|
-
}
|
|
4266
|
-
function wrapEvent(eventTarget, event) {
|
|
4267
|
-
const Wrapper = getWrapper(Object.getPrototypeOf(event));
|
|
4268
|
-
return new Wrapper(eventTarget, event);
|
|
4269
|
-
}
|
|
4270
|
-
function isStopped(event) {
|
|
4271
|
-
return pd(event).immediateStopped;
|
|
4272
|
-
}
|
|
4273
|
-
function setEventPhase(event, eventPhase) {
|
|
4274
|
-
pd(event).eventPhase = eventPhase;
|
|
4275
|
-
}
|
|
4276
|
-
function setCurrentTarget(event, currentTarget) {
|
|
4277
|
-
pd(event).currentTarget = currentTarget;
|
|
4278
|
-
}
|
|
4279
|
-
function setPassiveListener(event, passiveListener) {
|
|
4280
|
-
pd(event).passiveListener = passiveListener;
|
|
4281
|
-
}
|
|
4282
|
-
const listenersMap = /* @__PURE__ */ new WeakMap();
|
|
4283
|
-
const CAPTURE = 1;
|
|
4284
|
-
const BUBBLE = 2;
|
|
4285
|
-
const ATTRIBUTE = 3;
|
|
4286
|
-
function isObject(x) {
|
|
4287
|
-
return x !== null && typeof x === "object";
|
|
4288
|
-
}
|
|
4289
|
-
function getListeners(eventTarget) {
|
|
4290
|
-
const listeners = listenersMap.get(eventTarget);
|
|
4291
|
-
if (listeners == null) {
|
|
4292
|
-
throw new TypeError(
|
|
4293
|
-
"'this' is expected an EventTarget object, but got another value."
|
|
4294
|
-
);
|
|
4295
|
-
}
|
|
4296
|
-
return listeners;
|
|
4297
|
-
}
|
|
4298
|
-
function defineEventAttributeDescriptor(eventName) {
|
|
4299
|
-
return {
|
|
4300
|
-
get() {
|
|
4301
|
-
const listeners = getListeners(this);
|
|
4302
|
-
let node = listeners.get(eventName);
|
|
4303
|
-
while (node != null) {
|
|
4304
|
-
if (node.listenerType === ATTRIBUTE) {
|
|
4305
|
-
return node.listener;
|
|
4306
|
-
}
|
|
4307
|
-
node = node.next;
|
|
4308
|
-
}
|
|
4309
|
-
return null;
|
|
4310
|
-
},
|
|
4311
|
-
set(listener) {
|
|
4312
|
-
if (typeof listener !== "function" && !isObject(listener)) {
|
|
4313
|
-
listener = null;
|
|
4314
|
-
}
|
|
4315
|
-
const listeners = getListeners(this);
|
|
4316
|
-
let prev = null;
|
|
4317
|
-
let node = listeners.get(eventName);
|
|
4318
|
-
while (node != null) {
|
|
4319
|
-
if (node.listenerType === ATTRIBUTE) {
|
|
4320
|
-
if (prev !== null) {
|
|
4321
|
-
prev.next = node.next;
|
|
4322
|
-
} else if (node.next !== null) {
|
|
4323
|
-
listeners.set(eventName, node.next);
|
|
4324
|
-
} else {
|
|
4325
|
-
listeners.delete(eventName);
|
|
4326
|
-
}
|
|
4327
|
-
} else {
|
|
4328
|
-
prev = node;
|
|
4329
|
-
}
|
|
4330
|
-
node = node.next;
|
|
4331
|
-
}
|
|
4332
|
-
if (listener !== null) {
|
|
4333
|
-
const newNode = {
|
|
4334
|
-
listener,
|
|
4335
|
-
listenerType: ATTRIBUTE,
|
|
4336
|
-
passive: false,
|
|
4337
|
-
once: false,
|
|
4338
|
-
next: null
|
|
4339
|
-
};
|
|
4340
|
-
if (prev === null) {
|
|
4341
|
-
listeners.set(eventName, newNode);
|
|
4342
|
-
} else {
|
|
4343
|
-
prev.next = newNode;
|
|
4344
|
-
}
|
|
4345
|
-
}
|
|
4346
|
-
},
|
|
4347
|
-
configurable: true,
|
|
4348
|
-
enumerable: true
|
|
4349
|
-
};
|
|
4350
|
-
}
|
|
4351
|
-
function defineEventAttribute(eventTargetPrototype, eventName) {
|
|
4352
|
-
Object.defineProperty(
|
|
4353
|
-
eventTargetPrototype,
|
|
4354
|
-
`on${eventName}`,
|
|
4355
|
-
defineEventAttributeDescriptor(eventName)
|
|
4356
|
-
);
|
|
4357
|
-
}
|
|
4358
|
-
function defineCustomEventTarget(eventNames) {
|
|
4359
|
-
function CustomEventTarget() {
|
|
4360
|
-
EventTarget.call(this);
|
|
4361
|
-
}
|
|
4362
|
-
CustomEventTarget.prototype = Object.create(EventTarget.prototype, {
|
|
4363
|
-
constructor: {
|
|
4364
|
-
value: CustomEventTarget,
|
|
4365
|
-
configurable: true,
|
|
4366
|
-
writable: true
|
|
4367
|
-
}
|
|
4368
|
-
});
|
|
4369
|
-
for (let i = 0; i < eventNames.length; ++i) {
|
|
4370
|
-
defineEventAttribute(CustomEventTarget.prototype, eventNames[i]);
|
|
4371
|
-
}
|
|
4372
|
-
return CustomEventTarget;
|
|
4373
|
-
}
|
|
4374
|
-
function EventTarget() {
|
|
4375
|
-
if (this instanceof EventTarget) {
|
|
4376
|
-
listenersMap.set(this, /* @__PURE__ */ new Map());
|
|
4377
|
-
return;
|
|
4378
|
-
}
|
|
4379
|
-
if (arguments.length === 1 && Array.isArray(arguments[0])) {
|
|
4380
|
-
return defineCustomEventTarget(arguments[0]);
|
|
4381
|
-
}
|
|
4382
|
-
if (arguments.length > 0) {
|
|
4383
|
-
const types = new Array(arguments.length);
|
|
4384
|
-
for (let i = 0; i < arguments.length; ++i) {
|
|
4385
|
-
types[i] = arguments[i];
|
|
4386
|
-
}
|
|
4387
|
-
return defineCustomEventTarget(types);
|
|
4388
|
-
}
|
|
4389
|
-
throw new TypeError("Cannot call a class as a function");
|
|
4390
|
-
}
|
|
4391
|
-
EventTarget.prototype = {
|
|
4392
|
-
/**
|
|
4393
|
-
* Add a given listener to this event target.
|
|
4394
|
-
* @param {string} eventName The event name to add.
|
|
4395
|
-
* @param {Function} listener The listener to add.
|
|
4396
|
-
* @param {boolean|{capture?:boolean,passive?:boolean,once?:boolean}} [options] The options for this listener.
|
|
4397
|
-
* @returns {void}
|
|
4398
|
-
*/
|
|
4399
|
-
addEventListener(eventName, listener, options) {
|
|
4400
|
-
if (listener == null) {
|
|
4401
|
-
return;
|
|
4402
|
-
}
|
|
4403
|
-
if (typeof listener !== "function" && !isObject(listener)) {
|
|
4404
|
-
throw new TypeError("'listener' should be a function or an object.");
|
|
4405
|
-
}
|
|
4406
|
-
const listeners = getListeners(this);
|
|
4407
|
-
const optionsIsObj = isObject(options);
|
|
4408
|
-
const capture = optionsIsObj ? Boolean(options.capture) : Boolean(options);
|
|
4409
|
-
const listenerType = capture ? CAPTURE : BUBBLE;
|
|
4410
|
-
const newNode = {
|
|
4411
|
-
listener,
|
|
4412
|
-
listenerType,
|
|
4413
|
-
passive: optionsIsObj && Boolean(options.passive),
|
|
4414
|
-
once: optionsIsObj && Boolean(options.once),
|
|
4415
|
-
next: null
|
|
4416
|
-
};
|
|
4417
|
-
let node = listeners.get(eventName);
|
|
4418
|
-
if (node === void 0) {
|
|
4419
|
-
listeners.set(eventName, newNode);
|
|
4420
|
-
return;
|
|
4421
|
-
}
|
|
4422
|
-
let prev = null;
|
|
4423
|
-
while (node != null) {
|
|
4424
|
-
if (node.listener === listener && node.listenerType === listenerType) {
|
|
4425
|
-
return;
|
|
4426
|
-
}
|
|
4427
|
-
prev = node;
|
|
4428
|
-
node = node.next;
|
|
4429
|
-
}
|
|
4430
|
-
prev.next = newNode;
|
|
4431
|
-
},
|
|
4432
|
-
/**
|
|
4433
|
-
* Remove a given listener from this event target.
|
|
4434
|
-
* @param {string} eventName The event name to remove.
|
|
4435
|
-
* @param {Function} listener The listener to remove.
|
|
4436
|
-
* @param {boolean|{capture?:boolean,passive?:boolean,once?:boolean}} [options] The options for this listener.
|
|
4437
|
-
* @returns {void}
|
|
4438
|
-
*/
|
|
4439
|
-
removeEventListener(eventName, listener, options) {
|
|
4440
|
-
if (listener == null) {
|
|
4441
|
-
return;
|
|
4442
|
-
}
|
|
4443
|
-
const listeners = getListeners(this);
|
|
4444
|
-
const capture = isObject(options) ? Boolean(options.capture) : Boolean(options);
|
|
4445
|
-
const listenerType = capture ? CAPTURE : BUBBLE;
|
|
4446
|
-
let prev = null;
|
|
4447
|
-
let node = listeners.get(eventName);
|
|
4448
|
-
while (node != null) {
|
|
4449
|
-
if (node.listener === listener && node.listenerType === listenerType) {
|
|
4450
|
-
if (prev !== null) {
|
|
4451
|
-
prev.next = node.next;
|
|
4452
|
-
} else if (node.next !== null) {
|
|
4453
|
-
listeners.set(eventName, node.next);
|
|
4454
|
-
} else {
|
|
4455
|
-
listeners.delete(eventName);
|
|
4456
|
-
}
|
|
4457
|
-
return;
|
|
4458
|
-
}
|
|
4459
|
-
prev = node;
|
|
4460
|
-
node = node.next;
|
|
4461
|
-
}
|
|
4462
|
-
},
|
|
4463
|
-
/**
|
|
4464
|
-
* Dispatch a given event.
|
|
4465
|
-
* @param {Event|{type:string}} event The event to dispatch.
|
|
4466
|
-
* @returns {boolean} `false` if canceled.
|
|
4467
|
-
*/
|
|
4468
|
-
dispatchEvent(event) {
|
|
4469
|
-
if (event == null || typeof event.type !== "string") {
|
|
4470
|
-
throw new TypeError('"event.type" should be a string.');
|
|
4471
|
-
}
|
|
4472
|
-
const listeners = getListeners(this);
|
|
4473
|
-
const eventName = event.type;
|
|
4474
|
-
let node = listeners.get(eventName);
|
|
4475
|
-
if (node == null) {
|
|
4476
|
-
return true;
|
|
4477
|
-
}
|
|
4478
|
-
const wrappedEvent = wrapEvent(this, event);
|
|
4479
|
-
let prev = null;
|
|
4480
|
-
while (node != null) {
|
|
4481
|
-
if (node.once) {
|
|
4482
|
-
if (prev !== null) {
|
|
4483
|
-
prev.next = node.next;
|
|
4484
|
-
} else if (node.next !== null) {
|
|
4485
|
-
listeners.set(eventName, node.next);
|
|
4486
|
-
} else {
|
|
4487
|
-
listeners.delete(eventName);
|
|
4488
|
-
}
|
|
4489
|
-
} else {
|
|
4490
|
-
prev = node;
|
|
4491
|
-
}
|
|
4492
|
-
setPassiveListener(
|
|
4493
|
-
wrappedEvent,
|
|
4494
|
-
node.passive ? node.listener : null
|
|
4495
|
-
);
|
|
4496
|
-
if (typeof node.listener === "function") {
|
|
4497
|
-
try {
|
|
4498
|
-
node.listener.call(this, wrappedEvent);
|
|
4499
|
-
} catch (err) {
|
|
4500
|
-
if (typeof console !== "undefined" && typeof console.error === "function") {
|
|
4501
|
-
console.error(err);
|
|
4502
|
-
}
|
|
4503
|
-
}
|
|
4504
|
-
} else if (node.listenerType !== ATTRIBUTE && typeof node.listener.handleEvent === "function") {
|
|
4505
|
-
node.listener.handleEvent(wrappedEvent);
|
|
4506
|
-
}
|
|
4507
|
-
if (isStopped(wrappedEvent)) {
|
|
4508
|
-
break;
|
|
4509
|
-
}
|
|
4510
|
-
node = node.next;
|
|
4511
|
-
}
|
|
4512
|
-
setPassiveListener(wrappedEvent, null);
|
|
4513
|
-
setEventPhase(wrappedEvent, 0);
|
|
4514
|
-
setCurrentTarget(wrappedEvent, null);
|
|
4515
|
-
return !wrappedEvent.defaultPrevented;
|
|
4516
|
-
}
|
|
4517
|
-
};
|
|
4518
|
-
Object.defineProperty(EventTarget.prototype, "constructor", {
|
|
4519
|
-
value: EventTarget,
|
|
4520
|
-
configurable: true,
|
|
4521
|
-
writable: true
|
|
4522
|
-
});
|
|
4523
|
-
if (typeof window !== "undefined" && typeof window.EventTarget !== "undefined") {
|
|
4524
|
-
Object.setPrototypeOf(EventTarget.prototype, window.EventTarget.prototype);
|
|
4525
|
-
}
|
|
4526
|
-
const eventTargetShim = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
4527
|
-
__proto__: null,
|
|
4528
|
-
EventTarget,
|
|
4529
|
-
default: EventTarget,
|
|
4530
|
-
defineEventAttribute
|
|
4531
|
-
}, Symbol.toStringTag, { value: "Module" }));
|
|
4532
|
-
const require$$1$1 = /* @__PURE__ */ getAugmentedNamespace(eventTargetShim);
|
|
4533
|
-
Object.defineProperty(useStorage$1, "__esModule", {
|
|
4534
|
-
value: true
|
|
4535
|
-
});
|
|
4536
|
-
useStorage$1.default = useStorage;
|
|
4537
|
-
var _react$1 = require$$0;
|
|
4538
|
-
var _eventTargetShim = require$$1$1;
|
|
4539
|
-
const evtTarget = new _eventTargetShim.EventTarget();
|
|
4540
|
-
function useStorage(storage, keyPrefix) {
|
|
4541
|
-
return (key, defaultValue) => {
|
|
4542
|
-
const storeKey = "".concat(keyPrefix, ".").concat(key);
|
|
4543
|
-
const raw = storage.getItem(storeKey);
|
|
4544
|
-
const [value, setValue] = (0, _react$1.useState)(raw ? JSON.parse(raw) : defaultValue);
|
|
4545
|
-
const updater = (updatedValue) => {
|
|
4546
|
-
setValue(updatedValue);
|
|
4547
|
-
storage.setItem(storeKey, JSON.stringify(updatedValue));
|
|
4548
|
-
evtTarget.dispatchEvent(new CustomEvent("storage_change", {
|
|
4549
|
-
detail: {
|
|
4550
|
-
key
|
|
4551
|
-
}
|
|
4552
|
-
}));
|
|
4553
|
-
};
|
|
4554
|
-
if (defaultValue != null && !raw) {
|
|
4555
|
-
updater(defaultValue);
|
|
4556
|
-
}
|
|
4557
|
-
(0, _react$1.useEffect)(() => {
|
|
4558
|
-
const listener = (_ref) => {
|
|
4559
|
-
let {
|
|
4560
|
-
detail
|
|
4561
|
-
} = _ref;
|
|
4562
|
-
if (detail.key === key) {
|
|
4563
|
-
const _raw = storage.getItem(storeKey);
|
|
4564
|
-
if (_raw !== raw) {
|
|
4565
|
-
setValue(JSON.parse(_raw));
|
|
4566
|
-
}
|
|
4567
|
-
}
|
|
4568
|
-
};
|
|
4569
|
-
evtTarget.addEventListener("storage_change", listener);
|
|
4570
|
-
return () => evtTarget.removeEventListener("storage_change", listener);
|
|
4571
|
-
});
|
|
4572
|
-
return [value, updater];
|
|
4573
|
-
};
|
|
4574
|
-
}
|
|
4575
|
-
var useBrowser$1 = {};
|
|
4576
|
-
var appleIphone = /iPhone/i;
|
|
4577
|
-
var appleIpod = /iPod/i;
|
|
4578
|
-
var appleTablet = /iPad/i;
|
|
4579
|
-
var appleUniversal = /\biOS-universal(?:.+)Mac\b/i;
|
|
4580
|
-
var androidPhone = /\bAndroid(?:.+)Mobile\b/i;
|
|
4581
|
-
var androidTablet = /Android/i;
|
|
4582
|
-
var amazonPhone = /(?:SD4930UR|\bSilk(?:.+)Mobile\b)/i;
|
|
4583
|
-
var amazonTablet = /Silk/i;
|
|
4584
|
-
var windowsPhone = /Windows Phone/i;
|
|
4585
|
-
var windowsTablet = /\bWindows(?:.+)ARM\b/i;
|
|
4586
|
-
var otherBlackBerry = /BlackBerry/i;
|
|
4587
|
-
var otherBlackBerry10 = /BB10/i;
|
|
4588
|
-
var otherOpera = /Opera Mini/i;
|
|
4589
|
-
var otherChrome = /\b(CriOS|Chrome)(?:.+)Mobile/i;
|
|
4590
|
-
var otherFirefox = /Mobile(?:.+)Firefox\b/i;
|
|
4591
|
-
var isAppleTabletOnIos13 = function(navigator2) {
|
|
4592
|
-
return typeof navigator2 !== "undefined" && navigator2.platform === "MacIntel" && typeof navigator2.maxTouchPoints === "number" && navigator2.maxTouchPoints > 1 && typeof MSStream === "undefined";
|
|
4593
|
-
};
|
|
4594
|
-
function createMatch(userAgent) {
|
|
4595
|
-
return function(regex) {
|
|
4596
|
-
return regex.test(userAgent);
|
|
4597
|
-
};
|
|
4598
|
-
}
|
|
4599
|
-
function isMobile(param) {
|
|
4600
|
-
var nav = {
|
|
4601
|
-
userAgent: "",
|
|
4602
|
-
platform: "",
|
|
4603
|
-
maxTouchPoints: 0
|
|
4604
|
-
};
|
|
4605
|
-
if (!param && typeof navigator !== "undefined") {
|
|
4606
|
-
nav = {
|
|
4607
|
-
userAgent: navigator.userAgent,
|
|
4608
|
-
platform: navigator.platform,
|
|
4609
|
-
maxTouchPoints: navigator.maxTouchPoints || 0
|
|
4610
|
-
};
|
|
4611
|
-
} else if (typeof param === "string") {
|
|
4612
|
-
nav.userAgent = param;
|
|
4613
|
-
} else if (param && param.userAgent) {
|
|
4614
|
-
nav = {
|
|
4615
|
-
userAgent: param.userAgent,
|
|
4616
|
-
platform: param.platform,
|
|
4617
|
-
maxTouchPoints: param.maxTouchPoints || 0
|
|
4618
|
-
};
|
|
4619
|
-
}
|
|
4620
|
-
var userAgent = nav.userAgent;
|
|
4621
|
-
var tmp = userAgent.split("[FBAN");
|
|
4622
|
-
if (typeof tmp[1] !== "undefined") {
|
|
4623
|
-
userAgent = tmp[0];
|
|
4624
|
-
}
|
|
4625
|
-
tmp = userAgent.split("Twitter");
|
|
4626
|
-
if (typeof tmp[1] !== "undefined") {
|
|
4627
|
-
userAgent = tmp[0];
|
|
4628
|
-
}
|
|
4629
|
-
var match = createMatch(userAgent);
|
|
4630
|
-
var result = {
|
|
4631
|
-
apple: {
|
|
4632
|
-
phone: match(appleIphone) && !match(windowsPhone),
|
|
4633
|
-
ipod: match(appleIpod),
|
|
4634
|
-
tablet: !match(appleIphone) && (match(appleTablet) || isAppleTabletOnIos13(nav)) && !match(windowsPhone),
|
|
4635
|
-
universal: match(appleUniversal),
|
|
4636
|
-
device: (match(appleIphone) || match(appleIpod) || match(appleTablet) || match(appleUniversal) || isAppleTabletOnIos13(nav)) && !match(windowsPhone)
|
|
4637
|
-
},
|
|
4638
|
-
amazon: {
|
|
4639
|
-
phone: match(amazonPhone),
|
|
4640
|
-
tablet: !match(amazonPhone) && match(amazonTablet),
|
|
4641
|
-
device: match(amazonPhone) || match(amazonTablet)
|
|
4642
|
-
},
|
|
4643
|
-
android: {
|
|
4644
|
-
phone: !match(windowsPhone) && match(amazonPhone) || !match(windowsPhone) && match(androidPhone),
|
|
4645
|
-
tablet: !match(windowsPhone) && !match(amazonPhone) && !match(androidPhone) && (match(amazonTablet) || match(androidTablet)),
|
|
4646
|
-
device: !match(windowsPhone) && (match(amazonPhone) || match(amazonTablet) || match(androidPhone) || match(androidTablet)) || match(/\bokhttp\b/i)
|
|
4647
|
-
},
|
|
4648
|
-
windows: {
|
|
4649
|
-
phone: match(windowsPhone),
|
|
4650
|
-
tablet: match(windowsTablet),
|
|
4651
|
-
device: match(windowsPhone) || match(windowsTablet)
|
|
4652
|
-
},
|
|
4653
|
-
other: {
|
|
4654
|
-
blackberry: match(otherBlackBerry),
|
|
4655
|
-
blackberry10: match(otherBlackBerry10),
|
|
4656
|
-
opera: match(otherOpera),
|
|
4657
|
-
firefox: match(otherFirefox),
|
|
4658
|
-
chrome: match(otherChrome),
|
|
4659
|
-
device: match(otherBlackBerry) || match(otherBlackBerry10) || match(otherOpera) || match(otherFirefox) || match(otherChrome)
|
|
4660
|
-
},
|
|
4661
|
-
any: false,
|
|
4662
|
-
phone: false,
|
|
4663
|
-
tablet: false
|
|
4664
|
-
};
|
|
4665
|
-
result.any = result.apple.device || result.android.device || result.windows.device || result.other.device;
|
|
4666
|
-
result.phone = result.apple.phone || result.android.phone || result.windows.phone;
|
|
4667
|
-
result.tablet = result.apple.tablet || result.android.tablet || result.windows.tablet;
|
|
4668
|
-
return result;
|
|
4669
|
-
}
|
|
4670
|
-
const esm = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
4671
|
-
__proto__: null,
|
|
4672
|
-
default: isMobile
|
|
4673
|
-
}, Symbol.toStringTag, { value: "Module" }));
|
|
4674
|
-
const require$$1 = /* @__PURE__ */ getAugmentedNamespace(esm);
|
|
4675
|
-
Object.defineProperty(useBrowser$1, "__esModule", {
|
|
4676
|
-
value: true
|
|
4677
|
-
});
|
|
4678
|
-
useBrowser$1.default = useBrowser;
|
|
4679
|
-
var _react = require$$0;
|
|
4680
|
-
var _ismobilejs = _interopRequireDefault(require$$1);
|
|
4681
|
-
function _interopRequireDefault(obj) {
|
|
4682
|
-
return obj && obj.__esModule ? obj : { default: obj };
|
|
4683
|
-
}
|
|
4684
|
-
function ownKeys(e, r) {
|
|
4685
|
-
var t = Object.keys(e);
|
|
4686
|
-
if (Object.getOwnPropertySymbols) {
|
|
4687
|
-
var o = Object.getOwnPropertySymbols(e);
|
|
4688
|
-
r && (o = o.filter(function(r2) {
|
|
4689
|
-
return Object.getOwnPropertyDescriptor(e, r2).enumerable;
|
|
4690
|
-
})), t.push.apply(t, o);
|
|
4691
|
-
}
|
|
4692
|
-
return t;
|
|
4693
|
-
}
|
|
4694
|
-
function _objectSpread(e) {
|
|
4695
|
-
for (var r = 1; r < arguments.length; r++) {
|
|
4696
|
-
var t = null != arguments[r] ? arguments[r] : {};
|
|
4697
|
-
r % 2 ? ownKeys(Object(t), true).forEach(function(r2) {
|
|
4698
|
-
_defineProperty(e, r2, t[r2]);
|
|
4699
|
-
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r2) {
|
|
4700
|
-
Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));
|
|
4701
|
-
});
|
|
4702
|
-
}
|
|
4703
|
-
return e;
|
|
4704
|
-
}
|
|
4705
|
-
function _defineProperty(obj, key, value) {
|
|
4706
|
-
key = _toPropertyKey(key);
|
|
4707
|
-
if (key in obj) {
|
|
4708
|
-
Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true });
|
|
4709
|
-
} else {
|
|
4710
|
-
obj[key] = value;
|
|
4711
|
-
}
|
|
4712
|
-
return obj;
|
|
4713
|
-
}
|
|
4714
|
-
function _toPropertyKey(t) {
|
|
4715
|
-
var i = _toPrimitive(t, "string");
|
|
4716
|
-
return "symbol" == typeof i ? i : String(i);
|
|
4717
|
-
}
|
|
4718
|
-
function _toPrimitive(t, r) {
|
|
4719
|
-
if ("object" != typeof t || !t)
|
|
4720
|
-
return t;
|
|
4721
|
-
var e = t[Symbol.toPrimitive];
|
|
4722
|
-
if (void 0 !== e) {
|
|
4723
|
-
var i = e.call(t, r || "default");
|
|
4724
|
-
if ("object" != typeof i)
|
|
4725
|
-
return i;
|
|
4726
|
-
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
4727
|
-
}
|
|
4728
|
-
return ("string" === r ? String : Number)(t);
|
|
4729
|
-
}
|
|
4730
|
-
const DID_WALLET_TAG = "ABTWallet";
|
|
4731
|
-
function getDIDWalletVersion(userAgent) {
|
|
4732
|
-
var _result$groups;
|
|
4733
|
-
const reg = new RegExp("".concat(DID_WALLET_TAG, "/(?<version>[0-9.]+)"), "g");
|
|
4734
|
-
const result = reg.exec(userAgent);
|
|
4735
|
-
const version = result === null || result === void 0 ? void 0 : (_result$groups = result.groups) === null || _result$groups === void 0 ? void 0 : _result$groups.version;
|
|
4736
|
-
return version;
|
|
4737
|
-
}
|
|
4738
|
-
function useBrowser() {
|
|
4739
|
-
var _window, _window$navigator;
|
|
4740
|
-
const userAgent = (_window = window) === null || _window === void 0 ? void 0 : (_window$navigator = _window.navigator) === null || _window$navigator === void 0 ? void 0 : _window$navigator.userAgent;
|
|
4741
|
-
const [browser] = (0, _react.useState)({
|
|
4742
|
-
wallet: userAgent.indexOf(DID_WALLET_TAG) > -1,
|
|
4743
|
-
walletVersion: getDIDWalletVersion(userAgent),
|
|
4744
|
-
wechat: /MicroMessenger/i.test(userAgent),
|
|
4745
|
-
mobile: _objectSpread({
|
|
4746
|
-
apple: {
|
|
4747
|
-
phone: false,
|
|
4748
|
-
ipod: false,
|
|
4749
|
-
tablet: false,
|
|
4750
|
-
device: false
|
|
4751
|
-
},
|
|
4752
|
-
amazon: {
|
|
4753
|
-
phone: false,
|
|
4754
|
-
tablet: false,
|
|
4755
|
-
device: false
|
|
4756
|
-
},
|
|
4757
|
-
android: {
|
|
4758
|
-
phone: false,
|
|
4759
|
-
tablet: false,
|
|
4760
|
-
device: false
|
|
4761
|
-
},
|
|
4762
|
-
windows: {
|
|
4763
|
-
phone: false,
|
|
4764
|
-
tablet: false,
|
|
4765
|
-
device: false
|
|
4766
|
-
},
|
|
4767
|
-
other: {
|
|
4768
|
-
blackberry: false,
|
|
4769
|
-
blackberry10: false,
|
|
4770
|
-
opera: false,
|
|
4771
|
-
firefox: false,
|
|
4772
|
-
chrome: false,
|
|
4773
|
-
device: false
|
|
4774
|
-
},
|
|
4775
|
-
phone: false,
|
|
4776
|
-
tablet: false,
|
|
4777
|
-
any: false
|
|
4778
|
-
}, (0, _ismobilejs.default)(userAgent))
|
|
4779
|
-
});
|
|
4780
|
-
return browser;
|
|
4781
|
-
}
|
|
4782
|
-
(function(exports) {
|
|
4783
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4784
|
-
value: true
|
|
4785
|
-
});
|
|
4786
|
-
Object.defineProperty(exports, "useBrowser", {
|
|
4787
|
-
enumerable: true,
|
|
4788
|
-
get: function get() {
|
|
4789
|
-
return _useBrowser.default;
|
|
4790
|
-
}
|
|
4791
|
-
});
|
|
4792
|
-
Object.defineProperty(exports, "useInterval", {
|
|
4793
|
-
enumerable: true,
|
|
4794
|
-
get: function get() {
|
|
4795
|
-
return _useInterval.default;
|
|
4796
|
-
}
|
|
4797
|
-
});
|
|
4798
|
-
Object.defineProperty(exports, "useStorage", {
|
|
4799
|
-
enumerable: true,
|
|
4800
|
-
get: function get() {
|
|
4801
|
-
return _useStorage.default;
|
|
4802
|
-
}
|
|
4803
|
-
});
|
|
4804
|
-
var _useInterval = _interopRequireDefault2(useInterval$1);
|
|
4805
|
-
var _useStorage = _interopRequireDefault2(useStorage$1);
|
|
4806
|
-
var _useBrowser = _interopRequireDefault2(useBrowser$1);
|
|
4807
|
-
function _interopRequireDefault2(obj) {
|
|
4808
|
-
return obj && obj.__esModule ? obj : { default: obj };
|
|
4809
|
-
}
|
|
4810
|
-
})(lib);
|
|
4811
3927
|
const useChatInWallet = () => {
|
|
4812
3928
|
const navigate = useNavigate();
|
|
4813
|
-
const { walletVersion, mobile } =
|
|
3929
|
+
const { walletVersion, mobile } = useBrowser();
|
|
4814
3930
|
const isChatInWalletV2 = useMemo(() => {
|
|
4815
3931
|
try {
|
|
4816
3932
|
const targetVersion = mobile.apple.device ? "5.3.5" : "5.3.1";
|
|
@@ -4830,7 +3946,10 @@ const useChatInWallet = () => {
|
|
|
4830
3946
|
const navigateToChatList = () => {
|
|
4831
3947
|
navigate("/chat-in-wallet");
|
|
4832
3948
|
};
|
|
4833
|
-
|
|
3949
|
+
const updateUnreadState = useCallback((unread) => {
|
|
3950
|
+
bridge.call("updateUnreadState", { unread });
|
|
3951
|
+
}, []);
|
|
3952
|
+
return { navigateToChat, navigateToChatList, isChatInWalletV2, updateUnreadState };
|
|
4834
3953
|
};
|
|
4835
3954
|
function ChatList({ inWallet, ...rest }) {
|
|
4836
3955
|
const { t } = useLocaleContext();
|
|
@@ -6159,7 +5278,13 @@ function Empty({ sx }) {
|
|
|
6159
5278
|
}
|
|
6160
5279
|
function ChatListInWallet({ sx, ...rest }) {
|
|
6161
5280
|
const { initialized, chats, activeChatId } = useChatContext();
|
|
6162
|
-
const {
|
|
5281
|
+
const { initialUnread } = useUnreadNotification();
|
|
5282
|
+
const { navigateToChatList, updateUnreadState } = useChatInWallet();
|
|
5283
|
+
useEffect(() => {
|
|
5284
|
+
if (typeof initialUnread === "boolean") {
|
|
5285
|
+
updateUnreadState(initialUnread);
|
|
5286
|
+
}
|
|
5287
|
+
}, [initialUnread, updateUnreadState]);
|
|
6163
5288
|
if (!initialized) {
|
|
6164
5289
|
return /* @__PURE__ */ jsx(CircularProgress, {});
|
|
6165
5290
|
}
|
|
@@ -6181,6 +5306,7 @@ function ChatListInWallet({ sx, ...rest }) {
|
|
|
6181
5306
|
/* @__PURE__ */ jsx(
|
|
6182
5307
|
SwipeableDrawer,
|
|
6183
5308
|
{
|
|
5309
|
+
disableSwipeToOpen: true,
|
|
6184
5310
|
PaperProps: { sx: { width: 1 } },
|
|
6185
5311
|
anchor: "right",
|
|
6186
5312
|
open: !!activeChatId,
|
|
@@ -6486,24 +5612,24 @@ function Pagination({
|
|
|
6486
5612
|
}
|
|
6487
5613
|
);
|
|
6488
5614
|
}
|
|
6489
|
-
const Editor = lazy(() => import("./editor-
|
|
5615
|
+
const Editor = lazy(() => import("./editor-DHGKk8sm.mjs"));
|
|
6490
5616
|
function LazyEditor(props) {
|
|
6491
|
-
const
|
|
5617
|
+
const fallback2 = /* @__PURE__ */ jsxs(Box, { sx: { px: 3 }, children: [
|
|
6492
5618
|
/* @__PURE__ */ jsx(Skeleton, {}),
|
|
6493
5619
|
/* @__PURE__ */ jsx(Skeleton, { width: "80%" }),
|
|
6494
5620
|
/* @__PURE__ */ jsx(Skeleton, { width: "60%" }),
|
|
6495
5621
|
/* @__PURE__ */ jsx(Skeleton, { width: "40%" })
|
|
6496
5622
|
] });
|
|
6497
|
-
return /* @__PURE__ */ jsx(Suspense, { fallback, children: /* @__PURE__ */ jsx(Editor, { ...props }) });
|
|
5623
|
+
return /* @__PURE__ */ jsx(Suspense, { fallback: fallback2, children: /* @__PURE__ */ jsx(Editor, { ...props }) });
|
|
6498
5624
|
}
|
|
6499
5625
|
const BlockletEditor = lazy(() => import("@blocklet/editor"));
|
|
5626
|
+
const fallback = /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
5627
|
+
/* @__PURE__ */ jsx(Skeleton, {}),
|
|
5628
|
+
/* @__PURE__ */ jsx(Skeleton, { width: "80%" }),
|
|
5629
|
+
/* @__PURE__ */ jsx(Skeleton, { width: "60%" }),
|
|
5630
|
+
/* @__PURE__ */ jsx(Skeleton, { width: "40%" })
|
|
5631
|
+
] });
|
|
6500
5632
|
function EditorPreview({ content, children, ...rest }) {
|
|
6501
|
-
const fallback = /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
6502
|
-
/* @__PURE__ */ jsx(Skeleton, {}),
|
|
6503
|
-
/* @__PURE__ */ jsx(Skeleton, { width: "80%" }),
|
|
6504
|
-
/* @__PURE__ */ jsx(Skeleton, { width: "60%" }),
|
|
6505
|
-
/* @__PURE__ */ jsx(Skeleton, { width: "40%" })
|
|
6506
|
-
] });
|
|
6507
5633
|
return /* @__PURE__ */ jsx(Suspense, { fallback, children: /* @__PURE__ */ jsxs(
|
|
6508
5634
|
BlockletEditor,
|
|
6509
5635
|
{
|
|
@@ -6519,6 +5645,7 @@ function EditorPreview({ content, children, ...rest }) {
|
|
|
6519
5645
|
}
|
|
6520
5646
|
) });
|
|
6521
5647
|
}
|
|
5648
|
+
EditorPreview.fallback = fallback;
|
|
6522
5649
|
const useBeforeUnloadPrompt = (dirty) => {
|
|
6523
5650
|
useEffect(() => {
|
|
6524
5651
|
const showPrompt = (e) => {
|