nightingale-slack 11.7.1 → 12.0.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/.eslintrc.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "root": true,
3
- "extends": ["@pob/eslint-config/root", "@pob/eslint-config-node"],
3
+ "extends": ["@pob/eslint-config/root-commonjs"],
4
4
  "ignorePatterns": ["*.d.ts", "/dist"]
5
5
  }
package/CHANGELOG.md CHANGED
@@ -3,6 +3,55 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [12.0.1](https://github.com/christophehurpeau/nightingale/compare/v12.0.0...v12.0.1) (2021-12-12)
7
+
8
+ **Note:** Version bump only for package nightingale-slack
9
+
10
+
11
+
12
+
13
+
14
+ # [12.0.0](https://github.com/christophehurpeau/nightingale/compare/v11.9.0...v12.0.0) (2021-12-11)
15
+
16
+
17
+ ### Build System
18
+
19
+ * node 14 and remove dev builds ([432ecd1](https://github.com/christophehurpeau/nightingale/commit/432ecd1faafd0419f57dea00fce560e4cccc207f))
20
+
21
+
22
+ ### Features
23
+
24
+ * drop default exports ([8878e49](https://github.com/christophehurpeau/nightingale/commit/8878e492b94852fcb892fd6d12c02c15c31b38b9))
25
+
26
+
27
+ ### BREAKING CHANGES
28
+
29
+ * use named imports instead of default exports
30
+ * requires node 14
31
+
32
+
33
+
34
+
35
+
36
+ ## [11.7.4](https://github.com/christophehurpeau/nightingale/compare/v11.7.3...v11.7.4) (2021-11-27)
37
+
38
+
39
+ ### Bug Fixes
40
+
41
+ * build all packages ([dbb4785](https://github.com/christophehurpeau/nightingale/commit/dbb4785cbb8c75942935c4a5935df32fd2e93690))
42
+
43
+
44
+
45
+
46
+
47
+ ## [11.7.2](https://github.com/christophehurpeau/nightingale/compare/v11.7.1...v11.7.2) (2021-11-27)
48
+
49
+ **Note:** Version bump only for package nightingale-slack
50
+
51
+
52
+
53
+
54
+
6
55
  ## [11.7.1](https://github.com/christophehurpeau/nightingale/compare/v11.7.0...v11.7.1) (2021-06-29)
7
56
 
8
57
 
package/README.md CHANGED
@@ -20,7 +20,7 @@ npm install --save nightingale nightingale-slack
20
20
 
21
21
  ```js
22
22
  import { configure, Level } from 'nightingale';
23
- import SlackHandler from 'nightingale-slack';
23
+ import { SlackHandler } from 'nightingale-slack';
24
24
 
25
25
  const slackErrorConfig = {
26
26
  webhookUrl: string,
@@ -3,26 +3,25 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const request = require('request');
6
- const Level = require('nightingale-levels');
6
+ const nightingaleLevels = require('nightingale-levels');
7
7
  const markdownFormatter = require('nightingale-markdown-formatter');
8
8
  const rawFormatter = require('nightingale-raw-formatter');
9
9
 
10
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
10
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e["default"] : e; }
11
11
 
12
- const Level__default = /*#__PURE__*/_interopDefaultLegacy(Level);
13
12
  const markdownFormatter__default = /*#__PURE__*/_interopDefaultLegacy(markdownFormatter);
14
13
  const rawFormatter__default = /*#__PURE__*/_interopDefaultLegacy(rawFormatter);
15
14
 
16
15
  /* eslint-disable camelcase */
17
16
  const levelToSlackColor = {
18
- [Level__default.TRACE]: '#808080',
19
- [Level__default.DEBUG]: '#808080',
20
- [Level__default.INFO]: '#808080',
21
- [Level__default.WARN]: 'warning',
22
- [Level__default.ERROR]: 'danger',
23
- [Level__default.CRITICAL]: 'danger',
24
- [Level__default.FATAL]: 'danger',
25
- [Level__default.EMERGENCY]: 'danger'
17
+ [nightingaleLevels.Level.TRACE]: '#808080',
18
+ [nightingaleLevels.Level.DEBUG]: '#808080',
19
+ [nightingaleLevels.Level.INFO]: '#808080',
20
+ [nightingaleLevels.Level.WARN]: 'warning',
21
+ [nightingaleLevels.Level.ERROR]: 'danger',
22
+ [nightingaleLevels.Level.CRITICAL]: 'danger',
23
+ [nightingaleLevels.Level.FATAL]: 'danger',
24
+ [nightingaleLevels.Level.EMERGENCY]: 'danger'
26
25
  };
27
26
  function createBody(record, slackConfig) {
28
27
  const markdown = markdownFormatter__default(record);
@@ -63,5 +62,4 @@ class SlackHandler {
63
62
 
64
63
  exports.SlackHandler = SlackHandler;
65
64
  exports.createBody = createBody;
66
- exports.default = SlackHandler;
67
- //# sourceMappingURL=index-node12.cjs.js.map
65
+ //# sourceMappingURL=index-node14.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-node14.cjs.js","sources":["../src/createBody.ts","../src/index.ts"],"sourcesContent":["/* eslint-disable camelcase */\nimport { Level } from 'nightingale-levels';\nimport markdownFormatter from 'nightingale-markdown-formatter';\nimport rawFormatter from 'nightingale-raw-formatter';\nimport type { LogRecord, Metadata } from 'nightingale-types';\nimport type SlackConfig from './SlackConfig';\n\nconst levelToSlackColor: Record<number, string> = {\n [Level.TRACE]: '#808080',\n [Level.DEBUG]: '#808080',\n [Level.INFO]: '#808080',\n [Level.WARN]: 'warning',\n [Level.ERROR]: 'danger',\n [Level.CRITICAL]: 'danger',\n [Level.FATAL]: 'danger',\n [Level.EMERGENCY]: 'danger',\n};\n\nexport default function createBody<T extends Metadata>(\n record: LogRecord<T>,\n slackConfig: SlackConfig,\n): Record<string, unknown> {\n const markdown = markdownFormatter(record);\n const raw = rawFormatter(record);\n\n return {\n channel: slackConfig.channel,\n username: slackConfig.username,\n icon_url: slackConfig.iconUrl,\n icon_emoji: slackConfig.iconEmoji,\n attachments: [\n {\n fallback: raw,\n title: record.message,\n color: levelToSlackColor[record.level],\n text: markdown,\n mrkdwn_in: ['text'],\n },\n ],\n };\n}\n","import type {\n LogRecord,\n Handle,\n Metadata,\n Handler,\n Level,\n} from 'nightingale-types';\nimport { post } from 'request';\nimport type SlackConfig from './SlackConfig';\nimport createBody from './createBody';\n\nexport { default as createBody } from './createBody';\n\nconst createHandler =\n (slackConfig: SlackConfig) =>\n <T extends Metadata>(record: LogRecord<T>) => {\n const body = createBody(record, slackConfig);\n\n post({ url: slackConfig.webhookUrl, body, json: true }).on(\n 'error',\n (err2: Error) => {\n console.error(err2.stack);\n },\n );\n };\n\nexport class SlackHandler implements Handler {\n minLevel: Level;\n\n handle: Handle;\n\n constructor(slackConfig: SlackConfig, minLevel: Level) {\n this.minLevel = minLevel;\n this.handle = createHandler(slackConfig);\n }\n}\n"],"names":["levelToSlackColor","Level","TRACE","DEBUG","INFO","WARN","ERROR","CRITICAL","FATAL","EMERGENCY","createBody","record","slackConfig","markdown","markdownFormatter","raw","rawFormatter","channel","username","icon_url","iconUrl","icon_emoji","iconEmoji","attachments","fallback","title","message","color","level","text","mrkdwn_in","createHandler","body","post","url","webhookUrl","json","on","err2","console","error","stack","SlackHandler","constructor","minLevel","handle"],"mappings":";;;;;;;;;;;;;;AAAA;AAOA,MAAMA,iBAAyC,GAAG;AAChD,GAACC,uBAAK,CAACC,KAAP,GAAe,SADiC;AAEhD,GAACD,uBAAK,CAACE,KAAP,GAAe,SAFiC;AAGhD,GAACF,uBAAK,CAACG,IAAP,GAAc,SAHkC;AAIhD,GAACH,uBAAK,CAACI,IAAP,GAAc,SAJkC;AAKhD,GAACJ,uBAAK,CAACK,KAAP,GAAe,QALiC;AAMhD,GAACL,uBAAK,CAACM,QAAP,GAAkB,QAN8B;AAOhD,GAACN,uBAAK,CAACO,KAAP,GAAe,QAPiC;AAQhD,GAACP,uBAAK,CAACQ,SAAP,GAAmB;AAR6B,CAAlD;AAWe,SAASC,UAAT,CACbC,MADa,EAEbC,WAFa,EAGY;AACzB,QAAMC,QAAQ,GAAGC,0BAAiB,CAACH,MAAD,CAAlC;AACA,QAAMI,GAAG,GAAGC,qBAAY,CAACL,MAAD,CAAxB;AAEA,SAAO;AACLM,IAAAA,OAAO,EAAEL,WAAW,CAACK,OADhB;AAELC,IAAAA,QAAQ,EAAEN,WAAW,CAACM,QAFjB;AAGLC,IAAAA,QAAQ,EAAEP,WAAW,CAACQ,OAHjB;AAILC,IAAAA,UAAU,EAAET,WAAW,CAACU,SAJnB;AAKLC,IAAAA,WAAW,EAAE,CACX;AACEC,MAAAA,QAAQ,EAAET,GADZ;AAEEU,MAAAA,KAAK,EAAEd,MAAM,CAACe,OAFhB;AAGEC,MAAAA,KAAK,EAAE3B,iBAAiB,CAACW,MAAM,CAACiB,KAAR,CAH1B;AAIEC,MAAAA,IAAI,EAAEhB,QAJR;AAKEiB,MAAAA,SAAS,EAAE,CAAC,MAAD;AALb,KADW;AALR,GAAP;AAeD;;AC3BD,MAAMC,aAAa,GAChBnB,WAAD,IACqBD,MAArB,IAA8C;AAC5C,QAAMqB,IAAI,GAAGtB,UAAU,CAACC,MAAD,EAASC,WAAT,CAAvB;AAEAqB,EAAAA,YAAI,CAAC;AAAEC,IAAAA,GAAG,EAAEtB,WAAW,CAACuB,UAAnB;AAA+BH,IAAAA,IAA/B;AAAqCI,IAAAA,IAAI,EAAE;AAA3C,GAAD,CAAJ,CAAwDC,EAAxD,CACE,OADF,EAEGC,IAAD,IAAiB;AACfC,IAAAA,OAAO,CAACC,KAAR,CAAcF,IAAI,CAACG,KAAnB;AACD,GAJH;AAMD,CAXH;;AAaO,MAAMC,YAAN,CAAsC;AAK3CC,EAAAA,WAAW,CAAC/B,WAAD,EAA2BgC,QAA3B,EAA4C;AACrD,SAAKA,QAAL,GAAgBA,QAAhB;AACA,SAAKC,MAAL,GAAcd,aAAa,CAACnB,WAAD,CAA3B;AACD;;AAR0C;;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { post } from 'request';
2
- import Level from 'nightingale-levels';
2
+ import { Level } from 'nightingale-levels';
3
3
  import markdownFormatter from 'nightingale-markdown-formatter';
4
4
  import rawFormatter from 'nightingale-raw-formatter';
5
5
 
@@ -51,6 +51,5 @@ class SlackHandler {
51
51
 
52
52
  }
53
53
 
54
- export default SlackHandler;
55
54
  export { SlackHandler, createBody };
56
- //# sourceMappingURL=index-node12.mjs.map
55
+ //# sourceMappingURL=index-node14.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-node14.mjs","sources":["../src/createBody.ts","../src/index.ts"],"sourcesContent":["/* eslint-disable camelcase */\nimport { Level } from 'nightingale-levels';\nimport markdownFormatter from 'nightingale-markdown-formatter';\nimport rawFormatter from 'nightingale-raw-formatter';\nimport type { LogRecord, Metadata } from 'nightingale-types';\nimport type SlackConfig from './SlackConfig';\n\nconst levelToSlackColor: Record<number, string> = {\n [Level.TRACE]: '#808080',\n [Level.DEBUG]: '#808080',\n [Level.INFO]: '#808080',\n [Level.WARN]: 'warning',\n [Level.ERROR]: 'danger',\n [Level.CRITICAL]: 'danger',\n [Level.FATAL]: 'danger',\n [Level.EMERGENCY]: 'danger',\n};\n\nexport default function createBody<T extends Metadata>(\n record: LogRecord<T>,\n slackConfig: SlackConfig,\n): Record<string, unknown> {\n const markdown = markdownFormatter(record);\n const raw = rawFormatter(record);\n\n return {\n channel: slackConfig.channel,\n username: slackConfig.username,\n icon_url: slackConfig.iconUrl,\n icon_emoji: slackConfig.iconEmoji,\n attachments: [\n {\n fallback: raw,\n title: record.message,\n color: levelToSlackColor[record.level],\n text: markdown,\n mrkdwn_in: ['text'],\n },\n ],\n };\n}\n","import type {\n LogRecord,\n Handle,\n Metadata,\n Handler,\n Level,\n} from 'nightingale-types';\nimport { post } from 'request';\nimport type SlackConfig from './SlackConfig';\nimport createBody from './createBody';\n\nexport { default as createBody } from './createBody';\n\nconst createHandler =\n (slackConfig: SlackConfig) =>\n <T extends Metadata>(record: LogRecord<T>) => {\n const body = createBody(record, slackConfig);\n\n post({ url: slackConfig.webhookUrl, body, json: true }).on(\n 'error',\n (err2: Error) => {\n console.error(err2.stack);\n },\n );\n };\n\nexport class SlackHandler implements Handler {\n minLevel: Level;\n\n handle: Handle;\n\n constructor(slackConfig: SlackConfig, minLevel: Level) {\n this.minLevel = minLevel;\n this.handle = createHandler(slackConfig);\n }\n}\n"],"names":["levelToSlackColor","Level","TRACE","DEBUG","INFO","WARN","ERROR","CRITICAL","FATAL","EMERGENCY","createBody","record","slackConfig","markdown","markdownFormatter","raw","rawFormatter","channel","username","icon_url","iconUrl","icon_emoji","iconEmoji","attachments","fallback","title","message","color","level","text","mrkdwn_in","createHandler","body","post","url","webhookUrl","json","on","err2","console","error","stack","SlackHandler","constructor","minLevel","handle"],"mappings":";;;;;AAAA;AAOA,MAAMA,iBAAyC,GAAG;AAChD,GAACC,KAAK,CAACC,KAAP,GAAe,SADiC;AAEhD,GAACD,KAAK,CAACE,KAAP,GAAe,SAFiC;AAGhD,GAACF,KAAK,CAACG,IAAP,GAAc,SAHkC;AAIhD,GAACH,KAAK,CAACI,IAAP,GAAc,SAJkC;AAKhD,GAACJ,KAAK,CAACK,KAAP,GAAe,QALiC;AAMhD,GAACL,KAAK,CAACM,QAAP,GAAkB,QAN8B;AAOhD,GAACN,KAAK,CAACO,KAAP,GAAe,QAPiC;AAQhD,GAACP,KAAK,CAACQ,SAAP,GAAmB;AAR6B,CAAlD;AAWe,SAASC,UAAT,CACbC,MADa,EAEbC,WAFa,EAGY;AACzB,QAAMC,QAAQ,GAAGC,iBAAiB,CAACH,MAAD,CAAlC;AACA,QAAMI,GAAG,GAAGC,YAAY,CAACL,MAAD,CAAxB;AAEA,SAAO;AACLM,IAAAA,OAAO,EAAEL,WAAW,CAACK,OADhB;AAELC,IAAAA,QAAQ,EAAEN,WAAW,CAACM,QAFjB;AAGLC,IAAAA,QAAQ,EAAEP,WAAW,CAACQ,OAHjB;AAILC,IAAAA,UAAU,EAAET,WAAW,CAACU,SAJnB;AAKLC,IAAAA,WAAW,EAAE,CACX;AACEC,MAAAA,QAAQ,EAAET,GADZ;AAEEU,MAAAA,KAAK,EAAEd,MAAM,CAACe,OAFhB;AAGEC,MAAAA,KAAK,EAAE3B,iBAAiB,CAACW,MAAM,CAACiB,KAAR,CAH1B;AAIEC,MAAAA,IAAI,EAAEhB,QAJR;AAKEiB,MAAAA,SAAS,EAAE,CAAC,MAAD;AALb,KADW;AALR,GAAP;AAeD;;AC3BD,MAAMC,aAAa,GAChBnB,WAAD,IACqBD,MAArB,IAA8C;AAC5C,QAAMqB,IAAI,GAAGtB,UAAU,CAACC,MAAD,EAASC,WAAT,CAAvB;AAEAqB,EAAAA,IAAI,CAAC;AAAEC,IAAAA,GAAG,EAAEtB,WAAW,CAACuB,UAAnB;AAA+BH,IAAAA,IAA/B;AAAqCI,IAAAA,IAAI,EAAE;AAA3C,GAAD,CAAJ,CAAwDC,EAAxD,CACE,OADF,EAEGC,IAAD,IAAiB;AACfC,IAAAA,OAAO,CAACC,KAAR,CAAcF,IAAI,CAACG,KAAnB;AACD,GAJH;AAMD,CAXH;;AAaO,MAAMC,YAAN,CAAsC;AAK3CC,EAAAA,WAAW,CAAC/B,WAAD,EAA2BgC,QAA3B,EAA4C;AACrD,SAAKA,QAAL,GAAgBA,QAAhB;AACA,SAAKC,MAAL,GAAcd,aAAa,CAACnB,WAAD,CAA3B;AACD;;AAR0C;;;;"}
package/dist/index.d.ts CHANGED
@@ -1,12 +1,9 @@
1
1
  import type { Handle, Handler, Level } from 'nightingale-types';
2
2
  import type SlackConfig from './SlackConfig';
3
- import createBody from './createBody';
4
- export { createBody };
3
+ export { default as createBody } from './createBody';
5
4
  export declare class SlackHandler implements Handler {
6
5
  minLevel: Level;
7
6
  handle: Handle;
8
7
  constructor(slackConfig: SlackConfig, minLevel: Level);
9
8
  }
10
- /** @deprecated use named export instead */
11
- export default SlackHandler;
12
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,MAAM,EAEN,OAAO,EACP,KAAK,EACN,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,OAAO,UAAU,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,CAAC;AAetB,qBAAa,YAAa,YAAW,OAAO;IAC1C,QAAQ,EAAE,KAAK,CAAC;IAEhB,MAAM,EAAE,MAAM,CAAC;gBAEH,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK;CAItD;AAED,2CAA2C;AAC3C,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,MAAM,EAEN,OAAO,EACP,KAAK,EACN,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAG7C,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AAerD,qBAAa,YAAa,YAAW,OAAO;IAC1C,QAAQ,EAAE,KAAK,CAAC;IAEhB,MAAM,EAAE,MAAM,CAAC;gBAEH,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK;CAItD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nightingale-slack",
3
- "version": "11.7.1",
3
+ "version": "12.0.1",
4
4
  "description": "Slack handler for nightingale",
5
5
  "keywords": [
6
6
  "nightingale",
@@ -14,35 +14,29 @@
14
14
  "directory": "packages/nightingale-slack"
15
15
  },
16
16
  "homepage": "https://github.com/christophehurpeau/nightingale",
17
+ "type": "commonjs",
17
18
  "engines": {
18
- "node": ">=12.10.0"
19
+ "node": "^14.13.1 || >=16.0.0"
19
20
  },
20
- "main": "./index.js",
21
+ "main": "./dist/index-node14.cjs.js",
21
22
  "types": "./dist/index.d.ts",
22
23
  "exports": {
24
+ "./package.json": "./package.json",
23
25
  ".": {
24
26
  "node": {
25
- "development": {
26
- "import": "./dist/index-node12-dev.mjs",
27
- "require": "./dist/index-node12-dev.cjs.js"
28
- },
29
- "import": "./dist/index-node12.mjs",
30
- "require": "./dist/index-node12.cjs.js"
27
+ "import": "./dist/index-node14.mjs",
28
+ "require": "./dist/index-node14.cjs.js"
31
29
  }
32
30
  }
33
31
  },
34
- "module:node": "./dist/index-node12.mjs",
35
- "module:node-dev": "./dist/index-node12-dev.mjs",
32
+ "module:node": "./dist/index-node14.mjs",
36
33
  "sideEffects": false,
37
34
  "scripts": {
38
35
  "build": "pob-build && yarn run build:definitions",
39
36
  "build:definitions": "tsc -p tsconfig.build.json",
40
- "clean": "rm -Rf docs dist test/node6 coverage",
41
- "generate:test-coverage": "rm -Rf docs/coverage/ ; NODE_ENV=production BABEL_ENV=test jest --coverage --coverageReporters=pob-lcov-reporter --coverageDirectory=docs/coverage/",
37
+ "clean": "rm -Rf dist",
42
38
  "lint": "yarn run lint:eslint",
43
- "lint:eslint": "yarn --cwd ../.. run eslint --ext .js,.mjs,.ts --report-unused-disable-directives --quiet packages/nightingale-slack",
44
- "test": "jest",
45
- "test:watch": "jest",
39
+ "lint:eslint": "cd ../.. && yarn run eslint --report-unused-disable-directives --resolve-plugins-relative-to . --quiet packages/nightingale-slack",
46
40
  "watch": "pob-watch"
47
41
  },
48
42
  "prettier": {
@@ -50,30 +44,11 @@
50
44
  "singleQuote": true,
51
45
  "arrowParens": "always"
52
46
  },
53
- "jest": {
54
- "cacheDirectory": "./node_modules/.cache/jest",
55
- "testMatch": [
56
- "<rootDir>/src/**/__tests__/**/*.ts",
57
- "<rootDir>/src/**/*.test.ts"
58
- ],
59
- "collectCoverageFrom": [
60
- "src/**/*.ts"
61
- ],
62
- "moduleFileExtensions": [
63
- "ts",
64
- "js",
65
- "json"
66
- ],
67
- "transform": {
68
- "^.+\\.ts$": "babel-jest"
69
- },
70
- "testEnvironment": "node"
71
- },
72
47
  "pob": {
73
48
  "babelEnvs": [
74
49
  {
75
50
  "target": "node",
76
- "version": "12",
51
+ "version": "14",
77
52
  "formats": [
78
53
  "cjs",
79
54
  "es"
@@ -85,35 +60,17 @@
85
60
  ]
86
61
  },
87
62
  "dependencies": {
88
- "nightingale-levels": "^11.7.1",
89
- "nightingale-markdown-formatter": "^11.7.1",
90
- "nightingale-raw-formatter": "^11.7.1",
91
- "nightingale-types": "^11.7.1",
63
+ "nightingale-levels": "12.0.1",
64
+ "nightingale-markdown-formatter": "12.0.1",
65
+ "nightingale-raw-formatter": "12.0.1",
66
+ "nightingale-types": "12.0.1",
92
67
  "request": "^2.88.0"
93
68
  },
94
69
  "devDependencies": {
95
- "@babel/core": "7.14.6",
96
- "@pob/eslint-config": "43.2.0",
97
- "@pob/eslint-config-node": "43.2.0",
98
- "@pob/eslint-config-typescript": "43.2.0",
99
- "@pob/eslint-config-typescript-node": "43.2.0",
100
- "@types/jest": "26.0.23",
101
- "@types/request": "2.48.5",
102
- "@typescript-eslint/eslint-plugin": "4.28.1",
103
- "@typescript-eslint/parser": "4.28.1",
104
- "babel-jest": "26.6.3",
105
- "babel-preset-latest-node": "5.5.1",
106
- "eslint": "7.29.0",
107
- "eslint-import-resolver-node": "0.3.4",
108
- "eslint-plugin-import": "2.23.4",
109
- "eslint-plugin-node": "11.1.0",
110
- "eslint-plugin-unicorn": "29.0.0",
111
- "jest": "26.6.3",
112
- "pob-babel": "27.0.3",
113
- "pob-lcov-reporter": "4.0.1",
114
- "rollup": "2.52.3",
115
- "typescript": "4.3.4",
116
- "xunit-file": "1.0.0"
70
+ "@babel/core": "7.16.0",
71
+ "@types/request": "2.48.7",
72
+ "pob-babel": "29.4.2",
73
+ "typescript": "4.5.3"
117
74
  },
118
- "gitHead": "325214aa6c7f87ace818389b77ce7b4208005c11"
75
+ "gitHead": "bb3da283ed9e19d2c1dcdb5e130c86b4835d8500"
119
76
  }
@@ -0,0 +1,3 @@
1
+ import createRollupConfig from 'pob-babel/createRollupConfig.js';
2
+
3
+ export default createRollupConfig({});
@@ -7,7 +7,7 @@
7
7
  "plugins": ["@typescript-eslint"],
8
8
  "extends": [
9
9
  "@pob/eslint-config-typescript",
10
- "@pob/eslint-config-typescript-node"
10
+ "@pob/eslint-config-typescript/node"
11
11
  ],
12
12
  "ignorePatterns": ["*.d.ts"],
13
13
  "overrides": [
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable camelcase */
2
- import Level from 'nightingale-levels';
2
+ import { Level } from 'nightingale-levels';
3
3
  import createBody from './createBody';
4
4
 
5
5
  const webhookUrl = 'webhookUrl';
package/src/createBody.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable camelcase */
2
- import Level from 'nightingale-levels';
2
+ import { Level } from 'nightingale-levels';
3
3
  import markdownFormatter from 'nightingale-markdown-formatter';
4
4
  import rawFormatter from 'nightingale-raw-formatter';
5
5
  import type { LogRecord, Metadata } from 'nightingale-types';
package/src/index.ts CHANGED
@@ -9,20 +9,20 @@ import { post } from 'request';
9
9
  import type SlackConfig from './SlackConfig';
10
10
  import createBody from './createBody';
11
11
 
12
- export { createBody };
12
+ export { default as createBody } from './createBody';
13
13
 
14
- const createHandler = (slackConfig: SlackConfig) => <T extends Metadata>(
15
- record: LogRecord<T>,
16
- ) => {
17
- const body = createBody(record, slackConfig);
14
+ const createHandler =
15
+ (slackConfig: SlackConfig) =>
16
+ <T extends Metadata>(record: LogRecord<T>) => {
17
+ const body = createBody(record, slackConfig);
18
18
 
19
- post({ url: slackConfig.webhookUrl, body, json: true }).on(
20
- 'error',
21
- (err2: Error) => {
22
- console.error(err2.stack);
23
- },
24
- );
25
- };
19
+ post({ url: slackConfig.webhookUrl, body, json: true }).on(
20
+ 'error',
21
+ (err2: Error) => {
22
+ console.error(err2.stack);
23
+ },
24
+ );
25
+ };
26
26
 
27
27
  export class SlackHandler implements Handler {
28
28
  minLevel: Level;
@@ -34,6 +34,3 @@ export class SlackHandler implements Handler {
34
34
  this.handle = createHandler(slackConfig);
35
35
  }
36
36
  }
37
-
38
- /** @deprecated use named export instead */
39
- export default SlackHandler;
@@ -1,67 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const request = require('request');
6
- const Level = require('nightingale-levels');
7
- const markdownFormatter = require('nightingale-markdown-formatter');
8
- const rawFormatter = require('nightingale-raw-formatter');
9
-
10
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e['default'] : e; }
11
-
12
- const Level__default = /*#__PURE__*/_interopDefaultLegacy(Level);
13
- const markdownFormatter__default = /*#__PURE__*/_interopDefaultLegacy(markdownFormatter);
14
- const rawFormatter__default = /*#__PURE__*/_interopDefaultLegacy(rawFormatter);
15
-
16
- /* eslint-disable camelcase */
17
- const levelToSlackColor = {
18
- [Level__default.TRACE]: '#808080',
19
- [Level__default.DEBUG]: '#808080',
20
- [Level__default.INFO]: '#808080',
21
- [Level__default.WARN]: 'warning',
22
- [Level__default.ERROR]: 'danger',
23
- [Level__default.CRITICAL]: 'danger',
24
- [Level__default.FATAL]: 'danger',
25
- [Level__default.EMERGENCY]: 'danger'
26
- };
27
- function createBody(record, slackConfig) {
28
- const markdown = markdownFormatter__default(record);
29
- const raw = rawFormatter__default(record);
30
- return {
31
- channel: slackConfig.channel,
32
- username: slackConfig.username,
33
- icon_url: slackConfig.iconUrl,
34
- icon_emoji: slackConfig.iconEmoji,
35
- attachments: [{
36
- fallback: raw,
37
- title: record.message,
38
- color: levelToSlackColor[record.level],
39
- text: markdown,
40
- mrkdwn_in: ['text']
41
- }]
42
- };
43
- }
44
-
45
- const createHandler = slackConfig => record => {
46
- const body = createBody(record, slackConfig);
47
- request.post({
48
- url: slackConfig.webhookUrl,
49
- body,
50
- json: true
51
- }).on('error', err2 => {
52
- console.error(err2.stack);
53
- });
54
- };
55
-
56
- class SlackHandler {
57
- constructor(slackConfig, minLevel) {
58
- this.minLevel = minLevel;
59
- this.handle = createHandler(slackConfig);
60
- }
61
-
62
- }
63
-
64
- exports.SlackHandler = SlackHandler;
65
- exports.createBody = createBody;
66
- exports.default = SlackHandler;
67
- //# sourceMappingURL=index-node12-dev.cjs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-node12-dev.cjs.js","sources":["../src/createBody.ts","../src/index.ts"],"sourcesContent":["/* eslint-disable camelcase */\nimport Level from 'nightingale-levels';\nimport markdownFormatter from 'nightingale-markdown-formatter';\nimport rawFormatter from 'nightingale-raw-formatter';\nimport type { LogRecord, Metadata } from 'nightingale-types';\nimport type SlackConfig from './SlackConfig';\n\nconst levelToSlackColor: Record<number, string> = {\n [Level.TRACE]: '#808080',\n [Level.DEBUG]: '#808080',\n [Level.INFO]: '#808080',\n [Level.WARN]: 'warning',\n [Level.ERROR]: 'danger',\n [Level.CRITICAL]: 'danger',\n [Level.FATAL]: 'danger',\n [Level.EMERGENCY]: 'danger',\n};\n\nexport default function createBody<T extends Metadata>(\n record: LogRecord<T>,\n slackConfig: SlackConfig,\n): Record<string, unknown> {\n const markdown = markdownFormatter(record);\n const raw = rawFormatter(record);\n\n return {\n channel: slackConfig.channel,\n username: slackConfig.username,\n icon_url: slackConfig.iconUrl,\n icon_emoji: slackConfig.iconEmoji,\n attachments: [\n {\n fallback: raw,\n title: record.message,\n color: levelToSlackColor[record.level],\n text: markdown,\n mrkdwn_in: ['text'],\n },\n ],\n };\n}\n","import type {\n LogRecord,\n Handle,\n Metadata,\n Handler,\n Level,\n} from 'nightingale-types';\nimport { post } from 'request';\nimport type SlackConfig from './SlackConfig';\nimport createBody from './createBody';\n\nexport { createBody };\n\nconst createHandler = (slackConfig: SlackConfig) => <T extends Metadata>(\n record: LogRecord<T>,\n) => {\n const body = createBody(record, slackConfig);\n\n post({ url: slackConfig.webhookUrl, body, json: true }).on(\n 'error',\n (err2: Error) => {\n console.error(err2.stack);\n },\n );\n};\n\nexport class SlackHandler implements Handler {\n minLevel: Level;\n\n handle: Handle;\n\n constructor(slackConfig: SlackConfig, minLevel: Level) {\n this.minLevel = minLevel;\n this.handle = createHandler(slackConfig);\n }\n}\n\n/** @deprecated use named export instead */\nexport default SlackHandler;\n"],"names":["levelToSlackColor","Level","TRACE","DEBUG","INFO","WARN","ERROR","CRITICAL","FATAL","EMERGENCY","createBody","record","slackConfig","markdown","markdownFormatter","raw","rawFormatter","channel","username","icon_url","iconUrl","icon_emoji","iconEmoji","attachments","fallback","title","message","color","level","text","mrkdwn_in","createHandler","body","post","url","webhookUrl","json","on","err2","console","error","stack","SlackHandler","constructor","minLevel","handle"],"mappings":";;;;;;;;;;;;;;;AAAA;AAOA,MAAMA,iBAAyC,GAAG;AAChD,GAACC,cAAK,CAACC,KAAP,GAAe,SADiC;AAEhD,GAACD,cAAK,CAACE,KAAP,GAAe,SAFiC;AAGhD,GAACF,cAAK,CAACG,IAAP,GAAc,SAHkC;AAIhD,GAACH,cAAK,CAACI,IAAP,GAAc,SAJkC;AAKhD,GAACJ,cAAK,CAACK,KAAP,GAAe,QALiC;AAMhD,GAACL,cAAK,CAACM,QAAP,GAAkB,QAN8B;AAOhD,GAACN,cAAK,CAACO,KAAP,GAAe,QAPiC;AAQhD,GAACP,cAAK,CAACQ,SAAP,GAAmB;AAR6B,CAAlD;AAWe,SAASC,UAAT,CACbC,MADa,EAEbC,WAFa,EAGY;AACzB,QAAMC,QAAQ,GAAGC,0BAAiB,CAACH,MAAD,CAAlC;AACA,QAAMI,GAAG,GAAGC,qBAAY,CAACL,MAAD,CAAxB;AAEA,SAAO;AACLM,IAAAA,OAAO,EAAEL,WAAW,CAACK,OADhB;AAELC,IAAAA,QAAQ,EAAEN,WAAW,CAACM,QAFjB;AAGLC,IAAAA,QAAQ,EAAEP,WAAW,CAACQ,OAHjB;AAILC,IAAAA,UAAU,EAAET,WAAW,CAACU,SAJnB;AAKLC,IAAAA,WAAW,EAAE,CACX;AACEC,MAAAA,QAAQ,EAAET,GADZ;AAEEU,MAAAA,KAAK,EAAEd,MAAM,CAACe,OAFhB;AAGEC,MAAAA,KAAK,EAAE3B,iBAAiB,CAACW,MAAM,CAACiB,KAAR,CAH1B;AAIEC,MAAAA,IAAI,EAAEhB,QAJR;AAKEiB,MAAAA,SAAS,EAAE,CAAC,MAAD;AALb,KADW;AALR,GAAP;AAeD;;AC3BD,MAAMC,aAAa,GAAInB,WAAD,IACpBD,MADkD,IAE/C;AACH,QAAMqB,IAAI,GAAGtB,UAAU,CAACC,MAAD,EAASC,WAAT,CAAvB;AAEAqB,EAAAA,YAAI,CAAC;AAAEC,IAAAA,GAAG,EAAEtB,WAAW,CAACuB,UAAnB;AAA+BH,IAAAA,IAA/B;AAAqCI,IAAAA,IAAI,EAAE;AAA3C,GAAD,CAAJ,CAAwDC,EAAxD,CACE,OADF,EAEGC,IAAD,IAAiB;AACfC,IAAAA,OAAO,CAACC,KAAR,CAAcF,IAAI,CAACG,KAAnB;AACD,GAJH;AAMD,CAXD;;AAaO,MAAMC,YAAN,CAAsC;AAK3CC,EAAAA,WAAW,CAAC/B,WAAD,EAA2BgC,QAA3B,EAA4C;AACrD,SAAKA,QAAL,GAAgBA,QAAhB;AACA,SAAKC,MAAL,GAAcd,aAAa,CAACnB,WAAD,CAA3B;AACD;;AAR0C;;;;;;"}
@@ -1,56 +0,0 @@
1
- import { post } from 'request';
2
- import Level from 'nightingale-levels';
3
- import markdownFormatter from 'nightingale-markdown-formatter';
4
- import rawFormatter from 'nightingale-raw-formatter';
5
-
6
- /* eslint-disable camelcase */
7
- const levelToSlackColor = {
8
- [Level.TRACE]: '#808080',
9
- [Level.DEBUG]: '#808080',
10
- [Level.INFO]: '#808080',
11
- [Level.WARN]: 'warning',
12
- [Level.ERROR]: 'danger',
13
- [Level.CRITICAL]: 'danger',
14
- [Level.FATAL]: 'danger',
15
- [Level.EMERGENCY]: 'danger'
16
- };
17
- function createBody(record, slackConfig) {
18
- const markdown = markdownFormatter(record);
19
- const raw = rawFormatter(record);
20
- return {
21
- channel: slackConfig.channel,
22
- username: slackConfig.username,
23
- icon_url: slackConfig.iconUrl,
24
- icon_emoji: slackConfig.iconEmoji,
25
- attachments: [{
26
- fallback: raw,
27
- title: record.message,
28
- color: levelToSlackColor[record.level],
29
- text: markdown,
30
- mrkdwn_in: ['text']
31
- }]
32
- };
33
- }
34
-
35
- const createHandler = slackConfig => record => {
36
- const body = createBody(record, slackConfig);
37
- post({
38
- url: slackConfig.webhookUrl,
39
- body,
40
- json: true
41
- }).on('error', err2 => {
42
- console.error(err2.stack);
43
- });
44
- };
45
-
46
- class SlackHandler {
47
- constructor(slackConfig, minLevel) {
48
- this.minLevel = minLevel;
49
- this.handle = createHandler(slackConfig);
50
- }
51
-
52
- }
53
-
54
- export default SlackHandler;
55
- export { SlackHandler, createBody };
56
- //# sourceMappingURL=index-node12-dev.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-node12-dev.mjs","sources":["../src/createBody.ts","../src/index.ts"],"sourcesContent":["/* eslint-disable camelcase */\nimport Level from 'nightingale-levels';\nimport markdownFormatter from 'nightingale-markdown-formatter';\nimport rawFormatter from 'nightingale-raw-formatter';\nimport type { LogRecord, Metadata } from 'nightingale-types';\nimport type SlackConfig from './SlackConfig';\n\nconst levelToSlackColor: Record<number, string> = {\n [Level.TRACE]: '#808080',\n [Level.DEBUG]: '#808080',\n [Level.INFO]: '#808080',\n [Level.WARN]: 'warning',\n [Level.ERROR]: 'danger',\n [Level.CRITICAL]: 'danger',\n [Level.FATAL]: 'danger',\n [Level.EMERGENCY]: 'danger',\n};\n\nexport default function createBody<T extends Metadata>(\n record: LogRecord<T>,\n slackConfig: SlackConfig,\n): Record<string, unknown> {\n const markdown = markdownFormatter(record);\n const raw = rawFormatter(record);\n\n return {\n channel: slackConfig.channel,\n username: slackConfig.username,\n icon_url: slackConfig.iconUrl,\n icon_emoji: slackConfig.iconEmoji,\n attachments: [\n {\n fallback: raw,\n title: record.message,\n color: levelToSlackColor[record.level],\n text: markdown,\n mrkdwn_in: ['text'],\n },\n ],\n };\n}\n","import type {\n LogRecord,\n Handle,\n Metadata,\n Handler,\n Level,\n} from 'nightingale-types';\nimport { post } from 'request';\nimport type SlackConfig from './SlackConfig';\nimport createBody from './createBody';\n\nexport { createBody };\n\nconst createHandler = (slackConfig: SlackConfig) => <T extends Metadata>(\n record: LogRecord<T>,\n) => {\n const body = createBody(record, slackConfig);\n\n post({ url: slackConfig.webhookUrl, body, json: true }).on(\n 'error',\n (err2: Error) => {\n console.error(err2.stack);\n },\n );\n};\n\nexport class SlackHandler implements Handler {\n minLevel: Level;\n\n handle: Handle;\n\n constructor(slackConfig: SlackConfig, minLevel: Level) {\n this.minLevel = minLevel;\n this.handle = createHandler(slackConfig);\n }\n}\n\n/** @deprecated use named export instead */\nexport default SlackHandler;\n"],"names":["levelToSlackColor","Level","TRACE","DEBUG","INFO","WARN","ERROR","CRITICAL","FATAL","EMERGENCY","createBody","record","slackConfig","markdown","markdownFormatter","raw","rawFormatter","channel","username","icon_url","iconUrl","icon_emoji","iconEmoji","attachments","fallback","title","message","color","level","text","mrkdwn_in","createHandler","body","post","url","webhookUrl","json","on","err2","console","error","stack","SlackHandler","constructor","minLevel","handle"],"mappings":";;;;;AAAA;AAOA,MAAMA,iBAAyC,GAAG;AAChD,GAACC,KAAK,CAACC,KAAP,GAAe,SADiC;AAEhD,GAACD,KAAK,CAACE,KAAP,GAAe,SAFiC;AAGhD,GAACF,KAAK,CAACG,IAAP,GAAc,SAHkC;AAIhD,GAACH,KAAK,CAACI,IAAP,GAAc,SAJkC;AAKhD,GAACJ,KAAK,CAACK,KAAP,GAAe,QALiC;AAMhD,GAACL,KAAK,CAACM,QAAP,GAAkB,QAN8B;AAOhD,GAACN,KAAK,CAACO,KAAP,GAAe,QAPiC;AAQhD,GAACP,KAAK,CAACQ,SAAP,GAAmB;AAR6B,CAAlD;AAWe,SAASC,UAAT,CACbC,MADa,EAEbC,WAFa,EAGY;AACzB,QAAMC,QAAQ,GAAGC,iBAAiB,CAACH,MAAD,CAAlC;AACA,QAAMI,GAAG,GAAGC,YAAY,CAACL,MAAD,CAAxB;AAEA,SAAO;AACLM,IAAAA,OAAO,EAAEL,WAAW,CAACK,OADhB;AAELC,IAAAA,QAAQ,EAAEN,WAAW,CAACM,QAFjB;AAGLC,IAAAA,QAAQ,EAAEP,WAAW,CAACQ,OAHjB;AAILC,IAAAA,UAAU,EAAET,WAAW,CAACU,SAJnB;AAKLC,IAAAA,WAAW,EAAE,CACX;AACEC,MAAAA,QAAQ,EAAET,GADZ;AAEEU,MAAAA,KAAK,EAAEd,MAAM,CAACe,OAFhB;AAGEC,MAAAA,KAAK,EAAE3B,iBAAiB,CAACW,MAAM,CAACiB,KAAR,CAH1B;AAIEC,MAAAA,IAAI,EAAEhB,QAJR;AAKEiB,MAAAA,SAAS,EAAE,CAAC,MAAD;AALb,KADW;AALR,GAAP;AAeD;;AC3BD,MAAMC,aAAa,GAAInB,WAAD,IACpBD,MADkD,IAE/C;AACH,QAAMqB,IAAI,GAAGtB,UAAU,CAACC,MAAD,EAASC,WAAT,CAAvB;AAEAqB,EAAAA,IAAI,CAAC;AAAEC,IAAAA,GAAG,EAAEtB,WAAW,CAACuB,UAAnB;AAA+BH,IAAAA,IAA/B;AAAqCI,IAAAA,IAAI,EAAE;AAA3C,GAAD,CAAJ,CAAwDC,EAAxD,CACE,OADF,EAEGC,IAAD,IAAiB;AACfC,IAAAA,OAAO,CAACC,KAAR,CAAcF,IAAI,CAACG,KAAnB;AACD,GAJH;AAMD,CAXD;;AAaO,MAAMC,YAAN,CAAsC;AAK3CC,EAAAA,WAAW,CAAC/B,WAAD,EAA2BgC,QAA3B,EAA4C;AACrD,SAAKA,QAAL,GAAgBA,QAAhB;AACA,SAAKC,MAAL,GAAcd,aAAa,CAACnB,WAAD,CAA3B;AACD;;AAR0C;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-node12.cjs.js","sources":["../src/createBody.ts","../src/index.ts"],"sourcesContent":["/* eslint-disable camelcase */\nimport Level from 'nightingale-levels';\nimport markdownFormatter from 'nightingale-markdown-formatter';\nimport rawFormatter from 'nightingale-raw-formatter';\nimport type { LogRecord, Metadata } from 'nightingale-types';\nimport type SlackConfig from './SlackConfig';\n\nconst levelToSlackColor: Record<number, string> = {\n [Level.TRACE]: '#808080',\n [Level.DEBUG]: '#808080',\n [Level.INFO]: '#808080',\n [Level.WARN]: 'warning',\n [Level.ERROR]: 'danger',\n [Level.CRITICAL]: 'danger',\n [Level.FATAL]: 'danger',\n [Level.EMERGENCY]: 'danger',\n};\n\nexport default function createBody<T extends Metadata>(\n record: LogRecord<T>,\n slackConfig: SlackConfig,\n): Record<string, unknown> {\n const markdown = markdownFormatter(record);\n const raw = rawFormatter(record);\n\n return {\n channel: slackConfig.channel,\n username: slackConfig.username,\n icon_url: slackConfig.iconUrl,\n icon_emoji: slackConfig.iconEmoji,\n attachments: [\n {\n fallback: raw,\n title: record.message,\n color: levelToSlackColor[record.level],\n text: markdown,\n mrkdwn_in: ['text'],\n },\n ],\n };\n}\n","import type {\n LogRecord,\n Handle,\n Metadata,\n Handler,\n Level,\n} from 'nightingale-types';\nimport { post } from 'request';\nimport type SlackConfig from './SlackConfig';\nimport createBody from './createBody';\n\nexport { createBody };\n\nconst createHandler = (slackConfig: SlackConfig) => <T extends Metadata>(\n record: LogRecord<T>,\n) => {\n const body = createBody(record, slackConfig);\n\n post({ url: slackConfig.webhookUrl, body, json: true }).on(\n 'error',\n (err2: Error) => {\n console.error(err2.stack);\n },\n );\n};\n\nexport class SlackHandler implements Handler {\n minLevel: Level;\n\n handle: Handle;\n\n constructor(slackConfig: SlackConfig, minLevel: Level) {\n this.minLevel = minLevel;\n this.handle = createHandler(slackConfig);\n }\n}\n\n/** @deprecated use named export instead */\nexport default SlackHandler;\n"],"names":["levelToSlackColor","Level","TRACE","DEBUG","INFO","WARN","ERROR","CRITICAL","FATAL","EMERGENCY","createBody","record","slackConfig","markdown","markdownFormatter","raw","rawFormatter","channel","username","icon_url","iconUrl","icon_emoji","iconEmoji","attachments","fallback","title","message","color","level","text","mrkdwn_in","createHandler","body","post","url","webhookUrl","json","on","err2","console","error","stack","SlackHandler","constructor","minLevel","handle"],"mappings":";;;;;;;;;;;;;;;AAAA;AAOA,MAAMA,iBAAyC,GAAG;AAChD,GAACC,cAAK,CAACC,KAAP,GAAe,SADiC;AAEhD,GAACD,cAAK,CAACE,KAAP,GAAe,SAFiC;AAGhD,GAACF,cAAK,CAACG,IAAP,GAAc,SAHkC;AAIhD,GAACH,cAAK,CAACI,IAAP,GAAc,SAJkC;AAKhD,GAACJ,cAAK,CAACK,KAAP,GAAe,QALiC;AAMhD,GAACL,cAAK,CAACM,QAAP,GAAkB,QAN8B;AAOhD,GAACN,cAAK,CAACO,KAAP,GAAe,QAPiC;AAQhD,GAACP,cAAK,CAACQ,SAAP,GAAmB;AAR6B,CAAlD;AAWe,SAASC,UAAT,CACbC,MADa,EAEbC,WAFa,EAGY;AACzB,QAAMC,QAAQ,GAAGC,0BAAiB,CAACH,MAAD,CAAlC;AACA,QAAMI,GAAG,GAAGC,qBAAY,CAACL,MAAD,CAAxB;AAEA,SAAO;AACLM,IAAAA,OAAO,EAAEL,WAAW,CAACK,OADhB;AAELC,IAAAA,QAAQ,EAAEN,WAAW,CAACM,QAFjB;AAGLC,IAAAA,QAAQ,EAAEP,WAAW,CAACQ,OAHjB;AAILC,IAAAA,UAAU,EAAET,WAAW,CAACU,SAJnB;AAKLC,IAAAA,WAAW,EAAE,CACX;AACEC,MAAAA,QAAQ,EAAET,GADZ;AAEEU,MAAAA,KAAK,EAAEd,MAAM,CAACe,OAFhB;AAGEC,MAAAA,KAAK,EAAE3B,iBAAiB,CAACW,MAAM,CAACiB,KAAR,CAH1B;AAIEC,MAAAA,IAAI,EAAEhB,QAJR;AAKEiB,MAAAA,SAAS,EAAE,CAAC,MAAD;AALb,KADW;AALR,GAAP;AAeD;;AC3BD,MAAMC,aAAa,GAAInB,WAAD,IACpBD,MADkD,IAE/C;AACH,QAAMqB,IAAI,GAAGtB,UAAU,CAACC,MAAD,EAASC,WAAT,CAAvB;AAEAqB,EAAAA,YAAI,CAAC;AAAEC,IAAAA,GAAG,EAAEtB,WAAW,CAACuB,UAAnB;AAA+BH,IAAAA,IAA/B;AAAqCI,IAAAA,IAAI,EAAE;AAA3C,GAAD,CAAJ,CAAwDC,EAAxD,CACE,OADF,EAEGC,IAAD,IAAiB;AACfC,IAAAA,OAAO,CAACC,KAAR,CAAcF,IAAI,CAACG,KAAnB;AACD,GAJH;AAMD,CAXD;;AAaO,MAAMC,YAAN,CAAsC;AAK3CC,EAAAA,WAAW,CAAC/B,WAAD,EAA2BgC,QAA3B,EAA4C;AACrD,SAAKA,QAAL,GAAgBA,QAAhB;AACA,SAAKC,MAAL,GAAcd,aAAa,CAACnB,WAAD,CAA3B;AACD;;AAR0C;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-node12.mjs","sources":["../src/createBody.ts","../src/index.ts"],"sourcesContent":["/* eslint-disable camelcase */\nimport Level from 'nightingale-levels';\nimport markdownFormatter from 'nightingale-markdown-formatter';\nimport rawFormatter from 'nightingale-raw-formatter';\nimport type { LogRecord, Metadata } from 'nightingale-types';\nimport type SlackConfig from './SlackConfig';\n\nconst levelToSlackColor: Record<number, string> = {\n [Level.TRACE]: '#808080',\n [Level.DEBUG]: '#808080',\n [Level.INFO]: '#808080',\n [Level.WARN]: 'warning',\n [Level.ERROR]: 'danger',\n [Level.CRITICAL]: 'danger',\n [Level.FATAL]: 'danger',\n [Level.EMERGENCY]: 'danger',\n};\n\nexport default function createBody<T extends Metadata>(\n record: LogRecord<T>,\n slackConfig: SlackConfig,\n): Record<string, unknown> {\n const markdown = markdownFormatter(record);\n const raw = rawFormatter(record);\n\n return {\n channel: slackConfig.channel,\n username: slackConfig.username,\n icon_url: slackConfig.iconUrl,\n icon_emoji: slackConfig.iconEmoji,\n attachments: [\n {\n fallback: raw,\n title: record.message,\n color: levelToSlackColor[record.level],\n text: markdown,\n mrkdwn_in: ['text'],\n },\n ],\n };\n}\n","import type {\n LogRecord,\n Handle,\n Metadata,\n Handler,\n Level,\n} from 'nightingale-types';\nimport { post } from 'request';\nimport type SlackConfig from './SlackConfig';\nimport createBody from './createBody';\n\nexport { createBody };\n\nconst createHandler = (slackConfig: SlackConfig) => <T extends Metadata>(\n record: LogRecord<T>,\n) => {\n const body = createBody(record, slackConfig);\n\n post({ url: slackConfig.webhookUrl, body, json: true }).on(\n 'error',\n (err2: Error) => {\n console.error(err2.stack);\n },\n );\n};\n\nexport class SlackHandler implements Handler {\n minLevel: Level;\n\n handle: Handle;\n\n constructor(slackConfig: SlackConfig, minLevel: Level) {\n this.minLevel = minLevel;\n this.handle = createHandler(slackConfig);\n }\n}\n\n/** @deprecated use named export instead */\nexport default SlackHandler;\n"],"names":["levelToSlackColor","Level","TRACE","DEBUG","INFO","WARN","ERROR","CRITICAL","FATAL","EMERGENCY","createBody","record","slackConfig","markdown","markdownFormatter","raw","rawFormatter","channel","username","icon_url","iconUrl","icon_emoji","iconEmoji","attachments","fallback","title","message","color","level","text","mrkdwn_in","createHandler","body","post","url","webhookUrl","json","on","err2","console","error","stack","SlackHandler","constructor","minLevel","handle"],"mappings":";;;;;AAAA;AAOA,MAAMA,iBAAyC,GAAG;AAChD,GAACC,KAAK,CAACC,KAAP,GAAe,SADiC;AAEhD,GAACD,KAAK,CAACE,KAAP,GAAe,SAFiC;AAGhD,GAACF,KAAK,CAACG,IAAP,GAAc,SAHkC;AAIhD,GAACH,KAAK,CAACI,IAAP,GAAc,SAJkC;AAKhD,GAACJ,KAAK,CAACK,KAAP,GAAe,QALiC;AAMhD,GAACL,KAAK,CAACM,QAAP,GAAkB,QAN8B;AAOhD,GAACN,KAAK,CAACO,KAAP,GAAe,QAPiC;AAQhD,GAACP,KAAK,CAACQ,SAAP,GAAmB;AAR6B,CAAlD;AAWe,SAASC,UAAT,CACbC,MADa,EAEbC,WAFa,EAGY;AACzB,QAAMC,QAAQ,GAAGC,iBAAiB,CAACH,MAAD,CAAlC;AACA,QAAMI,GAAG,GAAGC,YAAY,CAACL,MAAD,CAAxB;AAEA,SAAO;AACLM,IAAAA,OAAO,EAAEL,WAAW,CAACK,OADhB;AAELC,IAAAA,QAAQ,EAAEN,WAAW,CAACM,QAFjB;AAGLC,IAAAA,QAAQ,EAAEP,WAAW,CAACQ,OAHjB;AAILC,IAAAA,UAAU,EAAET,WAAW,CAACU,SAJnB;AAKLC,IAAAA,WAAW,EAAE,CACX;AACEC,MAAAA,QAAQ,EAAET,GADZ;AAEEU,MAAAA,KAAK,EAAEd,MAAM,CAACe,OAFhB;AAGEC,MAAAA,KAAK,EAAE3B,iBAAiB,CAACW,MAAM,CAACiB,KAAR,CAH1B;AAIEC,MAAAA,IAAI,EAAEhB,QAJR;AAKEiB,MAAAA,SAAS,EAAE,CAAC,MAAD;AALb,KADW;AALR,GAAP;AAeD;;AC3BD,MAAMC,aAAa,GAAInB,WAAD,IACpBD,MADkD,IAE/C;AACH,QAAMqB,IAAI,GAAGtB,UAAU,CAACC,MAAD,EAASC,WAAT,CAAvB;AAEAqB,EAAAA,IAAI,CAAC;AAAEC,IAAAA,GAAG,EAAEtB,WAAW,CAACuB,UAAnB;AAA+BH,IAAAA,IAA/B;AAAqCI,IAAAA,IAAI,EAAE;AAA3C,GAAD,CAAJ,CAAwDC,EAAxD,CACE,OADF,EAEGC,IAAD,IAAiB;AACfC,IAAAA,OAAO,CAACC,KAAR,CAAcF,IAAI,CAACG,KAAnB;AACD,GAJH;AAMD,CAXD;;AAaO,MAAMC,YAAN,CAAsC;AAK3CC,EAAAA,WAAW,CAAC/B,WAAD,EAA2BgC,QAA3B,EAA4C;AACrD,SAAKA,QAAL,GAAgBA,QAAhB;AACA,SAAKC,MAAL,GAAcd,aAAa,CAACnB,WAAD,CAA3B;AACD;;AAR0C;;;;;"}
package/index.js DELETED
@@ -1,6 +0,0 @@
1
- /* eslint-disable import/no-dynamic-require */
2
-
3
- 'use strict';
4
-
5
- const production = process.env.NODE_ENV === 'production';
6
- module.exports = require(`./dist/index-node12${production ? '' : '-dev'}.cjs`);