@verdaccio/logger 6.0.0-6-next.15 → 6.0.0-6-next.17

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,19 @@
1
1
  # @verdaccio/logger
2
2
 
3
+ ## 6.0.0-6-next.17
4
+
5
+ ### Patch Changes
6
+
7
+ - @verdaccio/core@6.0.0-6-next.49
8
+
9
+ ## 6.0.0-6-next.16
10
+
11
+ ### Patch Changes
12
+
13
+ - Updated dependencies [43f32687]
14
+ - Updated dependencies [62c24b63]
15
+ - @verdaccio/core@6.0.0-6-next.48
16
+
3
17
  ## 6.0.0-6-next.15
4
18
 
5
19
  ### Patch Changes
@@ -0,0 +1 @@
1
+ export { setup, createLogger, logger, prepareSetup } from './logger';
@@ -0,0 +1,18 @@
1
+ /// <reference types="node" />
2
+ import { Logger, LoggerConfigItem, LoggerFormat } from '@verdaccio/types';
3
+ export declare type LogPlugin = {
4
+ dest: string;
5
+ options?: any[];
6
+ };
7
+ declare type LoggerOptions = {
8
+ level?: string;
9
+ path?: string;
10
+ colors?: boolean;
11
+ sync?: boolean;
12
+ };
13
+ export declare function createLogger(options?: LoggerOptions, destination?: NodeJS.WritableStream, format?: LoggerFormat): any;
14
+ export declare type LoggerConfig = LoggerConfigItem;
15
+ export declare function prepareSetup(options?: LoggerConfigItem): Logger;
16
+ export declare let logger: Logger;
17
+ export declare function setup(options: LoggerConfigItem): Logger;
18
+ export {};
package/build/logger.js CHANGED
@@ -38,6 +38,7 @@ const DEFAULT_LOG_FORMAT = isProd() ? 'json' : 'pretty';
38
38
  function createLogger(options = {
39
39
  level: 'http'
40
40
  }, // eslint-disable-next-line no-undef
41
+ // @ts-ignore
41
42
  destination = _pino.default.destination(1), format = DEFAULT_LOG_FORMAT) {
42
43
  debug('setup logger');
43
44
  let pinoConfig = {
@@ -135,7 +136,8 @@ function prepareSetup(options = DEFAULT_LOGGER_CONF) {
135
136
  level: loggerConfig.level,
136
137
  path: loggerConfig.path,
137
138
  colors: loggerConfig.colors
138
- }, destination, loggerConfig.format);
139
+ }, // @ts-ignore
140
+ destination, loggerConfig.format);
139
141
  return logger;
140
142
  } else {
141
143
  debug('logging stdout enabled'); // @ts-ignore
@@ -143,7 +145,8 @@ function prepareSetup(options = DEFAULT_LOGGER_CONF) {
143
145
  logger = createLogger({
144
146
  level: loggerConfig.level,
145
147
  colors: loggerConfig.colors
146
- }, _pino.default.destination(1), loggerConfig.format);
148
+ }, // @ts-ignore
149
+ _pino.default.destination(1), loggerConfig.format);
147
150
  return logger;
148
151
  }
149
152
  }
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","names":["debug","buildDebug","isProd","process","env","NODE_ENV","hasColors","colors","isColorSupported","DEFAULT_LOG_FORMAT","createLogger","options","level","destination","pino","format","pinoConfig","customLevels","http","serializers","err","stdSerializers","req","res","includes","Object","assign","transport","target","path","prettyStamp","hooks","logMethod","inputArgs","method","templateObject","message","otherArgs","templateVars","getOwnPropertyNames","length","apply","hydratedMessage","fillInMsgTemplate","logger","DEBUG","on","lvl","val","prevLvl","prevVal","DEFAULT_LOGGER_CONF","type","prepareSetup","loggerConfig","reopen","setup"],"sources":["../src/logger.ts"],"sourcesContent":["// <reference types=\"node\" />\nimport { isColorSupported } from 'colorette';\nimport buildDebug from 'debug';\nimport pino, { Logger } from 'pino';\n\nimport { fillInMsgTemplate } from '@verdaccio/logger-prettify';\nimport { LoggerConfigItem, LoggerFormat } from '@verdaccio/types';\n\nconst debug = buildDebug('verdaccio:logger');\n\nfunction isProd() {\n return process.env.NODE_ENV === 'production';\n}\n\nfunction hasColors(colors: boolean | undefined) {\n if (colors) {\n return isColorSupported;\n }\n return typeof colors === 'undefined' ? true : colors;\n}\n\nconst DEFAULT_LOG_FORMAT = isProd() ? 'json' : 'pretty';\n\nexport type LogPlugin = {\n dest: string;\n options?: any[];\n};\n\ntype LoggerOptions = { level?: string; path?: string; colors?: boolean; sync?: boolean };\n\nexport function createLogger(\n options: LoggerOptions = { level: 'http' },\n // eslint-disable-next-line no-undef\n destination: NodeJS.WritableStream = pino.destination(1),\n format: LoggerFormat = DEFAULT_LOG_FORMAT\n) {\n debug('setup logger');\n let pinoConfig = {\n customLevels: {\n http: 25,\n },\n level: options.level,\n serializers: {\n err: pino.stdSerializers.err,\n req: pino.stdSerializers.req,\n res: pino.stdSerializers.res,\n },\n };\n\n debug('has prettifier? %o', !isProd());\n // pretty logs are not allowed in production for performance reasons\n if (['pretty-timestamped', 'pretty'].includes(format) && isProd() === false) {\n pinoConfig = Object.assign({}, pinoConfig, {\n transport: {\n target: '@verdaccio/logger-prettify',\n options: {\n // string or 1 (file descriptor for process.stdout)\n destination: options.path || 1,\n colors: hasColors(options.colors),\n prettyStamp: format === 'pretty-timestamped',\n },\n },\n });\n } else {\n pinoConfig = {\n ...pinoConfig,\n // more info\n // https://github.com/pinojs/pino/blob/v7.1.0/docs/api.md#hooks-object\n // TODO: improve typings here\n // @ts-ignore\n hooks: {\n logMethod(\n inputArgs: [any, any, ...any[]],\n method: {\n apply: (arg0: { logMethod: (inputArgs: any, method: any) => any }, arg1: any[]) => any;\n }\n ) {\n const [templateObject, message, ...otherArgs] = inputArgs;\n const templateVars =\n !!templateObject && typeof templateObject === 'object'\n ? Object.getOwnPropertyNames(templateObject)\n : [];\n if (!message || !templateVars.length) return method.apply(this, inputArgs);\n const hydratedMessage = fillInMsgTemplate(message, templateObject, false);\n return method.apply(this, [templateObject, hydratedMessage, ...otherArgs]);\n },\n },\n };\n }\n const logger = pino(pinoConfig, destination);\n\n /* eslint-disable */\n /* istanbul ignore next */\n if (process.env.DEBUG) {\n logger.on('level-change', (lvl, val, prevLvl, prevVal) => {\n debug('%s (%d) was changed to %s (%d)', lvl, val, prevLvl, prevVal);\n });\n }\n\n return logger;\n}\n\nconst DEFAULT_LOGGER_CONF: LoggerConfigItem = {\n type: 'stdout',\n format: 'pretty',\n level: 'http',\n};\n\nexport type LoggerConfig = LoggerConfigItem;\n\nexport function prepareSetup(options: LoggerConfigItem = DEFAULT_LOGGER_CONF) {\n let logger: Logger<{\n customLevels: { http: number };\n level: string | undefined;\n serializers: { err: any; req: any; res: any };\n }>;\n let loggerConfig = options;\n if (!loggerConfig?.level) {\n loggerConfig = Object.assign(\n {},\n {\n level: 'http',\n },\n loggerConfig\n );\n }\n const pinoConfig = { level: loggerConfig.level };\n if (loggerConfig.type === 'file') {\n debug('logging file enabled');\n const destination = pino.destination(loggerConfig.path);\n /* eslint-disable */\n /* istanbul ignore next */\n process.on('SIGUSR2', () => destination.reopen());\n // @ts-ignore\n logger = createLogger(\n { level: loggerConfig.level, path: loggerConfig.path, colors: loggerConfig.colors },\n destination,\n loggerConfig.format\n );\n return logger;\n } else {\n debug('logging stdout enabled');\n // @ts-ignore\n logger = createLogger(\n { level: loggerConfig.level, colors: loggerConfig.colors },\n pino.destination(1),\n loggerConfig.format\n );\n return logger;\n }\n}\n\nexport let logger: Logger;\n\nexport function setup(options: LoggerConfigItem) {\n if (typeof logger !== 'undefined') {\n return logger;\n }\n\n logger = prepareSetup(options);\n return logger;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","names":["debug","buildDebug","isProd","process","env","NODE_ENV","hasColors","colors","isColorSupported","DEFAULT_LOG_FORMAT","createLogger","options","level","destination","pino","format","pinoConfig","customLevels","http","serializers","err","stdSerializers","req","res","includes","Object","assign","transport","target","path","prettyStamp","hooks","logMethod","inputArgs","method","templateObject","message","otherArgs","templateVars","getOwnPropertyNames","length","apply","hydratedMessage","fillInMsgTemplate","logger","DEBUG","on","lvl","val","prevLvl","prevVal","DEFAULT_LOGGER_CONF","type","prepareSetup","loggerConfig","reopen","setup"],"sources":["../src/logger.ts"],"sourcesContent":["// <reference types=\"node\" />\nimport { isColorSupported } from 'colorette';\nimport buildDebug from 'debug';\nimport pino from 'pino';\n\nimport { fillInMsgTemplate } from '@verdaccio/logger-prettify';\nimport { Logger, LoggerConfigItem, LoggerFormat } from '@verdaccio/types';\n\nconst debug = buildDebug('verdaccio:logger');\n\nfunction isProd() {\n return process.env.NODE_ENV === 'production';\n}\n\nfunction hasColors(colors: boolean | undefined) {\n if (colors) {\n return isColorSupported;\n }\n return typeof colors === 'undefined' ? true : colors;\n}\n\nconst DEFAULT_LOG_FORMAT = isProd() ? 'json' : 'pretty';\n\nexport type LogPlugin = {\n dest: string;\n options?: any[];\n};\n\ntype LoggerOptions = { level?: string; path?: string; colors?: boolean; sync?: boolean };\n\nexport function createLogger(\n options: LoggerOptions = { level: 'http' },\n // eslint-disable-next-line no-undef\n // @ts-ignore\n destination: NodeJS.WritableStream = pino.destination(1),\n format: LoggerFormat = DEFAULT_LOG_FORMAT\n): any {\n debug('setup logger');\n let pinoConfig = {\n customLevels: {\n http: 25,\n },\n level: options.level,\n serializers: {\n err: pino.stdSerializers.err,\n req: pino.stdSerializers.req,\n res: pino.stdSerializers.res,\n },\n };\n\n debug('has prettifier? %o', !isProd());\n // pretty logs are not allowed in production for performance reasons\n if (['pretty-timestamped', 'pretty'].includes(format) && isProd() === false) {\n pinoConfig = Object.assign({}, pinoConfig, {\n transport: {\n target: '@verdaccio/logger-prettify',\n options: {\n // string or 1 (file descriptor for process.stdout)\n destination: options.path || 1,\n colors: hasColors(options.colors),\n prettyStamp: format === 'pretty-timestamped',\n },\n },\n });\n } else {\n pinoConfig = {\n ...pinoConfig,\n // more info\n // https://github.com/pinojs/pino/blob/v7.1.0/docs/api.md#hooks-object\n // TODO: improve typings here\n // @ts-ignore\n hooks: {\n logMethod(\n inputArgs: [any, any, ...any[]],\n method: {\n apply: (arg0: { logMethod: (inputArgs: any, method: any) => any }, arg1: any[]) => any;\n }\n ) {\n const [templateObject, message, ...otherArgs] = inputArgs;\n const templateVars =\n !!templateObject && typeof templateObject === 'object'\n ? Object.getOwnPropertyNames(templateObject)\n : [];\n if (!message || !templateVars.length) return method.apply(this, inputArgs);\n const hydratedMessage = fillInMsgTemplate(message, templateObject, false);\n return method.apply(this, [templateObject, hydratedMessage, ...otherArgs]);\n },\n },\n };\n }\n const logger = pino(pinoConfig, destination);\n\n /* eslint-disable */\n /* istanbul ignore next */\n if (process.env.DEBUG) {\n logger.on('level-change', (lvl, val, prevLvl, prevVal) => {\n debug('%s (%d) was changed to %s (%d)', lvl, val, prevLvl, prevVal);\n });\n }\n\n return logger;\n}\n\nconst DEFAULT_LOGGER_CONF: LoggerConfigItem = {\n type: 'stdout',\n format: 'pretty',\n level: 'http',\n};\n\nexport type LoggerConfig = LoggerConfigItem;\n\nexport function prepareSetup(options: LoggerConfigItem = DEFAULT_LOGGER_CONF) {\n let logger: Logger;\n let loggerConfig = options;\n if (!loggerConfig?.level) {\n loggerConfig = Object.assign(\n {},\n {\n level: 'http',\n },\n loggerConfig\n );\n }\n const pinoConfig = { level: loggerConfig.level };\n if (loggerConfig.type === 'file') {\n debug('logging file enabled');\n const destination = pino.destination(loggerConfig.path);\n /* eslint-disable */\n /* istanbul ignore next */\n process.on('SIGUSR2', () => destination.reopen());\n // @ts-ignore\n logger = createLogger(\n { level: loggerConfig.level, path: loggerConfig.path, colors: loggerConfig.colors },\n // @ts-ignore\n destination,\n loggerConfig.format\n );\n return logger;\n } else {\n debug('logging stdout enabled');\n // @ts-ignore\n logger = createLogger(\n { level: loggerConfig.level, colors: loggerConfig.colors },\n // @ts-ignore\n pino.destination(1),\n loggerConfig.format\n );\n return logger;\n }\n}\n\nexport let logger: Logger;\n\nexport function setup(options: LoggerConfigItem) {\n if (typeof logger !== 'undefined') {\n return logger;\n }\n\n logger = prepareSetup(options);\n return logger;\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@verdaccio/logger",
3
- "version": "6.0.0-6-next.15",
3
+ "version": "6.0.0-6-next.17",
4
4
  "description": "logger",
5
5
  "main": "./build/index.js",
6
- "types": "build/index.d.ts",
6
+ "types": "./build/index.d.ts",
7
7
  "author": {
8
8
  "name": "Juan Picado",
9
9
  "email": "juanpicado19@gmail.com"
@@ -30,14 +30,14 @@
30
30
  "npm": ">=6"
31
31
  },
32
32
  "dependencies": {
33
- "@verdaccio/core": "6.0.0-6-next.47",
33
+ "@verdaccio/core": "6.0.0-6-next.49",
34
34
  "@verdaccio/logger-prettify": "6.0.0-6-next.7",
35
35
  "debug": "4.3.4",
36
36
  "colorette": "2.0.19",
37
- "pino": "8.4.2"
37
+ "pino": "8.6.1"
38
38
  },
39
39
  "devDependencies": {
40
- "@verdaccio/types": "11.0.0-6-next.16"
40
+ "@verdaccio/types": "11.0.0-6-next.17"
41
41
  },
42
42
  "funding": {
43
43
  "type": "opencollective",
@@ -50,7 +50,7 @@
50
50
  "build:types": "tsc --emitDeclarationOnly -p tsconfig.build.json",
51
51
  "build:js": "babel src/ --out-dir build/ --copy-files --extensions \".ts,.tsx\" --source-maps",
52
52
  "watch": "pnpm build:js -- --watch",
53
- "build": "babel src/ --out-dir build/ --copy-files --extensions \".ts,.tsx\" --source-maps"
53
+ "build": "pnpm run build:js && pnpm run build:types"
54
54
  },
55
55
  "readme": "# @verdaccio/logger\n\n[![backers](https://opencollective.com/verdaccio/tiers/backer/badge.svg?label=Backer&color=brightgreen)](https://opencollective.com/verdaccio)\n[![stackshare](https://img.shields.io/badge/Follow%20on-StackShare-blue.svg?logo=stackshare&style=flat)](https://stackshare.io/verdaccio)\n[![MIT](https://img.shields.io/github/license/mashape/apistatus.svg)](https://github.com/verdaccio/verdaccio/blob/master/LICENSE)\n[![Crowdin](https://d322cqt584bo4o.cloudfront.net/verdaccio/localized.svg)](https://crowdin.com/project/verdaccio)\n[![TODOs](https://badgen.net/https/api.tickgit.com/badgen/github.com/verdaccio/verdaccio)](https://www.tickgit.com/browse?repo=github.com/verdaccio/verdaccio)\n\n[![Twitter followers](https://img.shields.io/twitter/follow/verdaccio_npm.svg?style=social&label=Follow)](https://twitter.com/verdaccio_npm)\n[![Github](https://img.shields.io/github/stars/verdaccio/verdaccio.svg?style=social&label=Stars)](https://github.com/verdaccio/verdaccio/stargazers)\n\n## Donations\n\nVerdaccio is run by **volunteers**; nobody is working full-time on it. If you find this project to be useful and would like to support its development, consider making a donation - **your logo might end up in this readme.** 😉\n\n**[Donate](https://opencollective.com/verdaccio)** 💵👍🏻 starting from _\\$1/month_ or just one single contribution.\n\n## Report a vulnerability\n\nIf you want to report a security vulnerability, please follow the steps which we have defined for you in our [security policy](https://github.com/verdaccio/verdaccio/security/policy).\n\n## Open Collective Sponsors\n\nSupport this project by becoming a sponsor. Your logo will show up here with a link to your website. [[Become a sponsor](https://opencollective.com/verdaccio#sponsor)]\n\n[![sponsor](https://opencollective.com/verdaccio/sponsor/0/avatar.svg)](https://opencollective.com/verdaccio/sponsor/0/website)\n[![sponsor](https://opencollective.com/verdaccio/sponsor/1/avatar.svg)](https://opencollective.com/verdaccio/sponsor/1/website)\n[![sponsor](https://opencollective.com/verdaccio/sponsor/2/avatar.svg)](https://opencollective.com/verdaccio/sponsor/2/website)\n[![sponsor](https://opencollective.com/verdaccio/sponsor/3/avatar.svg)](https://opencollective.com/verdaccio/sponsor/3/website)\n[![sponsor](https://opencollective.com/verdaccio/sponsor/4/avatar.svg)](https://opencollective.com/verdaccio/sponsor/4/website)\n[![sponsor](https://opencollective.com/verdaccio/sponsor/5/avatar.svg)](https://opencollective.com/verdaccio/sponsor/5/website)\n[![sponsor](https://opencollective.com/verdaccio/sponsor/6/avatar.svg)](https://opencollective.com/verdaccio/sponsor/6/website)\n[![sponsor](https://opencollective.com/verdaccio/sponsor/7/avatar.svg)](https://opencollective.com/verdaccio/sponsor/7/website)\n[![sponsor](https://opencollective.com/verdaccio/sponsor/8/avatar.svg)](https://opencollective.com/verdaccio/sponsor/8/website)\n[![sponsor](https://opencollective.com/verdaccio/sponsor/9/avatar.svg)](https://opencollective.com/verdaccio/sponsor/9/website)\n\n## Open Collective Backers\n\nThank you to all our backers! 🙏 [[Become a backer](https://opencollective.com/verdaccio#backer)]\n\n[![backers](https://opencollective.com/verdaccio/backers.svg?width=890)](https://opencollective.com/verdaccio#backers)\n\n## Special Thanks\n\nThanks to the following companies to help us to achieve our goals providing free open source licenses.\n\n[![jetbrain](assets/thanks/jetbrains/logo.png)](https://www.jetbrains.com/)\n[![crowdin](assets/thanks/crowdin/logo.png)](https://crowdin.com/)\n[![balsamiq](assets/thanks/balsamiq/logo.jpg)](https://balsamiq.com/)\n\n## Contributors\n\nThis project exists thanks to all the people who contribute. [[Contribute](CONTRIBUTING.md)].\n\n[![contributors](https://opencollective.com/verdaccio/contributors.svg?width=890&button=true)](../../graphs/contributors)\n\n### FAQ / Contact / Troubleshoot\n\nIf you have any issue you can try the following options, do no desist to ask or check our issues database, perhaps someone has asked already what you are looking for.\n\n- [Blog](https://verdaccio.org/blog/)\n- [Donations](https://opencollective.com/verdaccio)\n- [Reporting an issue](https://github.com/verdaccio/verdaccio/blob/master/CONTRIBUTING.md#reporting-a-bug)\n- [Running discussions](https://github.com/verdaccio/verdaccio/issues?q=is%3Aissue+is%3Aopen+label%3Adiscuss)\n- [Chat](http://chat.verdaccio.org/)\n- [Logos](https://verdaccio.org/docs/en/logo)\n- [Docker Examples](https://github.com/verdaccio/docker-examples)\n- [FAQ](https://github.com/verdaccio/verdaccio/issues?utf8=%E2%9C%93&q=is%3Aissue%20label%3Aquestion%20)\n\n### License\n\nVerdaccio is [MIT licensed](https://github.com/verdaccio/verdaccio/blob/master/LICENSE)\n\nThe Verdaccio documentation and logos (excluding /thanks, e.g., .md, .png, .sketch) files within the /assets folder) is\n[Creative Commons licensed](https://github.com/verdaccio/verdaccio/blob/master/LICENSE-docs).\n"
56
56
  }
package/src/logger.ts CHANGED
@@ -1,10 +1,10 @@
1
1
  // <reference types="node" />
2
2
  import { isColorSupported } from 'colorette';
3
3
  import buildDebug from 'debug';
4
- import pino, { Logger } from 'pino';
4
+ import pino from 'pino';
5
5
 
6
6
  import { fillInMsgTemplate } from '@verdaccio/logger-prettify';
7
- import { LoggerConfigItem, LoggerFormat } from '@verdaccio/types';
7
+ import { Logger, LoggerConfigItem, LoggerFormat } from '@verdaccio/types';
8
8
 
9
9
  const debug = buildDebug('verdaccio:logger');
10
10
 
@@ -31,9 +31,10 @@ type LoggerOptions = { level?: string; path?: string; colors?: boolean; sync?: b
31
31
  export function createLogger(
32
32
  options: LoggerOptions = { level: 'http' },
33
33
  // eslint-disable-next-line no-undef
34
+ // @ts-ignore
34
35
  destination: NodeJS.WritableStream = pino.destination(1),
35
36
  format: LoggerFormat = DEFAULT_LOG_FORMAT
36
- ) {
37
+ ): any {
37
38
  debug('setup logger');
38
39
  let pinoConfig = {
39
40
  customLevels: {
@@ -109,11 +110,7 @@ const DEFAULT_LOGGER_CONF: LoggerConfigItem = {
109
110
  export type LoggerConfig = LoggerConfigItem;
110
111
 
111
112
  export function prepareSetup(options: LoggerConfigItem = DEFAULT_LOGGER_CONF) {
112
- let logger: Logger<{
113
- customLevels: { http: number };
114
- level: string | undefined;
115
- serializers: { err: any; req: any; res: any };
116
- }>;
113
+ let logger: Logger;
117
114
  let loggerConfig = options;
118
115
  if (!loggerConfig?.level) {
119
116
  loggerConfig = Object.assign(
@@ -134,6 +131,7 @@ export function prepareSetup(options: LoggerConfigItem = DEFAULT_LOGGER_CONF) {
134
131
  // @ts-ignore
135
132
  logger = createLogger(
136
133
  { level: loggerConfig.level, path: loggerConfig.path, colors: loggerConfig.colors },
134
+ // @ts-ignore
137
135
  destination,
138
136
  loggerConfig.format
139
137
  );
@@ -143,6 +141,7 @@ export function prepareSetup(options: LoggerConfigItem = DEFAULT_LOGGER_CONF) {
143
141
  // @ts-ignore
144
142
  logger = createLogger(
145
143
  { level: loggerConfig.level, colors: loggerConfig.colors },
144
+ // @ts-ignore
146
145
  pino.destination(1),
147
146
  loggerConfig.format
148
147
  );
package/tsconfig.json CHANGED
@@ -5,7 +5,6 @@
5
5
  "outDir": "./build"
6
6
  },
7
7
  "include": ["src/**/*.ts"],
8
- "exclude": ["src/**/*.test.ts"],
9
8
  "references": [
10
9
  {
11
10
  "path": "../logger-prettify"