-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathwebpack.config.js
58 lines (56 loc) · 2.64 KB
/
webpack.config.js
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
const path = require('path');
const getEntries = (env) => {
const entries = {
"google-pubsub": "./typescript/src/pubsub/google.ts",
"apple-pubsub": "./typescript/src/pubsub/apple.ts",
"google-subscription-status": "./typescript/src/subscription-status/googleSubStatus.ts",
"apple-subscription-status": "./typescript/src/subscription-status/appleSubStatus.ts",
"apple-fetch-offer-details": "./typescript/src/promotional-offers/appleFetchOfferDetails.ts",
"google-link-user-subscription": "./typescript/src/link/google.ts",
"apple-link-user-subscription": "./typescript/src/link/apple.ts",
"delete-user-subscription": "./typescript/src/link/deleteLink.ts",
"user-subscriptions": "./typescript/src/user/user.ts",
"google-update-subscriptions": "./typescript/src/update-subs/google.ts",
"apple-update-subscriptions": "./typescript/src/update-subs/apple.ts",
"soft-opt-in-acquisitions": "./typescript/src/soft-opt-ins/acquisitions.ts",
"soft-opt-in-acquisitions-dlq-processor": "./typescript/src/soft-opt-ins/dlq-processor.ts",
"export-subscription-tables": "./typescript/src/export/exportSubscriptions.ts",
"export-subscription-table-v2": "./typescript/src/export/exportSubscriptions-v2.ts",
"export-subscription-events-table": "./typescript/src/export/exportEvents.ts",
"export-historical-data": "./typescript/src/export/exportHistoricalData.ts",
"apple-revalidate-receipts": "./typescript/src/revalidate-receipts/appleRevalidateReceipts.ts",
"feast-apple-pubsub": "./typescript/src/feast/pubsub/apple.ts",
"feast-apple-update-subscriptions": "./typescript/src/feast/update-subs/apple.ts",
"feast-google-pubsub": "./typescript/src/feast/pubsub/google.ts",
"feast-google-update-subscriptions": "./typescript/src/feast/update-subs/google.ts",
"feast-acquisition-events-router": "./typescript/src/feast/acquisition-events/router.ts",
"feast-apple-acquisition-events": "./typescript/src/feast/acquisition-events/apple.ts",
"feast-google-acquisition-events": "./typescript/src/feast/acquisition-events/google.ts"
};
return env.production ? entries : {
...entries,
"test-launcher": "./typescript/src/test-launcher/test-launcher.ts",
};
};
module.exports = (env) => ({
devtool: 'inline-cheap-source-map',
module: {
rules: [
{
test: /\.tsx?$/,
use: 'ts-loader',
exclude: /node_modules/
}
]
},
resolve: {
extensions: [ '.tsx', '.ts', '.js' ]
},
target: 'node',
mode: env.production ? 'production' : 'development',
entry: getEntries(env),
output: {
path: path.resolve(__dirname, 'tsc-target'),
libraryTarget: 'commonjs2'
}
});