@gearbox-protocol/ui-kit 3.14.0-next.14 → 3.14.0-next.16

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.
Files changed (134) hide show
  1. package/dist/cjs/components/composites/tx-preview/confirm/amounts/TransactionConfirmAmountField.cjs +1 -0
  2. package/dist/cjs/components/composites/tx-preview/confirm/amounts/TransactionConfirmAmountPair.cjs +1 -0
  3. package/dist/cjs/components/composites/tx-preview/confirm/amounts/constants.cjs +1 -0
  4. package/dist/cjs/components/composites/tx-preview/confirm/amounts/formatUsdAmount.cjs +1 -0
  5. package/dist/cjs/components/composites/tx-preview/confirm/amounts/index.cjs +1 -0
  6. package/dist/cjs/components/composites/tx-preview/confirm/dialog/TransactionConfirmDialogView.cjs +1 -1
  7. package/dist/cjs/components/composites/tx-preview/confirm/dialog/TransactionConfirmPageView.cjs +1 -0
  8. package/dist/cjs/components/composites/tx-preview/confirm/dialog/TransactionConfirmShell.cjs +1 -0
  9. package/dist/cjs/components/composites/tx-preview/confirm/dialog/TransactionConfirmShell.constants.cjs +1 -0
  10. package/dist/cjs/components/composites/tx-preview/confirm/dialog/computeTransactionConfirmDialogLayout.cjs +1 -0
  11. package/dist/cjs/components/composites/tx-preview/confirm/dialog/constants.cjs +1 -1
  12. package/dist/cjs/components/composites/tx-preview/confirm/dialog/index.cjs +1 -1
  13. package/dist/cjs/components/composites/tx-preview/confirm/dialog/transactionConfirmPhase.cjs +1 -0
  14. package/dist/cjs/components/composites/tx-preview/confirm/execution/TransactionConfirmExecuteButton.cjs +1 -0
  15. package/dist/cjs/components/composites/tx-preview/confirm/execution/index.cjs +1 -0
  16. package/dist/cjs/components/composites/tx-preview/confirm/index.cjs +1 -1
  17. package/dist/cjs/components/composites/tx-preview/confirm/preview/OperationPreviewContent.cjs +1 -1
  18. package/dist/cjs/components/composites/tx-preview/confirm/result/TransactionConfirmFailureResult.cjs +1 -0
  19. package/dist/cjs/components/composites/tx-preview/confirm/result/TransactionConfirmSuccessIcon.cjs +1 -0
  20. package/dist/cjs/components/composites/tx-preview/confirm/result/TransactionConfirmSuccessResult.cjs +1 -0
  21. package/dist/cjs/components/composites/tx-preview/confirm/result/TransactionConfirmTxHashRow.cjs +1 -0
  22. package/dist/cjs/components/composites/tx-preview/confirm/result/constants.cjs +1 -0
  23. package/dist/cjs/components/composites/tx-preview/confirm/result/index.cjs +1 -0
  24. package/dist/cjs/components/composites/tx-preview/confirm/stepper/TransactionProgressStepper.cjs +1 -0
  25. package/dist/cjs/components/composites/tx-preview/confirm/stepper/constants.cjs +1 -1
  26. package/dist/cjs/components/composites/tx-preview/confirm/stepper/index.cjs +1 -1
  27. package/dist/cjs/components/composites/tx-preview/confirm/stepper/transactionExecutionStepTypes.cjs +1 -0
  28. package/dist/cjs/components/composites/tx-preview/confirm/summary/PoolOperationConfirmDetails.cjs +1 -0
  29. package/dist/cjs/components/composites/tx-preview/confirm/summary/constants.cjs +1 -1
  30. package/dist/cjs/components/composites/tx-preview/confirm/summary/index.cjs +1 -1
  31. package/dist/cjs/components/composites/tx-preview/index.cjs +1 -1
  32. package/dist/cjs/components/confirm-menu/confirm-menu.cjs +1 -1
  33. package/dist/esm/components/composites/tx-preview/confirm/amounts/TransactionConfirmAmountField.js +63 -0
  34. package/dist/esm/components/composites/tx-preview/confirm/amounts/TransactionConfirmAmountPair.js +52 -0
  35. package/dist/esm/components/composites/tx-preview/confirm/amounts/constants.js +10 -0
  36. package/dist/esm/components/composites/tx-preview/confirm/amounts/formatUsdAmount.js +21 -0
  37. package/dist/esm/components/composites/tx-preview/confirm/amounts/index.js +9 -0
  38. package/dist/esm/components/composites/tx-preview/confirm/dialog/TransactionConfirmDialogView.js +34 -51
  39. package/dist/esm/components/composites/tx-preview/confirm/dialog/TransactionConfirmPageView.js +70 -0
  40. package/dist/esm/components/composites/tx-preview/confirm/dialog/TransactionConfirmShell.constants.js +6 -0
  41. package/dist/esm/components/composites/tx-preview/confirm/dialog/TransactionConfirmShell.js +79 -0
  42. package/dist/esm/components/composites/tx-preview/confirm/dialog/computeTransactionConfirmDialogLayout.js +35 -0
  43. package/dist/esm/components/composites/tx-preview/confirm/dialog/constants.js +10 -5
  44. package/dist/esm/components/composites/tx-preview/confirm/dialog/index.js +16 -7
  45. package/dist/esm/components/composites/tx-preview/confirm/dialog/transactionConfirmPhase.js +1 -0
  46. package/dist/esm/components/composites/tx-preview/confirm/execution/TransactionConfirmExecuteButton.js +30 -0
  47. package/dist/esm/components/composites/tx-preview/confirm/execution/index.js +4 -0
  48. package/dist/esm/components/composites/tx-preview/confirm/index.js +50 -24
  49. package/dist/esm/components/composites/tx-preview/confirm/preview/OperationPreviewContent.js +12 -24
  50. package/dist/esm/components/composites/tx-preview/confirm/result/TransactionConfirmFailureResult.js +55 -0
  51. package/dist/esm/components/composites/tx-preview/confirm/result/TransactionConfirmSuccessIcon.js +25 -0
  52. package/dist/esm/components/composites/tx-preview/confirm/result/TransactionConfirmSuccessResult.js +60 -0
  53. package/dist/esm/components/composites/tx-preview/confirm/result/TransactionConfirmTxHashRow.js +21 -0
  54. package/dist/esm/components/composites/tx-preview/confirm/result/constants.js +24 -0
  55. package/dist/esm/components/composites/tx-preview/confirm/result/index.js +15 -0
  56. package/dist/esm/components/composites/tx-preview/confirm/stepper/TransactionProgressStepper.js +67 -0
  57. package/dist/esm/components/composites/tx-preview/confirm/stepper/constants.js +3 -3
  58. package/dist/esm/components/composites/tx-preview/confirm/stepper/index.js +6 -9
  59. package/dist/esm/components/composites/tx-preview/confirm/stepper/transactionExecutionStepTypes.js +6 -0
  60. package/dist/esm/components/composites/tx-preview/confirm/summary/PoolOperationConfirmDetails.js +65 -0
  61. package/dist/esm/components/composites/tx-preview/confirm/summary/constants.js +3 -3
  62. package/dist/esm/components/composites/tx-preview/confirm/summary/index.js +4 -4
  63. package/dist/esm/components/composites/tx-preview/index.js +85 -70
  64. package/dist/esm/components/confirm-menu/confirm-menu.js +28 -25
  65. package/dist/globals.css +1 -1
  66. package/dist/types/components/composites/tx-preview/confirm/amounts/TransactionConfirmAmountField.d.ts +12 -0
  67. package/dist/types/components/composites/tx-preview/confirm/amounts/TransactionConfirmAmountPair.d.ts +15 -0
  68. package/dist/types/components/composites/tx-preview/confirm/amounts/constants.d.ts +6 -0
  69. package/dist/types/components/composites/tx-preview/confirm/amounts/formatUsdAmount.d.ts +1 -0
  70. package/dist/types/components/composites/tx-preview/confirm/amounts/index.d.ts +3 -0
  71. package/dist/types/components/composites/tx-preview/confirm/dialog/TransactionConfirmDialogView.d.ts +9 -4
  72. package/dist/types/components/composites/tx-preview/confirm/dialog/TransactionConfirmPageView.d.ts +23 -0
  73. package/dist/types/components/composites/tx-preview/confirm/dialog/TransactionConfirmShell.constants.d.ts +3 -0
  74. package/dist/types/components/composites/tx-preview/confirm/dialog/TransactionConfirmShell.d.ts +19 -0
  75. package/dist/types/components/composites/tx-preview/confirm/dialog/computeTransactionConfirmDialogLayout.d.ts +8 -0
  76. package/dist/types/components/composites/tx-preview/confirm/dialog/constants.d.ts +5 -2
  77. package/dist/types/components/composites/tx-preview/confirm/dialog/index.d.ts +5 -0
  78. package/dist/types/components/composites/tx-preview/confirm/dialog/transactionConfirmPhase.d.ts +4 -0
  79. package/dist/types/components/composites/tx-preview/confirm/execution/TransactionConfirmExecuteButton.d.ts +6 -0
  80. package/dist/types/components/composites/tx-preview/confirm/execution/index.d.ts +1 -0
  81. package/dist/types/components/composites/tx-preview/confirm/index.d.ts +3 -1
  82. package/dist/types/components/composites/tx-preview/confirm/preview/OperationPreviewContent.d.ts +1 -2
  83. package/dist/types/components/composites/tx-preview/confirm/result/TransactionConfirmFailureResult.d.ts +8 -0
  84. package/dist/types/components/composites/tx-preview/confirm/result/TransactionConfirmSuccessIcon.d.ts +2 -0
  85. package/dist/types/components/composites/tx-preview/confirm/result/TransactionConfirmSuccessResult.d.ts +8 -0
  86. package/dist/types/components/composites/tx-preview/confirm/result/TransactionConfirmTxHashRow.d.ts +6 -0
  87. package/dist/types/components/composites/tx-preview/confirm/result/constants.d.ts +18 -0
  88. package/dist/types/components/composites/tx-preview/confirm/result/index.d.ts +5 -0
  89. package/dist/types/components/composites/tx-preview/confirm/stepper/TransactionProgressStepper.d.ts +7 -0
  90. package/dist/types/components/composites/tx-preview/confirm/stepper/constants.d.ts +1 -1
  91. package/dist/types/components/composites/tx-preview/confirm/stepper/index.d.ts +2 -3
  92. package/dist/types/components/composites/tx-preview/confirm/stepper/transactionExecutionStepTypes.d.ts +10 -0
  93. package/dist/types/components/composites/tx-preview/confirm/summary/PoolOperationConfirmDetails.d.ts +15 -0
  94. package/dist/types/components/composites/tx-preview/confirm/summary/constants.d.ts +1 -1
  95. package/dist/types/components/composites/tx-preview/confirm/summary/index.d.ts +1 -1
  96. package/dist/types/components/composites/tx-preview/index.d.ts +0 -2
  97. package/dist/types/components/confirm-menu/confirm-menu.d.ts +4 -2
  98. package/package.json +1 -1
  99. package/dist/cjs/components/composites/tx-preview/confirm/hooks/index.cjs +0 -1
  100. package/dist/cjs/components/composites/tx-preview/confirm/hooks/useCalldataOperationPreview.cjs +0 -1
  101. package/dist/cjs/components/composites/tx-preview/confirm/stepper/HorizontalTransactionStepper.cjs +0 -1
  102. package/dist/cjs/components/composites/tx-preview/confirm/stepper/computeTransactionExecutionSteps.cjs +0 -1
  103. package/dist/cjs/components/composites/tx-preview/confirm/stepper/useCompletedStepsInSession.cjs +0 -1
  104. package/dist/cjs/components/composites/tx-preview/confirm/summary/PoolOperationConfirmSummary.cjs +0 -1
  105. package/dist/cjs/components/composites/tx-preview/hooks/useParsedTransaction.cjs +0 -1
  106. package/dist/cjs/components/composites/tx-preview/prerequisites/PrerequisiteRow.cjs +0 -1
  107. package/dist/cjs/components/composites/tx-preview/prerequisites/PrerequisitesCard.cjs +0 -1
  108. package/dist/cjs/components/composites/tx-preview/prerequisites/index.cjs +0 -1
  109. package/dist/cjs/components/composites/tx-preview/prerequisites/prerequisiteDetails.cjs +0 -1
  110. package/dist/cjs/components/composites/tx-preview/prerequisites/usePrerequisites.cjs +0 -1
  111. package/dist/esm/components/composites/tx-preview/confirm/hooks/index.js +0 -4
  112. package/dist/esm/components/composites/tx-preview/confirm/hooks/useCalldataOperationPreview.js +0 -35
  113. package/dist/esm/components/composites/tx-preview/confirm/stepper/HorizontalTransactionStepper.js +0 -136
  114. package/dist/esm/components/composites/tx-preview/confirm/stepper/computeTransactionExecutionSteps.js +0 -47
  115. package/dist/esm/components/composites/tx-preview/confirm/stepper/useCompletedStepsInSession.js +0 -39
  116. package/dist/esm/components/composites/tx-preview/confirm/summary/PoolOperationConfirmSummary.js +0 -92
  117. package/dist/esm/components/composites/tx-preview/hooks/useParsedTransaction.js +0 -45
  118. package/dist/esm/components/composites/tx-preview/prerequisites/PrerequisiteRow.js +0 -21
  119. package/dist/esm/components/composites/tx-preview/prerequisites/PrerequisitesCard.js +0 -207
  120. package/dist/esm/components/composites/tx-preview/prerequisites/index.js +0 -11
  121. package/dist/esm/components/composites/tx-preview/prerequisites/prerequisiteDetails.js +0 -58
  122. package/dist/esm/components/composites/tx-preview/prerequisites/usePrerequisites.js +0 -39
  123. package/dist/types/components/composites/tx-preview/confirm/hooks/index.d.ts +0 -1
  124. package/dist/types/components/composites/tx-preview/confirm/hooks/useCalldataOperationPreview.d.ts +0 -19
  125. package/dist/types/components/composites/tx-preview/confirm/stepper/HorizontalTransactionStepper.d.ts +0 -7
  126. package/dist/types/components/composites/tx-preview/confirm/stepper/computeTransactionExecutionSteps.d.ts +0 -28
  127. package/dist/types/components/composites/tx-preview/confirm/stepper/useCompletedStepsInSession.d.ts +0 -14
  128. package/dist/types/components/composites/tx-preview/confirm/summary/PoolOperationConfirmSummary.d.ts +0 -18
  129. package/dist/types/components/composites/tx-preview/hooks/useParsedTransaction.d.ts +0 -40
  130. package/dist/types/components/composites/tx-preview/prerequisites/PrerequisiteRow.d.ts +0 -11
  131. package/dist/types/components/composites/tx-preview/prerequisites/PrerequisitesCard.d.ts +0 -17
  132. package/dist/types/components/composites/tx-preview/prerequisites/index.d.ts +0 -4
  133. package/dist/types/components/composites/tx-preview/prerequisites/prerequisiteDetails.d.ts +0 -17
  134. package/dist/types/components/composites/tx-preview/prerequisites/usePrerequisites.d.ts +0 -25
@@ -0,0 +1,12 @@
1
+ import { default as React } from 'react';
2
+ import { TokenFullData } from '../../../../../types/common';
3
+ export interface TransactionConfirmAmountFieldProps {
4
+ readonly label: React.ReactNode;
5
+ readonly amount: string;
6
+ readonly token?: Omit<TokenFullData, "address">;
7
+ readonly usdPrice?: number;
8
+ readonly loading?: boolean;
9
+ readonly position: "primary" | "receive";
10
+ readonly size?: "sm" | "md";
11
+ }
12
+ export declare function TransactionConfirmAmountField({ label, amount, token, usdPrice, loading, position, size, }: TransactionConfirmAmountFieldProps): React.ReactElement;
@@ -0,0 +1,15 @@
1
+ import { default as React } from 'react';
2
+ import { TokenFullData } from '../../../../../types/common';
3
+ export interface TransactionConfirmAmountPairProps {
4
+ readonly primaryLabel: React.ReactNode;
5
+ readonly primaryAmount: string;
6
+ readonly primaryToken?: Omit<TokenFullData, "address">;
7
+ readonly primaryUsdPrice?: number;
8
+ readonly receiveLabel: React.ReactNode;
9
+ readonly receiveAmount: string;
10
+ readonly receiveToken?: Omit<TokenFullData, "address">;
11
+ readonly receiveUsdPrice?: number;
12
+ readonly loading?: boolean;
13
+ readonly size?: "sm" | "md";
14
+ }
15
+ export declare function TransactionConfirmAmountPair({ primaryLabel, primaryAmount, primaryToken, primaryUsdPrice, receiveLabel, receiveAmount, receiveToken, receiveUsdPrice, loading, size, }: TransactionConfirmAmountPairProps): React.ReactElement;
@@ -0,0 +1,6 @@
1
+ export declare class TransactionConfirmAmountFieldTest {
2
+ static root: string;
3
+ }
4
+ export declare class TransactionConfirmAmountPairTest {
5
+ static root: string;
6
+ }
@@ -0,0 +1 @@
1
+ export declare function formatUsdAmount(amount: string, usdPrice: number): string | null;
@@ -0,0 +1,3 @@
1
+ export * from './constants';
2
+ export * from './TransactionConfirmAmountField';
3
+ export * from './TransactionConfirmAmountPair';
@@ -1,15 +1,20 @@
1
1
  import { default as React } from 'react';
2
- import { TransactionExecutionStepView } from '../stepper';
2
+ import { TransactionExecutionStepView } from '../stepper/transactionExecutionStepTypes';
3
+ import { TransactionConfirmPhase } from './transactionConfirmPhase';
3
4
  export interface TransactionConfirmDialogViewProps {
4
5
  readonly open: boolean;
5
6
  readonly onClose: () => void;
7
+ readonly phase?: TransactionConfirmPhase;
6
8
  readonly title: React.ReactNode;
9
+ readonly titleAddon?: React.ReactNode;
7
10
  readonly preview: React.ReactNode;
8
11
  readonly previewLoading?: boolean;
9
12
  readonly previewError?: Error | null;
10
13
  readonly previewErrorTitle?: string;
11
14
  readonly execution: React.ReactNode;
12
- readonly steps: ReadonlyArray<TransactionExecutionStepView>;
13
- readonly renderStepLabel: (step: TransactionExecutionStepView) => React.ReactNode;
15
+ readonly progressSteps?: ReadonlyArray<TransactionExecutionStepView>;
16
+ readonly renderProgressStepLabel?: (step: TransactionExecutionStepView) => React.ReactNode;
17
+ readonly result?: React.ReactNode;
18
+ readonly hideTitleAddonOnResult?: boolean;
14
19
  }
15
- export declare function TransactionConfirmDialogView({ open, onClose, title, preview, previewLoading, previewError, previewErrorTitle, execution, steps, renderStepLabel, }: TransactionConfirmDialogViewProps): React.ReactElement | null;
20
+ export declare function TransactionConfirmDialogView({ open, onClose, phase, title, titleAddon, preview, previewLoading, previewError, previewErrorTitle, execution, progressSteps, renderProgressStepLabel, result, hideTitleAddonOnResult, }: TransactionConfirmDialogViewProps): React.ReactElement | null;
@@ -0,0 +1,23 @@
1
+ import { default as React } from 'react';
2
+ import { TransactionExecutionStepView } from '../stepper/transactionExecutionStepTypes';
3
+ import { TransactionConfirmPhase } from './transactionConfirmPhase';
4
+ export interface TransactionConfirmPageViewProps {
5
+ readonly phase?: TransactionConfirmPhase;
6
+ readonly onClose?: () => void;
7
+ readonly title: React.ReactNode;
8
+ readonly titleAddon?: React.ReactNode;
9
+ readonly preview: React.ReactNode;
10
+ readonly previewLoading?: boolean;
11
+ readonly previewError?: Error | null;
12
+ readonly previewErrorTitle?: string;
13
+ readonly previewClassName?: string;
14
+ readonly execution: React.ReactNode;
15
+ readonly progressSteps?: ReadonlyArray<TransactionExecutionStepView>;
16
+ readonly renderProgressStepLabel?: (step: TransactionExecutionStepView) => React.ReactNode;
17
+ readonly result?: React.ReactNode;
18
+ readonly hideTitleAddonOnResult?: boolean;
19
+ readonly containerClassName?: string;
20
+ readonly containerTestId?: string;
21
+ readonly shellTestId?: string;
22
+ }
23
+ export declare function TransactionConfirmPageView({ onClose, phase, title, titleAddon, preview, previewLoading, previewError, previewErrorTitle, previewClassName, execution, progressSteps, renderProgressStepLabel, result, hideTitleAddonOnResult, containerClassName, containerTestId, shellTestId, }: TransactionConfirmPageViewProps): React.ReactElement;
@@ -0,0 +1,3 @@
1
+ export declare class TransactionConfirmShellTest {
2
+ static root: string;
3
+ }
@@ -0,0 +1,19 @@
1
+ import { default as React } from 'react';
2
+ import { TransactionExecutionStepView } from '../stepper/transactionExecutionStepTypes';
3
+ import { TransactionConfirmPhase } from './transactionConfirmPhase';
4
+ export interface TransactionConfirmShellProps {
5
+ readonly phase?: TransactionConfirmPhase;
6
+ readonly header?: React.ReactNode;
7
+ readonly preview: React.ReactNode;
8
+ readonly previewLoading?: boolean;
9
+ readonly previewError?: Error | null;
10
+ readonly previewErrorTitle?: string;
11
+ readonly previewClassName?: string;
12
+ readonly execution: React.ReactNode;
13
+ readonly progressSteps?: ReadonlyArray<TransactionExecutionStepView>;
14
+ readonly renderProgressStepLabel?: (step: TransactionExecutionStepView) => React.ReactNode;
15
+ readonly result?: React.ReactNode;
16
+ readonly className?: string;
17
+ readonly "data-testid"?: string;
18
+ }
19
+ export declare function TransactionConfirmShell({ phase, header, preview, previewLoading, previewError, previewErrorTitle, previewClassName, execution, progressSteps, renderProgressStepLabel, result, className, "data-testid": dataTestId, }: TransactionConfirmShellProps): React.ReactElement;
@@ -0,0 +1,8 @@
1
+ import { TransactionConfirmPhase } from './transactionConfirmPhase';
2
+ export interface TransactionConfirmDialogLayout {
3
+ readonly showPreview: boolean;
4
+ readonly showExecution: boolean;
5
+ readonly showProgressStepper: boolean;
6
+ readonly showResult: boolean;
7
+ }
8
+ export declare function computeTransactionConfirmDialogLayout(phase: TransactionConfirmPhase, hasProgressSteps: boolean): TransactionConfirmDialogLayout;
@@ -1,7 +1,10 @@
1
1
  export declare class TransactionConfirmDialogTest {
2
2
  static root: string;
3
3
  static execution: string;
4
+ static progress: string;
5
+ static result: string;
4
6
  }
5
- /** Mobile-first: full width on mobile, fixed 560px from md up. */
7
+ /** Outer dialog card: mobile-first full width, fixed 560px from md up. */
6
8
  export declare const transactionConfirmDialogShellVariants: (props?: import('class-variance-authority/types').ClassProp | undefined) => string;
7
- export type TransactionConfirmAuthPhase = "agreement" | "awaiting_signature" | "blocked" | "ready";
9
+ /** Inner shell content: fill the padded dialog container without re-applying width. */
10
+ export declare const transactionConfirmShellContentVariants: (props?: import('class-variance-authority/types').ClassProp | undefined) => string;
@@ -1,3 +1,8 @@
1
+ export * from './computeTransactionConfirmDialogLayout';
1
2
  export * from './constants';
2
3
  export * from './TransactionConfirmDialogView';
4
+ export * from './TransactionConfirmPageView';
5
+ export * from './TransactionConfirmShell';
6
+ export * from './TransactionConfirmShell.constants';
7
+ export * from './transactionConfirmPhase';
3
8
  export * from './useTransactionConfirmDialog';
@@ -0,0 +1,4 @@
1
+ export type TransactionConfirmPhase = "confirm" | "awaiting_receipt" | "success" | "failure";
2
+ export interface TransactionConfirmSubmittedTx {
3
+ readonly hash: `0x${string}`;
4
+ }
@@ -0,0 +1,6 @@
1
+ import { default as React } from 'react';
2
+ import { ButtonProps } from '../../../../buttons/button/button';
3
+ export interface TransactionConfirmExecuteButtonProps extends ButtonProps {
4
+ readonly isLoading?: boolean;
5
+ }
6
+ export declare function TransactionConfirmExecuteButton({ isLoading, disabled, children, width, size, ...rest }: TransactionConfirmExecuteButtonProps): React.ReactElement;
@@ -0,0 +1 @@
1
+ export * from './TransactionConfirmExecuteButton';
@@ -1,5 +1,7 @@
1
+ export * from './amounts';
1
2
  export * from './dialog';
2
- export * from './hooks';
3
+ export * from './execution';
3
4
  export * from './preview';
5
+ export * from './result';
4
6
  export * from './stepper';
5
7
  export * from './summary';
@@ -8,6 +8,5 @@ export interface OperationPreviewContentProps {
8
8
  simulation: PoolSimulationResult | undefined;
9
9
  isSimulating: boolean;
10
10
  wallet: Address;
11
- refreshNonce: number;
12
11
  }
13
- export declare function OperationPreviewContent({ sdk, operation, simulation, isSimulating, wallet, refreshNonce, }: OperationPreviewContentProps): React.ReactElement;
12
+ export declare function OperationPreviewContent({ sdk, operation, simulation, isSimulating, wallet, }: OperationPreviewContentProps): React.ReactElement;
@@ -0,0 +1,8 @@
1
+ import { default as React } from 'react';
2
+ export interface TransactionConfirmFailureResultProps {
3
+ readonly title: React.ReactNode;
4
+ readonly description: React.ReactNode;
5
+ readonly footerAction?: React.ReactNode;
6
+ readonly iconSize?: number;
7
+ }
8
+ export declare function TransactionConfirmFailureResult({ title, description, footerAction, iconSize, }: TransactionConfirmFailureResultProps): React.ReactElement;
@@ -0,0 +1,2 @@
1
+ import { default as React } from 'react';
2
+ export declare function TransactionConfirmSuccessIcon(): React.ReactElement;
@@ -0,0 +1,8 @@
1
+ import { default as React } from 'react';
2
+ export interface TransactionConfirmSuccessResultProps {
3
+ readonly headline: React.ReactNode;
4
+ readonly subtitle: React.ReactNode;
5
+ readonly txHashRow?: React.ReactNode;
6
+ readonly footerAction?: React.ReactNode;
7
+ }
8
+ export declare function TransactionConfirmSuccessResult({ headline, subtitle, txHashRow, footerAction, }: TransactionConfirmSuccessResultProps): React.ReactElement;
@@ -0,0 +1,6 @@
1
+ import { default as React } from 'react';
2
+ export interface TransactionConfirmTxHashRowProps {
3
+ readonly txHashLink: React.ReactNode;
4
+ readonly addToWalletLink?: React.ReactNode;
5
+ }
6
+ export declare function TransactionConfirmTxHashRow({ txHashLink, addToWalletLink, }: TransactionConfirmTxHashRowProps): React.ReactElement;
@@ -0,0 +1,18 @@
1
+ export declare class TransactionConfirmSuccessResultTest {
2
+ static root: string;
3
+ static headline: string;
4
+ static subtitle: string;
5
+ static footer: string;
6
+ }
7
+ export declare class TransactionConfirmFailureResultTest {
8
+ static root: string;
9
+ static footer: string;
10
+ }
11
+ export declare class TransactionConfirmTxHashRowTest {
12
+ static root: string;
13
+ static txHashLink: string;
14
+ static addToWallet: string;
15
+ }
16
+ export declare class TransactionConfirmExecuteButtonTest {
17
+ static root: string;
18
+ }
@@ -0,0 +1,5 @@
1
+ export * from './constants';
2
+ export * from './TransactionConfirmFailureResult';
3
+ export * from './TransactionConfirmSuccessIcon';
4
+ export * from './TransactionConfirmSuccessResult';
5
+ export * from './TransactionConfirmTxHashRow';
@@ -0,0 +1,7 @@
1
+ import { default as React } from 'react';
2
+ import { TransactionExecutionStepView } from './transactionExecutionStepTypes';
3
+ export interface TransactionProgressStepperProps {
4
+ readonly steps: ReadonlyArray<TransactionExecutionStepView>;
5
+ readonly renderLabel: (step: TransactionExecutionStepView) => React.ReactNode;
6
+ }
7
+ export declare function TransactionProgressStepper({ steps, renderLabel, }: TransactionProgressStepperProps): React.ReactElement;
@@ -1,3 +1,3 @@
1
- export declare class TransactionStepperTest {
1
+ export declare class TransactionProgressStepperTest {
2
2
  static root: string;
3
3
  }
@@ -1,4 +1,3 @@
1
- export * from './computeTransactionExecutionSteps';
2
1
  export * from './constants';
3
- export * from './HorizontalTransactionStepper';
4
- export * from './useCompletedStepsInSession';
2
+ export * from './TransactionProgressStepper';
3
+ export * from './transactionExecutionStepTypes';
@@ -0,0 +1,10 @@
1
+ export type TransactionExecutionStepId = "approve" | "auth" | "execute";
2
+ export type TransactionExecutionPrerequisiteStepId = Exclude<TransactionExecutionStepId, "execute">;
3
+ export type StepStatus = "completed" | "active" | "upcoming";
4
+ export type TransactionExecutionStepLabelKey = "approve" | "approveBatch" | "auth" | "execute";
5
+ export interface TransactionExecutionStepView {
6
+ id: TransactionExecutionStepId;
7
+ labelKey: TransactionExecutionStepLabelKey;
8
+ status: StepStatus;
9
+ }
10
+ export declare function shouldShowTransactionProgressStepper(steps: ReadonlyArray<Pick<TransactionExecutionStepView, "id">>): boolean;
@@ -0,0 +1,15 @@
1
+ import { default as React } from 'react';
2
+ export interface PoolOperationConfirmDetailsProps {
3
+ readonly apyLabel?: React.ReactNode;
4
+ readonly apy?: React.ReactNode;
5
+ readonly apyLoading?: boolean;
6
+ readonly poolTvlLabel: React.ReactNode;
7
+ readonly poolTvl: React.ReactNode;
8
+ readonly poolUtilizationLabel: React.ReactNode;
9
+ readonly poolUtilization: React.ReactNode;
10
+ readonly curatorLabel: React.ReactNode;
11
+ readonly curatorValue: React.ReactNode;
12
+ readonly poolLabel: React.ReactNode;
13
+ readonly poolContractValue: React.ReactNode;
14
+ }
15
+ export declare function PoolOperationConfirmDetails({ apyLabel, apy, apyLoading, poolTvlLabel, poolTvl, poolUtilizationLabel, poolUtilization, curatorLabel, curatorValue, poolLabel, poolContractValue, }: PoolOperationConfirmDetailsProps): React.ReactElement;
@@ -1,3 +1,3 @@
1
- export declare class PoolOperationConfirmSummaryTest {
1
+ export declare class PoolOperationConfirmDetailsTest {
2
2
  static root: string;
3
3
  }
@@ -1,2 +1,2 @@
1
1
  export * from './constants';
2
- export * from './PoolOperationConfirmSummary';
2
+ export * from './PoolOperationConfirmDetails';
@@ -11,9 +11,7 @@
11
11
  */
12
12
  export * from './components';
13
13
  export * from './confirm';
14
- export * from './hooks/useParsedTransaction';
15
14
  export * from './operations';
16
- export * from './prerequisites';
17
15
  export * from './state-change';
18
16
  export * from './types';
19
17
  export * from './utils';
@@ -2,8 +2,10 @@ import * as React from "react";
2
2
  export interface ConfirmMenuProps {
3
3
  /** Title text or element shown in the header */
4
4
  title: React.ReactNode;
5
- /** Callback when the close button is clicked */
6
- onClose: () => void;
5
+ /** Optional badge or addon rendered after the title (e.g. LP pill). */
6
+ titleAddon?: React.ReactNode;
7
+ /** Callback when the close button is clicked. Omit to hide the close control. */
8
+ onClose?: () => void;
7
9
  /** Additional CSS class applied to the root element */
8
10
  className?: string;
9
11
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gearbox-protocol/ui-kit",
3
- "version": "3.14.0-next.14",
3
+ "version": "3.14.0-next.16",
4
4
  "description": "Internal UI components",
5
5
  "repository": "https://github.com/gearbox-protocol/ui-kit",
6
6
  "license": "MIT",
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./useCalldataOperationPreview.cjs");exports.useCalldataOperationPreview=e.useCalldataOperationPreview;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const v=require("../../hooks/useParsedTransaction.cjs"),P={chainId:0,tokensMeta:{get:()=>{}},plugins:{adapters:void 0},client:void 0},r="0x0000000000000000000000000000000000000000",p="0x";function m({enabled:d,sdk:i,to:o,calldata:t,wallet:n,refreshNonce:c}){const e=d&&!!i&&!!o&&!!t&&!!n,{data:a,error:u,simulation:l,isSimulating:s}=v.useParsedTransaction({enabled:e,sdk:i??P,to:o??r,calldata:t??p,sender:n??r,refreshNonce:c});return{operation:e?a:void 0,simulation:e?l:void 0,isSimulating:e?s:!1,parseError:e?u:null,isReady:e&&!!a&&!s}}exports.useCalldataOperationPreview=m;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime");require("react");require("@gearbox-protocol/sdk");const s=require("../../../../../utils/cn.cjs");require("sonner");require("@gearbox-protocol/sdk/common-utils");require("luxon");require("../../../../../utils/z-index.cjs");const x=require("./constants.cjs"),a=12,g=24,m=a+g;function f({status:t,stepNumber:i}){const r=t==="active";return t==="completed"?e.jsx("div",{className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-gray-40","aria-hidden":!0,children:e.jsxs("svg",{width:"12",height:"10",viewBox:"0 0 12 10",fill:"none",className:"text-gray-110",role:"img","aria-hidden":!0,children:[e.jsx("title",{children:"Completed step"}),e.jsx("path",{d:"M1 5L4.5 8.5L11 1.5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}):e.jsx("div",{className:s.cn("flex h-6 w-6 shrink-0 items-center justify-center rounded-full text-xs font-bold",r?"bg-white text-gray-10":"bg-gray-40 text-gray-110"),"aria-hidden":!0,children:i})}function y({active:t}){return e.jsx("span",{className:s.cn("pointer-events-none absolute top-0 z-10 block h-full",t?"bg-gray-40":"bg-gray-10"),style:{right:-a,width:a,clipPath:"polygon(0 0, 100% 50%, 0 100%)"},"aria-hidden":!0})}function j({step:t,stepNumber:i,index:r,total:n,label:p}){const{status:u}=t,l=r===0,d=r===n-1,c=n===1,o=u==="active",h=l?g:m;return e.jsx("li",{className:s.cn("relative min-w-0 flex-1 list-none",!l&&"-ml-3"),style:{zIndex:n-r},"aria-current":o?"step":void 0,children:e.jsxs("div",{className:s.cn("relative flex min-h-12 w-full items-center gap-2 py-2.5 text-xs",o?"bg-gray-40 text-foreground":"bg-gray-10 text-gray-110",c&&"rounded-lg pr-6",!c&&l&&"rounded-l-lg pr-2",!c&&d&&"rounded-r-lg pr-6"),style:{paddingLeft:h},children:[e.jsx(f,{status:u,stepNumber:i}),e.jsx("span",{className:s.cn("min-w-0 truncate",o&&"font-bold"),children:p}),d?null:e.jsx(y,{active:o})]})})}function v({steps:t,renderLabel:i}){return e.jsx("ol",{className:"flex w-full list-none p-0 m-0","data-testid":x.TransactionStepperTest.root,children:t.map((r,n)=>e.jsx(j,{step:r,stepNumber:n+1,index:n,total:t.length,label:i(r)},r.id))})}exports.HorizontalTransactionStepper=v;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function a(e){return{approve:!e.allowWalletBatching&&(e.needsApproval||e.isApprovalPending),auth:!e.isAuthReady}}function p(e){return!e.allowWalletBatching&&(e.isApprovalPending||e.needsApproval)}function c(e,t){return a(t)[e]}function u(e,t){return t.completedStepsInSession?.includes(e)??!1}function i(e,t){return c(e,t)||u(e,t)}function f(e){const t=[];return i("approve",e)&&t.push("approve"),i("auth",e)&&t.push("auth"),t.push("execute"),t}function v(e,t){return e.isCorrectChain?p(e)?"approve":c("auth",e)?"auth":"execute":t[0]??"execute"}function d(e,t,n,o){const r=o.indexOf(n);return o.indexOf(e)<r?!0:e==="execute"?!1:!!(u(e,t)&&!c(e,t))}function S(e,t){return e==="approve"&&t.allowWalletBatching?"approveBatch":e==="auth"?"auth":e}function h(e){const t=f(e),n=v(e,t);return{steps:t.map(r=>{const l=d(r,e,n,t)?"completed":r===n?"active":"upcoming";return{id:r,labelKey:S(r,e),status:l}}),activeStepId:n}}exports.computeTransactionExecutionSteps=h;exports.getTransactionExecutionStepRequirements=a;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react"),f=require("./computeTransactionExecutionSteps.cjs");function m({sessionActive:n,needsApproval:a,isApprovalPending:i=!1,allowWalletBatching:c,isAuthReady:S}){const[o,p]=s.useState([]),[d,u]=s.useState([]),e=f.getTransactionExecutionStepRequirements({needsApproval:a,isApprovalPending:i,allowWalletBatching:c,isAuthReady:S});return s.useEffect(()=>{if(!n){p([]),u([]);return}p(r=>{const t=new Set(r);return e.approve&&t.add("approve"),e.auth&&t.add("auth"),[...t]})},[n,e.approve,e.auth]),s.useEffect(()=>{n&&u(r=>{const t=new Set(r);return o.includes("approve")&&!e.approve&&t.add("approve"),o.includes("auth")&&!e.auth&&t.add("auth"),[...t]})},[n,o,e.approve,e.auth]),d}exports.useCompletedStepsInSession=m;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),h=require("@gearbox-protocol/sdk"),v=require("../../../../fadeout-loading/fadeout-loading.cjs"),y=require("../../../../tip-card/tip-card.cjs"),t=require("../../../../vertical-indicator/vertical-indicator.cjs"),C=require("../../../../vertical-list/vertical-list.cjs"),b=require("../../../../with-copy/with-copy.cjs"),f=require("./constants.cjs");function n({amount:o,symbol:i}){return e.jsxs("span",{children:[o," ",i]})}function q({primaryLabel:o,primaryAmount:i,primaryTokenSymbol:a,receiveLabel:l,receiveAmount:c,receiveTokenSymbol:m,apyLabel:u,apy:r,apyLoading:d=!1,curatorLabel:p,curatorName:x,poolLabel:j,poolAddress:s}){const _=h.shortAddress(s);return e.jsx(y.TipCard,{textColor:"light","data-testid":f.PoolOperationConfirmSummaryTest.root,children:e.jsxs(C.VerticalList,{children:[e.jsx(t.VerticalIndicator,{size:"sm",label:o,value:e.jsx(n,{amount:i,symbol:a})}),e.jsx(t.VerticalIndicator,{size:"sm",label:l,value:e.jsx(n,{amount:c,symbol:m})}),r!==void 0?e.jsx(t.VerticalIndicator,{size:"sm",label:u,value:e.jsx(v.FadeoutLoading,{loading:d,children:r})}):null,e.jsx(t.VerticalIndicator,{size:"sm",label:p,value:x}),e.jsx(t.VerticalIndicator,{size:"sm",label:j,value:e.jsx(b.WithCopy,{toCopy:s,children:e.jsx("span",{children:_})})})]})})}exports.PoolOperationConfirmSummary=q;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("@gearbox-protocol/sdk/preview"),m=require("@tanstack/react-query"),v=require("react");function O(y){const{sdk:n,to:e,calldata:t,sender:o,refreshNonce:c,enabled:s=!0}=y,{parsed:a,error:f}=v.useMemo(()=>{if(!s)return{parsed:void 0,error:null};try{return{parsed:l.parseOperationCalldata({sdk:n,to:e,calldata:t,sender:o}),error:null}}catch(u){return{parsed:void 0,error:u instanceof Error?u:new Error(String(u))}}},[s,n,e,t,o,c]),r=s&&a&&l.isPoolOperation(a)?a:void 0,d=m.useQuery({queryKey:["pool-simulation",e,t,o,c],enabled:s&&r!==void 0,queryFn:()=>l.simulatePoolOperation({sdk:n,operation:r,to:e,calldata:t,wallet:o}),staleTime:Number.POSITIVE_INFINITY,retry:!1}),i=d.data;let p=a;return r&&i?.status==="success"&&(p={...r,transfers:i.transfers}),{data:p,error:f,simulation:i,isSimulating:r!==void 0&&d.isLoading}}exports.useParsedTransaction=O;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),s=require("@fortawesome/free-solid-svg-icons"),r=require("../../../icons/fa-icon.cjs"),n=require("../../../vertical-indicator/vertical-indicator.cjs"),a=require("./prerequisiteDetails.cjs");function o({result:i,sdk:t}){const c=i.error?e.jsx(r.FaIcon,{icon:s.faTriangleExclamation,className:"size-4 text-warning"}):i.satisfied?e.jsx(r.FaIcon,{icon:s.faCircleCheck,className:"size-4 text-success"}):e.jsx(r.FaIcon,{icon:s.faXmark,className:"size-4 text-destructive"});return e.jsx(n.VerticalIndicator,{label:e.jsxs("span",{className:"flex items-center gap-2",children:[c,e.jsx("span",{children:i.title})]}),value:i.error?e.jsx("span",{className:"text-destructive text-sm",children:i.error.reason}):a.renderPrerequisiteDetail(i,t)})}exports.PrerequisiteRow=o;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),u=require("../../../cards/card/card.cjs"),d=require("../../../error-message/error-line-message.cjs");require("react-intl");require("../../../buttons/button/button.cjs");require("../../../dialog/dialog-container.cjs");require("react");require("@gearbox-protocol/sdk");require("clsx");require("tailwind-merge");require("sonner");require("@gearbox-protocol/sdk/common-utils");require("luxon");require("../../../../utils/z-index.cjs");const p=require("../../../skeleton/skeleton-stack.cjs");require("../components/AddressAvatar.cjs");require("@gearbox-protocol/static");require("@fortawesome/free-solid-svg-icons");require("../../../icons/fa-icon.cjs");require("../../../accordion/accordion.cjs");require("../../../alert-badge/alert-badge.cjs");require("../../../alert-dialog/alert-dialog.cjs");require("../../../alert-modal/alert-modal.cjs");require("../../../tooltip/simple-tooltip.cjs");require("../../../tooltip/tooltip.cjs");require("../../../arc-loader/arc-loader.cjs");require("../../../asset-line/asset-line.cjs");require("../../../buttons/back-button/back-button.cjs");require("../../../buttons/copy-button/copy-button.cjs");require("../../../buttons/external-button/external-button.cjs");require("../../../buttons/filter-button/filter-button.cjs");require("../../../buttons/navigation-button/navigation-button.cjs");require("../../../buttons/tab-button/tab-button.cjs");require("../../../token-icon/token-icon.cjs");require("wagmi");require("../../../auth/wallet-ui-context.cjs");require("../../../avatar/avatar.cjs");require("../../../badge/badge.cjs");require("../../../base-link/base-link.cjs");require("../../../navigation-context/navigation-context.cjs");require("../../../button-checkbox/button-checkbox.cjs");require("../../../card-grid/card-grid.cjs");require("../../../carousel/carousel.cjs");require("../../../checkbox/checkbox.cjs");require("../../../checkbox/checkbox-labeled.cjs");require("../../../checkbox-item/checkbox-item.cjs");require("../../../client-adapters/styled-button/styled-button.cjs");require("../../../client-adapters/styled-dialog-container/styled-dialog-container.cjs");require("../../../client-adapters/styled-rounded-image/styled-rounded-image.cjs");require("../../../colored-text/colored-text.cjs");require("../../../input/input.cjs");require("../../../with-title/with-title.cjs");require("../../../smart-number-input/balance-indicator.cjs");require("../../../smart-number-input/smart-number-input.cjs");require("../../../table/grid-table.cjs");require("../../../token-symbol/token-symbol.cjs");require("../../../typography/typography.cjs");require("../../../help-tip/help-tip.cjs");require("../../../description/description.cjs");require("../../../confirm-menu/confirm-menu.cjs");require("../../../dialog/dialog-modal-container.cjs");require("../../../text-button/text-button.cjs");require("../../../vertical-indicator/vertical-indicator.cjs");require("../../../points-icon/points-icon.cjs");require("../../../skeleton/skeleton.cjs");require("../../../vertical-list/vertical-list.cjs");require("../../../rounded-image/rounded-image.cjs");require("../../../progress/progress.cjs");require("../../../pool-indicator-icon/pool-indicator-icon.cjs");require("../../strategies-table/components/feature/feature.styles.cjs");require("viem");require("../../../icon-button/icon-button.cjs");require("../../../separate-line/separate-line.cjs");require("../../../tip-card/tip-card.cjs");require("../../strategies-table/components/rewards-tooltip/rewards-tooltip-root.cjs");require("../../../currency-button/currency-button.cjs");require("../../../detailed-apy/detailed-apy.cjs");require("../../../detailed-page-title/detailed-page-title.cjs");require("../../../detailed-page-title/detailed-page-title-copy-button.cjs");require("../../../detailed-page-title/detailed-page-title-explorer-dropdown.cjs");require("../../../modal/modal.cjs");require("@radix-ui/react-dialog");require("../../../dialog/dialog-content.cjs");require("../../../dialog/dialog-description.cjs");require("../../../dialog/dialog-footer.cjs");require("../../../dialog/dialog-header.cjs");require("../../../dialog/dialog-title.cjs");require("../../../dialog/dialog-overlay.cjs");require("../../../label/label.cjs");require("../../../dropdown-menu/dropdown-menu.cjs");require("../../../dropdown-menu/dropdown-menu-checkbox-item.cjs");require("../../../dropdown-menu/dropdown-menu-content.cjs");require("../../../dropdown-menu/dropdown-menu-item.cjs");require("../../../dropdown-menu/dropdown-menu-label.cjs");require("../../../dropdown-menu/dropdown-menu-radio-item.cjs");require("../../../dropdown-menu/dropdown-menu-separator.cjs");require("../../../dropdown-menu/dropdown-menu-shortcut.cjs");require("../../../dropdown-menu/dropdown-menu-sub-content.cjs");require("../../../dropdown-menu/dropdown-menu-sub-trigger.cjs");require("../../../edit-input/edit-input.cjs");require("../../../fadeout-loading/fadeout-loading.cjs");require("../../../filter/filter-block.cjs");require("../../../filter/filter-checkbox-item.cjs");require("../../../filter/filter-chip.cjs");require("../../../filter/filter-chips.cjs");require("../../../filter/filter-dropdown-item.cjs");require("../../../filter/filter-group.cjs");require("../../../filter/filter-label.cjs");require("../../../search-line/search-line.cjs");require("../../../tabs/tabs.cjs");require("../../../filter/filter-modal-item.cjs");require("../../../filter/filter-radio-item.cjs");require("../../../filter/filter-separator.cjs");require("../../../filter/variants.cjs");require("../../../graph/formatters.cjs");require("lightweight-charts");require("../../../graph/graph-view.cjs");require("../../../health-factor/health-factor.cjs");require("../../../horizontal-indicator/horizontal-indicator.cjs");require("../../../layout/col/col.cjs");require("../../../layout/container/container.cjs");require("../../../layout/footer/footer.cjs");require("../../../layout/grid/grid.cjs");require("../../../layout/header/header.cjs");require("../../../layout/layout/layout.cjs");require("../../../layout/main-aside-layout/main-aside-layout.cjs");require("../../../page-title/page-title.cjs");require("../../../layout/social-icons/social-icons.cjs");require("../../../legal-agreement/legal-agreement-theme.cjs");require("../../../link/link.cjs");require("../../../../utils/reactochart-compat.cjs");require("../../../status-elements/status-elements.cjs");require("../../../loader/loader.cjs");require("../../../loading/loading.cjs");require("../../../loading-bar/loading-bar.cjs");require("react-markdown");require("remark-gfm");require("../../../navbar/navbar.cjs");require("../../../navbar/navbar-indicator-context.cjs");require("../../../app-bar/app-bar.cjs");require("../../../navitem/navitem.cjs");require("../../../simple-dropdown/simple-dropdown.cjs");require("../../../progress-bar/progress-bar.cjs");require("../../../radio-group/radio-group.cjs");require("../../../search-bar/search-bar.cjs");require("../../../segmented-control/segmented-control.cjs");require("../../../select/select.cjs");require("../../../separator/separator.cjs");require("../../../simple-accordion/simple-accordion.cjs");require("../../../simple-dropdown/simple-dropdown-menu-item.cjs");require("../../../slider/slider.cjs");require("../../../slider/slider-context.cjs");require("@radix-ui/react-slider");require("../../../spinner/spinner.cjs");require("../../../spinner-loader/spinner-loader.cjs");require("../../../split-list/split-list.cjs");require("../../../stat-badge/stat-badge.cjs");require("../../../status-dot/status-dot.cjs");require("../../../stepper/stepper.cjs");require("../../../switch/switch.cjs");require("../../../table/table.cjs");require("../../../table/grid-table-loader.cjs");require("../../../textarea/textarea.cjs");require("../../../theme-provider.cjs");require("../../../time-to-liquidation/time-to-liquidation.cjs");require("../../../toggle/toggle.cjs");require("../../../with-filter-button/with-filter-button.cjs");const _=require("../components/CollapsibleCard.cjs"),m=require("./PrerequisiteRow.cjs"),x=require("./usePrerequisites.cjs");function P({sdk:q,operation:t,wallet:n,blockNumber:o,refreshNonce:c}){const{data:i,isLoading:a,error:s}=x.usePrerequisites({sdk:q,operation:t,wallet:n,blockNumber:o,refreshNonce:c});if(a)return e.jsxs(u.Card,{children:[e.jsx(u.CardHeader,{children:e.jsx(u.CardTitle,{children:"Prerequisites"})}),e.jsx(u.CardContent,{children:e.jsx(p.SkeletonStack,{lines:3})})]});if(s)return e.jsx(d.ErrorLineMessage,{err:s,title:"Failed to verify prerequisites"});if(!i||i.length===0)return null;const l=i.every(r=>!r.error&&r.satisfied);return e.jsx(_.CollapsibleCard,{value:"prerequisites",title:"Prerequisites",defaultOpen:!l,children:i.map(r=>e.jsx(m.PrerequisiteRow,{result:r,sdk:q},r.id))})}exports.PrerequisitesCard=P;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./PrerequisiteRow.cjs"),i=require("./PrerequisitesCard.cjs"),e=require("./prerequisiteDetails.cjs"),s=require("./usePrerequisites.cjs");exports.PrerequisiteRow=r.PrerequisiteRow;exports.PrerequisitesCard=i.PrerequisitesCard;exports.prerequisiteDetailRenderers=e.prerequisiteDetailRenderers;exports.renderPrerequisiteDetail=e.renderPrerequisiteDetail;exports.usePrerequisites=s.usePrerequisites;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),u=require("viem"),d=require("../../../token-icon/token-icon.cjs"),p=require("../../../token-template/token-template.cjs"),i=require("../utils/poolTokenInfo.cjs");function l({token:e,required:n,actual:r,actualLabel:c="Available"}){const m={symbol:e.symbol,title:e.symbol,decimals:e.decimals},t=o=>o===u.maxUint256?s.jsxs("span",{className:"flex items-center gap-1",title:"Unlimited",children:[s.jsx("span",{"aria-hidden":!0,children:"∞"}),s.jsx("span",{children:e.symbol})]}):s.jsx(p.TokenTemplate,{value:o,token:m,showSymbol:!0});return s.jsxs("span",{className:"flex flex-col items-end gap-0.5 text-sm",children:[s.jsxs("span",{className:"flex items-center gap-1",children:[s.jsx("span",{className:"text-muted-foreground",children:"Required"}),s.jsx(d.TokenIcon,{symbol:e.symbol,size:14}),t(n)]}),r!==void 0?s.jsxs("span",{className:"flex items-center gap-1",children:[s.jsx("span",{className:"text-muted-foreground",children:c}),t(r)]}):null]})}const a={allowance:(e,n)=>s.jsx(l,{token:i.resolveToken(n,e.token),required:e.required,actual:e.actual,actualLabel:"Approved"}),balance:(e,n)=>s.jsx(l,{token:i.resolveToken(n,e.token),required:e.required,actual:e.actual})};function x(e,n){const r=a[e.kind];return r(e.detail,n)}exports.prerequisiteDetailRenderers=a;exports.renderPrerequisiteDetail=x;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("@gearbox-protocol/sdk"),i=require("@gearbox-protocol/sdk/preview"),o=require("@tanstack/react-query");function q({sdk:u,operation:e,wallet:r,blockNumber:s,refreshNonce:n}){return o.useQuery({queryKey:["prerequisites",c.json_stringify(e),r,s?.toString(),n],queryFn:()=>{const t={sdk:u,wallet:r,blockNumber:s};return i.verifyPrerequisites(i.buildPrerequisites(e,t),t)},staleTime:1e4,refetchOnWindowFocus:!0,refetchInterval:3e4,retry:!1})}exports.usePrerequisites=q;
@@ -1,4 +0,0 @@
1
- import { useCalldataOperationPreview as r } from "./useCalldataOperationPreview.js";
2
- export {
3
- r as useCalldataOperationPreview
4
- };
@@ -1,35 +0,0 @@
1
- import { useParsedTransaction as p } from "../../hooks/useParsedTransaction.js";
2
- const v = {
3
- chainId: 0,
4
- tokensMeta: { get: () => {
5
- } },
6
- plugins: { adapters: void 0 },
7
- client: void 0
8
- }, s = "0x0000000000000000000000000000000000000000", m = "0x";
9
- function E({
10
- enabled: d,
11
- sdk: n,
12
- to: e,
13
- calldata: o,
14
- wallet: a,
15
- refreshNonce: c
16
- }) {
17
- const i = d && !!n && !!e && !!o && !!a, { data: t, error: l, simulation: u, isSimulating: r } = p({
18
- enabled: i,
19
- sdk: n ?? v,
20
- to: e ?? s,
21
- calldata: o ?? m,
22
- sender: a ?? s,
23
- refreshNonce: c
24
- });
25
- return {
26
- operation: i ? t : void 0,
27
- simulation: i ? u : void 0,
28
- isSimulating: i ? r : !1,
29
- parseError: i ? l : null,
30
- isReady: i && !!t && !r
31
- };
32
- }
33
- export {
34
- E as useCalldataOperationPreview
35
- };
@@ -1,136 +0,0 @@
1
- import { jsx as e, jsxs as p } from "react/jsx-runtime";
2
- import "react";
3
- import "@gearbox-protocol/sdk";
4
- import { cn as o } from "../../../../../utils/cn.js";
5
- import "sonner";
6
- import "@gearbox-protocol/sdk/common-utils";
7
- import "luxon";
8
- import "../../../../../utils/z-index.js";
9
- import { TransactionStepperTest as f } from "./constants.js";
10
- const c = 12, u = 24, y = c + u;
11
- function x({
12
- status: t,
13
- stepNumber: i
14
- }) {
15
- const r = t === "active";
16
- return t === "completed" ? /* @__PURE__ */ e(
17
- "div",
18
- {
19
- className: "flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-gray-40",
20
- "aria-hidden": !0,
21
- children: /* @__PURE__ */ p(
22
- "svg",
23
- {
24
- width: "12",
25
- height: "10",
26
- viewBox: "0 0 12 10",
27
- fill: "none",
28
- className: "text-gray-110",
29
- role: "img",
30
- "aria-hidden": !0,
31
- children: [
32
- /* @__PURE__ */ e("title", { children: "Completed step" }),
33
- /* @__PURE__ */ e(
34
- "path",
35
- {
36
- d: "M1 5L4.5 8.5L11 1.5",
37
- stroke: "currentColor",
38
- strokeWidth: "2",
39
- strokeLinecap: "round",
40
- strokeLinejoin: "round"
41
- }
42
- )
43
- ]
44
- }
45
- )
46
- }
47
- ) : /* @__PURE__ */ e(
48
- "div",
49
- {
50
- className: o(
51
- "flex h-6 w-6 shrink-0 items-center justify-center rounded-full text-xs font-bold",
52
- r ? "bg-white text-gray-10" : "bg-gray-40 text-gray-110"
53
- ),
54
- "aria-hidden": !0,
55
- children: i
56
- }
57
- );
58
- }
59
- function v({ active: t }) {
60
- return /* @__PURE__ */ e(
61
- "span",
62
- {
63
- className: o(
64
- "pointer-events-none absolute top-0 z-10 block h-full",
65
- t ? "bg-gray-40" : "bg-gray-10"
66
- ),
67
- style: {
68
- right: -c,
69
- width: c,
70
- clipPath: "polygon(0 0, 100% 50%, 0 100%)"
71
- },
72
- "aria-hidden": !0
73
- }
74
- );
75
- }
76
- function N({
77
- step: t,
78
- stepNumber: i,
79
- index: r,
80
- total: n,
81
- label: g
82
- }) {
83
- const { status: d } = t, s = r === 0, m = r === n - 1, a = n === 1, l = d === "active", h = s ? u : y;
84
- return /* @__PURE__ */ e(
85
- "li",
86
- {
87
- className: o("relative min-w-0 flex-1 list-none", !s && "-ml-3"),
88
- style: { zIndex: n - r },
89
- "aria-current": l ? "step" : void 0,
90
- children: /* @__PURE__ */ p(
91
- "div",
92
- {
93
- className: o(
94
- "relative flex min-h-12 w-full items-center gap-2 py-2.5 text-xs",
95
- l ? "bg-gray-40 text-foreground" : "bg-gray-10 text-gray-110",
96
- a && "rounded-lg pr-6",
97
- !a && s && "rounded-l-lg pr-2",
98
- !a && m && "rounded-r-lg pr-6"
99
- ),
100
- style: { paddingLeft: h },
101
- children: [
102
- /* @__PURE__ */ e(x, { status: d, stepNumber: i }),
103
- /* @__PURE__ */ e("span", { className: o("min-w-0 truncate", l && "font-bold"), children: g }),
104
- m ? null : /* @__PURE__ */ e(v, { active: l })
105
- ]
106
- }
107
- )
108
- }
109
- );
110
- }
111
- function _({
112
- steps: t,
113
- renderLabel: i
114
- }) {
115
- return /* @__PURE__ */ e(
116
- "ol",
117
- {
118
- className: "flex w-full list-none p-0 m-0",
119
- "data-testid": f.root,
120
- children: t.map((r, n) => /* @__PURE__ */ e(
121
- N,
122
- {
123
- step: r,
124
- stepNumber: n + 1,
125
- index: n,
126
- total: t.length,
127
- label: i(r)
128
- },
129
- r.id
130
- ))
131
- }
132
- );
133
- }
134
- export {
135
- _ as HorizontalTransactionStepper
136
- };