Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
159 lines (159 loc) · 8.57 KB
/
Copy pathpackage.json
File metadata and controls
159 lines (159 loc) · 8.57 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
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
{
"name": "pkic-org-events-backend",
"version": "0.1.0",
"private": true,
"type": "module",
"packageManager": "pnpm@12.5.1+sha512.e3f305bc784a2bc89f5ad3b6138889470fae8d2af5f36b61216ec91c2c3d64089775f9de38aac331044ea40f245cb0d5666392dfdf65824e1907ef6a2c62de5f",
"engines": {
"node": "^22.12.0 || ^24 || >=26"
},
"scripts": {
"skills:install": "pnpm dlx skills@1.7.1 experimental_install",
"preinstall": "node scripts/publication/log-build-cache.mjs",
"maintenance:preview": "node --experimental-strip-types scripts/preview-maintenance.mjs",
"dev": "node scripts/dev-rehearsal.mjs fresh",
"gallery": "node scripts/gallery/server.mjs",
"gallery:shot": "node scripts/gallery/shot.mjs",
"dev:rehearsal": "node scripts/dev-rehearsal.mjs",
"dev:test": "node scripts/dev-rehearsal.mjs fresh",
"dev:intercepted": "sh scripts/e2e-start.sh",
"build": "bash scripts/build.sh",
"build:preview": "CLOUDFLARE_ENV=preview bash scripts/build.sh",
"build:production": "CLOUDFLARE_ENV=production bash scripts/build.sh",
"deploy:production": "pnpm run build:production && wrangler deploy",
"deploy:preview": "pnpm run build:preview && wrangler preview",
"typecheck": "pnpm run typecheck:backend && pnpm run typecheck:frontend && pnpm run typecheck:tools && pnpm run check:astro",
"typecheck:backend": "tsc --noEmit -p tsconfig.json",
"typecheck:frontend": "tsc --noEmit -p tsconfig.frontend.json",
"typecheck:tools": "tsc --noEmit -p tsconfig.tools.json",
"test": "pnpm run test:unit && pnpm run test:frontend && pnpm run test:tools && pnpm run test:worker",
"test:changed": "node scripts/test-changed.mjs",
"test:unit": "NODE_COMPILE_CACHE=node_modules/.cache/node-compile vitest run --config vitest.config.unit.ts --configLoader runner",
"test:worker": "NODE_COMPILE_CACHE=node_modules/.cache/node-compile vitest run --config vitest.config.ts --configLoader runner",
"benchmark:scanner": "PKIC_SCANNER_BENCHMARK=1 vitest run --config vitest.config.ts --configLoader runner --project scanner-load",
"test:frontend": "NODE_COMPILE_CACHE=node_modules/.cache/node-compile vitest run --config vitest.config.frontend.ts --configLoader runner",
"test:tools": "NODE_COMPILE_CACHE=node_modules/.cache/node-compile vitest run --config vitest.config.tools.ts --configLoader runner",
"test:migration:site": "PKIC_VALIDATE_SITE_MIGRATION=1 pnpm run test:worker tests/public-site-catalog.migration.ts",
"test:e2e": "playwright test",
"test:e2e:ci": "playwright test --config playwright.ci.config.ts",
"test:e2e:publication": "playwright test --config playwright.publication.config.ts",
"check:max-lines": "node scripts/check-max-lines.mjs",
"check:filenames": "node scripts/check-filename-collisions.mjs",
"check:bundles": "node scripts/build-frontend.mjs",
"check:css-budget": "node scripts/check-css-budget.mjs",
"refresh:email-domains": "node scripts/refresh-email-domain-lists.mjs",
"build:tokens": "node --experimental-strip-types scripts/build-design-tokens.mjs",
"check:tokens": "node --experimental-strip-types scripts/build-design-tokens.mjs --check",
"check:design-isolation": "node scripts/check-design-isolation.mjs",
"check:css-layers": "node scripts/check-css-layers.mjs",
"check:field-structure": "node scripts/check-field-structure.mjs",
"check:form-contracts": "node scripts/check-form-contracts.mjs",
"check:copy-terms": "node scripts/check-copy-terms.mjs",
"check:e2e-selectors": "node scripts/check-e2e-selectors.mjs",
"check:e2e-signin-budget": "node scripts/check-e2e-signin-budget.mjs",
"check:flow-coverage": "node scripts/check-flow-coverage.mjs",
"generate:public": "node --experimental-strip-types scripts/prepare-public.mjs",
"lint": "oxlint --deny-warnings",
"lint:css": "stylelint \"assets/**/*.{css,scss}\" \"scripts/**/*.css\"",
"lint:sql": "node scripts/check-sql-projections.mjs",
"lint:architecture": "depcruise functions assets/shared assets/design assets/ts assets/js scripts static/scripts --config .dependency-cruiser.cjs",
"lint:api-contracts": "node scripts/check-frontend-api-contracts.mjs",
"lint:duplication": "node scripts/check-duplication.mjs",
"lint:fix": "oxlint --deny-warnings --fix",
"format": "oxfmt \"functions/**/*.ts\" \"assets/ts/**/*.{ts,tsx}\" \"assets/shared/**/*.ts\" \"assets/design/**/*.ts\" \"tests/**/*.{ts,tsx}\"",
"format:check": "oxfmt --check \"functions/**/*.ts\" \"assets/ts/**/*.{ts,tsx}\" \"assets/shared/**/*.ts\" \"assets/design/**/*.ts\" \"tests/**/*.{ts,tsx}\"",
"check:static": "pnpm run typecheck && pnpm run lint && pnpm run lint:css && pnpm run lint:sql && pnpm run lint:architecture && pnpm run lint:api-contracts && pnpm run lint:duplication && pnpm run format:check && pnpm run check:max-lines && pnpm run check:filenames && pnpm run check:tokens && pnpm run check:design-isolation && pnpm run check:css-layers && pnpm run check:field-structure && pnpm run check:url-state && pnpm run check:form-contracts && pnpm run check:copy-terms && pnpm run check:e2e-selectors && pnpm run check:e2e-signin-budget && pnpm run check:flow-coverage && pnpm run check:bundles",
"check": "pnpm run check:static && pnpm run generate:public && pnpm run check:css-budget && pnpm run test",
"migrate": "node scripts/apply-d1-migrations.mjs",
"backup": "node scripts/backup-d1.mjs",
"seed": "node scripts/seed.mjs",
"build:astro": "node --experimental-strip-types scripts/prepare-public.mjs && astro build --config astro.config.mjs",
"check:astro": "astro check --tsconfig tsconfig.astro.json",
"test:e2e:astro": "PKIC_PUBLICATION_SNAPSHOT=tests/fixtures/site-publication.json pnpm run build:astro && playwright test --config playwright.astro.config.ts",
"test:e2e:contrast": "PKIC_PUBLICATION_SNAPSHOT=tests/fixtures/site-publication.json pnpm run build:astro && playwright test --config playwright.contrast.config.ts",
"publish:local": "node --experimental-strip-types scripts/publication/build-local-publication.mjs",
"publish:owned-build": "node scripts/publication/run-owned-build.mjs",
"check:url-state": "node scripts/check-url-state-contracts.mjs"
},
"dependencies": {
"@astrojs/markdown-remark": "^7.3.1",
"@block65/webcrypto-web-push": "2.0.0",
"@cloudflare/codemode": "^0.3.8",
"@cloudflare/workers-oauth-provider": "^0.7.0",
"@modelcontextprotocol/sdk": "1.31.0",
"@pdf-lib/fontkit": "^1.1.1",
"@preact/signals": "^2.9.1",
"@resvg/resvg-wasm": "^2.6.2",
"@simplewebauthn/browser": "^13.3.0",
"@simplewebauthn/server": "^13.3.2",
"@stablelib/sha256": "2.0.1",
"@tiptap/core": "3.31.3",
"@tiptap/extension-image": "3.31.3",
"@tiptap/extension-table": "3.31.3",
"@tiptap/markdown": "3.31.3",
"@tiptap/pm": "3.31.3",
"@tiptap/starter-kit": "3.31.3",
"agents": "^0.13.3",
"astro": "7.3.5",
"chanfana": "^3.3.0",
"client-zip": "^2.5.0",
"fast-xml-parser": "^5.11.1",
"handlebars": "^4.7.9",
"hast-util-to-text": "^4.0.2",
"hono": "^4.13.7",
"ical.js": "^2.2.1",
"marked": "^17.0.6",
"mdast-util-to-hast": "^13.2.1",
"pdf-lib": "^1.17.1",
"postal-mime": "^2.7.4",
"preact": "^10.29.2",
"qr-scanner": "^1.4.2",
"qrcode": "^1.5.4",
"remark-gemoji": "^8.0.0",
"unist-util-visit": "^5.1.0",
"wouter": "^3.10.0",
"yaml": "^2.9.0",
"zod": "^4.4.3"
},
"devDependencies": {
"@astrojs/check": "^0.9.10",
"@astrojs/markdown-satteri": "0.4.2",
"@astrojs/preact": "6.0.5",
"@astrojs/rss": "^4.0.19",
"@astrojs/sitemap": "^3.7.4",
"@cloudflare/vite-plugin": "^1.42.1",
"@cloudflare/vitest-plugin": "1.4.3",
"@cloudflare/workers-types": "^5.20260918.1",
"@mermaid-js/mermaid-cli": "11.17.0",
"@playwright/test": "^1.60.0",
"@sparticuz/chromium": "153.0.0",
"@types/hast": "^3.0.5",
"@types/jsdom": "^30.0.0",
"@types/node": "^24.12.4",
"@types/qrcode": "^1.5.6",
"axe-core": "^4.13.0",
"dependency-cruiser": "18.2.0",
"gemoji": "8.1.0",
"jscpd": "^5.0.16",
"jsdom": "^27.4.0",
"jsqr": "1.4.0",
"oxfmt": "0.73.0",
"oxlint": "1.88.0",
"oxlint-tsgolint": "7.0.2004",
"pagefind": "^1.5.2",
"preact-render-to-string": "^6.7.0",
"puppeteer": "25.12.0",
"sass": "1.104.0",
"satori": "^0.33.5",
"satteri": "0.10.5",
"sharp": "^0.35.5",
"stylelint": "^17.16.0",
"stylelint-config-recommended": "^18.0.0",
"stylelint-config-recommended-scss": "^17.0.1",
"svgo": "4.1.0",
"typescript": "^5.9.3",
"vite": "^8.0.16",
"vitest": "^5.0.4",
"wrangler": "^4.135.0"
}
}