@velora-dex/widget 0.2.5-dev.3 → 0.2.5-dev.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/widget/OrderExpiryInput/index.d.ts.map +1 -1
- package/dist/components/widget/OrderExpiryInput/index.js +47 -65
- package/dist/components/widget/OrderExpiryInput/index.js.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js +0 -5
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
- package/dist/configurator/Configurator.d.ts.map +1 -1
- package/dist/configurator/components/FormPropsInputs.d.ts.map +1 -1
- package/dist/core/inputs/state/common.d.ts +7 -9
- package/dist/core/inputs/state/common.d.ts.map +1 -1
- package/dist/core/inputs/state/common.js +14 -20
- package/dist/core/inputs/state/common.js.map +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.d.ts +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.d.ts.map +1 -1
- package/dist/core/inputs/state/setTokenByAddressAtom.js +47 -42
- package/dist/core/inputs/state/setTokenByAddressAtom.js.map +1 -1
- package/dist/core/inputs/state/types.d.ts +3 -5
- package/dist/core/inputs/state/types.d.ts.map +1 -1
- package/dist/core/limit/state/deadlineAtom.d.ts +10 -2
- package/dist/core/limit/state/deadlineAtom.d.ts.map +1 -1
- package/dist/core/limit/state/deadlineAtom.js +15 -8
- package/dist/core/limit/state/deadlineAtom.js.map +1 -1
- package/dist/core/limit/state/limitInputActionsAtom.d.ts +3 -3
- package/dist/core/limit/state/limitInputActionsAtom.d.ts.map +1 -1
- package/dist/core/limit/state/limitInputActionsAtom.js +8 -8
- package/dist/core/limit/state/limitInputActionsAtom.js.map +1 -1
- package/dist/core/limit/state/utils.d.ts +3 -2
- package/dist/core/limit/state/utils.d.ts.map +1 -1
- package/dist/core/limit/state/utils.js +16 -3
- package/dist/core/limit/state/utils.js.map +1 -1
- package/dist/core/otc/state/deadlineAtom.d.ts +8 -3
- package/dist/core/otc/state/deadlineAtom.d.ts.map +1 -1
- package/dist/core/otc/state/deadlineAtom.js +15 -9
- package/dist/core/otc/state/deadlineAtom.js.map +1 -1
- package/dist/core/otc/state/otcInputActionsAtom.d.ts +3 -3
- package/dist/core/otc/state/otcInputActionsAtom.d.ts.map +1 -1
- package/dist/core/otc/state/otcInputActionsAtom.js +8 -8
- package/dist/core/otc/state/otcInputActionsAtom.js.map +1 -1
- package/dist/core/state/currentSwapInputAtom.d.ts +1 -1
- package/dist/core/state/currentSwapInputAtom.d.ts.map +1 -1
- package/dist/core/state/currentSwapInputAtom.js +1 -5
- package/dist/core/state/currentSwapInputAtom.js.map +1 -1
- package/package.json +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom.d.ts +0 -5
- package/dist/components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom.d.ts.map +0 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom.js +0 -6
- package/dist/components/widget/SwapModeSwitcher/state/swapSideFromPropsAtom.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/OrderExpiryInput/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/OrderExpiryInput/index.tsx"],"names":[],"mappings":"AA8HA,KAAK,qBAAqB,GAAG;IAC3B,IAAI,EAAE,OAAO,GAAG,KAAK,CAAC;CACvB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,OAAO,qBAAqB,4CAW5D,CAAC"}
|
|
@@ -97,100 +97,82 @@ const TimeUnitsDropdown = (t0) => {
|
|
|
97
97
|
return t6;
|
|
98
98
|
};
|
|
99
99
|
const TimeUnitInput = (t0) => {
|
|
100
|
-
const $ = distExports.c(
|
|
100
|
+
const $ = distExports.c(16);
|
|
101
101
|
const {
|
|
102
102
|
type
|
|
103
103
|
} = t0;
|
|
104
104
|
const isLimit = type === "limit";
|
|
105
105
|
const [timeUnitObject, setTimeUnitObject] = useAtom(isLimit ? timeUnitAtom : timeUnitAtom$1);
|
|
106
106
|
let t1;
|
|
107
|
-
if ($[0] !== setTimeUnitObject) {
|
|
108
|
-
t1 = (
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
}
|
|
113
|
-
return currentTimeUnitObject;
|
|
114
|
-
});
|
|
115
|
-
};
|
|
116
|
-
$[0] = setTimeUnitObject;
|
|
117
|
-
$[1] = t1;
|
|
118
|
-
} else {
|
|
119
|
-
t1 = $[1];
|
|
120
|
-
}
|
|
121
|
-
const onTimeUnitChange = t1;
|
|
122
|
-
let t2;
|
|
123
|
-
if ($[2] !== isLimit || $[3] !== setTimeUnitObject) {
|
|
124
|
-
t2 = (values) => {
|
|
107
|
+
if ($[0] !== isLimit || $[1] !== setTimeUnitObject) {
|
|
108
|
+
t1 = (values, sourceInfo) => {
|
|
109
|
+
if (sourceInfo.source === "prop") {
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
125
112
|
const floatValue = values.floatValue;
|
|
126
113
|
if (floatValue === neverTimeUnit.value && !isLimit) {
|
|
127
114
|
setTimeUnitObject(neverTimeUnit);
|
|
128
115
|
} else {
|
|
129
116
|
if (floatValue !== void 0) {
|
|
130
|
-
setTimeUnitObject((
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
return {
|
|
135
|
-
...prev_0,
|
|
136
|
-
value: floatValue
|
|
137
|
-
};
|
|
138
|
-
});
|
|
117
|
+
setTimeUnitObject((prev) => ({
|
|
118
|
+
label: prev.label,
|
|
119
|
+
value: floatValue
|
|
120
|
+
}));
|
|
139
121
|
} else {
|
|
140
122
|
setTimeUnitObject(minTimeUnit);
|
|
141
123
|
}
|
|
142
124
|
}
|
|
143
125
|
};
|
|
144
|
-
$[
|
|
145
|
-
$[
|
|
146
|
-
$[
|
|
126
|
+
$[0] = isLimit;
|
|
127
|
+
$[1] = setTimeUnitObject;
|
|
128
|
+
$[2] = t1;
|
|
147
129
|
} else {
|
|
148
|
-
|
|
130
|
+
t1 = $[2];
|
|
149
131
|
}
|
|
150
|
-
const onValueChange =
|
|
151
|
-
let
|
|
152
|
-
if ($[
|
|
153
|
-
|
|
154
|
-
$[
|
|
155
|
-
$[
|
|
156
|
-
$[
|
|
157
|
-
$[
|
|
132
|
+
const onValueChange = t1;
|
|
133
|
+
let t2;
|
|
134
|
+
if ($[3] !== onValueChange || $[4] !== timeUnitObject.label || $[5] !== timeUnitObject.value) {
|
|
135
|
+
t2 = timeUnitObject.label !== neverTimeUnit.label && /* @__PURE__ */ jsx(NumericFormat, { className: "min-w-0 w-full text-lg font-geist-mono text-contrast-3 dark:text-contrast-8", placeholder: "0", value: timeUnitObject.value, onValueChange, decimalScale: 0, allowNegative: false, allowLeadingZeros: false, customInput: UnstyledInput, thousandSeparator: true });
|
|
136
|
+
$[3] = onValueChange;
|
|
137
|
+
$[4] = timeUnitObject.label;
|
|
138
|
+
$[5] = timeUnitObject.value;
|
|
139
|
+
$[6] = t2;
|
|
158
140
|
} else {
|
|
159
|
-
|
|
141
|
+
t2 = $[6];
|
|
160
142
|
}
|
|
161
|
-
let
|
|
162
|
-
if ($[
|
|
163
|
-
|
|
143
|
+
let t3;
|
|
144
|
+
if ($[7] === Symbol.for("react.memo_cache_sentinel")) {
|
|
145
|
+
t3 = {
|
|
164
146
|
trigger: "w-full min-h-[28px]"
|
|
165
147
|
};
|
|
166
|
-
$[
|
|
148
|
+
$[7] = t3;
|
|
167
149
|
} else {
|
|
168
|
-
|
|
150
|
+
t3 = $[7];
|
|
169
151
|
}
|
|
170
|
-
let
|
|
171
|
-
if ($[
|
|
172
|
-
|
|
173
|
-
$[
|
|
174
|
-
$[
|
|
175
|
-
$[
|
|
176
|
-
$[
|
|
177
|
-
$[
|
|
152
|
+
let t4;
|
|
153
|
+
if ($[8] !== setTimeUnitObject || $[9] !== timeUnitObject.label || $[10] !== timeUnitObject.value || $[11] !== type) {
|
|
154
|
+
t4 = /* @__PURE__ */ jsx(TimeUnitsDropdown, { selectedTimeUnit: timeUnitObject.label, onSelect: setTimeUnitObject, expiryTimeValue: timeUnitObject.value, classes: t3, type });
|
|
155
|
+
$[8] = setTimeUnitObject;
|
|
156
|
+
$[9] = timeUnitObject.label;
|
|
157
|
+
$[10] = timeUnitObject.value;
|
|
158
|
+
$[11] = type;
|
|
159
|
+
$[12] = t4;
|
|
178
160
|
} else {
|
|
179
|
-
|
|
161
|
+
t4 = $[12];
|
|
180
162
|
}
|
|
181
|
-
let
|
|
182
|
-
if ($[
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
163
|
+
let t5;
|
|
164
|
+
if ($[13] !== t2 || $[14] !== t4) {
|
|
165
|
+
t5 = /* @__PURE__ */ jsxs("div", { className: "flex justify-between items-center flex-1", children: [
|
|
166
|
+
t2,
|
|
167
|
+
t4
|
|
186
168
|
] });
|
|
187
|
-
$[
|
|
188
|
-
$[
|
|
189
|
-
$[
|
|
169
|
+
$[13] = t2;
|
|
170
|
+
$[14] = t4;
|
|
171
|
+
$[15] = t5;
|
|
190
172
|
} else {
|
|
191
|
-
|
|
173
|
+
t5 = $[15];
|
|
192
174
|
}
|
|
193
|
-
return
|
|
175
|
+
return t5;
|
|
194
176
|
};
|
|
195
177
|
const OrderExpiryInput = (props) => {
|
|
196
178
|
const $ = distExports.c(3);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/widget/OrderExpiryInput/index.tsx"],"sourcesContent":["import { UnstyledInput } from \"@/components/ui/input\";\nimport { NumericFormat, type NumericFormatProps } from \"react-number-format\";\nimport { DropdownWithItems } from \"../Dropdown/DropdownWithItems\";\nimport type { DropdownItem, DropdownWithItemsProps } from \"../Dropdown/types\";\nimport { ChevronIcon } from \"../Icon/ChevronIcon\";\nimport { useAtom } from \"jotai\";\nimport {\n timeUnitAtom as limitTimeUnitAtom,\n type TimeUnit,\n type TimeUnitObject,\n} from \"@/core/limit/state/deadlineAtom\";\nimport { timeUnitAtom as otcTimeUnitAtom } from \"@/core/otc/state/deadlineAtom\";\nimport {\n minTimeUnit,\n neverTimeUnit,\n timeUnits,\n} from \"@/core/limit/state/constants\";\n\ntype TimeUnitsDropdownProps = {\n expiryTimeValue: number;\n selectedTimeUnit: TimeUnit;\n onSelect: (timeUnit: TimeUnitObject) => void;\n classes?: DropdownWithItemsProps[\"classes\"];\n type: OrderExpiryInputProps[\"type\"];\n};\n\nconst TimeUnitsDropdown: React.FC<TimeUnitsDropdownProps> = ({\n expiryTimeValue,\n selectedTimeUnit,\n onSelect,\n classes,\n type,\n}) => {\n const isLimit = type === \"limit\";\n const specificTimeUnits = isLimit\n ? timeUnits.filter((item) => item.label !== \"never\")\n : timeUnits; // OTC can have 0 deadline\n\n const items = specificTimeUnits.map<DropdownItem>((item) => ({\n label: item.label,\n onSelect: () => {\n onSelect(item);\n },\n className: \"capitalize\",\n selected: item.label === selectedTimeUnit,\n }));\n\n const label =\n expiryTimeValue > 1 || selectedTimeUnit === neverTimeUnit.label\n ? selectedTimeUnit\n : selectedTimeUnit.slice(0, -1); // \"days\" -> \"day\"\n\n const menuTrigger = (\n <div className=\"flex justify-between items-center gap-1.5 text-contrast-3 dark:text-contrast-7 text-sm cursor-pointer\">\n <span className=\"capitalize\">{label}</span>\n <ChevronIcon width={12} height={12} className=\"pt-[2px]\" />\n </div>\n );\n\n return (\n <DropdownWithItems\n items={items}\n menuTrigger={menuTrigger}\n classes={classes}\n align=\"end\"\n />\n );\n};\n\nconst TimeUnitInput = ({ type }: OrderExpiryInputProps) => {\n const isLimit = type === \"limit\";\n const [timeUnitObject, setTimeUnitObject] = useAtom(\n isLimit ? limitTimeUnitAtom : otcTimeUnitAtom\n );\n\n const onTimeUnitChange = (currentTimeUnitObject: TimeUnitObject) => {\n setTimeUnitObject((prev) => {\n if (prev.label === currentTimeUnitObject.label) {\n return prev;\n }\n\n return currentTimeUnitObject;\n });\n };\n\n const onValueChange: NumericFormatProps[\"onValueChange\"] = (values) => {\n const floatValue = values.floatValue;\n\n if (floatValue === neverTimeUnit.value && !isLimit) {\n setTimeUnitObject(neverTimeUnit);\n } else if (floatValue !== undefined) {\n setTimeUnitObject((prev) => {\n if (prev.value === floatValue) return prev;\n return { ...prev, value: floatValue };\n });\n } else {\n setTimeUnitObject(minTimeUnit);\n }\n };\n\n return (\n <div className=\"flex justify-between items-center flex-1\">\n {timeUnitObject.label !== neverTimeUnit.label && (\n <NumericFormat\n className=\"min-w-0 w-full text-lg font-geist-mono text-contrast-3 dark:text-contrast-8\"\n placeholder=\"0\"\n value={timeUnitObject.value}\n onValueChange={onValueChange}\n decimalScale={0}\n allowNegative={false}\n allowLeadingZeros={false}\n customInput={UnstyledInput}\n thousandSeparator\n />\n )}\n <TimeUnitsDropdown\n selectedTimeUnit={timeUnitObject.label}\n onSelect={onTimeUnitChange}\n expiryTimeValue={timeUnitObject.value}\n classes={{\n trigger: \"w-full min-h-[28px]\",\n }}\n type={type}\n />\n </div>\n );\n};\n\ntype OrderExpiryInputProps = {\n type: \"limit\" | \"otc\";\n};\n\nexport const OrderExpiryInput = (props: OrderExpiryInputProps) => {\n return (\n <div className=\"flex flex-col gap-[8px] p-4 border-1 rounded-[12px] border-transparent transition-all focus-within:border-primary-azul-1 bg-contrast-8 dark:bg-contrast-2\">\n <div className=\"flex items-center justify-between text-xs text-contrast-3 dark:text-contrast-7\">\n <span>Order Expiry</span>\n </div>\n <div className=\"flex items-center justify-between gap-1.5\">\n <TimeUnitInput {...props} />\n </div>\n </div>\n );\n};\n"],"names":["TimeUnitsDropdown","t0","$","_c","expiryTimeValue","selectedTimeUnit","onSelect","classes","type","isLimit","t1","specificTimeUnits","timeUnits","filter","_temp","t2","item_0","label","item","className","selected","map","items","neverTimeUnit","slice","t3","t4","Symbol","for","t5","menuTrigger","t6","TimeUnitInput","timeUnitObject","setTimeUnitObject","useAtom","limitTimeUnitAtom","otcTimeUnitAtom","currentTimeUnitObject","prev","onTimeUnitChange","values","floatValue","value","undefined","prev_0","minTimeUnit","onValueChange","UnstyledInput","trigger","OrderExpiryInput","props"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/widget/OrderExpiryInput/index.tsx"],"sourcesContent":["import { UnstyledInput } from \"@/components/ui/input\";\nimport { NumericFormat, type NumericFormatProps } from \"react-number-format\";\nimport { DropdownWithItems } from \"../Dropdown/DropdownWithItems\";\nimport type { DropdownItem, DropdownWithItemsProps } from \"../Dropdown/types\";\nimport { ChevronIcon } from \"../Icon/ChevronIcon\";\nimport { useAtom } from \"jotai\";\nimport {\n timeUnitAtom as limitTimeUnitAtom,\n type TimeUnit,\n type TimeUnitObject,\n} from \"@/core/limit/state/deadlineAtom\";\nimport { timeUnitAtom as otcTimeUnitAtom } from \"@/core/otc/state/deadlineAtom\";\nimport {\n minTimeUnit,\n neverTimeUnit,\n timeUnits,\n} from \"@/core/limit/state/constants\";\n\ntype TimeUnitsDropdownProps = {\n expiryTimeValue: number;\n selectedTimeUnit: TimeUnit;\n onSelect: (timeUnit: TimeUnitObject) => void;\n classes?: DropdownWithItemsProps[\"classes\"];\n type: OrderExpiryInputProps[\"type\"];\n};\n\nconst TimeUnitsDropdown: React.FC<TimeUnitsDropdownProps> = ({\n expiryTimeValue,\n selectedTimeUnit,\n onSelect,\n classes,\n type,\n}) => {\n const isLimit = type === \"limit\";\n const specificTimeUnits = isLimit\n ? timeUnits.filter((item) => item.label !== \"never\")\n : timeUnits; // OTC can have 0 deadline\n\n const items = specificTimeUnits.map<DropdownItem>((item) => ({\n label: item.label,\n onSelect: () => {\n onSelect(item);\n },\n className: \"capitalize\",\n selected: item.label === selectedTimeUnit,\n }));\n\n const label =\n expiryTimeValue > 1 || selectedTimeUnit === neverTimeUnit.label\n ? selectedTimeUnit\n : selectedTimeUnit.slice(0, -1); // \"days\" -> \"day\"\n\n const menuTrigger = (\n <div className=\"flex justify-between items-center gap-1.5 text-contrast-3 dark:text-contrast-7 text-sm cursor-pointer\">\n <span className=\"capitalize\">{label}</span>\n <ChevronIcon width={12} height={12} className=\"pt-[2px]\" />\n </div>\n );\n\n return (\n <DropdownWithItems\n items={items}\n menuTrigger={menuTrigger}\n classes={classes}\n align=\"end\"\n />\n );\n};\n\nconst TimeUnitInput = ({ type }: OrderExpiryInputProps) => {\n const isLimit = type === \"limit\";\n const [timeUnitObject, setTimeUnitObject] = useAtom(\n isLimit ? limitTimeUnitAtom : otcTimeUnitAtom\n );\n\n const onValueChange: NumericFormatProps[\"onValueChange\"] = (\n values,\n sourceInfo\n ) => {\n // source=\"event\" when changed by user input\n // source=\"prop\" when changed by prop update\n // do not respond to external value changes (e.g. when setting orderDeadline from inputProps)\n if (sourceInfo.source === \"prop\") return;\n\n const floatValue = values.floatValue;\n\n if (floatValue === neverTimeUnit.value && !isLimit) {\n setTimeUnitObject(neverTimeUnit);\n } else if (floatValue !== undefined) {\n setTimeUnitObject((prev) => ({\n label: prev.label,\n value: floatValue,\n }));\n } else {\n setTimeUnitObject(minTimeUnit);\n }\n };\n\n return (\n <div className=\"flex justify-between items-center flex-1\">\n {timeUnitObject.label !== neverTimeUnit.label && (\n <NumericFormat\n className=\"min-w-0 w-full text-lg font-geist-mono text-contrast-3 dark:text-contrast-8\"\n placeholder=\"0\"\n value={timeUnitObject.value}\n onValueChange={onValueChange}\n decimalScale={0}\n allowNegative={false}\n allowLeadingZeros={false}\n customInput={UnstyledInput}\n thousandSeparator\n />\n )}\n <TimeUnitsDropdown\n selectedTimeUnit={timeUnitObject.label}\n onSelect={setTimeUnitObject}\n expiryTimeValue={timeUnitObject.value}\n classes={{\n trigger: \"w-full min-h-[28px]\",\n }}\n type={type}\n />\n </div>\n );\n};\n\ntype OrderExpiryInputProps = {\n type: \"limit\" | \"otc\";\n};\n\nexport const OrderExpiryInput = (props: OrderExpiryInputProps) => {\n return (\n <div className=\"flex flex-col gap-[8px] p-4 border-1 rounded-[12px] border-transparent transition-all focus-within:border-primary-azul-1 bg-contrast-8 dark:bg-contrast-2\">\n <div className=\"flex items-center justify-between text-xs text-contrast-3 dark:text-contrast-7\">\n <span>Order Expiry</span>\n </div>\n <div className=\"flex items-center justify-between gap-1.5\">\n <TimeUnitInput {...props} />\n </div>\n </div>\n );\n};\n"],"names":["TimeUnitsDropdown","t0","$","_c","expiryTimeValue","selectedTimeUnit","onSelect","classes","type","isLimit","t1","specificTimeUnits","timeUnits","filter","_temp","t2","item_0","label","item","className","selected","map","items","neverTimeUnit","slice","t3","t4","Symbol","for","t5","menuTrigger","t6","TimeUnitInput","timeUnitObject","setTimeUnitObject","useAtom","limitTimeUnitAtom","otcTimeUnitAtom","values","sourceInfo","source","floatValue","value","undefined","prev","minTimeUnit","onValueChange","UnstyledInput","trigger","OrderExpiryInput","props"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swapSideAtom.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/SwapModeSwitcher/state/swapSideAtom.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"swapSideAtom.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/SwapModeSwitcher/state/swapSideAtom.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGrD,eAAO,MAAM,YAAY,qCAgBvB,CAAC;AAEH,eAAO,MAAM,WAAW,qBAEvB,CAAC"}
|
|
@@ -2,7 +2,6 @@ import { swapTokenToAtom } from '../../../../core/inputs/state/selectedTokenAtom
|
|
|
2
2
|
import { currentSwapInputAtom } from '../../../../core/state/currentSwapInputAtom.js';
|
|
3
3
|
import { tradeModeAtom } from '../../../../core/state/tradeModeAtom.js';
|
|
4
4
|
import { atom, useAtomValue } from 'jotai';
|
|
5
|
-
import { swapSideFromPropsAtom } from './swapSideFromPropsAtom.js';
|
|
6
5
|
|
|
7
6
|
const swapSideAtom = atom((get) => {
|
|
8
7
|
const tradeMode = get(tradeModeAtom);
|
|
@@ -13,10 +12,6 @@ const swapSideAtom = atom((get) => {
|
|
|
13
12
|
if (!tokenTo) {
|
|
14
13
|
return "SELL";
|
|
15
14
|
}
|
|
16
|
-
const swapSideFromProps = get(swapSideFromPropsAtom);
|
|
17
|
-
if (swapSideFromProps) {
|
|
18
|
-
return swapSideFromProps;
|
|
19
|
-
}
|
|
20
15
|
const currentSwapInput = get(currentSwapInputAtom);
|
|
21
16
|
return currentSwapInput === "from" ? "SELL" : "BUY";
|
|
22
17
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swapSideAtom.js","sources":["../../../../../src/components/widget/SwapModeSwitcher/state/swapSideAtom.ts"],"sourcesContent":["import { swapTokenToAtom } from \"@/core/inputs/state/selectedTokenAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { tradeModeAtom } from \"@/core/state/tradeModeAtom\";\nimport type { SwapSideUnion } from \"@velora-dex/sdk\";\nimport { atom, useAtomValue } from \"jotai\";\
|
|
1
|
+
{"version":3,"file":"swapSideAtom.js","sources":["../../../../../src/components/widget/SwapModeSwitcher/state/swapSideAtom.ts"],"sourcesContent":["import { swapTokenToAtom } from \"@/core/inputs/state/selectedTokenAtom\";\nimport { currentSwapInputAtom } from \"@/core/state/currentSwapInputAtom\";\nimport { tradeModeAtom } from \"@/core/state/tradeModeAtom\";\nimport type { SwapSideUnion } from \"@velora-dex/sdk\";\nimport { atom, useAtomValue } from \"jotai\";\n\nexport const swapSideAtom = atom<SwapSideUnion>((get) => {\n const tradeMode = get(tradeModeAtom);\n\n if (tradeMode !== \"swap\") {\n return \"SELL\";\n }\n\n const tokenTo = get(swapTokenToAtom);\n\n if (!tokenTo) {\n return \"SELL\";\n }\n\n const currentSwapInput = get(currentSwapInputAtom);\n\n return currentSwapInput === \"from\" ? \"SELL\" : \"BUY\";\n});\n\nexport const useSwapSide = () => {\n return useAtomValue(swapSideAtom);\n};\n"],"names":["swapSideAtom","atom","get","tradeMode","tradeModeAtom","tokenTo","swapTokenToAtom","currentSwapInput","currentSwapInputAtom","useSwapSide","useAtomValue"],"mappings":";;;;;AAMO,MAAMA,YAAAA,GAAeC,KAAqBC,CAAAA,GAAAA,KAAQ;AACvD,EAAA,MAAMC,SAAAA,GAAYD,IAAIE,aAAa,CAAA;AAEnC,EAAA,IAAID,cAAc,MAAA,EAAQ;AACxB,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,MAAME,OAAAA,GAAUH,IAAII,eAAe,CAAA;AAEnC,EAAA,IAAI,CAACD,OAAAA,EAAS;AACZ,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,MAAME,gBAAAA,GAAmBL,IAAIM,oBAAoB,CAAA;AAEjD,EAAA,OAAOD,gBAAAA,KAAqB,SAAS,MAAA,GAAS,KAAA;AAChD,CAAC;AAEM,MAAME,cAAcA,MAAA;AAAA,EAAA,OAClBC,aAAaV,YAAY,CAAA;AAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Configurator.d.ts","sourceRoot":"","sources":["../../src/configurator/Configurator.tsx"],"names":[],"mappings":"AAsPA,eAAO,MAAM,YAAY,+
|
|
1
|
+
{"version":3,"file":"Configurator.d.ts","sourceRoot":"","sources":["../../src/configurator/Configurator.tsx"],"names":[],"mappings":"AAsPA,eAAO,MAAM,YAAY,+CA0SxB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormPropsInputs.d.ts","sourceRoot":"","sources":["../../../src/configurator/components/FormPropsInputs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAgChE,eAAO,MAAM,SAAS,GAAI,2BAGvB;IACD,KAAK,EAAE,cAAc,CAAC;IACtB,aAAa,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;CAChD,
|
|
1
|
+
{"version":3,"file":"FormPropsInputs.d.ts","sourceRoot":"","sources":["../../../src/configurator/components/FormPropsInputs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAgChE,eAAO,MAAM,SAAS,GAAI,2BAGvB;IACD,KAAK,EAAE,cAAc,CAAC;IACtB,aAAa,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;CAChD,4CAoOA,CAAC"}
|
|
@@ -3,23 +3,20 @@ import { swapTokenFromAtom, swapTokenToAtom } from './selectedTokenAtom';
|
|
|
3
3
|
import { TradeMode } from '../../state/tradeModeAtom';
|
|
4
4
|
import { SupportedChainId } from '../../../lib/web3/wagmi/types';
|
|
5
5
|
import { payInputAmountAtom, payInputAmountWeiAtom, receiveInputAmountAtom } from './inputAmountAtom';
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
6
|
+
import { PrimitiveAtom } from 'jotai';
|
|
7
|
+
import { setLimitPayAmountAtomFromProps, setLimitReceiveAmountAtomFromProps } from '../../limit/state/limitInputActionsAtom';
|
|
8
|
+
import { SwapSideUnion } from '@velora-dex/sdk';
|
|
8
9
|
import * as limitDeadline from "@/core/limit/state/deadlineAtom";
|
|
9
10
|
export declare function syncTokensAfterChainSwitch(chainId: SupportedChainId): void;
|
|
10
11
|
export declare const tradeModeToPayAmountUnitAtom: Record<TradeMode, {
|
|
11
12
|
read: Pick<typeof payInputAmountAtom, "read">;
|
|
12
|
-
write: Pick<typeof
|
|
13
|
+
write: Pick<typeof setLimitPayAmountAtomFromProps, "write"> & Pick<PrimitiveAtom<string | null>, "read">;
|
|
13
14
|
}>;
|
|
14
15
|
export declare const tradeModeToReceiveAmountUnitAtom: Record<TradeMode, {
|
|
15
16
|
read: Pick<typeof receiveInputAmountAtom, "read">;
|
|
16
|
-
write: Pick<typeof
|
|
17
|
+
write: Pick<typeof setLimitReceiveAmountAtomFromProps, "write"> & Pick<PrimitiveAtom<string | null>, "read">;
|
|
17
18
|
}>;
|
|
18
|
-
export declare const
|
|
19
|
-
read: Atom<string>;
|
|
20
|
-
write: Pick<typeof setLimitPriceAmountAtomFromProps, "write"> & Pick<PrimitiveAtom<string | null>, "read">;
|
|
21
|
-
}>;
|
|
22
|
-
export declare const tradeModeToDeadlineTimeUnitAtom: Record<"limit" | "otc", typeof limitDeadline.timeUnitAtom>;
|
|
19
|
+
export declare const tradeModeToTimeUnitAtom: Record<"limit" | "otc", typeof limitDeadline.timeUnitAtom>;
|
|
23
20
|
export declare const tradeModeToPayAmountWeiAtom: Record<TradeMode, typeof payInputAmountWeiAtom>;
|
|
24
21
|
export declare const tradeModeToTokenAtoms: Record<TradeMode, {
|
|
25
22
|
tokenFromAtom: typeof swapTokenFromAtom;
|
|
@@ -29,6 +26,7 @@ export declare const tradeModeToSetTokenAtoms: Record<TradeMode, {
|
|
|
29
26
|
tokenFromAtom: typeof selectSwapTokenFromAtom;
|
|
30
27
|
tokenToAtom: typeof selectSwapTokenToAtom;
|
|
31
28
|
}>;
|
|
29
|
+
export declare const sideToInputType: Record<SwapSideUnion, "from" | "to">;
|
|
32
30
|
export declare const useWidgetTokens: (tradeMode: TradeMode) => {
|
|
33
31
|
tokenFrom: import('../../../tokens/state/types').Token;
|
|
34
32
|
tokenTo: import('../../../tokens/state/types').Token | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/common.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EAEtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAWzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/common.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EAEtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAWzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,mBAAmB,CAAC;AAW3B,OAAO,EAAgB,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AASzD,OAAO,EACL,8BAA8B,EAC9B,kCAAkC,EACnC,MAAM,0CAA0C,CAAC;AAKlD,OAAO,KAAK,aAAa,MAAM,iCAAiC,CAAC;AAEjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,gBAAgB,QAInE;AAED,eAAO,MAAM,4BAA4B,EAAE,MAAM,CAC/C,SAAS,EACT;IACE,IAAI,EAAE,IAAI,CAAC,OAAO,kBAAkB,EAAE,MAAM,CAAC,CAAC;IAC9C,KAAK,EAAE,IAAI,CAAC,OAAO,8BAA8B,EAAE,OAAO,CAAC,GACzD,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;CAC9C,CAQF,CAAC;AAEF,eAAO,MAAM,gCAAgC,EAAE,MAAM,CACnD,SAAS,EACT;IACE,IAAI,EAAE,IAAI,CAAC,OAAO,sBAAsB,EAAE,MAAM,CAAC,CAAC;IAClD,KAAK,EAAE,IAAI,CAAC,OAAO,kCAAkC,EAAE,OAAO,CAAC,GAC7D,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;CAC9C,CAWF,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAC1C,OAAO,GAAG,KAAK,EACf,OAAO,aAAa,CAAC,YAAY,CAIlC,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAC9C,SAAS,EACT,OAAO,qBAAqB,CAK7B,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,MAAM,CACxC,SAAS,EACT;IACE,aAAa,EAAE,OAAO,iBAAiB,CAAC;IACxC,WAAW,EAAE,OAAO,eAAe,CAAC;CACrC,CAcF,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAC3C,SAAS,EACT;IACE,aAAa,EAAE,OAAO,uBAAuB,CAAC;IAC9C,WAAW,EAAE,OAAO,qBAAqB,CAAC;CAC3C,CAcF,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAGhE,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,WAAW,SAAS;;;CAKnD,CAAC"}
|
|
@@ -4,13 +4,13 @@ import { swapTokenToAtom, swapTokenFromAtom } from './selectedTokenAtom.js';
|
|
|
4
4
|
import { syncLimitTokensAfterChainSwitch, limitTokenToAtom, limitTokenFromAtom } from '../../limit/state/selectedTokenAtom.js';
|
|
5
5
|
import { syncOtcTokensAfterChainSwitch, otcTokenToAtom, otcTokenFromAtom } from '../../otc/state/selectedTokenAtom.js';
|
|
6
6
|
import { payInputAmountAtom, receiveInputAmountAtom, payInputAmountWeiAtom } from './inputAmountAtom.js';
|
|
7
|
-
import { limitPayInputAmountAtom, limitReceiveInputAmountAtom,
|
|
8
|
-
import { otcPayInputAmountAtom, otcReceiveInputAmountAtom,
|
|
7
|
+
import { limitPayInputAmountAtom, limitReceiveInputAmountAtom, limitPayInputAmountWeiAtom } from '../../limit/state/limitInputAmountAtom.js';
|
|
8
|
+
import { otcPayInputAmountAtom, otcReceiveInputAmountAtom, otcPayInputAmountWeiAtom } from '../../otc/state/otcInputAmountAtom.js';
|
|
9
9
|
import { useAtomValue } from 'jotai';
|
|
10
10
|
import { selectLimitTokenToAtom, selectLimitTokenFromAtom } from '../../limit/state/selectedTokenActionsAtom.js';
|
|
11
11
|
import { selectOtcTokenToAtom, selectOtcTokenFromAtom } from '../../otc/state/selectedTokenActionsAtom.js';
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
12
|
+
import { setLimitPayAmountAtomFromProps, setLimitReceiveAmountAtomFromProps } from '../../limit/state/limitInputActionsAtom.js';
|
|
13
|
+
import { setOtcPayAmountAtomFromProps, setOtcReceiveAmountAtomFromProps } from '../../otc/state/otcInputActionsAtom.js';
|
|
14
14
|
import { timeUnitAtom as timeUnitAtom$1 } from '../../limit/state/deadlineAtom.js';
|
|
15
15
|
import { timeUnitAtom } from '../../otc/state/deadlineAtom.js';
|
|
16
16
|
|
|
@@ -26,11 +26,11 @@ const tradeModeToPayAmountUnitAtom = {
|
|
|
26
26
|
},
|
|
27
27
|
limit: {
|
|
28
28
|
read: limitPayInputAmountAtom,
|
|
29
|
-
write:
|
|
29
|
+
write: setLimitPayAmountAtomFromProps
|
|
30
30
|
},
|
|
31
31
|
otc: {
|
|
32
32
|
read: otcPayInputAmountAtom,
|
|
33
|
-
write:
|
|
33
|
+
write: setOtcPayAmountAtomFromProps
|
|
34
34
|
}
|
|
35
35
|
};
|
|
36
36
|
const tradeModeToReceiveAmountUnitAtom = {
|
|
@@ -40,24 +40,14 @@ const tradeModeToReceiveAmountUnitAtom = {
|
|
|
40
40
|
},
|
|
41
41
|
limit: {
|
|
42
42
|
read: limitReceiveInputAmountAtom,
|
|
43
|
-
write:
|
|
43
|
+
write: setLimitReceiveAmountAtomFromProps
|
|
44
44
|
},
|
|
45
45
|
otc: {
|
|
46
46
|
read: otcReceiveInputAmountAtom,
|
|
47
|
-
write:
|
|
47
|
+
write: setOtcReceiveAmountAtomFromProps
|
|
48
48
|
}
|
|
49
49
|
};
|
|
50
|
-
const
|
|
51
|
-
limit: {
|
|
52
|
-
read: limitPriceAmountAtom,
|
|
53
|
-
write: setLimitPriceAmountAtomFromProps
|
|
54
|
-
},
|
|
55
|
-
otc: {
|
|
56
|
-
read: otcPriceAmountAtom,
|
|
57
|
-
write: setOtcPriceAmountAtomFromProps
|
|
58
|
-
}
|
|
59
|
-
};
|
|
60
|
-
const tradeModeToDeadlineTimeUnitAtom = {
|
|
50
|
+
const tradeModeToTimeUnitAtom = {
|
|
61
51
|
limit: timeUnitAtom$1,
|
|
62
52
|
otc: timeUnitAtom
|
|
63
53
|
};
|
|
@@ -94,6 +84,10 @@ const tradeModeToSetTokenAtoms = {
|
|
|
94
84
|
tokenToAtom: selectOtcTokenToAtom
|
|
95
85
|
}
|
|
96
86
|
};
|
|
87
|
+
const sideToInputType = {
|
|
88
|
+
SELL: "from",
|
|
89
|
+
BUY: "to"
|
|
90
|
+
};
|
|
97
91
|
const useWidgetTokens = (tradeMode) => {
|
|
98
92
|
const $ = distExports.c(3);
|
|
99
93
|
const {
|
|
@@ -117,5 +111,5 @@ const useWidgetTokens = (tradeMode) => {
|
|
|
117
111
|
return t0;
|
|
118
112
|
};
|
|
119
113
|
|
|
120
|
-
export {
|
|
114
|
+
export { sideToInputType, syncTokensAfterChainSwitch, tradeModeToPayAmountUnitAtom, tradeModeToPayAmountWeiAtom, tradeModeToReceiveAmountUnitAtom, tradeModeToSetTokenAtoms, tradeModeToTimeUnitAtom, tradeModeToTokenAtoms, useWidgetTokens };
|
|
121
115
|
//# sourceMappingURL=common.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sources":["../../../../src/core/inputs/state/common.ts"],"sourcesContent":["import {\n selectSwapTokenFromAtom,\n selectSwapTokenToAtom,\n syncSwapTokensAfterChainSwitch,\n} from \"./selectedTokenActionsAtom\";\nimport { swapTokenFromAtom, swapTokenToAtom } from \"./selectedTokenAtom\";\nimport {\n limitTokenFromAtom,\n limitTokenToAtom,\n syncLimitTokensAfterChainSwitch,\n} from \"@/core/limit/state/selectedTokenAtom\";\nimport {\n otcTokenFromAtom,\n otcTokenToAtom,\n syncOtcTokensAfterChainSwitch,\n} from \"@/core/otc/state/selectedTokenAtom\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport {\n payInputAmountAtom,\n payInputAmountWeiAtom,\n receiveInputAmountAtom,\n} from \"./inputAmountAtom\";\nimport {\n limitPayInputAmountAtom,\n limitPayInputAmountWeiAtom,\n
|
|
1
|
+
{"version":3,"file":"common.js","sources":["../../../../src/core/inputs/state/common.ts"],"sourcesContent":["import {\n selectSwapTokenFromAtom,\n selectSwapTokenToAtom,\n syncSwapTokensAfterChainSwitch,\n} from \"./selectedTokenActionsAtom\";\nimport { swapTokenFromAtom, swapTokenToAtom } from \"./selectedTokenAtom\";\nimport {\n limitTokenFromAtom,\n limitTokenToAtom,\n syncLimitTokensAfterChainSwitch,\n} from \"@/core/limit/state/selectedTokenAtom\";\nimport {\n otcTokenFromAtom,\n otcTokenToAtom,\n syncOtcTokensAfterChainSwitch,\n} from \"@/core/otc/state/selectedTokenAtom\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport {\n payInputAmountAtom,\n payInputAmountWeiAtom,\n receiveInputAmountAtom,\n} from \"./inputAmountAtom\";\nimport {\n limitPayInputAmountAtom,\n limitPayInputAmountWeiAtom,\n limitReceiveInputAmountAtom,\n} from \"@/core/limit/state/limitInputAmountAtom\";\nimport {\n otcPayInputAmountAtom,\n otcPayInputAmountWeiAtom,\n otcReceiveInputAmountAtom,\n} from \"@/core/otc/state/otcInputAmountAtom\";\nimport { useAtomValue, type PrimitiveAtom } from \"jotai\";\nimport {\n selectLimitTokenFromAtom,\n selectLimitTokenToAtom,\n} from \"@/core/limit/state/selectedTokenActionsAtom\";\nimport {\n selectOtcTokenFromAtom,\n selectOtcTokenToAtom,\n} from \"@/core/otc/state/selectedTokenActionsAtom\";\nimport {\n setLimitPayAmountAtomFromProps,\n setLimitReceiveAmountAtomFromProps,\n} from \"@/core/limit/state/limitInputActionsAtom\";\nimport {\n setOtcPayAmountAtomFromProps,\n setOtcReceiveAmountAtomFromProps,\n} from \"@/core/otc/state/otcInputActionsAtom\";\nimport * as limitDeadline from \"@/core/limit/state/deadlineAtom\";\nimport * as otcDeadline from \"@/core/otc/state/deadlineAtom\";\nimport type { SwapSideUnion } from \"@velora-dex/sdk\";\n\nexport function syncTokensAfterChainSwitch(chainId: SupportedChainId) {\n syncSwapTokensAfterChainSwitch(chainId);\n syncLimitTokensAfterChainSwitch(chainId);\n syncOtcTokensAfterChainSwitch(chainId);\n}\n\nexport const tradeModeToPayAmountUnitAtom: Record<\n TradeMode,\n {\n read: Pick<typeof payInputAmountAtom, \"read\">;\n write: Pick<typeof setLimitPayAmountAtomFromProps, \"write\"> &\n Pick<PrimitiveAtom<string | null>, \"read\">;\n }\n> = {\n swap: { read: payInputAmountAtom, write: payInputAmountAtom },\n limit: {\n read: limitPayInputAmountAtom,\n write: setLimitPayAmountAtomFromProps,\n },\n otc: { read: otcPayInputAmountAtom, write: setOtcPayAmountAtomFromProps },\n};\n\nexport const tradeModeToReceiveAmountUnitAtom: Record<\n TradeMode,\n {\n read: Pick<typeof receiveInputAmountAtom, \"read\">;\n write: Pick<typeof setLimitReceiveAmountAtomFromProps, \"write\"> &\n Pick<PrimitiveAtom<string | null>, \"read\">;\n }\n> = {\n swap: { read: receiveInputAmountAtom, write: receiveInputAmountAtom },\n limit: {\n read: limitReceiveInputAmountAtom,\n write: setLimitReceiveAmountAtomFromProps,\n },\n otc: {\n read: otcReceiveInputAmountAtom,\n write: setOtcReceiveAmountAtomFromProps,\n },\n};\n\nexport const tradeModeToTimeUnitAtom: Record<\n \"limit\" | \"otc\",\n typeof limitDeadline.timeUnitAtom\n> = {\n limit: limitDeadline.timeUnitAtom,\n otc: otcDeadline.timeUnitAtom,\n};\n\nexport const tradeModeToPayAmountWeiAtom: Record<\n TradeMode,\n typeof payInputAmountWeiAtom\n> = {\n swap: payInputAmountWeiAtom,\n limit: limitPayInputAmountWeiAtom,\n otc: otcPayInputAmountWeiAtom,\n};\n\nexport const tradeModeToTokenAtoms: Record<\n TradeMode,\n {\n tokenFromAtom: typeof swapTokenFromAtom;\n tokenToAtom: typeof swapTokenToAtom;\n }\n> = {\n swap: {\n tokenFromAtom: swapTokenFromAtom,\n tokenToAtom: swapTokenToAtom,\n },\n limit: {\n tokenFromAtom: limitTokenFromAtom,\n tokenToAtom: limitTokenToAtom,\n },\n otc: {\n tokenFromAtom: otcTokenFromAtom,\n tokenToAtom: otcTokenToAtom,\n },\n};\n\nexport const tradeModeToSetTokenAtoms: Record<\n TradeMode,\n {\n tokenFromAtom: typeof selectSwapTokenFromAtom;\n tokenToAtom: typeof selectSwapTokenToAtom;\n }\n> = {\n swap: {\n tokenFromAtom: selectSwapTokenFromAtom,\n tokenToAtom: selectSwapTokenToAtom,\n },\n limit: {\n tokenFromAtom: selectLimitTokenFromAtom,\n tokenToAtom: selectLimitTokenToAtom,\n },\n otc: {\n tokenFromAtom: selectOtcTokenFromAtom,\n tokenToAtom: selectOtcTokenToAtom,\n },\n};\n\nexport const sideToInputType: Record<SwapSideUnion, \"from\" | \"to\"> = {\n SELL: \"from\",\n BUY: \"to\",\n};\n\nexport const useWidgetTokens = (tradeMode: TradeMode) => {\n const { tokenFromAtom, tokenToAtom } = tradeModeToTokenAtoms[tradeMode];\n const tokenFrom = useAtomValue(tokenFromAtom);\n const tokenTo = useAtomValue(tokenToAtom);\n return { tokenFrom, tokenTo };\n};\n"],"names":["syncTokensAfterChainSwitch","chainId","syncSwapTokensAfterChainSwitch","syncLimitTokensAfterChainSwitch","syncOtcTokensAfterChainSwitch","tradeModeToPayAmountUnitAtom","swap","read","payInputAmountAtom","write","limit","limitPayInputAmountAtom","setLimitPayAmountAtomFromProps","otc","otcPayInputAmountAtom","setOtcPayAmountAtomFromProps","tradeModeToReceiveAmountUnitAtom","receiveInputAmountAtom","limitReceiveInputAmountAtom","setLimitReceiveAmountAtomFromProps","otcReceiveInputAmountAtom","setOtcReceiveAmountAtomFromProps","tradeModeToTimeUnitAtom","limitDeadline","timeUnitAtom","otcDeadline","tradeModeToPayAmountWeiAtom","payInputAmountWeiAtom","limitPayInputAmountWeiAtom","otcPayInputAmountWeiAtom","tradeModeToTokenAtoms","tokenFromAtom","swapTokenFromAtom","tokenToAtom","swapTokenToAtom","limitTokenFromAtom","limitTokenToAtom","otcTokenFromAtom","otcTokenToAtom","tradeModeToSetTokenAtoms","selectSwapTokenFromAtom","selectSwapTokenToAtom","selectLimitTokenFromAtom","selectLimitTokenToAtom","selectOtcTokenFromAtom","selectOtcTokenToAtom","sideToInputType","SELL","BUY","useWidgetTokens","tradeMode","$","_c","tokenFrom","useAtomValue","tokenTo","t0"],"mappings":"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"}
|
|
@@ -3,5 +3,5 @@ export declare const formInputPropsAtom: import('jotai').PrimitiveAtom<FormInput
|
|
|
3
3
|
init: FormInputProps;
|
|
4
4
|
};
|
|
5
5
|
export declare function useActivateFormInputEffects(): void;
|
|
6
|
-
export declare function useSetFormInputFromProps({ selectedForm, tokenFromAddress, srcChainId, tokenToAddress, destChainId, sendAmount, receiveAmount, side,
|
|
6
|
+
export declare function useSetFormInputFromProps({ selectedForm, tokenFromAddress, srcChainId, tokenToAddress, destChainId, sendAmount, receiveAmount, side, orderDeadline, }?: FormInputProps): void;
|
|
7
7
|
//# sourceMappingURL=setTokenByAddressAtom.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setTokenByAddressAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/setTokenByAddressAtom.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAM9C,eAAO,MAAM,kBAAkB;;CAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"setTokenByAddressAtom.d.ts","sourceRoot":"","sources":["../../../../src/core/inputs/state/setTokenByAddressAtom.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAM9C,eAAO,MAAM,kBAAkB;;CAA2B,CAAC;AA2U3D,wBAAgB,2BAA2B,SAE1C;AAED,wBAAgB,wBAAwB,CAAC,EACvC,YAAY,EACZ,gBAAgB,EAChB,UAAU,EACV,cAAc,EACd,WAAW,EACX,UAAU,EACV,aAAa,EACb,IAAI,EACJ,aAAa,GACd,GAAE,cAAmB,QA6BrB"}
|
|
@@ -11,7 +11,7 @@ import { isSupportedChainId } from '../../../lib/web3/wagmi/utils.js';
|
|
|
11
11
|
import { areTokensSame } from '../../../tokens/utils/areTokensSame.js';
|
|
12
12
|
import { pickDefaultTokenPair } from '../../../tokens/defaultTokens.js';
|
|
13
13
|
import { tradeModeAtom, userTradeModeAtom } from '../../state/tradeModeAtom.js';
|
|
14
|
-
import { tradeModeToTokenAtoms, tradeModeToSetTokenAtoms, tradeModeToPayAmountUnitAtom, tradeModeToReceiveAmountUnitAtom,
|
|
14
|
+
import { tradeModeToTokenAtoms, tradeModeToSetTokenAtoms, sideToInputType, tradeModeToPayAmountUnitAtom, tradeModeToReceiveAmountUnitAtom, tradeModeToTimeUnitAtom } from './common.js';
|
|
15
15
|
import { wrappedNativeCurrency } from '../../../lib/constants/weth.js';
|
|
16
16
|
import { autoAddImportedTokenAtom } from '../../../tokens/state/addImportedTokenAtom.js';
|
|
17
17
|
import { getLogger } from '../../logger.js';
|
|
@@ -20,7 +20,7 @@ import { bridgeInfoAtom } from '../../../hooks/swap/prices/delta/queries/useBrid
|
|
|
20
20
|
import { isTradeMode } from '../../../lib/tradeMode.js';
|
|
21
21
|
import { enabledTradeModesAtom } from '../../state/enabledTradeModesAtom.js';
|
|
22
22
|
import { swapSideAtom } from '../../../components/widget/SwapModeSwitcher/state/swapSideAtom.js';
|
|
23
|
-
import {
|
|
23
|
+
import { currentSwapInputAtom } from '../../state/currentSwapInputAtom.js';
|
|
24
24
|
import { getClosestTimeUnit } from '../../limit/state/utils.js';
|
|
25
25
|
|
|
26
26
|
const formInputPropsAtom = atom({});
|
|
@@ -72,9 +72,7 @@ const formInputPropsEffectAtom = atomEffect((get, set) => {
|
|
|
72
72
|
tokenFromAddress,
|
|
73
73
|
srcChainId,
|
|
74
74
|
sendAmount,
|
|
75
|
-
receiveAmount
|
|
76
|
-
priceRateAmount,
|
|
77
|
-
orderDeadline
|
|
75
|
+
receiveAmount
|
|
78
76
|
} = formInputProps;
|
|
79
77
|
logger.log("using external props to set Widget form input", formInputProps);
|
|
80
78
|
let destChainId = formInputProps.destChainId;
|
|
@@ -159,12 +157,24 @@ const formInputPropsEffectAtom = atomEffect((get, set) => {
|
|
|
159
157
|
}
|
|
160
158
|
let side = formInputProps.side;
|
|
161
159
|
if (isValidSide(side)) {
|
|
162
|
-
set(
|
|
160
|
+
set(currentSwapInputAtom, sideToInputType[side]);
|
|
163
161
|
} else {
|
|
164
|
-
|
|
165
|
-
side
|
|
166
|
-
|
|
167
|
-
|
|
162
|
+
if (side) {
|
|
163
|
+
logger.warn("invalid side provided, must be BUY or SELL", {
|
|
164
|
+
side
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
if (selectedForm === "swap") {
|
|
168
|
+
if (sendAmount && !receiveAmount) {
|
|
169
|
+
side = "SELL";
|
|
170
|
+
} else if (receiveAmount && !sendAmount) {
|
|
171
|
+
side = "BUY";
|
|
172
|
+
} else {
|
|
173
|
+
side = get.peek(swapSideAtom);
|
|
174
|
+
}
|
|
175
|
+
} else {
|
|
176
|
+
side = get.peek(swapSideAtom);
|
|
177
|
+
}
|
|
168
178
|
}
|
|
169
179
|
assert(isValidSide(side), "side must be BUY or SELL");
|
|
170
180
|
const isSwap = selectedForm === "swap";
|
|
@@ -178,7 +188,7 @@ const formInputPropsEffectAtom = atomEffect((get, set) => {
|
|
|
178
188
|
set(formPayAmountAtom.write, sendAmount);
|
|
179
189
|
}
|
|
180
190
|
}
|
|
181
|
-
if (receiveAmount && Number(receiveAmount) >= 0 && isSwapWithBuy) {
|
|
191
|
+
if (receiveAmount && Number(receiveAmount) >= 0 && (isSwapWithBuy || isLimitOrOtc)) {
|
|
182
192
|
const formReceiveAmountAtom = tradeModeToReceiveAmountUnitAtom[selectedForm];
|
|
183
193
|
const currentReceiveAmount = get.peek(formReceiveAmountAtom.read);
|
|
184
194
|
if (currentReceiveAmount !== receiveAmount) {
|
|
@@ -186,19 +196,17 @@ const formInputPropsEffectAtom = atomEffect((get, set) => {
|
|
|
186
196
|
}
|
|
187
197
|
}
|
|
188
198
|
if (selectedForm === "limit" || selectedForm === "otc") {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
const
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
if (currentDeadlineTimeUnit.label !== newDeadlineTimeUnit.label || currentDeadlineTimeUnit.value !== newDeadlineTimeUnit.value) {
|
|
201
|
-
set(timeUnitAtom, newDeadlineTimeUnit);
|
|
199
|
+
const orderDeadline = Number(formInputProps.orderDeadline);
|
|
200
|
+
if (orderDeadline !== void 0 && !isNaN(orderDeadline)) {
|
|
201
|
+
const timeUnitAtom = tradeModeToTimeUnitAtom[selectedForm];
|
|
202
|
+
const currentTimeUnit = get.peek(timeUnitAtom);
|
|
203
|
+
if (currentTimeUnit.timestamp !== orderDeadline) {
|
|
204
|
+
set(timeUnitAtom, {
|
|
205
|
+
// set closest time unit for better UX
|
|
206
|
+
...getClosestTimeUnit(orderDeadline),
|
|
207
|
+
// set exact timestamp
|
|
208
|
+
timestamp: orderDeadline
|
|
209
|
+
});
|
|
202
210
|
}
|
|
203
211
|
}
|
|
204
212
|
}
|
|
@@ -237,7 +245,7 @@ function useActivateFormInputEffects() {
|
|
|
237
245
|
useAtom(formInputPropsEffectAtom);
|
|
238
246
|
}
|
|
239
247
|
function useSetFormInputFromProps(t0) {
|
|
240
|
-
const $ = distExports.c(
|
|
248
|
+
const $ = distExports.c(14);
|
|
241
249
|
let t1;
|
|
242
250
|
if ($[0] !== t0) {
|
|
243
251
|
t1 = t0 === void 0 ? {} : t0;
|
|
@@ -255,13 +263,12 @@ function useSetFormInputFromProps(t0) {
|
|
|
255
263
|
sendAmount,
|
|
256
264
|
receiveAmount,
|
|
257
265
|
side,
|
|
258
|
-
priceRateAmount,
|
|
259
266
|
orderDeadline
|
|
260
267
|
} = t1;
|
|
261
268
|
const setFormInputProps = useSetAtom(formInputPropsAtom);
|
|
262
269
|
let t2;
|
|
263
270
|
let t3;
|
|
264
|
-
if ($[2] !== destChainId || $[3] !== orderDeadline || $[4] !==
|
|
271
|
+
if ($[2] !== destChainId || $[3] !== orderDeadline || $[4] !== receiveAmount || $[5] !== selectedForm || $[6] !== sendAmount || $[7] !== setFormInputProps || $[8] !== side || $[9] !== srcChainId || $[10] !== tokenFromAddress || $[11] !== tokenToAddress) {
|
|
265
272
|
t2 = () => {
|
|
266
273
|
setFormInputProps({
|
|
267
274
|
selectedForm,
|
|
@@ -272,27 +279,25 @@ function useSetFormInputFromProps(t0) {
|
|
|
272
279
|
sendAmount,
|
|
273
280
|
receiveAmount,
|
|
274
281
|
side,
|
|
275
|
-
priceRateAmount,
|
|
276
282
|
orderDeadline
|
|
277
283
|
});
|
|
278
284
|
};
|
|
279
|
-
t3 = [selectedForm, tokenFromAddress, srcChainId, tokenToAddress, destChainId, sendAmount, setFormInputProps, receiveAmount, side,
|
|
285
|
+
t3 = [selectedForm, tokenFromAddress, srcChainId, tokenToAddress, destChainId, sendAmount, setFormInputProps, receiveAmount, side, orderDeadline];
|
|
280
286
|
$[2] = destChainId;
|
|
281
287
|
$[3] = orderDeadline;
|
|
282
|
-
$[4] =
|
|
283
|
-
$[5] =
|
|
284
|
-
$[6] =
|
|
285
|
-
$[7] =
|
|
286
|
-
$[8] =
|
|
287
|
-
$[9] =
|
|
288
|
-
$[10] =
|
|
289
|
-
$[11] =
|
|
290
|
-
$[12] =
|
|
291
|
-
$[13] =
|
|
292
|
-
$[14] = t3;
|
|
288
|
+
$[4] = receiveAmount;
|
|
289
|
+
$[5] = selectedForm;
|
|
290
|
+
$[6] = sendAmount;
|
|
291
|
+
$[7] = setFormInputProps;
|
|
292
|
+
$[8] = side;
|
|
293
|
+
$[9] = srcChainId;
|
|
294
|
+
$[10] = tokenFromAddress;
|
|
295
|
+
$[11] = tokenToAddress;
|
|
296
|
+
$[12] = t2;
|
|
297
|
+
$[13] = t3;
|
|
293
298
|
} else {
|
|
294
|
-
t2 = $[
|
|
295
|
-
t3 = $[
|
|
299
|
+
t2 = $[12];
|
|
300
|
+
t3 = $[13];
|
|
296
301
|
}
|
|
297
302
|
useLayoutEffect(t2, t3);
|
|
298
303
|
}
|