@arkade-os/sdk 0.4.57 → 0.4.59
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/adapters/expo.cjs +5 -5
- package/dist/adapters/expo.d.cts +2 -2
- package/dist/adapters/expo.d.ts +2 -2
- package/dist/adapters/expo.js +3 -3
- package/dist/adapters/indexedDB.cjs +5 -5
- package/dist/adapters/indexedDB.js +4 -4
- package/dist/{ark-CJgH_pmn.d.cts → ark-C9DsPSm8.d.cts} +83 -3
- package/dist/{ark-CJgH_pmn.d.ts → ark-C9DsPSm8.d.ts} +83 -3
- package/dist/{asyncStorageTaskQueue-BeeZbf-Q.d.ts → asyncStorageTaskQueue-BwuWQ1Qc.d.ts} +1 -1
- package/dist/{asyncStorageTaskQueue-BlrsUUX_.d.cts → asyncStorageTaskQueue-CYHXFfvn.d.cts} +1 -1
- package/dist/{chunk-OWTKOMJZ.cjs → chunk-2XO43UHI.cjs} +40 -40
- package/dist/{chunk-OWTKOMJZ.cjs.map → chunk-2XO43UHI.cjs.map} +1 -1
- package/dist/{chunk-EZBKSWEL.cjs → chunk-7FA36NOA.cjs} +17 -17
- package/dist/{chunk-EZBKSWEL.cjs.map → chunk-7FA36NOA.cjs.map} +1 -1
- package/dist/{chunk-KUN5ZRMW.cjs → chunk-DSTYXT2D.cjs} +45 -10
- package/dist/chunk-DSTYXT2D.cjs.map +1 -0
- package/dist/{chunk-KEG4AAKX.cjs → chunk-DYNB6POO.cjs} +524 -404
- package/dist/chunk-DYNB6POO.cjs.map +1 -0
- package/dist/{chunk-PUNBWFIV.js → chunk-FIMOVH25.js} +41 -11
- package/dist/chunk-FIMOVH25.js.map +1 -0
- package/dist/{chunk-C4SVRVNM.js → chunk-H342JPPZ.js} +4 -4
- package/dist/{chunk-C4SVRVNM.js.map → chunk-H342JPPZ.js.map} +1 -1
- package/dist/{chunk-A7TOVUYG.cjs → chunk-IPFGYVF3.cjs} +9 -9
- package/dist/{chunk-A7TOVUYG.cjs.map → chunk-IPFGYVF3.cjs.map} +1 -1
- package/dist/{chunk-NIZPFPUM.js → chunk-OVSNY3HC.js} +151 -33
- package/dist/chunk-OVSNY3HC.js.map +1 -0
- package/dist/{chunk-P6L2W5IL.js → chunk-PN5RD7ZI.js} +3 -3
- package/dist/{chunk-P6L2W5IL.js.map → chunk-PN5RD7ZI.js.map} +1 -1
- package/dist/{chunk-YK6NP5KX.cjs → chunk-V2KENVN6.cjs} +15 -15
- package/dist/{chunk-YK6NP5KX.cjs.map → chunk-V2KENVN6.cjs.map} +1 -1
- package/dist/{chunk-CPS7V4A3.js → chunk-VSHY5TBY.js} +4 -4
- package/dist/{chunk-CPS7V4A3.js.map → chunk-VSHY5TBY.js.map} +1 -1
- package/dist/{chunk-ASUJNZ63.js → chunk-YEHGCHIL.js} +3 -3
- package/dist/{chunk-ASUJNZ63.js.map → chunk-YEHGCHIL.js.map} +1 -1
- package/dist/contracts/handlers/index.cjs +8 -8
- package/dist/contracts/handlers/index.d.cts +3 -3
- package/dist/contracts/handlers/index.d.ts +3 -3
- package/dist/contracts/handlers/index.js +2 -2
- package/dist/{delegate-DM3YECSY.d.ts → delegate-B_oKWm1k.d.ts} +1 -1
- package/dist/{delegate-Dk-OJVdf.d.cts → delegate-D0eGaz3J.d.cts} +1 -1
- package/dist/{index-Cig0RkTf.d.cts → index-BG2AL2Ie.d.cts} +2 -2
- package/dist/{index-CnE7Gnvb.d.ts → index-BmK6tEqf.d.ts} +2 -2
- package/dist/index.cjs +251 -223
- package/dist/index.d.cts +48 -9
- package/dist/index.d.ts +48 -9
- package/dist/index.js +4 -4
- package/dist/repositories/realm/index.cjs +19 -19
- package/dist/repositories/realm/index.d.cts +2 -2
- package/dist/repositories/realm/index.d.ts +2 -2
- package/dist/repositories/realm/index.js +5 -5
- package/dist/repositories/sqlite/index.cjs +18 -18
- package/dist/repositories/sqlite/index.d.cts +2 -2
- package/dist/repositories/sqlite/index.d.ts +2 -2
- package/dist/repositories/sqlite/index.js +5 -5
- package/dist/{taskRunner-CnGSTaAJ.d.cts → taskRunner-CBvKIttE.d.cts} +1 -1
- package/dist/{taskRunner-F7tWzsrC.d.ts → taskRunner-Cy4Gh8n7.d.ts} +1 -1
- package/dist/wallet/expo/background.cjs +14 -14
- package/dist/wallet/expo/background.d.cts +3 -3
- package/dist/wallet/expo/background.d.ts +3 -3
- package/dist/wallet/expo/background.js +6 -6
- package/dist/wallet/expo/index.cjs +14 -14
- package/dist/wallet/expo/index.d.cts +4 -4
- package/dist/wallet/expo/index.d.ts +4 -4
- package/dist/wallet/expo/index.js +5 -5
- package/dist/{wallet-DvRIQBBY.d.cts → wallet-DlXemAzP.d.cts} +24 -3
- package/dist/{wallet-D6_S0n6B.d.ts → wallet-EyVDhqzP.d.ts} +24 -3
- package/dist/worker/expo/index.cjs +9 -9
- package/dist/worker/expo/index.d.cts +4 -4
- package/dist/worker/expo/index.d.ts +4 -4
- package/dist/worker/expo/index.js +5 -5
- package/package.json +7 -2
- package/dist/chunk-KEG4AAKX.cjs.map +0 -1
- package/dist/chunk-KUN5ZRMW.cjs.map +0 -1
- package/dist/chunk-NIZPFPUM.js.map +0 -1
- package/dist/chunk-PUNBWFIV.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkDSTYXT2D_cjs = require('./chunk-DSTYXT2D.cjs');
|
|
4
4
|
var chunk5BLDMQED_cjs = require('./chunk-5BLDMQED.cjs');
|
|
5
5
|
var base = require('@scure/base');
|
|
6
6
|
var descriptorsScure = require('@bitcoinerlab/descriptors-scure');
|
|
@@ -76,14 +76,14 @@ var ContractHandlerRegistry = class {
|
|
|
76
76
|
var contractHandlers = new ContractHandlerRegistry();
|
|
77
77
|
exports.DefaultVtxo = void 0;
|
|
78
78
|
((DefaultVtxo2) => {
|
|
79
|
-
class Script3 extends
|
|
79
|
+
class Script3 extends chunkDSTYXT2D_cjs.VtxoScript {
|
|
80
80
|
/** Create the default virtual output script with one forfeit path and one exit path. */
|
|
81
81
|
constructor(options) {
|
|
82
82
|
const { pubKey, serverPubKey, csvTimelock } = options;
|
|
83
|
-
const forfeitScript =
|
|
83
|
+
const forfeitScript = chunkDSTYXT2D_cjs.MultisigTapscript.encode({
|
|
84
84
|
pubkeys: [pubKey, serverPubKey]
|
|
85
85
|
}).script;
|
|
86
|
-
const exitScript =
|
|
86
|
+
const exitScript = chunkDSTYXT2D_cjs.CSVMultisigTapscript.encode({
|
|
87
87
|
timelock: csvTimelock,
|
|
88
88
|
pubkeys: [pubKey]
|
|
89
89
|
}).script;
|
|
@@ -263,7 +263,7 @@ function extractPubKeyBytes(value) {
|
|
|
263
263
|
return base.hex.decode(extractPubKey(normalizeToDescriptor(value)));
|
|
264
264
|
}
|
|
265
265
|
function deserializeCsvTimelock(value) {
|
|
266
|
-
return value !== void 0 && value !== "" ?
|
|
266
|
+
return value !== void 0 && value !== "" ? chunkDSTYXT2D_cjs.sequenceToTimelock(Number(value)) : exports.DefaultVtxo.Script.DEFAULT_TIMELOCK;
|
|
267
267
|
}
|
|
268
268
|
var CLTV_HEIGHT_THRESHOLD = 500000000n;
|
|
269
269
|
function isCltvSatisfied(context, locktime) {
|
|
@@ -277,7 +277,7 @@ function isCltvSatisfied(context, locktime) {
|
|
|
277
277
|
function isCsvSpendable(context, sequence) {
|
|
278
278
|
if (sequence === void 0) return true;
|
|
279
279
|
if (!context.vtxo) return false;
|
|
280
|
-
const timelock =
|
|
280
|
+
const timelock = chunkDSTYXT2D_cjs.sequenceToTimelock(sequence);
|
|
281
281
|
if (timelock.type === "blocks") {
|
|
282
282
|
if (context.blockHeight === void 0 || context.vtxo.status.block_height === void 0) {
|
|
283
283
|
return false;
|
|
@@ -335,21 +335,21 @@ function forfeitExitSpendablePaths(script, contract, context) {
|
|
|
335
335
|
async function detectUsedScripts(indexerProvider, scriptHexes) {
|
|
336
336
|
const used = /* @__PURE__ */ new Set();
|
|
337
337
|
const unique = [...new Set(scriptHexes)];
|
|
338
|
-
for (let offset = 0; offset < unique.length; offset +=
|
|
339
|
-
const scripts = unique.slice(offset, offset +
|
|
338
|
+
for (let offset = 0; offset < unique.length; offset += chunkDSTYXT2D_cjs.SCRIPT_QUERY_CHUNK_SIZE) {
|
|
339
|
+
const scripts = unique.slice(offset, offset + chunkDSTYXT2D_cjs.SCRIPT_QUERY_CHUNK_SIZE);
|
|
340
340
|
const remaining = new Set(scripts);
|
|
341
341
|
let pageIndex = 0;
|
|
342
342
|
let hasMore = true;
|
|
343
343
|
while (hasMore && remaining.size > 0) {
|
|
344
|
-
const { vtxos, page } = await
|
|
344
|
+
const { vtxos, page } = await chunkDSTYXT2D_cjs.getNormalizedVtxos(indexerProvider, {
|
|
345
345
|
scripts,
|
|
346
346
|
pageIndex,
|
|
347
|
-
pageSize:
|
|
347
|
+
pageSize: chunkDSTYXT2D_cjs.DEFAULT_PAGE_SIZE
|
|
348
348
|
});
|
|
349
349
|
for (const vtxo of vtxos) {
|
|
350
350
|
if (remaining.delete(vtxo.script)) used.add(vtxo.script);
|
|
351
351
|
}
|
|
352
|
-
hasMore = page ? vtxos.length ===
|
|
352
|
+
hasMore = page ? vtxos.length === chunkDSTYXT2D_cjs.DEFAULT_PAGE_SIZE : false;
|
|
353
353
|
pageIndex++;
|
|
354
354
|
}
|
|
355
355
|
}
|
|
@@ -410,7 +410,7 @@ var DefaultContractHandler = {
|
|
|
410
410
|
return {
|
|
411
411
|
pubKey: base.hex.encode(params.pubKey),
|
|
412
412
|
serverPubKey: base.hex.encode(params.serverPubKey),
|
|
413
|
-
csvTimelock:
|
|
413
|
+
csvTimelock: chunkDSTYXT2D_cjs.timelockToSequence(params.csvTimelock).toString()
|
|
414
414
|
};
|
|
415
415
|
},
|
|
416
416
|
deserializeParams(params) {
|
|
@@ -443,7 +443,7 @@ function defaultCandidatesAt(_index, descriptor, deps) {
|
|
|
443
443
|
params: {
|
|
444
444
|
pubKey: base.hex.encode(c.pubKey),
|
|
445
445
|
serverPubKey: base.hex.encode(c.serverPubKey),
|
|
446
|
-
csvTimelock:
|
|
446
|
+
csvTimelock: chunkDSTYXT2D_cjs.timelockToSequence(c.csvTimelock).toString()
|
|
447
447
|
},
|
|
448
448
|
script: c.scriptHex,
|
|
449
449
|
address: c.script.address(deps.network.hrp, c.serverPubKey).encode()
|
|
@@ -459,12 +459,12 @@ function discoverDefaultRange(entries, deps) {
|
|
|
459
459
|
}
|
|
460
460
|
exports.DelegateVtxo = void 0;
|
|
461
461
|
((DelegateVtxo2) => {
|
|
462
|
-
class Script3 extends
|
|
462
|
+
class Script3 extends chunkDSTYXT2D_cjs.VtxoScript {
|
|
463
463
|
/** Create a delegated virtual output script with forfeit, exit, and delegate paths. */
|
|
464
464
|
constructor(options) {
|
|
465
465
|
const defaultVtxo = new exports.DefaultVtxo.Script(options);
|
|
466
466
|
const { delegatePubKey, pubKey, serverPubKey } = options;
|
|
467
|
-
const delegateScript =
|
|
467
|
+
const delegateScript = chunkDSTYXT2D_cjs.MultisigTapscript.encode({
|
|
468
468
|
pubkeys: [pubKey, delegatePubKey, serverPubKey]
|
|
469
469
|
}).script;
|
|
470
470
|
super([...defaultVtxo.scripts, delegateScript]);
|
|
@@ -503,7 +503,7 @@ var DelegateContractHandler = {
|
|
|
503
503
|
pubKey: base.hex.encode(params.pubKey),
|
|
504
504
|
serverPubKey: base.hex.encode(params.serverPubKey),
|
|
505
505
|
delegatePubKey: base.hex.encode(params.delegatePubKey),
|
|
506
|
-
csvTimelock:
|
|
506
|
+
csvTimelock: chunkDSTYXT2D_cjs.timelockToSequence(params.csvTimelock).toString()
|
|
507
507
|
};
|
|
508
508
|
},
|
|
509
509
|
deserializeParams(params) {
|
|
@@ -545,7 +545,7 @@ function delegateCandidatesAt(_index, descriptor, deps) {
|
|
|
545
545
|
pubKey: base.hex.encode(c.pubKey),
|
|
546
546
|
serverPubKey: base.hex.encode(c.serverPubKey),
|
|
547
547
|
delegatePubKey: base.hex.encode(delegatePubKey),
|
|
548
|
-
csvTimelock:
|
|
548
|
+
csvTimelock: chunkDSTYXT2D_cjs.timelockToSequence(c.csvTimelock).toString()
|
|
549
549
|
},
|
|
550
550
|
script: c.scriptHex,
|
|
551
551
|
address: c.script.address(deps.network.hrp, c.serverPubKey).encode()
|
|
@@ -564,7 +564,7 @@ function discoverDelegateRange(entries, deps) {
|
|
|
564
564
|
}
|
|
565
565
|
exports.VHTLC = void 0;
|
|
566
566
|
((VHTLC2) => {
|
|
567
|
-
class Script3 extends
|
|
567
|
+
class Script3 extends chunkDSTYXT2D_cjs.VtxoScript {
|
|
568
568
|
/** Create a VHTLC script from the supplied participant keys, hash, and timelocks. */
|
|
569
569
|
constructor(options) {
|
|
570
570
|
validateOptions(options);
|
|
@@ -579,27 +579,27 @@ exports.VHTLC = void 0;
|
|
|
579
579
|
unilateralRefundWithoutReceiverDelay
|
|
580
580
|
} = options;
|
|
581
581
|
const conditionScript = preimageConditionScript(preimageHash);
|
|
582
|
-
const claimScript =
|
|
582
|
+
const claimScript = chunkDSTYXT2D_cjs.ConditionMultisigTapscript.encode({
|
|
583
583
|
conditionScript,
|
|
584
584
|
pubkeys: [receiver, server]
|
|
585
585
|
}).script;
|
|
586
|
-
const refundScript =
|
|
586
|
+
const refundScript = chunkDSTYXT2D_cjs.MultisigTapscript.encode({
|
|
587
587
|
pubkeys: [sender, receiver, server]
|
|
588
588
|
}).script;
|
|
589
|
-
const refundWithoutReceiverScript =
|
|
589
|
+
const refundWithoutReceiverScript = chunkDSTYXT2D_cjs.CLTVMultisigTapscript.encode({
|
|
590
590
|
absoluteTimelock: refundLocktime,
|
|
591
591
|
pubkeys: [sender, server]
|
|
592
592
|
}).script;
|
|
593
|
-
const unilateralClaimScript =
|
|
593
|
+
const unilateralClaimScript = chunkDSTYXT2D_cjs.ConditionCSVMultisigTapscript.encode({
|
|
594
594
|
conditionScript,
|
|
595
595
|
timelock: unilateralClaimDelay,
|
|
596
596
|
pubkeys: [receiver]
|
|
597
597
|
}).script;
|
|
598
|
-
const unilateralRefundScript =
|
|
598
|
+
const unilateralRefundScript = chunkDSTYXT2D_cjs.CSVMultisigTapscript.encode({
|
|
599
599
|
timelock: unilateralRefundDelay,
|
|
600
600
|
pubkeys: [sender, receiver]
|
|
601
601
|
}).script;
|
|
602
|
-
const unilateralRefundWithoutReceiverScript =
|
|
602
|
+
const unilateralRefundWithoutReceiverScript = chunkDSTYXT2D_cjs.CSVMultisigTapscript.encode({
|
|
603
603
|
timelock: unilateralRefundWithoutReceiverDelay,
|
|
604
604
|
pubkeys: [sender]
|
|
605
605
|
}).script;
|
|
@@ -727,9 +727,9 @@ var VHTLCContractHandler = {
|
|
|
727
727
|
server: base.hex.encode(params.server),
|
|
728
728
|
hash: base.hex.encode(params.preimageHash),
|
|
729
729
|
refundLocktime: params.refundLocktime.toString(),
|
|
730
|
-
claimDelay:
|
|
731
|
-
refundDelay:
|
|
732
|
-
refundNoReceiverDelay:
|
|
730
|
+
claimDelay: chunkDSTYXT2D_cjs.timelockToSequence(params.unilateralClaimDelay).toString(),
|
|
731
|
+
refundDelay: chunkDSTYXT2D_cjs.timelockToSequence(params.unilateralRefundDelay).toString(),
|
|
732
|
+
refundNoReceiverDelay: chunkDSTYXT2D_cjs.timelockToSequence(
|
|
733
733
|
params.unilateralRefundWithoutReceiverDelay
|
|
734
734
|
).toString()
|
|
735
735
|
};
|
|
@@ -741,9 +741,9 @@ var VHTLCContractHandler = {
|
|
|
741
741
|
server: base.hex.decode(params.server),
|
|
742
742
|
preimageHash: base.hex.decode(params.hash),
|
|
743
743
|
refundLocktime: BigInt(params.refundLocktime),
|
|
744
|
-
unilateralClaimDelay:
|
|
745
|
-
unilateralRefundDelay:
|
|
746
|
-
unilateralRefundWithoutReceiverDelay:
|
|
744
|
+
unilateralClaimDelay: chunkDSTYXT2D_cjs.sequenceToTimelock(Number(params.claimDelay)),
|
|
745
|
+
unilateralRefundDelay: chunkDSTYXT2D_cjs.sequenceToTimelock(Number(params.refundDelay)),
|
|
746
|
+
unilateralRefundWithoutReceiverDelay: chunkDSTYXT2D_cjs.sequenceToTimelock(
|
|
747
747
|
Number(params.refundNoReceiverDelay)
|
|
748
748
|
)
|
|
749
749
|
};
|
|
@@ -936,7 +936,7 @@ var BoardingContractHandler = {
|
|
|
936
936
|
const coins = await deps.onchainProvider.getCoins(onchainAddress);
|
|
937
937
|
if (coins.length === 0) return [];
|
|
938
938
|
const scriptHex = base.hex.encode(script.pkScript);
|
|
939
|
-
const boardingSeq =
|
|
939
|
+
const boardingSeq = chunkDSTYXT2D_cjs.timelockToSequence(deps.boardingTimelock);
|
|
940
940
|
return [
|
|
941
941
|
{
|
|
942
942
|
type: "boarding",
|
|
@@ -1917,27 +1917,27 @@ function encodeTapscriptSegment(seg, pubkeys, args) {
|
|
|
1917
1917
|
if (seg.csv) {
|
|
1918
1918
|
const timelock = { type: seg.csv.type, value: resolveTimelockValue(seg.csv.value, args) };
|
|
1919
1919
|
if (seg.asm) {
|
|
1920
|
-
return
|
|
1920
|
+
return chunkDSTYXT2D_cjs.ConditionCSVMultisigTapscript.encode({
|
|
1921
1921
|
conditionScript: resolveAsm(seg.asm, args),
|
|
1922
1922
|
timelock,
|
|
1923
1923
|
pubkeys
|
|
1924
1924
|
});
|
|
1925
1925
|
}
|
|
1926
|
-
return
|
|
1926
|
+
return chunkDSTYXT2D_cjs.CSVMultisigTapscript.encode({ timelock, pubkeys });
|
|
1927
1927
|
}
|
|
1928
1928
|
if (seg.cltv !== void 0) {
|
|
1929
|
-
return
|
|
1929
|
+
return chunkDSTYXT2D_cjs.CLTVMultisigTapscript.encode({
|
|
1930
1930
|
absoluteTimelock: resolveTimelockValue(seg.cltv, args),
|
|
1931
1931
|
pubkeys
|
|
1932
1932
|
});
|
|
1933
1933
|
}
|
|
1934
1934
|
if (seg.asm) {
|
|
1935
|
-
return
|
|
1935
|
+
return chunkDSTYXT2D_cjs.ConditionMultisigTapscript.encode({
|
|
1936
1936
|
conditionScript: resolveAsm(seg.asm, args),
|
|
1937
1937
|
pubkeys
|
|
1938
1938
|
});
|
|
1939
1939
|
}
|
|
1940
|
-
return
|
|
1940
|
+
return chunkDSTYXT2D_cjs.MultisigTapscript.encode({ pubkeys });
|
|
1941
1941
|
}
|
|
1942
1942
|
function compileFunctions(program, args, keys) {
|
|
1943
1943
|
if (program.version !== SUPPORTED_PROGRAM_VERSION) {
|
|
@@ -1967,7 +1967,7 @@ function compileFunctions(program, args, keys) {
|
|
|
1967
1967
|
return { name: names[i], def, leafScript, arkadeScript, signerKeys: pubkeys };
|
|
1968
1968
|
});
|
|
1969
1969
|
}
|
|
1970
|
-
var ArkadeProgramScript = class extends
|
|
1970
|
+
var ArkadeProgramScript = class extends chunkDSTYXT2D_cjs.VtxoScript {
|
|
1971
1971
|
constructor(program, args, keys) {
|
|
1972
1972
|
const partial = compileFunctions(program, args, keys);
|
|
1973
1973
|
super(partial.map((p) => p.leafScript));
|
|
@@ -2180,7 +2180,7 @@ function pathsFor(script, context, opts) {
|
|
|
2180
2180
|
continue;
|
|
2181
2181
|
}
|
|
2182
2182
|
if (requiresServer) continue;
|
|
2183
|
-
const sequence = csv ? Number(
|
|
2183
|
+
const sequence = csv ? Number(chunkDSTYXT2D_cjs.timelockToSequence(csv)) : void 0;
|
|
2184
2184
|
if (opts.checkTimelocks && csv && !isCsvSpendable(context, sequence)) continue;
|
|
2185
2185
|
if (opts.checkTimelocks && cltv !== void 0 && !isCltvSatisfied(context, cltv)) {
|
|
2186
2186
|
continue;
|
|
@@ -2291,5 +2291,5 @@ exports.stringifyArtifact = stringifyArtifact;
|
|
|
2291
2291
|
exports.toASM = toASM;
|
|
2292
2292
|
exports.validateProgram = validateProgram;
|
|
2293
2293
|
exports.witnessRefToBytes = witnessRefToBytes;
|
|
2294
|
-
//# sourceMappingURL=chunk-
|
|
2295
|
-
//# sourceMappingURL=chunk-
|
|
2294
|
+
//# sourceMappingURL=chunk-2XO43UHI.cjs.map
|
|
2295
|
+
//# sourceMappingURL=chunk-2XO43UHI.cjs.map
|