@niceties/draftlog-appender 1.0.7 → 1.1.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/core.cjs CHANGED
@@ -31,8 +31,15 @@ function createCanvas(spinner, formatter, ident) {
31
31
  updaters.push(updater);
32
32
  }
33
33
  if (dirty || item.dirty_ || item.status_) {
34
- const prefix = getMessageFormat(item.status_, model.tick_);
35
- updater(formatter(item.text_, item.loglevel_, prefix, ident * (stack.length - 1)));
34
+ const prefix = getPrefix(item.status_, model.tick_);
35
+ updater(formatter({
36
+ loglevel: item.loglevel_,
37
+ message: item.text_,
38
+ context: item.context_,
39
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
40
+ action: (item.status_ === undefined ? 3 /* log */ : undefined),
41
+ tag: item.tag_
42
+ }, prefix, ident * (stack.length - 1)));
36
43
  if (item.dirty_) {
37
44
  item.dirty_ = false;
38
45
  dirty = true;
@@ -48,9 +55,9 @@ function createCanvas(spinner, formatter, ident) {
48
55
  }
49
56
  }
50
57
  };
51
- function getMessageFormat(status, tick) {
58
+ function getPrefix(status, tick) {
52
59
  // status is truthy when it is inprogress
53
- const prefix = status ? (spinner.frames[tick]) :
60
+ const prefix = status ? spinner.frames[tick] :
54
61
  // status not null when it is finished
55
62
  status != null;
56
63
  return prefix;
@@ -65,9 +72,9 @@ function createModel(logAboveSpinners) {
65
72
  items_: []
66
73
  };
67
74
  const itemById = Object.create(null);
68
- return [({ message: text, inputId, action, loglevel, ref, parentId }) => {
75
+ return [({ message: text, inputId, action, loglevel, ref, parentId, context, tag }) => {
69
76
  // item has status undefined, so it is static by default
70
- const item = { text_: text, loglevel_: loglevel, ref_: ref, parentId_: parentId, children_: [], dirty_: true };
77
+ const item = { text_: text, loglevel_: loglevel, ref_: ref, parentId_: parentId, children_: [], dirty_: true, context_: context, tag_: tag };
71
78
  if (action === 0 /* start */) {
72
79
  item.status_ = 1 /* inprogress */;
73
80
  }
@@ -75,7 +82,7 @@ function createModel(logAboveSpinners) {
75
82
  item.status_ = 0 /* finished */;
76
83
  }
77
84
  if (action !== 3 /* log */) {
78
- // if status still empty in the original item, or item does not exists it will remain empty and static
85
+ // if status still empty in the original item or item does not exists it will remain empty and static
79
86
  updateModel(inputId, item);
80
87
  }
81
88
  cleanupModel();
package/dist/core.mjs CHANGED
@@ -23,8 +23,15 @@ function createCanvas(spinner, formatter, ident) {
23
23
  updaters.push(updater);
24
24
  }
25
25
  if (dirty || item.dirty_ || item.status_) {
26
- const prefix = getMessageFormat(item.status_, model.tick_);
27
- updater(formatter(item.text_, item.loglevel_, prefix, ident * (stack.length - 1)));
26
+ const prefix = getPrefix(item.status_, model.tick_);
27
+ updater(formatter({
28
+ loglevel: item.loglevel_,
29
+ message: item.text_,
30
+ context: item.context_,
31
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
32
+ action: (item.status_ === undefined ? 3 /* log */ : undefined),
33
+ tag: item.tag_
34
+ }, prefix, ident * (stack.length - 1)));
28
35
  if (item.dirty_) {
29
36
  item.dirty_ = false;
30
37
  dirty = true;
@@ -40,9 +47,9 @@ function createCanvas(spinner, formatter, ident) {
40
47
  }
41
48
  }
42
49
  };
43
- function getMessageFormat(status, tick) {
50
+ function getPrefix(status, tick) {
44
51
  // status is truthy when it is inprogress
45
- const prefix = status ? (spinner.frames[tick]) :
52
+ const prefix = status ? spinner.frames[tick] :
46
53
  // status not null when it is finished
47
54
  status != null;
48
55
  return prefix;
@@ -57,9 +64,9 @@ function createModel(logAboveSpinners) {
57
64
  items_: []
58
65
  };
59
66
  const itemById = Object.create(null);
60
- return [({ message: text, inputId, action, loglevel, ref, parentId }) => {
67
+ return [({ message: text, inputId, action, loglevel, ref, parentId, context, tag }) => {
61
68
  // item has status undefined, so it is static by default
62
- const item = { text_: text, loglevel_: loglevel, ref_: ref, parentId_: parentId, children_: [], dirty_: true };
69
+ const item = { text_: text, loglevel_: loglevel, ref_: ref, parentId_: parentId, children_: [], dirty_: true, context_: context, tag_: tag };
63
70
  if (action === 0 /* start */) {
64
71
  item.status_ = 1 /* inprogress */;
65
72
  }
@@ -67,7 +74,7 @@ function createModel(logAboveSpinners) {
67
74
  item.status_ = 0 /* finished */;
68
75
  }
69
76
  if (action !== 3 /* log */) {
70
- // if status still empty in the original item, or item does not exists it will remain empty and static
77
+ // if status still empty in the original item or item does not exists it will remain empty and static
71
78
  updateModel(inputId, item);
72
79
  }
73
80
  cleanupModel();
@@ -10,9 +10,11 @@ export interface ModelItem {
10
10
  loglevel_: LogLevel;
11
11
  ref_?: WeakRef<never>;
12
12
  parentId_?: number;
13
+ tag_?: string;
13
14
  next_?: ModelItem;
14
15
  children_: ModelItem[];
15
16
  dirty_?: boolean;
17
+ context_?: any;
16
18
  }
17
19
  export declare type Model = {
18
20
  items_: ModelItem[];
package/dist/index.cjs CHANGED
@@ -1,13 +1,17 @@
1
1
  'use strict';
2
2
 
3
- var core = require('@niceties/logger/core');
3
+ var appenderUtils = require('@niceties/logger/appender-utils');
4
+ var globalAppender = require('@niceties/logger/global-appender');
4
5
  var formatUtils = require('@niceties/logger/format-utils');
5
6
  var defaultFormatting = require('@niceties/logger/default-formatting');
6
- var core$1 = require('./core.cjs');
7
+ var core = require('./core.cjs');
7
8
  var spinners = require('./spinners.cjs');
8
9
  require('draftlog');
9
10
 
10
11
  const supportsUnicode = formatUtils.terminalSupportsUnicode();
11
12
  const spinner = supportsUnicode ? spinners.dots : spinners.line;
12
- const formatter = formatUtils.createFormatter(defaultFormatting.colors, supportsUnicode ? defaultFormatting.unicodePrefixes : defaultFormatting.asciiPrefixes);
13
- core.appender(core$1.createDraftlogAppender(spinner, formatter, false, 2));
13
+ const formatter = formatUtils.createFormatter(defaultFormatting.colors, supportsUnicode ? defaultFormatting.unicodePrefixes : defaultFormatting.asciiPrefixes, defaultFormatting.tagFactory);
14
+ let minLogLevel = 1 /* info */;
15
+ globalAppender.appender(appenderUtils.filterMessages((message) => message.loglevel >= minLogLevel || message.action !== 3 /* log */, core.createDraftlogAppender(spinner, formatter, false, 2), // eslint-disable-line indent
16
+ { setMinLevel(logLevel) { minLogLevel = logLevel; } } // eslint-disable-line indent
17
+ ));
package/dist/index.mjs CHANGED
@@ -1,11 +1,15 @@
1
- import { appender } from '@niceties/logger/core';
1
+ import { filterMessages } from '@niceties/logger/appender-utils';
2
+ import { appender } from '@niceties/logger/global-appender';
2
3
  import { terminalSupportsUnicode, createFormatter } from '@niceties/logger/format-utils';
3
- import { colors, unicodePrefixes, asciiPrefixes } from '@niceties/logger/default-formatting';
4
+ import { colors, unicodePrefixes, asciiPrefixes, tagFactory } from '@niceties/logger/default-formatting';
4
5
  import { createDraftlogAppender } from './core.mjs';
5
6
  import { dots, line } from './spinners.mjs';
6
7
  import 'draftlog';
7
8
 
8
9
  const supportsUnicode = terminalSupportsUnicode();
9
10
  const spinner = supportsUnicode ? dots : line;
10
- const formatter = createFormatter(colors, supportsUnicode ? unicodePrefixes : asciiPrefixes);
11
- appender(createDraftlogAppender(spinner, formatter, false, 2));
11
+ const formatter = createFormatter(colors, supportsUnicode ? unicodePrefixes : asciiPrefixes, tagFactory);
12
+ let minLogLevel = 1 /* info */;
13
+ appender(filterMessages((message) => message.loglevel >= minLogLevel || message.action !== 3 /* log */, createDraftlogAppender(spinner, formatter, false, 2), // eslint-disable-line indent
14
+ { setMinLevel(logLevel) { minLogLevel = logLevel; } } // eslint-disable-line indent
15
+ ));
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.0.7",
2
+ "version": "1.1.0",
3
3
  "license": "MIT",
4
4
  "name": "@niceties/draftlog-appender",
5
5
  "author": {
@@ -40,6 +40,7 @@
40
40
  "url": "https://github.com/kshutkin/niceties/issues"
41
41
  },
42
42
  "homepage": "https://github.com/kshutkin/niceties/blob/main/draftlog-appender/README.md",
43
+ "readme": "README.md",
43
44
  "scripts": {
44
45
  "build": "rimraf ./dist && rollup -c",
45
46
  "dev": "rimraf ./dist && rollup -c -w",
@@ -71,11 +72,13 @@
71
72
  "semantic-release-monorepo": "7.0.5",
72
73
  "ts-jest": "27.0.7",
73
74
  "typescript": "4.4.x",
74
- "update-monorepo-package-json": "0.1.6"
75
+ "update-monorepo-package-json": "0.2.0"
76
+ },
77
+ "peerDependencies": {
78
+ "@niceties/logger": "^1.1.0"
75
79
  },
76
80
  "dependencies": {
77
- "@niceties/logger": "^1.0.4",
78
81
  "draftlog": "^1.0.13"
79
82
  },
80
- "readme": "ERROR: No README data found!"
83
+ "description": "README.md"
81
84
  }