@deslop/stash 0.1.1071 → 0.1.1073

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.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env -S node --max-old-space-size=16384 --heapsnapshot-near-heap-limit=3 --report-on-fatalerror
2
- import { $d as identity, $n as value, $o as runForkWith, Ao as match$2, Ba as catchCauseIf, Bo as orDie, Bs as isEmpty, Cs as void_, Ct as Defect, D as option, Do as map$2, Dt as FalseLiterals, Ei as runHead, El as taggedEnum, Eo as makeSpanScoped, Fi as unwrap, Fl as filter$1, Fo as onError, Ft as NonEmptyArray, Fu as Reference, Ga as catchTag, Gi as bounded, Go as provideService, Ha as catchFilter, Hu as getUnsafe, I as layerJson, Ic as Scope, Iu as Service, J as isStreamSchema, Ja as context, Ji as failCause, Ju as exists, Ka as catchTags, Ks as replace, La as cached, Lc as addFinalizer, Ld as hasProperty, Ll as findFirst, Lu as add, Ml as empty$2, Ms as min, N as withRunClient, Na as annotateLogs, Nd as format, Ns as spaced, Os as withParentSpan, Ou as succeed$2, P as RpcSerialization, Pu as toMillis, Q as makeCollectorUnsafe, Qa as ensuring, Qn as make$2, R as RequestId, Ra as callback, Rc as addFinalizerExit, Rl as findFirstIndex, Ro as onInterrupt, Ru as empty$1, Sn as tag, So as logError, Ss as useSpan, Td as assignProperty, Ts as withFiber, Tt as Error$1, Tu as isSuccess, Un as empty, Uo as provide, Ut as TaggedError, Uu as make$3, V as constPing, Vd as isNotUndefined, Vs as isNonEmpty, Vt as String$6, Vu as getOrUndefinedUnsafe, W as exitSchema, Wn as fromInput, Wo as provideContext, Wt as TrueLiterals, X as spanName, Xa as delay, Xl as isReadonlyArrayNonEmpty, Y as spanAttributes, Yd as constVoid, Yo as result, Z as Collector, Zd as dual, Zi as offerAll, Zl as join, Zo as retryOrElse, Zr as filter, Zt as Union, _ as QuitError, _c as interruptors, _o as interrupt$1, _t as ArraySchema, aa as makeUnsafe, ad as isSome, ai as fromQueue, al as isFailure, as as succeed$1, bd as Prototype, bn as optional$2, c as NotesError, ca as interrupt$2, cd as map$3, cl as ConsoleRef, co as forever, cs as sync$1, do as forkScoped, ea as shutdownUnsafe, ed as fromUndefinedOr, ef as pipe, el as die, en as decodeSync, eo as fail$1, et as Socket, eu as map$4, fc as findError, fs as timeout, ft as HttpClientErrorSchema, g as layer, gl as sync, go as ignoreCause, h as errorReported, hc as hasInterrupts, ho as ignore, id as isNone, in as encodeEffect, is as serviceOption, it as SocketReadError, iu as reduce, j as Stdio, ja as andThen, jc as provide$1, jo as matchCauseEffect, js as exponential, jt as Literal, ko as mapError, ld as match$1, ln as is, m as errorExitCode, mo as gen, ms as timeoutOrElse, nc as round, nl as failCause$1, nn as decodeUnknownEffect, ns as scoped, nt as SocketErrorReason, oo as fnUntraced, ot as layerWebSocket, ou as some$1, p as runMain, pd as some, q as getStreamSchemas, qc as MinimumLogLevel, qi as end, qn as merge, qo as raceFirst, rc as Clock, rd as getOrUndefined, rl as interrupt, ro as flatMap$1, sa as getCurrent, so as forEach, ss as suspend, st as layerWebSocketConstructorGlobal, t as RpcContracts, ta as take, td as getOrElse, tf as pipeArguments, tl as fail, tt as SocketError, tu as match, u as LogToStderr, ud as none, uo as forkIn, us as tapCause, v as Terminal, vo as interruptible, w as String$7, wc as effect, wd as withFiber$1, wn as toCodecStringTree, wo as logInfo, ws as whileLoop, x as Crypto, xc as squash, xn as optionalKey, y as isQuitError, yo as isEffect, ys as uninterruptibleMask, yt as BooleanLiterals, yu as fail$2, za as catchCause, zl as findLast, zu as get } from "./contracts-gJqVIC2c.mjs";
2
+ import { $d as identity, $n as value, $o as runForkWith, Ao as match$2, Ba as catchCauseIf, Bo as orDie, Bs as isEmpty, Cs as void_, Ct as Defect, D as option, Do as map$2, Dt as FalseLiterals, Ei as runHead, El as taggedEnum, Eo as makeSpanScoped, Fi as unwrap, Fl as filter$1, Fo as onError, Ft as NonEmptyArray, Fu as Reference, Ga as catchTag, Gi as bounded, Go as provideService, Ha as catchFilter, Hu as getUnsafe, I as layerJson, Ic as Scope, Iu as Service, J as isStreamSchema, Ja as context, Ji as failCause, Ju as exists, Ka as catchTags, Ks as replace, La as cached, Lc as addFinalizer, Ld as hasProperty, Ll as findFirst, Lu as add, Ml as empty$2, Ms as min, N as withRunClient, Na as annotateLogs, Nd as format, Ns as spaced, Os as withParentSpan, Ou as succeed$2, P as RpcSerialization, Pu as toMillis, Q as makeCollectorUnsafe, Qa as ensuring, Qn as make$2, R as RequestId, Ra as callback, Rc as addFinalizerExit, Rl as findFirstIndex, Ro as onInterrupt, Ru as empty$1, Sn as tag, So as logError, Ss as useSpan, Td as assignProperty, Ts as withFiber, Tt as Error$1, Tu as isSuccess, Un as empty, Uo as provide, Ut as TaggedError, Uu as make$3, V as constPing, Vd as isNotUndefined, Vs as isNonEmpty, Vt as String$6, Vu as getOrUndefinedUnsafe, W as exitSchema, Wn as fromInput, Wo as provideContext, Wt as TrueLiterals, X as spanName, Xa as delay, Xl as isReadonlyArrayNonEmpty, Y as spanAttributes, Yd as constVoid, Yo as result, Z as Collector, Zd as dual, Zi as offerAll, Zl as join, Zo as retryOrElse, Zr as filter, Zt as Union, _ as QuitError, _c as interruptors, _o as interrupt$1, _t as ArraySchema, aa as makeUnsafe, ad as isSome, ai as fromQueue, al as isFailure, as as succeed$1, bd as Prototype, bn as optional$2, c as NotesError, ca as interrupt$2, cd as map$3, cl as ConsoleRef, co as forever, cs as sync$1, do as forkScoped, ea as shutdownUnsafe, ed as fromUndefinedOr, ef as pipe, el as die, en as decodeSync, eo as fail$1, et as Socket, eu as map$4, fc as findError, fs as timeout, ft as HttpClientErrorSchema, g as layer, gl as sync, go as ignoreCause, h as errorReported, hc as hasInterrupts, ho as ignore, id as isNone, in as encodeEffect, is as serviceOption, it as SocketReadError, iu as reduce, j as Stdio, ja as andThen, jc as provide$1, jo as matchCauseEffect, js as exponential, jt as Literal, ko as mapError, ld as match$1, ln as is, m as errorExitCode, mo as gen, ms as timeoutOrElse, nc as round, nl as failCause$1, nn as decodeUnknownEffect, ns as scoped, nt as SocketErrorReason, oo as fnUntraced, ot as layerWebSocket, ou as some$1, p as runMain, pd as some, q as getStreamSchemas, qc as MinimumLogLevel, qi as end, qn as merge, qo as raceFirst, rc as Clock, rd as getOrUndefined, rl as interrupt, ro as flatMap$1, sa as getCurrent, so as forEach, ss as suspend, st as layerWebSocketConstructorGlobal, t as RpcContracts, ta as take, td as getOrElse, tf as pipeArguments, tl as fail, tt as SocketError, tu as match, u as LogToStderr, ud as none, uo as forkIn, us as tapCause, v as Terminal, vo as interruptible, w as String$7, wc as effect, wd as withFiber$1, wn as toCodecStringTree, wo as logInfo, ws as whileLoop, x as Crypto, xc as squash, xn as optionalKey, y as isQuitError, yo as isEffect, ys as uninterruptibleMask, yt as BooleanLiterals, yu as fail$2, za as catchCause, zl as findLast, zu as get } from "./contracts-DgOSCO2p.mjs";
3
3
  //#region ../../node_modules/.pnpm/effect@4.0.4/node_modules/effect/dist/workers/WorkerError.js
4
4
  /**
5
5
  * Worker error reason for failures while spawning or setting up a worker.
@@ -7523,7 +7523,7 @@ const runWith = (command, config) => {
7523
7523
  };
7524
7524
  //#endregion
7525
7525
  //#region package.json
7526
- var version = "0.1.1071";
7526
+ var version = "0.1.1073";
7527
7527
  //#endregion
7528
7528
  //#region src/main.cli.ts
7529
7529
  function section(title, text) {
@@ -7545,7 +7545,7 @@ const save = pipe(make("save", {
7545
7545
  orElse: () => fail$1(NotesError.make({ message: "The server did not finish the note within two hours." }))
7546
7546
  }));
7547
7547
  return yield* client["notes.get"]({ id: saved.id });
7548
- }), scoped, provide(pipe(layerProtocolSocket(), provide$1(layerWebSocket(pipe(new URL("/api/rpc", input.server).href, replace(/^http/u, "ws")))), provide$1(layerWebSocketConstructorGlobal), provide$1(layerJson))));
7548
+ }), scoped, provide(pipe(layerProtocolSocket({ pingTimeout: "15 seconds" }), provide$1(layerWebSocket(pipe(new URL("/api/rpc", input.server).href, replace(/^http/u, "ws")))), provide$1(layerWebSocketConstructorGlobal), provide$1(layerJson))));
7549
7549
  yield* log(pipe([
7550
7550
  `# ${note.title}`,
7551
7551
  join(filter$1([
@@ -49242,7 +49242,7 @@ const Extraction = Struct({
49242
49242
  });
49243
49243
  const Organization = Struct({
49244
49244
  body: pipe(String$2, check(isMaxLength(12e3))),
49245
- screenText: pipe(String$2, check(isMaxLength(4e3))),
49245
+ screenText: String$2,
49246
49246
  summary: pipe(String$2, check(isMaxLength(300))),
49247
49247
  tags: pipe(ArraySchema(Tag), check(isMinLength(1), isMaxLength(3))),
49248
49248
  title: pipe(String$2, check(isMinLength(1), isMaxLength(80))),
package/dist/server.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env -S node --max-old-space-size=16384 --heapsnapshot-near-heap-limit=3 --report-on-fatalerror
2
- import { $ as CloseEvent, $a as exit, $c as makeUnsafe$4, $d as identity, $i as shutdown, $l as lastNonEmpty, $n as value$2, $o as runForkWith, $r as flattenIterable, $s as trimEnd, $t as decodeEffect, $u as fromNullishOr, A as withDefault, Aa as all, Ac as mergeAll, Ad as NodeInspectSymbol, Ai as suspend$1, Al as dedupeAdjacentWith, An as withDecodingDefaultKey, Ar as toEncoded, As as zipWith, At as Json, Au as format$2, B as constEof, Bc as closeUnsafe, Bd as isNotNullish, Bl as flatMap$1, Bn as fromIterable$2, Bo as orDie, Br as FileSystem, Bs as isEmpty$2, Bt as Redacted, Bu as getOrUndefined$1, C as Redacted$1, Ca as ipv4ToOctets, Cc as buildWithMemoMap, Cd as contE, Ci as runCollect, Cl as Error$1, Cn as toCodecJson, Co as logFatal, Cr as mapOrSame, Cs as void_, Ct as Defect, Cu as isFailure, D as option, Da as isUnicast, Dc as empty$13, Dd as setStackTraceLimit, Di as runLast, Dl as appendAll, Dn as toType, Do as map$1, Dr as resolveDescription, Ds as withLogSpan, Du as match$3, E as map$8, Ea as isPrivate, Ec as effectDiscard, Ed as getStackTraceLimit, En as toJsonSchemaDocument, Eo as makeSpanScoped, Er as replaceChecks, Es as withFiberSucceed, Et as Exit$1, Eu as map$5, F as json$1, Fa as asSome, Fc as unwrap$2, Fd as equals, Fi as unwrap$1, Fl as filter$4, Fn as empty$7, Fo as onError, Fr as formatIso, Ft as NonEmptyArray, Fu as Reference, G as isWrapper, Ga as catchTag, Gc as CurrentLogAnnotations, Gd as compose$1, Gl as groupBy, Gn as fromRecordUnsafe, Go as provideService, Gr as decodeText, Gs as repeat$1, Gt as Tuple, Gu as merge$1, H as constPong, Hc as make$32, Hd as isObject, Hi as pipeTo, Hl as get$6, Hn as CurrentRedactedNames, Ho as promise, Hr as catchTags$1, Hs as length, Ht as Struct, Hu as getUnsafe, I as layerJson, Ia as asVoid, Ic as Scope, Id as hash, Ii as last$2, Il as filterMap, In as fromInput, Io as onExit, Ir as now, Is as Random$2, It as Null, Iu as Service, J as isStreamSchema, Ja as context$1, Jc as TracerTimingEnabled, Jd as constUndefined, Ji as failCause$2, Jl as isArrayNonEmpty, Jn as remove$3, Jo as repeat, Jr as ensuring, Js as slice$2, Jt as Uint8Array$2, Ju as exists, K as ClientAbort$1, Ka as catchTags, Kc as CurrentLogSpans, Kd as constFalse, Ki as collect, Kl as head, Kn as isRedactedName, Ko as provideServiceEffect, Kr as die$3, Ks as replace$1, Kt as URL$3, Ku as all$1, L as layerSchemaBinary, La as cached, Lc as addFinalizer, Ld as hasProperty, Ll as findFirst, Ln as setAll$1, Lo as onExitPrimitive, Lr as toEpochMillis, Ls as camelToSnake, Lt as NullOr, Lu as add$1, M as withRun, Ma as annotateCurrentSpan, Mc as provideMerge, Md as toStringUnknown, Mi as tap, Ml as empty$11, Mn as omit, Mo as matchCauseEffectEager, Mr as transform$1, Mt as Literals, Mu as parts, Na as annotateLogs, Nc as succeed$2, Nd as format$1, Ni as toReadableStreamEffect, Nl as ensure, Nn as getReferenceKey, No as matchEffect, Nr as transformOptional, Nt as MutableJson, Nu as seconds, O as succeed$5, Oa as unixPathAddress, Oc as launch, Od as BaseProto, Oi as scan, Ol as contains$1, On as withConstructorDefault, Oo as mapEager, Or as resolveIdentifier, Os as withParentSpan, Ot as Finite, Ou as succeed, P as RpcSerialization, Pa as as$1, Pc as succeedContext, Pd as redact, Pl as every, Pn as encodeUnknownEffect, Po as never, Pr as encode, Ps as catchDone, Pt as Never, Q as makeCollectorUnsafe, Qa as ensuring$1, Qc as isDeferred, Qd as flow, Qi as offerUnsafe, Ql as last$1, Qn as make$37, Qo as runFork, Qr as flatMap$3, Qs as trim, Qt as Unknown, Qu as flatten, R as RequestId, Ra as callback, Rc as addFinalizerExit, Rd as isIterable, Ri as fromTransform, Rl as findFirstIndex, Rn as fromIterable$3, Ro as onInterrupt, Rr as defaultFormatter, Rs as endsWith, Rt as Number$2, S as Port, Sa as ipv4FromString, Sc as CurrentMemoMap, Sd as contA, Si as run$3, Sl as nativeTracer, Sn as tag, Sr as isOptional, Ss as useSpan, St as DateTimeUtcFromString, Su as getOrElse$1, T as URL$4, Ta as isLoopback, Tc as effectContext, Td as assignProperty, Ti as runForEachArray, Tl as TaggedError, Tn as toEncoded$1, To as logWarning, Tr as optionalKey$1, Ts as withFiber, Tt as Error$2, Tu as isSuccess, U as ServerClient, Ua as catchIf, Uc as makeUnsafe$2, Ud as isTagged, Ui as make$31, Ul as getSomes, Un as empty$8, Uo as provide$2, Ur as catch_$1, Us as match$2, Ut as TaggedError$1, Uu as make$36, Va as catchDefect, Vc as forkUnsafe$1, Vd as isNotUndefined, Vl as fromIterable$1, Vn as get$7, Vo as orElseSucceed, Vr as catchReason$1, Vs as isNonEmpty$1, Vt as String$1, Vu as getOrUndefinedUnsafe, W as exitSchema, Wa as catchReason, Wc as provide$1, Wd as isUndefined, Wi as makeUnsafe$6, Wl as getUnsafe$1, Wn as fromInput$1, Wo as provideContext, Wr as concat, Ws as padStart, Wu as makeUnsafe$3, X as spanName, Xc as doneUnsafe, Xd as constant, Xi as offer, Xl as isReadonlyArrayNonEmpty, Xn as setAll, Xo as retry, Xr as failCause$3, Xs as startsWith, Xt as UndefinedOr, Xu as flatMap$2, Y as spanAttributes, Ya as contextWith, Yc as _await, Yd as constVoid, Yi as make$33, Yl as isReadonlyArrayEmpty, Yn as set$1, Yo as result$1, Yr as fail$2, Ys as split, Yt as Uint8ArrayFromBase64, Yu as filter$5, Z as Collector, Za as die$2, Zc as into, Zd as dual, Zi as offerAll, Zl as join$1, Zn as isRedacted, Zr as filter$6, Zs as toLowerCase, Zt as Union, Zu as flatMapNullishOr, _a as mebibytes, _d as combine$1, _i as mkUint8Array, _l as DisablePropagation, _n as make$35, _o as interrupt, _r as PropertySignature, _s as try_, _t as ArraySchema, _u as headUnsafe, a as ImageType, aa as makeUnsafe$5, ac as StackTrace, ad as isSome, ai as fromQueue, al as isFailure$1, an as encodeSync, ao as fn$1, ar as fromReadable, as as succeed$1, at as fromWebSocket, au as reverse, b as layer$11, ba as inetAddressFromIpString, bc as prettyErrors, bd as Prototype, bi as pipeThroughChannel, bl as externalSpan, bn as optional$1, bo as log, br as decodeTo$1, bs as updateContext, bt as Class$1, bu as failVoid, c as NotesError, ca as interrupt$2, cc as die$1, cd as map$3, ci as limitBytes, cn as fromJsonString, cr as toUint8Array$1, cs as sync, ct as DecodeError, cu as take$1, d as layer$13, da as interruptAs, dc as filterInterruptors, dd as orElse$2, di as mapArray, dl as fiberEnterUninterruptibleUnsafe, dn as isInt, do as forkScoped, dr as ChildProcessSpawner, ds as tapError, dt as HttpClientError, du as get$8, ec as max$1, ed as fromUndefinedOr, ef as pipe, ei as fromArray, el as die, en as decodeSync, eo as fail$1, er as empty$9, es as runSync, eu as map$4, f as make$39, fa as runIn, fd as orElseSome, fi as mapArrayEffect, fl as forkUnsafe, fn as isMaxLength, fo as fromOption, fr as Arrays, fs as timeout, fu as has$3, g as layer$12, ga as gibibytes, gc as hasInterruptsOnly, gd as String$3, gi as mkString, gn as isSchemaError$1, gr as Objects, gs as tryPromise, gt as Any, gu as empty$12, ha as fromInputUnsafe, hc as hasInterrupts, hd as Number$1, hi as mergeAll$1, hl as reportCauseUnsafe, hn as isSchema, ho as ignore$1, hr as Literal$2, hs as transposeOption, ht as TransportError, hu as toEntries, i as FileType, ia as unbounded, id as isNone, ii as fromPubSub, il as isExit, in as encodeEffect, io as flatMapEager, ir as toSetCookieHeaders, is as serviceOption, iu as reduce, ja as andThen, jc as provide, jd as toJson, ji as takeUntil, jl as drop, jn as isSchemaError, jo as matchCauseEffect, jr as passthrough, jt as Literal$1, ju as millis, k as unwrap$3, ka as acquireRelease, kc as merge$3, kd as Class, ki as succeed$3, kl as dedupe, kn as withDecodingDefault, ko as mapError, kr as string, ks as withSpan, kt as Int, ku as try_$1, l as Organization, la as interruptAll, ld as match$1, li as map$2, ll as effectIsExit, ln as is$4, lo as forkChild, lr as fromWritable, ls as tap$1, lt as EmptyBodyError, lu as takeRight, ma as fromInput$2, mc as hasDies, md as toArray$1, mi as mapError$1, ml as onExitUnsafe, mn as isPattern, mo as gen, mr as FilterGroup, ms as timeoutOrElse, mt as StatusCodeError, mu as map$7, n as Capture, na as takeAll, nd as getOrNull, ni as fromEffect, nl as failCause$1, nn as decodeUnknownEffect, no as filterOrFail, nr as isEmpty$1, ns as scoped, nu as of, o as Note, oa as await_, oc as annotate, od as liftPredicate, oi as fromReadableStream, ol as isSuccess$1, on as encodeTo, oo as fnUntraced, or as pipeThroughDuplex, os as succeedNone, ou as some$2, p as runMain, pa as badArgument, pc as fromReasons, pd as some$1, pi as mapEffect, pl as makeSpanUnsafe, pn as isMinLength, po as fromResult, pr as Filter, ps as timeoutOption, pt as InvalidUrlError, pu as keys, q as getStreamSchemas, qa as catch_, qd as constTrue, qi as end$1, ql as headNonEmpty, qn as merge$2, qo as raceFirst, qr as empty$10, qs as replaceAll, qt as URLFromString, qu as contains$2, r as Extraction, ra as publishUnsafe, rc as Clock, rd as getOrUndefined, ri as fromIterable, rl as interrupt$1, rn as decodeUnknownOption, ro as flatMap, rr as parseHeader, rs as service, rt as SocketOpenError, ru as prepend$2, s as NoteId, sa as getCurrent, sc as combine, sd as liftThrowable, si as groupedWithin, sl as succeed$4, sn as encodeUnknownEffect$1, so as forEach, sr as toArrayBuffer, ss as suspend, su as sort, t as RpcContracts, ta as take, tc as parse$10, td as getOrElse, tf as pipeArguments, tl as fail$3, tn as decodeTo, to as failCause, tr as fromSetCookie, ts as scope, tt as SocketError, ua as interruptAllAs, uc as fail$4, ud as none, ui as mapAccum, ul as fiberEnterInterruptibleUnsafe, un as isGreaterThanOrEqualTo, ur as make$34, us as tapCause, ut as EncodeError, uu as assignProperty$1, va as zero, vc as isNoSuchElementError, vd as flip, vi as onEnd, vl as ParentSpan, vn as makeFilter, vo as interruptible, vr as Suspend, vs as uninterruptible, vt as Boolean$2, vu as make$38, w as String$2, wa as isLinkLocal, wc as effect, wi as runForEach, wl as TaggedClass, wo as logInfo, wr as null_, ws as whileLoop, wt as Duration, wu as isResult, xa as ipFromString, xc as squash, xd as PipeInspectableProto, xi as provideService$1, xl as make$40, xn as optionalKey, xo as logDebug, xr as isNever, xs as updateService, xt as DateTimeUtc, xu as fromOption$1, ya as formatUrlUnsafe, yc as makeDieReason, yd as mapInput, yi as orDie$1, yl as Tracer, yn as mutable, yo as isEffect, yr as Union$1, ys as uninterruptibleMask, yu as fail, z as ResponseDefectEncoded, za as catchCause, zc as close, zd as isNotNull, zi as map$6, zn as has$4, zo as option$1, zr as Path, zs as includes, zt as Record, zu as get$5 } from "./contracts-gJqVIC2c.mjs";
2
+ import { $ as CloseEvent, $a as exit, $c as makeUnsafe$4, $d as identity, $i as shutdown, $l as lastNonEmpty, $n as value$2, $o as runForkWith, $r as flattenIterable, $s as trimEnd, $t as decodeEffect, $u as fromNullishOr, A as withDefault, Aa as all, Ac as mergeAll, Ad as NodeInspectSymbol, Ai as suspend$1, Al as dedupeAdjacentWith, An as withDecodingDefaultKey, Ar as toEncoded, As as zipWith, At as Json, Au as format$2, B as constEof, Bc as closeUnsafe, Bd as isNotNullish, Bl as flatMap$1, Bn as fromIterable$2, Bo as orDie, Br as FileSystem, Bs as isEmpty$2, Bt as Redacted, Bu as getOrUndefined$1, C as Redacted$1, Ca as ipv4ToOctets, Cc as buildWithMemoMap, Cd as contE, Ci as runCollect, Cl as Error$1, Cn as toCodecJson, Co as logFatal, Cr as mapOrSame, Cs as void_, Ct as Defect, Cu as isFailure, D as option, Da as isUnicast, Dc as empty$13, Dd as setStackTraceLimit, Di as runLast, Dl as appendAll, Dn as toType, Do as map$1, Dr as resolveDescription, Ds as withLogSpan, Du as match$3, E as map$8, Ea as isPrivate, Ec as effectDiscard, Ed as getStackTraceLimit, En as toJsonSchemaDocument, Eo as makeSpanScoped, Er as replaceChecks, Es as withFiberSucceed, Et as Exit$1, Eu as map$5, F as json$1, Fa as asSome, Fc as unwrap$2, Fd as equals, Fi as unwrap$1, Fl as filter$4, Fn as empty$7, Fo as onError, Fr as formatIso, Ft as NonEmptyArray, Fu as Reference, G as isWrapper, Ga as catchTag, Gc as CurrentLogAnnotations, Gd as compose$1, Gl as groupBy, Gn as fromRecordUnsafe, Go as provideService, Gr as decodeText, Gs as repeat$1, Gt as Tuple, Gu as merge$1, H as constPong, Hc as make$32, Hd as isObject, Hi as pipeTo, Hl as get$6, Hn as CurrentRedactedNames, Ho as promise, Hr as catchTags$1, Hs as length, Ht as Struct, Hu as getUnsafe, I as layerJson, Ia as asVoid, Ic as Scope, Id as hash, Ii as last$2, Il as filterMap, In as fromInput, Io as onExit, Ir as now, Is as Random$2, It as Null, Iu as Service, J as isStreamSchema, Ja as context$1, Jc as TracerTimingEnabled, Jd as constUndefined, Ji as failCause$2, Jl as isArrayNonEmpty, Jn as remove$3, Jo as repeat, Jr as ensuring, Js as slice$2, Jt as Uint8Array$2, Ju as exists, K as ClientAbort$1, Ka as catchTags, Kc as CurrentLogSpans, Kd as constFalse, Ki as collect, Kl as head, Kn as isRedactedName, Ko as provideServiceEffect, Kr as die$3, Ks as replace$1, Kt as URL$3, Ku as all$1, L as layerSchemaBinary, La as cached, Lc as addFinalizer, Ld as hasProperty, Ll as findFirst, Ln as setAll$1, Lo as onExitPrimitive, Lr as toEpochMillis, Ls as camelToSnake, Lt as NullOr, Lu as add$1, M as withRun, Ma as annotateCurrentSpan, Mc as provideMerge, Md as toStringUnknown, Mi as tap, Ml as empty$11, Mn as omit, Mo as matchCauseEffectEager, Mr as transform$1, Mt as Literals, Mu as parts, Na as annotateLogs, Nc as succeed$2, Nd as format$1, Ni as toReadableStreamEffect, Nl as ensure, Nn as getReferenceKey, No as matchEffect, Nr as transformOptional, Nt as MutableJson, Nu as seconds, O as succeed$5, Oa as unixPathAddress, Oc as launch, Od as BaseProto, Oi as scan, Ol as contains$1, On as withConstructorDefault, Oo as mapEager, Or as resolveIdentifier, Os as withParentSpan, Ot as Finite, Ou as succeed, P as RpcSerialization, Pa as as$1, Pc as succeedContext, Pd as redact, Pl as every, Pn as encodeUnknownEffect, Po as never, Pr as encode, Ps as catchDone, Pt as Never, Q as makeCollectorUnsafe, Qa as ensuring$1, Qc as isDeferred, Qd as flow, Qi as offerUnsafe, Ql as last$1, Qn as make$37, Qo as runFork, Qr as flatMap$3, Qs as trim, Qt as Unknown, Qu as flatten, R as RequestId, Ra as callback, Rc as addFinalizerExit, Rd as isIterable, Ri as fromTransform, Rl as findFirstIndex, Rn as fromIterable$3, Ro as onInterrupt, Rr as defaultFormatter, Rs as endsWith, Rt as Number$2, S as Port, Sa as ipv4FromString, Sc as CurrentMemoMap, Sd as contA, Si as run$3, Sl as nativeTracer, Sn as tag, Sr as isOptional, Ss as useSpan, St as DateTimeUtcFromString, Su as getOrElse$1, T as URL$4, Ta as isLoopback, Tc as effectContext, Td as assignProperty, Ti as runForEachArray, Tl as TaggedError, Tn as toEncoded$1, To as logWarning, Tr as optionalKey$1, Ts as withFiber, Tt as Error$2, Tu as isSuccess, U as ServerClient, Ua as catchIf, Uc as makeUnsafe$2, Ud as isTagged, Ui as make$31, Ul as getSomes, Un as empty$8, Uo as provide$2, Ur as catch_$1, Us as match$2, Ut as TaggedError$1, Uu as make$36, Va as catchDefect, Vc as forkUnsafe$1, Vd as isNotUndefined, Vl as fromIterable$1, Vn as get$7, Vo as orElseSucceed, Vr as catchReason$1, Vs as isNonEmpty$1, Vt as String$1, Vu as getOrUndefinedUnsafe, W as exitSchema, Wa as catchReason, Wc as provide$1, Wd as isUndefined, Wi as makeUnsafe$6, Wl as getUnsafe$1, Wn as fromInput$1, Wo as provideContext, Wr as concat, Ws as padStart, Wu as makeUnsafe$3, X as spanName, Xc as doneUnsafe, Xd as constant, Xi as offer, Xl as isReadonlyArrayNonEmpty, Xn as setAll, Xo as retry, Xr as failCause$3, Xs as startsWith, Xt as UndefinedOr, Xu as flatMap$2, Y as spanAttributes, Ya as contextWith, Yc as _await, Yd as constVoid, Yi as make$33, Yl as isReadonlyArrayEmpty, Yn as set$1, Yo as result$1, Yr as fail$2, Ys as split, Yt as Uint8ArrayFromBase64, Yu as filter$5, Z as Collector, Za as die$2, Zc as into, Zd as dual, Zi as offerAll, Zl as join$1, Zn as isRedacted, Zr as filter$6, Zs as toLowerCase, Zt as Union, Zu as flatMapNullishOr, _a as mebibytes, _d as combine$1, _i as mkUint8Array, _l as DisablePropagation, _n as make$35, _o as interrupt, _r as PropertySignature, _s as try_, _t as ArraySchema, _u as headUnsafe, a as ImageType, aa as makeUnsafe$5, ac as StackTrace, ad as isSome, ai as fromQueue, al as isFailure$1, an as encodeSync, ao as fn$1, ar as fromReadable, as as succeed$1, at as fromWebSocket, au as reverse, b as layer$11, ba as inetAddressFromIpString, bc as prettyErrors, bd as Prototype, bi as pipeThroughChannel, bl as externalSpan, bn as optional$1, bo as log, br as decodeTo$1, bs as updateContext, bt as Class$1, bu as failVoid, c as NotesError, ca as interrupt$2, cc as die$1, cd as map$3, ci as limitBytes, cn as fromJsonString, cr as toUint8Array$1, cs as sync, ct as DecodeError, cu as take$1, d as layer$13, da as interruptAs, dc as filterInterruptors, dd as orElse$2, di as mapArray, dl as fiberEnterUninterruptibleUnsafe, dn as isInt, do as forkScoped, dr as ChildProcessSpawner, ds as tapError, dt as HttpClientError, du as get$8, ec as max$1, ed as fromUndefinedOr, ef as pipe, ei as fromArray, el as die, en as decodeSync, eo as fail$1, er as empty$9, es as runSync, eu as map$4, f as make$39, fa as runIn, fd as orElseSome, fi as mapArrayEffect, fl as forkUnsafe, fn as isMaxLength, fo as fromOption, fr as Arrays, fs as timeout, fu as has$3, g as layer$12, ga as gibibytes, gc as hasInterruptsOnly, gd as String$3, gi as mkString, gn as isSchemaError$1, gr as Objects, gs as tryPromise, gt as Any, gu as empty$12, ha as fromInputUnsafe, hc as hasInterrupts, hd as Number$1, hi as mergeAll$1, hl as reportCauseUnsafe, hn as isSchema, ho as ignore$1, hr as Literal$2, hs as transposeOption, ht as TransportError, hu as toEntries, i as FileType, ia as unbounded, id as isNone, ii as fromPubSub, il as isExit, in as encodeEffect, io as flatMapEager, ir as toSetCookieHeaders, is as serviceOption, iu as reduce, ja as andThen, jc as provide, jd as toJson, ji as takeUntil, jl as drop, jn as isSchemaError, jo as matchCauseEffect, jr as passthrough, jt as Literal$1, ju as millis, k as unwrap$3, ka as acquireRelease, kc as merge$3, kd as Class, ki as succeed$3, kl as dedupe, kn as withDecodingDefault, ko as mapError, kr as string, ks as withSpan, kt as Int, ku as try_$1, l as Organization, la as interruptAll, ld as match$1, li as map$2, ll as effectIsExit, ln as is$4, lo as forkChild, lr as fromWritable, ls as tap$1, lt as EmptyBodyError, lu as takeRight, ma as fromInput$2, mc as hasDies, md as toArray$1, mi as mapError$1, ml as onExitUnsafe, mn as isPattern, mo as gen, mr as FilterGroup, ms as timeoutOrElse, mt as StatusCodeError, mu as map$7, n as Capture, na as takeAll, nd as getOrNull, ni as fromEffect, nl as failCause$1, nn as decodeUnknownEffect, no as filterOrFail, nr as isEmpty$1, ns as scoped, nu as of, o as Note, oa as await_, oc as annotate, od as liftPredicate, oi as fromReadableStream, ol as isSuccess$1, on as encodeTo, oo as fnUntraced, or as pipeThroughDuplex, os as succeedNone, ou as some$2, p as runMain, pa as badArgument, pc as fromReasons, pd as some$1, pi as mapEffect, pl as makeSpanUnsafe, pn as isMinLength, po as fromResult, pr as Filter, ps as timeoutOption, pt as InvalidUrlError, pu as keys, q as getStreamSchemas, qa as catch_, qd as constTrue, qi as end$1, ql as headNonEmpty, qn as merge$2, qo as raceFirst, qr as empty$10, qs as replaceAll, qt as URLFromString, qu as contains$2, r as Extraction, ra as publishUnsafe, rc as Clock, rd as getOrUndefined, ri as fromIterable, rl as interrupt$1, rn as decodeUnknownOption, ro as flatMap, rr as parseHeader, rs as service, rt as SocketOpenError, ru as prepend$2, s as NoteId, sa as getCurrent, sc as combine, sd as liftThrowable, si as groupedWithin, sl as succeed$4, sn as encodeUnknownEffect$1, so as forEach, sr as toArrayBuffer, ss as suspend, su as sort, t as RpcContracts, ta as take, tc as parse$10, td as getOrElse, tf as pipeArguments, tl as fail$3, tn as decodeTo, to as failCause, tr as fromSetCookie, ts as scope, tt as SocketError, ua as interruptAllAs, uc as fail$4, ud as none, ui as mapAccum, ul as fiberEnterInterruptibleUnsafe, un as isGreaterThanOrEqualTo, ur as make$34, us as tapCause, ut as EncodeError, uu as assignProperty$1, va as zero, vc as isNoSuchElementError, vd as flip, vi as onEnd, vl as ParentSpan, vn as makeFilter, vo as interruptible, vr as Suspend, vs as uninterruptible, vt as Boolean$2, vu as make$38, w as String$2, wa as isLinkLocal, wc as effect, wi as runForEach, wl as TaggedClass, wo as logInfo, wr as null_, ws as whileLoop, wt as Duration, wu as isResult, xa as ipFromString, xc as squash, xd as PipeInspectableProto, xi as provideService$1, xl as make$40, xn as optionalKey, xo as logDebug, xr as isNever, xs as updateService, xt as DateTimeUtc, xu as fromOption$1, ya as formatUrlUnsafe, yc as makeDieReason, yd as mapInput, yi as orDie$1, yl as Tracer, yn as mutable, yo as isEffect, yr as Union$1, ys as uninterruptibleMask, yu as fail, z as ResponseDefectEncoded, za as catchCause, zc as close, zd as isNotNull, zi as map$6, zn as has$4, zo as option$1, zr as Path, zs as includes, zt as Record, zu as get$5 } from "./contracts-DgOSCO2p.mjs";
3
3
  import { createRequire } from "node:module";
4
4
  import { Duplex, Readable, pipeline } from "node:stream";
5
5
  import * as Http from "node:http";
@@ -90516,7 +90516,9 @@ function isYouTube(url) {
90516
90516
  return youTubeHosts.test(new URL(url).hostname);
90517
90517
  }
90518
90518
  function hasVideo(url) {
90519
- return sourceFor(url) !== "Website" || isYouTube(url) || instagramHosts.test(new URL(url).hostname);
90519
+ const link = new URL(url);
90520
+ if (sourceFor(url) === "TikTok") return !includes("/photo/")(link.pathname);
90521
+ return sourceFor(url) === "X" || isYouTube(url) || instagramHosts.test(link.hostname);
90520
90522
  }
90521
90523
  function commentFor(text) {
90522
90524
  return pipe(text, replace$1(new RegExp(urlPattern.source, "giu"), ""), plainText);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deslop/stash",
3
- "version": "0.1.1071",
3
+ "version": "0.1.1073",
4
4
  "description": "A personal inbox for links and notes: the server, the iOS app, and a CLI that saves to it.",
5
5
  "repository": {
6
6
  "type": "git",