summaryrefslogtreecommitdiff
path: root/desktop/node_modules/roarr/dist/log.js.flow
diff options
context:
space:
mode:
authorRaindropsSys <raindrops@equestria.dev>2023-10-24 17:43:37 +0200
committerRaindropsSys <raindrops@equestria.dev>2023-10-24 17:43:37 +0200
commitae187b6d75c8079da0be1dc288613bad8466fe61 (patch)
tree5ea0d34185a2270f29ffaa65e1f5258028d7d5d0 /desktop/node_modules/roarr/dist/log.js.flow
downloadmist-ae187b6d75c8079da0be1dc288613bad8466fe61.tar.gz
mist-ae187b6d75c8079da0be1dc288613bad8466fe61.tar.bz2
mist-ae187b6d75c8079da0be1dc288613bad8466fe61.zip
Initial commit
Diffstat (limited to 'desktop/node_modules/roarr/dist/log.js.flow')
-rw-r--r--desktop/node_modules/roarr/dist/log.js.flow47
1 files changed, 47 insertions, 0 deletions
diff --git a/desktop/node_modules/roarr/dist/log.js.flow b/desktop/node_modules/roarr/dist/log.js.flow
new file mode 100644
index 0000000..803ccfc
--- /dev/null
+++ b/desktop/node_modules/roarr/dist/log.js.flow
@@ -0,0 +1,47 @@
+// @flow
+
+import {
+ boolean,
+} from 'boolean';
+import environmentIsNode from 'detect-node';
+import createGlobalThis from 'globalthis';
+import {
+ createLogger,
+ createMockLogger,
+ createRoarrInititialGlobalState,
+} from './factories';
+
+const globalThis = createGlobalThis();
+
+const ROARR = globalThis.ROARR = createRoarrInititialGlobalState(globalThis.ROARR || {});
+
+let logFactory = createLogger;
+
+if (environmentIsNode) {
+ // eslint-disable-next-line no-process-env
+ const enabled = boolean(process.env.ROARR_LOG || '');
+
+ if (!enabled) {
+ logFactory = createMockLogger;
+ }
+}
+
+export type {
+ LoggerType,
+ MessageType,
+ TranslateMessageFunctionType,
+} from './types';
+
+export {
+ ROARR,
+};
+
+export default logFactory((message) => {
+ if (ROARR.write) {
+ // Stringify message as soon as it is received to prevent
+ // properties of the context from being modified by reference.
+ const body = JSON.stringify(message);
+
+ ROARR.write(body);
+ }
+});