@effect-app/infra 2.1.0 → 2.1.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @effect-app/infra
2
2
 
3
+ ## 2.1.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 9c81959: export config
8
+
3
9
  ## 2.1.0
4
10
 
5
11
  ### Minor Changes
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.prepareTempDir = exports.makePrintJobTempFileArrayBuffer = exports.makePrintJobTempFile = exports.PrinterId = exports.CUPS = void 0;
6
+ exports.prepareTempDir = exports.makePrintJobTempFileArrayBuffer = exports.makePrintJobTempFile = exports.PrinterId = exports.CUPSConfig = exports.CUPS = void 0;
7
7
  var _fileUtil = require("@effect-app/infra/fileUtil");
8
8
  var _child_process = _interopRequireDefault(require("child_process"));
9
9
  var _effectApp = require("effect-app");
@@ -72,13 +72,16 @@ function* buildListArgs(config) {
72
72
  yield `-h ${config.host}`;
73
73
  }
74
74
  }
75
+ const CUPSConfig = exports.CUPSConfig = _effectApp.Config.all({
76
+ server: _effectApp.Config.string("server").pipe(_effectApp.Config.map(s => new URL(s)), _effectApp.Config.option, _effectApp.Config.nested("cups"))
77
+ });
75
78
  class CUPS extends _effectApp.Effect.Service()("effect-app/CUPS", {
76
79
  effect: _effectApp.Effect.gen(function* () {
77
- const cupsServer = yield* _effectApp.Config.string("cupsServer").pipe(_effectApp.Config.mapAttempt(_ => new URL(_)), _effectApp.Config.withDefault(undefined));
80
+ const config = yield* CUPSConfig;
78
81
  function print(buffer, printerId, ...options) {
79
82
  const _print = printBuffer({
80
83
  id: printerId,
81
- url: cupsServer
84
+ url: config.server.value
82
85
  }, options);
83
86
  return _print(buffer);
84
87
  }
@@ -86,9 +89,9 @@ class CUPS extends _effectApp.Effect.Service()("effect-app/CUPS", {
86
89
  print,
87
90
  printFile: (filePath, printerId, ...options) => printFile({
88
91
  id: printerId,
89
- url: cupsServer
92
+ url: config.server.value
90
93
  }, options)(filePath),
91
- getAvailablePrinters: getAvailablePrinters(cupsServer?.host)
94
+ getAvailablePrinters: getAvailablePrinters(config.server.value?.host)
92
95
  };
93
96
  })
94
97
  }) {
@@ -1 +1 @@
1
- {"version":3,"file":"CUPS.cjs","names":["_fileUtil","require","_child_process","_interopRequireDefault","_effectApp","_Schema","_utils","_fs","_os","_path","_util","_logger","e","__esModule","default","PrinterId","exports","NonEmptyString255","exec_","util","promisify","cp","exec","command","Effect","andThen","InfraLogger","logDebug","tap","tryPromise","r","pipe","annotateLogs","pretty","printFile","printer","options","filePath","printFile_","buildPrintArgs","join","url","host","username","id","o","prepareTempDir","sync","fs","mkdirSync","path","os","tmpdir","err","includes","makeTempFile","tempFile","makePrintJobTempFile","makePrintJobTempFileArrayBuffer","buffer","Buffer","from","printBuffer","flatMap","scoped","getAvailablePrinters","gen","stdout","buildListArgs","matchAll","map","_","filter","Predicate","isNotNullable","config","CUPS","Service","effect","cupsServer","Config","string","mapAttempt","URL","withDefault","undefined","print","printerId","_print","Fake","Layer","make","logInfo","zipRight","stderr","byteLength","toString"],"sources":["../../src/services/CUPS.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"CUPS.cjs","names":["_fileUtil","require","_child_process","_interopRequireDefault","_effectApp","_Schema","_utils","_fs","_os","_path","_util","_logger","e","__esModule","default","PrinterId","exports","NonEmptyString255","exec_","util","promisify","cp","exec","command","Effect","andThen","InfraLogger","logDebug","tap","tryPromise","r","pipe","annotateLogs","pretty","printFile","printer","options","filePath","printFile_","buildPrintArgs","join","url","host","username","id","o","prepareTempDir","sync","fs","mkdirSync","path","os","tmpdir","err","includes","makeTempFile","tempFile","makePrintJobTempFile","makePrintJobTempFileArrayBuffer","buffer","Buffer","from","printBuffer","flatMap","scoped","getAvailablePrinters","gen","stdout","buildListArgs","matchAll","map","_","filter","Predicate","isNotNullable","config","CUPSConfig","Config","all","server","string","s","URL","option","nested","CUPS","Service","effect","print","printerId","_print","value","Fake","Layer","make","logInfo","zipRight","stderr","byteLength","toString"],"sources":["../../src/services/CUPS.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,11 +1,14 @@
1
1
  import type { FileOptions } from "@effect-app/infra/fileUtil";
2
- import { Effect, Layer } from "effect-app";
2
+ import { Config, Effect, Layer } from "effect-app";
3
3
  import { NonEmptyString255 } from "effect-app/Schema";
4
4
  export declare const PrinterId: import("effect-app/Schema").WithDefaults<import("effect/Schema").Schema<string & import("effect-app/Schema").NonEmptyString255Brand, string, never>> & import("effect/Schema").Schema<string & import("effect-app/Schema").NonEmptyString255Brand, string, never>;
5
5
  export type PrinterId = NonEmptyString255;
6
6
  export declare const prepareTempDir: Effect.Effect<void, never, never>;
7
- export declare const makePrintJobTempFile: (data: string | import("stream").Stream | NodeJS.ArrayBufferView | Iterable<string | NodeJS.ArrayBufferView> | AsyncIterable<string | NodeJS.ArrayBufferView>, options?: FileOptions) => Effect.Effect<string, import("effect/Cause").UnknownException, import("effect/Scope").Scope>;
7
+ export declare const makePrintJobTempFile: (data: string | NodeJS.ArrayBufferView | Iterable<string | NodeJS.ArrayBufferView> | AsyncIterable<string | NodeJS.ArrayBufferView> | import("stream").Stream, options?: FileOptions) => Effect.Effect<string, import("effect/Cause").UnknownException, import("effect/Scope").Scope>;
8
8
  export declare const makePrintJobTempFileArrayBuffer: (buffer: ArrayBuffer, options?: FileOptions) => Effect.Effect<string, import("effect/Cause").UnknownException, import("effect/Scope").Scope>;
9
+ export declare const CUPSConfig: Config.Config<{
10
+ server: import("effect/Option").Option<import("url").URL>;
11
+ }>;
9
12
  declare const CUPS_base: Effect.Service.Class<CUPS, "effect-app/CUPS", {
10
13
  readonly effect: Effect.Effect<{
11
14
  print: (buffer: ArrayBuffer, printerId: PrinterId, ...options: string[]) => Effect.Effect<{
@@ -1 +1 @@
1
- {"version":3,"file":"CUPS.d.ts","sourceRoot":"","sources":["../../src/services/CUPS.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAG7D,OAAO,EAAU,MAAM,EAAE,KAAK,EAAa,MAAM,YAAY,CAAA;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAQrD,eAAO,MAAM,SAAS,mQAAoB,CAAA;AAC1C,MAAM,MAAM,SAAS,GAAG,iBAAiB,CAAA;AAuCzC,eAAO,MAAM,cAAc,mCAUzB,CAAA;AAGF,eAAO,MAAM,oBAAoB,uRAA4B,CAAA;AAC7D,eAAO,MAAM,+BAA+B,WAAY,WAAW,YAAY,WAAW,iGACtC,CAAA;;;wBAiCzB,WAAW,aAAa,SAAS,cAAc,MAAM,EAAE;;;;8BAStD,MAAM,aAAa,SAAS,cAAc,MAAM,EAAE;;;;;;;AAf9E,qBAAa,IAAK,SAAQ,SAuBxB;IACA,MAAM,CAAC,QAAQ,CAAC,IAAI,kCA+BnB;CACF"}
1
+ {"version":3,"file":"CUPS.d.ts","sourceRoot":"","sources":["../../src/services/CUPS.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAa,MAAM,YAAY,CAAA;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAQrD,eAAO,MAAM,SAAS,mQAAoB,CAAA;AAC1C,MAAM,MAAM,SAAS,GAAG,iBAAiB,CAAA;AAuCzC,eAAO,MAAM,cAAc,mCAUzB,CAAA;AAGF,eAAO,MAAM,oBAAoB,uRAA4B,CAAA;AAC7D,eAAO,MAAM,+BAA+B,WAAY,WAAW,YAAY,WAAW,iGACtC,CAAA;AA2BpD,eAAO,MAAM,UAAU;;EAQrB,CAAA;;;wBAKyB,WAAW,aAAa,SAAS,cAAc,MAAM,EAAE;;;;8BAStD,MAAM,aAAa,SAAS,cAAc,MAAM,EAAE;;;;;;;AAZ9E,qBAAa,IAAK,SAAQ,SAoBxB;IACA,MAAM,CAAC,QAAQ,CAAC,IAAI,kCA+BnB;CACF"}
@@ -66,13 +66,18 @@ function* buildListArgs(config) {
66
66
  yield `-h ${config.host}`;
67
67
  }
68
68
  }
69
+ export const CUPSConfig = Config.all({
70
+ server: Config
71
+ .string("server")
72
+ .pipe(Config.map((s) => new URL(s)), Config.option, Config.nested("cups"))
73
+ });
69
74
  export class CUPS extends Effect.Service()("effect-app/CUPS", {
70
75
  effect: Effect.gen(function* () {
71
- const cupsServer = yield* Config.string("cupsServer").pipe(Config.mapAttempt((_) => new URL(_)), Config.withDefault(undefined));
76
+ const config = yield* CUPSConfig;
72
77
  function print(buffer, printerId, ...options) {
73
78
  const _print = printBuffer({
74
79
  id: printerId,
75
- url: cupsServer
80
+ url: config.server.value
76
81
  }, options);
77
82
  return _print(buffer);
78
83
  }
@@ -80,9 +85,9 @@ export class CUPS extends Effect.Service()("effect-app/CUPS", {
80
85
  print,
81
86
  printFile: (filePath, printerId, ...options) => printFile({
82
87
  id: printerId,
83
- url: cupsServer
88
+ url: config.server.value
84
89
  }, options)(filePath),
85
- getAvailablePrinters: getAvailablePrinters(cupsServer?.host)
90
+ getAvailablePrinters: getAvailablePrinters(config.server.value?.host)
86
91
  };
87
92
  })
88
93
  }) {
@@ -108,4 +113,4 @@ export class CUPS extends Effect.Service()("effect-app/CUPS", {
108
113
  });
109
114
  }));
110
115
  }
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ1VQUy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9DVVBTLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDOUIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUM3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDekMsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFBO0FBQ25CLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQTtBQUNuQixPQUFPLElBQUksTUFBTSxNQUFNLENBQUE7QUFDdkIsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFBO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFMUMsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLGlCQUFpQixDQUFBO0FBRzFDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO0FBQ3JDLE1BQU0sSUFBSSxHQUFHLENBQUMsT0FBZSxFQUFFLEVBQUUsQ0FDL0IsTUFBTSxDQUFDLE9BQU8sQ0FDWixXQUFXLENBQUMsUUFBUSxDQUFDLGNBQWMsT0FBTyxFQUFFLENBQUMsRUFDN0MsTUFBTSxDQUFDLEdBQUcsQ0FDUixNQUFNO0tBQ0gsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUNuQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMs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
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ1VQUy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJ2aWNlcy9DVVBTLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDOUIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUM3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDekMsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFBO0FBQ25CLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQTtBQUNuQixPQUFPLElBQUksTUFBTSxNQUFNLENBQUE7QUFDdkIsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFBO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFMUMsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLGlCQUFpQixDQUFBO0FBRzFDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFBO0FBQ3JDLE1BQU0sSUFBSSxHQUFHLENBQUMsT0FBZSxFQUFFLEVBQUUsQ0FDL0IsTUFBTSxDQUFDLE9BQU8sQ0FDWixXQUFXLENBQUMsUUFBUSxDQUFDLGNBQWMsT0FBTyxFQUFFLENBQUMsRUFDN0MsTUFBTSxDQUFDLEdBQUcsQ0FDUixNQUFNO0tBQ0gsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUNuQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMs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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect-app/infra",
3
- "version": "2.1.0",
3
+ "version": "2.1.1",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -92,16 +92,23 @@ function* buildListArgs(config?: { host?: string | undefined }) {
92
92
  }
93
93
  }
94
94
 
95
+ export const CUPSConfig = Config.all({
96
+ server: Config
97
+ .string("server")
98
+ .pipe(
99
+ Config.map((s) => new URL(s)),
100
+ Config.option,
101
+ Config.nested("cups")
102
+ )
103
+ })
104
+
95
105
  export class CUPS extends Effect.Service<CUPS>()("effect-app/CUPS", {
96
106
  effect: Effect.gen(function*() {
97
- const cupsServer = yield* Config.string("cupsServer").pipe(
98
- Config.mapAttempt((_) => new URL(_)),
99
- Config.withDefault(undefined)
100
- )
107
+ const config = yield* CUPSConfig
101
108
  function print(buffer: ArrayBuffer, printerId: PrinterId, ...options: string[]) {
102
109
  const _print = printBuffer({
103
110
  id: printerId,
104
- url: cupsServer
111
+ url: config.server.value
105
112
  }, options)
106
113
  return _print(buffer)
107
114
  }
@@ -110,9 +117,9 @@ export class CUPS extends Effect.Service<CUPS>()("effect-app/CUPS", {
110
117
  printFile: (filePath: string, printerId: PrinterId, ...options: string[]) =>
111
118
  printFile({
112
119
  id: printerId,
113
- url: cupsServer
120
+ url: config.server.value
114
121
  }, options)(filePath),
115
- getAvailablePrinters: getAvailablePrinters(cupsServer?.host)
122
+ getAvailablePrinters: getAvailablePrinters(config.server.value?.host)
116
123
  }
117
124
  })
118
125
  }) {