@velora-dex/widget 0.0.16 → 0.0.18
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/ui/dialog.d.ts.map +1 -1
- package/dist/components/ui/dialog.js +3 -1
- package/dist/components/ui/dialog.js.map +1 -1
- package/dist/components/ui/sonner.d.ts.map +1 -1
- package/dist/components/ui/sonner.js +3 -2
- package/dist/components/ui/sonner.js.map +1 -1
- package/dist/components/web3/AccountButton.js +1 -1
- package/dist/components/web3/AccountButton.js.map +1 -1
- package/dist/components/web3/ConnectWallets/privy/button.d.ts.map +1 -1
- package/dist/components/web3/ConnectWallets/privy/button.js +99 -76
- package/dist/components/web3/ConnectWallets/privy/button.js.map +1 -1
- package/dist/components/web3/ConnectWallets/privy/connectRunner.d.ts.map +1 -1
- package/dist/components/web3/ConnectWallets/privy/connectRunner.js +5 -3
- package/dist/components/web3/ConnectWallets/privy/connectRunner.js.map +1 -1
- package/dist/components/widget/Drawer/state/useDrawerControls.d.ts.map +1 -1
- package/dist/components/widget/Drawer/state/useDrawerControls.js +29 -23
- package/dist/components/widget/Drawer/state/useDrawerControls.js.map +1 -1
- package/dist/components/widget/NetworkIcon/NetworkIconSquare.d.ts.map +1 -1
- package/dist/components/widget/NetworkIcon/NetworkIconSquare.js +3 -1
- package/dist/components/widget/NetworkIcon/NetworkIconSquare.js.map +1 -1
- package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.d.ts.map +1 -1
- package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js +3 -1
- package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js.map +1 -1
- package/dist/components/widget/RowVirtualizer/RowVirtualizerFixed.d.ts.map +1 -1
- package/dist/components/widget/RowVirtualizer/RowVirtualizerFixed.js +3 -1
- package/dist/components/widget/RowVirtualizer/RowVirtualizerFixed.js.map +1 -1
- package/dist/components/widget/SelectToken/SelectTokenButton.d.ts.map +1 -1
- package/dist/components/widget/SelectToken/SelectTokenButton.js +106 -101
- package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js +1 -1
- package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.d.ts.map +1 -1
- package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js +33 -28
- package/dist/components/widget/WrapEth/hooks/useSubmitDepositTxMutation.js.map +1 -1
- package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.d.ts.map +1 -1
- package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.js +17 -14
- package/dist/hooks/permit/hooks/permit1/useGetPermitInfo.js.map +1 -1
- package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.d.ts.map +1 -1
- package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.js +18 -15
- package/dist/hooks/permit/hooks/permit1/useTryToSignPermit1.js.map +1 -1
- package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.d.ts.map +1 -1
- package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js +2 -4
- package/dist/hooks/permit/hooks/permit2/usePermit2Allowance.js.map +1 -1
- package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.d.ts.map +1 -1
- package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.js +6 -4
- package/dist/hooks/permit/hooks/permit2/usePermit2TransferFromNonce.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js +12 -11
- package/dist/hooks/swap/prices/delta/queries/useWatchDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js +90 -76
- package/dist/hooks/swap/tradeFlow/common/useApproveOrPermit.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js +148 -122
- package/dist/hooks/swap/tradeFlow/common/useSignPermit1Or2.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +249 -213
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js +32 -26
- package/dist/hooks/swap/tradeFlow/useDeltaSwapStep.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js +175 -160
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +33 -27
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
- package/dist/hooks/txs/queries/useAwaitTx.d.ts.map +1 -1
- package/dist/hooks/txs/queries/useAwaitTx.js +16 -13
- package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
- package/dist/hooks/txs/queries/useAwaitTxs.d.ts.map +1 -1
- package/dist/hooks/useSDK.d.ts.map +1 -1
- package/dist/hooks/useSDK.js +4 -2
- package/dist/hooks/useSDK.js.map +1 -1
- package/dist/lib/utils/index.d.ts +0 -1
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/utils/logger.d.ts +5 -8
- package/dist/lib/utils/logger.d.ts.map +1 -1
- package/dist/lib/utils/logger.js +211 -2
- package/dist/lib/utils/logger.js.map +1 -1
- package/dist/styles.css +3 -3
- package/dist/test/Configurator.d.ts.map +1 -1
- package/dist/widget/index.d.ts.map +1 -1
- package/dist/widget/index.js +46 -42
- package/dist/widget/index.js.map +1 -1
- package/dist/widget/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
- package/dist/widget/inputs/hooks/useTokenFromInputProps.js +17 -14
- package/dist/widget/inputs/hooks/useTokenFromInputProps.js.map +1 -1
- package/dist/widget/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
- package/dist/widget/inputs/hooks/useTokenToInputProps.js +18 -15
- package/dist/widget/inputs/hooks/useTokenToInputProps.js.map +1 -1
- package/dist/widget/inputs/state/subscriptions.d.ts.map +1 -1
- package/dist/widget/inputs/state/subscriptions.js +2 -1
- package/dist/widget/inputs/state/subscriptions.js.map +1 -1
- package/dist/widget/logger.d.ts +8 -0
- package/dist/widget/logger.d.ts.map +1 -0
- package/dist/widget/logger.js +32 -0
- package/dist/widget/logger.js.map +1 -0
- package/dist/widget/state/configActionsAtom.d.ts.map +1 -1
- package/dist/widget/state/configActionsAtom.js +2 -0
- package/dist/widget/state/configActionsAtom.js.map +1 -1
- package/dist/widget/state/configAtom.d.ts +4 -1
- package/dist/widget/state/configAtom.d.ts.map +1 -1
- package/dist/widget/state/configAtom.js +1 -0
- package/dist/widget/state/configAtom.js.map +1 -1
- package/dist/widget/types.d.ts +13 -2
- package/dist/widget/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -12,22 +12,19 @@ type OnceLogger = BaseLogger & {
|
|
|
12
12
|
reset: () => void;
|
|
13
13
|
getLastMessage: (level?: "log" | "warn" | "error" | "info") => string | undefined;
|
|
14
14
|
};
|
|
15
|
-
type
|
|
15
|
+
export type CreateLoggerFn = (context?: string, options?: LoggerOptions) => LoggerInstance;
|
|
16
|
+
export type LoggerInstance = BaseLogger & {
|
|
16
17
|
once: OnceLogger;
|
|
17
18
|
success: (...args: unknown[]) => void;
|
|
18
19
|
debug: (...args: unknown[]) => void;
|
|
19
20
|
table: (data: unknown) => void;
|
|
20
21
|
group: (label: string, fn: () => void) => void;
|
|
21
22
|
};
|
|
22
|
-
type LoggerOptions = {
|
|
23
|
+
export type LoggerOptions = {
|
|
23
24
|
color?: boolean;
|
|
24
25
|
showCallSite?: boolean;
|
|
25
26
|
};
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
* Uses createLogger in development mode, no-op functions in production
|
|
29
|
-
*/
|
|
30
|
-
export declare const devLogger: LoggerInstance;
|
|
31
|
-
export declare const createLogger: (context?: string, options?: LoggerOptions) => LoggerInstance;
|
|
27
|
+
export declare const createNoopLogger: CreateLoggerFn;
|
|
28
|
+
export declare const createLogger: CreateLoggerFn;
|
|
32
29
|
export {};
|
|
33
30
|
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/logger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,KAAK,UAAU,GAAG;IAChB,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAClC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACnC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACpC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CACpC,CAAC;AAEF,KAAK,UAAU,GAAG,UAAU,GAAG;IAC7B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,cAAc,EAAE,CACd,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,KACtC,MAAM,GAAG,SAAS,CAAC;CACzB,CAAC;AAEF,
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/logger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,KAAK,UAAU,GAAG;IAChB,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAClC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACnC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACpC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CACpC,CAAC;AAEF,KAAK,UAAU,GAAG,UAAU,GAAG;IAC7B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,cAAc,EAAE,CACd,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,KACtC,MAAM,GAAG,SAAS,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAC3B,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,aAAa,KACpB,cAAc,CAAC;AAEpB,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG;IACxC,IAAI,EAAE,UAAU,CAAC;IAEjB,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACtC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACpC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/B,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;CAChD,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AA0DF,eAAO,MAAM,gBAAgB,EAAE,cAAiC,CAAC;AAEjE,eAAO,MAAM,YAAY,EAAE,cAAiC,CAAC"}
|
package/dist/lib/utils/logger.js
CHANGED
|
@@ -1,3 +1,18 @@
|
|
|
1
|
+
const LOG_STYLES = {
|
|
2
|
+
// Context styling
|
|
3
|
+
context: "color: #6366f1; font-weight: bold;",
|
|
4
|
+
// Data type styling
|
|
5
|
+
string: "color: #059669; font-weight: 500;",
|
|
6
|
+
number: "color: #dc2626; font-weight: 500;",
|
|
7
|
+
boolean: "color: #7c3aed; font-weight: 500;",
|
|
8
|
+
null: "color: #6b7280; font-style: italic;",
|
|
9
|
+
undefined: "color: #6b7280; font-style: italic;",
|
|
10
|
+
object: "color: #ea580c; font-weight: 500;",
|
|
11
|
+
array: "color: #0891b2; font-weight: 500;",
|
|
12
|
+
function: "color: #be185d; font-style: italic;",
|
|
13
|
+
bigint: "color: #dc2626; font-weight: 500;",
|
|
14
|
+
symbol: "color: #7c3aed; font-weight: 500;",
|
|
15
|
+
success: "color: #059669; font-weight: bold;"};
|
|
1
16
|
const noop = (...args) => {
|
|
2
17
|
};
|
|
3
18
|
const noopLogger = {
|
|
@@ -18,7 +33,201 @@ const noopLogger = {
|
|
|
18
33
|
getLastMessage: () => void 0
|
|
19
34
|
}
|
|
20
35
|
};
|
|
21
|
-
const
|
|
36
|
+
const createNoopLogger = () => noopLogger;
|
|
37
|
+
const createLogger = createLoggerBase;
|
|
38
|
+
function getValueStyle(value) {
|
|
39
|
+
if (value === null) {
|
|
40
|
+
return {
|
|
41
|
+
style: LOG_STYLES.null,
|
|
42
|
+
displayValue: "null"
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
if (value === void 0) {
|
|
46
|
+
return {
|
|
47
|
+
style: LOG_STYLES.undefined,
|
|
48
|
+
displayValue: "undefined"
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
const type = typeof value;
|
|
52
|
+
switch (type) {
|
|
53
|
+
case "string":
|
|
54
|
+
return {
|
|
55
|
+
style: LOG_STYLES.string,
|
|
56
|
+
displayValue: `"${value}"`
|
|
57
|
+
};
|
|
58
|
+
case "number":
|
|
59
|
+
return {
|
|
60
|
+
style: LOG_STYLES.number,
|
|
61
|
+
displayValue: String(value)
|
|
62
|
+
};
|
|
63
|
+
case "boolean":
|
|
64
|
+
return {
|
|
65
|
+
style: LOG_STYLES.boolean,
|
|
66
|
+
displayValue: String(value)
|
|
67
|
+
};
|
|
68
|
+
case "bigint":
|
|
69
|
+
return {
|
|
70
|
+
style: LOG_STYLES.bigint,
|
|
71
|
+
displayValue: `${value}n`
|
|
72
|
+
};
|
|
73
|
+
case "symbol":
|
|
74
|
+
return {
|
|
75
|
+
style: LOG_STYLES.symbol,
|
|
76
|
+
displayValue: String(value)
|
|
77
|
+
};
|
|
78
|
+
case "function":
|
|
79
|
+
return {
|
|
80
|
+
style: LOG_STYLES.function,
|
|
81
|
+
displayValue: `[function: ${value.name || "anonymous"}]`
|
|
82
|
+
};
|
|
83
|
+
case "object":
|
|
84
|
+
if (Array.isArray(value)) {
|
|
85
|
+
return {
|
|
86
|
+
style: LOG_STYLES.array,
|
|
87
|
+
displayValue: `[${value.length} items]`
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
return {
|
|
91
|
+
style: LOG_STYLES.object,
|
|
92
|
+
displayValue: `{${Object.keys(value).length} keys}`
|
|
93
|
+
};
|
|
94
|
+
default:
|
|
95
|
+
return {
|
|
96
|
+
style: "",
|
|
97
|
+
displayValue: String(value)
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
function createColoredMessage(args, context, color = true) {
|
|
102
|
+
let message = "";
|
|
103
|
+
const styles = [];
|
|
104
|
+
const nativeValues = [];
|
|
105
|
+
if (context) {
|
|
106
|
+
if (color) {
|
|
107
|
+
message += `%c${context}::`;
|
|
108
|
+
styles.push(LOG_STYLES.context);
|
|
109
|
+
} else {
|
|
110
|
+
message += `${context}::`;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
args.forEach((arg) => {
|
|
114
|
+
const type = typeof arg;
|
|
115
|
+
const isObjectLike = type === "object" && arg !== null || type === "function";
|
|
116
|
+
if (isObjectLike && (Array.isArray(arg) || Object.prototype.toString.call(arg) === "[object Object]")) {
|
|
117
|
+
if (message.length > 0) message += " ";
|
|
118
|
+
nativeValues.push(arg);
|
|
119
|
+
} else {
|
|
120
|
+
const {
|
|
121
|
+
style,
|
|
122
|
+
displayValue
|
|
123
|
+
} = getValueStyle(arg);
|
|
124
|
+
if (color) {
|
|
125
|
+
message += `${message.length > 0 ? " " : ""}%c${displayValue}`;
|
|
126
|
+
styles.push(style);
|
|
127
|
+
} else {
|
|
128
|
+
message += `${message.length > 0 ? " " : ""}${displayValue}`;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
if (!message && nativeValues.length) return nativeValues;
|
|
133
|
+
if (color) {
|
|
134
|
+
return [message, ...styles, ...nativeValues];
|
|
135
|
+
} else {
|
|
136
|
+
return [message, ...nativeValues];
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
function createLoggerBase(context, options) {
|
|
140
|
+
const color = options?.color !== false;
|
|
141
|
+
const lastMessages = {
|
|
142
|
+
log: void 0,
|
|
143
|
+
warn: void 0,
|
|
144
|
+
error: void 0,
|
|
145
|
+
info: void 0
|
|
146
|
+
};
|
|
147
|
+
const formatMessage = (...args) => {
|
|
148
|
+
return createColoredMessage(args, context, color);
|
|
149
|
+
};
|
|
150
|
+
const jsonReplacer = (_key, value) => {
|
|
151
|
+
if (typeof value === "bigint") {
|
|
152
|
+
return value.toString();
|
|
153
|
+
}
|
|
154
|
+
if (typeof value === "function") {
|
|
155
|
+
return "[function]";
|
|
156
|
+
}
|
|
157
|
+
return value;
|
|
158
|
+
};
|
|
159
|
+
const logOnce = (level, ...args) => {
|
|
160
|
+
const message = args.map((val) => JSON.stringify(val, jsonReplacer)).join(" ");
|
|
161
|
+
if (message === lastMessages[level]) {
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
lastMessages[level] = message;
|
|
165
|
+
const formattedArgs = formatMessage(...args);
|
|
166
|
+
if (options?.showCallSite === true) {
|
|
167
|
+
console.trace("Call stack:");
|
|
168
|
+
}
|
|
169
|
+
switch (level) {
|
|
170
|
+
case "warn":
|
|
171
|
+
console.warn(...formattedArgs);
|
|
172
|
+
break;
|
|
173
|
+
case "error":
|
|
174
|
+
console.error(...formattedArgs);
|
|
175
|
+
break;
|
|
176
|
+
case "info":
|
|
177
|
+
console.info(...formattedArgs);
|
|
178
|
+
break;
|
|
179
|
+
default:
|
|
180
|
+
console.log(...formattedArgs);
|
|
181
|
+
}
|
|
182
|
+
};
|
|
183
|
+
const onceLogger = {
|
|
184
|
+
log: (...args) => logOnce("log", ...args),
|
|
185
|
+
warn: (...args) => logOnce("warn", ...args),
|
|
186
|
+
error: (...args) => logOnce("error", ...args),
|
|
187
|
+
info: (...args) => logOnce("info", ...args),
|
|
188
|
+
reset: () => {
|
|
189
|
+
lastMessages.log = void 0;
|
|
190
|
+
lastMessages.warn = void 0;
|
|
191
|
+
lastMessages.error = void 0;
|
|
192
|
+
lastMessages.info = void 0;
|
|
193
|
+
},
|
|
194
|
+
getLastMessage: (level = "log") => {
|
|
195
|
+
return lastMessages[level];
|
|
196
|
+
}
|
|
197
|
+
};
|
|
198
|
+
return {
|
|
199
|
+
log: (...args) => console.log(...formatMessage(...args)),
|
|
200
|
+
warn: (...args) => console.warn(...formatMessage(...args)),
|
|
201
|
+
error: (...args) => console.error(...formatMessage(...args)),
|
|
202
|
+
info: (...args) => console.info(...formatMessage(...args)),
|
|
203
|
+
success: (...args) => {
|
|
204
|
+
const successArgs = [`%c✅ `, LOG_STYLES.success, ...formatMessage(...args)];
|
|
205
|
+
console.log(...successArgs);
|
|
206
|
+
},
|
|
207
|
+
debug: (...args) => {
|
|
208
|
+
console.debug(...formatMessage(...args));
|
|
209
|
+
},
|
|
210
|
+
table: (data) => {
|
|
211
|
+
if (context) {
|
|
212
|
+
console.group(`%c${context}::`, LOG_STYLES.context);
|
|
213
|
+
console.table(data);
|
|
214
|
+
console.groupEnd();
|
|
215
|
+
} else {
|
|
216
|
+
console.table(data);
|
|
217
|
+
}
|
|
218
|
+
},
|
|
219
|
+
group: (label, fn) => {
|
|
220
|
+
if (context) {
|
|
221
|
+
console.group(`%c${context}:: ${label}`, LOG_STYLES.context);
|
|
222
|
+
} else {
|
|
223
|
+
console.group(label);
|
|
224
|
+
}
|
|
225
|
+
fn();
|
|
226
|
+
console.groupEnd();
|
|
227
|
+
},
|
|
228
|
+
once: onceLogger
|
|
229
|
+
};
|
|
230
|
+
}
|
|
22
231
|
|
|
23
|
-
export { createLogger };
|
|
232
|
+
export { createLogger, createNoopLogger };
|
|
24
233
|
//# sourceMappingURL=logger.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sources":["../../../src/lib/utils/logger.ts"],"sourcesContent":["/**\n * A console log utility that prevents logging the same message twice in a row\n * with semantic coloring for different data types\n */\n\ntype BaseLogger = {\n log: (...args: unknown[]) => void;\n warn: (...args: unknown[]) => void;\n error: (...args: unknown[]) => void;\n info: (...args: unknown[]) => void;\n};\n\ntype OnceLogger = BaseLogger & {\n reset: () => void;\n getLastMessage: (\n level?: \"log\" | \"warn\" | \"error\" | \"info\"\n ) => string | undefined;\n};\n\ntype LoggerInstance = BaseLogger & {\n once: OnceLogger;\n // Utility methods for common logging patterns\n success: (...args: unknown[]) => void;\n debug: (...args: unknown[]) => void;\n table: (data: unknown) => void;\n group: (label: string, fn: () => void) => void;\n};\n\ntype LoggerOptions = {\n color?: boolean;\n showCallSite?: boolean;\n};\n\n// CSS styles for semantic coloring\nconst LOG_STYLES = {\n // Context styling\n context: \"color: #6366f1; font-weight: bold;\",\n\n // Data type styling\n string: \"color: #059669; font-weight: 500;\",\n number: \"color: #dc2626; font-weight: 500;\",\n boolean: \"color: #7c3aed; font-weight: 500;\",\n null: \"color: #6b7280; font-style: italic;\",\n undefined: \"color: #6b7280; font-style: italic;\",\n object: \"color: #ea580c; font-weight: 500;\",\n array: \"color: #0891b2; font-weight: 500;\",\n function: \"color: #be185d; font-style: italic;\",\n bigint: \"color: #dc2626; font-weight: 500;\",\n symbol: \"color: #7c3aed; font-weight: 500;\",\n\n // Special values\n error: \"color: #dc2626; font-weight: bold;\",\n warning: \"color: #d97706; font-weight: bold;\",\n success: \"color: #059669; font-weight: bold;\",\n\n // Log level styling\n logLevel: {\n log: \"color: #1f2937;\",\n warn: \"color: #d97706; font-weight: bold;\",\n error: \"color: #dc2626; font-weight: bold;\",\n info: \"color: #0891b2; font-weight: bold;\",\n },\n} as const;\n\n// No-op functions for production\nconst noop = (...args: unknown[]) => {\n // Intentionally empty - no-op function\n void args;\n};\n\nconst noopLogger: LoggerInstance = {\n log: noop,\n warn: noop,\n error: noop,\n info: noop,\n success: noop,\n debug: noop,\n table: noop,\n group: noop,\n once: {\n log: noop,\n warn: noop,\n error: noop,\n info: noop,\n reset: noop,\n getLastMessage: () => undefined,\n },\n};\n\n/**\n * Global development logger\n * Uses createLogger in development mode, no-op functions in production\n */\nexport const devLogger: LoggerInstance = import.meta.env.DEV\n ? createLoggerBase()\n : noopLogger;\n\nexport const createLogger: (\n context?: string,\n options?: LoggerOptions\n) => LoggerInstance = import.meta.env.DEV ? createLoggerBase : () => noopLogger;\n\n/**\n * Determines the type and style for a value\n */\nfunction getValueStyle(value: unknown): {\n style: string;\n displayValue: string;\n} {\n if (value === null) {\n return { style: LOG_STYLES.null, displayValue: \"null\" };\n }\n\n if (value === undefined) {\n return { style: LOG_STYLES.undefined, displayValue: \"undefined\" };\n }\n\n const type = typeof value;\n\n switch (type) {\n case \"string\":\n return { style: LOG_STYLES.string, displayValue: `\"${value}\"` };\n\n case \"number\":\n return { style: LOG_STYLES.number, displayValue: String(value) };\n\n case \"boolean\":\n return { style: LOG_STYLES.boolean, displayValue: String(value) };\n\n case \"bigint\":\n return { style: LOG_STYLES.bigint, displayValue: `${value}n` };\n\n case \"symbol\":\n return { style: LOG_STYLES.symbol, displayValue: String(value) };\n\n case \"function\":\n return {\n style: LOG_STYLES.function,\n displayValue: `[function: ${(value as { name?: string }).name || \"anonymous\"}]`,\n };\n\n case \"object\":\n if (Array.isArray(value)) {\n return {\n style: LOG_STYLES.array,\n displayValue: `[${value.length} items]`,\n };\n }\n return {\n style: LOG_STYLES.object,\n displayValue: `{${Object.keys(value as object).length} keys}`,\n };\n\n default:\n return { style: \"\", displayValue: String(value) };\n }\n}\n\n/**\n * Creates a formatted message with semantic coloring\n */\nfunction createColoredMessage(\n args: unknown[],\n context?: string,\n color: boolean = true\n): unknown[] {\n let message = \"\";\n const styles: string[] = [];\n const nativeValues: unknown[] = [];\n\n // Add context if provided\n if (context) {\n if (color) {\n message += `%c${context}::`;\n styles.push(LOG_STYLES.context);\n } else {\n message += `${context}::`;\n }\n }\n\n args.forEach((arg) => {\n const type = typeof arg;\n const isObjectLike =\n (type === \"object\" && arg !== null) || type === \"function\";\n\n // Only treat plain objects (not arrays, dates, etc) as expandable objects\n // typeof is not enough: Object.prototype.toString.call(arg) === '[object Object]' ensures it's a plain object\n if (\n isObjectLike &&\n (Array.isArray(arg) ||\n Object.prototype.toString.call(arg) === \"[object Object]\")\n ) {\n // Add a space before object/array if needed\n if (message.length > 0) message += \" \";\n nativeValues.push(arg);\n } else {\n const { style, displayValue } = getValueStyle(arg);\n if (color) {\n message += `${message.length > 0 ? \" \" : \"\"}%c${displayValue}`;\n styles.push(style);\n } else {\n message += `${message.length > 0 ? \" \" : \"\"}${displayValue}`;\n }\n }\n });\n\n // If message is empty (all objects), just return the objects\n if (!message && nativeValues.length) return nativeValues;\n\n if (color) {\n return [message, ...styles, ...nativeValues];\n } else {\n return [message, ...nativeValues];\n }\n}\n\n/**\n * Creates a logger instance that provides both regular logging and once logging\n * Regular logging always outputs to console\n * Once logging prevents logging the same message twice in a row per level\n * @param context - Optional context string to prepend to all log messages\n */\nfunction createLoggerBase(\n context?: string,\n options?: LoggerOptions\n): LoggerInstance {\n const color = options?.color !== false;\n const lastMessages: Record<\n \"log\" | \"warn\" | \"error\" | \"info\",\n string | undefined\n > = {\n log: undefined,\n warn: undefined,\n error: undefined,\n info: undefined,\n };\n\n const formatMessage = (...args: unknown[]): unknown[] => {\n return createColoredMessage(args, context, color);\n };\n\n const jsonReplacer = (_key: string, value: unknown): unknown => {\n if (typeof value === \"bigint\") {\n return value.toString();\n }\n if (typeof value === \"function\") {\n return \"[function]\";\n }\n return value;\n };\n\n const logOnce = (\n level: \"log\" | \"warn\" | \"error\" | \"info\",\n ...args: unknown[]\n ): void => {\n const message = args\n .map((val) => JSON.stringify(val, jsonReplacer))\n .join(\" \");\n\n if (message === lastMessages[level]) {\n return;\n }\n\n lastMessages[level] = message;\n\n const formattedArgs = formatMessage(...args);\n\n if (options?.showCallSite === true) {\n // to see where logger.log was called,\n // otherwise we only see where console.log was called on the next line\n console.trace(\"Call stack:\");\n }\n switch (level) {\n case \"warn\":\n console.warn(...formattedArgs);\n break;\n case \"error\":\n console.error(...formattedArgs);\n break;\n case \"info\":\n console.info(...formattedArgs);\n break;\n default:\n console.log(...formattedArgs);\n }\n };\n\n const onceLogger: OnceLogger = {\n log: (...args: unknown[]) => logOnce(\"log\", ...args),\n warn: (...args: unknown[]) => logOnce(\"warn\", ...args),\n error: (...args: unknown[]) => logOnce(\"error\", ...args),\n info: (...args: unknown[]) => logOnce(\"info\", ...args),\n reset: () => {\n lastMessages.log = undefined;\n lastMessages.warn = undefined;\n lastMessages.error = undefined;\n lastMessages.info = undefined;\n },\n getLastMessage: (level: \"log\" | \"warn\" | \"error\" | \"info\" = \"log\") => {\n return lastMessages[level];\n },\n };\n\n return {\n log: (...args: unknown[]) => console.log(...formatMessage(...args)),\n warn: (...args: unknown[]) => console.warn(...formatMessage(...args)),\n error: (...args: unknown[]) => console.error(...formatMessage(...args)),\n info: (...args: unknown[]) => console.info(...formatMessage(...args)),\n success: (...args: unknown[]) => {\n const successArgs = [\n `%c✅ `,\n LOG_STYLES.success,\n ...formatMessage(...args),\n ];\n console.log(...successArgs);\n },\n debug: (...args: unknown[]) => {\n console.debug(...formatMessage(...args));\n },\n table: (data: unknown) => {\n if (context) {\n console.group(`%c${context}::`, LOG_STYLES.context);\n console.table(data);\n console.groupEnd();\n } else {\n console.table(data);\n }\n },\n group: (label: string, fn: () => void) => {\n if (context) {\n console.group(`%c${context}:: ${label}`, LOG_STYLES.context);\n } else {\n console.group(label);\n }\n fn();\n console.groupEnd();\n },\n once: onceLogger,\n };\n}\n"],"names":["noop","args","noopLogger","log","warn","error","info","success","debug","table","group","once","reset","getLastMessage","undefined","createLogger"],"mappings":"AAiEA,MAAMA,IAAAA,GAAOA,IAAIC,IAAAA,KAAoB;AAGrC,CAAA;AAEA,MAAMC,UAAAA,GAA6B;AAAA,EACjCC,GAAAA,EAAKH,IAAAA;AAAAA,EACLI,IAAAA,EAAMJ,IAAAA;AAAAA,EACNK,KAAAA,EAAOL,IAAAA;AAAAA,EACPM,IAAAA,EAAMN,IAAAA;AAAAA,EACNO,OAAAA,EAASP,IAAAA;AAAAA,EACTQ,KAAAA,EAAOR,IAAAA;AAAAA,EACPS,KAAAA,EAAOT,IAAAA;AAAAA,EACPU,KAAAA,EAAOV,IAAAA;AAAAA,EACPW,IAAAA,EAAM;AAAA,IACJR,GAAAA,EAAKH,IAAAA;AAAAA,IACLI,IAAAA,EAAMJ,IAAAA;AAAAA,IACNK,KAAAA,EAAOL,IAAAA;AAAAA,IACPM,IAAAA,EAAMN,IAAAA;AAAAA,IACNY,KAAAA,EAAOZ,IAAAA;AAAAA,IACPa,gBAAgBA,MAAMC;AAAAA;AAE1B,CAAA;AAUO,MAAMC,YAAAA,GAGkD,MAAMb;;;;"}
|
|
1
|
+
{"version":3,"file":"logger.js","sources":["../../../src/lib/utils/logger.ts"],"sourcesContent":["/**\n * A console log utility that prevents logging the same message twice in a row\n * with semantic coloring for different data types\n */\n\ntype BaseLogger = {\n log: (...args: unknown[]) => void;\n warn: (...args: unknown[]) => void;\n error: (...args: unknown[]) => void;\n info: (...args: unknown[]) => void;\n};\n\ntype OnceLogger = BaseLogger & {\n reset: () => void;\n getLastMessage: (\n level?: \"log\" | \"warn\" | \"error\" | \"info\"\n ) => string | undefined;\n};\n\nexport type CreateLoggerFn = (\n context?: string,\n options?: LoggerOptions\n) => LoggerInstance;\n\nexport type LoggerInstance = BaseLogger & {\n once: OnceLogger;\n // Utility methods for common logging patterns\n success: (...args: unknown[]) => void;\n debug: (...args: unknown[]) => void;\n table: (data: unknown) => void;\n group: (label: string, fn: () => void) => void;\n};\n\nexport type LoggerOptions = {\n color?: boolean;\n showCallSite?: boolean;\n};\n\n// CSS styles for semantic coloring\nconst LOG_STYLES = {\n // Context styling\n context: \"color: #6366f1; font-weight: bold;\",\n\n // Data type styling\n string: \"color: #059669; font-weight: 500;\",\n number: \"color: #dc2626; font-weight: 500;\",\n boolean: \"color: #7c3aed; font-weight: 500;\",\n null: \"color: #6b7280; font-style: italic;\",\n undefined: \"color: #6b7280; font-style: italic;\",\n object: \"color: #ea580c; font-weight: 500;\",\n array: \"color: #0891b2; font-weight: 500;\",\n function: \"color: #be185d; font-style: italic;\",\n bigint: \"color: #dc2626; font-weight: 500;\",\n symbol: \"color: #7c3aed; font-weight: 500;\",\n\n // Special values\n error: \"color: #dc2626; font-weight: bold;\",\n warning: \"color: #d97706; font-weight: bold;\",\n success: \"color: #059669; font-weight: bold;\",\n\n // Log level styling\n logLevel: {\n log: \"color: #1f2937;\",\n warn: \"color: #d97706; font-weight: bold;\",\n error: \"color: #dc2626; font-weight: bold;\",\n info: \"color: #0891b2; font-weight: bold;\",\n },\n} as const;\n\n// No-op functions for production\nconst noop = (...args: unknown[]) => {\n // Intentionally empty - no-op function\n void args;\n};\n\nconst noopLogger: LoggerInstance = {\n log: noop,\n warn: noop,\n error: noop,\n info: noop,\n success: noop,\n debug: noop,\n table: noop,\n group: noop,\n once: {\n log: noop,\n warn: noop,\n error: noop,\n info: noop,\n reset: noop,\n getLastMessage: () => undefined,\n },\n};\n\nexport const createNoopLogger: CreateLoggerFn = () => noopLogger;\n\nexport const createLogger: CreateLoggerFn = createLoggerBase;\n\n/**\n * Determines the type and style for a value\n */\nfunction getValueStyle(value: unknown): {\n style: string;\n displayValue: string;\n} {\n if (value === null) {\n return { style: LOG_STYLES.null, displayValue: \"null\" };\n }\n\n if (value === undefined) {\n return { style: LOG_STYLES.undefined, displayValue: \"undefined\" };\n }\n\n const type = typeof value;\n\n switch (type) {\n case \"string\":\n return { style: LOG_STYLES.string, displayValue: `\"${value}\"` };\n\n case \"number\":\n return { style: LOG_STYLES.number, displayValue: String(value) };\n\n case \"boolean\":\n return { style: LOG_STYLES.boolean, displayValue: String(value) };\n\n case \"bigint\":\n return { style: LOG_STYLES.bigint, displayValue: `${value}n` };\n\n case \"symbol\":\n return { style: LOG_STYLES.symbol, displayValue: String(value) };\n\n case \"function\":\n return {\n style: LOG_STYLES.function,\n displayValue: `[function: ${(value as { name?: string }).name || \"anonymous\"}]`,\n };\n\n case \"object\":\n if (Array.isArray(value)) {\n return {\n style: LOG_STYLES.array,\n displayValue: `[${value.length} items]`,\n };\n }\n return {\n style: LOG_STYLES.object,\n displayValue: `{${Object.keys(value as object).length} keys}`,\n };\n\n default:\n return { style: \"\", displayValue: String(value) };\n }\n}\n\n/**\n * Creates a formatted message with semantic coloring\n */\nfunction createColoredMessage(\n args: unknown[],\n context?: string,\n color: boolean = true\n): unknown[] {\n let message = \"\";\n const styles: string[] = [];\n const nativeValues: unknown[] = [];\n\n // Add context if provided\n if (context) {\n if (color) {\n message += `%c${context}::`;\n styles.push(LOG_STYLES.context);\n } else {\n message += `${context}::`;\n }\n }\n\n args.forEach((arg) => {\n const type = typeof arg;\n const isObjectLike =\n (type === \"object\" && arg !== null) || type === \"function\";\n\n // Only treat plain objects (not arrays, dates, etc) as expandable objects\n // typeof is not enough: Object.prototype.toString.call(arg) === '[object Object]' ensures it's a plain object\n if (\n isObjectLike &&\n (Array.isArray(arg) ||\n Object.prototype.toString.call(arg) === \"[object Object]\")\n ) {\n // Add a space before object/array if needed\n if (message.length > 0) message += \" \";\n nativeValues.push(arg);\n } else {\n const { style, displayValue } = getValueStyle(arg);\n if (color) {\n message += `${message.length > 0 ? \" \" : \"\"}%c${displayValue}`;\n styles.push(style);\n } else {\n message += `${message.length > 0 ? \" \" : \"\"}${displayValue}`;\n }\n }\n });\n\n // If message is empty (all objects), just return the objects\n if (!message && nativeValues.length) return nativeValues;\n\n if (color) {\n return [message, ...styles, ...nativeValues];\n } else {\n return [message, ...nativeValues];\n }\n}\n\n/**\n * Creates a logger instance that provides both regular logging and once logging\n * Regular logging always outputs to console\n * Once logging prevents logging the same message twice in a row per level\n * @param context - Optional context string to prepend to all log messages\n */\nfunction createLoggerBase(\n context?: string,\n options?: LoggerOptions\n): LoggerInstance {\n const color = options?.color !== false;\n const lastMessages: Record<\n \"log\" | \"warn\" | \"error\" | \"info\",\n string | undefined\n > = {\n log: undefined,\n warn: undefined,\n error: undefined,\n info: undefined,\n };\n\n const formatMessage = (...args: unknown[]): unknown[] => {\n return createColoredMessage(args, context, color);\n };\n\n const jsonReplacer = (_key: string, value: unknown): unknown => {\n if (typeof value === \"bigint\") {\n return value.toString();\n }\n if (typeof value === \"function\") {\n return \"[function]\";\n }\n return value;\n };\n\n const logOnce = (\n level: \"log\" | \"warn\" | \"error\" | \"info\",\n ...args: unknown[]\n ): void => {\n const message = args\n .map((val) => JSON.stringify(val, jsonReplacer))\n .join(\" \");\n\n if (message === lastMessages[level]) {\n return;\n }\n\n lastMessages[level] = message;\n\n const formattedArgs = formatMessage(...args);\n\n if (options?.showCallSite === true) {\n // to see where logger.log was called,\n // otherwise we only see where console.log was called on the next line\n console.trace(\"Call stack:\");\n }\n switch (level) {\n case \"warn\":\n console.warn(...formattedArgs);\n break;\n case \"error\":\n console.error(...formattedArgs);\n break;\n case \"info\":\n console.info(...formattedArgs);\n break;\n default:\n console.log(...formattedArgs);\n }\n };\n\n const onceLogger: OnceLogger = {\n log: (...args: unknown[]) => logOnce(\"log\", ...args),\n warn: (...args: unknown[]) => logOnce(\"warn\", ...args),\n error: (...args: unknown[]) => logOnce(\"error\", ...args),\n info: (...args: unknown[]) => logOnce(\"info\", ...args),\n reset: () => {\n lastMessages.log = undefined;\n lastMessages.warn = undefined;\n lastMessages.error = undefined;\n lastMessages.info = undefined;\n },\n getLastMessage: (level: \"log\" | \"warn\" | \"error\" | \"info\" = \"log\") => {\n return lastMessages[level];\n },\n };\n\n return {\n log: (...args: unknown[]) => console.log(...formatMessage(...args)),\n warn: (...args: unknown[]) => console.warn(...formatMessage(...args)),\n error: (...args: unknown[]) => console.error(...formatMessage(...args)),\n info: (...args: unknown[]) => console.info(...formatMessage(...args)),\n success: (...args: unknown[]) => {\n const successArgs = [\n `%c✅ `,\n LOG_STYLES.success,\n ...formatMessage(...args),\n ];\n console.log(...successArgs);\n },\n debug: (...args: unknown[]) => {\n console.debug(...formatMessage(...args));\n },\n table: (data: unknown) => {\n if (context) {\n console.group(`%c${context}::`, LOG_STYLES.context);\n console.table(data);\n console.groupEnd();\n } else {\n console.table(data);\n }\n },\n group: (label: string, fn: () => void) => {\n if (context) {\n console.group(`%c${context}:: ${label}`, LOG_STYLES.context);\n } else {\n console.group(label);\n }\n fn();\n console.groupEnd();\n },\n once: onceLogger,\n };\n}\n"],"names":["LOG_STYLES","context","string","number","boolean","null","undefined","object","array","function","bigint","symbol","success","noop","args","noopLogger","log","warn","error","info","debug","table","group","once","reset","getLastMessage","createNoopLogger","createLogger","createLoggerBase","getValueStyle","value","style","displayValue","type","String","name","Array","isArray","length","Object","keys","createColoredMessage","color","message","styles","nativeValues","push","forEach","arg","isObjectLike","prototype","toString","call","options","lastMessages","formatMessage","jsonReplacer","_key","logOnce","level","map","val","JSON","stringify","join","formattedArgs","showCallSite","console","trace","onceLogger","successArgs","data","groupEnd","label","fn"],"mappings":"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"}
|
package/dist/styles.css
CHANGED
|
@@ -2042,12 +2042,12 @@
|
|
|
2042
2042
|
.velora-widget.velora-widget .disabled\:pointer-events-none:disabled {
|
|
2043
2043
|
pointer-events: none;
|
|
2044
2044
|
}
|
|
2045
|
+
.velora-widget.velora-widget .disabled\:cursor-default:disabled {
|
|
2046
|
+
cursor: default;
|
|
2047
|
+
}
|
|
2045
2048
|
.velora-widget.velora-widget .disabled\:cursor-not-allowed:disabled {
|
|
2046
2049
|
cursor: not-allowed;
|
|
2047
2050
|
}
|
|
2048
|
-
.velora-widget.velora-widget .disabled\:cursor-pointer:disabled {
|
|
2049
|
-
cursor: pointer;
|
|
2050
|
-
}
|
|
2051
2051
|
.velora-widget.velora-widget .disabled\:bg-contrast-7:disabled {
|
|
2052
2052
|
background-color: var(--contrast-7);
|
|
2053
2053
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Configurator.d.ts","sourceRoot":"","sources":["../../src/test/Configurator.tsx"],"names":[],"mappings":"AAEA,OAAO,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"Configurator.d.ts","sourceRoot":"","sources":["../../src/test/Configurator.tsx"],"names":[],"mappings":"AAEA,OAAO,YAAY,CAAC;AA+NpB,eAAO,MAAM,YAAY,+CAiGxB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/widget/index.tsx"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAa7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAwD3C,eAAO,MAAM,MAAM,GAAI,sBAAsB,WAAW,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/widget/index.tsx"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAa7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAwD3C,eAAO,MAAM,MAAM,GAAI,sBAAsB,WAAW,4CAiDvD,CAAC"}
|
package/dist/widget/index.js
CHANGED
|
@@ -62,7 +62,7 @@ const App = () => {
|
|
|
62
62
|
return t0;
|
|
63
63
|
};
|
|
64
64
|
const Widget = (t0) => {
|
|
65
|
-
const $ = distExports.c(
|
|
65
|
+
const $ = distExports.c(30);
|
|
66
66
|
const {
|
|
67
67
|
config,
|
|
68
68
|
provider
|
|
@@ -99,7 +99,7 @@ const Widget = (t0) => {
|
|
|
99
99
|
}
|
|
100
100
|
useHydrateAtoms(t4);
|
|
101
101
|
let t5;
|
|
102
|
-
if ($[7] !== config?.
|
|
102
|
+
if ($[7] !== config?.debug || $[8] !== config?.enableDelta || $[9] !== config?.partner || $[10] !== config?.privyAppId || $[11] !== config?.privyClientId || $[12] !== config?.theme || $[13] !== config?.widgetMode || $[14] !== setWidgetConfig) {
|
|
103
103
|
t5 = () => {
|
|
104
104
|
setWidgetConfig({
|
|
105
105
|
theme: config?.theme,
|
|
@@ -107,72 +107,76 @@ const Widget = (t0) => {
|
|
|
107
107
|
partner: config?.partner,
|
|
108
108
|
privyAppId: config?.privyAppId,
|
|
109
109
|
privyClientId: config?.privyClientId,
|
|
110
|
+
debug: config?.debug,
|
|
110
111
|
widgetMode: config?.widgetMode
|
|
111
112
|
});
|
|
112
113
|
};
|
|
113
|
-
$[7] = config?.
|
|
114
|
-
$[8] = config?.
|
|
115
|
-
$[9] = config?.
|
|
116
|
-
$[10] = config?.
|
|
117
|
-
$[11] = config?.
|
|
118
|
-
$[12] = config?.
|
|
119
|
-
$[13] =
|
|
120
|
-
$[14] =
|
|
114
|
+
$[7] = config?.debug;
|
|
115
|
+
$[8] = config?.enableDelta;
|
|
116
|
+
$[9] = config?.partner;
|
|
117
|
+
$[10] = config?.privyAppId;
|
|
118
|
+
$[11] = config?.privyClientId;
|
|
119
|
+
$[12] = config?.theme;
|
|
120
|
+
$[13] = config?.widgetMode;
|
|
121
|
+
$[14] = setWidgetConfig;
|
|
122
|
+
$[15] = t5;
|
|
121
123
|
} else {
|
|
122
|
-
t5 = $[
|
|
124
|
+
t5 = $[15];
|
|
123
125
|
}
|
|
124
126
|
const t6 = config?.theme;
|
|
125
127
|
const t7 = config?.enableDelta;
|
|
126
128
|
const t8 = config?.partner;
|
|
127
129
|
const t9 = config?.privyAppId;
|
|
128
130
|
const t10 = config?.privyClientId;
|
|
129
|
-
const t11 = config?.
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
$[16] =
|
|
135
|
-
$[17] =
|
|
136
|
-
$[18] =
|
|
137
|
-
$[19] =
|
|
138
|
-
$[20] =
|
|
139
|
-
$[21] =
|
|
140
|
-
$[22] =
|
|
131
|
+
const t11 = config?.debug;
|
|
132
|
+
const t12 = config?.widgetMode;
|
|
133
|
+
let t13;
|
|
134
|
+
if ($[16] !== setWidgetConfig || $[17] !== t10 || $[18] !== t11 || $[19] !== t12 || $[20] !== t6 || $[21] !== t7 || $[22] !== t8 || $[23] !== t9) {
|
|
135
|
+
t13 = [t6, t7, t8, t9, t10, t11, t12, setWidgetConfig];
|
|
136
|
+
$[16] = setWidgetConfig;
|
|
137
|
+
$[17] = t10;
|
|
138
|
+
$[18] = t11;
|
|
139
|
+
$[19] = t12;
|
|
140
|
+
$[20] = t6;
|
|
141
|
+
$[21] = t7;
|
|
142
|
+
$[22] = t8;
|
|
143
|
+
$[23] = t9;
|
|
144
|
+
$[24] = t13;
|
|
141
145
|
} else {
|
|
142
|
-
|
|
146
|
+
t13 = $[24];
|
|
143
147
|
}
|
|
144
|
-
useLayoutEffect(t5,
|
|
148
|
+
useLayoutEffect(t5, t13);
|
|
145
149
|
const setExternalProvider = useSetAtom(externalProviderAtom);
|
|
146
|
-
let t13;
|
|
147
150
|
let t14;
|
|
148
|
-
|
|
149
|
-
|
|
151
|
+
let t15;
|
|
152
|
+
if ($[25] !== provider || $[26] !== setExternalProvider) {
|
|
153
|
+
t14 = () => {
|
|
150
154
|
setExternalProvider(provider || null);
|
|
151
155
|
};
|
|
152
|
-
|
|
153
|
-
$[
|
|
154
|
-
$[
|
|
155
|
-
$[
|
|
156
|
-
$[
|
|
156
|
+
t15 = [provider, setExternalProvider];
|
|
157
|
+
$[25] = provider;
|
|
158
|
+
$[26] = setExternalProvider;
|
|
159
|
+
$[27] = t14;
|
|
160
|
+
$[28] = t15;
|
|
157
161
|
} else {
|
|
158
|
-
|
|
159
|
-
|
|
162
|
+
t14 = $[27];
|
|
163
|
+
t15 = $[28];
|
|
160
164
|
}
|
|
161
|
-
useLayoutEffect(
|
|
162
|
-
let
|
|
163
|
-
if ($[
|
|
164
|
-
|
|
165
|
+
useLayoutEffect(t14, t15);
|
|
166
|
+
let t16;
|
|
167
|
+
if ($[29] === Symbol.for("react.memo_cache_sentinel")) {
|
|
168
|
+
t16 = /* @__PURE__ */ jsxs(Web3Providers, { children: [
|
|
165
169
|
/* @__PURE__ */ jsx(AutoconnectExternalProvider, {}),
|
|
166
170
|
/* @__PURE__ */ jsx(PrivyIframeDependency, {}),
|
|
167
171
|
/* @__PURE__ */ jsx(Updaters, {}),
|
|
168
172
|
/* @__PURE__ */ jsx(App, {}),
|
|
169
173
|
false
|
|
170
174
|
] });
|
|
171
|
-
$[
|
|
175
|
+
$[29] = t16;
|
|
172
176
|
} else {
|
|
173
|
-
|
|
177
|
+
t16 = $[29];
|
|
174
178
|
}
|
|
175
|
-
return
|
|
179
|
+
return t16;
|
|
176
180
|
};
|
|
177
181
|
function Containers(t0) {
|
|
178
182
|
const $ = distExports.c(11);
|