@flaunch/sdk 0.3.1 → 0.4.1

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 (86) hide show
  1. package/README.md +78 -0
  2. package/dist/abi/BidWallV1_1.d.ts +740 -0
  3. package/dist/abi/BidWallV1_1.d.ts.map +1 -0
  4. package/dist/abi/FairLaunchV1_1.d.ts +522 -0
  5. package/dist/abi/FairLaunchV1_1.d.ts.map +1 -0
  6. package/dist/abi/FastFlaunchZap.d.ts +30 -20
  7. package/dist/abi/FastFlaunchZap.d.ts.map +1 -1
  8. package/dist/abi/FlaunchPositionManagerV1_1.d.ts +2053 -0
  9. package/dist/abi/FlaunchPositionManagerV1_1.d.ts.map +1 -0
  10. package/dist/abi/FlaunchV1_1.d.ts +850 -0
  11. package/dist/abi/FlaunchV1_1.d.ts.map +1 -0
  12. package/dist/abi/FlaunchZap.d.ts +330 -0
  13. package/dist/abi/FlaunchZap.d.ts.map +1 -0
  14. package/dist/abi/Multicall.d.ts +333 -0
  15. package/dist/abi/Multicall.d.ts.map +1 -0
  16. package/dist/abi/RevenueManager.d.ts +648 -0
  17. package/dist/abi/RevenueManager.d.ts.map +1 -0
  18. package/dist/abi/TreasuryManagerFactory.d.ts +434 -0
  19. package/dist/abi/TreasuryManagerFactory.d.ts.map +1 -0
  20. package/dist/abi/index.cjs +27 -58
  21. package/dist/abi/index.cjs.map +1 -1
  22. package/dist/abi/index.js +27 -58
  23. package/dist/abi/index.js.map +1 -1
  24. package/dist/addresses/index.cjs +127 -91
  25. package/dist/addresses/index.cjs.map +1 -1
  26. package/dist/addresses/index.js +121 -92
  27. package/dist/addresses/index.js.map +1 -1
  28. package/dist/addresses.d.ts +7 -0
  29. package/dist/addresses.d.ts.map +1 -1
  30. package/dist/clients/BidWallClient.d.ts +20 -0
  31. package/dist/clients/BidWallClient.d.ts.map +1 -1
  32. package/dist/clients/BidWallV1_1Client.d.ts +46 -0
  33. package/dist/clients/BidWallV1_1Client.d.ts.map +1 -0
  34. package/dist/clients/FairLaunchClient.d.ts +20 -0
  35. package/dist/clients/FairLaunchClient.d.ts.map +1 -1
  36. package/dist/clients/FairLaunchV1_1Client.d.ts +50 -0
  37. package/dist/clients/FairLaunchV1_1Client.d.ts.map +1 -0
  38. package/dist/clients/FastFlaunchClient.d.ts +40 -0
  39. package/dist/clients/FastFlaunchClient.d.ts.map +1 -1
  40. package/dist/clients/FlaunchClient.d.ts +26 -0
  41. package/dist/clients/FlaunchClient.d.ts.map +1 -1
  42. package/dist/clients/FlaunchPositionManagerV1_1Client.d.ts +90 -0
  43. package/dist/clients/FlaunchPositionManagerV1_1Client.d.ts.map +1 -0
  44. package/dist/clients/FlaunchV1_1Client.d.ts +31 -0
  45. package/dist/clients/FlaunchV1_1Client.d.ts.map +1 -0
  46. package/dist/clients/FlaunchZapClient.d.ts +70 -0
  47. package/dist/clients/FlaunchZapClient.d.ts.map +1 -0
  48. package/dist/clients/MemecoinClient.d.ts +27 -0
  49. package/dist/clients/MemecoinClient.d.ts.map +1 -1
  50. package/dist/clients/MulticallClient.d.ts +16 -0
  51. package/dist/clients/MulticallClient.d.ts.map +1 -0
  52. package/dist/clients/Permit2Client.d.ts +17 -0
  53. package/dist/clients/Permit2Client.d.ts.map +1 -1
  54. package/dist/clients/QuoterClient.d.ts +39 -3
  55. package/dist/clients/QuoterClient.d.ts.map +1 -1
  56. package/dist/clients/RevenueManagerClient.d.ts +68 -0
  57. package/dist/clients/RevenueManagerClient.d.ts.map +1 -0
  58. package/dist/clients/StateViewClient.d.ts +30 -0
  59. package/dist/clients/StateViewClient.d.ts.map +1 -1
  60. package/dist/clients/TreasuryManagerFactoryClient.d.ts +24 -0
  61. package/dist/clients/TreasuryManagerFactoryClient.d.ts.map +1 -0
  62. package/dist/helpers/chainIdToChain.d.ts +5 -0
  63. package/dist/helpers/chainIdToChain.d.ts.map +1 -0
  64. package/dist/helpers/index.cjs +5310 -0
  65. package/dist/helpers/index.cjs.map +1 -1
  66. package/dist/helpers/index.d.ts +1 -0
  67. package/dist/helpers/index.d.ts.map +1 -1
  68. package/dist/helpers/index.js +5313 -4
  69. package/dist/helpers/index.js.map +1 -1
  70. package/dist/hooks/FlaunchPositionManagerHooks.d.ts +42 -0
  71. package/dist/hooks/FlaunchPositionManagerHooks.d.ts.map +1 -1
  72. package/dist/hooks/index.cjs +95 -0
  73. package/dist/hooks/index.cjs.map +1 -1
  74. package/dist/hooks/index.js +94 -1
  75. package/dist/hooks/index.js.map +1 -1
  76. package/dist/index.cjs.js +17284 -11191
  77. package/dist/index.cjs.js.map +1 -1
  78. package/dist/index.esm.js +17282 -11197
  79. package/dist/index.esm.js.map +1 -1
  80. package/dist/index.umd.js +1 -1
  81. package/dist/index.umd.js.map +1 -1
  82. package/dist/sdk/FlaunchSDK.d.ts +342 -15
  83. package/dist/sdk/FlaunchSDK.d.ts.map +1 -1
  84. package/dist/utils/universalRouter.d.ts +2 -0
  85. package/dist/utils/universalRouter.d.ts.map +1 -1
  86. package/package.json +8 -3
@@ -1,12 +1,54 @@
1
1
  import { BuySwapLog, PoolCreatedLogs, SellSwapLog } from "../clients/FlaunchPositionManagerClient";
2
2
  import { ReadFlaunchSDK } from "../sdk/FlaunchSDK";
3
3
  import { Address } from "viem";
4
+ /**
5
+ * Hook to watch and track pool creation events from the Flaunch V1.1 contract
6
+ * @param flaunch - Instance of ReadFlaunchSDK to interact with the contract
7
+ * @param startBlockNumber - Optional block number to start watching events from
8
+ * @returns Object containing:
9
+ * - logs: Array of pool creation events in reverse chronological order
10
+ * - isFetchingFromStart: Boolean indicating if initial historical events are being fetched
11
+ */
4
12
  export declare function usePoolCreatedEvents(flaunch: ReadFlaunchSDK, startBlockNumber?: bigint): {
5
13
  logs: PoolCreatedLogs;
6
14
  isFetchingFromStart: boolean;
7
15
  };
16
+ /**
17
+ * Hook to watch and track swap events (buys/sells) for a specific coin from the Flaunch V1.1 contract
18
+ * @param flaunch - Instance of ReadFlaunchSDK to interact with the contract
19
+ * @param coinAddress - Address of the coin to watch swaps for
20
+ * @param startBlockNumber - Optional block number to start watching events from
21
+ * @returns Object containing:
22
+ * - logs: Array of swap events (both buys and sells) in reverse chronological order
23
+ * - isFetchingFromStart: Boolean indicating if initial historical events are being fetched
24
+ */
8
25
  export declare function usePoolSwapEvents(flaunch: ReadFlaunchSDK, coinAddress: Address, startBlockNumber?: bigint): {
9
26
  logs: (BuySwapLog | SellSwapLog)[];
10
27
  isFetchingFromStart: boolean;
11
28
  };
29
+ /**
30
+ * Hook to watch and track pool creation events from the Flaunch V1 contract
31
+ * @param flaunch - Instance of ReadFlaunchSDK to interact with the contract
32
+ * @param startBlockNumber - Optional block number to start watching events from
33
+ * @returns Object containing:
34
+ * - logs: Array of pool creation events in reverse chronological order
35
+ * - isFetchingFromStart: Boolean indicating if initial historical events are being fetched
36
+ */
37
+ export declare function usePoolCreatedEventsV1(flaunch: ReadFlaunchSDK, startBlockNumber?: bigint): {
38
+ logs: PoolCreatedLogs;
39
+ isFetchingFromStart: boolean;
40
+ };
41
+ /**
42
+ * Hook to watch and track swap events (buys/sells) for a specific coin from the Flaunch V1 contract
43
+ * @param flaunch - Instance of ReadFlaunchSDK to interact with the contract
44
+ * @param coinAddress - Address of the coin to watch swaps for
45
+ * @param startBlockNumber - Optional block number to start watching events from
46
+ * @returns Object containing:
47
+ * - logs: Array of swap events (both buys and sells) in reverse chronological order
48
+ * - isFetchingFromStart: Boolean indicating if initial historical events are being fetched
49
+ */
50
+ export declare function usePoolSwapEventsV1(flaunch: ReadFlaunchSDK, coinAddress: Address, startBlockNumber?: bigint): {
51
+ logs: (BuySwapLog | SellSwapLog)[];
52
+ isFetchingFromStart: boolean;
53
+ };
12
54
  //# sourceMappingURL=FlaunchPositionManagerHooks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FlaunchPositionManagerHooks.d.ts","sourceRoot":"","sources":["../../src/hooks/FlaunchPositionManagerHooks.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EACV,eAAe,EACf,WAAW,EACZ,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,cAAc,EACvB,gBAAgB,CAAC,EAAE,MAAM;;;EAmC1B;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,OAAO,EACpB,gBAAgB,CAAC,EAAE,MAAM;;;EAoC1B"}
1
+ {"version":3,"file":"FlaunchPositionManagerHooks.d.ts","sourceRoot":"","sources":["../../src/hooks/FlaunchPositionManagerHooks.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EACV,eAAe,EACf,WAAW,EACZ,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,cAAc,EACvB,gBAAgB,CAAC,EAAE,MAAM;;;EAmC1B;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,OAAO,EACpB,gBAAgB,CAAC,EAAE,MAAM;;;EAoC1B;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,cAAc,EACvB,gBAAgB,CAAC,EAAE,MAAM;;;EAmC1B;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,OAAO,EACpB,gBAAgB,CAAC,EAAE,MAAM;;;EAoC1B"}
@@ -4,6 +4,14 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var react = require('react');
6
6
 
7
+ /**
8
+ * Hook to watch and track pool creation events from the Flaunch V1.1 contract
9
+ * @param flaunch - Instance of ReadFlaunchSDK to interact with the contract
10
+ * @param startBlockNumber - Optional block number to start watching events from
11
+ * @returns Object containing:
12
+ * - logs: Array of pool creation events in reverse chronological order
13
+ * - isFetchingFromStart: Boolean indicating if initial historical events are being fetched
14
+ */
7
15
  function usePoolCreatedEvents(flaunch, startBlockNumber) {
8
16
  const [logs, setLogs] = react.useState([]);
9
17
  const [isFetchingFromStart, setIsFetchingFromStart] = react.useState(false);
@@ -33,6 +41,15 @@ function usePoolCreatedEvents(flaunch, startBlockNumber) {
33
41
  }, []);
34
42
  return { logs, isFetchingFromStart };
35
43
  }
44
+ /**
45
+ * Hook to watch and track swap events (buys/sells) for a specific coin from the Flaunch V1.1 contract
46
+ * @param flaunch - Instance of ReadFlaunchSDK to interact with the contract
47
+ * @param coinAddress - Address of the coin to watch swaps for
48
+ * @param startBlockNumber - Optional block number to start watching events from
49
+ * @returns Object containing:
50
+ * - logs: Array of swap events (both buys and sells) in reverse chronological order
51
+ * - isFetchingFromStart: Boolean indicating if initial historical events are being fetched
52
+ */
36
53
  function usePoolSwapEvents(flaunch, coinAddress, startBlockNumber) {
37
54
  const [logs, setLogs] = react.useState([]);
38
55
  const [isFetchingFromStart, setIsFetchingFromStart] = react.useState(false);
@@ -63,7 +80,85 @@ function usePoolSwapEvents(flaunch, coinAddress, startBlockNumber) {
63
80
  }, []);
64
81
  return { logs, isFetchingFromStart };
65
82
  }
83
+ /**
84
+ * Hook to watch and track pool creation events from the Flaunch V1 contract
85
+ * @param flaunch - Instance of ReadFlaunchSDK to interact with the contract
86
+ * @param startBlockNumber - Optional block number to start watching events from
87
+ * @returns Object containing:
88
+ * - logs: Array of pool creation events in reverse chronological order
89
+ * - isFetchingFromStart: Boolean indicating if initial historical events are being fetched
90
+ */
91
+ function usePoolCreatedEventsV1(flaunch, startBlockNumber) {
92
+ const [logs, setLogs] = react.useState([]);
93
+ const [isFetchingFromStart, setIsFetchingFromStart] = react.useState(false);
94
+ react.useEffect(() => {
95
+ const setupWatcher = async () => {
96
+ const cleanup = await flaunch.watchPoolCreatedV1({
97
+ onPoolCreated: ({ logs: newLogs, isFetchingFromStart }) => {
98
+ setIsFetchingFromStart(isFetchingFromStart);
99
+ setLogs((prevLogs) => [...newLogs, ...prevLogs]);
100
+ },
101
+ startBlockNumber,
102
+ });
103
+ return cleanup;
104
+ };
105
+ const cleanupPromise = setupWatcher();
106
+ return () => {
107
+ cleanupPromise.then(({ cleanup }) => cleanup());
108
+ };
109
+ }, [flaunch.chainId, startBlockNumber]);
110
+ // Add effect to update times
111
+ react.useEffect(() => {
112
+ const timer = setInterval(() => {
113
+ // Force re-render to update relative times
114
+ setLogs((prev) => [...prev]);
115
+ }, 1000);
116
+ return () => clearInterval(timer);
117
+ }, []);
118
+ return { logs, isFetchingFromStart };
119
+ }
120
+ /**
121
+ * Hook to watch and track swap events (buys/sells) for a specific coin from the Flaunch V1 contract
122
+ * @param flaunch - Instance of ReadFlaunchSDK to interact with the contract
123
+ * @param coinAddress - Address of the coin to watch swaps for
124
+ * @param startBlockNumber - Optional block number to start watching events from
125
+ * @returns Object containing:
126
+ * - logs: Array of swap events (both buys and sells) in reverse chronological order
127
+ * - isFetchingFromStart: Boolean indicating if initial historical events are being fetched
128
+ */
129
+ function usePoolSwapEventsV1(flaunch, coinAddress, startBlockNumber) {
130
+ const [logs, setLogs] = react.useState([]);
131
+ const [isFetchingFromStart, setIsFetchingFromStart] = react.useState(false);
132
+ react.useEffect(() => {
133
+ const setupWatcher = async () => {
134
+ const cleanup = await flaunch.watchPoolSwapV1({
135
+ onPoolSwap: ({ logs: newLogs, isFetchingFromStart }) => {
136
+ setIsFetchingFromStart(isFetchingFromStart);
137
+ setLogs((prevLogs) => [...newLogs, ...prevLogs]);
138
+ },
139
+ filterByCoin: coinAddress,
140
+ startBlockNumber,
141
+ });
142
+ return cleanup;
143
+ };
144
+ const cleanupPromise = setupWatcher();
145
+ return () => {
146
+ cleanupPromise.then(({ cleanup }) => cleanup());
147
+ };
148
+ }, [flaunch.chainId, coinAddress, startBlockNumber]);
149
+ // Add effect to update times
150
+ react.useEffect(() => {
151
+ const timer = setInterval(() => {
152
+ // Force re-render to update relative times
153
+ setLogs((prev) => [...prev]);
154
+ }, 1000);
155
+ return () => clearInterval(timer);
156
+ }, []);
157
+ return { logs, isFetchingFromStart };
158
+ }
66
159
 
67
160
  exports.usePoolCreatedEvents = usePoolCreatedEvents;
161
+ exports.usePoolCreatedEventsV1 = usePoolCreatedEventsV1;
68
162
  exports.usePoolSwapEvents = usePoolSwapEvents;
163
+ exports.usePoolSwapEventsV1 = usePoolSwapEventsV1;
69
164
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/hooks/FlaunchPositionManagerHooks.ts"],"sourcesContent":[null],"names":["useState","useEffect"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/hooks/FlaunchPositionManagerHooks.ts"],"sourcesContent":[null],"names":["useState","useEffect"],"mappings":"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"}
@@ -1,5 +1,13 @@
1
1
  import { useState, useEffect } from 'react';
2
2
 
3
+ /**
4
+ * Hook to watch and track pool creation events from the Flaunch V1.1 contract
5
+ * @param flaunch - Instance of ReadFlaunchSDK to interact with the contract
6
+ * @param startBlockNumber - Optional block number to start watching events from
7
+ * @returns Object containing:
8
+ * - logs: Array of pool creation events in reverse chronological order
9
+ * - isFetchingFromStart: Boolean indicating if initial historical events are being fetched
10
+ */
3
11
  function usePoolCreatedEvents(flaunch, startBlockNumber) {
4
12
  const [logs, setLogs] = useState([]);
5
13
  const [isFetchingFromStart, setIsFetchingFromStart] = useState(false);
@@ -29,6 +37,15 @@ function usePoolCreatedEvents(flaunch, startBlockNumber) {
29
37
  }, []);
30
38
  return { logs, isFetchingFromStart };
31
39
  }
40
+ /**
41
+ * Hook to watch and track swap events (buys/sells) for a specific coin from the Flaunch V1.1 contract
42
+ * @param flaunch - Instance of ReadFlaunchSDK to interact with the contract
43
+ * @param coinAddress - Address of the coin to watch swaps for
44
+ * @param startBlockNumber - Optional block number to start watching events from
45
+ * @returns Object containing:
46
+ * - logs: Array of swap events (both buys and sells) in reverse chronological order
47
+ * - isFetchingFromStart: Boolean indicating if initial historical events are being fetched
48
+ */
32
49
  function usePoolSwapEvents(flaunch, coinAddress, startBlockNumber) {
33
50
  const [logs, setLogs] = useState([]);
34
51
  const [isFetchingFromStart, setIsFetchingFromStart] = useState(false);
@@ -59,6 +76,82 @@ function usePoolSwapEvents(flaunch, coinAddress, startBlockNumber) {
59
76
  }, []);
60
77
  return { logs, isFetchingFromStart };
61
78
  }
79
+ /**
80
+ * Hook to watch and track pool creation events from the Flaunch V1 contract
81
+ * @param flaunch - Instance of ReadFlaunchSDK to interact with the contract
82
+ * @param startBlockNumber - Optional block number to start watching events from
83
+ * @returns Object containing:
84
+ * - logs: Array of pool creation events in reverse chronological order
85
+ * - isFetchingFromStart: Boolean indicating if initial historical events are being fetched
86
+ */
87
+ function usePoolCreatedEventsV1(flaunch, startBlockNumber) {
88
+ const [logs, setLogs] = useState([]);
89
+ const [isFetchingFromStart, setIsFetchingFromStart] = useState(false);
90
+ useEffect(() => {
91
+ const setupWatcher = async () => {
92
+ const cleanup = await flaunch.watchPoolCreatedV1({
93
+ onPoolCreated: ({ logs: newLogs, isFetchingFromStart }) => {
94
+ setIsFetchingFromStart(isFetchingFromStart);
95
+ setLogs((prevLogs) => [...newLogs, ...prevLogs]);
96
+ },
97
+ startBlockNumber,
98
+ });
99
+ return cleanup;
100
+ };
101
+ const cleanupPromise = setupWatcher();
102
+ return () => {
103
+ cleanupPromise.then(({ cleanup }) => cleanup());
104
+ };
105
+ }, [flaunch.chainId, startBlockNumber]);
106
+ // Add effect to update times
107
+ useEffect(() => {
108
+ const timer = setInterval(() => {
109
+ // Force re-render to update relative times
110
+ setLogs((prev) => [...prev]);
111
+ }, 1000);
112
+ return () => clearInterval(timer);
113
+ }, []);
114
+ return { logs, isFetchingFromStart };
115
+ }
116
+ /**
117
+ * Hook to watch and track swap events (buys/sells) for a specific coin from the Flaunch V1 contract
118
+ * @param flaunch - Instance of ReadFlaunchSDK to interact with the contract
119
+ * @param coinAddress - Address of the coin to watch swaps for
120
+ * @param startBlockNumber - Optional block number to start watching events from
121
+ * @returns Object containing:
122
+ * - logs: Array of swap events (both buys and sells) in reverse chronological order
123
+ * - isFetchingFromStart: Boolean indicating if initial historical events are being fetched
124
+ */
125
+ function usePoolSwapEventsV1(flaunch, coinAddress, startBlockNumber) {
126
+ const [logs, setLogs] = useState([]);
127
+ const [isFetchingFromStart, setIsFetchingFromStart] = useState(false);
128
+ useEffect(() => {
129
+ const setupWatcher = async () => {
130
+ const cleanup = await flaunch.watchPoolSwapV1({
131
+ onPoolSwap: ({ logs: newLogs, isFetchingFromStart }) => {
132
+ setIsFetchingFromStart(isFetchingFromStart);
133
+ setLogs((prevLogs) => [...newLogs, ...prevLogs]);
134
+ },
135
+ filterByCoin: coinAddress,
136
+ startBlockNumber,
137
+ });
138
+ return cleanup;
139
+ };
140
+ const cleanupPromise = setupWatcher();
141
+ return () => {
142
+ cleanupPromise.then(({ cleanup }) => cleanup());
143
+ };
144
+ }, [flaunch.chainId, coinAddress, startBlockNumber]);
145
+ // Add effect to update times
146
+ useEffect(() => {
147
+ const timer = setInterval(() => {
148
+ // Force re-render to update relative times
149
+ setLogs((prev) => [...prev]);
150
+ }, 1000);
151
+ return () => clearInterval(timer);
152
+ }, []);
153
+ return { logs, isFetchingFromStart };
154
+ }
62
155
 
63
- export { usePoolCreatedEvents, usePoolSwapEvents };
156
+ export { usePoolCreatedEvents, usePoolCreatedEventsV1, usePoolSwapEvents, usePoolSwapEventsV1 };
64
157
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/hooks/FlaunchPositionManagerHooks.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/hooks/FlaunchPositionManagerHooks.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}