Files
team/webapp/package.json
zeekayandHanzo Dev 65d285cc8e Ask npm for the icon package by the name npm has
compass-icons is published by Mattermost and consumed from the registry; this
tree contains no source for it and webapp/platform has no such workspace. Under
our scope npm has nothing to fetch:

  404 Not Found - GET https://registry.npmjs.org/@hanzoteam/compass-icons/-/compass-icons-0.1.61.tgz

The lockfile is the proof of what it is. Its integrity for the renamed entry is
sha512-Xq7QHyxq7NPljgqlzwRp6tWGe5s…, byte for byte the integrity npm publishes
for @mattermost/[email protected] — one tarball, filed under a name nobody
serves. The install then succeeds on any machine whose npm cache already holds
that tarball, because a cache hit by integrity never asks the registry, and
fails on every clean one. That is the whole distance between a developer's box
and a build node: `npm ci --cache <fresh dir>` fails on master and passes here.

Same rule the scope change already applied to calls-common and desktop-api:
a package we merely consume keeps the name its publisher gave it.

Co-authored-by: Hanzo Dev <[email protected]>
2026-09-08 13:22:37 -07:00

110 lines
3.4 KiB
JSON

{
"name": "@hanzoteam/webapp",
"private": true,
"engines": {
"node": "^24",
"npm": "^11"
},
"scripts": {
"postinstall": "patch-package && npm run build --workspace platform/types --workspace platform/client --workspace platform/shared --workspace platform/components",
"build": "node scripts/build.mjs",
"run": "node scripts/run.mjs",
"dev-server": "node scripts/dev-server.mjs",
"test": "npm run test --workspaces --if-present",
"test:updatesnapshot": "npm run test:updatesnapshot --workspaces --if-present",
"test-ci": "npm run test-ci --workspaces --if-present",
"check": "npm run check --workspaces --if-present",
"fix": "npm run fix --workspaces --if-present",
"check-types": "npm run check-types --workspaces --if-present",
"i18n-extract": "npm run i18n-extract --workspaces --if-present",
"i18n-extract:check": "npm run i18n-extract:check --workspaces --if-present",
"clean": "npm run clean --workspaces --if-present && rm -rf node_modules .parcel-cache",
"gen-lang-imports": "node scripts/gen_lang_imports.mjs",
"check-external-links": "node scripts/check-external-links.mjs"
},
"dependencies": {
"@mattermost/compass-icons": "0.1.61",
"react-intl": "7.1.14",
"typescript": "5.6.3"
},
"devDependencies": {
"@babel/core": "7.28.5",
"@babel/preset-env": "7.29.2",
"@babel/preset-react": "7.28.5",
"@babel/preset-typescript": "7.28.5",
"@formatjs/cli": "6.7.4",
"@types/node": "24.10.4",
"babel-loader": "9.1.2",
"babel-plugin-formatjs": "10.5.1",
"blessed": "0.1.81",
"chalk": "5.3.0",
"concurrently": "9.0.1",
"cross-env": "7.0.3",
"css-loader": "6.7.3",
"eslint": "9.39.4",
"mini-css-extract-plugin": "2.7.5",
"patch-package": "8.0.1",
"sass": "1.80.5",
"sass-loader": "16.0.2",
"strip-ansi": "7.1.0",
"style-loader": "4.0.0",
"webpack": "5.106.2",
"webpack-cli": "6.0.1",
"webpack-dev-server": "5.2.2"
},
"overrides": {
"@deanwhillier/jest-matchmedia-mock": {
"jest": "30.1.3"
},
"@giphy/react-components": {
"styled-components": "5.3.7"
},
"@types/redux-mock-store": {
"redux": "5.0.1"
},
"braces": "3.0.3",
"cheerio": "1.0.0-rc.12",
"@testing-library/dom": {
"dom-accessibility-api": "0.6.3"
},
"@testing-library/jest-dom": {
"dom-accessibility-api": "0.6.3"
},
"@types/estree": "0.0.51",
"asn1.js": "5.4.1",
"react-beautiful-dnd": {
"react-redux": "9.2.0"
},
"redux-persist": {
"redux": "5.0.1"
},
"ajv@>=7.0.0-alpha.0 <8.18.0": "8.20.0",
"bn.js@>=5.0.0 <5.2.3": "5.2.3",
"bn.js@<4.12.3": "4.12.3",
"brace-expansion@<1.1.13": "1.1.14",
"brace-expansion@>=2.0.0 <2.0.3": "2.1.0",
"fast-xml-parser@>=4.0.0-beta.0 <4.5.4": "4.5.5",
"flatted": "3.4.2",
"follow-redirects": "1.16.0",
"immutable": "4.3.8",
"js-yaml": "4.1.1",
"node-forge": "1.4.0",
"path-to-regexp@<0.1.13": "0.1.13",
"picomatch@<2.3.2": "2.3.2",
"picomatch@>=4.0.0 <4.0.4": "4.0.4",
"postcss": "8.5.13",
"rollup@<2.80.0": "2.80.0",
"yaml@<1.10.3": "1.10.3",
"yaml@>=2.0.0 <2.8.3": "2.8.4"
},
"workspaces": [
"channels",
"platform/client",
"platform/components",
"platform/eslint-plugin",
"platform/@hanzoteam/redux",
"platform/shared",
"platform/types"
]
}