feat: add Citations and WatchlistChat components, integrate with API

- Implemented Citations component to display citation data.
- Created WatchlistDrawer and ChatSidebar components for managing watchlists and AI chat functionality.
- Integrated API calls for watchlist management and chat interactions.
- Updated index.tsx to include new components in the main application layout.
- Added API client in lib/api.ts for structured API interactions.
- Developed Alerts, Dashboard, Portfolio, Routines, Screener, and Report pages with relevant data fetching and UI components.
- Introduced styles in tokens.css for consistent theming across the application.
- Configured TypeScript and Vite for project setup and development.
This commit is contained in:
asepharyana
2026-09-15 12:36:48 +07:00
parent 0db2cf28b3
commit 8c184ccae1
111 changed files with 12349 additions and 62 deletions
+15
View File
@@ -0,0 +1,15 @@
#!/bin/sh
# Run any command with Bitwarden Secrets Manager values injected as env.
# Usage: BWS_PROJECT_ID=<id> sh scripts/bws-run.sh go run ./cmd/server
# Requires: bws CLI + BWS_ACCESS_TOKEN exported (or `bws config` profile).
# Secret names in the project must equal env names (SECTORS_API_KEY, ...).
# Without BWS_PROJECT_ID this just execs the command (plain .env fallback).
set -e
if [ -z "$BWS_PROJECT_ID" ]; then
exec "$@"
fi
if ! command -v bws >/dev/null 2>&1; then
echo "bws-run: bws CLI not found; running without injected secrets" >&2
exec "$@"
fi
exec bws run --project-id "$BWS_PROJECT_ID" -- "$@"
+10
View File
@@ -0,0 +1,10 @@
#!/bin/sh
# FlowSight offline demo: briefing -> radar alert -> report -> interrogation.
set -e
BASE="${BASE:-http://localhost:8080}"
echo "== health =="; curl -s "$BASE/api/health" | head -c 300; echo
echo "== briefing =="; curl -s "$BASE/api/briefing/today" | head -c 300; echo
echo "== radar =="; curl -s -X POST "$BASE/api/screen" -d '{"limit":3}' | head -c 300; echo
echo "== report =="; curl -s -X POST "$BASE/api/report/BBCA?profile=moderate" | head -c 300; echo
echo "== interrogation =="; curl -s -X POST "$BASE/api/report/BBCA/ask" -d '{"question":"kenapa conviction segitu?"}' | head -c 300; echo
echo DEMO_OK