forked from Lomray-Software/microservice-helpers
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrollup.config.mjs
89 lines (88 loc) · 2.38 KB
/
rollup.config.mjs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
import typescript from 'rollup-plugin-ts';
import json from '@rollup/plugin-json';
import peerDepsExternal from 'rollup-plugin-peer-deps-external';
import del from 'rollup-plugin-delete';
import copy from 'rollup-plugin-copy';
export default {
// build mocks for generate tslib with all helpers
// separate mocks folder to prevent errors when use common import
input: [
'src/index.ts',
'src/helpers/tracer.ts',
'src/helpers/get-constants.ts',
'src/mocks/index.ts',
'src/test-helpers/index.ts'
],
output: {
dir: 'lib',
format: 'cjs',
sourcemap: true,
preserveModules: true,
preserveModulesRoot: 'src',
exports: 'auto',
},
external: [
'rewiremock/node',
'sinon',
'winston',
'firebase-admin',
'fs',
'dns',
'typeorm',
'class-validator',
'class-transformer',
'@lomray/microservice-nodejs-lib',
'@lomray/microservice-remote-middleware',
'@lomray/microservices-types',
'@lomray/microservices-client-api/api-client-backend',
'@lomray/microservices-client-api/endpoints',
'class-validator-jsonschema',
'@lomray/typeorm-json-query',
'typeorm/query-builder/SelectQueryBuilder',
'winston-loki',
'klona/full',
'traverse',
'crypto',
'uuid',
'@opentelemetry/api',
'@opentelemetry/exporter-trace-otlp-http',
'@opentelemetry/instrumentation-express',
'@opentelemetry/instrumentation-http',
'@opentelemetry/exporter-metrics-otlp-http',
'@opentelemetry/instrumentation-pg',
'@opentelemetry/instrumentation-winston',
'@opentelemetry/host-metrics',
'@opentelemetry/sdk-metrics',
'@opentelemetry/resources',
'@opentelemetry/sdk-node',
'@opentelemetry/semantic-conventions',
'@opentelemetry/instrumentation',
'@opentelemetry/core',
'@opentelemetry/api-metrics',
],
plugins: [
del({ targets: 'lib/*', runOnce: true }),
peerDepsExternal(),
json(),
typescript({
tsconfig: resolvedConfig => ({
...resolvedConfig,
declaration: true,
importHelpers: true,
plugins: [
{
"transform": "@zerollup/ts-transform-paths",
"exclude": ["*"]
}
]
}),
}),
copy({
targets: [
{ src: 'package.json', dest: 'lib' },
{ src: 'README.md', dest: 'lib' },
{ src: 'typings/**/*', dest: 'lib/typings' },
]
})
],
};