Skip to content

Commit 67ccef8

Browse files
committed
chore(effect)!: rename logger module
1 parent 310e3bf commit 67ccef8

File tree

5 files changed

+53
-44
lines changed

5 files changed

+53
-44
lines changed

.changeset/fuzzy-books-hunt.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@systemfsoftware/effect": minor
3+
---
4+
5+
BREAKING CHANGE: rename logger module

packages/effect/package.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,15 +23,15 @@
2323
"default": "./dist/commonjs/mod.js"
2424
}
2525
},
26-
"./Layer": {
26+
"./Logger": {
2727
"import": {
28-
"@systemfsoftware/source": "./src/layer.ts",
29-
"types": "./dist/esm/layer.d.ts",
30-
"default": "./dist/esm/layer.js"
28+
"@systemfsoftware/source": "./src/logger.ts",
29+
"types": "./dist/esm/logger.d.ts",
30+
"default": "./dist/esm/logger.js"
3131
},
3232
"require": {
33-
"types": "./dist/commonjs/layer.d.ts",
34-
"default": "./dist/commonjs/layer.js"
33+
"types": "./dist/commonjs/logger.d.ts",
34+
"default": "./dist/commonjs/logger.js"
3535
}
3636
}
3737
},
@@ -46,7 +46,7 @@
4646
"exports": {
4747
"./package.json": "./package.json",
4848
".": "./src/mod.ts",
49-
"./Layer": "./src/layer.ts"
49+
"./Logger": "./src/logger.ts"
5050
},
5151
"sourceDialects": [
5252
"@systemfsoftware/source"

packages/effect/src/log-layer.ts

Lines changed: 0 additions & 36 deletions
This file was deleted.

packages/effect/src/logger.ts

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
import { Config as C, Effect, Layer, Logger as EffectLogger, Option, pipe } from 'effect'
2+
3+
/**
4+
* @public
5+
*/
6+
export namespace Logger {
7+
export type Config = {
8+
readonly NODE_ENV: C.Config<Option.Option<string>>
9+
}
10+
}
11+
12+
/**
13+
* @public
14+
*/
15+
export interface Layer extends Layer.Layer<never, never, never> {}
16+
17+
/**
18+
* @public
19+
*/
20+
export const layer: Layer = Layer.unwrapEffect(
21+
Effect.gen(function*() {
22+
const NODE_ENV = yield* pipe(Config.NODE_ENV, Effect.orDie)
23+
24+
if (Option.isSome(NODE_ENV) && NODE_ENV.value === 'production') {
25+
return Layer.suspend(() => EffectLogger.json)
26+
}
27+
28+
return Layer.suspend(() => EffectLogger.pretty)
29+
}),
30+
)
31+
32+
/**
33+
* @public
34+
*/
35+
export const Config: Logger.Config = Object.freeze({
36+
NODE_ENV: pipe(
37+
C.string('NODE_ENV'),
38+
C.option,
39+
),
40+
})

packages/effect/src/mod.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
export * as LogLayer from './log-layer.js'
1+
export * as Logger from './logger.js'

0 commit comments

Comments
 (0)