@livestore/utils 0.0.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/.tsbuildinfo.json +1 -0
- package/dist/Deferred.d.ts +10 -0
- package/dist/Deferred.d.ts.map +1 -0
- package/dist/Deferred.js +18 -0
- package/dist/Deferred.js.map +1 -0
- package/dist/NoopTracer.d.ts +9 -0
- package/dist/NoopTracer.d.ts.map +1 -0
- package/dist/NoopTracer.js +54 -0
- package/dist/NoopTracer.js.map +1 -0
- package/dist/base64.d.ts +12 -0
- package/dist/base64.d.ts.map +1 -0
- package/dist/base64.js +114 -0
- package/dist/base64.js.map +1 -0
- package/dist/binary.d.ts +4 -0
- package/dist/binary.d.ts.map +1 -0
- package/dist/binary.js +23 -0
- package/dist/binary.js.map +1 -0
- package/dist/browser.d.ts +3 -0
- package/dist/browser.d.ts.map +1 -0
- package/dist/browser.js +28 -0
- package/dist/browser.js.map +1 -0
- package/dist/effect/Debounce.d.ts +5 -0
- package/dist/effect/Debounce.d.ts.map +1 -0
- package/dist/effect/Debounce.js +33 -0
- package/dist/effect/Debounce.js.map +1 -0
- package/dist/effect/Effect.d.ts +7 -0
- package/dist/effect/Effect.d.ts.map +1 -0
- package/dist/effect/Effect.js +17 -0
- package/dist/effect/Effect.js.map +1 -0
- package/dist/effect/EndableQueue.d.ts +11 -0
- package/dist/effect/EndableQueue.d.ts.map +1 -0
- package/dist/effect/EndableQueue.js +22 -0
- package/dist/effect/EndableQueue.js.map +1 -0
- package/dist/effect/EnvVar.d.ts +16 -0
- package/dist/effect/EnvVar.d.ts.map +1 -0
- package/dist/effect/EnvVar.js +21 -0
- package/dist/effect/EnvVar.js.map +1 -0
- package/dist/effect/Error.d.ts +12 -0
- package/dist/effect/Error.d.ts.map +1 -0
- package/dist/effect/Error.js +13 -0
- package/dist/effect/Error.js.map +1 -0
- package/dist/effect/Gate.d.ts +14 -0
- package/dist/effect/Gate.d.ts.map +1 -0
- package/dist/effect/Gate.js +17 -0
- package/dist/effect/Gate.js.map +1 -0
- package/dist/effect/Layer.d.ts +6 -0
- package/dist/effect/Layer.d.ts.map +1 -0
- package/dist/effect/Layer.js +11 -0
- package/dist/effect/Layer.js.map +1 -0
- package/dist/effect/Otel/Dummy.d.ts +5 -0
- package/dist/effect/Otel/Dummy.d.ts.map +1 -0
- package/dist/effect/Otel/Dummy.js +22 -0
- package/dist/effect/Otel/Dummy.js.map +1 -0
- package/dist/effect/Otel/Meter.d.ts +20 -0
- package/dist/effect/Otel/Meter.d.ts.map +1 -0
- package/dist/effect/Otel/Meter.js +76 -0
- package/dist/effect/Otel/Meter.js.map +1 -0
- package/dist/effect/Otel/OtlpGrpc.d.ts +6 -0
- package/dist/effect/Otel/OtlpGrpc.d.ts.map +1 -0
- package/dist/effect/Otel/OtlpGrpc.js +42 -0
- package/dist/effect/Otel/OtlpGrpc.js.map +1 -0
- package/dist/effect/Otel/OtlpHttp.d.ts +6 -0
- package/dist/effect/Otel/OtlpHttp.d.ts.map +1 -0
- package/dist/effect/Otel/OtlpHttp.js +42 -0
- package/dist/effect/Otel/OtlpHttp.js.map +1 -0
- package/dist/effect/Otel/OtlpWebsocket.d.ts +6 -0
- package/dist/effect/Otel/OtlpWebsocket.d.ts.map +1 -0
- package/dist/effect/Otel/OtlpWebsocket.js +42 -0
- package/dist/effect/Otel/OtlpWebsocket.js.map +1 -0
- package/dist/effect/Otel/Span.d.ts +32 -0
- package/dist/effect/Otel/Span.d.ts.map +1 -0
- package/dist/effect/Otel/Span.js +97 -0
- package/dist/effect/Otel/Span.js.map +1 -0
- package/dist/effect/Otel/Tracer.d.ts +15 -0
- package/dist/effect/Otel/Tracer.d.ts.map +1 -0
- package/dist/effect/Otel/Tracer.js +17 -0
- package/dist/effect/Otel/Tracer.js.map +1 -0
- package/dist/effect/Otel/index.d.ts +8 -0
- package/dist/effect/Otel/index.d.ts.map +1 -0
- package/dist/effect/Otel/index.js +9 -0
- package/dist/effect/Otel/index.js.map +1 -0
- package/dist/effect/Otel/lib-metrics/ExporterMetricsOltpGrpc.d.ts +14 -0
- package/dist/effect/Otel/lib-metrics/ExporterMetricsOltpGrpc.d.ts.map +1 -0
- package/dist/effect/Otel/lib-metrics/ExporterMetricsOltpGrpc.js +15 -0
- package/dist/effect/Otel/lib-metrics/ExporterMetricsOltpGrpc.js.map +1 -0
- package/dist/effect/Otel/lib-metrics/ExporterMetricsOltpHttp.d.ts +14 -0
- package/dist/effect/Otel/lib-metrics/ExporterMetricsOltpHttp.d.ts.map +1 -0
- package/dist/effect/Otel/lib-metrics/ExporterMetricsOltpHttp.js +15 -0
- package/dist/effect/Otel/lib-metrics/ExporterMetricsOltpHttp.js.map +1 -0
- package/dist/effect/Otel/lib-metrics/ExporterMetricsOltpWebsocket.d.ts +19 -0
- package/dist/effect/Otel/lib-metrics/ExporterMetricsOltpWebsocket.d.ts.map +1 -0
- package/dist/effect/Otel/lib-metrics/ExporterMetricsOltpWebsocket.js +17 -0
- package/dist/effect/Otel/lib-metrics/ExporterMetricsOltpWebsocket.js.map +1 -0
- package/dist/effect/Otel/lib-metrics/MetricsProvider.d.ts +10 -0
- package/dist/effect/Otel/lib-metrics/MetricsProvider.d.ts.map +1 -0
- package/dist/effect/Otel/lib-metrics/MetricsProvider.js +4 -0
- package/dist/effect/Otel/lib-metrics/MetricsProvider.js.map +1 -0
- package/dist/effect/Otel/lib-metrics/OTLPMetricsProviderGrpc.d.ts +16 -0
- package/dist/effect/Otel/lib-metrics/OTLPMetricsProviderGrpc.d.ts.map +1 -0
- package/dist/effect/Otel/lib-metrics/OTLPMetricsProviderGrpc.js +39 -0
- package/dist/effect/Otel/lib-metrics/OTLPMetricsProviderGrpc.js.map +1 -0
- package/dist/effect/Otel/lib-metrics/OTLPMetricsProviderHttp.d.ts +16 -0
- package/dist/effect/Otel/lib-metrics/OTLPMetricsProviderHttp.d.ts.map +1 -0
- package/dist/effect/Otel/lib-metrics/OTLPMetricsProviderHttp.js +39 -0
- package/dist/effect/Otel/lib-metrics/OTLPMetricsProviderHttp.js.map +1 -0
- package/dist/effect/Otel/lib-metrics/OTLPMetricsProviderWebsocket.d.ts +16 -0
- package/dist/effect/Otel/lib-metrics/OTLPMetricsProviderWebsocket.d.ts.map +1 -0
- package/dist/effect/Otel/lib-metrics/OTLPMetricsProviderWebsocket.js +39 -0
- package/dist/effect/Otel/lib-metrics/OTLPMetricsProviderWebsocket.js.map +1 -0
- package/dist/effect/Otel/lib-metrics/PeriodicMetricsProvider.d.ts +17 -0
- package/dist/effect/Otel/lib-metrics/PeriodicMetricsProvider.d.ts.map +1 -0
- package/dist/effect/Otel/lib-metrics/PeriodicMetricsProvider.js +27 -0
- package/dist/effect/Otel/lib-metrics/PeriodicMetricsProvider.js.map +1 -0
- package/dist/effect/Otel/lib-tracer/BatchSpanProcessor.d.ts +18 -0
- package/dist/effect/Otel/lib-tracer/BatchSpanProcessor.d.ts.map +1 -0
- package/dist/effect/Otel/lib-tracer/BatchSpanProcessor.js +31 -0
- package/dist/effect/Otel/lib-tracer/BatchSpanProcessor.js.map +1 -0
- package/dist/effect/Otel/lib-tracer/ExporterTraceOtlpGrpc.d.ts +19 -0
- package/dist/effect/Otel/lib-tracer/ExporterTraceOtlpGrpc.d.ts.map +1 -0
- package/dist/effect/Otel/lib-tracer/ExporterTraceOtlpGrpc.js +36 -0
- package/dist/effect/Otel/lib-tracer/ExporterTraceOtlpGrpc.js.map +1 -0
- package/dist/effect/Otel/lib-tracer/ExporterTraceOtlpHttp.d.ts +19 -0
- package/dist/effect/Otel/lib-tracer/ExporterTraceOtlpHttp.d.ts.map +1 -0
- package/dist/effect/Otel/lib-tracer/ExporterTraceOtlpHttp.js +36 -0
- package/dist/effect/Otel/lib-tracer/ExporterTraceOtlpHttp.js.map +1 -0
- package/dist/effect/Otel/lib-tracer/ExporterTraceOtlpWebsocket.d.ts +9 -0
- package/dist/effect/Otel/lib-tracer/ExporterTraceOtlpWebsocket.d.ts.map +1 -0
- package/dist/effect/Otel/lib-tracer/ExporterTraceOtlpWebsocket.js +29 -0
- package/dist/effect/Otel/lib-tracer/ExporterTraceOtlpWebsocket.js.map +1 -0
- package/dist/effect/Otel/lib-tracer/SimpleProcessor.d.ts +19 -0
- package/dist/effect/Otel/lib-tracer/SimpleProcessor.d.ts.map +1 -0
- package/dist/effect/Otel/lib-tracer/SimpleProcessor.js +25 -0
- package/dist/effect/Otel/lib-tracer/SimpleProcessor.js.map +1 -0
- package/dist/effect/Otel/lib-tracer/TracerProvider.d.ts +10 -0
- package/dist/effect/Otel/lib-tracer/TracerProvider.d.ts.map +1 -0
- package/dist/effect/Otel/lib-tracer/TracerProvider.js +7 -0
- package/dist/effect/Otel/lib-tracer/TracerProvider.js.map +1 -0
- package/dist/effect/Otel/lib-tracer/WebProvider.d.ts +18 -0
- package/dist/effect/Otel/lib-tracer/WebProvider.d.ts.map +1 -0
- package/dist/effect/Otel/lib-tracer/WebProvider.js +25 -0
- package/dist/effect/Otel/lib-tracer/WebProvider.js.map +1 -0
- package/dist/effect/ReadonlyArray.d.ts +4 -0
- package/dist/effect/ReadonlyArray.d.ts.map +1 -0
- package/dist/effect/ReadonlyArray.js +11 -0
- package/dist/effect/ReadonlyArray.js.map +1 -0
- package/dist/effect/RequestResolver.d.ts +11 -0
- package/dist/effect/RequestResolver.d.ts.map +1 -0
- package/dist/effect/RequestResolver.js +18 -0
- package/dist/effect/RequestResolver.js.map +1 -0
- package/dist/effect/STM.d.ts +3 -0
- package/dist/effect/STM.d.ts.map +1 -0
- package/dist/effect/STM.js +3 -0
- package/dist/effect/STM.js.map +1 -0
- package/dist/effect/Schedule.d.ts +5 -0
- package/dist/effect/Schedule.d.ts.map +1 -0
- package/dist/effect/Schedule.js +7 -0
- package/dist/effect/Schedule.js.map +1 -0
- package/dist/effect/Scheduler.d.ts +49 -0
- package/dist/effect/Scheduler.d.ts.map +1 -0
- package/dist/effect/Scheduler.js +168 -0
- package/dist/effect/Scheduler.js.map +1 -0
- package/dist/effect/Schema/SchemaHash.d.ts +3 -0
- package/dist/effect/Schema/SchemaHash.d.ts.map +1 -0
- package/dist/effect/Schema/SchemaHash.js +15 -0
- package/dist/effect/Schema/SchemaHash.js.map +1 -0
- package/dist/effect/Schema/SchemaHash.test.d.ts +2 -0
- package/dist/effect/Schema/SchemaHash.test.d.ts.map +1 -0
- package/dist/effect/Schema/SchemaHash.test.js +13 -0
- package/dist/effect/Schema/SchemaHash.test.js.map +1 -0
- package/dist/effect/Schema/SchemaJsonWrapper.d.ts +11 -0
- package/dist/effect/Schema/SchemaJsonWrapper.d.ts.map +1 -0
- package/dist/effect/Schema/SchemaJsonWrapper.js +38 -0
- package/dist/effect/Schema/SchemaJsonWrapper.js.map +1 -0
- package/dist/effect/Schema/SchemaJsonWrapper.test.d.ts +2 -0
- package/dist/effect/Schema/SchemaJsonWrapper.test.d.ts.map +1 -0
- package/dist/effect/Schema/SchemaJsonWrapper.test.js +42 -0
- package/dist/effect/Schema/SchemaJsonWrapper.test.js.map +1 -0
- package/dist/effect/Schema/index.d.ts +15 -0
- package/dist/effect/Schema/index.d.ts.map +1 -0
- package/dist/effect/Schema/index.js +14 -0
- package/dist/effect/Schema/index.js.map +1 -0
- package/dist/effect/ServiceContext.d.ts +39 -0
- package/dist/effect/ServiceContext.d.ts.map +1 -0
- package/dist/effect/ServiceContext.js +61 -0
- package/dist/effect/ServiceContext.js.map +1 -0
- package/dist/effect/SmartQueue.d.ts +38 -0
- package/dist/effect/SmartQueue.d.ts.map +1 -0
- package/dist/effect/SmartQueue.js +123 -0
- package/dist/effect/SmartQueue.js.map +1 -0
- package/dist/effect/Stream/chainSwitch.d.ts +3 -0
- package/dist/effect/Stream/chainSwitch.d.ts.map +1 -0
- package/dist/effect/Stream/chainSwitch.js +48 -0
- package/dist/effect/Stream/chainSwitch.js.map +1 -0
- package/dist/effect/Stream/index.d.ts +37 -0
- package/dist/effect/Stream/index.d.ts.map +1 -0
- package/dist/effect/Stream/index.js +82 -0
- package/dist/effect/Stream/index.js.map +1 -0
- package/dist/effect/SubscriptionRef.d.ts +10 -0
- package/dist/effect/SubscriptionRef.d.ts.map +1 -0
- package/dist/effect/SubscriptionRef.js +8 -0
- package/dist/effect/SubscriptionRef.js.map +1 -0
- package/dist/effect/TimeoutGate.d.ts +13 -0
- package/dist/effect/TimeoutGate.d.ts.map +1 -0
- package/dist/effect/TimeoutGate.js +41 -0
- package/dist/effect/TimeoutGate.js.map +1 -0
- package/dist/effect/WebCrypto.d.ts +18 -0
- package/dist/effect/WebCrypto.d.ts.map +1 -0
- package/dist/effect/WebCrypto.js +56 -0
- package/dist/effect/WebCrypto.js.map +1 -0
- package/dist/effect/WebLock.d.ts +5 -0
- package/dist/effect/WebLock.d.ts.map +1 -0
- package/dist/effect/WebLock.js +20 -0
- package/dist/effect/WebLock.js.map +1 -0
- package/dist/effect/browser.d.ts +19 -0
- package/dist/effect/browser.d.ts.map +1 -0
- package/dist/effect/browser.js +82 -0
- package/dist/effect/browser.js.map +1 -0
- package/dist/effect/fetch.d.ts +89 -0
- package/dist/effect/fetch.d.ts.map +1 -0
- package/dist/effect/fetch.js +142 -0
- package/dist/effect/fetch.js.map +1 -0
- package/dist/effect/index.d.ts +50 -0
- package/dist/effect/index.d.ts.map +1 -0
- package/dist/effect/index.js +58 -0
- package/dist/effect/index.js.map +1 -0
- package/dist/global.d.ts +5 -0
- package/dist/global.d.ts.map +1 -0
- package/dist/global.js +2 -0
- package/dist/global.js.map +1 -0
- package/dist/guards.d.ts +6 -0
- package/dist/guards.d.ts.map +1 -0
- package/dist/guards.js +6 -0
- package/dist/guards.js.map +1 -0
- package/dist/index.d.ts +69 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +162 -0
- package/dist/index.js.map +1 -0
- package/dist/object/index.d.ts +10 -0
- package/dist/object/index.d.ts.map +1 -0
- package/dist/object/index.js +10 -0
- package/dist/object/index.js.map +1 -0
- package/dist/object/omit.d.ts +3 -0
- package/dist/object/omit.d.ts.map +1 -0
- package/dist/object/omit.js +14 -0
- package/dist/object/omit.js.map +1 -0
- package/dist/object/pick.d.ts +14 -0
- package/dist/object/pick.d.ts.map +1 -0
- package/dist/object/pick.js +17 -0
- package/dist/object/pick.js.map +1 -0
- package/dist/promise.d.ts +6 -0
- package/dist/promise.d.ts.map +1 -0
- package/dist/promise.js +27 -0
- package/dist/promise.js.map +1 -0
- package/dist/set.d.ts +2 -0
- package/dist/set.d.ts.map +1 -0
- package/dist/set.js +10 -0
- package/dist/set.js.map +1 -0
- package/dist/single-item.d.ts +8 -0
- package/dist/single-item.d.ts.map +1 -0
- package/dist/single-item.js +9 -0
- package/dist/single-item.js.map +1 -0
- package/dist/string.d.ts +3 -0
- package/dist/string.d.ts.map +1 -0
- package/dist/string.js +3 -0
- package/dist/string.js.map +1 -0
- package/dist/time.d.ts +12 -0
- package/dist/time.d.ts.map +1 -0
- package/dist/time.js +22 -0
- package/dist/time.js.map +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/json.d.ts +27 -0
- package/dist/types/json.d.ts.map +1 -0
- package/dist/types/json.js +2 -0
- package/dist/types/json.js.map +1 -0
- package/package.json +58 -0
- package/src/Deferred.ts +24 -0
- package/src/NoopTracer.ts +75 -0
- package/src/base64.ts +118 -0
- package/src/browser.ts +32 -0
- package/src/effect/Effect.ts +27 -0
- package/src/effect/Error.ts +12 -0
- package/src/effect/Otel/Dummy.ts +32 -0
- package/src/effect/Otel/Meter.ts +145 -0
- package/src/effect/Otel/OtlpGrpc.ts +75 -0
- package/src/effect/Otel/OtlpHttp.ts +75 -0
- package/src/effect/Otel/OtlpWebsocket.ts +75 -0
- package/src/effect/Otel/Span.ts +222 -0
- package/src/effect/Otel/Tracer.ts +30 -0
- package/src/effect/Otel/index.ts +8 -0
- package/src/effect/Otel/lib-metrics/ExporterMetricsOltpGrpc.ts +39 -0
- package/src/effect/Otel/lib-metrics/ExporterMetricsOltpHttp.ts +39 -0
- package/src/effect/Otel/lib-metrics/ExporterMetricsOltpWebsocket.ts +47 -0
- package/src/effect/Otel/lib-metrics/MetricsProvider.ts +12 -0
- package/src/effect/Otel/lib-metrics/OTLPMetricsProviderGrpc.ts +77 -0
- package/src/effect/Otel/lib-metrics/OTLPMetricsProviderHttp.ts +77 -0
- package/src/effect/Otel/lib-metrics/OTLPMetricsProviderWebsocket.ts +80 -0
- package/src/effect/Otel/lib-metrics/PeriodicMetricsProvider.ts +55 -0
- package/src/effect/Otel/lib-tracer/BatchSpanProcessor.ts +58 -0
- package/src/effect/Otel/lib-tracer/ExporterTraceOtlpGrpc.ts +64 -0
- package/src/effect/Otel/lib-tracer/ExporterTraceOtlpHttp.ts +64 -0
- package/src/effect/Otel/lib-tracer/ExporterTraceOtlpWebsocket.ts +38 -0
- package/src/effect/Otel/lib-tracer/README.md +1 -0
- package/src/effect/Otel/lib-tracer/SimpleProcessor.ts +46 -0
- package/src/effect/Otel/lib-tracer/TracerProvider.ts +16 -0
- package/src/effect/Otel/lib-tracer/WebProvider.ts +48 -0
- package/src/effect/Schedule.ts +12 -0
- package/src/effect/ServiceContext.ts +116 -0
- package/src/effect/index.ts +65 -0
- package/src/global.ts +5 -0
- package/src/guards.ts +8 -0
- package/src/index.ts +217 -0
- package/src/object/index.ts +24 -0
- package/src/object/omit.ts +17 -0
- package/src/object/pick.ts +27 -0
- package/src/promise.ts +43 -0
- package/src/set.ts +10 -0
- package/src/string.ts +2 -0
- package/src/time.ts +25 -0
- package/tsconfig.json +13 -0
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import * as Data from '@effect/data/Data';
|
|
2
|
+
import { pipe } from '@effect/data/Function';
|
|
3
|
+
import * as Effect from '@effect/io/Effect';
|
|
4
|
+
import * as msgpack from 'msgpackr';
|
|
5
|
+
import * as Otel from './Otel/index.js';
|
|
6
|
+
export const fetchHead = (url, headers) => pipe(Effect.tryPromise({
|
|
7
|
+
try: () => fetch(url, { method: 'head', headers }),
|
|
8
|
+
catch: (error) => new FetchHeadError({ url, error }),
|
|
9
|
+
}), Effect.tap((res) => Otel.addAttribute('http.status', res.status)), Otel.withSpan('fetchHead', { attributes: { 'http.url': url.toString() } }));
|
|
10
|
+
export const fetchText = (url, headers) => pipe(Effect.tryPromise({
|
|
11
|
+
try: () => fetch(url, { headers }),
|
|
12
|
+
catch: (error) => new FetchTextError({ url, error }),
|
|
13
|
+
}), Effect.tap((res) => Otel.addAttribute('http.status', res.status)), Effect.flatMap((resp) => resp.ok
|
|
14
|
+
? Effect.tryPromise({
|
|
15
|
+
try: () => resp.text(),
|
|
16
|
+
catch: (error) => new FetchTextError({ url, error, status: resp.status }),
|
|
17
|
+
})
|
|
18
|
+
: Effect.fail(new FetchTextError({ url, status: resp.status }))), Otel.withSpan('fetchText', { attributes: { 'http.url': url.toString() } }));
|
|
19
|
+
// TODO refactor
|
|
20
|
+
export const fetchPostMsgpack = ({ url, payload, headers, }) => pipe(Effect.try(() => {
|
|
21
|
+
const formData = new FormData();
|
|
22
|
+
const payloadBuffer = msgpack.pack(payload);
|
|
23
|
+
const payloadBlob = new Blob([payloadBuffer], { type: 'application/octet-stream' });
|
|
24
|
+
formData.append('bytes', payloadBlob);
|
|
25
|
+
return formData;
|
|
26
|
+
}), Effect.flatMap((formData) => Effect.tryPromise(() => fetch(url, { headers, method: 'POST', body: formData }))), Effect.mapError((error) => new FetchMsgpackError({ url, error })), Effect.tap((res) => Otel.addAttribute('http.status', res.status)), Effect.flatMap((resp) => resp.ok
|
|
27
|
+
? Effect.tryPromise({
|
|
28
|
+
try: () => resp.arrayBuffer(),
|
|
29
|
+
catch: (error) => new FetchMsgpackError({ url, error, status: resp.status }),
|
|
30
|
+
})
|
|
31
|
+
: Effect.fail(new FetchMsgpackError({ url, status: resp.status }))), Effect.map((responseBuffer) => {
|
|
32
|
+
// NOTE this is needed since otherwise `new Date(someBigInt)` will throw
|
|
33
|
+
const packr = new msgpack.Packr({ useRecords: false, int64AsNumber: true });
|
|
34
|
+
return packr.unpack(new Uint8Array(responseBuffer));
|
|
35
|
+
}), Otel.withSpan('fetchPostMsgpack', { attributes: { 'http.url': url.toString() } }));
|
|
36
|
+
export const fetchJSON = (url, headers) => pipe(Effect.tryPromise({
|
|
37
|
+
try: () => fetch(url, { headers }),
|
|
38
|
+
catch: (error) => new FetchJSONError({ url, error }),
|
|
39
|
+
}), Effect.tap((res) => Otel.addAttribute('http.status', res.status)), Effect.flatMap((resp) => resp.ok
|
|
40
|
+
? Effect.tryPromise({
|
|
41
|
+
try: () => resp.json(),
|
|
42
|
+
catch: (error) => new FetchJSONError({
|
|
43
|
+
url,
|
|
44
|
+
error,
|
|
45
|
+
status: resp.status,
|
|
46
|
+
headers: Object.fromEntries(resp.headers.entries()),
|
|
47
|
+
}),
|
|
48
|
+
})
|
|
49
|
+
: pipe(Effect.tryPromise({
|
|
50
|
+
try: () => resp.json(),
|
|
51
|
+
catch: (error) => new FetchJSONError({
|
|
52
|
+
url,
|
|
53
|
+
error,
|
|
54
|
+
status: resp.status,
|
|
55
|
+
headers: Object.fromEntries(resp.headers.entries()),
|
|
56
|
+
}),
|
|
57
|
+
}), Effect.flatMap((body) => Effect.fail(new FetchJSONError({
|
|
58
|
+
url,
|
|
59
|
+
status: resp.status,
|
|
60
|
+
body,
|
|
61
|
+
headers: Object.fromEntries(resp.headers.entries()),
|
|
62
|
+
}))))), Otel.withSpan('fetchJSON', { attributes: { 'http.url': url.toString() } }));
|
|
63
|
+
export const fetchJSONPost = (url, headers) => pipe(Effect.tryPromise({
|
|
64
|
+
try: () => fetch(url, { headers, method: 'post' }),
|
|
65
|
+
catch: (error) => new FetchJSONError({ url, error }),
|
|
66
|
+
}), Effect.tap((res) => Otel.addAttribute('http.status', res.status)), Effect.flatMap((resp) => resp.ok
|
|
67
|
+
? Effect.tryPromise({
|
|
68
|
+
try: () => resp.json(),
|
|
69
|
+
catch: (error) => new FetchJSONError({ url, error, status: resp.status }),
|
|
70
|
+
})
|
|
71
|
+
: Effect.fail(new FetchJSONError({ url, status: resp.status }))), Otel.withSpan('fetchJSONPost', { attributes: { 'http.url': url.toString() } }));
|
|
72
|
+
// TODO refactor to merge with `fetchJSONPost`
|
|
73
|
+
export const fetchJSONPostWithBody = ({ url, body, headers, }) => pipe(Effect.tryPromise({
|
|
74
|
+
try: () => fetch(url, { headers, method: 'post', body: JSON.stringify(body) }),
|
|
75
|
+
catch: (error) => new FetchJSONError({ url, error }),
|
|
76
|
+
}), Effect.tap((res) => Otel.addAttribute('http.status', res.status)), Effect.flatMap((resp) => resp.ok
|
|
77
|
+
? Effect.tryPromise({
|
|
78
|
+
try: () => resp.json(),
|
|
79
|
+
catch: (error) => new FetchJSONError({ url, error, status: resp.status }),
|
|
80
|
+
})
|
|
81
|
+
: pipe(Effect.tryPromise(() => resp.json()), Effect.mapError(() => new FetchJSONError({ url, status: resp.status })), Effect.flatMap((jsonError) => Effect.fail(new FetchJSONError({ url, status: resp.status, error: jsonError }))))), Otel.withSpan('fetchJSONPostWithBody', { attributes: { 'http.url': url.toString() } }));
|
|
82
|
+
export const fetchArrayBuffer = (url, headers) => pipe(Effect.tryPromise({
|
|
83
|
+
try: () => fetch(url, { headers }),
|
|
84
|
+
catch: (error) => new FetchArrayBufferError({ url, error }),
|
|
85
|
+
}), Effect.tap((res) => Otel.addAttribute('http.status', res.status)), Effect.flatMap((resp) => resp.ok
|
|
86
|
+
? Effect.tryPromise({
|
|
87
|
+
try: () => resp.arrayBuffer(),
|
|
88
|
+
catch: (error) => new FetchArrayBufferError({ url, error, status: resp.status }),
|
|
89
|
+
})
|
|
90
|
+
: Effect.fail(new FetchArrayBufferError({ url, status: resp.status }))), Otel.withSpan('fetchArrayBuffer', { attributes: { 'http.url': url.toString() } }));
|
|
91
|
+
export const fetchBlob = (url) => pipe(Effect.tryPromise({
|
|
92
|
+
try: () => fetch(url),
|
|
93
|
+
catch: (error) => new FetchBlobError({ url, error }),
|
|
94
|
+
}), Effect.tap((res) => Otel.addAttribute('http.status', res.status)), Effect.flatMap((resp) => resp.ok
|
|
95
|
+
? Effect.tryPromise({
|
|
96
|
+
try: () => resp.blob(),
|
|
97
|
+
catch: (error) => new FetchBlobError({ url, error, status: resp.status }),
|
|
98
|
+
})
|
|
99
|
+
: Effect.fail(new FetchBlobError({ url, status: resp.status }))), Otel.withSpan('fetchBlob', { attributes: { 'http.url': url.toString() } }));
|
|
100
|
+
export class FetchHeadError extends Data.TaggedClass('FetchHeadError') {
|
|
101
|
+
constructor() {
|
|
102
|
+
super(...arguments);
|
|
103
|
+
this.message = `Couldn't fetch URL "${this.url}". ${this.error}`;
|
|
104
|
+
this.toString = () => `FetchHeadError: ${JSON.stringify(this)}`;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
export class FetchTextError extends Data.TaggedClass('FetchTextError') {
|
|
108
|
+
constructor() {
|
|
109
|
+
super(...arguments);
|
|
110
|
+
this.message = `Couldn't fetch URL "${this.url}". ${this.error}`;
|
|
111
|
+
this.toString = () => `FetchTextError: ${JSON.stringify(this)}`;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
export class FetchMsgpackError extends Data.TaggedClass('FetchMsgpackError') {
|
|
115
|
+
constructor() {
|
|
116
|
+
super(...arguments);
|
|
117
|
+
this.message = `Couldn't fetch URL "${this.url}". ${this.error}`;
|
|
118
|
+
this.toString = () => `FetchMsgpackError: ${JSON.stringify(this)}`;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
export class FetchJSONError extends Data.TaggedClass('FetchJSONError') {
|
|
122
|
+
constructor() {
|
|
123
|
+
super(...arguments);
|
|
124
|
+
this.message = `Couldn't fetch URL "${this.url}". ${this.error}`;
|
|
125
|
+
this.toString = () => `FetchJSONError: ${JSON.stringify(this)}`;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
export class FetchArrayBufferError extends Data.TaggedClass('FetchArrayBufferError') {
|
|
129
|
+
constructor() {
|
|
130
|
+
super(...arguments);
|
|
131
|
+
this.message = `Couldn't fetch URL "${this.url}". ${this.error}`;
|
|
132
|
+
this.toString = () => `FetchArrayBufferError: ${JSON.stringify(this)}`;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
export class FetchBlobError extends Data.TaggedClass('FetchBlobError') {
|
|
136
|
+
constructor() {
|
|
137
|
+
super(...arguments);
|
|
138
|
+
this.message = `Couldn't fetch URL "${this.url}". ${this.error}`;
|
|
139
|
+
this.toString = () => `FetchBlobError: ${JSON.stringify(this)}`;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=fetch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../src/effect/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAA;AAC5C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,OAAO,MAAM,UAAU,CAAA;AAEnC,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AAEvC,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,GAAiB,EACjB,OAAqB,EACiC,EAAE,CACxD,IAAI,CACF,MAAM,CAAC,UAAU,CAAC;IAChB,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAU,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IACzD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;CACrD,CAAC,EACF,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACjE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC3E,CAAA;AAEH,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,GAAiB,EACjB,OAAqB,EAC+B,EAAE,CACtD,IAAI,CACF,MAAM,CAAC,UAAU,CAAC;IAChB,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAU,EAAE,EAAE,OAAO,EAAE,CAAC;IACzC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;CACrD,CAAC,EACF,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACjE,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CACtB,IAAI,CAAC,EAAE;IACL,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAChB,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE;QACtB,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;KAC1E,CAAC;IACJ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAClE,EACD,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC3E,CAAA;AAEH,gBAAgB;AAChB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAY,EAC1C,GAAG,EACH,OAAO,EACP,OAAO,GAKR,EAAuD,EAAE,CACxD,IAAI,CACF,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE;IACd,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAA;IAC/B,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC3C,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC,CAAA;IACnF,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IACrC,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAC,EACF,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC1B,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAU,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CACxF,EACD,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,iBAAiB,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,EACjE,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACjE,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CACtB,IAAI,CAAC,EAAE;IACL,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAChB,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE;QAC7B,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,iBAAiB,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;KAC7E,CAAC;IACJ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CACrE,EACD,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE;IAC5B,wEAAwE;IACxE,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3E,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,cAAc,CAAC,CAAS,CAAA;AAC7D,CAAC,CAAC,EACF,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAClF,CAAA;AAEH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAI,GAAiB,EAAE,OAAqB,EAAiD,EAAE,CACtH,IAAI,CACF,MAAM,CAAC,UAAU,CAAC;IAChB,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAU,EAAE,EAAE,OAAO,EAAE,CAAC;IACzC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;CACrD,CAAC,EACF,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACjE,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CACtB,IAAI,CAAC,EAAE;IACL,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAChB,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAgB;QACpC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,cAAc,CAAC;YACjB,GAAG;YACH,KAAK;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;SACpD,CAAC;KACL,CAAC;IACJ,CAAC,CAAC,IAAI,CACF,MAAM,CAAC,UAAU,CAAC;QAChB,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE;QACtB,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,cAAc,CAAC;YACjB,GAAG;YACH,KAAK;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;SACpD,CAAC;KACL,CAAC,EACF,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CACtB,MAAM,CAAC,IAAI,CACT,IAAI,cAAc,CAAC;QACjB,GAAG;QACH,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,IAAI;QACJ,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;KACpD,CAAC,CACH,CACF,CACF,CACN,EACD,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC3E,CAAA;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,GAAiB,EACjB,OAAqB,EAC0B,EAAE,CACjD,IAAI,CACF,MAAM,CAAC,UAAU,CAAC;IAChB,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAU,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IACzD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;CACrD,CAAC,EACF,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACjE,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CACtB,IAAI,CAAC,EAAE;IACL,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAChB,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAgB;QACpC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;KAC1E,CAAC;IACJ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAClE,EACD,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC/E,CAAA;AAEH,8CAA8C;AAC9C,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAY,EAC/C,GAAG,EACH,IAAI,EACJ,OAAO,GAKR,EAAoD,EAAE,CACrD,IAAI,CACF,MAAM,CAAC,UAAU,CAAC;IAChB,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAU,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;IACrF,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;CACrD,CAAC,EACF,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACjE,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CACtB,IAAI,CAAC,EAAE;IACL,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAChB,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAmB;QACvC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;KAC1E,CAAC;IACJ,CAAC,CAAC,IAAI,CACF,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EACpC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,EACvE,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAC3B,MAAM,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAChF,CACF,CACN,EACD,IAAI,CAAC,QAAQ,CAAC,uBAAuB,EAAE,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CACvF,CAAA;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,GAAiB,EACjB,OAAqB,EAC2C,EAAE,CAClE,IAAI,CACF,MAAM,CAAC,UAAU,CAAC;IAChB,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC;IAClC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,qBAAqB,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;CAC5D,CAAC,EACF,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACjE,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CACtB,IAAI,CAAC,EAAE;IACL,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAChB,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE;QAC7B,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,qBAAqB,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;KACjF,CAAC;IACJ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,qBAAqB,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CACzE,EACD,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAClF,CAAA;AAEH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,GAAiB,EAAoD,EAAE,CAC/F,IAAI,CACF,MAAM,CAAC,UAAU,CAAC;IAChB,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC;IACrB,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;CACrD,CAAC,EACF,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACjE,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CACtB,IAAI,CAAC,EAAE;IACL,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAChB,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE;QACtB,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;KAC1E,CAAC;IACJ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAClE,EACD,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAC3E,CAAA;AAEH,MAAM,OAAO,cAAe,SAAQ,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAInE;IAJF;;QAKW,YAAO,GAAW,uBAAuB,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;QAC5E,aAAQ,GAAG,GAAG,EAAE,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAA;IAC5D,CAAC;CAAA;AAED,MAAM,OAAO,cAAe,SAAQ,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAInE;IAJF;;QAKW,YAAO,GAAW,uBAAuB,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;QAC5E,aAAQ,GAAG,GAAG,EAAE,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAA;IAC5D,CAAC;CAAA;AAED,MAAM,OAAO,iBAAkB,SAAQ,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAIzE;IAJF;;QAKW,YAAO,GAAW,uBAAuB,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;QAC5E,aAAQ,GAAG,GAAG,EAAE,CAAC,sBAAsB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAA;IAC/D,CAAC;CAAA;AAED,MAAM,OAAO,cAAe,SAAQ,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAMnE;IANF;;QAOW,YAAO,GAAW,uBAAuB,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;QAC5E,aAAQ,GAAG,GAAG,EAAE,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAA;IAC5D,CAAC;CAAA;AAED,MAAM,OAAO,qBAAsB,SAAQ,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAIjF;IAJF;;QAKW,YAAO,GAAW,uBAAuB,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;QAC5E,aAAQ,GAAG,GAAG,EAAE,CAAC,0BAA0B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAA;IACnE,CAAC;CAAA;AAED,MAAM,OAAO,cAAe,SAAQ,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAInE;IAJF;;QAKW,YAAO,GAAW,uBAAuB,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAA;QAC5E,aAAQ,GAAG,GAAG,EAAE,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAA;IAC5D,CAAC;CAAA"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import '../global.js';
|
|
2
|
+
export * as Effect from './Effect.js';
|
|
3
|
+
export * as Scope from '@effect/io/Scope';
|
|
4
|
+
export * as Schedule from './Schedule.js';
|
|
5
|
+
export * as Layer from '@effect/io/Layer';
|
|
6
|
+
export * as Ref from '@effect/io/Ref';
|
|
7
|
+
export * as SynchronizedRef from '@effect/io/SynchronizedRef';
|
|
8
|
+
export * as Queue from '@effect/io/Queue';
|
|
9
|
+
export * as Fiber from '@effect/io/Fiber';
|
|
10
|
+
export * as FiberId from '@effect/io/FiberId';
|
|
11
|
+
export * as RuntimeFlags from '@effect/io/RuntimeFlags';
|
|
12
|
+
export * as Hub from '@effect/io/Hub';
|
|
13
|
+
export * as Exit from '@effect/io/Exit';
|
|
14
|
+
export * as Cause from '@effect/io/Cause';
|
|
15
|
+
export * as Runtime from '@effect/io/Runtime';
|
|
16
|
+
export * as Scheduler from '@effect/io/Scheduler';
|
|
17
|
+
export * as FiberRef from '@effect/io/FiberRef';
|
|
18
|
+
export * as FiberRefs from '@effect/io/FiberRefs';
|
|
19
|
+
export * as FiberRefsPatch from '@effect/io/FiberRefsPatch';
|
|
20
|
+
export * as Deferred from '@effect/io/Deferred';
|
|
21
|
+
export * as Metric from '@effect/io/Metric';
|
|
22
|
+
export * as MetricState from '@effect/io/MetricState';
|
|
23
|
+
export * as Request from '@effect/io/Request';
|
|
24
|
+
export * as Context from '@effect/data/Context';
|
|
25
|
+
export * as Data from '@effect/data/Data';
|
|
26
|
+
export { TaggedClass as Tagged } from '@effect/data/Data';
|
|
27
|
+
export * as Either from '@effect/data/Either';
|
|
28
|
+
export * as Brand from '@effect/data/Brand';
|
|
29
|
+
export * as Hash from '@effect/data/Hash';
|
|
30
|
+
export * as Equal from '@effect/data/Equal';
|
|
31
|
+
export * as Ord from '@effect/data/Order';
|
|
32
|
+
export * as Chunk from '@effect/data/Chunk';
|
|
33
|
+
export * as Duration from '@effect/data/Duration';
|
|
34
|
+
export * as ReadonlyArray from '@effect/data/ReadonlyArray';
|
|
35
|
+
export * as ReadonlyRecord from '@effect/data/ReadonlyRecord';
|
|
36
|
+
export * as SortedMap from '@effect/data/SortedMap';
|
|
37
|
+
export * as HashMap from '@effect/data/HashMap';
|
|
38
|
+
export * as HashSet from '@effect/data/HashSet';
|
|
39
|
+
export * as MutableHashSet from '@effect/data/MutableHashSet';
|
|
40
|
+
export * as Option from '@effect/data/Option';
|
|
41
|
+
export { pipe, identity } from '@effect/data/Function';
|
|
42
|
+
export * as Stream from '@effect/stream/Stream';
|
|
43
|
+
export * as Channel from '@effect/stream/Channel';
|
|
44
|
+
export * as SubscriptionRef from '@effect/stream/SubscriptionRef';
|
|
45
|
+
export * as Schema from '@effect/schema/Schema';
|
|
46
|
+
export * as Match from '@effect/match';
|
|
47
|
+
export * as Otel from './Otel/index.js';
|
|
48
|
+
export * from './Error.js';
|
|
49
|
+
export * as ServiceContext from './ServiceContext.js';
|
|
50
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/effect/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAA;AAGrB,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,eAAe,MAAM,4BAA4B,CAAA;AAC7D,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAA;AACvD,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,cAAc,MAAM,2BAA2B,CAAA;AAC3D,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,WAAW,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAG7C,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,IAAI,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAA;AAC7C,OAAO,KAAK,KAAK,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,mBAAmB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,QAAQ,MAAM,uBAAuB,CAAA;AACjD,OAAO,KAAK,aAAa,MAAM,4BAA4B,CAAA;AAC3D,OAAO,KAAK,cAAc,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAA;AACnD,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,cAAc,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAGtD,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAC/C,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAA;AACjD,OAAO,KAAK,eAAe,MAAM,gCAAgC,CAAA;AAGjE,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAG/C,OAAO,KAAK,KAAK,MAAM,eAAe,CAAA;AAGtC,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AAGvC,cAAc,YAAY,CAAA;AAG1B,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import '../global.js';
|
|
2
|
+
// io
|
|
3
|
+
export * as Effect from './Effect.js';
|
|
4
|
+
export * as Scope from '@effect/io/Scope';
|
|
5
|
+
export * as Schedule from './Schedule.js';
|
|
6
|
+
export * as Layer from '@effect/io/Layer';
|
|
7
|
+
export * as Ref from '@effect/io/Ref';
|
|
8
|
+
export * as SynchronizedRef from '@effect/io/SynchronizedRef';
|
|
9
|
+
export * as Queue from '@effect/io/Queue';
|
|
10
|
+
export * as Fiber from '@effect/io/Fiber';
|
|
11
|
+
export * as FiberId from '@effect/io/FiberId';
|
|
12
|
+
export * as RuntimeFlags from '@effect/io/RuntimeFlags';
|
|
13
|
+
export * as Hub from '@effect/io/Hub';
|
|
14
|
+
export * as Exit from '@effect/io/Exit';
|
|
15
|
+
export * as Cause from '@effect/io/Cause';
|
|
16
|
+
export * as Runtime from '@effect/io/Runtime';
|
|
17
|
+
export * as Scheduler from '@effect/io/Scheduler';
|
|
18
|
+
export * as FiberRef from '@effect/io/FiberRef';
|
|
19
|
+
export * as FiberRefs from '@effect/io/FiberRefs';
|
|
20
|
+
export * as FiberRefsPatch from '@effect/io/FiberRefsPatch';
|
|
21
|
+
export * as Deferred from '@effect/io/Deferred';
|
|
22
|
+
export * as Metric from '@effect/io/Metric';
|
|
23
|
+
export * as MetricState from '@effect/io/MetricState';
|
|
24
|
+
export * as Request from '@effect/io/Request';
|
|
25
|
+
// data
|
|
26
|
+
export * as Context from '@effect/data/Context';
|
|
27
|
+
export * as Data from '@effect/data/Data';
|
|
28
|
+
export { TaggedClass as Tagged } from '@effect/data/Data';
|
|
29
|
+
export * as Either from '@effect/data/Either';
|
|
30
|
+
export * as Brand from '@effect/data/Brand';
|
|
31
|
+
export * as Hash from '@effect/data/Hash';
|
|
32
|
+
export * as Equal from '@effect/data/Equal';
|
|
33
|
+
export * as Ord from '@effect/data/Order';
|
|
34
|
+
export * as Chunk from '@effect/data/Chunk';
|
|
35
|
+
export * as Duration from '@effect/data/Duration';
|
|
36
|
+
export * as ReadonlyArray from '@effect/data/ReadonlyArray';
|
|
37
|
+
export * as ReadonlyRecord from '@effect/data/ReadonlyRecord';
|
|
38
|
+
export * as SortedMap from '@effect/data/SortedMap';
|
|
39
|
+
export * as HashMap from '@effect/data/HashMap';
|
|
40
|
+
export * as HashSet from '@effect/data/HashSet';
|
|
41
|
+
export * as MutableHashSet from '@effect/data/MutableHashSet';
|
|
42
|
+
export * as Option from '@effect/data/Option';
|
|
43
|
+
export { pipe, identity } from '@effect/data/Function';
|
|
44
|
+
// stream
|
|
45
|
+
export * as Stream from '@effect/stream/Stream';
|
|
46
|
+
export * as Channel from '@effect/stream/Channel';
|
|
47
|
+
export * as SubscriptionRef from '@effect/stream/SubscriptionRef';
|
|
48
|
+
// schema
|
|
49
|
+
export * as Schema from '@effect/schema/Schema';
|
|
50
|
+
// match
|
|
51
|
+
export * as Match from '@effect/match';
|
|
52
|
+
// otel
|
|
53
|
+
export * as Otel from './Otel/index.js';
|
|
54
|
+
// error
|
|
55
|
+
export * from './Error.js';
|
|
56
|
+
// ServiceContext
|
|
57
|
+
export * as ServiceContext from './ServiceContext.js';
|
|
58
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/effect/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAA;AAErB,KAAK;AACL,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,eAAe,MAAM,4BAA4B,CAAA;AAC7D,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAA;AACvD,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAA;AACzC,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,cAAc,MAAM,2BAA2B,CAAA;AAC3D,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,WAAW,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAE7C,OAAO;AACP,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,IAAI,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAA;AAC7C,OAAO,KAAK,KAAK,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,mBAAmB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,oBAAoB,CAAA;AAC3C,OAAO,KAAK,QAAQ,MAAM,uBAAuB,CAAA;AACjD,OAAO,KAAK,aAAa,MAAM,4BAA4B,CAAA;AAC3D,OAAO,KAAK,cAAc,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAA;AACnD,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,cAAc,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAEtD,SAAS;AACT,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAC/C,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAA;AACjD,OAAO,KAAK,eAAe,MAAM,gCAAgC,CAAA;AAEjE,SAAS;AACT,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAE/C,QAAQ;AACR,OAAO,KAAK,KAAK,MAAM,eAAe,CAAA;AAEtC,OAAO;AACP,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AAEvC,QAAQ;AACR,cAAc,YAAY,CAAA;AAE1B,iBAAiB;AACjB,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA"}
|
package/dist/global.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global.d.ts","sourceRoot":"","sources":["../src/global.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,CAAC;IACb,MAAM,MAAM,IAAI,GAAG,GAAG,CAAA;CACvB;AAED,OAAO,EAAE,CAAA"}
|
package/dist/global.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global.js","sourceRoot":"","sources":["../src/global.ts"],"names":[],"mappings":""}
|
package/dist/guards.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const isNotUndefined: <T>(_: T | undefined) => _ is T;
|
|
2
|
+
export declare const isNotNull: <T>(_: T | null) => _ is T;
|
|
3
|
+
export declare const isUndefined: <T>(_: T | undefined) => _ is undefined;
|
|
4
|
+
export declare const isNil: (val: any) => val is null | undefined;
|
|
5
|
+
export declare const isNotNil: <T>(val: T | null | undefined) => val is T;
|
|
6
|
+
//# sourceMappingURL=guards.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,iCAAmD,CAAA;AAE9E,eAAO,MAAM,SAAS,4BAAyC,CAAA;AAC/D,eAAO,MAAM,WAAW,yCAA2D,CAAA;AAEnF,eAAO,MAAM,KAAK,QAAS,GAAG,4BAA+D,CAAA;AAE7F,eAAO,MAAM,QAAQ,4CAAgF,CAAA"}
|
package/dist/guards.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export const isNotUndefined = (_) => _ !== undefined;
|
|
2
|
+
export const isNotNull = (_) => _ !== null;
|
|
3
|
+
export const isUndefined = (_) => _ === undefined;
|
|
4
|
+
export const isNil = (val) => val === null || val === undefined;
|
|
5
|
+
export const isNotNil = (val) => val !== null && val !== undefined;
|
|
6
|
+
//# sourceMappingURL=guards.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guards.js","sourceRoot":"","sources":["../src/guards.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAI,CAAgB,EAAU,EAAE,CAAC,CAAC,KAAK,SAAS,CAAA;AAE9E,MAAM,CAAC,MAAM,SAAS,GAAG,CAAI,CAAW,EAAU,EAAE,CAAC,CAAC,KAAK,IAAI,CAAA;AAC/D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAI,CAAgB,EAAkB,EAAE,CAAC,CAAC,KAAK,SAAS,CAAA;AAEnF,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,GAAQ,EAA2B,EAAE,CAAC,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,CAAA;AAE7F,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAI,GAAyB,EAAY,EAAE,CAAC,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,CAAA"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
export * from './string.js';
|
|
2
|
+
export * from './guards.js';
|
|
3
|
+
export * from './object/index.js';
|
|
4
|
+
export * from './promise.js';
|
|
5
|
+
export * from './time.js';
|
|
6
|
+
export * from './NoopTracer.js';
|
|
7
|
+
export * from './set.js';
|
|
8
|
+
export * from './browser.js';
|
|
9
|
+
export * from './Deferred.js';
|
|
10
|
+
export * as base64 from './base64.js';
|
|
11
|
+
export { default as prettyBytes } from 'pretty-bytes';
|
|
12
|
+
export { v4 as uuid } from 'uuid';
|
|
13
|
+
import type * as otel from '@opentelemetry/api';
|
|
14
|
+
export * as dateFns from 'date-fns';
|
|
15
|
+
export type Prettify<T> = T extends infer U ? {
|
|
16
|
+
[K in keyof U]: Prettify<U[K]>;
|
|
17
|
+
} : never;
|
|
18
|
+
export type PrettifyFlat<T> = T extends infer U ? {
|
|
19
|
+
[K in keyof U]: U[K];
|
|
20
|
+
} : never;
|
|
21
|
+
export type TypeEq<A, B> = (<T>() => T extends A ? 1 : 2) extends <T>() => T extends B ? 1 : 2 ? true : false;
|
|
22
|
+
/** `A` is subtype of `B` */
|
|
23
|
+
export type IsSubtype<A, B> = A extends B ? true : false;
|
|
24
|
+
export type AssertTrue<T extends true> = T;
|
|
25
|
+
export type Writeable<T> = {
|
|
26
|
+
-readonly [P in keyof T]: T[P];
|
|
27
|
+
};
|
|
28
|
+
export type DeepWriteable<T> = {
|
|
29
|
+
-readonly [P in keyof T]: DeepWriteable<T[P]>;
|
|
30
|
+
};
|
|
31
|
+
export type Primitive = null | undefined | string | number | boolean | symbol | bigint;
|
|
32
|
+
export type LiteralUnion<LiteralType, BaseType extends Primitive> = LiteralType | (BaseType & Record<never, never>);
|
|
33
|
+
export declare const sleep: (ms: number) => Promise<unknown>;
|
|
34
|
+
export declare const times: (n: number, fn: (index: number) => {}) => void;
|
|
35
|
+
export declare const debugCatch: <T>(try_: () => T) => T;
|
|
36
|
+
export declare const recRemoveUndefinedValues: (val: any) => void;
|
|
37
|
+
export declare const debugDeepCopy: <T>(val: T) => T;
|
|
38
|
+
export declare const prop: <T extends {}, K extends keyof T>(key: K) => (obj: T) => T[K];
|
|
39
|
+
export declare const objectToString: (error: any) => string;
|
|
40
|
+
export declare const errorToString: (error: any) => string;
|
|
41
|
+
export declare const capitalizeFirstLetter: (str: string) => string;
|
|
42
|
+
/**
|
|
43
|
+
* Use this to make assertion at end of if-else chain that all members of a
|
|
44
|
+
* union have been accounted for.
|
|
45
|
+
*/
|
|
46
|
+
export declare function casesHandled(unexpectedCase: never): never;
|
|
47
|
+
export declare const shouldNeverHappen: (msg?: string) => never;
|
|
48
|
+
export declare const assertNever: (failIfFalse: boolean, msg?: string) => void;
|
|
49
|
+
export declare const debuggerPipe: <T>(val: T) => T;
|
|
50
|
+
export declare const notYetImplemented: (msg?: string) => never;
|
|
51
|
+
export declare const noop: () => void;
|
|
52
|
+
export type Thunk<T> = () => T;
|
|
53
|
+
export declare const unwrapThunk: <T>(_: T | (() => T)) => T;
|
|
54
|
+
export type NullableFieldsToOptional<T> = PrettifyFlat<Partial<T> & {
|
|
55
|
+
[K in keyof T as null extends T[K] ? K : never]?: Exclude<T[K], null>;
|
|
56
|
+
} & {
|
|
57
|
+
[K in keyof T as null extends T[K] ? never : K]: T[K];
|
|
58
|
+
}>;
|
|
59
|
+
/** `end` is not included */
|
|
60
|
+
export declare const range: (start: number, end: number) => number[];
|
|
61
|
+
export declare const throttle: (fn: () => void, ms: number) => () => void;
|
|
62
|
+
export declare const getTraceParentHeader: (parentSpan: otel.Span) => string;
|
|
63
|
+
export declare const assertTag: <TObj extends {
|
|
64
|
+
_tag: string;
|
|
65
|
+
}, TTag extends TObj["_tag"]>(obj: TObj, tag: TTag) => Extract<TObj, {
|
|
66
|
+
_tag: TTag;
|
|
67
|
+
}>;
|
|
68
|
+
export declare const getEnv: (varName: string) => string | undefined;
|
|
69
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
export * from './string.js';
|
|
2
|
+
export * from './guards.js';
|
|
3
|
+
export * from './object/index.js';
|
|
4
|
+
export * from './promise.js';
|
|
5
|
+
export * from './time.js';
|
|
6
|
+
export * from './NoopTracer.js';
|
|
7
|
+
export * from './set.js';
|
|
8
|
+
export * from './browser.js';
|
|
9
|
+
export * from './Deferred.js';
|
|
10
|
+
export * as base64 from './base64.js';
|
|
11
|
+
export { default as prettyBytes } from 'pretty-bytes';
|
|
12
|
+
export { v4 as uuid } from 'uuid';
|
|
13
|
+
export * as dateFns from 'date-fns';
|
|
14
|
+
export const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
15
|
+
export const times = (n, fn) => {
|
|
16
|
+
for (let i = 0; i < n; i++) {
|
|
17
|
+
fn(i);
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
export const debugCatch = (try_) => {
|
|
21
|
+
try {
|
|
22
|
+
return try_();
|
|
23
|
+
}
|
|
24
|
+
catch (e) {
|
|
25
|
+
debugger;
|
|
26
|
+
throw e;
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
export const recRemoveUndefinedValues = (val) => {
|
|
30
|
+
if (Array.isArray(val)) {
|
|
31
|
+
val.forEach(recRemoveUndefinedValues);
|
|
32
|
+
}
|
|
33
|
+
else if (typeof val === 'object') {
|
|
34
|
+
Object.keys(val).forEach((key) => {
|
|
35
|
+
if (val[key] === undefined) {
|
|
36
|
+
delete val[key];
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
recRemoveUndefinedValues(val[key]);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
export const debugDeepCopy = (val) => JSON.parse(JSON.stringify(val));
|
|
45
|
+
export const prop = (key) => (obj) => obj[key];
|
|
46
|
+
export const objectToString = (error) => {
|
|
47
|
+
const stack = typeof process !== 'undefined' && process.env.CL_DEBUG ? error.stack : undefined;
|
|
48
|
+
const str = error.toString();
|
|
49
|
+
const stackStr = stack ? `\n${stack}` : '';
|
|
50
|
+
if (str !== '[object Object]')
|
|
51
|
+
return str + stackStr;
|
|
52
|
+
try {
|
|
53
|
+
return JSON.stringify({ ...error, stack }, null, 2);
|
|
54
|
+
}
|
|
55
|
+
catch (e) {
|
|
56
|
+
console.log(error);
|
|
57
|
+
return 'Error while printing error: ' + e;
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
export const errorToString = objectToString;
|
|
61
|
+
export const capitalizeFirstLetter = (str) => str.charAt(0).toUpperCase() + str.slice(1);
|
|
62
|
+
/**
|
|
63
|
+
* Use this to make assertion at end of if-else chain that all members of a
|
|
64
|
+
* union have been accounted for.
|
|
65
|
+
*/
|
|
66
|
+
/* eslint-disable-next-line prefer-arrow/prefer-arrow-functions */
|
|
67
|
+
export function casesHandled(unexpectedCase) {
|
|
68
|
+
debugger;
|
|
69
|
+
throw new Error(`A case was not handled for value: ${truncate(objectToString(unexpectedCase), 1000)}`);
|
|
70
|
+
}
|
|
71
|
+
export const shouldNeverHappen = (msg) => {
|
|
72
|
+
debugger;
|
|
73
|
+
throw new Error(`This should never happen ${msg}`);
|
|
74
|
+
};
|
|
75
|
+
export const assertNever = (failIfFalse, msg) => {
|
|
76
|
+
if (failIfFalse === false) {
|
|
77
|
+
debugger;
|
|
78
|
+
throw new Error(`This should never happen ${msg}`);
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
export const debuggerPipe = (val) => {
|
|
82
|
+
debugger;
|
|
83
|
+
return val;
|
|
84
|
+
};
|
|
85
|
+
const truncate = (str, length) => {
|
|
86
|
+
if (str.length > length) {
|
|
87
|
+
return str.slice(0, length) + '...';
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
return str;
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
export const notYetImplemented = (msg) => {
|
|
94
|
+
debugger;
|
|
95
|
+
throw new Error(`Not yet implemented ${msg}`);
|
|
96
|
+
};
|
|
97
|
+
export const noop = () => { };
|
|
98
|
+
export const unwrapThunk = (_) => {
|
|
99
|
+
if (typeof _ === 'function') {
|
|
100
|
+
return _();
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
return _;
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
/** `end` is not included */
|
|
107
|
+
export const range = (start, end) => {
|
|
108
|
+
const length = end - start;
|
|
109
|
+
return Array.from({ length }, (_, i) => start + i);
|
|
110
|
+
};
|
|
111
|
+
export const throttle = (fn, ms) => {
|
|
112
|
+
let shouldWait = false;
|
|
113
|
+
let shouldCallAgain = false;
|
|
114
|
+
const timeoutFunc = () => {
|
|
115
|
+
if (shouldCallAgain) {
|
|
116
|
+
fn();
|
|
117
|
+
shouldCallAgain = false;
|
|
118
|
+
setTimeout(timeoutFunc, ms);
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
shouldWait = false;
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
return () => {
|
|
125
|
+
if (shouldWait) {
|
|
126
|
+
shouldCallAgain = true;
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
fn();
|
|
130
|
+
shouldWait = true;
|
|
131
|
+
setTimeout(timeoutFunc, ms);
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
export const getTraceParentHeader = (parentSpan) => {
|
|
135
|
+
const spanContext = parentSpan.spanContext();
|
|
136
|
+
// Format: {version}-{trace_id}-{span_id}-{trace_flags}
|
|
137
|
+
// https://www.w3.org/TR/trace-context/#examples-of-http-traceparent-headers
|
|
138
|
+
return `00-${spanContext.traceId}-${spanContext.spanId}-01`;
|
|
139
|
+
};
|
|
140
|
+
export const assertTag = (obj, tag) => {
|
|
141
|
+
if (obj._tag !== tag) {
|
|
142
|
+
throw new Error(`Expected tag ${tag} but got ${obj._tag}`);
|
|
143
|
+
}
|
|
144
|
+
return obj;
|
|
145
|
+
};
|
|
146
|
+
export const getEnv = (varName) => {
|
|
147
|
+
let value;
|
|
148
|
+
// @ts-expect-error `import.meta.env` might not be defined
|
|
149
|
+
if (import.meta.env !== undefined) {
|
|
150
|
+
// @ts-expect-error `import.meta.env` might not be defined
|
|
151
|
+
value = import.meta.env[varName];
|
|
152
|
+
// eslint-disable-next-line unicorn/no-negated-condition
|
|
153
|
+
}
|
|
154
|
+
else if (globalThis.process?.env !== undefined) {
|
|
155
|
+
value = globalThis.process.env[varName];
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
throw new Error(`No environment variables found (neither import.meta.env nor process.env)`);
|
|
159
|
+
}
|
|
160
|
+
return value;
|
|
161
|
+
};
|
|
162
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export * from './pick.js';
|
|
2
|
+
export * from './omit.js';
|
|
3
|
+
type ValueOfRecord<R extends Record<any, any>> = R extends Record<any, infer V> ? V : never;
|
|
4
|
+
export declare const mapObjectValues: <O_In extends Record<string, any>, V_Out>(obj: O_In, mapValue: (key: keyof O_In, val: ValueOfRecord<O_In>) => V_Out) => { [K in keyof O_In]: V_Out; };
|
|
5
|
+
export type Entries<T> = {
|
|
6
|
+
[K in keyof T]: [K, T[K]];
|
|
7
|
+
}[keyof T][];
|
|
8
|
+
export declare const objectEntries: <T extends Record<string, any>>(obj: T) => Entries<T>;
|
|
9
|
+
export declare const keyObjectFromObject: <TObj extends Record<string, any>>(obj: TObj) => { [K in keyof TObj]: K; };
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/object/index.ts"],"names":[],"mappings":"AAEA,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AAEzB,KAAK,aAAa,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AAE3F,eAAO,MAAM,eAAe,uJAM3B,CAAA;AAED,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAA;AAEjE,eAAO,MAAM,aAAa,uDAA2F,CAAA;AAErH,eAAO,MAAM,mBAAmB,4EAItB,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { pipe } from '@effect/data/Function';
|
|
2
|
+
export * from './pick.js';
|
|
3
|
+
export * from './omit.js';
|
|
4
|
+
export const mapObjectValues = (obj, mapValue) => {
|
|
5
|
+
const mappedEntries = Object.entries(obj).map(([key, val]) => [key, mapValue(key, val)]);
|
|
6
|
+
return Object.fromEntries(mappedEntries);
|
|
7
|
+
};
|
|
8
|
+
export const objectEntries = (obj) => Object.entries(obj);
|
|
9
|
+
export const keyObjectFromObject = (obj) => pipe(objectEntries(obj).map(([k]) => [k, k]), Object.fromEntries);
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/object/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAA;AAE5C,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AAIzB,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,GAAS,EACT,QAA8D,EAChC,EAAE;IAChC,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAiB,EAAE,GAAG,CAAC,CAAU,CAAC,CAAA;IAC/G,OAAO,MAAM,CAAC,WAAW,CAAC,aAAa,CAAQ,CAAA;AACjD,CAAC,CAAA;AAID,MAAM,CAAC,MAAM,aAAa,GAAG,CAAgC,GAAM,EAAc,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAe,CAAA;AAErH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAmC,GAAS,EAA4B,EAAE,CAC3G,IAAI,CACF,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EACvC,MAAM,CAAC,WAAW,CACZ,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"omit.d.ts","sourceRoot":"","sources":["../../src/object/omit.ts"],"names":[],"mappings":"AAKA,uEAAuE;AACvE,eAAO,MAAM,IAAI,sGAUhB,CAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// type ConvertUndefined<T> = OrUndefined<{ [K in keyof T as undefined extends T[K] ? K : never]-?: T[K] }>
|
|
2
|
+
// type OrUndefined<T> = { [K in keyof T]: T[K] | undefined }
|
|
3
|
+
// type PickRequired<T> = { [K in keyof T as undefined extends T[K] ? never : K]: T[K] }
|
|
4
|
+
// type ConvertPick<T> = ConvertUndefined<T> & PickRequired<T>
|
|
5
|
+
/** Returns a shallowly cloned object with the provided keys omitted */
|
|
6
|
+
export const omit = (obj, keys) => {
|
|
7
|
+
return Object.keys(obj).reduce((acc, key) => {
|
|
8
|
+
if (!keys.includes(key)) {
|
|
9
|
+
acc[key] = obj[key];
|
|
10
|
+
}
|
|
11
|
+
return acc;
|
|
12
|
+
}, {});
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=omit.js.map
|