@openzeppelin/ui-renderer 1.1.0 → 1.2.0
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/index.cjs +57 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +31 -3
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +31 -3
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +55 -5
- package/dist/index.mjs.map +1 -1
- package/package.json +6 -6
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AddressBookWidgetProps, ContractAdapter, ContractFunction, ContractSchema, ExecutionConfig, FieldTransforms, FieldType, FormFieldType, FormValues, FullContractAdapter, NetworkConfig, TransactionFormProps } from "@openzeppelin/ui-types";
|
|
1
|
+
import { AddressBookWidgetProps, ContractAdapter, ContractFunction, ContractSchema, Ecosystem, ExecutionConfig, FieldTransforms, FieldType, FormFieldType, FormValues, FullContractAdapter, NetworkConfig, TransactionFormProps, TransactionSuccessPayload } from "@openzeppelin/ui-types";
|
|
2
2
|
import React$1, { JSX } from "react";
|
|
3
3
|
import { Control } from "react-hook-form";
|
|
4
4
|
import { ButtonProps } from "@openzeppelin/ui-components";
|
|
@@ -65,7 +65,8 @@ declare function TransactionForm({
|
|
|
65
65
|
contractSchema,
|
|
66
66
|
adapter,
|
|
67
67
|
isWalletConnected,
|
|
68
|
-
executionConfig
|
|
68
|
+
executionConfig,
|
|
69
|
+
onTransactionSuccess
|
|
69
70
|
}: TransactionFormProps): React.ReactElement;
|
|
70
71
|
//#endregion
|
|
71
72
|
//#region src/utils/formUtils.d.ts
|
|
@@ -170,6 +171,32 @@ declare function createObjectTransform(): FieldTransforms<Record<string, unknown
|
|
|
170
171
|
*/
|
|
171
172
|
declare function createArrayObjectTransform(): FieldTransforms<Record<string, unknown>[]>;
|
|
172
173
|
//#endregion
|
|
174
|
+
//#region src/utils/transactionSuccessCallback.d.ts
|
|
175
|
+
/**
|
|
176
|
+
* Normalizes adapter `txHash` for the success callback (non-empty trimmed string or omitted).
|
|
177
|
+
* Expects the `txHash` string from `signAndBroadcast`, not arbitrary values (avoids coercing objects).
|
|
178
|
+
*/
|
|
179
|
+
declare function normalizeTransactionSuccessHash(finalTxHash: string | null | undefined): string | undefined;
|
|
180
|
+
/**
|
|
181
|
+
* Builds the {@link TransactionSuccessPayload} passed to `onTransactionSuccess`.
|
|
182
|
+
*/
|
|
183
|
+
declare function buildTransactionSuccessPayload(options: {
|
|
184
|
+
networkId: TransactionSuccessPayload['network_id'];
|
|
185
|
+
ecosystem: Ecosystem;
|
|
186
|
+
executionMethod: ExecutionConfig['method'];
|
|
187
|
+
/** From `signAndBroadcast` result (`txHash: string`) */
|
|
188
|
+
finalTxHash: string | null | undefined;
|
|
189
|
+
}): TransactionSuccessPayload;
|
|
190
|
+
/** Minimal logger surface used by {@link invokeOnTransactionSuccess}. */
|
|
191
|
+
type TransactionSuccessLog = {
|
|
192
|
+
error(component: string, message: string, error?: unknown): void;
|
|
193
|
+
};
|
|
194
|
+
/**
|
|
195
|
+
* Invokes `onTransactionSuccess` with error containment: synchronous throws and async
|
|
196
|
+
* rejections are logged and never rethrown, so host callbacks cannot break transaction flow.
|
|
197
|
+
*/
|
|
198
|
+
declare function invokeOnTransactionSuccess(callback: ((payload: TransactionSuccessPayload) => void | Promise<void>) | undefined, payload: TransactionSuccessPayload, log: TransactionSuccessLog): void;
|
|
199
|
+
//#endregion
|
|
173
200
|
//#region src/components/DynamicFormField.d.ts
|
|
174
201
|
/**
|
|
175
202
|
* Props for the DynamicFormField component
|
|
@@ -284,6 +311,7 @@ declare function AddressBookWidget({
|
|
|
284
311
|
networks,
|
|
285
312
|
filterNetworkIds,
|
|
286
313
|
onFilterNetworkIdsChange,
|
|
314
|
+
title,
|
|
287
315
|
className
|
|
288
316
|
}: AddressBookWidgetProps): react_jsx_runtime0.JSX.Element;
|
|
289
317
|
//#endregion
|
|
@@ -418,5 +446,5 @@ declare const NetworkSettingsDialog: React$1.FC<Props>;
|
|
|
418
446
|
*/
|
|
419
447
|
declare const WalletConnectionWithSettings: React$1.FC;
|
|
420
448
|
//#endregion
|
|
421
|
-
export { AddressBookWidget, type AliasEditLookupResult, AliasEditPopover, type AliasEditPopoverProps, ContractActionBar, ContractStateWidget, DynamicFormField, ExecutionConfigDisplay, NetworkSettingsDialog, ParameterConstraints, type RendererConfig, TransactionExecuteButton, TransactionForm, type UseAliasEditStateReturn, WalletConnectionWithSettings, createAddressTransform, createArrayObjectTransform, createArrayTransform, createBigIntTransform, createBooleanTransform, createComplexTypeTransform, createDefaultFormValues, createNumberTransform, createObjectTransform, createTextTransform, createTransformForFieldType, generateDefaultValue, getDefaultValueByFieldType, rendererConfig, useAliasEditState, validateField };
|
|
449
|
+
export { AddressBookWidget, type AliasEditLookupResult, AliasEditPopover, type AliasEditPopoverProps, ContractActionBar, ContractStateWidget, DynamicFormField, ExecutionConfigDisplay, NetworkSettingsDialog, ParameterConstraints, type RendererConfig, TransactionExecuteButton, TransactionForm, TransactionSuccessLog, type UseAliasEditStateReturn, WalletConnectionWithSettings, buildTransactionSuccessPayload, createAddressTransform, createArrayObjectTransform, createArrayTransform, createBigIntTransform, createBooleanTransform, createComplexTypeTransform, createDefaultFormValues, createNumberTransform, createObjectTransform, createTextTransform, createTransformForFieldType, generateDefaultValue, getDefaultValueByFieldType, invokeOnTransactionSuccess, normalizeTransactionSuccessHash, rendererConfig, useAliasEditState, validateField };
|
|
422
450
|
//# sourceMappingURL=index.d.cts.map
|
package/dist/index.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/types/RendererConfig.ts","../src/config.ts","../src/components/TransactionForm.tsx","../src/utils/formUtils.ts","../src/components/DynamicFormField.tsx","../src/components/transaction/TransactionExecuteButton.tsx","../src/components/AddressBookWidget/AddressBookWidget.tsx","../src/components/AddressBookWidget/AliasEditPopover.tsx","../src/components/AddressBookWidget/useAliasEditState.ts","../src/components/ContractStateWidget/ContractStateWidget.tsx","../src/components/ContractActionBar/ContractActionBar.tsx","../src/components/ExecutionConfigDisplay/ExecutionConfigDisplay.tsx","../src/components/network/NetworkSettingsDialog.tsx","../src/components/WalletConnectionWithSettings.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;;;AASA;AAIoB,UAJH,cAAA,CAIG;EAWO;;;EANA,gBAAA,EALP,MAKO,CAAA,MAAA,EAAA,MAAA,CAAA;;;;ECJd,iBA4EZ,EDxEoB,MCwEpB,CAAA,MA5E4B,EAAA;;;;
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/types/RendererConfig.ts","../src/config.ts","../src/components/TransactionForm.tsx","../src/utils/formUtils.ts","../src/utils/transactionSuccessCallback.ts","../src/components/DynamicFormField.tsx","../src/components/transaction/TransactionExecuteButton.tsx","../src/components/AddressBookWidget/AddressBookWidget.tsx","../src/components/AddressBookWidget/AliasEditPopover.tsx","../src/components/AddressBookWidget/useAliasEditState.ts","../src/components/ContractStateWidget/ContractStateWidget.tsx","../src/components/ContractActionBar/ContractActionBar.tsx","../src/components/ExecutionConfigDisplay/ExecutionConfigDisplay.tsx","../src/components/network/NetworkSettingsDialog.tsx","../src/components/WalletConnectionWithSettings.tsx"],"sourcesContent":[],"mappings":"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"}
|
package/dist/index.d.mts
CHANGED
|
@@ -2,7 +2,7 @@ import React$1, { JSX } from "react";
|
|
|
2
2
|
import { Control } from "react-hook-form";
|
|
3
3
|
import { ButtonProps } from "@openzeppelin/ui-components";
|
|
4
4
|
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
5
|
-
import { AddressBookWidgetProps, ContractAdapter, ContractFunction, ContractSchema, ExecutionConfig, FieldTransforms, FieldType, FormFieldType, FormValues, FullContractAdapter, NetworkConfig, TransactionFormProps } from "@openzeppelin/ui-types";
|
|
5
|
+
import { AddressBookWidgetProps, ContractAdapter, ContractFunction, ContractSchema, Ecosystem, ExecutionConfig, FieldTransforms, FieldType, FormFieldType, FormValues, FullContractAdapter, NetworkConfig, TransactionFormProps, TransactionSuccessPayload } from "@openzeppelin/ui-types";
|
|
6
6
|
|
|
7
7
|
//#region src/types/RendererConfig.d.ts
|
|
8
8
|
|
|
@@ -65,7 +65,8 @@ declare function TransactionForm({
|
|
|
65
65
|
contractSchema,
|
|
66
66
|
adapter,
|
|
67
67
|
isWalletConnected,
|
|
68
|
-
executionConfig
|
|
68
|
+
executionConfig,
|
|
69
|
+
onTransactionSuccess
|
|
69
70
|
}: TransactionFormProps): React.ReactElement;
|
|
70
71
|
//#endregion
|
|
71
72
|
//#region src/utils/formUtils.d.ts
|
|
@@ -170,6 +171,32 @@ declare function createObjectTransform(): FieldTransforms<Record<string, unknown
|
|
|
170
171
|
*/
|
|
171
172
|
declare function createArrayObjectTransform(): FieldTransforms<Record<string, unknown>[]>;
|
|
172
173
|
//#endregion
|
|
174
|
+
//#region src/utils/transactionSuccessCallback.d.ts
|
|
175
|
+
/**
|
|
176
|
+
* Normalizes adapter `txHash` for the success callback (non-empty trimmed string or omitted).
|
|
177
|
+
* Expects the `txHash` string from `signAndBroadcast`, not arbitrary values (avoids coercing objects).
|
|
178
|
+
*/
|
|
179
|
+
declare function normalizeTransactionSuccessHash(finalTxHash: string | null | undefined): string | undefined;
|
|
180
|
+
/**
|
|
181
|
+
* Builds the {@link TransactionSuccessPayload} passed to `onTransactionSuccess`.
|
|
182
|
+
*/
|
|
183
|
+
declare function buildTransactionSuccessPayload(options: {
|
|
184
|
+
networkId: TransactionSuccessPayload['network_id'];
|
|
185
|
+
ecosystem: Ecosystem;
|
|
186
|
+
executionMethod: ExecutionConfig['method'];
|
|
187
|
+
/** From `signAndBroadcast` result (`txHash: string`) */
|
|
188
|
+
finalTxHash: string | null | undefined;
|
|
189
|
+
}): TransactionSuccessPayload;
|
|
190
|
+
/** Minimal logger surface used by {@link invokeOnTransactionSuccess}. */
|
|
191
|
+
type TransactionSuccessLog = {
|
|
192
|
+
error(component: string, message: string, error?: unknown): void;
|
|
193
|
+
};
|
|
194
|
+
/**
|
|
195
|
+
* Invokes `onTransactionSuccess` with error containment: synchronous throws and async
|
|
196
|
+
* rejections are logged and never rethrown, so host callbacks cannot break transaction flow.
|
|
197
|
+
*/
|
|
198
|
+
declare function invokeOnTransactionSuccess(callback: ((payload: TransactionSuccessPayload) => void | Promise<void>) | undefined, payload: TransactionSuccessPayload, log: TransactionSuccessLog): void;
|
|
199
|
+
//#endregion
|
|
173
200
|
//#region src/components/DynamicFormField.d.ts
|
|
174
201
|
/**
|
|
175
202
|
* Props for the DynamicFormField component
|
|
@@ -284,6 +311,7 @@ declare function AddressBookWidget({
|
|
|
284
311
|
networks,
|
|
285
312
|
filterNetworkIds,
|
|
286
313
|
onFilterNetworkIdsChange,
|
|
314
|
+
title,
|
|
287
315
|
className
|
|
288
316
|
}: AddressBookWidgetProps): react_jsx_runtime0.JSX.Element;
|
|
289
317
|
//#endregion
|
|
@@ -418,5 +446,5 @@ declare const NetworkSettingsDialog: React$1.FC<Props>;
|
|
|
418
446
|
*/
|
|
419
447
|
declare const WalletConnectionWithSettings: React$1.FC;
|
|
420
448
|
//#endregion
|
|
421
|
-
export { AddressBookWidget, type AliasEditLookupResult, AliasEditPopover, type AliasEditPopoverProps, ContractActionBar, ContractStateWidget, DynamicFormField, ExecutionConfigDisplay, NetworkSettingsDialog, ParameterConstraints, type RendererConfig, TransactionExecuteButton, TransactionForm, type UseAliasEditStateReturn, WalletConnectionWithSettings, createAddressTransform, createArrayObjectTransform, createArrayTransform, createBigIntTransform, createBooleanTransform, createComplexTypeTransform, createDefaultFormValues, createNumberTransform, createObjectTransform, createTextTransform, createTransformForFieldType, generateDefaultValue, getDefaultValueByFieldType, rendererConfig, useAliasEditState, validateField };
|
|
449
|
+
export { AddressBookWidget, type AliasEditLookupResult, AliasEditPopover, type AliasEditPopoverProps, ContractActionBar, ContractStateWidget, DynamicFormField, ExecutionConfigDisplay, NetworkSettingsDialog, ParameterConstraints, type RendererConfig, TransactionExecuteButton, TransactionForm, TransactionSuccessLog, type UseAliasEditStateReturn, WalletConnectionWithSettings, buildTransactionSuccessPayload, createAddressTransform, createArrayObjectTransform, createArrayTransform, createBigIntTransform, createBooleanTransform, createComplexTypeTransform, createDefaultFormValues, createNumberTransform, createObjectTransform, createTextTransform, createTransformForFieldType, generateDefaultValue, getDefaultValueByFieldType, invokeOnTransactionSuccess, normalizeTransactionSuccessHash, rendererConfig, useAliasEditState, validateField };
|
|
422
450
|
//# sourceMappingURL=index.d.mts.map
|
package/dist/index.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/types/RendererConfig.ts","../src/config.ts","../src/components/TransactionForm.tsx","../src/utils/formUtils.ts","../src/components/DynamicFormField.tsx","../src/components/transaction/TransactionExecuteButton.tsx","../src/components/AddressBookWidget/AddressBookWidget.tsx","../src/components/AddressBookWidget/AliasEditPopover.tsx","../src/components/AddressBookWidget/useAliasEditState.ts","../src/components/ContractStateWidget/ContractStateWidget.tsx","../src/components/ContractActionBar/ContractActionBar.tsx","../src/components/ExecutionConfigDisplay/ExecutionConfigDisplay.tsx","../src/components/network/NetworkSettingsDialog.tsx","../src/components/WalletConnectionWithSettings.tsx"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;;;AASA;AAIoB,UAJH,cAAA,CAIG;EAWO;;;EANA,gBAAA,EALP,MAKO,CAAA,MAAA,EAAA,MAAA,CAAA;;;;ECJd,iBA4EZ,EDxEoB,MCwEpB,CAAA,MA5E4B,EAAA;;;;
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/types/RendererConfig.ts","../src/config.ts","../src/components/TransactionForm.tsx","../src/utils/formUtils.ts","../src/utils/transactionSuccessCallback.ts","../src/components/DynamicFormField.tsx","../src/components/transaction/TransactionExecuteButton.tsx","../src/components/AddressBookWidget/AddressBookWidget.tsx","../src/components/AddressBookWidget/AliasEditPopover.tsx","../src/components/AddressBookWidget/useAliasEditState.ts","../src/components/ContractStateWidget/ContractStateWidget.tsx","../src/components/ContractActionBar/ContractActionBar.tsx","../src/components/ExecutionConfigDisplay/ExecutionConfigDisplay.tsx","../src/components/network/NetworkSettingsDialog.tsx","../src/components/WalletConnectionWithSettings.tsx"],"sourcesContent":[],"mappings":"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"}
|
package/dist/index.mjs
CHANGED
|
@@ -733,6 +733,44 @@ function extractRuntimeSecrets(data, fields) {
|
|
|
733
733
|
};
|
|
734
734
|
}
|
|
735
735
|
|
|
736
|
+
//#endregion
|
|
737
|
+
//#region src/utils/transactionSuccessCallback.ts
|
|
738
|
+
/**
|
|
739
|
+
* Normalizes adapter `txHash` for the success callback (non-empty trimmed string or omitted).
|
|
740
|
+
* Expects the `txHash` string from `signAndBroadcast`, not arbitrary values (avoids coercing objects).
|
|
741
|
+
*/
|
|
742
|
+
function normalizeTransactionSuccessHash(finalTxHash) {
|
|
743
|
+
if (finalTxHash == null) return;
|
|
744
|
+
const trimmed = finalTxHash.trim();
|
|
745
|
+
return trimmed !== "" ? trimmed : void 0;
|
|
746
|
+
}
|
|
747
|
+
/**
|
|
748
|
+
* Builds the {@link TransactionSuccessPayload} passed to `onTransactionSuccess`.
|
|
749
|
+
*/
|
|
750
|
+
function buildTransactionSuccessPayload(options) {
|
|
751
|
+
const hash = normalizeTransactionSuccessHash(options.finalTxHash);
|
|
752
|
+
return {
|
|
753
|
+
network_id: options.networkId,
|
|
754
|
+
ecosystem: options.ecosystem,
|
|
755
|
+
execution_method: options.executionMethod,
|
|
756
|
+
...hash !== void 0 ? { transaction_hash: hash } : {}
|
|
757
|
+
};
|
|
758
|
+
}
|
|
759
|
+
/**
|
|
760
|
+
* Invokes `onTransactionSuccess` with error containment: synchronous throws and async
|
|
761
|
+
* rejections are logged and never rethrown, so host callbacks cannot break transaction flow.
|
|
762
|
+
*/
|
|
763
|
+
function invokeOnTransactionSuccess(callback, payload, log) {
|
|
764
|
+
try {
|
|
765
|
+
const maybePromise = callback?.(payload);
|
|
766
|
+
Promise.resolve(maybePromise).catch((error) => {
|
|
767
|
+
log.error("TransactionForm", "onTransactionSuccess callback rejected with an error", error);
|
|
768
|
+
});
|
|
769
|
+
} catch (error) {
|
|
770
|
+
log.error("TransactionForm", "onTransactionSuccess callback threw an error", error);
|
|
771
|
+
}
|
|
772
|
+
}
|
|
773
|
+
|
|
736
774
|
//#endregion
|
|
737
775
|
//#region src/components/fieldRegistry.ts
|
|
738
776
|
/**
|
|
@@ -1180,7 +1218,7 @@ const PENDING_STATES = [
|
|
|
1180
1218
|
*
|
|
1181
1219
|
* @returns The rendered form component
|
|
1182
1220
|
*/
|
|
1183
|
-
function TransactionForm({ schema, contractSchema, adapter, isWalletConnected = false, executionConfig }) {
|
|
1221
|
+
function TransactionForm({ schema, contractSchema, adapter, isWalletConnected = false, executionConfig, onTransactionSuccess }) {
|
|
1184
1222
|
const [formError, setFormError] = useState(null);
|
|
1185
1223
|
const [executionConfigError, setExecutionConfigError] = useState(null);
|
|
1186
1224
|
const [runtimeApiKey, setRuntimeApiKey] = useState("");
|
|
@@ -1267,9 +1305,19 @@ function TransactionForm({ schema, contractSchema, adapter, isWalletConnected =
|
|
|
1267
1305
|
setTxResult(result);
|
|
1268
1306
|
logger.info("TransactionForm", "Execution result received:", result);
|
|
1269
1307
|
}
|
|
1308
|
+
const reportTransactionSuccess = () => {
|
|
1309
|
+
const executionMethod = executionConfig?.method ?? "eoa";
|
|
1310
|
+
invokeOnTransactionSuccess(onTransactionSuccess, buildTransactionSuccessPayload({
|
|
1311
|
+
networkId: adapter.networkConfig.id,
|
|
1312
|
+
ecosystem: adapter.networkConfig.ecosystem,
|
|
1313
|
+
executionMethod,
|
|
1314
|
+
finalTxHash
|
|
1315
|
+
}), logger);
|
|
1316
|
+
};
|
|
1270
1317
|
if (canExecuteLocally) {
|
|
1271
1318
|
setTxStatus("success");
|
|
1272
1319
|
setTxError(null);
|
|
1320
|
+
reportTransactionSuccess();
|
|
1273
1321
|
return;
|
|
1274
1322
|
}
|
|
1275
1323
|
if (adapter.waitForTransactionConfirmation) {
|
|
@@ -1280,6 +1328,7 @@ function TransactionForm({ schema, contractSchema, adapter, isWalletConnected =
|
|
|
1280
1328
|
logger.info("TransactionForm", `Transaction confirmed: ${finalTxHash}`, confirmationResult.receipt);
|
|
1281
1329
|
setTxStatus("success");
|
|
1282
1330
|
setTxError(null);
|
|
1331
|
+
reportTransactionSuccess();
|
|
1283
1332
|
} else {
|
|
1284
1333
|
logger.error("TransactionForm", `Transaction failed confirmation: ${finalTxHash}`, confirmationResult.error);
|
|
1285
1334
|
setTxError(confirmationResult.error?.message ?? "Transaction failed during confirmation.");
|
|
@@ -1289,6 +1338,7 @@ function TransactionForm({ schema, contractSchema, adapter, isWalletConnected =
|
|
|
1289
1338
|
logger.warn("TransactionForm", "Adapter does not support waitForTransactionConfirmation. Marking as success after submission.");
|
|
1290
1339
|
setTxStatus("success");
|
|
1291
1340
|
setTxError(null);
|
|
1341
|
+
reportTransactionSuccess();
|
|
1292
1342
|
}
|
|
1293
1343
|
} catch (error) {
|
|
1294
1344
|
logger.error("TransactionForm", "Transaction error during submission process:", error);
|
|
@@ -1733,7 +1783,7 @@ function ImportExportBar({ onExport, onImport, exportDisabled }) {
|
|
|
1733
1783
|
//#endregion
|
|
1734
1784
|
//#region src/components/AddressBookWidget/AddressBookWidget.tsx
|
|
1735
1785
|
/** Widget for managing a personal address book with aliases, search, and network filtering. */
|
|
1736
|
-
function AddressBookWidget({ aliases, isLoading, onSave, onRemove, onClear, onExport, onImport, currentNetworkId, resolveNetwork, resolveExplorerUrl, adapter, resolveAdapter, addressPlaceholder, resolveAddressPlaceholder, networks, filterNetworkIds, onFilterNetworkIdsChange, className }) {
|
|
1786
|
+
function AddressBookWidget({ aliases, isLoading, onSave, onRemove, onClear, onExport, onImport, currentNetworkId, resolveNetwork, resolveExplorerUrl, adapter, resolveAdapter, addressPlaceholder, resolveAddressPlaceholder, networks, filterNetworkIds, onFilterNetworkIdsChange, title = "Address Book", className }) {
|
|
1737
1787
|
const [search, setSearch] = useState("");
|
|
1738
1788
|
const [addDialogOpen, setAddDialogOpen] = useState(false);
|
|
1739
1789
|
const [confirmClear, setConfirmClear] = useState(false);
|
|
@@ -1760,7 +1810,7 @@ function AddressBookWidget({ aliases, isLoading, onSave, onRemove, onClear, onEx
|
|
|
1760
1810
|
className: cn("w-full", className),
|
|
1761
1811
|
children: [/* @__PURE__ */ jsx(CardHeader, { children: /* @__PURE__ */ jsxs(CardTitle, {
|
|
1762
1812
|
className: "flex items-center gap-2 text-lg",
|
|
1763
|
-
children: [/* @__PURE__ */ jsx(BookUser, { className: "h-5 w-5" }),
|
|
1813
|
+
children: [/* @__PURE__ */ jsx(BookUser, { className: "h-5 w-5" }), title]
|
|
1764
1814
|
}) }), /* @__PURE__ */ jsx(CardContent, {
|
|
1765
1815
|
className: "flex items-center justify-center py-12",
|
|
1766
1816
|
children: /* @__PURE__ */ jsx(Loader2, { className: "h-6 w-6 animate-spin text-muted-foreground" })
|
|
@@ -1775,7 +1825,7 @@ function AddressBookWidget({ aliases, isLoading, onSave, onRemove, onClear, onEx
|
|
|
1775
1825
|
className: "flex items-center gap-2 text-lg",
|
|
1776
1826
|
children: [
|
|
1777
1827
|
/* @__PURE__ */ jsx(BookUser, { className: "h-5 w-5" }),
|
|
1778
|
-
|
|
1828
|
+
title,
|
|
1779
1829
|
aliases.length > 0 && /* @__PURE__ */ jsxs("span", {
|
|
1780
1830
|
className: "text-sm font-normal text-muted-foreground",
|
|
1781
1831
|
children: [
|
|
@@ -2780,5 +2830,5 @@ const WalletConnectionWithSettings = () => {
|
|
|
2780
2830
|
};
|
|
2781
2831
|
|
|
2782
2832
|
//#endregion
|
|
2783
|
-
export { AddressBookWidget, AliasEditPopover, ContractActionBar, ContractStateWidget, DynamicFormField, ExecutionConfigDisplay, NetworkSettingsDialog, TransactionExecuteButton, TransactionForm, WalletConnectionWithSettings, createAddressTransform, createArrayObjectTransform, createArrayTransform, createBigIntTransform, createBooleanTransform, createComplexTypeTransform, createDefaultFormValues, createNumberTransform, createObjectTransform, createTextTransform, createTransformForFieldType, generateDefaultValue, getDefaultValueByFieldType, rendererConfig, useAliasEditState, validateField };
|
|
2833
|
+
export { AddressBookWidget, AliasEditPopover, ContractActionBar, ContractStateWidget, DynamicFormField, ExecutionConfigDisplay, NetworkSettingsDialog, TransactionExecuteButton, TransactionForm, WalletConnectionWithSettings, buildTransactionSuccessPayload, createAddressTransform, createArrayObjectTransform, createArrayTransform, createBigIntTransform, createBooleanTransform, createComplexTypeTransform, createDefaultFormValues, createNumberTransform, createObjectTransform, createTextTransform, createTransformForFieldType, generateDefaultValue, getDefaultValueByFieldType, invokeOnTransactionSuccess, normalizeTransactionSuccessHash, rendererConfig, useAliasEditState, validateField };
|
|
2784
2834
|
//# sourceMappingURL=index.mjs.map
|