mattermost-mobile/tsconfig.json
Christopher Speller 0c675ec2db
Agents posts on mobile (#9317)
* Agents streaming

* Fix bug and lint

* Add reasoning summaries to mobile agents

* Add tool call approval UI for mobile agents

* Add citations and annotations support for mobile agents

Implements Phase 4 from the agents mobile plan:
- WebSocket event handling for annotations control signal
- CitationsList component displaying sources below agent responses
- Collapsible sources section with source count
- Each citation shows title, domain, and opens URL on tap
- Citations persisted in post.props.annotations
- Touch-optimized UI with 44pt minimum tap targets

* Add stop and regenerate controls for mobile agents

* Add tests

* Fix tool approval buttons not updating after accept/reject

- Remove optimistic WebSocket event approach that didn't work
- Clear component streaming state on ENDED event to force switch to persisted data
- Remove delays in streaming store cleanup (500ms and 100ms)
- POST_EDITED event now properly updates UI for both accept and reject
- Remove debug console.log statements
- Fix ESLint issues (unused vars, nested callbacks, nested ternary)

* Refactor agents code: remove unused client mixin, fix bugs, and simplify logic

* Fixes

* Add CLAUDE.md

* Review feedback.

* Review feedback inline functions

* Learnings

* Address review feedback: StyleSheet.create, parent mount checks, utils

* Move to observables

* Last style fix

* Style tweaks
2025-12-09 03:56:12 -08:00

79 lines
2.7 KiB
JSON

{
"compilerOptions": {
"experimentalDecorators": true,
"target": "esnext",
"lib": [
"es6", "ES2019"
],
"allowJs": false,
"skipLibCheck": true,
"allowSyntheticDefaultImports": true,
"allowUnreachableCode": false,
"allowUnusedLabels": false,
"esModuleInterop": true,
"jsx": "react-native",
"types": ["react-native", "node", "jest"],
"moduleResolution": "node",
"noEmit": false,
"strict": true,
"importHelpers": true,
"verbatimModuleSyntax": true,
"forceConsistentCasingInFileNames": true,
"declaration": true,
"sourceMap": false,
"rootDir": "./",
"outDir": "./",
"noImplicitAny": true,
"strictNullChecks": true,
"strictFunctionTypes": false,
"strictPropertyInitialization": true,
"noImplicitThis": false,
"alwaysStrict": true,
"noUnusedLocals": false,
"downlevelIteration": true,
"noUnusedParameters": false,
"noImplicitReturns": true,
"noImplicitUseStrict": false,
"noFallthroughCasesInSwitch": true,
"resolveJsonModule": true,
"baseUrl": ".",
"paths": {
"@actions/*": ["app/actions/*"],
"@agents/*": ["app/products/agents/*"],
"@assets/*": ["dist/assets/*"],
"@calls/*": ["app/products/calls/*"],
"@client/*": ["app/client/*"],
"@components/*": ["app/components/*"],
"@constants": ["app/constants/index"],
"@constants/*": ["app/constants/*"],
"@context/*": ["app/context/*"],
"@database/*": ["app/database/*"],
"@helpers/*": ["app/helpers/*"],
"@hooks/*": ["app/hooks/*"],
"@i18n": ["app/i18n/index"],
"@init/*": ["app/init/*"],
"@managers/*": ["app/managers/*"],
"@playbooks/*": ["app/products/playbooks/*"],
"@queries/*": ["app/queries/*"],
"@screens/*": ["app/screens/*"],
"@selectors/*": ["app/selectors/*"],
"@share/*": ["share_extension/*"],
"@store": ["app/store/index"],
"@store/*": ["app/store/*"],
"@telemetry/*": ["/app/telemetry/*"],
"@typings/*": ["types/*"],
"@test/*": ["test/*"],
"@utils/*": ["app/utils/*"],
"@websocket": ["app/client/websocket"],
}
},
"include": ["app/**/*", "share_extension/**/*", "test/**/*", "types/**/*"],
"exclude": [
"node_modules",
"build",
"babel.config.js",
"metro.config.js",
"jest.config.js",
"detox/**/*",
],
}