@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
@@ -1,47 +0,0 @@
1
- function l(e) {
2
- return {
3
- approve: !e.allowWalletBatching && (e.needsApproval || e.isApprovalPending),
4
- auth: !e.isAuthReady
5
- };
6
- }
7
- function p(e) {
8
- return !e.allowWalletBatching && (e.isApprovalPending || e.needsApproval);
9
- }
10
- function c(e, t) {
11
- return l(t)[e];
12
- }
13
- function i(e, t) {
14
- return t.completedStepsInSession?.includes(e) ?? !1;
15
- }
16
- function a(e, t) {
17
- return c(e, t) || i(e, t);
18
- }
19
- function f(e) {
20
- const t = [];
21
- return a("approve", e) && t.push("approve"), a("auth", e) && t.push("auth"), t.push("execute"), t;
22
- }
23
- function v(e, t) {
24
- return e.isCorrectChain ? p(e) ? "approve" : c("auth", e) ? "auth" : "execute" : t[0] ?? "execute";
25
- }
26
- function d(e, t, r, o) {
27
- const n = o.indexOf(r);
28
- return o.indexOf(e) < n ? !0 : e === "execute" ? !1 : !!(i(e, t) && !c(e, t));
29
- }
30
- function h(e, t) {
31
- return e === "approve" && t.allowWalletBatching ? "approveBatch" : e === "auth" ? "auth" : e;
32
- }
33
- function S(e) {
34
- const t = f(e), r = v(e, t);
35
- return { steps: t.map((n) => {
36
- const s = d(n, e, r, t) ? "completed" : n === r ? "active" : "upcoming";
37
- return {
38
- id: n,
39
- labelKey: h(n, e),
40
- status: s
41
- };
42
- }), activeStepId: r };
43
- }
44
- export {
45
- S as computeTransactionExecutionSteps,
46
- l as getTransactionExecutionStepRequirements
47
- };
@@ -1,39 +0,0 @@
1
- import { useState as a, useEffect as u } from "react";
2
- import { getTransactionExecutionStepRequirements as m } from "./computeTransactionExecutionSteps.js";
3
- function I({
4
- sessionActive: n,
5
- needsApproval: S,
6
- isApprovalPending: i = !1,
7
- allowWalletBatching: d,
8
- isAuthReady: f
9
- }) {
10
- const [p, o] = a([]), [c, s] = a([]), e = m({
11
- needsApproval: S,
12
- isApprovalPending: i,
13
- allowWalletBatching: d,
14
- isAuthReady: f
15
- });
16
- return u(() => {
17
- if (!n) {
18
- o([]), s([]);
19
- return;
20
- }
21
- o((r) => {
22
- const t = new Set(r);
23
- return e.approve && t.add("approve"), e.auth && t.add("auth"), [...t];
24
- });
25
- }, [n, e.approve, e.auth]), u(() => {
26
- n && s((r) => {
27
- const t = new Set(r);
28
- return p.includes("approve") && !e.approve && t.add("approve"), p.includes("auth") && !e.auth && t.add("auth"), [...t];
29
- });
30
- }, [
31
- n,
32
- p,
33
- e.approve,
34
- e.auth
35
- ]), c;
36
- }
37
- export {
38
- I as useCompletedStepsInSession
39
- };
@@ -1,92 +0,0 @@
1
- import { jsx as o, jsxs as a } from "react/jsx-runtime";
2
- import { shortAddress as y } from "@gearbox-protocol/sdk";
3
- import { FadeoutLoading as C } from "../../../../fadeout-loading/fadeout-loading.js";
4
- import { TipCard as z } from "../../../../tip-card/tip-card.js";
5
- import { VerticalIndicator as r } from "../../../../vertical-indicator/vertical-indicator.js";
6
- import { VerticalList as x } from "../../../../vertical-list/vertical-list.js";
7
- import { WithCopy as g } from "../../../../with-copy/with-copy.js";
8
- import { PoolOperationConfirmSummaryTest as P } from "./constants.js";
9
- function m({
10
- amount: i,
11
- symbol: t
12
- }) {
13
- return /* @__PURE__ */ a("span", { children: [
14
- i,
15
- " ",
16
- t
17
- ] });
18
- }
19
- function F({
20
- primaryLabel: i,
21
- primaryAmount: t,
22
- primaryTokenSymbol: n,
23
- receiveLabel: s,
24
- receiveAmount: d,
25
- receiveTokenSymbol: u,
26
- apyLabel: p,
27
- apy: e,
28
- apyLoading: f = !1,
29
- curatorLabel: c,
30
- curatorName: h,
31
- poolLabel: b,
32
- poolAddress: l
33
- }) {
34
- const v = y(l);
35
- return /* @__PURE__ */ o(
36
- z,
37
- {
38
- textColor: "light",
39
- "data-testid": P.root,
40
- children: /* @__PURE__ */ a(x, { children: [
41
- /* @__PURE__ */ o(
42
- r,
43
- {
44
- size: "sm",
45
- label: i,
46
- value: /* @__PURE__ */ o(
47
- m,
48
- {
49
- amount: t,
50
- symbol: n
51
- }
52
- )
53
- }
54
- ),
55
- /* @__PURE__ */ o(
56
- r,
57
- {
58
- size: "sm",
59
- label: s,
60
- value: /* @__PURE__ */ o(
61
- m,
62
- {
63
- amount: d,
64
- symbol: u
65
- }
66
- )
67
- }
68
- ),
69
- e !== void 0 ? /* @__PURE__ */ o(
70
- r,
71
- {
72
- size: "sm",
73
- label: p,
74
- value: /* @__PURE__ */ o(C, { loading: f, children: e })
75
- }
76
- ) : null,
77
- /* @__PURE__ */ o(r, { size: "sm", label: c, value: h }),
78
- /* @__PURE__ */ o(
79
- r,
80
- {
81
- size: "sm",
82
- label: b,
83
- value: /* @__PURE__ */ o(g, { toCopy: l, children: /* @__PURE__ */ o("span", { children: v }) })
84
- }
85
- )
86
- ] })
87
- }
88
- );
89
- }
90
- export {
91
- F as PoolOperationConfirmSummary
92
- };
@@ -1,45 +0,0 @@
1
- import { parseOperationCalldata as f, isPoolOperation as y, simulatePoolOperation as v } from "@gearbox-protocol/sdk/preview";
2
- import { useQuery as I } from "@tanstack/react-query";
3
- import { useMemo as O } from "react";
4
- function g(c) {
5
- const { sdk: n, to: e, calldata: o, sender: t, refreshNonce: u, enabled: a = !0 } = c, { parsed: s, error: m } = O(() => {
6
- if (!a)
7
- return { parsed: void 0, error: null };
8
- try {
9
- return {
10
- parsed: f({
11
- sdk: n,
12
- to: e,
13
- calldata: o,
14
- sender: t
15
- }),
16
- error: null
17
- };
18
- } catch (l) {
19
- return { parsed: void 0, error: l instanceof Error ? l : new Error(String(l)) };
20
- }
21
- }, [a, n, e, o, t, u]), r = a && s && y(s) ? s : void 0, d = I({
22
- queryKey: ["pool-simulation", e, o, t, u],
23
- enabled: a && r !== void 0,
24
- queryFn: () => v({
25
- // `enabled` guarantees `poolOp` is defined when this runs.
26
- sdk: n,
27
- operation: r,
28
- to: e,
29
- calldata: o,
30
- wallet: t
31
- }),
32
- staleTime: Number.POSITIVE_INFINITY,
33
- retry: !1
34
- }), i = d.data;
35
- let p = s;
36
- return r && i?.status === "success" && (p = { ...r, transfers: i.transfers }), {
37
- data: p,
38
- error: m,
39
- simulation: i,
40
- isSimulating: r !== void 0 && d.isLoading
41
- };
42
- }
43
- export {
44
- g as useParsedTransaction
45
- };
@@ -1,21 +0,0 @@
1
- import { jsx as r, jsxs as s } from "react/jsx-runtime";
2
- import { faTriangleExclamation as c, faCircleCheck as o, faXmark as n } from "@fortawesome/free-solid-svg-icons";
3
- import { FaIcon as i } from "../../../icons/fa-icon.js";
4
- import { VerticalIndicator as m } from "../../../vertical-indicator/vertical-indicator.js";
5
- import { renderPrerequisiteDetail as l } from "./prerequisiteDetails.js";
6
- function h({ result: e, sdk: a }) {
7
- const t = e.error ? /* @__PURE__ */ r(i, { icon: c, className: "size-4 text-warning" }) : e.satisfied ? /* @__PURE__ */ r(i, { icon: o, className: "size-4 text-success" }) : /* @__PURE__ */ r(i, { icon: n, className: "size-4 text-destructive" });
8
- return /* @__PURE__ */ r(
9
- m,
10
- {
11
- label: /* @__PURE__ */ s("span", { className: "flex items-center gap-2", children: [
12
- t,
13
- /* @__PURE__ */ r("span", { children: e.title })
14
- ] }),
15
- value: e.error ? /* @__PURE__ */ r("span", { className: "text-destructive text-sm", children: e.error.reason }) : l(e, a)
16
- }
17
- );
18
- }
19
- export {
20
- h as PrerequisiteRow
21
- };
@@ -1,207 +0,0 @@
1
- import { jsxs as d, jsx as r } from "react/jsx-runtime";
2
- import { Card as f, CardHeader as u, CardTitle as c, CardContent as C } from "../../../cards/card/card.js";
3
- import { ErrorLineMessage as q } from "../../../error-message/error-line-message.js";
4
- import "react-intl";
5
- import "../../../buttons/button/button.js";
6
- import "../../../dialog/dialog-container.js";
7
- import "react";
8
- import "@gearbox-protocol/sdk";
9
- import "clsx";
10
- import "tailwind-merge";
11
- import "sonner";
12
- import "@gearbox-protocol/sdk/common-utils";
13
- import "luxon";
14
- import "../../../../utils/z-index.js";
15
- import { SkeletonStack as h } from "../../../skeleton/skeleton-stack.js";
16
- import "../components/AddressAvatar.js";
17
- import "@gearbox-protocol/static";
18
- import "@fortawesome/free-solid-svg-icons";
19
- import "../../../icons/fa-icon.js";
20
- import "../../../accordion/accordion.js";
21
- import "../../../alert-badge/alert-badge.js";
22
- import "../../../alert-dialog/alert-dialog.js";
23
- import "../../../alert-modal/alert-modal.js";
24
- import "../../../tooltip/simple-tooltip.js";
25
- import "../../../tooltip/tooltip.js";
26
- import "../../../arc-loader/arc-loader.js";
27
- import "../../../asset-line/asset-line.js";
28
- import "../../../buttons/back-button/back-button.js";
29
- import "../../../buttons/copy-button/copy-button.js";
30
- import "../../../buttons/external-button/external-button.js";
31
- import "../../../buttons/filter-button/filter-button.js";
32
- import "../../../buttons/navigation-button/navigation-button.js";
33
- import "../../../buttons/tab-button/tab-button.js";
34
- import "../../../token-icon/token-icon.js";
35
- import "wagmi";
36
- import "../../../auth/wallet-ui-context.js";
37
- import "../../../avatar/avatar.js";
38
- import "../../../badge/badge.js";
39
- import "../../../base-link/base-link.js";
40
- import "../../../navigation-context/navigation-context.js";
41
- import "../../../button-checkbox/button-checkbox.js";
42
- import "../../../card-grid/card-grid.js";
43
- import "../../../carousel/carousel.js";
44
- import "../../../checkbox/checkbox.js";
45
- import "../../../checkbox/checkbox-labeled.js";
46
- import "../../../checkbox-item/checkbox-item.js";
47
- import "../../../client-adapters/styled-button/styled-button.js";
48
- import "../../../client-adapters/styled-dialog-container/styled-dialog-container.js";
49
- import "../../../client-adapters/styled-rounded-image/styled-rounded-image.js";
50
- import "../../../colored-text/colored-text.js";
51
- import "../../../input/input.js";
52
- import "../../../with-title/with-title.js";
53
- import "../../../smart-number-input/balance-indicator.js";
54
- import "../../../smart-number-input/smart-number-input.js";
55
- import "../../../table/grid-table.js";
56
- import "../../../token-symbol/token-symbol.js";
57
- import "../../../typography/typography.js";
58
- import "../../../help-tip/help-tip.js";
59
- import "../../../description/description.js";
60
- import "../../../confirm-menu/confirm-menu.js";
61
- import "../../../dialog/dialog-modal-container.js";
62
- import "../../../text-button/text-button.js";
63
- import "../../../vertical-indicator/vertical-indicator.js";
64
- import "../../../points-icon/points-icon.js";
65
- import "../../../skeleton/skeleton.js";
66
- import "../../../vertical-list/vertical-list.js";
67
- import "../../../rounded-image/rounded-image.js";
68
- import "../../../progress/progress.js";
69
- import "../../../pool-indicator-icon/pool-indicator-icon.js";
70
- import "../../strategies-table/components/feature/feature.styles.js";
71
- import "viem";
72
- import "../../../icon-button/icon-button.js";
73
- import "../../../separate-line/separate-line.js";
74
- import "../../../tip-card/tip-card.js";
75
- import "../../strategies-table/components/rewards-tooltip/rewards-tooltip-root.js";
76
- import "../../../currency-button/currency-button.js";
77
- import "../../../detailed-apy/detailed-apy.js";
78
- import "../../../detailed-page-title/detailed-page-title.js";
79
- import "../../../detailed-page-title/detailed-page-title-copy-button.js";
80
- import "../../../detailed-page-title/detailed-page-title-explorer-dropdown.js";
81
- import "../../../modal/modal.js";
82
- import "@radix-ui/react-dialog";
83
- import "../../../dialog/dialog-content.js";
84
- import "../../../dialog/dialog-description.js";
85
- import "../../../dialog/dialog-footer.js";
86
- import "../../../dialog/dialog-header.js";
87
- import "../../../dialog/dialog-title.js";
88
- import "../../../dialog/dialog-overlay.js";
89
- import "../../../label/label.js";
90
- import "../../../dropdown-menu/dropdown-menu.js";
91
- import "../../../dropdown-menu/dropdown-menu-checkbox-item.js";
92
- import "../../../dropdown-menu/dropdown-menu-content.js";
93
- import "../../../dropdown-menu/dropdown-menu-item.js";
94
- import "../../../dropdown-menu/dropdown-menu-label.js";
95
- import "../../../dropdown-menu/dropdown-menu-radio-item.js";
96
- import "../../../dropdown-menu/dropdown-menu-separator.js";
97
- import "../../../dropdown-menu/dropdown-menu-shortcut.js";
98
- import "../../../dropdown-menu/dropdown-menu-sub-content.js";
99
- import "../../../dropdown-menu/dropdown-menu-sub-trigger.js";
100
- import "../../../edit-input/edit-input.js";
101
- import "../../../fadeout-loading/fadeout-loading.js";
102
- import "../../../filter/filter-block.js";
103
- import "../../../filter/filter-checkbox-item.js";
104
- import "../../../filter/filter-chip.js";
105
- import "../../../filter/filter-chips.js";
106
- import "../../../filter/filter-dropdown-item.js";
107
- import "../../../filter/filter-group.js";
108
- import "../../../filter/filter-label.js";
109
- import "../../../search-line/search-line.js";
110
- import "../../../tabs/tabs.js";
111
- import "../../../filter/filter-modal-item.js";
112
- import "../../../filter/filter-radio-item.js";
113
- import "../../../filter/filter-separator.js";
114
- import "../../../filter/variants.js";
115
- import "../../../graph/formatters.js";
116
- import "lightweight-charts";
117
- import "../../../graph/graph-view.js";
118
- import "../../../health-factor/health-factor.js";
119
- import "../../../horizontal-indicator/horizontal-indicator.js";
120
- import "../../../layout/col/col.js";
121
- import "../../../layout/container/container.js";
122
- import "../../../layout/footer/footer.js";
123
- import "../../../layout/grid/grid.js";
124
- import "../../../layout/header/header.js";
125
- import "../../../layout/layout/layout.js";
126
- import "../../../layout/main-aside-layout/main-aside-layout.js";
127
- import "../../../page-title/page-title.js";
128
- import "../../../layout/social-icons/social-icons.js";
129
- import "../../../legal-agreement/legal-agreement-theme.js";
130
- import "../../../link/link.js";
131
- import "../../../../utils/reactochart-compat.js";
132
- import "../../../status-elements/status-elements.js";
133
- import "../../../loader/loader.js";
134
- import "../../../loading/loading.js";
135
- import "../../../loading-bar/loading-bar.js";
136
- import "react-markdown";
137
- import "remark-gfm";
138
- import "../../../navbar/navbar.js";
139
- import "../../../navbar/navbar-indicator-context.js";
140
- import "../../../app-bar/app-bar.js";
141
- import "../../../navitem/navitem.js";
142
- import "../../../simple-dropdown/simple-dropdown.js";
143
- import "../../../progress-bar/progress-bar.js";
144
- import "../../../radio-group/radio-group.js";
145
- import "../../../search-bar/search-bar.js";
146
- import "../../../segmented-control/segmented-control.js";
147
- import "../../../select/select.js";
148
- import "../../../separator/separator.js";
149
- import "../../../simple-accordion/simple-accordion.js";
150
- import "../../../simple-dropdown/simple-dropdown-menu-item.js";
151
- import "../../../slider/slider.js";
152
- import "../../../slider/slider-context.js";
153
- import "@radix-ui/react-slider";
154
- import "../../../spinner/spinner.js";
155
- import "../../../spinner-loader/spinner-loader.js";
156
- import "../../../split-list/split-list.js";
157
- import "../../../stat-badge/stat-badge.js";
158
- import "../../../status-dot/status-dot.js";
159
- import "../../../stepper/stepper.js";
160
- import "../../../switch/switch.js";
161
- import "../../../table/table.js";
162
- import "../../../table/grid-table-loader.js";
163
- import "../../../textarea/textarea.js";
164
- import "../../../theme-provider.js";
165
- import "../../../time-to-liquidation/time-to-liquidation.js";
166
- import "../../../toggle/toggle.js";
167
- import "../../../with-filter-button/with-filter-button.js";
168
- import { CollapsibleCard as P } from "../components/CollapsibleCard.js";
169
- import { PrerequisiteRow as g } from "./PrerequisiteRow.js";
170
- import { usePrerequisites as v } from "./usePrerequisites.js";
171
- function wt({
172
- sdk: o,
173
- operation: p,
174
- wallet: e,
175
- blockNumber: s,
176
- refreshNonce: n
177
- }) {
178
- const { data: t, isLoading: a, error: m } = v({
179
- sdk: o,
180
- operation: p,
181
- wallet: e,
182
- blockNumber: s,
183
- refreshNonce: n
184
- });
185
- if (a)
186
- return /* @__PURE__ */ d(f, { children: [
187
- /* @__PURE__ */ r(u, { children: /* @__PURE__ */ r(c, { children: "Prerequisites" }) }),
188
- /* @__PURE__ */ r(C, { children: /* @__PURE__ */ r(h, { lines: 3 }) })
189
- ] });
190
- if (m)
191
- return /* @__PURE__ */ r(q, { err: m, title: "Failed to verify prerequisites" });
192
- if (!t || t.length === 0)
193
- return null;
194
- const l = t.every((i) => !i.error && i.satisfied);
195
- return /* @__PURE__ */ r(
196
- P,
197
- {
198
- value: "prerequisites",
199
- title: "Prerequisites",
200
- defaultOpen: !l,
201
- children: t.map((i) => /* @__PURE__ */ r(g, { result: i, sdk: o }, i.id))
202
- }
203
- );
204
- }
205
- export {
206
- wt as PrerequisitesCard
207
- };
@@ -1,11 +0,0 @@
1
- import { PrerequisiteRow as i } from "./PrerequisiteRow.js";
2
- import { PrerequisitesCard as o } from "./PrerequisitesCard.js";
3
- import { prerequisiteDetailRenderers as u, renderPrerequisiteDetail as p } from "./prerequisiteDetails.js";
4
- import { usePrerequisites as f } from "./usePrerequisites.js";
5
- export {
6
- i as PrerequisiteRow,
7
- o as PrerequisitesCard,
8
- u as prerequisiteDetailRenderers,
9
- p as renderPrerequisiteDetail,
10
- f as usePrerequisites
11
- };
@@ -1,58 +0,0 @@
1
- import { jsx as r, jsxs as t } from "react/jsx-runtime";
2
- import { maxUint256 as d } from "viem";
3
- import { TokenIcon as p } from "../../../token-icon/token-icon.js";
4
- import { TokenTemplate as u } from "../../../token-template/token-template.js";
5
- import { resolveToken as l } from "../utils/poolTokenInfo.js";
6
- function i({
7
- token: e,
8
- required: n,
9
- actual: s,
10
- actualLabel: m = "Available"
11
- }) {
12
- const c = {
13
- symbol: e.symbol,
14
- title: e.symbol,
15
- decimals: e.decimals
16
- }, a = (o) => o === d ? /* @__PURE__ */ t("span", { className: "flex items-center gap-1", title: "Unlimited", children: [
17
- /* @__PURE__ */ r("span", { "aria-hidden": !0, children: "∞" }),
18
- /* @__PURE__ */ r("span", { children: e.symbol })
19
- ] }) : /* @__PURE__ */ r(u, { value: o, token: c, showSymbol: !0 });
20
- return /* @__PURE__ */ t("span", { className: "flex flex-col items-end gap-0.5 text-sm", children: [
21
- /* @__PURE__ */ t("span", { className: "flex items-center gap-1", children: [
22
- /* @__PURE__ */ r("span", { className: "text-muted-foreground", children: "Required" }),
23
- /* @__PURE__ */ r(p, { symbol: e.symbol, size: 14 }),
24
- a(n)
25
- ] }),
26
- s !== void 0 ? /* @__PURE__ */ t("span", { className: "flex items-center gap-1", children: [
27
- /* @__PURE__ */ r("span", { className: "text-muted-foreground", children: m }),
28
- a(s)
29
- ] }) : null
30
- ] });
31
- }
32
- const f = {
33
- allowance: (e, n) => /* @__PURE__ */ r(
34
- i,
35
- {
36
- token: l(n, e.token),
37
- required: e.required,
38
- actual: e.actual,
39
- actualLabel: "Approved"
40
- }
41
- ),
42
- balance: (e, n) => /* @__PURE__ */ r(
43
- i,
44
- {
45
- token: l(n, e.token),
46
- required: e.required,
47
- actual: e.actual
48
- }
49
- )
50
- };
51
- function g(e, n) {
52
- const s = f[e.kind];
53
- return s(e.detail, n);
54
- }
55
- export {
56
- f as prerequisiteDetailRenderers,
57
- g as renderPrerequisiteDetail
58
- };
@@ -1,39 +0,0 @@
1
- import { json_stringify as n } from "@gearbox-protocol/sdk";
2
- import { verifyPrerequisites as o, buildPrerequisites as f } from "@gearbox-protocol/sdk/preview";
3
- import { useQuery as y } from "@tanstack/react-query";
4
- function p({
5
- sdk: s,
6
- operation: e,
7
- wallet: r,
8
- blockNumber: t,
9
- refreshNonce: u
10
- }) {
11
- return y({
12
- queryKey: [
13
- "prerequisites",
14
- n(e),
15
- r,
16
- t?.toString(),
17
- u
18
- ],
19
- queryFn: () => {
20
- const i = {
21
- sdk: s,
22
- wallet: r,
23
- blockNumber: t
24
- };
25
- return o(f(e, i), i);
26
- },
27
- // Kept reactive so external changes (a deposit / approval done in another
28
- // window) are reflected: short stale time + refetch on window focus and a
29
- // modest interval. The submit flow additionally bumps `refreshNonce` for an
30
- // immediate re-check right after its own actions.
31
- staleTime: 1e4,
32
- refetchOnWindowFocus: !0,
33
- refetchInterval: 3e4,
34
- retry: !1
35
- });
36
- }
37
- export {
38
- p as usePrerequisites
39
- };
@@ -1 +0,0 @@
1
- export * from './useCalldataOperationPreview';
@@ -1,19 +0,0 @@
1
- import { Operation, PoolSimulationResult } from '@gearbox-protocol/sdk/preview';
2
- import { Address, Hex } from 'viem';
3
- import { GearboxSDKLike } from '../../types';
4
- export interface UseCalldataOperationPreviewInput {
5
- enabled: boolean;
6
- sdk: GearboxSDKLike | undefined;
7
- to: Address | undefined;
8
- calldata: Hex | undefined;
9
- wallet: Address | undefined;
10
- refreshNonce: number;
11
- }
12
- export interface UseCalldataOperationPreviewResult {
13
- operation: Operation | undefined;
14
- simulation: PoolSimulationResult | undefined;
15
- isSimulating: boolean;
16
- parseError: Error | null;
17
- isReady: boolean;
18
- }
19
- export declare function useCalldataOperationPreview({ enabled, sdk, to, calldata, wallet, refreshNonce, }: UseCalldataOperationPreviewInput): UseCalldataOperationPreviewResult;
@@ -1,7 +0,0 @@
1
- import { default as React } from 'react';
2
- import { TransactionExecutionStepView } from './computeTransactionExecutionSteps';
3
- export interface HorizontalTransactionStepperProps {
4
- readonly steps: ReadonlyArray<TransactionExecutionStepView>;
5
- readonly renderLabel: (step: TransactionExecutionStepView) => React.ReactNode;
6
- }
7
- export declare function HorizontalTransactionStepper({ steps, renderLabel, }: HorizontalTransactionStepperProps): React.ReactElement;
@@ -1,28 +0,0 @@
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 TransactionExecutionStepRequirements {
6
- readonly approve: boolean;
7
- readonly auth: boolean;
8
- }
9
- export interface TransactionExecutionStepInput {
10
- isCorrectChain: boolean;
11
- isAuthReady: boolean;
12
- needsApproval: boolean;
13
- isApprovalPending: boolean;
14
- allowWalletBatching: boolean;
15
- isExecuting?: boolean;
16
- /** Prerequisite steps completed in this confirm session; kept visible until reset. */
17
- completedStepsInSession?: ReadonlyArray<TransactionExecutionPrerequisiteStepId>;
18
- }
19
- export interface TransactionExecutionStepView {
20
- id: TransactionExecutionStepId;
21
- labelKey: TransactionExecutionStepLabelKey;
22
- status: StepStatus;
23
- }
24
- export declare function getTransactionExecutionStepRequirements(input: Pick<TransactionExecutionStepInput, "needsApproval" | "allowWalletBatching" | "isAuthReady" | "isApprovalPending">): TransactionExecutionStepRequirements;
25
- export declare function computeTransactionExecutionSteps(input: TransactionExecutionStepInput): {
26
- steps: TransactionExecutionStepView[];
27
- activeStepId: TransactionExecutionStepId;
28
- };
@@ -1,14 +0,0 @@
1
- import { TransactionExecutionPrerequisiteStepId } from './computeTransactionExecutionSteps';
2
- export interface UseCompletedStepsInSessionInput {
3
- /** When false, session memory is cleared (e.g. confirm modal closed). */
4
- readonly sessionActive: boolean;
5
- readonly needsApproval: boolean;
6
- readonly isApprovalPending?: boolean;
7
- readonly allowWalletBatching: boolean;
8
- readonly isAuthReady: boolean;
9
- }
10
- /**
11
- * Tracks prerequisite steps that were required and later completed during a confirm
12
- * session. Completed steps stay in the stepper until {@link sessionActive} resets.
13
- */
14
- export declare function useCompletedStepsInSession({ sessionActive, needsApproval, isApprovalPending, allowWalletBatching, isAuthReady, }: UseCompletedStepsInSessionInput): ReadonlyArray<TransactionExecutionPrerequisiteStepId>;
@@ -1,18 +0,0 @@
1
- import { default as React } from 'react';
2
- import { Address } from 'viem';
3
- export interface PoolOperationConfirmSummaryProps {
4
- readonly primaryLabel: React.ReactNode;
5
- readonly primaryAmount: string;
6
- readonly primaryTokenSymbol: string;
7
- readonly receiveLabel: React.ReactNode;
8
- readonly receiveAmount: string;
9
- readonly receiveTokenSymbol: string;
10
- readonly apyLabel?: React.ReactNode;
11
- readonly apy?: React.ReactNode;
12
- readonly apyLoading?: boolean;
13
- readonly curatorLabel: React.ReactNode;
14
- readonly curatorName: string;
15
- readonly poolLabel: React.ReactNode;
16
- readonly poolAddress: Address;
17
- }
18
- export declare function PoolOperationConfirmSummary({ primaryLabel, primaryAmount, primaryTokenSymbol, receiveLabel, receiveAmount, receiveTokenSymbol, apyLabel, apy, apyLoading, curatorLabel, curatorName, poolLabel, poolAddress, }: PoolOperationConfirmSummaryProps): React.ReactElement;