@opencode/browse 0.0.8-dev.36 → 0.0.8-dev.38
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/{cli-t2hbftpz.mjs → cli-311zm8ab.mjs} +10 -10
- package/dist/cli.mjs +10 -10
- package/dist/{helpers-6h6q8p9b.mjs → helpers-b4d4sgps.mjs} +2 -2
- package/dist/{index-yghakpfn.mjs → index-8v65jg3n.mjs} +1 -1
- package/dist/{main-pybftexc.mjs → main-4kzz748p.mjs} +2 -2
- package/dist/main-7fjsxr93.mjs +4 -0
- package/dist/{main-evpvxp5p.mjs → main-7mhya2p5.mjs} +1 -1
- package/dist/{main-jqady4pw.mjs → main-jfv7n10a.mjs} +2 -2
- package/dist/{main-0qe3a59f.mjs → main-kcfxnvrv.mjs} +4 -4
- package/dist/{main-brs53cap.mjs → main-kxbs88e4.mjs} +11 -3
- package/dist/{main-131yag9b.mjs → main-t4vvf2np.mjs} +4 -4
- package/dist/{main-9z6jbwdp.mjs → main-ta3yc4kx.mjs} +120 -34
- package/dist/{main-jyebwaqp.mjs → main-vtchyn7z.mjs} +5 -5
- package/dist/{main-0jhjvcrn.mjs → main-zc2xv4zh.mjs} +2 -2
- package/dist/{mcp-skdz88j0.mjs → mcp-2mwgcwxj.mjs} +1099 -25
- package/dist/{relay-cd0k9sty.mjs → relay-gkhqehjr.mjs} +10 -10
- package/dist/{runtime-update-njmqcdep.mjs → runtime-update-fy17bbgp.mjs} +5 -5
- package/dist/{setup-yj15s35p.mjs → setup-bxsscbsv.mjs} +5 -5
- package/dist/{supervisor-fmwtcxfy.mjs → supervisor-nc3f21gp.mjs} +3 -3
- package/dist/{update-y6xtyvjk.mjs → update-gh353r7m.mjs} +3 -3
- package/dist/{version-wc252mwz.mjs → version-hz07v1q8.mjs} +1 -1
- package/package.json +1 -1
- package/dist/main-g25csbpx.mjs +0 -4
|
@@ -1277,7 +1277,7 @@ var fromUndefinedOr = (a) => a === undefined ? none() : some(a);
|
|
|
1277
1277
|
var getOrUndefined = /* @__PURE__ */ getOrElse(constUndefined);
|
|
1278
1278
|
var map = /* @__PURE__ */ dual(2, (self, f) => isNone(self) ? none() : some(f(self.value)));
|
|
1279
1279
|
var flatMap = /* @__PURE__ */ dual(2, (self, f) => isNone(self) ? none() : f(self.value));
|
|
1280
|
-
var
|
|
1280
|
+
var filter2 = /* @__PURE__ */ dual(2, (self, predicate) => isNone(self) ? none() : predicate(self.value) ? some(self.value) : none());
|
|
1281
1281
|
var exists = /* @__PURE__ */ dual(2, (self, refinement) => isNone(self) ? false : refinement(self.value));
|
|
1282
1282
|
|
|
1283
1283
|
// node_modules/effect/dist/Context.js
|
|
@@ -1944,6 +1944,7 @@ var constEmptyIterator = {
|
|
|
1944
1944
|
};
|
|
1945
1945
|
|
|
1946
1946
|
// node_modules/effect/dist/Record.js
|
|
1947
|
+
var empty6 = () => ({});
|
|
1947
1948
|
var has = /* @__PURE__ */ dual(2, (self, key) => Object.hasOwn(self, key));
|
|
1948
1949
|
var map6 = /* @__PURE__ */ dual(2, (self, f) => {
|
|
1949
1950
|
const out = {
|
|
@@ -1954,6 +1955,15 @@ var map6 = /* @__PURE__ */ dual(2, (self, f) => {
|
|
|
1954
1955
|
}
|
|
1955
1956
|
return out;
|
|
1956
1957
|
});
|
|
1958
|
+
var filter = /* @__PURE__ */ dual(2, (self, predicate) => {
|
|
1959
|
+
const out = empty6();
|
|
1960
|
+
for (const key of keys(self)) {
|
|
1961
|
+
if (predicate(self[key], key)) {
|
|
1962
|
+
assignProperty(out, key, self[key]);
|
|
1963
|
+
}
|
|
1964
|
+
}
|
|
1965
|
+
return out;
|
|
1966
|
+
});
|
|
1957
1967
|
var keys = (self) => Object.keys(self);
|
|
1958
1968
|
var isSubrecordBy = (equivalence) => dual(2, (self, that) => {
|
|
1959
1969
|
for (const key of keys(self)) {
|
|
@@ -1975,7 +1985,7 @@ var match2 = /* @__PURE__ */ dual(2, (self, {
|
|
|
1975
1985
|
onEmpty,
|
|
1976
1986
|
onNonEmpty
|
|
1977
1987
|
}) => isReadonlyArrayNonEmpty(self) ? onNonEmpty(self) : onEmpty());
|
|
1978
|
-
var
|
|
1988
|
+
var append2 = /* @__PURE__ */ dual(2, (self, last) => [...self, last]);
|
|
1979
1989
|
var isArray = Array2.isArray;
|
|
1980
1990
|
var isArrayNonEmpty2 = isArrayNonEmpty;
|
|
1981
1991
|
var isReadonlyArrayNonEmpty = isArrayNonEmpty;
|
|
@@ -3276,6 +3286,47 @@ var andThen2 = /* @__PURE__ */ dual(2, (self, f) => new ContImpl(self, isEffect2
|
|
|
3276
3286
|
var tap2 = /* @__PURE__ */ dual(2, (self, f) => new ContImpl(self, isEffect2(f) ? tapEffectCont : tapCont, f));
|
|
3277
3287
|
var asVoid3 = (self) => new ContImpl(self, returnPayload, exitVoid);
|
|
3278
3288
|
var sandbox2 = (self) => catchCause2(self, fail6);
|
|
3289
|
+
var raceAll = (all, options) => withFiber((parent) => {
|
|
3290
|
+
const fibers = new Set;
|
|
3291
|
+
onExitUnsafe(parent, () => fibers.size === 0 ? undefined : fiberInterruptAll(fibers));
|
|
3292
|
+
return callback((resume) => {
|
|
3293
|
+
const effects = fromIterable(all);
|
|
3294
|
+
const len = effects.length;
|
|
3295
|
+
let doneCount = 0;
|
|
3296
|
+
let done = false;
|
|
3297
|
+
const failures = [];
|
|
3298
|
+
const onExit = (exit, fiber, i) => {
|
|
3299
|
+
doneCount++;
|
|
3300
|
+
if (exit._tag === "Failure") {
|
|
3301
|
+
failures.push(...exit.cause.reasons);
|
|
3302
|
+
if (doneCount >= len) {
|
|
3303
|
+
resume(failCause3(causeFromReasons(failures)));
|
|
3304
|
+
}
|
|
3305
|
+
return;
|
|
3306
|
+
}
|
|
3307
|
+
const isWinner = !done;
|
|
3308
|
+
done = true;
|
|
3309
|
+
resume(exit);
|
|
3310
|
+
if (isWinner && options?.onWinner) {
|
|
3311
|
+
options.onWinner({
|
|
3312
|
+
fiber,
|
|
3313
|
+
index: i,
|
|
3314
|
+
parentFiber: parent
|
|
3315
|
+
});
|
|
3316
|
+
}
|
|
3317
|
+
};
|
|
3318
|
+
for (let i = 0;i < len; i++) {
|
|
3319
|
+
const fiber = forkUnsafe2(parent, effects[i], true, true, false);
|
|
3320
|
+
fibers.add(fiber);
|
|
3321
|
+
fiber.addObserver((exit) => {
|
|
3322
|
+
fibers.delete(fiber);
|
|
3323
|
+
onExit(exit, fiber, i);
|
|
3324
|
+
});
|
|
3325
|
+
if (done)
|
|
3326
|
+
break;
|
|
3327
|
+
}
|
|
3328
|
+
});
|
|
3329
|
+
});
|
|
3279
3330
|
var raceAllFirst = (all, options) => withFiber((parent) => {
|
|
3280
3331
|
const fibers = new Set;
|
|
3281
3332
|
onExitUnsafe(parent, () => fibers.size === 0 ? undefined : fiberInterruptAll(fibers));
|
|
@@ -3304,6 +3355,7 @@ var raceAllFirst = (all, options) => withFiber((parent) => {
|
|
|
3304
3355
|
}
|
|
3305
3356
|
});
|
|
3306
3357
|
});
|
|
3358
|
+
var race2 = /* @__PURE__ */ dual((args) => isEffect2(args[1]), (self, that, options) => raceAll([self, that], options));
|
|
3307
3359
|
var raceFirst2 = /* @__PURE__ */ dual((args) => isEffect2(args[1]), (self, that, options) => raceAllFirst([self, that], options));
|
|
3308
3360
|
var flatMap2 = /* @__PURE__ */ dual(2, (self, f) => new ContImpl(self, andThenCont, f));
|
|
3309
3361
|
var effectIsExit = (effect) => effect[ExitTypeId] !== undefined;
|
|
@@ -3363,7 +3415,7 @@ var exitAsVoidAll = (exits) => {
|
|
|
3363
3415
|
}
|
|
3364
3416
|
return failures.length === 0 ? exitVoid : exitFailCause(causeFromReasons(failures));
|
|
3365
3417
|
};
|
|
3366
|
-
var
|
|
3418
|
+
var serviceOption2 = (service) => withFiber((fiber) => succeed2(getOption(fiber.context, service)));
|
|
3367
3419
|
var updateContext = /* @__PURE__ */ dual(2, (self, f) => withFiber((fiber) => {
|
|
3368
3420
|
const prevContext = fiber.context;
|
|
3369
3421
|
const nextContext = f(prevContext);
|
|
@@ -3649,6 +3701,7 @@ var scopeCloseFinalizers = /* @__PURE__ */ fnUntraced2(function* (self, finalize
|
|
|
3649
3701
|
}
|
|
3650
3702
|
return yield* exitAsVoidAll(exits);
|
|
3651
3703
|
});
|
|
3704
|
+
var scopeFork = (scope, finalizerStrategy) => sync(() => scopeForkUnsafe(scope, finalizerStrategy));
|
|
3652
3705
|
var scopeForkUnsafe = (scope, finalizerStrategy) => {
|
|
3653
3706
|
const child = makeScope(finalizerStrategy, scope);
|
|
3654
3707
|
if (scope.state._tag === "Closed") {
|
|
@@ -3713,7 +3766,7 @@ var constScopeEmpty = {
|
|
|
3713
3766
|
_tag: "Empty"
|
|
3714
3767
|
};
|
|
3715
3768
|
var scopeMake = (finalizerStrategy) => sync(() => scopeMakeUnsafe(finalizerStrategy));
|
|
3716
|
-
var
|
|
3769
|
+
var scope2 = scopeTag;
|
|
3717
3770
|
var provideScope = /* @__PURE__ */ provideService2(scopeTag);
|
|
3718
3771
|
var scoped2 = (self) => withFiber((fiber) => {
|
|
3719
3772
|
const prev = fiber.context;
|
|
@@ -3725,12 +3778,13 @@ var scoped2 = (self) => withFiber((fiber) => {
|
|
|
3725
3778
|
});
|
|
3726
3779
|
return self;
|
|
3727
3780
|
});
|
|
3781
|
+
var scopeUse = /* @__PURE__ */ dual(2, (self, scope) => onExit2(provideScope(self, scope), (exit) => suspend(() => scopeCloseUnsafe(scope, exit) ?? void_)));
|
|
3728
3782
|
var scopedWith = (f) => suspend(() => {
|
|
3729
3783
|
const scope = scopeMakeUnsafe();
|
|
3730
3784
|
return onExit2(f(scope), (exit) => suspend(() => scopeCloseUnsafe(scope, exit) ?? void_));
|
|
3731
3785
|
});
|
|
3732
|
-
var acquireRelease2 = (acquire, release, options) => contextWith2((context) => uninterruptibleMask((restore) => flatMap2(
|
|
3733
|
-
var addFinalizer2 = (finalizer) => flatMap2(
|
|
3786
|
+
var acquireRelease2 = (acquire, release, options) => contextWith2((context) => uninterruptibleMask((restore) => flatMap2(scope2, (scope) => tap2(options?.interruptible ? restore(acquire) : acquire, (a) => scopeAddFinalizerExit(scope, (exit) => provideContext3(release(a, exit), context))))));
|
|
3787
|
+
var addFinalizer2 = (finalizer) => flatMap2(scope2, (scope) => contextWith2((context) => scopeAddFinalizerExit(scope, (exit) => provideContext3(finalizer(exit), context))));
|
|
3734
3788
|
var OnExitImpl = /* @__PURE__ */ function() {
|
|
3735
3789
|
const Proto = /* @__PURE__ */ makePrimitiveProto({
|
|
3736
3790
|
op: "OnExit",
|
|
@@ -4131,7 +4185,7 @@ var forkIn2 = /* @__PURE__ */ dual((args) => isEffect2(args[0]), (self, scope, o
|
|
|
4131
4185
|
}
|
|
4132
4186
|
return succeed2(fiber);
|
|
4133
4187
|
}));
|
|
4134
|
-
var forkScoped2 = /* @__PURE__ */ dual((args) => isEffect2(args[0]), (self, options) => flatMap2(
|
|
4188
|
+
var forkScoped2 = /* @__PURE__ */ dual((args) => isEffect2(args[0]), (self, options) => flatMap2(scope2, (scope) => forkIn2(self, scope, options)));
|
|
4135
4189
|
var runForkWith2 = (context) => (effect, options) => {
|
|
4136
4190
|
const fiber = new FiberImpl(options?.scheduler ? add(context, Scheduler, options.scheduler) : context, options?.uninterruptible !== true);
|
|
4137
4191
|
fiber.evaluate(effect);
|
|
@@ -4793,9 +4847,11 @@ var makeUnsafe4 = scopeMakeUnsafe;
|
|
|
4793
4847
|
var provide = provideScope;
|
|
4794
4848
|
var addFinalizerExit = scopeAddFinalizerExit;
|
|
4795
4849
|
var addFinalizer = scopeAddFinalizer;
|
|
4850
|
+
var fork = scopeFork;
|
|
4796
4851
|
var forkUnsafe = scopeForkUnsafe;
|
|
4797
4852
|
var close = scopeClose;
|
|
4798
4853
|
var closeUnsafe = scopeCloseUnsafe;
|
|
4854
|
+
var use = scopeUse;
|
|
4799
4855
|
|
|
4800
4856
|
// node_modules/effect/dist/Layer.js
|
|
4801
4857
|
var TypeId6 = "~effect/Layer";
|
|
@@ -5209,6 +5265,7 @@ var timeout = timeout2;
|
|
|
5209
5265
|
var timeoutOption = timeoutOption2;
|
|
5210
5266
|
var timeoutOrElse = timeoutOrElse2;
|
|
5211
5267
|
var sleep = sleep2;
|
|
5268
|
+
var race = race2;
|
|
5212
5269
|
var raceFirst = raceFirst2;
|
|
5213
5270
|
var when = when2;
|
|
5214
5271
|
var match3 = match6;
|
|
@@ -5218,10 +5275,10 @@ var context = context2;
|
|
|
5218
5275
|
var contextWith = contextWith2;
|
|
5219
5276
|
var provide3 = provide4;
|
|
5220
5277
|
var provideContext = provideContext3;
|
|
5221
|
-
var
|
|
5278
|
+
var serviceOption = serviceOption2;
|
|
5222
5279
|
var updateContext2 = updateContext;
|
|
5223
5280
|
var provideService = provideService2;
|
|
5224
|
-
var
|
|
5281
|
+
var scope = scope2;
|
|
5225
5282
|
var scoped = scoped2;
|
|
5226
5283
|
var scopedWith2 = scopedWith;
|
|
5227
5284
|
var acquireRelease = acquireRelease2;
|
|
@@ -5826,7 +5883,7 @@ var emptyBucket = () => ({
|
|
|
5826
5883
|
offset: 0,
|
|
5827
5884
|
next: undefined
|
|
5828
5885
|
});
|
|
5829
|
-
var
|
|
5886
|
+
var append = (self, message) => {
|
|
5830
5887
|
if (!self.tail) {
|
|
5831
5888
|
self.head = self.tail = emptyBucket();
|
|
5832
5889
|
} else if (!self.tail.mutable) {
|
|
@@ -5924,6 +5981,31 @@ var take2 = (self) => {
|
|
|
5924
5981
|
}
|
|
5925
5982
|
return message;
|
|
5926
5983
|
};
|
|
5984
|
+
var filter4 = (self, f) => {
|
|
5985
|
+
const array = [];
|
|
5986
|
+
let chunk = self.head;
|
|
5987
|
+
let index = 0;
|
|
5988
|
+
while (chunk) {
|
|
5989
|
+
for (let i = chunk.offset;i < chunk.array.length; i++) {
|
|
5990
|
+
if (f(chunk.array[i], index++)) {
|
|
5991
|
+
array.push(chunk.array[i]);
|
|
5992
|
+
}
|
|
5993
|
+
}
|
|
5994
|
+
chunk = chunk.next;
|
|
5995
|
+
}
|
|
5996
|
+
if (array.length === 0) {
|
|
5997
|
+
clear(self);
|
|
5998
|
+
return;
|
|
5999
|
+
}
|
|
6000
|
+
self.head = self.tail = {
|
|
6001
|
+
array,
|
|
6002
|
+
mutable: true,
|
|
6003
|
+
offset: 0,
|
|
6004
|
+
next: undefined
|
|
6005
|
+
};
|
|
6006
|
+
self.length = array.length;
|
|
6007
|
+
};
|
|
6008
|
+
var remove2 = (self, value) => filter4(self, (v) => v !== value);
|
|
5927
6009
|
|
|
5928
6010
|
// node_modules/effect/dist/Queue.js
|
|
5929
6011
|
var TypeId12 = "~effect/Queue";
|
|
@@ -5964,6 +6046,10 @@ var make10 = (options) => withFiber((fiber) => {
|
|
|
5964
6046
|
var bounded = (capacity) => make10({
|
|
5965
6047
|
capacity
|
|
5966
6048
|
});
|
|
6049
|
+
var dropping = (capacity) => make10({
|
|
6050
|
+
capacity,
|
|
6051
|
+
strategy: "dropping"
|
|
6052
|
+
});
|
|
5967
6053
|
var offer = /* @__PURE__ */ dual(2, (self, message) => suspend(() => offerUnsafe(self, message) ? exitTrue : self.state._tag === "Open" && self.strategy === "suspend" ? offerOrWait(self, message) : exitFalse));
|
|
5968
6054
|
var offerUnsafe = (self, message) => {
|
|
5969
6055
|
if (self.state._tag !== "Open") {
|
|
@@ -5971,16 +6057,16 @@ var offerUnsafe = (self, message) => {
|
|
|
5971
6057
|
} else if (self.messages.length >= self.capacity) {
|
|
5972
6058
|
if (self.strategy === "sliding") {
|
|
5973
6059
|
take2(self.messages);
|
|
5974
|
-
|
|
6060
|
+
append(self.messages, message);
|
|
5975
6061
|
return true;
|
|
5976
6062
|
} else if (self.capacity <= 0 && self.state.takers.size > 0) {
|
|
5977
|
-
|
|
6063
|
+
append(self.messages, message);
|
|
5978
6064
|
releaseTakers(self);
|
|
5979
6065
|
return true;
|
|
5980
6066
|
}
|
|
5981
6067
|
return false;
|
|
5982
6068
|
}
|
|
5983
|
-
|
|
6069
|
+
append(self.messages, message);
|
|
5984
6070
|
scheduleReleaseTaker(self);
|
|
5985
6071
|
return true;
|
|
5986
6072
|
};
|
|
@@ -6015,7 +6101,7 @@ var offerAllUnsafe = (self, messages) => {
|
|
|
6015
6101
|
let i = 0;
|
|
6016
6102
|
for (const message of messages) {
|
|
6017
6103
|
if (i < free) {
|
|
6018
|
-
|
|
6104
|
+
append(self.messages, message);
|
|
6019
6105
|
} else {
|
|
6020
6106
|
remaining.push(message);
|
|
6021
6107
|
}
|
|
@@ -6196,14 +6282,14 @@ var releaseCapacity = (self) => {
|
|
|
6196
6282
|
if (n <= 0)
|
|
6197
6283
|
break;
|
|
6198
6284
|
else if (entry._tag === "Single") {
|
|
6199
|
-
|
|
6285
|
+
append(self.messages, entry.message);
|
|
6200
6286
|
self.state.offers.delete(entry);
|
|
6201
6287
|
entry.resume(exitTrue);
|
|
6202
6288
|
} else {
|
|
6203
6289
|
for (;entry.offset < entry.remaining.length; entry.offset++) {
|
|
6204
6290
|
if (n === 0)
|
|
6205
6291
|
return false;
|
|
6206
|
-
|
|
6292
|
+
append(self.messages, entry.remaining[entry.offset]);
|
|
6207
6293
|
n--;
|
|
6208
6294
|
}
|
|
6209
6295
|
self.state.offers.delete(entry);
|
|
@@ -6266,7 +6352,7 @@ var asyncQueue = (scope, f, options) => make10({
|
|
|
6266
6352
|
}).pipe(tap((queue) => addFinalizer(scope, shutdown(queue))), tap((queue) => forkIn(provide(f(queue), scope), scope)));
|
|
6267
6353
|
var callbackArray = (f, options) => fromTransform((_, scope) => map5(asyncQueue(scope, f, options), takeAll2));
|
|
6268
6354
|
var suspend3 = (evaluate) => fromTransform((upstream, scope) => suspend2(() => toTransform(evaluate())(upstream, scope)));
|
|
6269
|
-
var
|
|
6355
|
+
var empty7 = /* @__PURE__ */ fromPull(/* @__PURE__ */ succeed6(/* @__PURE__ */ done3()));
|
|
6270
6356
|
var fail8 = (error) => fromPull(succeed6(fail4(error)));
|
|
6271
6357
|
var failCause6 = (cause) => fromPull(failCause5(cause));
|
|
6272
6358
|
var fromQueueArray = (queue) => fromPull(succeed6(takeAll2(queue)));
|
|
@@ -6592,7 +6678,7 @@ var awaitAcquiring = (self, acquiring, restore) => onExit(restore(join(acquiring
|
|
|
6592
6678
|
});
|
|
6593
6679
|
var get3 = (self_) => {
|
|
6594
6680
|
const self = self_;
|
|
6595
|
-
return uninterruptibleMask2((restore) => flatMap3(
|
|
6681
|
+
return uninterruptibleMask2((restore) => flatMap3(scope, (scope) => flatMap3(getState(self, restore), (state) => as(addFinalizerExit(scope, () => release(self, state)), state.value))));
|
|
6596
6682
|
};
|
|
6597
6683
|
var release = (self, state) => {
|
|
6598
6684
|
state.refCount--;
|
|
@@ -6669,7 +6755,7 @@ var fromPull2 = (pull) => fromChannel3(fromPull(pull));
|
|
|
6669
6755
|
var transformPull2 = (self, f) => fromChannel3(fromTransform((_, scope) => flatMap3(toPullScoped(self.channel, scope), (pull) => f(pull, scope))));
|
|
6670
6756
|
var toChannel2 = (stream) => stream.channel;
|
|
6671
6757
|
var callback3 = (f, options) => fromChannel3(callbackArray(f, options));
|
|
6672
|
-
var
|
|
6758
|
+
var empty8 = /* @__PURE__ */ fromChannel3(empty7);
|
|
6673
6759
|
var suspend4 = (stream) => fromChannel3(suspend3(() => stream().channel));
|
|
6674
6760
|
var fail9 = (error) => fromChannel3(fail8(error));
|
|
6675
6761
|
var fromQueue = (queue) => fromChannel3(fromQueueArray(queue));
|
|
@@ -7003,7 +7089,7 @@ var fromInputNested = (input) => {
|
|
|
7003
7089
|
};
|
|
7004
7090
|
var Equivalence3 = /* @__PURE__ */ make((a, b) => arrayEquivalence(a.params, b.params));
|
|
7005
7091
|
var arrayEquivalence = /* @__PURE__ */ makeEquivalence3(/* @__PURE__ */ makeEquivalence([/* @__PURE__ */ strictEqual(), /* @__PURE__ */ strictEqual()]));
|
|
7006
|
-
var
|
|
7092
|
+
var empty9 = /* @__PURE__ */ make18([]);
|
|
7007
7093
|
var setAll2 = /* @__PURE__ */ dual(2, (self, input) => {
|
|
7008
7094
|
const params = fromInput2(input).params.slice();
|
|
7009
7095
|
const keys = new Set;
|
|
@@ -7341,7 +7427,7 @@ function transformOptionalEffect(f) {
|
|
|
7341
7427
|
}
|
|
7342
7428
|
function withDefault2(defaultValue) {
|
|
7343
7429
|
return transformOptionalEffect((o) => {
|
|
7344
|
-
const filtered =
|
|
7430
|
+
const filtered = filter2(o, isNotUndefined);
|
|
7345
7431
|
return isSome(filtered) ? succeed6(filtered) : mapEager(defaultValue, some);
|
|
7346
7432
|
});
|
|
7347
7433
|
}
|
|
@@ -8917,7 +9003,7 @@ function getLastEncoding(ast) {
|
|
|
8917
9003
|
function annotate(ast, annotations) {
|
|
8918
9004
|
if (ast.checks) {
|
|
8919
9005
|
const last = ast.checks[ast.checks.length - 1];
|
|
8920
|
-
return replaceChecks(ast,
|
|
9006
|
+
return replaceChecks(ast, append2(ast.checks.slice(0, -1), last.annotate(annotations)));
|
|
8921
9007
|
}
|
|
8922
9008
|
return copy(ast, {
|
|
8923
9009
|
annotations: {
|
|
@@ -8948,7 +9034,7 @@ function updateLastLink(encoding, f) {
|
|
|
8948
9034
|
const links = encoding;
|
|
8949
9035
|
const last = links[links.length - 1];
|
|
8950
9036
|
const out = mapLink(last, f);
|
|
8951
|
-
return out === last ? encoding :
|
|
9037
|
+
return out === last ? encoding : append2(encoding.slice(0, encoding.length - 1), out);
|
|
8952
9038
|
}
|
|
8953
9039
|
function applyToLastLink(f) {
|
|
8954
9040
|
return (ast) => ast.encoding ? replaceEncoding(ast, updateLastLink(ast.encoding, f)) : ast;
|
|
@@ -11445,8 +11531,8 @@ function makeWith(method, url, urlParams, hash, headers, body) {
|
|
|
11445
11531
|
self.body = body;
|
|
11446
11532
|
return self;
|
|
11447
11533
|
}
|
|
11448
|
-
var
|
|
11449
|
-
var make22 = (method) => (url, options) => modify(
|
|
11534
|
+
var empty10 = /* @__PURE__ */ makeWith("GET", "", empty9, /* @__PURE__ */ none(), empty4, empty5);
|
|
11535
|
+
var make22 = (method) => (url, options) => modify(empty10, {
|
|
11450
11536
|
method,
|
|
11451
11537
|
url,
|
|
11452
11538
|
...options ?? undefined
|
|
@@ -13471,7 +13557,7 @@ var make26 = /* @__PURE__ */ gen(function* () {
|
|
|
13471
13557
|
if (additionalFds.length === 0) {
|
|
13472
13558
|
return {
|
|
13473
13559
|
getInputFd: () => drain,
|
|
13474
|
-
getOutputFd: () =>
|
|
13560
|
+
getOutputFd: () => empty8
|
|
13475
13561
|
};
|
|
13476
13562
|
}
|
|
13477
13563
|
const inputSinks = new Map;
|
|
@@ -13497,7 +13583,7 @@ var make26 = /* @__PURE__ */ gen(function* () {
|
|
|
13497
13583
|
break;
|
|
13498
13584
|
}
|
|
13499
13585
|
case "output": {
|
|
13500
|
-
let stream =
|
|
13586
|
+
let stream = empty8;
|
|
13501
13587
|
if (nodeStream && "read" in nodeStream) {
|
|
13502
13588
|
const passThrough = new PassThrough;
|
|
13503
13589
|
nodeStream.on("error", (error) => passThrough.destroy(error));
|
|
@@ -13517,7 +13603,7 @@ var make26 = /* @__PURE__ */ gen(function* () {
|
|
|
13517
13603
|
}
|
|
13518
13604
|
return {
|
|
13519
13605
|
getInputFd: (fd) => inputSinks.get(fd) ?? drain,
|
|
13520
|
-
getOutputFd: (fd) => outputStreams.get(fd) ??
|
|
13606
|
+
getOutputFd: (fd) => outputStreams.get(fd) ?? empty8
|
|
13521
13607
|
};
|
|
13522
13608
|
});
|
|
13523
13609
|
const setupChildStdin = (command, childProcess, config) => suspend2(() => {
|
|
@@ -13544,7 +13630,7 @@ var make26 = /* @__PURE__ */ gen(function* () {
|
|
|
13544
13630
|
evaluate: () => passThrough,
|
|
13545
13631
|
onError: (error) => toPlatformError("fromReadable(stdout)", toError(error), command)
|
|
13546
13632
|
});
|
|
13547
|
-
})() :
|
|
13633
|
+
})() : empty8;
|
|
13548
13634
|
let stderr = childProcess.stderr ? (() => {
|
|
13549
13635
|
const passThrough = new PassThrough;
|
|
13550
13636
|
childProcess.stderr.on("error", (error) => passThrough.destroy(error));
|
|
@@ -13553,7 +13639,7 @@ var make26 = /* @__PURE__ */ gen(function* () {
|
|
|
13553
13639
|
evaluate: () => passThrough,
|
|
13554
13640
|
onError: (error) => toPlatformError("fromReadable(stderr)", toError(error), command)
|
|
13555
13641
|
});
|
|
13556
|
-
})() :
|
|
13642
|
+
})() : empty8;
|
|
13557
13643
|
if (isSink(stdoutConfig.stream)) {
|
|
13558
13644
|
stdout = transduce(stdout, stdoutConfig.stream);
|
|
13559
13645
|
}
|
|
@@ -14097,7 +14183,7 @@ var removeFactory = (method) => {
|
|
|
14097
14183
|
force: options?.force ?? false
|
|
14098
14184
|
});
|
|
14099
14185
|
};
|
|
14100
|
-
var
|
|
14186
|
+
var remove4 = /* @__PURE__ */ removeFactory("remove");
|
|
14101
14187
|
var makeTempDirectoryScoped = /* @__PURE__ */ (() => {
|
|
14102
14188
|
const makeDirectory = /* @__PURE__ */ makeTempDirectoryFactory("makeTempDirectoryScoped");
|
|
14103
14189
|
const removeDirectory = /* @__PURE__ */ removeFactory("makeTempDirectoryScoped");
|
|
@@ -14389,7 +14475,7 @@ var writeFile2 = (path, data, options) => callback2((resume, signal) => {
|
|
|
14389
14475
|
resume(fail4(handleBadArgument("writeFile")(err)));
|
|
14390
14476
|
}
|
|
14391
14477
|
});
|
|
14392
|
-
var makeFileSystem = /* @__PURE__ */ map5(/* @__PURE__ */
|
|
14478
|
+
var makeFileSystem = /* @__PURE__ */ map5(/* @__PURE__ */ serviceOption(WatchBackend), (backend) => make17({
|
|
14393
14479
|
access: access2,
|
|
14394
14480
|
chmod: chmod2,
|
|
14395
14481
|
chown: chown2,
|
|
@@ -14407,7 +14493,7 @@ var makeFileSystem = /* @__PURE__ */ map5(/* @__PURE__ */ serviceOption2(WatchBa
|
|
|
14407
14493
|
readFile: readFile2,
|
|
14408
14494
|
readLink,
|
|
14409
14495
|
realPath,
|
|
14410
|
-
remove:
|
|
14496
|
+
remove: remove4,
|
|
14411
14497
|
rename: rename2,
|
|
14412
14498
|
stat: stat2,
|
|
14413
14499
|
symlink: symlink2,
|
|
@@ -14658,4 +14744,4 @@ var layer13 = layer12;
|
|
|
14658
14744
|
|
|
14659
14745
|
// node_modules/@effect/platform-node/dist/NodeServices.js
|
|
14660
14746
|
var layer2 = /* @__PURE__ */ provideMerge(layer4, /* @__PURE__ */ mergeAll(layer8, layer6, layer10, layer, layer13));
|
|
14661
|
-
export { hash, equals, redact, format, NodeInspectSymbol, toJson, getStackTraceLimit, setStackTraceLimit, assignProperty, PipeInspectableProto, withFiber, Prototype, isGreaterThanOrEqualTo, none, some, isNone, isSome, match, getOrElse, fromUndefinedOr, getOrUndefined, map, flatMap, exists, Service2, makeUnsafe2, empty, make4, add, getOrUndefined2, getOrUndefinedUnsafe, getUnsafe, get, merge, Reference, fromInputUnsafe, isFinite2, isZero, zero, millis, toMillis, normalize, succeed, fail, isResult, isFailure, isSuccess, map2, match2, isReadonlyArrayNonEmpty, isCanonicalArrayIndex, take, findFirstIndex, findFirst, findLast, empty2, map3, reduce, Scheduler, Class, taggedEnum, TaggedError, ParentSpan, externalSpan, getCurrentFiber, succeed2, sync, suspend, succeedNone, void_, callback, asSome, flatMap2, onExitPrimitive, uninterruptibleMask, ClockRef, currentTimeMillis, ConsoleRef, LogLevelOrder, reportCauseUnsafe, isExit, succeed3, failCause, fail2, die, interrupt, void_2, isSuccess2, isFailure2, hasInterrupts, asVoid, isDeferred, makeUnsafe3, make5, _await, done, fail3, interruptWith, succeed4, doneUnsafe, CurrentLogLevel, MinimumLogLevel, Scope, make6, makeUnsafe4, provide, addFinalizerExit, addFinalizer, forkUnsafe, close, closeUnsafe, succeed5, effect, effectContext, effectDiscard, mergeAll, provide2, provideMerge, launch, map4, squash, hasDies, hasInterrupts2, interruptors, IllegalArgumentError, ExceededCapacityError, StackTrace, catchDone, modifyDelay, spaced, setInputType, isEffect, all, forEach, whileLoop, promise, tryPromise, succeed6, succeedNone2, suspend2, sync2, void_3, callback2, never, gen, fail4, die2, try_, withFiber2, fromResult, flatMap3, andThen, tap, result, option2, exit, map5, as, asVoid2, catch_, catchTag, catchTags, catchCause, catchDefect, catchIf, catchFilter, catchCauseIf, mapError, orDie, tapError, tapCause, retry, sandbox, ignore, ignoreCause, orElseSucceed, timeout, timeoutOption, timeoutOrElse, sleep, raceFirst, when, match3, matchCauseEffect, matchEffect, context, contextWith, provide3, provideContext, provideService, scoped, acquireRelease, acquireUseRelease, ensuring, onError, onExit, interrupt2, interruptible, onInterrupt, uninterruptible, uninterruptibleMask2, forever, repeat, makeSpanScoped, useSpan, withSpan, withParentSpan, forkChild, forkIn, forkScoped, forkDetach, runFork, runForkWith, runPromise, runSync, fnUntraced, fn, logFatal, logError, logDebug, annotateLogs, mapEager, flatMapEager, catchEager, empty3, make7, value, empty4, fromInput, fromRecordUnsafe, set, setAll, merge2, remove, join, interrupt3, getCurrent, runIn, make8, set2, makeUnsafe5, Empty, make9, prepend, takeAll, take2, make10, bounded, offer, offerUnsafe, offerAll, failCause2, end, shutdownUnsafe, takeAll2, take3, isStream, fromQueue, unwrap, provideContext2, run2, runForEach, runForEachArray, FileSystem, encode, decode, Pointer, defaultFormatter, passthrough, transformEffect, transformOptional, withDefault2, Transformation, unknown, applyToSelfOrLastLinkEncoding, decodeTo, toEncoded, _is, decodeUnknownEffect, omit, declare, SchemaError, is, decodeUnknownEffect2, decodeUnknownOption, decodeUnknownResult, decodeUnknownSync, decodeSync, encodeUnknownEffect, encodeEffect, encodeSync, make11, isSchema, optionalKey, optional, toType, toEncoded2, Literal, TemplateLiteral, Never, Any, Unknown, Null, String3, Number2, Boolean3, Void, Struct, fieldsAssign, Record, StructWithRest, Tuple, ArraySchema, NonEmptyArray, Union, Literals, NullOr, UndefinedOr, decodeTo2, TrueLiterals, FalseLiterals, BooleanLiterals, decode2, withConstructorDefault, tag, TaggedStruct, TaggedUnion, Opaque, makeFilter, isPattern, Finite, isGreaterThan, isGreaterThanOrEqualTo2, isBetween, isInt, Int2, isMaxLength, NonEmptyString, Defect, Uint8ArrayFromBase64, Exit, Class2, Error2, TaggedError2, toCodecJson, toCodecStringTree, Json, JsonObject, empty5, jsonUnsafe, get2, post, setHeader, bodyJson, HttpClient, layerNodeHttp, exports_NodeHttpClient, errorExitCode, errorReported, runMain, exports_NodeRuntime, Path, Stdio, layer, exports_NodeStdio, QuitError, isQuitError, Terminal, layer2, exports_NodeServices };
|
|
14747
|
+
export { hash, equals, redact, format, NodeInspectSymbol, toJson, getStackTraceLimit, setStackTraceLimit, assignProperty, PipeInspectableProto, withFiber, Prototype, isGreaterThanOrEqualTo, none, some, isNone, isSome, match, getOrElse, fromUndefinedOr, getOrUndefined, map, flatMap, exists, Service2, makeUnsafe2, empty, make4, add, getOrUndefined2, getOrUndefinedUnsafe, getUnsafe, get, merge, Reference, fromInputUnsafe, isFinite2, isZero, zero, millis, toMillis, normalize, succeed, fail, isResult, isFailure, isSuccess, map2, filter, match2, isReadonlyArrayNonEmpty, isCanonicalArrayIndex, take, findFirstIndex, findFirst, findLast, empty2, map3, reduce, Scheduler, Class, taggedEnum, TaggedError, ParentSpan, externalSpan, getCurrentFiber, succeed2, sync, suspend, succeedNone, void_, callback, asSome, flatMap2, onExitPrimitive, uninterruptibleMask, ClockRef, currentTimeMillis, ConsoleRef, LogLevelOrder, reportCauseUnsafe, isExit, succeed3, failCause, fail2, die, interrupt, void_2, isSuccess2, isFailure2, hasInterrupts, asVoid, isDeferred, makeUnsafe3, make5, _await, done, fail3, interruptWith, succeed4, doneUnsafe, CurrentLogLevel, MinimumLogLevel, Scope, make6, makeUnsafe4, provide, addFinalizerExit, addFinalizer, fork, forkUnsafe, close, closeUnsafe, use, succeed5, effect, effectContext, effectDiscard, mergeAll, provide2, provideMerge, launch, map4, squash, hasDies, hasInterrupts2, interruptors, IllegalArgumentError, ExceededCapacityError, StackTrace, catchDone, modifyDelay, spaced, setInputType, isEffect, all, forEach, whileLoop, promise, tryPromise, succeed6, succeedNone2, suspend2, sync2, void_3, callback2, never, gen, fail4, die2, try_, withFiber2, fromResult, flatMap3, andThen, tap, result, option2, exit, map5, as, asVoid2, catch_, catchTag, catchTags, catchCause, catchDefect, catchIf, catchFilter, catchCauseIf, mapError, orDie, tapError, tapCause, retry, sandbox, ignore, ignoreCause, orElseSucceed, timeout, timeoutOption, timeoutOrElse, sleep, race, raceFirst, when, match3, matchCauseEffect, matchEffect, context, contextWith, provide3, provideContext, serviceOption, provideService, scope, scoped, acquireRelease, acquireUseRelease, ensuring, onError, onExit, interrupt2, interruptible, onInterrupt, uninterruptible, uninterruptibleMask2, forever, repeat, makeSpanScoped, useSpan, withSpan, withParentSpan, forkChild, forkIn, forkScoped, forkDetach, runFork, runForkWith, runPromise, runSync, fnUntraced, fn, logFatal, logError, logDebug, annotateLogs, mapEager, flatMapEager, catchEager, empty3, make7, value, empty4, fromInput, fromRecordUnsafe, set, setAll, merge2, remove, join, interrupt3, getCurrent, runIn, make8, set2, makeUnsafe5, Empty, make9, append, prepend, takeAll, take2, remove2, make10, bounded, dropping, offer, offerUnsafe, offerAll, failCause2, end, shutdownUnsafe, takeAll2, take3, isStream, fromQueue, unwrap, provideContext2, run2, runForEach, runForEachArray, FileSystem, encode, decode, Pointer, defaultFormatter, passthrough, transformEffect, transformOptional, withDefault2, Transformation, unknown, applyToSelfOrLastLinkEncoding, decodeTo, toEncoded, _is, decodeUnknownEffect, omit, declare, SchemaError, is, decodeUnknownEffect2, decodeUnknownOption, decodeUnknownResult, decodeUnknownSync, decodeSync, encodeUnknownEffect, encodeEffect, encodeSync, make11, isSchema, optionalKey, optional, toType, toEncoded2, Literal, TemplateLiteral, Never, Any, Unknown, Null, String3, Number2, Boolean3, Void, Struct, fieldsAssign, Record, StructWithRest, Tuple, ArraySchema, NonEmptyArray, Union, Literals, NullOr, UndefinedOr, decodeTo2, TrueLiterals, FalseLiterals, BooleanLiterals, decode2, withConstructorDefault, tag, TaggedStruct, TaggedUnion, Opaque, makeFilter, isPattern, Finite, isGreaterThan, isGreaterThanOrEqualTo2, isBetween, isInt, Int2, isMaxLength, NonEmptyString, Defect, Uint8ArrayFromBase64, Exit, Class2, Error2, TaggedError2, toCodecJson, toCodecStringTree, Json, JsonObject, empty5, jsonUnsafe, get2, post, setHeader, bodyJson, HttpClient, layerNodeHttp, exports_NodeHttpClient, errorExitCode, errorReported, runMain, exports_NodeRuntime, Path, Stdio, layer, exports_NodeStdio, QuitError, isQuitError, Terminal, layer2, exports_NodeServices };
|
|
@@ -2,11 +2,11 @@ import {
|
|
|
2
2
|
parseTargetSelection2,
|
|
3
3
|
getObject2,
|
|
4
4
|
getString2
|
|
5
|
-
} from "./main-
|
|
5
|
+
} from "./main-t4vvf2np.mjs";
|
|
6
6
|
import {
|
|
7
7
|
isNodeError,
|
|
8
8
|
writeJsonFileAtomically
|
|
9
|
-
} from "./main-
|
|
9
|
+
} from "./main-7mhya2p5.mjs";
|
|
10
10
|
import {
|
|
11
11
|
getStackTraceLimit,
|
|
12
12
|
setStackTraceLimit,
|
|
@@ -101,11 +101,11 @@ import {
|
|
|
101
101
|
TaggedError2,
|
|
102
102
|
Json,
|
|
103
103
|
JsonObject
|
|
104
|
-
} from "./main-
|
|
104
|
+
} from "./main-ta3yc4kx.mjs";
|
|
105
105
|
import {
|
|
106
106
|
dataRoot,
|
|
107
107
|
cliCommand
|
|
108
|
-
} from "./main-
|
|
108
|
+
} from "./main-zc2xv4zh.mjs";
|
|
109
109
|
import {
|
|
110
110
|
pipeArguments,
|
|
111
111
|
identity,
|
|
@@ -2724,4 +2724,4 @@ function secretText(secret) {
|
|
|
2724
2724
|
return secret.kind === "totp" ? totpCode(secret.value) : secret.value;
|
|
2725
2725
|
}
|
|
2726
2726
|
|
|
2727
|
-
export { makeUnsafe, make, isStreamSchema, getStreamSchemas, ClientAbort, ServerClient, make2, exitSchema, isWrapper, make3, Implementation, ClientCapabilities, INVALID_REQUEST_ERROR_CODE, METHOD_NOT_FOUND_ERROR_CODE, INVALID_PARAMS_ERROR_CODE, INTERNAL_ERROR_CODE, HEADER_MISMATCH_ERROR_CODE, ParseError, InvalidRequest, MethodNotFound, InvalidParams, InternalError, McpError, Ping, Initialize, CancelledNotification, ProgressNotification, ResourceListChangedNotification, ResourceUpdatedNotification, TextContent, PromptListChangedNotification, Tool, CallToolResult, ToolListChangedNotification, LoggingLevel, LoggingMessageNotification, CreateMessage, ListRootsResult, ListRoots, Elicit, McpReverseOperationUnsupported, McpReverseOperationError, McpRequestContext, McpServerClient, McpServerClientMiddleware, ServerNotificationRpcs, EnabledWhen, settingKeys, settingSpecs, securityVariables, SettingsInputError, parseSettingChanges, settingsFromExtension, settingsToExtension, describeSettings, describeChanges, formatSettings, browsersNote2, mcpUpdateNote2, objectSchema, emptyInputSchema, sessionSchemaProperty, sessionAliasSchemaProperty, sessionOnlyInputSchema, ensureSessionExists, parseExecuteArguments, parseAdoptArguments, requiredStringField, optionalStringField, optionalBooleanField, optionalPositiveIntegerField, optionalStringArrayField, requireObject, toolResultForValue2, mcpErrorMessage2, toolResult, terminateChildProcess, SecretCollector, looksLikeTokenSegment, AuthProfileError, read, readOptional, withLock, write, status, run, OriginPatternError, parseOriginPatterns, normalizeOriginPatterns, isPrivateAddress, explicitlyAllowsHost, checkUrl, checkNavigationUrl, readSecret, addSecret, listSecrets, removeSecret, secretText };
|
|
2727
|
+
export { makeUnsafe, make, isStreamSchema, getStreamSchemas, ClientAbort, ServerClient, make2, exitSchema, isWrapper, make3, Implementation, ClientCapabilities, INVALID_REQUEST_ERROR_CODE, METHOD_NOT_FOUND_ERROR_CODE, INVALID_PARAMS_ERROR_CODE, INTERNAL_ERROR_CODE, HEADER_MISMATCH_ERROR_CODE, ParseError, InvalidRequest, MethodNotFound, InvalidParams, InternalError, McpError, Ping, Initialize, CancelledNotification, ProgressNotification, ResourceListChangedNotification, ResourceUpdatedNotification, Prompt, TextContent, PromptListChangedNotification, Tool, CallToolResult, ToolListChangedNotification, LoggingLevel, LoggingMessageNotification, CreateMessage, ListRootsResult, ListRoots, Elicit, McpReverseOperationUnsupported, McpReverseOperationError, McpRequestContext, McpServerClient, McpServerClientMiddleware, ServerNotificationRpcs, EnabledWhen, settingKeys, settingSpecs, securityVariables, SettingsInputError, parseSettingChanges, settingsFromExtension, settingsToExtension, describeSettings, describeChanges, formatSettings, browsersNote2, mcpUpdateNote2, objectSchema, emptyInputSchema, sessionSchemaProperty, sessionAliasSchemaProperty, sessionOnlyInputSchema, ensureSessionExists, parseExecuteArguments, parseAdoptArguments, requiredStringField, optionalStringField, optionalBooleanField, optionalPositiveIntegerField, optionalStringArrayField, requireObject, toolResultForValue2, mcpErrorMessage2, toolResult, terminateChildProcess, SecretCollector, looksLikeTokenSegment, AuthProfileError, read, readOptional, withLock, write, status, run, OriginPatternError, parseOriginPatterns, normalizeOriginPatterns, isPrivateAddress, explicitlyAllowsHost, checkUrl, checkNavigationUrl, readSecret, addSecret, listSecrets, removeSecret, secretText };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
opencodeBrowserVersion2
|
|
3
|
-
} from "./main-
|
|
3
|
+
} from "./main-7fjsxr93.mjs";
|
|
4
4
|
|
|
5
5
|
// src/update/auto-update.ts
|
|
6
6
|
import { spawn } from "node:child_process";
|
|
@@ -70,7 +70,7 @@ function storeConfig(env = process.env, baked = { id: "mfnicocicmmlkpjnaffgihfjh
|
|
|
70
70
|
return id ? { id } : {};
|
|
71
71
|
}
|
|
72
72
|
var RELEASE_SERVICE = "https://anoma.ly/release";
|
|
73
|
-
function devExtension(baked = { file: "browse-extension-0.0.8-dev.
|
|
73
|
+
function devExtension(baked = { file: "browse-extension-0.0.8-dev.38.zip", sha256: "6bbb1f225b27049ed18230ffede6a0a21901629e9967ca6a90ba78ceed2a1f4c", size: 184272 }) {
|
|
74
74
|
return baked && /^[0-9a-f]{64}$/.test(baked.sha256) && /^[\w.-]+\.zip$/.test(baked.file) ? baked : undefined;
|
|
75
75
|
}
|
|
76
76
|
var devExtensionUrl = (extension, env = process.env) => `${(env.OPENCODE_BROWSER_RELEASE_SERVICE || RELEASE_SERVICE).replace(/\/+$/, "")}/browse/files/${extension.sha256}/${extension.file}`;
|