Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
143 lines (143 loc) · 5.45 KB
/
Copy pathpackage.json
File metadata and controls
143 lines (143 loc) · 5.45 KB
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
{
"name": "api",
"version": "1.0.0",
"type": "module",
"description": "Core APIs modular monolith for church management system",
"main": "dist/index.js",
"scripts": {
"preinstall": "node -e \"if(!(process.env.npm_config_user_agent||'').startsWith('yarn')){console.error('\\n[Api] This project uses Yarn (Berry). Run \\'yarn install\\' instead of npm/pnpm.\\n');process.exit(1)}\"",
"initdb": "tsx tools/initdb.ts",
"populateDemo": "tsx tools/initdb.ts --demo-only",
"reset-demo": "tsx tools/reset-demo.ts",
"reset-commons": "tsx tools/reset-commons.ts",
"commons-up": "tsx tools/commons-up.ts",
"dev": "tsx watch src/index.ts",
"clean": "rimraf dist",
"lint": "eslint --fix src/",
"lint:check": "eslint .",
"tsc": "tsc",
"copy-assets": "copyfiles -u 1 \"src/**/*.html\" \"src/**/*.css\" dist/",
"build-ignore-errors": "yarn clean && (yarn exec tsc || true) && yarn copy-assets",
"build": "yarn clean && yarn exec tsc --noEmitOnError false && yarn copy-assets && yarn build:migrations && yarn build:playground",
"build:migrations": "tsc -p tsconfig.migrations.json && copyfiles -u 0 tools/migrations/fingerprints.json dist/_migrations/",
"migrate:fingerprints": "tsx tools/migration-fingerprints.ts",
"build:playground": "cd src/playground && yarn exec tsc && copyfiles index.html dist/",
"build:prod": "yarn clean && yarn exec tsc -p tsconfig.prod.json && yarn copy-assets && yarn build:migrations",
"build-layer": "rm -rf layer && mkdir -p layer/nodejs && node tools/build-layer-package.mjs && cp yarn.lock layer/nodejs/yarn.lock && cd layer/nodejs && yarn install",
"rebuild-layer": "yarn clean-layer && yarn build-layer",
"clean-layer": "rm -rf layer",
"serverless-local": "serverless offline --stage dev --httpPort 8084",
"deploy-demo": "yarn build:prod && serverless deploy --stage demo --alias current",
"deploy-staging": "yarn build:prod && serverless deploy --stage staging --alias current",
"deploy-prod": "yarn build:prod && serverless deploy --stage prod --alias current",
"test": "jest --coverage",
"test:watch": "jest --watch",
"migrate-env": "node tools/migrate-env.js",
"migrate": "tsx tools/migrate.ts",
"migrate:up": "tsx tools/migrate.ts --action=up --module=all",
"migrate:down": "tsx tools/migrate.ts --action=down --module=all",
"migrate:status": "tsx tools/migrate.ts --action=status --module=all",
"migrate:create": "tsx tools/migrate-create.ts",
"scheduled-tasks": "tsx tools/run-scheduled-tasks.ts",
"timer:30min": "tsx tools/run-timer-30min.ts",
"timer:midnight": "tsx tools/run-timer-midnight.ts",
"mcp:lessons-routes": "tsx tools/generate-lessons-routes.ts"
},
"keywords": [
"church",
"api",
"aws",
"lambda"
],
"author": "",
"license": "MIT",
"dependencies": {
"@aws-sdk/client-apigatewaymanagementapi": "^3.862.0",
"@aws-sdk/client-cloudwatch": "^3.862.0",
"@aws-sdk/client-cloudwatch-logs": "^3.862.0",
"@aws-sdk/client-polly": "^3.862.0",
"@aws-sdk/client-s3": "^3.862.0",
"@aws-sdk/client-ses": "^3.862.0",
"@aws-sdk/client-ssm": "^3.862.0",
"@aws-sdk/lib-storage": "^3.862.0",
"@aws-sdk/s3-request-presigner": "3.1057.0",
"@churchapps/apihelper": "^1.1.4",
"@churchapps/content-providers": "^0.15.2",
"@churchapps/helpers": "^2.13.0",
"@churchapps/texting": "^0.6.0",
"@codegenie/serverless-express": "^4.15.0",
"@hubspot/api-client": "^13.1.0",
"@modelcontextprotocol/sdk": "^1.32.1",
"@paypal/checkout-server-sdk": "^1.0.3",
"axios": "^1.20.0",
"bcryptjs": "^2.4.3",
"body-parser": "^1.20.3",
"cors": "^2.8.5",
"dayjs": "^1.11.18",
"expo-server-sdk": "^3.15.0",
"express": "^4.21.2",
"express-fileupload": "^1.5.1",
"express-validator": "^7.2.1",
"fast-xml-parser": "^5.7.3",
"ics": "^3.8.1",
"inversify": "^6.2.2",
"inversify-binding-decorators": "^4.0.0",
"inversify-express-utils": "^6.5.0",
"jsonwebtoken": "^9.0.2",
"kysely": "^0.28.15",
"mysql2": "^3.14.3",
"node-geocoder": "^4.4.1",
"oauth-1.0a": "^2.2.6",
"openai": "^4.72.0",
"pexels": "^1.4.0",
"reflect-metadata": "^0.2.2",
"rrule": "^2.8.1",
"stripe": "^17.4.0",
"uuid": "^11.0.3",
"web-push": "^3.6.7",
"ws": "^8.18.0",
"youtube-captions-scraper": "^2.0.3"
},
"devDependencies": {
"@types/aws-lambda": "^8.10.145",
"@types/bcryptjs": "^2.4.6",
"@types/body-parser": "^1.19.5",
"@types/cors": "^2.8.17",
"@types/express": "^4.17.21",
"@types/express-fileupload": "^1.5.1",
"@types/jest": "^29.5.14",
"@types/jsonwebtoken": "^9.0.7",
"@types/node": "^24",
"@types/web-push": "^3.6.4",
"@types/ws": "^8.5.13",
"@typescript-eslint/eslint-plugin": "^8.39.1",
"@typescript-eslint/parser": "^8.39.1",
"copyfiles": "^2.4.1",
"eslint": "^9.33.0",
"eslint-import-resolver-typescript": "^4.4.4",
"eslint-plugin-import": "^2.32.0",
"eslint-plugin-unused-imports": "^4.2.0",
"jest": "^29.7.0",
"prettier": "^3.5.2",
"rimraf": "^6.0.1",
"serverless": "^3.39.0",
"serverless-offline": "^13.9.0",
"ts-jest": "^29.2.5",
"tsx": "^4.21.0",
"typescript": "^5.7.2"
},
"engines": {
"node": ">=24.0.0"
},
"packageManager": "yarn@4.15.0",
"dependenciesMeta": {
"esbuild": {
"built": true
}
},
"resolutions": {
"zod": "3.25.76",
"axios": "1.20.0",
"@types/express": "4.17.25"
}
}