effect 2.4.7 → 2.4.9
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/cjs/Effect.js +11 -1
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Inspectable.js +33 -1
- package/dist/cjs/Inspectable.js.map +1 -1
- package/dist/cjs/Predicate.js +18 -1
- package/dist/cjs/Predicate.js.map +1 -1
- package/dist/cjs/internal/core-effect.js +1 -1
- package/dist/cjs/internal/core-effect.js.map +1 -1
- package/dist/cjs/internal/core.js +1 -1
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/metric.js +7 -14
- package/dist/cjs/internal/metric.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Effect.d.ts +4 -0
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Inspectable.d.ts +21 -0
- package/dist/dts/Inspectable.d.ts.map +1 -1
- package/dist/dts/Predicate.d.ts +16 -0
- package/dist/dts/Predicate.d.ts.map +1 -1
- package/dist/dts/Types.d.ts +13 -0
- package/dist/dts/Types.d.ts.map +1 -1
- package/dist/esm/Effect.js +11 -1
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Inspectable.js +31 -0
- package/dist/esm/Inspectable.js.map +1 -1
- package/dist/esm/Predicate.js +16 -0
- package/dist/esm/Predicate.js.map +1 -1
- package/dist/esm/internal/core-effect.js +1 -1
- package/dist/esm/internal/core-effect.js.map +1 -1
- package/dist/esm/internal/core.js +1 -1
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/metric.js +7 -14
- package/dist/esm/internal/metric.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +1 -1
- package/src/Effect.ts +21 -2
- package/src/Inspectable.ts +37 -0
- package/src/Predicate.ts +17 -0
- package/src/Types.ts +16 -0
- package/src/internal/core-effect.ts +23 -3
- package/src/internal/core.ts +2 -1
- package/src/internal/metric.ts +7 -23
- package/src/internal/version.ts +1 -1
|
@@ -27,7 +27,7 @@ const metricVariance = {
|
|
|
27
27
|
export const globalMetricRegistry = /*#__PURE__*/globalValue( /*#__PURE__*/Symbol.for("effect/Metric/globalMetricRegistry"), () => metricRegistry.make());
|
|
28
28
|
/** @internal */
|
|
29
29
|
export const make = function (keyType, unsafeUpdate, unsafeValue) {
|
|
30
|
-
const metric = Object.assign(effect => core.tap(effect, a =>
|
|
30
|
+
const metric = Object.assign(effect => core.tap(effect, a => update(metric, a)), {
|
|
31
31
|
[MetricTypeId]: metricVariance,
|
|
32
32
|
keyType,
|
|
33
33
|
unsafeUpdate,
|
|
@@ -119,32 +119,25 @@ export const timerWithBoundaries = (name, boundaries, description) => {
|
|
|
119
119
|
};
|
|
120
120
|
/* @internal */
|
|
121
121
|
export const trackAll = /*#__PURE__*/dual(2, (self, input) => effect => core.matchCauseEffect(effect, {
|
|
122
|
-
onFailure: cause =>
|
|
123
|
-
|
|
124
|
-
return core.failCause(cause);
|
|
125
|
-
},
|
|
126
|
-
onSuccess: value => {
|
|
127
|
-
self.unsafeUpdate(input, []);
|
|
128
|
-
return core.succeed(value);
|
|
129
|
-
}
|
|
122
|
+
onFailure: cause => core.zipRight(update(self, input), core.failCause(cause)),
|
|
123
|
+
onSuccess: value => core.zipRight(update(self, input), core.succeed(value))
|
|
130
124
|
}));
|
|
131
125
|
/* @internal */
|
|
132
126
|
export const trackDefect = /*#__PURE__*/dual(2, (self, metric) => trackDefectWith(self, metric, identity));
|
|
133
127
|
/* @internal */
|
|
134
128
|
export const trackDefectWith = /*#__PURE__*/dual(3, (self, metric, f) => {
|
|
135
|
-
const updater = defect => metric
|
|
136
|
-
return _effect.tapDefect(self, cause => core.
|
|
129
|
+
const updater = defect => update(metric, f(defect));
|
|
130
|
+
return _effect.tapDefect(self, cause => core.forEachSequentialDiscard(Cause.defects(cause), updater));
|
|
137
131
|
});
|
|
138
132
|
/* @internal */
|
|
139
133
|
export const trackDuration = /*#__PURE__*/dual(2, (self, metric) => trackDurationWith(self, metric, identity));
|
|
140
134
|
/* @internal */
|
|
141
135
|
export const trackDurationWith = /*#__PURE__*/dual(3, (self, metric, f) => Clock.clockWith(clock => {
|
|
142
136
|
const startTime = clock.unsafeCurrentTimeNanos();
|
|
143
|
-
return core.
|
|
137
|
+
return core.tap(self, _ => {
|
|
144
138
|
const endTime = clock.unsafeCurrentTimeNanos();
|
|
145
139
|
const duration = Duration.nanos(endTime - startTime);
|
|
146
|
-
metric
|
|
147
|
-
return a;
|
|
140
|
+
return update(metric, f(duration));
|
|
148
141
|
});
|
|
149
142
|
}));
|
|
150
143
|
/* @internal */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metric.js","names":["Clock","Duration","constVoid","dual","identity","pipe","globalValue","pipeArguments","ReadonlyArray","Cause","_effect","core","metricBoundaries","metricKey","metricLabel","metricRegistry","MetricSymbolKey","MetricTypeId","Symbol","for","metricVariance","_Type","_","_In","_Out","globalMetricRegistry","make","keyType","unsafeUpdate","unsafeValue","metric","Object","assign","effect","tap","a","sync","register","arguments","mapInput","self","f","input","extraTags","counter","name","options","fromMetricKey","frequency","description","withConstantInput","key","untaggedHook","hookCache","WeakMap","hook","length","undefined","get","taggedWithLabels","set","update","gauge","histogram","boundaries","increment","bigint","BigInt","incrementBy","amount","map","mapType","value","succeed","out","evaluate","summary","withNow","summaryTimestamp","tagged","taggedWithLabelsInput","union","extraTags1","timer","exponential","start","factor","count","base","toMillis","timerWithBoundaries","fromIterable","trackAll","matchCauseEffect","onFailure","cause","failCause","onSuccess","trackDefect","trackDefectWith","updater","defect","tapDefect","defects","forEach","trackDuration","trackDurationWith","clockWith","clock","startTime","unsafeCurrentTimeNanos","endTime","duration","nanos","trackError","trackErrorWith","error","tapError","trackSuccess","trackSuccessWith","fiberRefGetWith","currentMetricLabels","tags","Date","now","zip","that","l","r","unsafeSnapshot","snapshot"],"sources":["../../../src/internal/metric.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"metric.js","names":["Clock","Duration","constVoid","dual","identity","pipe","globalValue","pipeArguments","ReadonlyArray","Cause","_effect","core","metricBoundaries","metricKey","metricLabel","metricRegistry","MetricSymbolKey","MetricTypeId","Symbol","for","metricVariance","_Type","_","_In","_Out","globalMetricRegistry","make","keyType","unsafeUpdate","unsafeValue","metric","Object","assign","effect","tap","a","update","register","arguments","mapInput","self","f","input","extraTags","counter","name","options","fromMetricKey","frequency","description","withConstantInput","key","untaggedHook","hookCache","WeakMap","hook","length","undefined","get","taggedWithLabels","set","gauge","histogram","boundaries","increment","bigint","BigInt","incrementBy","amount","map","mapType","value","succeed","out","sync","evaluate","summary","withNow","summaryTimestamp","tagged","taggedWithLabelsInput","union","extraTags1","timer","exponential","start","factor","count","base","toMillis","timerWithBoundaries","fromIterable","trackAll","matchCauseEffect","onFailure","cause","zipRight","failCause","onSuccess","trackDefect","trackDefectWith","updater","defect","tapDefect","forEachSequentialDiscard","defects","trackDuration","trackDurationWith","clockWith","clock","startTime","unsafeCurrentTimeNanos","endTime","duration","nanos","trackError","trackErrorWith","error","tapError","trackSuccess","trackSuccessWith","fiberRefGetWith","currentMetricLabels","tags","Date","now","zip","that","l","r","unsafeSnapshot","snapshot"],"sources":["../../../src/internal/metric.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,aAAa;AACpC,OAAO,KAAKC,QAAQ,MAAM,gBAAgB;AAG1C,SAASC,SAAS,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,IAAI,QAAQ,gBAAgB;AAChE,SAASC,WAAW,QAAQ,mBAAmB;AAU/C,SAASC,aAAa,QAAQ,gBAAgB;AAC9C,OAAO,KAAKC,aAAa,MAAM,qBAAqB;AACpD,OAAO,KAAKC,KAAK,MAAM,YAAY;AACnC,OAAO,KAAKC,OAAO,MAAM,kBAAkB;AAC3C,OAAO,KAAKC,IAAI,MAAM,WAAW;AACjC,OAAO,KAAKC,gBAAgB,MAAM,wBAAwB;AAC1D,OAAO,KAAKC,SAAS,MAAM,iBAAiB;AAC5C,OAAO,KAAKC,WAAW,MAAM,mBAAmB;AAChD,OAAO,KAAKC,cAAc,MAAM,sBAAsB;AAEtD;AACA,MAAMC,eAAe,GAAG,eAAe;AAEvC;AACA,OAAO,MAAMC,YAAY,gBAAwBC,MAAM,CAACC,GAAG,CACzDH,eAAe,CACO;AAExB,MAAMI,cAAc,GAAG;EACrB;EACAC,KAAK,EAAGC,CAAM,IAAKA,CAAC;EACpB;EACAC,GAAG,EAAGD,CAAU,IAAKA,CAAC;EACtB;EACAE,IAAI,EAAGF,CAAQ,IAAKA;CACrB;AAED;AACA,OAAO,MAAMG,oBAAoB,gBAAkCnB,WAAW,eAC5EY,MAAM,CAACC,GAAG,CAAC,oCAAoC,CAAC,EAChD,MAAMJ,cAAc,CAACW,IAAI,EAAE,CAC5B;AAED;AACA,OAAO,MAAMA,IAAI,GAAuB,SAAAA,CACtCC,OAAa,EACbC,YAAoF,EACpFC,WAAuE;EAEvE,MAAMC,MAAM,GAAiCC,MAAM,CAACC,MAAM,CACnCC,MAA8B,IACjDtB,IAAI,CAACuB,GAAG,CAACD,MAAM,EAAGE,CAAC,IAAKC,MAAM,CAACN,MAAM,EAAEK,CAAC,CAAC,CAAC,EAC5C;IACE,CAAClB,YAAY,GAAGG,cAAc;IAC9BO,OAAO;IACPC,YAAY;IACZC,WAAW;IACXQ,QAAQA,CAAA;MACN,IAAI,CAACR,WAAW,CAAC,EAAE,CAAC;MACpB,OAAO,IAAW;IACpB,CAAC;IACDxB,IAAIA,CAAA;MACF,OAAOE,aAAa,CAAC,IAAI,EAAE+B,SAAS,CAAC;IACvC;GACQ,CACX;EACD,OAAOR,MAAM;AACf,CAAC;AAED;AACA,OAAO,MAAMS,QAAQ,gBAAGpC,IAAI,CAG1B,CAAC,EAAE,CAACqC,IAAI,EAAEC,CAAC,KACXf,IAAI,CACFc,IAAI,CAACb,OAAO,EACZ,CAACe,KAAK,EAAEC,SAAS,KAAKH,IAAI,CAACZ,YAAY,CAACa,CAAC,CAACC,KAAK,CAAC,EAAEC,SAAS,CAAC,EAC5DH,IAAI,CAACX,WAAW,CACjB,CAAC;AAEJ;AACA,OAAO,MAAMe,OAAO,GAWhBA,CAACC,IAAI,EAAEC,OAAO,KAAKC,aAAa,CAAClC,SAAS,CAAC+B,OAAO,CAACC,IAAI,EAAEC,OAAc,CAAC,CAAQ;AAEpF;AACA,OAAO,MAAME,SAAS,GAAGA,CAACH,IAAY,EAAEI,WAAoB,KAC1DF,aAAa,CAAClC,SAAS,CAACmC,SAAS,CAACH,IAAI,EAAEI,WAAW,CAAC,CAAC;AAEvD;AACA,OAAO,MAAMC,iBAAiB,gBAAG/C,IAAI,CAGnC,CAAC,EAAE,CAACqC,IAAI,EAAEE,KAAK,KAAKH,QAAQ,CAACC,IAAI,EAAE,MAAME,KAAK,CAAC,CAAC;AAElD;AACA,OAAO,MAAMK,aAAa,GACxBI,GAA8B,IAK5B;EACF,IAAIC,YAKS;EACb,MAAMC,SAAS,GAAG,IAAIC,OAAO,EAA2E;EAExG,MAAMC,IAAI,GAAIZ,SAAiD,IAG3D;IACF,IAAIA,SAAS,CAACa,MAAM,KAAK,CAAC,EAAE;MAC1B,IAAIJ,YAAY,KAAKK,SAAS,EAAE;QAC9B,OAAOL,YAAY;MACrB;MACAA,YAAY,GAAG3B,oBAAoB,CAACiC,GAAG,CAACP,GAAG,CAAC;MAC5C,OAAOC,YAAY;IACrB;IAEA,IAAIG,IAAI,GAAGF,SAAS,CAACK,GAAG,CAACf,SAAS,CAAC;IACnC,IAAIY,IAAI,KAAKE,SAAS,EAAE;MACtB,OAAOF,IAAI;IACb;IACAA,IAAI,GAAG9B,oBAAoB,CAACiC,GAAG,CAAC7C,SAAS,CAAC8C,gBAAgB,CAACR,GAAG,EAAER,SAAS,CAAC,CAAC;IAC3EU,SAAS,CAACO,GAAG,CAACjB,SAAS,EAAEY,IAAI,CAAC;IAC9B,OAAOA,IAAI;EACb,CAAC;EAED,OAAO7B,IAAI,CACTyB,GAAG,CAACxB,OAAO,EACX,CAACe,KAAK,EAAEC,SAAS,KAAKY,IAAI,CAACZ,SAAS,CAAC,CAACP,MAAM,CAACM,KAAK,CAAC,EAClDC,SAAS,IAAKY,IAAI,CAACZ,SAAS,CAAC,CAACe,GAAG,EAAE,CACrC;AACH,CAAC;AAED;AACA,OAAO,MAAMG,KAAK,GASdA,CAAChB,IAAI,EAAEC,OAAO,KAAKC,aAAa,CAAClC,SAAS,CAACgD,KAAK,CAAChB,IAAI,EAAEC,OAAc,CAAC,CAAQ;AAElF;AACA,OAAO,MAAMgB,SAAS,GAAGA,CAACjB,IAAY,EAAEkB,UAA6C,EAAEd,WAAoB,KACzGF,aAAa,CAAClC,SAAS,CAACiD,SAAS,CAACjB,IAAI,EAAEkB,UAAU,EAAEd,WAAW,CAAC,CAAC;AAEnE;AACA,OAAO,MAAMe,SAAS,GACpBxB,IAAmE,IAC3CJ,MAAM,CAACI,IAAqC,EAAEA,IAAI,CAACb,OAAO,CAACsC,MAAM,GAAGC,MAAM,CAAC,CAAC,CAAQ,GAAG,CAAC,CAAC;AAEnH;AACA,OAAO,MAAMC,WAAW,gBAAGhE,IAAI,CAS7B,CAAC,EAAE,CAACqC,IAAI,EAAE4B,MAAM,KAAKhC,MAAM,CAACI,IAAW,EAAE4B,MAAM,CAAC,CAAC;AAEnD;AACA,OAAO,MAAMC,GAAG,gBAAGlE,IAAI,CAGrB,CAAC,EAAE,CAACqC,IAAI,EAAEC,CAAC,KACXf,IAAI,CACFc,IAAI,CAACb,OAAO,EACZa,IAAI,CAACZ,YAAY,EAChBe,SAAS,IAAKF,CAAC,CAACD,IAAI,CAACX,WAAW,CAACc,SAAS,CAAC,CAAC,CAC9C,CAAC;AAEJ;AACA,OAAO,MAAM2B,OAAO,gBAAGnE,IAAI,CAUzB,CAAC,EAAE,CAACqC,IAAI,EAAEC,CAAC,KAAKf,IAAI,CAACe,CAAC,CAACD,IAAI,CAACb,OAAO,CAAC,EAAEa,IAAI,CAACZ,YAAY,EAAEY,IAAI,CAACX,WAAW,CAAC,CAAC;AAE7E;AACA,OAAO,MAAM+B,GAAG,gBAAGzD,IAAI,CASrB,CAAC,EAAE,CAACqC,IAAI,EAAE+B,KAAK,KAAKnC,MAAM,CAACI,IAAW,EAAE+B,KAAK,CAAC,CAAC;AAEjD;AACA,OAAO,MAAMC,OAAO,GAASC,GAAQ,IAAwC/C,IAAI,CAAC,KAAK,CAAS,EAAExB,SAAS,EAAE,MAAMuE,GAAG,CAAC;AAEvH;AACA,OAAO,MAAMC,IAAI,GAASC,QAAsB,IAC9CjD,IAAI,CAAC,KAAK,CAAS,EAAExB,SAAS,EAAEyE,QAAQ,CAAC;AAE3C;AACA,OAAO,MAAMC,OAAO,GAClB9B,OAOC,IACiC+B,OAAO,CAACC,gBAAgB,CAAChC,OAAO,CAAC,CAAC;AAEtE;AACA,OAAO,MAAMgC,gBAAgB,GAC3BhC,OAOC,IACsEC,aAAa,CAAClC,SAAS,CAAC+D,OAAO,CAAC9B,OAAO,CAAC,CAAC;AAElH;AACA,OAAO,MAAMiC,MAAM,gBAAG5E,IAAI,CAGxB,CAAC,EAAE,CAACqC,IAAI,EAAEW,GAAG,EAAEoB,KAAK,KAAKZ,gBAAgB,CAACnB,IAAI,EAAE,CAAC1B,WAAW,CAACY,IAAI,CAACyB,GAAG,EAAEoB,KAAK,CAAC,CAAC,CAAC,CAAC;AAElF;AACA,OAAO,MAAMS,qBAAqB,gBAAG7E,IAAI,CAQvC,CAAC,EAAE,CAACqC,IAAI,EAAEC,CAAC,KACX4B,GAAG,CACD3C,IAAI,CACFc,IAAI,CAACb,OAAO,EACZ,CAACe,KAAK,EAAEC,SAAS,KACfH,IAAI,CAACZ,YAAY,CACfc,KAAK,EACLlC,aAAa,CAACyE,KAAK,CAACxC,CAAC,CAACC,KAAK,CAAC,EAAEC,SAAS,CAAC,CACzC,EACHH,IAAI,CAACX,WAAW,CACjB,EACD3B,SAAS,CACV,CAAC;AAEJ;AACA,OAAO,MAAMyD,gBAAgB,gBAAGxD,IAAI,CAQlC,CAAC,EAAE,CAACqC,IAAI,EAAEG,SAAS,KAAI;EACvB,OAAOjB,IAAI,CACTc,IAAI,CAACb,OAAO,EACZ,CAACe,KAAK,EAAEwC,UAAU,KAAK1C,IAAI,CAACZ,YAAY,CAACc,KAAK,EAAElC,aAAa,CAACyE,KAAK,CAACtC,SAAS,EAAEuC,UAAU,CAAC,CAAC,EAC1FA,UAAU,IAAK1C,IAAI,CAACX,WAAW,CAACrB,aAAa,CAACyE,KAAK,CAACtC,SAAS,EAAEuC,UAAU,CAAC,CAAC,CAC7E;AACH,CAAC,CAAC;AAEF;AACA,OAAO,MAAMC,KAAK,GAAGA,CAACtC,IAAY,EAAEI,WAAoB,KAIpD;EACF,MAAMc,UAAU,GAAGnD,gBAAgB,CAACwE,WAAW,CAAC;IAC9CC,KAAK,EAAE,GAAG;IACVC,MAAM,EAAE,CAAC;IACTC,KAAK,EAAE;GACR,CAAC;EACF,MAAMC,IAAI,GAAGnF,IAAI,CAACyD,SAAS,CAACjB,IAAI,EAAEkB,UAAU,EAAEd,WAAW,CAAC,EAAE8B,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;EAChG,OAAOxC,QAAQ,CAACiD,IAAI,EAAEvF,QAAQ,CAACwF,QAAQ,CAAC;AAC1C,CAAC;AAED;AACA,OAAO,MAAMC,mBAAmB,GAAGA,CACjC7C,IAAY,EACZkB,UAAiC,EACjCd,WAAoB,KAKlB;EACF,MAAMuC,IAAI,GAAGnF,IAAI,CACfyD,SAAS,CAACjB,IAAI,EAAEjC,gBAAgB,CAAC+E,YAAY,CAAC5B,UAAU,CAAC,EAAEd,WAAW,CAAC,EACvE8B,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,CACpC;EACD,OAAOxC,QAAQ,CAACiD,IAAI,EAAEvF,QAAQ,CAACwF,QAAQ,CAAC;AAC1C,CAAC;AAED;AACA,OAAO,MAAMG,QAAQ,gBAAGzF,IAAI,CAU1B,CAAC,EAAE,CAACqC,IAAI,EAAEE,KAAK,KAAMT,MAAM,IAC3BtB,IAAI,CAACkF,gBAAgB,CAAC5D,MAAM,EAAE;EAC5B6D,SAAS,EAAGC,KAAK,IAAKpF,IAAI,CAACqF,QAAQ,CAAC5D,MAAM,CAACI,IAAI,EAAEE,KAAK,CAAC,EAAE/B,IAAI,CAACsF,SAAS,CAACF,KAAK,CAAC,CAAC;EAC/EG,SAAS,EAAG3B,KAAK,IAAK5D,IAAI,CAACqF,QAAQ,CAAC5D,MAAM,CAACI,IAAI,EAAEE,KAAK,CAAC,EAAE/B,IAAI,CAAC6D,OAAO,CAACD,KAAK,CAAC;CAC7E,CAAC,CAAC;AAEL;AACA,OAAO,MAAM4B,WAAW,gBAAGhG,IAAI,CAQ7B,CAAC,EAAE,CAACqC,IAAI,EAAEV,MAAM,KAAKsE,eAAe,CAAC5D,IAAI,EAAEV,MAAM,EAAE1B,QAAQ,CAAC,CAAC;AAE/D;AACA,OAAO,MAAMgG,eAAe,gBAAGjG,IAAI,CAUjC,CAAC,EAAE,CAACqC,IAAI,EAAEV,MAAM,EAAEW,CAAC,KAAI;EACvB,MAAM4D,OAAO,GAAIC,MAAe,IAAKlE,MAAM,CAACN,MAAM,EAAEW,CAAC,CAAC6D,MAAM,CAAC,CAAC;EAC9D,OAAO5F,OAAO,CAAC6F,SAAS,CAAC/D,IAAI,EAAGuD,KAAK,IAAKpF,IAAI,CAAC6F,wBAAwB,CAAC/F,KAAK,CAACgG,OAAO,CAACV,KAAK,CAAC,EAAEM,OAAO,CAAC,CAAC;AACzG,CAAC,CAAC;AAEF;AACA,OAAO,MAAMK,aAAa,gBAAGvG,IAAI,CAQ/B,CAAC,EAAE,CAACqC,IAAI,EAAEV,MAAM,KAAK6E,iBAAiB,CAACnE,IAAI,EAAEV,MAAM,EAAE1B,QAAQ,CAAC,CAAC;AAEjE;AACA,OAAO,MAAMuG,iBAAiB,gBAAGxG,IAAI,CAUnC,CAAC,EAAE,CAACqC,IAAI,EAAEV,MAAM,EAAEW,CAAC,KACnBzC,KAAK,CAAC4G,SAAS,CAAEC,KAAK,IAAI;EACxB,MAAMC,SAAS,GAAGD,KAAK,CAACE,sBAAsB,EAAE;EAChD,OAAOpG,IAAI,CAACuB,GAAG,CAACM,IAAI,EAAGlB,CAAC,IAAI;IAC1B,MAAM0F,OAAO,GAAGH,KAAK,CAACE,sBAAsB,EAAE;IAC9C,MAAME,QAAQ,GAAGhH,QAAQ,CAACiH,KAAK,CAACF,OAAO,GAAGF,SAAS,CAAC;IACpD,OAAO1E,MAAM,CAACN,MAAM,EAAEW,CAAC,CAACwE,QAAQ,CAAC,CAAC;EACpC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEL;AACA,OAAO,MAAME,UAAU,gBAAGhH,IAAI,CAQ5B,CAAC,EAAE,CACHqC,IAA4B,EAC5BV,MAAoC,KACjCsF,cAAc,CAAC5E,IAAI,EAAEV,MAAM,EAAGK,CAAK,IAAKA,CAAC,CAAC,CAAC;AAEhD;AACA,OAAO,MAAMiF,cAAc,gBAAGjH,IAAI,CAUhC,CAAC,EAAE,CACHqC,IAA4B,EAC5BV,MAAoC,EACpCW,CAAqB,KACnB;EACF,MAAM4D,OAAO,GAAIgB,KAAQ,IAA0BjF,MAAM,CAACN,MAAM,EAAEW,CAAC,CAAC4E,KAAK,CAAC,CAAC;EAC3E,OAAO3G,OAAO,CAAC4G,QAAQ,CAAC9E,IAAI,EAAE6D,OAAO,CAAC;AACxC,CAAC,CAAC;AAEF;AACA,OAAO,MAAMkB,YAAY,gBAAGpH,IAAI,CAQ9B,CAAC,EAAE,CACHqC,IAA4B,EAC5BV,MAAoC,KACjC0F,gBAAgB,CAAChF,IAAI,EAAEV,MAAM,EAAGK,CAAK,IAAKA,CAAC,CAAC,CAAC;AAElD;AACA,OAAO,MAAMqF,gBAAgB,gBAAGrH,IAAI,CAUlC,CAAC,EAAE,CACHqC,IAA4B,EAC5BV,MAAoC,EACpCW,CAAqB,KACnB;EACF,MAAM4D,OAAO,GAAI9B,KAAQ,IAA0BnC,MAAM,CAACN,MAAM,EAAEW,CAAC,CAAC8B,KAAK,CAAC,CAAC;EAC3E,OAAO5D,IAAI,CAACuB,GAAG,CAACM,IAAI,EAAE6D,OAAO,CAAC;AAChC,CAAC,CAAC;AAEF;AACA,OAAO,MAAMjE,MAAM,gBAAGjC,IAAI,CAGxB,CAAC,EAAE,CAACqC,IAAI,EAAEE,KAAK,KACf/B,IAAI,CAAC8G,eAAe,CAClB9G,IAAI,CAAC+G,mBAAmB,EACvBC,IAAI,IAAKhH,IAAI,CAAC+D,IAAI,CAAC,MAAMlC,IAAI,CAACZ,YAAY,CAACc,KAAK,EAAEiF,IAAI,CAAC,CAAC,CAC1D,CAAC;AAEJ;AACA,OAAO,MAAMpD,KAAK,GAChB/B,IAAkC,IAElC7B,IAAI,CAAC8G,eAAe,CAClB9G,IAAI,CAAC+G,mBAAmB,EACvBC,IAAI,IAAKhH,IAAI,CAAC+D,IAAI,CAAC,MAAMlC,IAAI,CAACX,WAAW,CAAC8F,IAAI,CAAC,CAAC,CAClD;AAEH;AACA,OAAO,MAAM9C,OAAO,GAClBrC,IAAqD,IACpBD,QAAQ,CAACC,IAAI,EAAGE,KAAS,IAAK,CAACA,KAAK,EAAEkF,IAAI,CAACC,GAAG,EAAE,CAAU,CAAC;AAE9F;AACA,OAAO,MAAMC,GAAG,gBAAG3H,IAAI,CAWrB,CAAC,EACD,CAAkCqC,IAAkC,EAAEuF,IAAqC,KACzGrG,IAAI,CACF,CAACc,IAAI,CAACb,OAAO,EAAEoG,IAAI,CAACpG,OAAO,CAAU,EACrC,CAACe,KAAyB,EAAEC,SAAS,KAAI;EACvC,MAAM,CAACqF,CAAC,EAAEC,CAAC,CAAC,GAAGvF,KAAK;EACpBF,IAAI,CAACZ,YAAY,CAACoG,CAAC,EAAErF,SAAS,CAAC;EAC/BoF,IAAI,CAACnG,YAAY,CAACqG,CAAC,EAAEtF,SAAS,CAAC;AACjC,CAAC,EACAA,SAAS,IAAK,CAACH,IAAI,CAACX,WAAW,CAACc,SAAS,CAAC,EAAEoF,IAAI,CAAClG,WAAW,CAACc,SAAS,CAAC,CAAC,CAC1E,CACJ;AAED;AACA,OAAO,MAAMuF,cAAc,GAAGA,CAAA,KAAoDzG,oBAAoB,CAAC0G,QAAQ,EAAE;AAEjH;AACA,OAAO,MAAMA,QAAQ,gBAAgExH,IAAI,CAAC+D,IAAI,CAC5FwD,cAAc,CACf"}
|
package/package.json
CHANGED
package/src/Effect.ts
CHANGED
|
@@ -3458,12 +3458,21 @@ export const filterOrFail: {
|
|
|
3458
3458
|
predicate: Predicate<NoInfer<A>>,
|
|
3459
3459
|
orFailWith: (a: NoInfer<A>) => E2
|
|
3460
3460
|
): <E, R>(self: Effect<A, E, R>) => Effect<A, E2 | E, R>
|
|
3461
|
+
<A, B extends A>(
|
|
3462
|
+
refinement: Refinement<NoInfer<A>, B>
|
|
3463
|
+
): <E, R>(self: Effect<A, E, R>) => Effect<B, Cause.NoSuchElementException | E, R>
|
|
3464
|
+
<A>(predicate: Predicate<NoInfer<A>>): <E, R>(self: Effect<A, E, R>) => Effect<A, Cause.NoSuchElementException | E, R>
|
|
3461
3465
|
<A, E, R, B extends A, E2>(
|
|
3462
3466
|
self: Effect<A, E, R>,
|
|
3463
3467
|
refinement: Refinement<A, B>,
|
|
3464
3468
|
orFailWith: (a: A) => E2
|
|
3465
3469
|
): Effect<B, E | E2, R>
|
|
3466
3470
|
<A, E, R, E2>(self: Effect<A, E, R>, predicate: Predicate<A>, orFailWith: (a: A) => E2): Effect<A, E | E2, R>
|
|
3471
|
+
<A, E, R, B extends A>(
|
|
3472
|
+
self: Effect<A, E, R>,
|
|
3473
|
+
refinement: Refinement<A, B>
|
|
3474
|
+
): Effect<B, E | Cause.NoSuchElementException, R>
|
|
3475
|
+
<A, E, R>(self: Effect<A, E, R>, predicate: Predicate<A>): Effect<A, E | Cause.NoSuchElementException, R>
|
|
3467
3476
|
} = effect.filterOrFail
|
|
3468
3477
|
|
|
3469
3478
|
/**
|
|
@@ -5336,8 +5345,18 @@ export const Tag: <const Id extends string>(id: Id) => <Self, Type>() =>
|
|
|
5336
5345
|
if (cache.has(prop)) {
|
|
5337
5346
|
return cache.get(prop)
|
|
5338
5347
|
}
|
|
5339
|
-
|
|
5340
|
-
|
|
5348
|
+
const fn = (...args: Array<any>) =>
|
|
5349
|
+
// @ts-expect-error
|
|
5350
|
+
core.andThen(TagClass, (s: any) => {
|
|
5351
|
+
if (typeof s[prop] === "function") {
|
|
5352
|
+
// @ts-expect-error
|
|
5353
|
+
cache.set(prop, (...args: Array<any>) => core.andThen(TagClass, (s: any) => s[prop](...args)))
|
|
5354
|
+
return s[prop](...args)
|
|
5355
|
+
}
|
|
5356
|
+
// @ts-expect-error
|
|
5357
|
+
cache.set(prop, core.andThen(TagClass, (s) => s[prop]))
|
|
5358
|
+
return s[prop]
|
|
5359
|
+
})
|
|
5341
5360
|
// @ts-expect-error
|
|
5342
5361
|
const cn = core.andThen(TagClass, (s) => s[prop])
|
|
5343
5362
|
Object.assign(fn, cn)
|
package/src/Inspectable.ts
CHANGED
|
@@ -45,3 +45,40 @@ export const toJSON = (x: unknown): unknown => {
|
|
|
45
45
|
* @since 2.0.0
|
|
46
46
|
*/
|
|
47
47
|
export const format = (x: unknown): string => JSON.stringify(x, null, 2)
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* @since 2.0.0
|
|
51
|
+
*/
|
|
52
|
+
export const BaseProto: Inspectable = {
|
|
53
|
+
toJSON() {
|
|
54
|
+
return toJSON(this)
|
|
55
|
+
},
|
|
56
|
+
[NodeInspectSymbol]() {
|
|
57
|
+
return this.toJSON()
|
|
58
|
+
},
|
|
59
|
+
toString() {
|
|
60
|
+
return format(this.toJSON())
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* @since 2.0.0
|
|
66
|
+
*/
|
|
67
|
+
export abstract class Class {
|
|
68
|
+
/**
|
|
69
|
+
* @since 2.0.0
|
|
70
|
+
*/
|
|
71
|
+
abstract toJSON(): unknown
|
|
72
|
+
/**
|
|
73
|
+
* @since 2.0.0
|
|
74
|
+
*/
|
|
75
|
+
[NodeInspectSymbol]() {
|
|
76
|
+
return this.toJSON()
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* @since 2.0.0
|
|
80
|
+
*/
|
|
81
|
+
toString() {
|
|
82
|
+
return format(this.toJSON())
|
|
83
|
+
}
|
|
84
|
+
}
|
package/src/Predicate.ts
CHANGED
|
@@ -53,6 +53,23 @@ export const mapInput: {
|
|
|
53
53
|
<A, B>(self: Predicate<A>, f: (b: B) => A): Predicate<B>
|
|
54
54
|
} = dual(2, <A, B>(self: Predicate<A>, f: (b: B) => A): Predicate<B> => (b) => self(f(b)))
|
|
55
55
|
|
|
56
|
+
/**
|
|
57
|
+
* Tests if a value is `truthy`.
|
|
58
|
+
*
|
|
59
|
+
* @param input - The value to test.
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* import { isTruthy } from 'effect/Predicate'
|
|
63
|
+
*
|
|
64
|
+
* assert.deepStrictEqual(isTruthy(1), true)
|
|
65
|
+
* assert.deepStrictEqual(isTruthy(0), false)
|
|
66
|
+
* assert.deepStrictEqual(isTruthy(""), false)
|
|
67
|
+
*
|
|
68
|
+
* @category guards
|
|
69
|
+
* @since 2.0.0
|
|
70
|
+
*/
|
|
71
|
+
export const isTruthy = (input: unknown) => !!input
|
|
72
|
+
|
|
56
73
|
/**
|
|
57
74
|
* Tests if a value is a `Set`.
|
|
58
75
|
*
|
package/src/Types.ts
CHANGED
|
@@ -82,6 +82,22 @@ export type Equals<X, Y> = (<T>() => T extends X ? 1 : 2) extends <
|
|
|
82
82
|
>() => T extends Y ? 1 : 2 ? true
|
|
83
83
|
: false
|
|
84
84
|
|
|
85
|
+
/**
|
|
86
|
+
* Determines if a record contains any of the given keys.
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* import * as Types from "effect/Types"
|
|
90
|
+
*
|
|
91
|
+
* type Res1 = Types.Has<{ a: number }, "a" | "b"> // true
|
|
92
|
+
* type Res2 = Types.Has<{ c: number }, "a" | "b"> // false
|
|
93
|
+
*
|
|
94
|
+
* @since 2.0.0
|
|
95
|
+
* @category models
|
|
96
|
+
*/
|
|
97
|
+
export type Has<A, Key extends string> = (Key extends infer K ? K extends keyof A ? true : never : never) extends never
|
|
98
|
+
? false
|
|
99
|
+
: true
|
|
100
|
+
|
|
85
101
|
/**
|
|
86
102
|
* Merges two object where the keys of the left object take precedence in the case of a conflict.
|
|
87
103
|
*
|
|
@@ -604,6 +604,12 @@ export const filterOrFail: {
|
|
|
604
604
|
predicate: Predicate.Predicate<NoInfer<A>>,
|
|
605
605
|
orFailWith: (a: NoInfer<A>) => E2
|
|
606
606
|
): <E, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<A, E2 | E, R>
|
|
607
|
+
<A, B extends A>(
|
|
608
|
+
refinement: Predicate.Refinement<NoInfer<A>, B>
|
|
609
|
+
): <E, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<B, Cause.NoSuchElementException | E, R>
|
|
610
|
+
<A>(
|
|
611
|
+
predicate: Predicate.Predicate<NoInfer<A>>
|
|
612
|
+
): <E, R>(self: Effect.Effect<A, E, R>) => Effect.Effect<A, Cause.NoSuchElementException | E, R>
|
|
607
613
|
<A, E, R, B extends A, E2>(
|
|
608
614
|
self: Effect.Effect<A, E, R>,
|
|
609
615
|
refinement: Predicate.Refinement<A, B>,
|
|
@@ -614,11 +620,25 @@ export const filterOrFail: {
|
|
|
614
620
|
predicate: Predicate.Predicate<A>,
|
|
615
621
|
orFailWith: (a: A) => E2
|
|
616
622
|
): Effect.Effect<A, E | E2, R>
|
|
617
|
-
|
|
623
|
+
<A, E, R, B extends A>(
|
|
624
|
+
self: Effect.Effect<A, E, R>,
|
|
625
|
+
refinement: Predicate.Refinement<A, B>
|
|
626
|
+
): Effect.Effect<B, E | Cause.NoSuchElementException, R>
|
|
627
|
+
<A, E, R>(
|
|
628
|
+
self: Effect.Effect<A, E, R>,
|
|
629
|
+
predicate: Predicate.Predicate<A>
|
|
630
|
+
): Effect.Effect<A, E | Cause.NoSuchElementException, R>
|
|
631
|
+
} = dual((args) => core.isEffect(args[0]), <A, E, R, E2>(
|
|
618
632
|
self: Effect.Effect<A, E, R>,
|
|
619
633
|
predicate: Predicate.Predicate<A>,
|
|
620
|
-
orFailWith
|
|
621
|
-
): Effect.Effect<A, E | E2, R> =>
|
|
634
|
+
orFailWith?: (a: A) => E2
|
|
635
|
+
): Effect.Effect<A, E | E2 | Cause.NoSuchElementException, R> =>
|
|
636
|
+
filterOrElse(
|
|
637
|
+
self,
|
|
638
|
+
predicate,
|
|
639
|
+
(a): Effect.Effect<never, E2 | Cause.NoSuchElementException, never> =>
|
|
640
|
+
orFailWith === undefined ? core.fail(new core.NoSuchElementException()) : core.failSync(() => orFailWith(a))
|
|
641
|
+
))
|
|
622
642
|
|
|
623
643
|
/* @internal */
|
|
624
644
|
export const findFirst: {
|
package/src/internal/core.ts
CHANGED
|
@@ -952,7 +952,8 @@ export const if_ = dual<
|
|
|
952
952
|
(self: boolean | Effect.Effect<unknown, unknown, unknown>, { onFalse, onTrue }: {
|
|
953
953
|
readonly onTrue: Effect.Effect<unknown, unknown, unknown>
|
|
954
954
|
readonly onFalse: Effect.Effect<unknown, unknown, unknown>
|
|
955
|
-
|
|
955
|
+
// eslint-disable-next-line no-extra-boolean-cast
|
|
956
|
+
}) => isEffect(self) ? flatMap(self, (b) => (b ? onTrue : onFalse)) : Boolean(self) ? onTrue : onFalse
|
|
956
957
|
)
|
|
957
958
|
|
|
958
959
|
/* @internal */
|
package/src/internal/metric.ts
CHANGED
|
@@ -54,10 +54,7 @@ export const make: Metric.MetricApply = function<Type, In, Out>(
|
|
|
54
54
|
): Metric.Metric<Type, In, Out> {
|
|
55
55
|
const metric: Metric.Metric<Type, In, Out> = Object.assign(
|
|
56
56
|
<A extends In, E, R>(effect: Effect.Effect<A, E, R>): Effect.Effect<A, E, R> =>
|
|
57
|
-
core.tap(
|
|
58
|
-
effect,
|
|
59
|
-
(a) => core.sync(() => unsafeUpdate(a, []))
|
|
60
|
-
),
|
|
57
|
+
core.tap(effect, (a) => update(metric, a)),
|
|
61
58
|
{
|
|
62
59
|
[MetricTypeId]: metricVariance,
|
|
63
60
|
keyType,
|
|
@@ -345,14 +342,8 @@ export const trackAll = dual<
|
|
|
345
342
|
) => <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>
|
|
346
343
|
>(2, (self, input) => (effect) =>
|
|
347
344
|
core.matchCauseEffect(effect, {
|
|
348
|
-
onFailure: (cause) =>
|
|
349
|
-
|
|
350
|
-
return core.failCause(cause)
|
|
351
|
-
},
|
|
352
|
-
onSuccess: (value) => {
|
|
353
|
-
self.unsafeUpdate(input, [])
|
|
354
|
-
return core.succeed(value)
|
|
355
|
-
}
|
|
345
|
+
onFailure: (cause) => core.zipRight(update(self, input), core.failCause(cause)),
|
|
346
|
+
onSuccess: (value) => core.zipRight(update(self, input), core.succeed(value))
|
|
356
347
|
}))
|
|
357
348
|
|
|
358
349
|
/* @internal */
|
|
@@ -378,14 +369,8 @@ export const trackDefectWith = dual<
|
|
|
378
369
|
f: (defect: unknown) => In
|
|
379
370
|
) => Effect.Effect<A, E, R>
|
|
380
371
|
>(3, (self, metric, f) => {
|
|
381
|
-
const updater = (defect: unknown)
|
|
382
|
-
return _effect.tapDefect(self, (cause) =>
|
|
383
|
-
core.sync(() =>
|
|
384
|
-
pipe(
|
|
385
|
-
Cause.defects(cause),
|
|
386
|
-
ReadonlyArray.forEach(updater)
|
|
387
|
-
)
|
|
388
|
-
))
|
|
372
|
+
const updater = (defect: unknown) => update(metric, f(defect))
|
|
373
|
+
return _effect.tapDefect(self, (cause) => core.forEachSequentialDiscard(Cause.defects(cause), updater))
|
|
389
374
|
})
|
|
390
375
|
|
|
391
376
|
/* @internal */
|
|
@@ -413,11 +398,10 @@ export const trackDurationWith = dual<
|
|
|
413
398
|
>(3, (self, metric, f) =>
|
|
414
399
|
Clock.clockWith((clock) => {
|
|
415
400
|
const startTime = clock.unsafeCurrentTimeNanos()
|
|
416
|
-
return core.
|
|
401
|
+
return core.tap(self, (_) => {
|
|
417
402
|
const endTime = clock.unsafeCurrentTimeNanos()
|
|
418
403
|
const duration = Duration.nanos(endTime - startTime)
|
|
419
|
-
metric
|
|
420
|
-
return a
|
|
404
|
+
return update(metric, f(duration))
|
|
421
405
|
})
|
|
422
406
|
}))
|
|
423
407
|
|
package/src/internal/version.ts
CHANGED