@gearbox-protocol/ui-kit 3.14.0-next.12 → 3.14.0-next.14
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/README.md +1 -0
- package/dist/cjs/components/assets-list-cell/assets-list-cell.cjs +1 -1
- package/dist/cjs/components/block-sync/block-sync.cjs +1 -1
- package/dist/cjs/components/checkbox/checkbox-labeled.cjs +1 -1
- package/dist/cjs/components/client-adapters/styled-rounded-image/styled-rounded-image.cjs +1 -1
- package/dist/cjs/components/complex-input/complex-input.cjs +1 -1
- package/dist/cjs/components/composites/pool-table/columns.cjs +1 -1
- package/dist/cjs/components/composites/tx-preview/components/AddressAvatar.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/components/AddressParty.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/components/AddressRow.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/components/AmountRow.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/components/CollapsibleCard.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/components/SectionDivider.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/components/TransferList.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/components/TransferRow.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/components/addressLabel.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/components/index.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/dialog/TransactionConfirmDialogView.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/dialog/constants.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/dialog/index.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/dialog/useTransactionConfirmDialog.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/hooks/index.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/hooks/useCalldataOperationPreview.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/index.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/preview/OperationPreviewContent.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/preview/index.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/stepper/HorizontalTransactionStepper.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/stepper/computeTransactionExecutionSteps.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/stepper/constants.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/stepper/index.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/stepper/useCompletedStepsInSession.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/summary/PoolOperationConfirmSummary.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/summary/constants.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/confirm/summary/index.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/hooks/useParsedTransaction.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/index.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/operations/OperationBody.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/operations/OperationsCard.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/operations/PoolDepositView.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/operations/PoolRow.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/operations/PoolWithdrawView.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/operations/index.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/prerequisites/PrerequisiteRow.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/prerequisites/PrerequisitesCard.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/prerequisites/index.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/prerequisites/prerequisiteDetails.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/prerequisites/usePrerequisites.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/state-change/BalanceChangeGroup.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/state-change/BalanceChangeRow.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/state-change/PoolStateChangeCard.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/state-change/StateChangeCard.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/state-change/index.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/types.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/utils/addressLabels.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/utils/index.cjs +1 -0
- package/dist/cjs/components/composites/tx-preview/utils/poolTokenInfo.cjs +1 -0
- package/dist/cjs/components/compound-apy/compound-apy.cjs +1 -1
- package/dist/cjs/components/detailed-page-title/detailed-page-title.cjs +1 -1
- package/dist/cjs/components/index.cjs +1 -1
- package/dist/cjs/components/legal-agreement/index.cjs +1 -1
- package/dist/cjs/components/legal-agreement/legal-agreement-awaiting-panel.cjs +1 -0
- package/dist/cjs/components/legal-agreement/legal-agreement-dialog.cjs +1 -1
- package/dist/cjs/components/legal-agreement/legal-agreement-link.cjs +1 -0
- package/dist/cjs/components/legal-agreement/legal-agreement-panel.cjs +1 -0
- package/dist/cjs/components/legal-agreement/legal-agreement-theme.cjs +1 -0
- package/dist/cjs/components/legal-agreement/legal-agreement.stories-config.cjs +1 -0
- package/dist/cjs/components/markdown-viewer/markdown-viewer.cjs +1 -1
- package/dist/cjs/components/time-to-liquidation/time-to-liquidation.cjs +1 -1
- package/dist/cjs/components/tokens-list-cell/tokens-list-cell.cjs +1 -1
- package/dist/cjs/components/with-copy/with-copy.cjs +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/esm/components/assets-list-cell/assets-list-cell.js +3 -2
- package/dist/esm/components/block-sync/block-sync.js +3 -2
- package/dist/esm/components/checkbox/checkbox-labeled.js +1 -0
- package/dist/esm/components/client-adapters/styled-rounded-image/styled-rounded-image.js +1 -0
- package/dist/esm/components/complex-input/complex-input.js +3 -2
- package/dist/esm/components/composites/pool-table/columns.js +34 -33
- package/dist/esm/components/composites/tx-preview/components/AddressAvatar.js +47 -0
- package/dist/esm/components/composites/tx-preview/components/AddressParty.js +17 -0
- package/dist/esm/components/composites/tx-preview/components/AddressRow.js +16 -0
- package/dist/esm/components/composites/tx-preview/components/AmountRow.js +30 -0
- package/dist/esm/components/composites/tx-preview/components/CollapsibleCard.js +45 -0
- package/dist/esm/components/composites/tx-preview/components/SectionDivider.js +12 -0
- package/dist/esm/components/composites/tx-preview/components/TransferList.js +25 -0
- package/dist/esm/components/composites/tx-preview/components/TransferRow.js +52 -0
- package/dist/esm/components/composites/tx-preview/components/addressLabel.js +7 -0
- package/dist/esm/components/composites/tx-preview/components/index.js +20 -0
- package/dist/esm/components/composites/tx-preview/confirm/dialog/TransactionConfirmDialogView.js +58 -0
- package/dist/esm/components/composites/tx-preview/confirm/dialog/constants.js +12 -0
- package/dist/esm/components/composites/tx-preview/confirm/dialog/index.js +9 -0
- package/dist/esm/components/composites/tx-preview/confirm/dialog/useTransactionConfirmDialog.js +20 -0
- package/dist/esm/components/composites/tx-preview/confirm/hooks/index.js +4 -0
- package/dist/esm/components/composites/tx-preview/confirm/hooks/useCalldataOperationPreview.js +35 -0
- package/dist/esm/components/composites/tx-preview/confirm/index.js +26 -0
- package/dist/esm/components/composites/tx-preview/confirm/preview/OperationPreviewContent.js +204 -0
- package/dist/esm/components/composites/tx-preview/confirm/preview/index.js +4 -0
- package/dist/esm/components/composites/tx-preview/confirm/stepper/HorizontalTransactionStepper.js +136 -0
- package/dist/esm/components/composites/tx-preview/confirm/stepper/computeTransactionExecutionSteps.js +47 -0
- package/dist/esm/components/composites/tx-preview/confirm/stepper/constants.js +6 -0
- package/dist/esm/components/composites/tx-preview/confirm/stepper/index.js +11 -0
- package/dist/esm/components/composites/tx-preview/confirm/stepper/useCompletedStepsInSession.js +39 -0
- package/dist/esm/components/composites/tx-preview/confirm/summary/PoolOperationConfirmSummary.js +92 -0
- package/dist/esm/components/composites/tx-preview/confirm/summary/constants.js +6 -0
- package/dist/esm/components/composites/tx-preview/confirm/summary/index.js +6 -0
- package/dist/esm/components/composites/tx-preview/hooks/useParsedTransaction.js +45 -0
- package/dist/esm/components/composites/tx-preview/index.js +78 -0
- package/dist/esm/components/composites/tx-preview/operations/OperationBody.js +10 -0
- package/dist/esm/components/composites/tx-preview/operations/OperationsCard.js +192 -0
- package/dist/esm/components/composites/tx-preview/operations/PoolDepositView.js +201 -0
- package/dist/esm/components/composites/tx-preview/operations/PoolRow.js +20 -0
- package/dist/esm/components/composites/tx-preview/operations/PoolWithdrawView.js +195 -0
- package/dist/esm/components/composites/tx-preview/operations/index.js +13 -0
- package/dist/esm/components/composites/tx-preview/prerequisites/PrerequisiteRow.js +21 -0
- package/dist/esm/components/composites/tx-preview/prerequisites/PrerequisitesCard.js +207 -0
- package/dist/esm/components/composites/tx-preview/prerequisites/index.js +11 -0
- package/dist/esm/components/composites/tx-preview/prerequisites/prerequisiteDetails.js +58 -0
- package/dist/esm/components/composites/tx-preview/prerequisites/usePrerequisites.js +39 -0
- package/dist/esm/components/composites/tx-preview/state-change/BalanceChangeGroup.js +182 -0
- package/dist/esm/components/composites/tx-preview/state-change/BalanceChangeRow.js +61 -0
- package/dist/esm/components/composites/tx-preview/state-change/PoolStateChangeCard.js +23 -0
- package/dist/esm/components/composites/tx-preview/state-change/StateChangeCard.js +197 -0
- package/dist/esm/components/composites/tx-preview/state-change/index.js +10 -0
- package/dist/esm/components/composites/tx-preview/types.js +1 -0
- package/dist/esm/components/composites/tx-preview/utils/addressLabels.js +41 -0
- package/dist/esm/components/composites/tx-preview/utils/index.js +6 -0
- package/dist/esm/components/composites/tx-preview/utils/poolTokenInfo.js +12 -0
- package/dist/esm/components/compound-apy/compound-apy.js +3 -2
- package/dist/esm/components/detailed-page-title/detailed-page-title.js +1 -0
- package/dist/esm/components/index.js +504 -488
- package/dist/esm/components/legal-agreement/index.js +23 -7
- package/dist/esm/components/legal-agreement/legal-agreement-awaiting-panel.js +29 -0
- package/dist/esm/components/legal-agreement/legal-agreement-dialog.js +72 -212
- package/dist/esm/components/legal-agreement/legal-agreement-link.js +22 -0
- package/dist/esm/components/legal-agreement/legal-agreement-panel.js +130 -0
- package/dist/esm/components/legal-agreement/legal-agreement-theme.js +137 -0
- package/dist/esm/components/legal-agreement/legal-agreement.stories-config.js +170 -0
- package/dist/esm/components/markdown-viewer/markdown-viewer.js +3 -2
- package/dist/esm/components/time-to-liquidation/time-to-liquidation.js +1 -0
- package/dist/esm/components/tokens-list-cell/tokens-list-cell.js +3 -2
- package/dist/esm/components/with-copy/with-copy.js +3 -2
- package/dist/esm/index.js +836 -820
- package/dist/globals.css +1 -1
- package/dist/types/components/composites/tx-preview/components/AddressAvatar.d.ts +12 -0
- package/dist/types/components/composites/tx-preview/components/AddressParty.d.ts +14 -0
- package/dist/types/components/composites/tx-preview/components/AddressRow.d.ts +7 -0
- package/dist/types/components/composites/tx-preview/components/AmountRow.d.ts +15 -0
- package/dist/types/components/composites/tx-preview/components/CollapsibleCard.d.ts +22 -0
- package/dist/types/components/composites/tx-preview/components/SectionDivider.d.ts +10 -0
- package/dist/types/components/composites/tx-preview/components/TransferList.d.ts +19 -0
- package/dist/types/components/composites/tx-preview/components/TransferRow.d.ts +30 -0
- package/dist/types/components/composites/tx-preview/components/addressLabel.d.ts +27 -0
- package/dist/types/components/composites/tx-preview/components/index.d.ts +9 -0
- package/dist/types/components/composites/tx-preview/confirm/dialog/TransactionConfirmDialogView.d.ts +15 -0
- package/dist/types/components/composites/tx-preview/confirm/dialog/constants.d.ts +7 -0
- package/dist/types/components/composites/tx-preview/confirm/dialog/index.d.ts +3 -0
- package/dist/types/components/composites/tx-preview/confirm/dialog/useTransactionConfirmDialog.d.ts +8 -0
- package/dist/types/components/composites/tx-preview/confirm/hooks/index.d.ts +1 -0
- package/dist/types/components/composites/tx-preview/confirm/hooks/useCalldataOperationPreview.d.ts +19 -0
- package/dist/types/components/composites/tx-preview/confirm/index.d.ts +5 -0
- package/dist/types/components/composites/tx-preview/confirm/preview/OperationPreviewContent.d.ts +13 -0
- package/dist/types/components/composites/tx-preview/confirm/preview/index.d.ts +1 -0
- package/dist/types/components/composites/tx-preview/confirm/stepper/HorizontalTransactionStepper.d.ts +7 -0
- package/dist/types/components/composites/tx-preview/confirm/stepper/computeTransactionExecutionSteps.d.ts +28 -0
- package/dist/types/components/composites/tx-preview/confirm/stepper/constants.d.ts +3 -0
- package/dist/types/components/composites/tx-preview/confirm/stepper/index.d.ts +4 -0
- package/dist/types/components/composites/tx-preview/confirm/stepper/useCompletedStepsInSession.d.ts +14 -0
- package/dist/types/components/composites/tx-preview/confirm/summary/PoolOperationConfirmSummary.d.ts +18 -0
- package/dist/types/components/composites/tx-preview/confirm/summary/constants.d.ts +3 -0
- package/dist/types/components/composites/tx-preview/confirm/summary/index.d.ts +2 -0
- package/dist/types/components/composites/tx-preview/hooks/useParsedTransaction.d.ts +40 -0
- package/dist/types/components/composites/tx-preview/index.d.ts +19 -0
- package/dist/types/components/composites/tx-preview/operations/OperationBody.d.ts +15 -0
- package/dist/types/components/composites/tx-preview/operations/OperationsCard.d.ts +21 -0
- package/dist/types/components/composites/tx-preview/operations/PoolDepositView.d.ts +11 -0
- package/dist/types/components/composites/tx-preview/operations/PoolRow.d.ts +8 -0
- package/dist/types/components/composites/tx-preview/operations/PoolWithdrawView.d.ts +11 -0
- package/dist/types/components/composites/tx-preview/operations/index.d.ts +5 -0
- package/dist/types/components/composites/tx-preview/prerequisites/PrerequisiteRow.d.ts +11 -0
- package/dist/types/components/composites/tx-preview/prerequisites/PrerequisitesCard.d.ts +17 -0
- package/dist/types/components/composites/tx-preview/prerequisites/index.d.ts +4 -0
- package/dist/types/components/composites/tx-preview/prerequisites/prerequisiteDetails.d.ts +17 -0
- package/dist/types/components/composites/tx-preview/prerequisites/usePrerequisites.d.ts +25 -0
- package/dist/types/components/composites/tx-preview/state-change/BalanceChangeGroup.d.ts +11 -0
- package/dist/types/components/composites/tx-preview/state-change/BalanceChangeRow.d.ts +14 -0
- package/dist/types/components/composites/tx-preview/state-change/PoolStateChangeCard.d.ts +18 -0
- package/dist/types/components/composites/tx-preview/state-change/StateChangeCard.d.ts +21 -0
- package/dist/types/components/composites/tx-preview/state-change/index.d.ts +4 -0
- package/dist/types/components/composites/tx-preview/types.d.ts +19 -0
- package/dist/types/components/composites/tx-preview/utils/addressLabels.d.ts +16 -0
- package/dist/types/components/composites/tx-preview/utils/index.d.ts +2 -0
- package/dist/types/components/composites/tx-preview/utils/poolTokenInfo.d.ts +14 -0
- package/dist/types/components/legal-agreement/index.d.ts +5 -1
- package/dist/types/components/legal-agreement/legal-agreement-awaiting-panel.d.ts +10 -0
- package/dist/types/components/legal-agreement/legal-agreement-dialog.d.ts +19 -52
- package/dist/types/components/legal-agreement/legal-agreement-link.d.ts +11 -0
- package/dist/types/components/legal-agreement/legal-agreement-panel.d.ts +16 -0
- package/dist/types/components/legal-agreement/legal-agreement-theme.d.ts +36 -0
- package/dist/types/components/legal-agreement/legal-agreement.stories-config.d.ts +11 -0
- package/package.json +12 -2
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { AddressBalanceChanges, PoolOperation } from '@gearbox-protocol/sdk/preview';
|
|
2
|
+
import { Address } from 'viem';
|
|
3
|
+
import { GearboxSDKLike } from '../types';
|
|
4
|
+
export interface PoolStateChangeCardProps {
|
|
5
|
+
sdk: GearboxSDKLike;
|
|
6
|
+
/** The decoded pool deposit/redeem operation. */
|
|
7
|
+
operation: PoolOperation;
|
|
8
|
+
/** Balance changes grouped by watched address (from a successful simulation). */
|
|
9
|
+
balanceChanges: AddressBalanceChanges[];
|
|
10
|
+
/** Wallet whose balances are highlighted. */
|
|
11
|
+
wallet: Address;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Pool-specific state-change content: balance changes grouped by address (wallet
|
|
15
|
+
* and, when distinct, the recipient). Renders content only; the surrounding card
|
|
16
|
+
* chrome, loading, and error handling live in {@link StateChangeCard}.
|
|
17
|
+
*/
|
|
18
|
+
export declare function PoolStateChangeCard({ sdk, operation, balanceChanges, wallet, }: PoolStateChangeCardProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Operation, PoolSimulationResult } from '@gearbox-protocol/sdk/preview';
|
|
2
|
+
import { Address } from 'viem';
|
|
3
|
+
import { GearboxSDKLike } from '../types';
|
|
4
|
+
export interface StateChangeCardProps {
|
|
5
|
+
sdk: GearboxSDKLike;
|
|
6
|
+
/** Parsed operation that drives which specific state-change card is shown. */
|
|
7
|
+
data: Operation;
|
|
8
|
+
/** Stage-2 simulation outcome; `undefined` while it is loading. */
|
|
9
|
+
simulation: PoolSimulationResult | undefined;
|
|
10
|
+
/** Whether the simulation is still running. */
|
|
11
|
+
isLoading: boolean;
|
|
12
|
+
/** Wallet whose balances/transfers are highlighted. */
|
|
13
|
+
wallet: Address;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Parent card for transaction state changes. Owns the common logic (collapsible
|
|
17
|
+
* card shell, loading skeleton, card-styled error, and no-data handling) and
|
|
18
|
+
* decides which specific state-change card to render: pool balance changes,
|
|
19
|
+
* credit account changes (not yet supported), or the decoded revert reason.
|
|
20
|
+
*/
|
|
21
|
+
export declare function StateChangeCard({ sdk, data, simulation, isLoading, wallet, }: StateChangeCardProps): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Address } from 'viem';
|
|
2
|
+
/**
|
|
3
|
+
* Minimal SDK surface for tx-preview UI + hooks.
|
|
4
|
+
* Satisfied by verify OnchainSDK and client preview SDK instances.
|
|
5
|
+
*/
|
|
6
|
+
export interface GearboxSDKLike {
|
|
7
|
+
chainId: number;
|
|
8
|
+
tokensMeta: {
|
|
9
|
+
get(address: Address): {
|
|
10
|
+
symbol?: string;
|
|
11
|
+
decimals?: number;
|
|
12
|
+
name?: string;
|
|
13
|
+
} | undefined;
|
|
14
|
+
};
|
|
15
|
+
readonly plugins: {
|
|
16
|
+
adapters: unknown;
|
|
17
|
+
};
|
|
18
|
+
client: unknown;
|
|
19
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { PoolOperation } from '@gearbox-protocol/sdk/preview';
|
|
2
|
+
import { Address } from 'viem';
|
|
3
|
+
import { AddressLabels } from '../components';
|
|
4
|
+
import { GearboxSDKLike } from '../types';
|
|
5
|
+
/**
|
|
6
|
+
* Builds the UI label map for a pool deposit/redeem operation.
|
|
7
|
+
*
|
|
8
|
+
* "Our" addresses (wallet, receiver, redeem owner) are flagged `ours: true`; the
|
|
9
|
+
* pool is labeled with its name and flagged `ours: false`. When the receiver /
|
|
10
|
+
* owner coincides with the wallet, it is labeled "Your wallet".
|
|
11
|
+
*
|
|
12
|
+
* Note: the `ours` flag is a UI-only concept and is derived locally here; it is
|
|
13
|
+
* intentionally decoupled from the simulation watch set in the SDK preview
|
|
14
|
+
* `simulate` module.
|
|
15
|
+
*/
|
|
16
|
+
export declare function buildPoolOperationLabels(sdk: GearboxSDKLike, op: PoolOperation, wallet: Address): AddressLabels;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Address } from 'viem';
|
|
2
|
+
import { GearboxSDKLike } from '../types';
|
|
3
|
+
export interface TokenInfo {
|
|
4
|
+
symbol: string;
|
|
5
|
+
decimals: number;
|
|
6
|
+
/** Human-readable token/pool name, when available. */
|
|
7
|
+
name?: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Resolves a token's symbol, decimals and name from `sdk.tokensMeta`, falling
|
|
11
|
+
* back to a shortened address / 18 decimals when the token is not in the
|
|
12
|
+
* registry. For pools, the diesel-token meta carries the pool name.
|
|
13
|
+
*/
|
|
14
|
+
export declare function resolveToken(sdk: GearboxSDKLike, address: Address): TokenInfo;
|
|
@@ -1 +1,5 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { LegalAgreementAwaitingPanel, type LegalAgreementAwaitingPanelProps, LegalAgreementAwaitingPanelTest, } from './legal-agreement-awaiting-panel';
|
|
2
|
+
export { BlockedRegionDialog, type BlockedRegionDialogProps, type LegalAgreementCheckboxItem, LegalAgreementDialog, type LegalAgreementDialogConfig, type LegalAgreementDialogProps, } from './legal-agreement-dialog';
|
|
3
|
+
export { LegalAgreementLink, type LegalAgreementLinkProps, } from './legal-agreement-link';
|
|
4
|
+
export { LegalAgreementPanel, type LegalAgreementPanelProps, LegalAgreementPanelTest, } from './legal-agreement-panel';
|
|
5
|
+
export { type LegalAgreementThemeVariantProps, type LegalAgreementVisualTheme, legalAgreementAwaitingDescriptionVariants, legalAgreementAwaitingRootVariants, legalAgreementAwaitingTitleVariants, legalAgreementLinkVariants, legalAgreementPanelCheckboxLabelVariants, legalAgreementPanelCheckboxListTitleVariants, legalAgreementPanelCheckboxListVariants, legalAgreementPanelCheckboxRowVariants, legalAgreementPanelNotificationVariants, legalAgreementPanelRootVariants, legalAgreementPanelV2BannerVariants, } from './legal-agreement-theme';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { LegalAgreementVisualTheme } from './legal-agreement-theme';
|
|
3
|
+
export declare class LegalAgreementAwaitingPanelTest {
|
|
4
|
+
static root: string;
|
|
5
|
+
}
|
|
6
|
+
export interface LegalAgreementAwaitingPanelProps {
|
|
7
|
+
readonly waitingForSignatureText?: string;
|
|
8
|
+
readonly theme?: LegalAgreementVisualTheme;
|
|
9
|
+
}
|
|
10
|
+
export declare function LegalAgreementAwaitingPanel({ waitingForSignatureText, theme, }: LegalAgreementAwaitingPanelProps): React.ReactElement;
|
|
@@ -1,13 +1,9 @@
|
|
|
1
|
+
import { LegalAgreementVisualTheme } from './legal-agreement-theme';
|
|
1
2
|
import * as React from "react";
|
|
2
3
|
export interface LegalAgreementCheckboxItem {
|
|
3
4
|
id: string;
|
|
4
5
|
content: React.ReactNode;
|
|
5
6
|
}
|
|
6
|
-
export interface LegalAgreementDialogLinks {
|
|
7
|
-
termsOfService: string;
|
|
8
|
-
privacyNotice: string;
|
|
9
|
-
riskDisclosure: string;
|
|
10
|
-
}
|
|
11
7
|
export interface LegalAgreementDialogConfig {
|
|
12
8
|
/**
|
|
13
9
|
* Product/service name (e.g., "Permissionless Interface", "Permissionless Safe", "Gearbox App")
|
|
@@ -41,6 +37,15 @@ export interface LegalAgreementDialogConfig {
|
|
|
41
37
|
* Defaults to "Please sign the message in your wallet to agree to the Terms of Service."
|
|
42
38
|
*/
|
|
43
39
|
waitingForSignatureText?: string;
|
|
40
|
+
/**
|
|
41
|
+
* Notice shown when terms are updated (hasV2Signature is true).
|
|
42
|
+
* Host app supplies legal copy; ui-kit only renders layout.
|
|
43
|
+
*/
|
|
44
|
+
updatedTermsNoticeText?: React.ReactNode;
|
|
45
|
+
/**
|
|
46
|
+
* Optional heading above checkbox list (e.g. warranty section title).
|
|
47
|
+
*/
|
|
48
|
+
checkboxListTitle?: React.ReactNode;
|
|
44
49
|
}
|
|
45
50
|
export interface LegalAgreementDialogProps {
|
|
46
51
|
open: boolean;
|
|
@@ -50,6 +55,7 @@ export interface LegalAgreementDialogProps {
|
|
|
50
55
|
hasV2Signature?: boolean;
|
|
51
56
|
isAwaitingSignature?: boolean;
|
|
52
57
|
config: LegalAgreementDialogConfig;
|
|
58
|
+
theme?: LegalAgreementVisualTheme;
|
|
53
59
|
}
|
|
54
60
|
/**
|
|
55
61
|
* LegalAgreementDialog — dialog component for legal agreement signing.
|
|
@@ -77,59 +83,20 @@ export interface LegalAgreementDialogProps {
|
|
|
77
83
|
* Note: Displays checkboxes for user agreement and handles signing flow.
|
|
78
84
|
* Shows waiting state during signature process.
|
|
79
85
|
*
|
|
80
|
-
* Example usage
|
|
86
|
+
* Example usage — host app supplies config (legal copy is app-owned):
|
|
81
87
|
* ```tsx
|
|
82
|
-
* import { LegalAgreementDialog,
|
|
88
|
+
* import { LegalAgreementDialog, LegalAgreementLink } from '@gearbox-protocol/ui-kit';
|
|
83
89
|
*
|
|
84
|
-
* const
|
|
85
|
-
*
|
|
86
|
-
*
|
|
87
|
-
*
|
|
90
|
+
* const config = {
|
|
91
|
+
* productName: 'My App',
|
|
92
|
+
* notificationText: <>…your legal copy with <LegalAgreementLink href="…">ToS</LegalAgreementLink>…</>,
|
|
93
|
+
* checkboxItems: [{ id: 'consent', content: <>…</> }],
|
|
88
94
|
* };
|
|
89
95
|
*
|
|
90
|
-
*
|
|
91
|
-
* // it uses simplified consent flow. For other names (e.g., "Gearbox App") it uses
|
|
92
|
-
* // extended consent flow with additional checkboxes.
|
|
93
|
-
* const config = createLegalAgreementConfig("Permissionless Interface", links);
|
|
94
|
-
*
|
|
95
|
-
* <LegalAgreementDialog
|
|
96
|
-
* open={isOpen}
|
|
97
|
-
* onClose={handleClose}
|
|
98
|
-
* onSign={handleSign}
|
|
99
|
-
* isSigning={isSigning}
|
|
100
|
-
* config={config}
|
|
101
|
-
* />
|
|
96
|
+
* <LegalAgreementDialog open={isOpen} onClose={handleClose} onSign={handleSign} isSigning={isSigning} config={config} />
|
|
102
97
|
* ```
|
|
103
98
|
*/
|
|
104
|
-
export declare function LegalAgreementDialog({ open, onClose, onSign, isSigning, hasV2Signature, isAwaitingSignature, config, }: LegalAgreementDialogProps): import("react/jsx-runtime").JSX.Element;
|
|
105
|
-
export type AppName = string;
|
|
106
|
-
/**
|
|
107
|
-
* Creates configuration for legal agreement dialog based on app name.
|
|
108
|
-
* @param appName - Name of the application (any string, e.g., "Permissionless Interface", "Permissionless Safe", "Gearbox App", etc.)
|
|
109
|
-
* @param links - URLs for legal documents
|
|
110
|
-
* @param options - Optional configuration overrides
|
|
111
|
-
*/
|
|
112
|
-
export declare function createLegalAgreementConfig(appName: AppName, links: LegalAgreementDialogLinks, options?: {
|
|
113
|
-
agreeButtonText?: string;
|
|
114
|
-
}): LegalAgreementDialogConfig;
|
|
115
|
-
/**
|
|
116
|
-
* @deprecated Use createLegalAgreementConfig("Permissionless Interface", links, options) instead
|
|
117
|
-
*/
|
|
118
|
-
export declare function createPermissionlessInterfaceConfig(links: LegalAgreementDialogLinks, options?: {
|
|
119
|
-
agreeButtonText?: string;
|
|
120
|
-
}): LegalAgreementDialogConfig;
|
|
121
|
-
/**
|
|
122
|
-
* @deprecated Use createLegalAgreementConfig("Permissionless Safe", links, options) instead
|
|
123
|
-
*/
|
|
124
|
-
export declare function createPermissionlessSafeConfig(links: LegalAgreementDialogLinks, options?: {
|
|
125
|
-
agreeButtonText?: string;
|
|
126
|
-
}): LegalAgreementDialogConfig;
|
|
127
|
-
/**
|
|
128
|
-
* @deprecated Use createLegalAgreementConfig("Gearbox App", links, options) instead
|
|
129
|
-
*/
|
|
130
|
-
export declare function createGearboxAppConfig(links: LegalAgreementDialogLinks, options?: {
|
|
131
|
-
agreeButtonText?: string;
|
|
132
|
-
}): LegalAgreementDialogConfig;
|
|
99
|
+
export declare function LegalAgreementDialog({ open, onClose, onSign, isSigning, hasV2Signature, isAwaitingSignature, config, theme, }: LegalAgreementDialogProps): import("react/jsx-runtime").JSX.Element;
|
|
133
100
|
export interface BlockedRegionDialogProps {
|
|
134
101
|
open: boolean;
|
|
135
102
|
onClose: () => void;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { LegalAgreementVisualTheme } from './legal-agreement-theme';
|
|
3
|
+
export interface LegalAgreementLinkProps {
|
|
4
|
+
readonly href: string;
|
|
5
|
+
readonly children: React.ReactNode;
|
|
6
|
+
readonly theme?: LegalAgreementVisualTheme;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Styled external link for legal agreement copy supplied by the host app.
|
|
10
|
+
*/
|
|
11
|
+
export declare function LegalAgreementLink({ href, children, theme, }: LegalAgreementLinkProps): React.ReactElement;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { LegalAgreementDialogConfig } from './legal-agreement-dialog';
|
|
3
|
+
import { LegalAgreementVisualTheme } from './legal-agreement-theme';
|
|
4
|
+
export declare class LegalAgreementPanelTest {
|
|
5
|
+
static root: string;
|
|
6
|
+
}
|
|
7
|
+
export interface LegalAgreementPanelProps {
|
|
8
|
+
readonly config: LegalAgreementDialogConfig;
|
|
9
|
+
readonly checkedItems: Readonly<Record<string, boolean>>;
|
|
10
|
+
readonly onCheckedChange: (id: string) => void;
|
|
11
|
+
readonly hasV2Signature?: boolean;
|
|
12
|
+
readonly showTitle?: boolean;
|
|
13
|
+
readonly checkboxIdPrefix?: string;
|
|
14
|
+
readonly theme?: LegalAgreementVisualTheme;
|
|
15
|
+
}
|
|
16
|
+
export declare function LegalAgreementPanel({ config, checkedItems, onCheckedChange, hasV2Signature, showTitle, checkboxIdPrefix, theme, }: LegalAgreementPanelProps): React.ReactElement;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
export type LegalAgreementVisualTheme = "default" | "gearboxV3";
|
|
3
|
+
export declare const legalAgreementPanelRootVariants: (props?: ({
|
|
4
|
+
theme?: "default" | "gearboxV3" | null | undefined;
|
|
5
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
6
|
+
export declare const legalAgreementPanelNotificationVariants: (props?: ({
|
|
7
|
+
theme?: "default" | "gearboxV3" | null | undefined;
|
|
8
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
9
|
+
export declare const legalAgreementPanelCheckboxListVariants: (props?: ({
|
|
10
|
+
readonly theme?: "default" | "gearboxV3" | null | undefined;
|
|
11
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
12
|
+
export declare const legalAgreementPanelCheckboxListTitleVariants: (props?: ({
|
|
13
|
+
theme?: "default" | "gearboxV3" | null | undefined;
|
|
14
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
15
|
+
export declare const legalAgreementPanelCheckboxRowVariants: (props?: ({
|
|
16
|
+
theme?: "default" | "gearboxV3" | null | undefined;
|
|
17
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
18
|
+
export declare const legalAgreementPanelCheckboxLabelVariants: (props?: ({
|
|
19
|
+
theme?: "default" | "gearboxV3" | null | undefined;
|
|
20
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
21
|
+
export declare const legalAgreementPanelV2BannerVariants: (props?: ({
|
|
22
|
+
theme?: "default" | "gearboxV3" | null | undefined;
|
|
23
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
24
|
+
export declare const legalAgreementAwaitingRootVariants: (props?: ({
|
|
25
|
+
theme?: "default" | "gearboxV3" | null | undefined;
|
|
26
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
27
|
+
export declare const legalAgreementAwaitingTitleVariants: (props?: ({
|
|
28
|
+
theme?: "default" | "gearboxV3" | null | undefined;
|
|
29
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
30
|
+
export declare const legalAgreementAwaitingDescriptionVariants: (props?: ({
|
|
31
|
+
theme?: "default" | "gearboxV3" | null | undefined;
|
|
32
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
33
|
+
export declare const legalAgreementLinkVariants: (props?: ({
|
|
34
|
+
theme?: "default" | "gearboxV3" | null | undefined;
|
|
35
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
36
|
+
export type LegalAgreementThemeVariantProps = VariantProps<typeof legalAgreementPanelRootVariants>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { LegalAgreementDialogConfig } from './legal-agreement-dialog';
|
|
2
|
+
import { LegalAgreementVisualTheme } from './legal-agreement-theme';
|
|
3
|
+
export declare function createStoryPermissionlessLegalConfig(theme?: LegalAgreementVisualTheme): LegalAgreementDialogConfig;
|
|
4
|
+
export declare function createStoryExtendedLegalConfig(theme?: LegalAgreementVisualTheme): LegalAgreementDialogConfig;
|
|
5
|
+
export declare function createStoryRwaLegalConfig(theme?: LegalAgreementVisualTheme): LegalAgreementDialogConfig;
|
|
6
|
+
/** Storybook-only sample config (single-checkbox flow). Not exported from ui-kit. */
|
|
7
|
+
export declare const storyPermissionlessLegalConfig: LegalAgreementDialogConfig;
|
|
8
|
+
/** Storybook-only sample config (three-checkbox flow). Not exported from ui-kit. */
|
|
9
|
+
export declare const storyExtendedLegalConfig: LegalAgreementDialogConfig;
|
|
10
|
+
/** Storybook-only RWA sample config. Not exported from ui-kit. */
|
|
11
|
+
export declare const storyRwaLegalConfig: LegalAgreementDialogConfig;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gearbox-protocol/ui-kit",
|
|
3
|
-
"version": "3.14.0-next.
|
|
3
|
+
"version": "3.14.0-next.14",
|
|
4
4
|
"description": "Internal UI components",
|
|
5
5
|
"repository": "https://github.com/gearbox-protocol/ui-kit",
|
|
6
6
|
"license": "MIT",
|
|
@@ -54,6 +54,16 @@
|
|
|
54
54
|
"types": "./dist/types/components/next/connectkit/index.d.ts",
|
|
55
55
|
"import": "./dist/esm/components/next/connectkit/index.js",
|
|
56
56
|
"default": "./dist/cjs/components/next/connectkit/index.cjs"
|
|
57
|
+
},
|
|
58
|
+
"./tx-preview": {
|
|
59
|
+
"types": "./dist/types/components/composites/tx-preview/index.d.ts",
|
|
60
|
+
"import": "./dist/esm/components/composites/tx-preview/index.js",
|
|
61
|
+
"default": "./dist/cjs/components/composites/tx-preview/index.cjs"
|
|
62
|
+
},
|
|
63
|
+
"./tx-preview/*": {
|
|
64
|
+
"types": "./dist/types/components/composites/tx-preview/*.d.ts",
|
|
65
|
+
"import": "./dist/esm/components/composites/tx-preview/*.js",
|
|
66
|
+
"default": "./dist/cjs/components/composites/tx-preview/*.cjs"
|
|
57
67
|
}
|
|
58
68
|
},
|
|
59
69
|
"files": [
|
|
@@ -153,7 +163,7 @@
|
|
|
153
163
|
"@commitlint/cli": "^20.1.0",
|
|
154
164
|
"@commitlint/config-conventional": "^20.0.0",
|
|
155
165
|
"@gearbox-protocol/biome-config": "^1.0.2",
|
|
156
|
-
"@gearbox-protocol/sdk": "14.
|
|
166
|
+
"@gearbox-protocol/sdk": "14.11.0-next.4",
|
|
157
167
|
"@rollup/plugin-typescript": "^12.3.0",
|
|
158
168
|
"@storybook/addon-a11y": "^10.0.8",
|
|
159
169
|
"@storybook/addon-docs": "^10.0.8",
|