@t2000/sdk 10.17.4 → 10.19.0
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/index.cjs +39 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +39 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -2734,6 +2734,44 @@ var LimitEnforcer = class {
|
|
|
2734
2734
|
return dailySpentToday(this.configDir);
|
|
2735
2735
|
}
|
|
2736
2736
|
};
|
|
2737
|
+
var MemoryLimitEnforcer = class extends LimitEnforcer {
|
|
2738
|
+
limitsMem;
|
|
2739
|
+
spend = { date: todayUtc(), usd: 0 };
|
|
2740
|
+
assert(input) {
|
|
2741
|
+
assertLimitConfig({
|
|
2742
|
+
limits: this.limitsMem,
|
|
2743
|
+
spentTodayUsd: this.dailySpentToday(),
|
|
2744
|
+
operation: input.operation,
|
|
2745
|
+
amountUsd: input.amountUsd,
|
|
2746
|
+
force: input.force
|
|
2747
|
+
});
|
|
2748
|
+
}
|
|
2749
|
+
record(amountUsd) {
|
|
2750
|
+
if (!Number.isFinite(amountUsd) || amountUsd <= 0) return;
|
|
2751
|
+
const today = todayUtc();
|
|
2752
|
+
const prior = this.spend.date === today ? this.spend.usd : 0;
|
|
2753
|
+
this.spend = { date: today, usd: prior + amountUsd };
|
|
2754
|
+
}
|
|
2755
|
+
getLimits() {
|
|
2756
|
+
return this.limitsMem;
|
|
2757
|
+
}
|
|
2758
|
+
hasLimits() {
|
|
2759
|
+
const l = this.limitsMem;
|
|
2760
|
+
return !!l && (l.perTxUsd !== void 0 || l.dailyUsd !== void 0);
|
|
2761
|
+
}
|
|
2762
|
+
setLimits(limits) {
|
|
2763
|
+
const merged = { ...this.limitsMem };
|
|
2764
|
+
if (limits.perTxUsd !== void 0) merged.perTxUsd = limits.perTxUsd;
|
|
2765
|
+
if (limits.dailyUsd !== void 0) merged.dailyUsd = limits.dailyUsd;
|
|
2766
|
+
this.limitsMem = merged;
|
|
2767
|
+
}
|
|
2768
|
+
clearLimits() {
|
|
2769
|
+
this.limitsMem = void 0;
|
|
2770
|
+
}
|
|
2771
|
+
dailySpentToday() {
|
|
2772
|
+
return this.spend.date === todayUtc() ? this.spend.usd : 0;
|
|
2773
|
+
}
|
|
2774
|
+
};
|
|
2737
2775
|
var DEFAULT_CONFIG_DIR2 = path.join(os.homedir(), ".t2000");
|
|
2738
2776
|
var T2000 = class _T2000 extends eventemitter3.EventEmitter {
|
|
2739
2777
|
_signer;
|
|
@@ -2756,7 +2794,7 @@ var T2000 = class _T2000 extends eventemitter3.EventEmitter {
|
|
|
2756
2794
|
this._address = getAddress(kp);
|
|
2757
2795
|
}
|
|
2758
2796
|
this.client = client;
|
|
2759
|
-
this.limits = new LimitEnforcer(configDir);
|
|
2797
|
+
this.limits = isSignerMode ? new MemoryLimitEnforcer() : new LimitEnforcer(configDir);
|
|
2760
2798
|
}
|
|
2761
2799
|
static async create(options = {}) {
|
|
2762
2800
|
const { keyPath, rpcUrl } = options;
|