diff --git a/.github/codeql/csharp-config.yml b/.github/codeql/csharp-config.yml index 35b9a0aa..90e9a16a 100644 --- a/.github/codeql/csharp-config.yml +++ b/.github/codeql/csharp-config.yml @@ -1,7 +1,7 @@ name: C# CodeQL Configuration paths: - - src/tools/customer-query/** + - packages/tools/customer-query/** paths-ignore: - '**/obj/**' diff --git a/.github/codeql/java-config.yml b/.github/codeql/java-config.yml index d788e588..faa7f0d6 100644 --- a/.github/codeql/java-config.yml +++ b/.github/codeql/java-config.yml @@ -1,7 +1,7 @@ name: Java CodeQL Configuration paths: - - src/tools/destination-recommendation/** + - packages/tools/destination-recommendation/** paths-ignore: - '**/target/**' diff --git a/.github/codeql/python-config.yml b/.github/codeql/python-config.yml index 868cb733..aea432ea 100644 --- a/.github/codeql/python-config.yml +++ b/.github/codeql/python-config.yml @@ -1,8 +1,8 @@ name: Python CodeQL Configuration paths: - - src/tools/itinerary-planning/** - - src/tools/model-inference/** + - packages/tools/itinerary-planning/** + - packages/tools/model-inference/** paths-ignore: - '**/venv/**' diff --git a/.github/codeql/typescript-config.yml b/.github/codeql/typescript-config.yml index bff4b970..7eb6200e 100644 --- a/.github/codeql/typescript-config.yml +++ b/.github/codeql/typescript-config.yml @@ -1,10 +1,10 @@ name: TypeScript CodeQL Configuration paths: - - src/tools/code-evaluation/** - - src/tools/web-search/** - - src/api/** - - src/ui/** + - packages/tools/code-evaluation/** + - packages/tools/web-search/** + - packages/api/** + - packages/ui/** paths-ignore: - '**/node_modules/**' diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 76dedf13..c0a0fa8e 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -3,9 +3,9 @@ ## Big Picture Architecture - The platform is a modular AI travel agent system, composed of multiple microservices ("tools") for itinerary planning, destination recommendations, customer queries, and more. -- The main API gateway is in `src/api/`, orchestrating requests to backend services. -- Each tool is isolated in its own directory under `src/tools/` and communicates via HTTP APIs or message passing. -- The frontend UI is in `src/ui/` (Angular + Tailwind CSS), talking to the API gateway. +- The main API gateway is in `packages/api/`, orchestrating requests to backend services. +- Each tool is isolated in its own directory under `packages/tools/` and communicates via HTTP APIs or message passing. +- The frontend UI is in `packages/ui/` (Angular + Tailwind CSS), talking to the API gateway. - Infrastructure is managed with Bicep templates in `infra/` and setup scripts in `infra/hooks/`. ## Developer Workflows @@ -13,9 +13,9 @@ - **Build & Run All Services:** Run `./run.sh` from the repo root to build and start all services locally via Docker Compose. - **Service-Specific Development:** - Each tool under `src/tools/` can be built and run independently using its language's standard commands (e.g., `npm`, `mvnw`, `python`). + Each tool under `packages/tools/` can be built and run independently using its language's standard commands (e.g., `npm`, `mvnw`, `python`). - **UI Development:** - Run `npm start` in `src/ui/` for local frontend development. + Run `npm start` in `packages/ui/` for local frontend development. - **Infrastructure Deployment:** Use Bicep files in `infra/` and scripts in `infra/hooks/` for Azure deployments. @@ -35,22 +35,22 @@ - **Azure Services:** Provisioned via Bicep templates; see `infra/main.bicep`. - **LLMs:** - Model integration details are in `llms.txt` and `src/api/src/orchestrator/llamaindex/`. + Model integration details are in `llms.txt` and `packages/api/src/orchestrator/llamaindex/`. ## Patterns & Examples - **Adding a New Tool:** - Scaffold under `src/tools/`, provide a `Dockerfile`, and register with the API gateway. + Scaffold under `packages/tools/`, provide a `Dockerfile`, and register with the API gateway. - **Extending the UI:** - Add Angular components in `src/ui/src/app/`, update routing as needed. + Add Angular components in `packages/ui/src/app/`, update routing as needed. - **Service Communication:** - Use HTTP clients (see `src/api/src/mcp/mcp-http-client.ts`) for inter-service calls. + Use HTTP clients (see `packages/api/src/mcp/mcp-http-client.ts`) for inter-service calls. ## Key Files & Directories -- `src/api/` - API gateway and orchestrator logic -- `src/tools/` - Microservices (each in its own subdirectory) -- `src/ui/` - Angular frontend +- `packages/api/` - API gateway and orchestrator logic +- `packages/tools/` - Microservices (each in its own subdirectory) +- `packages/ui/` - Angular frontend - `infra/` - Infrastructure as code (Bicep, setup scripts) - `docs/` - Architecture and API documentation diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index fe0ac5d9..e68055fe 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -13,7 +13,7 @@ jobs: runs-on: ubuntu-latest defaults: run: - working-directory: ./src/api + working-directory: ./packages/api steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 @@ -27,7 +27,7 @@ jobs: runs-on: ubuntu-latest defaults: run: - working-directory: ./src/ui + working-directory: ./packages/ui steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 @@ -41,7 +41,7 @@ jobs: runs-on: ubuntu-latest defaults: run: - working-directory: ./src/tools/customer-query + working-directory: ./packages/tools/customer-query steps: - uses: actions/checkout@v4 - uses: actions/setup-dotnet@v4 @@ -55,7 +55,7 @@ jobs: runs-on: ubuntu-latest defaults: run: - working-directory: ./src/tools/destination-recommendation + working-directory: ./packages/tools/destination-recommendation steps: - uses: actions/checkout@v4 - name: Set up JDK 24 @@ -70,7 +70,7 @@ jobs: runs-on: ubuntu-latest defaults: run: - working-directory: ./src/tools/echo-ping + working-directory: ./packages/tools/echo-ping steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 @@ -84,7 +84,7 @@ jobs: runs-on: ubuntu-latest defaults: run: - working-directory: ./src/tools/itinerary-planning + working-directory: ./packages/tools/itinerary-planning steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 diff --git a/.github/workflows/codeql-csharp.yml b/.github/workflows/codeql-csharp.yml index 87910376..418551ee 100644 --- a/.github/workflows/codeql-csharp.yml +++ b/.github/workflows/codeql-csharp.yml @@ -4,19 +4,19 @@ on: push: branches: [main] paths: - - 'src/tools/customer-query/**/*.cs' - - 'src/tools/customer-query/**/*.csproj' - - 'src/tools/customer-query/**/*.sln' - - 'src/tools/customer-query/AITravelAgent.*/**' + - 'packages/tools/customer-query/**/*.cs' + - 'packages/tools/customer-query/**/*.csproj' + - 'packages/tools/customer-query/**/*.sln' + - 'packages/tools/customer-query/AITravelAgent.*/**' - '.github/workflows/codeql-csharp.yml' - '.github/codeql/csharp-config.yml' pull_request: branches: [main] paths: - - 'src/tools/customer-query/**/*.cs' - - 'src/tools/customer-query/**/*.csproj' - - 'src/tools/customer-query/**/*.sln' - - 'src/tools/customer-query/AITravelAgent.*/**' + - 'packages/tools/customer-query/**/*.cs' + - 'packages/tools/customer-query/**/*.csproj' + - 'packages/tools/customer-query/**/*.sln' + - 'packages/tools/customer-query/AITravelAgent.*/**' - '.github/workflows/codeql-csharp.yml' - '.github/codeql/csharp-config.yml' workflow_dispatch: # Allow manual triggering @@ -49,9 +49,9 @@ jobs: - name: Restore and Build C# run: | - if [ -d "src/tools/customer-query" ]; then - dotnet restore src/tools/customer-query/AITravelAgent.sln - dotnet build src/tools/customer-query/AITravelAgent.sln --configuration Release --no-restore + if [ -d "packages/tools/customer-query" ]; then + dotnet restore packages/tools/customer-query/AITravelAgent.sln + dotnet build packages/tools/customer-query/AITravelAgent.sln --configuration Release --no-restore fi - name: Perform CodeQL Analysis diff --git a/.github/workflows/codeql-java.yml b/.github/workflows/codeql-java.yml index dd1832a9..ce5368ca 100644 --- a/.github/workflows/codeql-java.yml +++ b/.github/workflows/codeql-java.yml @@ -4,19 +4,19 @@ on: push: branches: [main] paths: - - 'src/tools/destination-recommendation/src/main/java/**/*.java' - - 'src/tools/destination-recommendation/src/test/java/**/*.java' - - 'src/tools/destination-recommendation/pom.xml' - - 'src/tools/destination-recommendation/*.gradle' + - 'packages/tools/destination-recommendation/src/main/java/**/*.java' + - 'packages/tools/destination-recommendation/src/test/java/**/*.java' + - 'packages/tools/destination-recommendation/pom.xml' + - 'packages/tools/destination-recommendation/*.gradle' - '.github/workflows/codeql-java.yml' - '.github/codeql/java-config.yml' pull_request: branches: [main] paths: - - 'src/tools/destination-recommendation/src/main/java/**/*.java' - - 'src/tools/destination-recommendation/src/test/java/**/*.java' - - 'src/tools/destination-recommendation/pom.xml' - - 'src/tools/destination-recommendation/*.gradle' + - 'packages/tools/destination-recommendation/src/main/java/**/*.java' + - 'packages/tools/destination-recommendation/src/test/java/**/*.java' + - 'packages/tools/destination-recommendation/pom.xml' + - 'packages/tools/destination-recommendation/*.gradle' - '.github/workflows/codeql-java.yml' - '.github/codeql/java-config.yml' workflow_dispatch: # Allow manual triggering @@ -57,7 +57,7 @@ jobs: - name: Build Java with Maven run: | - cd src/tools/destination-recommendation + cd packages/tools/destination-recommendation mvn clean compile -B - name: Perform CodeQL Analysis diff --git a/.github/workflows/codeql-python.yml b/.github/workflows/codeql-python.yml index 2016c40c..4bdebdde 100644 --- a/.github/workflows/codeql-python.yml +++ b/.github/workflows/codeql-python.yml @@ -4,15 +4,15 @@ on: push: branches: [main] paths: - - 'src/tools/itinerary-planning/**/*.py' - - 'src/tools/model-inference/**/*.py' + - 'packages/tools/itinerary-planning/**/*.py' + - 'packages/tools/model-inference/**/*.py' - '.github/workflows/codeql-python.yml' - '.github/codeql/python-config.yml' pull_request: branches: [main] paths: - - 'src/tools/itinerary-planning/**/*.py' - - 'src/tools/model-inference/**/*.py' + - 'packages/tools/itinerary-planning/**/*.py' + - 'packages/tools/model-inference/**/*.py' - '.github/workflows/codeql-python.yml' - '.github/codeql/python-config.yml' workflow_dispatch: # Allow manual triggering @@ -39,7 +39,7 @@ jobs: - name: Install Python dependencies run: | - for dir in src/tools/itinerary-planning src/tools/model-inference; do + for dir in packages/tools/itinerary-planning packages/tools/model-inference; do if [ -f "$dir/requirements.txt" ]; then pip install -r $dir/requirements.txt fi diff --git a/.github/workflows/codeql-typescript.yml b/.github/workflows/codeql-typescript.yml index 58aaecaa..f0d242dd 100644 --- a/.github/workflows/codeql-typescript.yml +++ b/.github/workflows/codeql-typescript.yml @@ -4,16 +4,16 @@ on: push: branches: [main] paths: - - 'src/api/*.ts' - - 'src/api/*.js' - - 'src/ui/*.ts' - - 'src/ui/*.js' - - 'src/tools/code-evaluation/**/*.ts' - - 'src/tools/code-evaluation/**/*.js' - - 'src/tools/web-search/**/*.ts' - - 'src/tools/web-search/**/*.js' - - 'src/tools/echo-ping/**/*.ts' - - 'src/tools/echo-ping/**/*.js' + - 'packages/api/*.ts' + - 'packages/api/*.js' + - 'packages/ui/*.ts' + - 'packages/ui/*.js' + - 'packages/tools/code-evaluation/**/*.ts' + - 'packages/tools/code-evaluation/**/*.js' + - 'packages/tools/web-search/**/*.ts' + - 'packages/tools/web-search/**/*.js' + - 'packages/tools/echo-ping/**/*.ts' + - 'packages/tools/echo-ping/**/*.js' - 'src/shared/**/*.ts' - 'src/shared/**/*.js' - '.github/workflows/codeql-typescript.yml' @@ -21,16 +21,16 @@ on: pull_request: branches: [main] paths: - - 'src/api/*.ts' - - 'src/api/*.js' - - 'src/ui/*.ts' - - 'src/ui/*.js' - - 'src/tools/code-evaluation/**/*.ts' - - 'src/tools/code-evaluation/**/*.js' - - 'src/tools/web-search/**/*.ts' - - 'src/tools/web-search/**/*.js' - - 'src/tools/echo-ping/**/*.ts' - - 'src/tools/echo-ping/**/*.js' + - 'packages/api/*.ts' + - 'packages/api/*.js' + - 'packages/ui/*.ts' + - 'packages/ui/*.js' + - 'packages/tools/code-evaluation/**/*.ts' + - 'packages/tools/code-evaluation/**/*.js' + - 'packages/tools/web-search/**/*.ts' + - 'packages/tools/web-search/**/*.js' + - 'packages/tools/echo-ping/**/*.ts' + - 'packages/tools/echo-ping/**/*.js' - 'src/shared/**/*.ts' - 'src/shared/**/*.js' - '.github/workflows/codeql-typescript.yml' @@ -59,7 +59,7 @@ jobs: - name: Install dependencies run: | - for dir in src/tools/code-evaluation src/tools/web-search src/tools/echo-ping src/api src/ui; do + for dir in packages/tools/code-evaluation packages/tools/web-search packages/tools/echo-ping src/api src/ui; do if [ -f "$dir/package.json" ]; then cd $dir && npm install && cd - fi diff --git a/.gitignore b/.gitignore index 0f82d19a..dc1535eb 100644 --- a/.gitignore +++ b/.gitignore @@ -200,6 +200,8 @@ PublishScripts/ *.snupkg # The packages folder can be ignored because of Package Restore **/[Pp]ackages/* +# Ignore npm packages +!packages/* # except build/, which is used as an MSBuild target. !**/[Pp]ackages/build/ # Uncomment if necessary however generally it will be regenerated when needed diff --git a/AGENTS.md b/AGENTS.md index ab0855aa..95c8c36f 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -8,17 +8,16 @@ This file provides comprehensive guidelines for OpenAI Codex and other AI coding The Azure AI Travel Agents is a **modular AI multi-agent system** composed of multiple microservices ("tools") with **two orchestration implementations**: -1. **LlamaIndex.TS Orchestration** (TypeScript/Node.js) - Production default in `src/api/` -2. **Microsoft Agent Framework Orchestration** (Python) - Alternative implementation in `src/api-python/` +1. **LlamaIndex.TS Orchestration** (TypeScript/Node.js) - Production default in `packages/api/` +2. **Microsoft Agent Framework Orchestration** (Python) - Alternative implementation in `packages/api-python/` Both orchestrators communicate with the same MCP tool servers. Each component is containerized and communicates via HTTP APIs or Model Context Protocol (MCP). ``` -azure-ai-travel-agents/ ├── .github/ # GitHub workflows, templates, and copilot instructions ├── docs/ # Architecture and API documentation ├── infra/ # Infrastructure as Code (Bicep templates) -├── src/ # Source code +├── packages/ # Source code │ ├── api/ # Express.js API + LlamaIndex.TS orchestrator (TypeScript) │ ├── api-python/ # FastAPI + Microsoft Agent Framework orchestrator (Python) │ ├── ui/ # Angular frontend application @@ -42,7 +41,7 @@ The system implements specialized agents coordinated by orchestration layers. Bo #### Orchestration Options -**Option 1: LlamaIndex.TS Orchestration** (Default - `src/api/`) +**Option 1: LlamaIndex.TS Orchestration** (Default - `packages/api/`) - **Language**: TypeScript with Node.js 22+ - **Framework**: Express.js + LlamaIndex.TS - **Status**: Production-ready @@ -56,12 +55,12 @@ The system implements specialized agents coordinated by orchestration layers. Bo - **Model Inference Agent**: Runs local LLMs with ONNX/vLLM (via model-inference MCP) - **Echo Agent**: Testing and validation (via echo-ping MCP) -**Option 2: Microsoft Agent Framework Orchestration** (`src/api-python/`) +**Option 2: Microsoft Agent Framework Orchestration** (`packages/api-python/`) - **Language**: Python 3.11+ with asyncio - **Framework**: FastAPI + Microsoft Agent Framework (`agent-framework` SDK) - **Status**: Fully implemented, production-ready alternative - **Orchestration Pattern**: Magentic multi-agent coordination -- **Agents**: Explicitly defined in `src/api-python/src/orchestrator/agents/` +- **Agents**: Explicitly defined in `packages/api-python/src/orchestrator/agents/` - **TriageAgent**: Coordinates and routes requests to specialized agents - **CustomerQueryAgent**: Processes customer inquiries with MCP tools - **DestinationRecommendationAgent**: Provides destination suggestions @@ -86,10 +85,10 @@ Both orchestration implementations communicate with these MCP servers: ### Service Communication - **Orchestration Layer**: - - **Option 1**: `src/api/` (Express.js + LlamaIndex.TS) - TypeScript orchestration - - **Option 2**: `src/api-python/` (FastAPI + Microsoft Agent Framework) - Python orchestration + - **Option 1**: `packages/api/` (Express.js + LlamaIndex.TS) - TypeScript orchestration + - **Option 2**: `packages/api-python/` (FastAPI + Microsoft Agent Framework) - Python orchestration - **MCP Protocol**: All tools implement Model Context Protocol for standardized communication -- **Frontend**: Angular SPA in `src/ui/` with Tailwind CSS and Angular Material (works with either orchestration) +- **Frontend**: Angular SPA in `packages/ui/` with Tailwind CSS and Angular Material (works with either orchestration) - **Infrastructure**: Azure Container Apps deployment via Bicep templates in `infra/` Both orchestration options: @@ -100,7 +99,7 @@ Both orchestration options: ## Choosing an Orchestration Implementation -### When to Use LlamaIndex.TS (`src/api/`) +### When to Use LlamaIndex.TS (`packages/api/`) **Choose this if:** - ✅ Your team has strong TypeScript/Node.js expertise @@ -116,7 +115,7 @@ Both orchestration options: - Proven in production - Active development -### When to Use Microsoft Agent Framework (`src/api-python/`) +### When to Use Microsoft Agent Framework (`packages/api-python/`) **Choose this if:** - ✅ Your team has strong Python expertise @@ -168,7 +167,7 @@ For detailed comparison, see `docs/orchestration.md`. ### TypeScript/Node.js Standards -**Location**: `src/api/`, `src/ui/`, `src/tools/echo-ping/`, `src/tools/web-search/` +**Location**: `packages/api/`, `packages/ui/`, `packages/tools/echo-ping/`, `packages/tools/web-search/` **Key Conventions**: - Use ES modules (`"type": "module"` in package.json) @@ -198,14 +197,14 @@ const MCP_API_HTTP_PATH = '/api/mcp' **File Structure**: ```typescript // MCP Server structure -src/ +packages/ ├── index.ts # Main server entry point ├── types.ts # Type definitions └── tools/ # Tool implementations └── my-tool.ts // API structure -src/ +packages/ ├── index.ts # Express server setup ├── mcp/ # MCP client implementations ├── orchestrator/ # Agent orchestration logic @@ -215,8 +214,8 @@ src/ ### Python Standards **Location**: -- **MCP Servers**: `src/tools/itinerary-planning/`, `src/tools/code-evaluation/`, `src/tools/model-inference/` -- **MAF Orchestration**: `src/api-python/` (Microsoft Agent Framework implementation) +- **MCP Servers**: `packages/tools/itinerary-planning/`, `packages/tools/code-evaluation/`, `packages/tools/model-inference/` +- **MAF Orchestration**: `packages/api-python/` (Microsoft Agent Framework implementation) **Key Conventions**: - Python 3.11+ (3.12+ for MCP servers) with pyproject.toml configuration @@ -241,7 +240,7 @@ target-version = "py313" **Project Structure (MAF Orchestration)**: ```python -# pyproject.toml in src/api-python/ +# pyproject.toml in packages/api-python/ [project] name = "azure-ai-travel-agents-api-python" requires-python = ">=3.11" @@ -277,7 +276,7 @@ DEFAULT_PORT = 3000 ### C#/.NET Standards -**Location**: `src/tools/customer-query/` +**Location**: `packages/tools/customer-query/` **Key Conventions**: - .NET 9.x with C# 13 @@ -305,7 +304,7 @@ public const string DefaultEndpoint = "/api/analyze"; ### Java Standards -**Location**: `src/tools/destination-recommendation/` +**Location**: `packages/tools/destination-recommendation/` **Key Conventions**: - Java 24 with Temurin JDK @@ -337,20 +336,20 @@ public static final String DEFAULT_API_PATH = "/api/recommend"; **Frontend (Angular)**: - **Unit Tests**: Jasmine + Karma for component testing -- **Location**: `src/ui/src/app/**/*.spec.ts` -- **Command**: `npm test` in `src/ui/` +- **Location**: `packages/ui/src/app/**/*.spec.ts` +- **Command**: `npm test` in `packages/ui/` - **Coverage**: Components, services, and pipes **Backend API (Node.js - LlamaIndex.TS)**: - **Build Tests**: TypeScript compilation validation -- **Location**: `src/api/` -- **Command**: `npm run build` in `src/api/` +- **Location**: `packages/api/` +- **Command**: `npm run build` in `packages/api/` - **Integration**: MCP server connectivity testing via health endpoints **Backend API (Python - Microsoft Agent Framework)**: - **Unit Tests**: pytest for agent and workflow testing -- **Location**: `src/api-python/src/tests/` -- **Command**: `pytest` in `src/api-python/` +- **Location**: `packages/api-python/src/tests/` +- **Command**: `pytest` in `packages/api-python/` - **Coverage**: Agents, workflows, MCP integration, providers **MCP Servers**: @@ -363,15 +362,15 @@ public static final String DEFAULT_API_PATH = "/api/recommend"; ```bash # Frontend unit tests -cd src/ui +cd packages/ui npm test # API build validation (LlamaIndex.TS) -cd src/api +cd packages/api npm run build # API tests (Microsoft Agent Framework) -cd src/api-python +cd packages/api-python pip install -e ".[dev]" pytest @@ -432,22 +431,22 @@ chore(deps): update dependencies 1. **Run All Builds**: Ensure all affected services build successfully ```bash # API (LlamaIndex.TS) - cd src/api && npm run build + cd packages/api && npm run build # API (Microsoft Agent Framework) - cd src/api-python && pip install -e . && pytest - - # UI - cd src/ui && npm run build - + cd packages/api-python && pip install -e . && pytest + + # UI + cd packages/ui && npm run build + # MCP Servers (as applicable) - cd src/tools/echo-ping && npm run build - cd src/tools/customer-query && dotnet build - cd src/tools/destination-recommendation && mvn clean install - cd src/tools/itinerary-planning && pip install . - cd src/tools/code-evaluation && pip install . - cd src/tools/model-inference && pip install . - cd src/tools/web-search && npm run build + cd packages/tools/echo-ping && npm run build + cd packages/tools/customer-query && dotnet build + cd packages/tools/destination-recommendation && mvn clean install + cd packages/tools/itinerary-planning && pip install . + cd packages/tools/code-evaluation && pip install . + cd packages/tools/model-inference && pip install . + cd packages/tools/web-search && npm run build ``` 2. **Test Coverage**: Run existing tests and add new tests for new functionality @@ -502,27 +501,27 @@ Brief description of changes and problem solved When creating new agents/tools, follow this pattern: -1. **Create Tool Structure**: `src/tools/my-new-tool/` +1. **Create Tool Structure**: `packages/tools/my-new-tool/` 2. **Implement MCP Server**: Use appropriate language SDK 3. **Add Docker Configuration**: `Dockerfile` and health endpoint 4. **Register in Docker Compose**: Add service definition **For LlamaIndex.TS Orchestration**: -5. **Register in API**: Update `src/api/src/orchestrator/llamaindex/tools/index.ts` -6. **Create Agent Integration**: Add to `setupAgents()` function in `src/api/src/orchestrator/llamaindex/index.ts` -7. **Update Documentation**: Add to tool overview in `src/tools/README.md` +5. **Register in API**: Update `packages/api/src/orchestrator/llamaindex/tools/index.ts` +6. **Create Agent Integration**: Add to `setupAgents()` function in `packages/api/src/orchestrator/llamaindex/index.ts` +7. **Update Documentation**: Add to tool overview in `packages/tools/README.md` **For Microsoft Agent Framework Orchestration**: -5. **Add Tool Metadata**: Update `src/api-python/src/orchestrator/tools/tool_config.py` -6. **Create Agent Class**: Add new agent in `src/api-python/src/orchestrator/agents/specialized_agents.py` -7. **Register Agent**: Export in `src/api-python/src/orchestrator/agents/__init__.py` -8. **Integrate in Workflow**: Add to workflow in `src/api-python/src/orchestrator/magentic_workflow.py` or `workflow.py` -9. **Update Documentation**: Add to `src/api-python/README.md` +5. **Add Tool Metadata**: Update `packages/api-python/src/orchestrator/tools/tool_config.py` +6. **Create Agent Class**: Add new agent in `packages/api-python/src/orchestrator/agents/specialized_agents.py` +7. **Register Agent**: Export in `packages/api-python/src/orchestrator/agents/__init__.py` +8. **Integrate in Workflow**: Add to workflow in `packages/api-python/src/orchestrator/magentic_workflow.py` or `workflow.py` +9. **Update Documentation**: Add to `packages/api-python/README.md` **Common Steps for Both**: - Implement health endpoint at `/health` - Add OpenTelemetry tracing -- Document in `src/tools/README.md` +- Document in `packages/tools/README.md` - Add environment variables to `.env.sample` - Update architecture diagrams in `docs/` diff --git a/azure.yaml b/azure.yaml index 6089ba76..1ed9dc13 100644 --- a/azure.yaml +++ b/azure.yaml @@ -29,7 +29,7 @@ services: run: 'echo NG_API_URL=\"$NG_API_URL\" > .env.production' customer-query: - project: src/tools/customer-query/AITravelAgent.CustomerQueryServer/ + project: packages/tools/customer-query/AITravelAgent.CustomerQueryServer/ host: containerapp language: dotnet docker: @@ -38,7 +38,7 @@ services: remoteBuild: true destination-recommendation: - project: src/tools/destination-recommendation + project: packages/tools/destination-recommendation host: containerapp language: java docker: @@ -47,7 +47,7 @@ services: remoteBuild: true itinerary-planning: - project: src/tools/itinerary-planning + project: packages/tools/itinerary-planning host: containerapp language: python docker: @@ -56,7 +56,7 @@ services: remoteBuild: true echo-ping: - project: src/tools/echo-ping + project: packages/tools/echo-ping language: ts host: containerapp docker: diff --git a/docs/advanced-setup.md b/docs/advanced-setup.md index 486fcd47..3a6e0307 100644 --- a/docs/advanced-setup.md +++ b/docs/advanced-setup.md @@ -10,7 +10,7 @@ This section provides advanced setup instructions for running the application ei ### Using Local LLM Providers -If you want to use local LLM providers like [Docker models](https://docs.docker.com/ai/model-runner/) or [Llama](https://ai.meta.com/llama/), you can set the `LLM_PROVIDER` environment variable in the `./src/api/.env` file to the supported providers. This will configure the application to use the specified local LLM provider. +If you want to use local LLM providers like [Docker models](https://docs.docker.com/ai/model-runner/) or [Llama](https://ai.meta.com/llama/), you can set the `LLM_PROVIDER` environment variable in the `./packages/api/.env` file to the supported providers. This will configure the application to use the specified local LLM provider. The application supports the following local LLM providers: - **Azure Foundry Local**: This provider allows you to run models locally using Azure's AI Foundry Local service. @@ -47,7 +47,7 @@ gh repo clone YOUR-USERNAME/azure-ai-travel-agents
-To use a local LLM provider, you need to set the `LLM_PROVIDER` environment variable in the `./src/api/.env` file, and provide the necessary configuration for the provider you want to use. +To use a local LLM provider, you need to set the `LLM_PROVIDER` environment variable in the `./packages/api/.env` file, and provide the necessary configuration for the provider you want to use. In order to run the application locally, you need to clone the repository and run the preview script. This will set up the necessary environment and start the application. @@ -59,7 +59,7 @@ Before using Azure Foundry Local, ensure you have the [Azure AI Foundry Local](h foundry model list ``` -Then set the following environment variables in your `./src/api/.env` file: +Then set the following environment variables in your `./packages/api/.env` file: ```bash LLM_PROVIDER=foundry-local @@ -99,13 +99,13 @@ AZURE_FOUNDRY_LOCAL_MODEL_ALIAS=phi-4-mini-reasoning Start the API service by running the following command in a terminal: ```bash -npm start --prefix=src/api +npm start --prefix=packages/api ``` Open a new terminal and start the UI service by running the following command: ```bash -npm start --prefix=src/ui +npm start --prefix=packages/ui ``` Once all services are up and running, you can access the **UI** at http://localhost:4200. @@ -122,7 +122,7 @@ Before using Docker Models, ensure you have the [Docker Model Runner](https://do docker model list ``` -Then set the following environment variables in your `./src/api/.env` file: +Then set the following environment variables in your `./packages/api/.env` file: ```bash LLM_PROVIDER=docker-models @@ -140,7 +140,7 @@ Before using Ollama Models, ensure you have the [Ollama](https://ollama.com/) in ollama list ``` -Then set the following environment variables in your `./src/api/.env` file: +Then set the following environment variables in your `./packages/api/.env` file: ```bash LLM_PROVIDER=ollama-models @@ -193,32 +193,32 @@ Alternatively, if you're in VS Code you can use the **Run Task** command (Ctrl+S The application uses environment variables to configure the services. You can set them in a `.env` file in the root directory or directly in your terminal. We recommend the following approach: 1. Create a `.env` file for each containerized service under `src/`, and optionally a `.env.docker` file for Docker-specific configurations: - - `src/ui/.env` - - `src/ui/.env.docker` - - `src/api/.env` - - `src/api/.env.docker` - - `src/tools/customer-query/.env` - - `src/tools/customer-query/.env.docker` - - `src/tools/destination-recommendation/.env` - - `src/tools/destination-recommendation/.env.docker` - - `src/tools/itinerary-planning/.env` - - `src/tools/itinerary-planning/.env.docker` - - `src/tools/code-evaluation/.env` - - `src/tools/code-evaluation/.env.docker` - - `src/tools/model-inference/.env` - - `src/tools/model-inference/.env.docker` - - `src/tools/web-search/.env` - - `src/tools/web-search/.env.docker` - - `src/tools/echo-ping/.env` - - `src/tools/echo-ping/.env.docker` + - `packages/ui/.env` + - `packages/ui/.env.docker` + - `packages/api/.env` + - `packages/api/.env.docker` + - `packages/tools/customer-query/.env` + - `packages/tools/customer-query/.env.docker` + - `packages/tools/destination-recommendation/.env` + - `packages/tools/destination-recommendation/.env.docker` + - `packages/tools/itinerary-planning/.env` + - `packages/tools/itinerary-planning/.env.docker` + - `packages/tools/code-evaluation/.env` + - `packages/tools/code-evaluation/.env.docker` + - `packages/tools/model-inference/.env` + - `packages/tools/model-inference/.env.docker` + - `packages/tools/web-search/.env` + - `packages/tools/web-search/.env.docker` + - `packages/tools/echo-ping/.env` + - `packages/tools/echo-ping/.env.docker` 2. `.env.docker` files are used to set environment variables for Docker containers. These files should contain the same variables as `.env` files, but with values specific to the Docker environment. For example: ```bash -# src/api/.env +# packages/api/.env MCP_CUSTOMER_QUERY_URL=http://localhost:8080 -# src/api/.env.docker +# packages/api/.env.docker MCP_CUSTOMER_QUERY_URL=http://tool-customer-query:8080 ``` diff --git a/docs/deployment-architecture.md b/docs/deployment-architecture.md index f905dc50..fc2ffbf4 100644 --- a/docs/deployment-architecture.md +++ b/docs/deployment-architecture.md @@ -122,11 +122,11 @@ azd provision #### 4. Environment Configuration ```bash # Create local environment files -cp src/api/.env.sample src/api/.env -cp src/ui/.env.sample src/ui/.env +cp packages/api/.env.sample packages/api/.env +cp packages/ui/.env.sample packages/ui/.env # Edit configuration (auto-populated by azd provision) -cat src/api/.env +cat packages/api/.env ``` Example `.env` configuration: @@ -157,13 +157,13 @@ OTEL_SERVICE_NAME=api-local #### 5. Local Service Startup ```bash # Terminal 1: Start API server -cd src/api +cd packages/api npm install npm start # API available at http://localhost:4000 # Terminal 2: Start UI -cd src/ui +cd packages/ui npm install npm start # UI available at http://localhost:4200 @@ -183,11 +183,11 @@ docker run -d \ #### Hot Reload Development ```bash # API with hot reload -cd src/api +cd packages/api npm run start # Uses tsx --watch # UI with hot reload -cd src/ui +cd packages/ui npm run start # Uses ng serve with watch ``` @@ -432,14 +432,14 @@ az acr create \ az acr build \ --registry acrTravelAgents \ --image travel-agents-ui:latest \ - --file src/ui/Dockerfile \ - src/ui + --file packages/ui/Dockerfile \ + packages/ui az acr build \ --registry acrTravelAgents \ --image travel-agents-api:latest \ - --file src/api/Dockerfile \ - src/api + --file packages/api/Dockerfile \ + packages/api # Step 5: Deploy container apps az containerapp create \ @@ -931,15 +931,15 @@ echo "Building and pushing container images..." az acr build \ --registry $ACR_NAME \ --image travel-agents-ui:latest \ - --file src/ui/Dockerfile \ - src/ui + --file packages/ui/Dockerfile \ + packages/ui # API Image az acr build \ --registry $ACR_NAME \ --image travel-agents-api:latest \ - --file src/api/Dockerfile \ - src/api + --file packages/api/Dockerfile \ + packages/api # MCP Server Images for server in echo-ping customer-query destination-recommendation itinerary-planning code-evaluation model-inference web-search; do @@ -947,8 +947,8 @@ for server in echo-ping customer-query destination-recommendation itinerary-plan az acr build \ --registry $ACR_NAME \ --image travel-agents-mcp-${server}:latest \ - --file src/tools/${server}/Dockerfile \ - src/tools/${server} + --file packages/tools/${server}/Dockerfile \ + packages/tools/${server} done # Update container app revisions diff --git a/docs/development-guide.md b/docs/development-guide.md index c4f9530e..8299f45c 100644 --- a/docs/development-guide.md +++ b/docs/development-guide.md @@ -101,18 +101,18 @@ cp .github/hooks/* .git/hooks/ chmod +x .git/hooks/* # Install dependencies -npm install --prefix src/api -npm install --prefix src/ui +npm install --prefix packages/api +npm install --prefix packages/ui # Verify setup -npm run health-check --prefix src/api +npm run health-check --prefix packages/api ``` #### 2. Environment Configuration ```bash # Create environment files -cp src/api/.env.sample src/api/.env -cp src/ui/.env.sample src/ui/.env +cp packages/api/.env.sample packages/api/.env +cp packages/ui/.env.sample packages/ui/.env # Configure Azure services (run azd provision first) azd auth login @@ -144,8 +144,8 @@ azd provision "**/.angular": true }, "eslint.workingDirectories": [ - "src/api", - "src/ui" + "packages/api", + "packages/ui" ], "docker.defaultRegistry": "your-acr.azurecr.io" } @@ -160,24 +160,24 @@ azd provision "name": "Debug API", "type": "node", "request": "launch", - "program": "${workspaceFolder}/src/api/src/index.ts", + "program": "${workspaceFolder}/packages/api/src/index.ts", "env": { "NODE_ENV": "development" }, "runtimeArgs": ["-r", "tsx/cjs"], - "cwd": "${workspaceFolder}/src/api", + "cwd": "${workspaceFolder}/packages/api", "console": "integratedTerminal", "sourceMaps": true, "restart": true, - "envFile": "${workspaceFolder}/src/api/.env" + "envFile": "${workspaceFolder}/packages/api/.env" }, { "name": "Debug UI", "type": "node", "request": "launch", - "program": "${workspaceFolder}/src/ui/node_modules/@angular/cli/bin/ng", + "program": "${workspaceFolder}/packages/ui/node_modules/@angular/cli/bin/ng", "args": ["serve", "--source-map"], - "cwd": "${workspaceFolder}/src/ui", + "cwd": "${workspaceFolder}/packages/ui", "console": "integratedTerminal" } ] @@ -213,9 +213,9 @@ azure-ai-travel-agents/ └── CONTRIBUTING.md # Contribution guidelines ``` -### API Structure (src/api/) +### API Structure (packages/api/) ``` -src/api/ +packages/api/ ├── src/ │ ├── index.ts # Main server entry point │ ├── mcp/ # MCP client implementations @@ -235,9 +235,9 @@ src/api/ └── .env # Local environment (git-ignored) ``` -### UI Structure (src/ui/) +### UI Structure (packages/ui/) ``` -src/ui/ +packages/ui/ ├── src/ │ ├── app/ # Angular application │ │ ├── components/ # Reusable components @@ -254,9 +254,9 @@ src/ui/ └── .env.sample # Environment template ``` -### MCP Tools Structure (src/tools/) +### MCP Tools Structure (packages/tools/) ``` -src/tools/ +packages/tools/ ├── echo-ping/ # TypeScript/Node.js example │ ├── src/ │ │ ├── index.ts # Server entry point @@ -293,11 +293,11 @@ docker-compose up -d # Option B: Local services # Terminal 1: Start API -cd src/api +cd packages/api npm start # Terminal 2: Start UI -cd src/ui +cd packages/ui npm start # Terminal 3: Start monitoring (optional) @@ -313,12 +313,12 @@ docker run -d --name aspire-dashboard \ git checkout -b feature/new-travel-feature # Make changes and test locally -npm run test --prefix src/api -npm run test --prefix src/ui +npm run test --prefix packages/api +npm run test --prefix packages/ui # Build and verify -npm run build --prefix src/api -npm run build --prefix src/ui +npm run build --prefix packages/api +npm run build --prefix packages/ui # Commit changes git add . @@ -334,12 +334,12 @@ git push origin feature/new-travel-feature npm run test:all # Check code quality -npm run lint --prefix src/api -npm run lint --prefix src/ui +npm run lint --prefix packages/api +npm run lint --prefix packages/ui # Type checking -npm run type-check --prefix src/api -npm run type-check --prefix src/ui +npm run type-check --prefix packages/api +npm run type-check --prefix packages/ui # Integration tests npm run test:integration @@ -376,27 +376,27 @@ chore(deps): update dependencies echo "Running pre-commit checks..." # Lint check -npm run lint --prefix src/api --silent +npm run lint --prefix packages/api --silent if [ $? -ne 0 ]; then echo "❌ API linting failed" exit 1 fi -npm run lint --prefix src/ui --silent +npm run lint --prefix packages/ui --silent if [ $? -ne 0 ]; then echo "❌ UI linting failed" exit 1 fi # Type check -npm run type-check --prefix src/api --silent +npm run type-check --prefix packages/api --silent if [ $? -ne 0 ]; then echo "❌ API type checking failed" exit 1 fi # Unit tests -npm run test --prefix src/api --silent +npm run test --prefix packages/api --silent if [ $? -ne 0 ]; then echo "❌ API tests failed" exit 1 @@ -412,8 +412,8 @@ echo "✅ All pre-commit checks passed" #### 1. Create Server Structure ```bash # Create new MCP server directory -mkdir src/tools/my-new-server -cd src/tools/my-new-server +mkdir packages/tools/my-new-server +cd packages/tools/my-new-server # Initialize based on technology choice # For TypeScript (similar to echo-ping): @@ -428,7 +428,7 @@ cp -r ../customer-query/* . #### 2. Implement MCP Server (TypeScript Example) ```typescript -// src/tools/my-new-server/src/server.ts +// packages/tools/my-new-server/src/server.ts import { McpServer } from '@modelcontextprotocol/sdk/server/index.js'; import { CallToolRequestSchema, @@ -518,7 +518,7 @@ export class MyNewMCPServer { #### 3. Update Docker Configuration ```dockerfile -# src/tools/my-new-server/Dockerfile +# packages/tools/my-new-server/Dockerfile FROM node:22-alpine WORKDIR /app @@ -564,7 +564,7 @@ tool-my-new-server: #### 5. Register in API ```typescript -// src/api/src/orchestrator/llamaindex/tools/index.ts +// packages/api/src/orchestrator/llamaindex/tools/index.ts export type McpServerName = | "echo-ping" | "customer-query" @@ -593,7 +593,7 @@ export const McpToolsConfig = (): { #### 6. Add Agent Integration ```typescript -// src/api/src/orchestrator/llamaindex/index.ts +// packages/api/src/orchestrator/llamaindex/index.ts export async function setupAgents(filteredTools: McpServerDefinition[] = []) { // ... existing code @@ -623,7 +623,7 @@ export async function setupAgents(filteredTools: McpServerDefinition[] = []) { #### 1. Create Component ```bash # Generate new component -cd src/ui +cd packages/ui ng generate component components/my-new-component # Generate service if needed @@ -632,7 +632,7 @@ ng generate service services/my-new-service #### 2. Implement Component ```typescript -// src/ui/src/app/components/my-new-component/my-new-component.component.ts +// packages/ui/src/app/components/my-new-component/my-new-component.component.ts import { Component, Input, Output, EventEmitter, OnInit } from '@angular/core'; import { CommonModule } from '@angular/common'; @@ -705,7 +705,7 @@ export class MyNewComponentComponent implements OnInit { #### 3. Add to Module/Route ```typescript -// src/ui/src/app/app.routes.ts +// packages/ui/src/app/app.routes.ts import { Routes } from '@angular/router'; import { MyNewComponentComponent } from './components/my-new-component/my-new-component.component'; @@ -723,7 +723,7 @@ export const routes: Routes = [ #### 1. Define Route Handler ```typescript -// src/api/src/routes/my-new-routes.ts +// packages/api/src/routes/my-new-routes.ts import { Router } from 'express'; import { z } from 'zod'; @@ -800,7 +800,7 @@ export default router; #### 2. Register Routes ```typescript -// src/api/src/index.ts +// packages/api/src/index.ts import myNewRoutes from './routes/my-new-routes.js'; // ... existing code @@ -817,7 +817,7 @@ apiRouter.use('/my-new', myNewRoutes); #### API Unit Tests ```typescript -// src/api/src/__tests__/mcp-tools.test.ts +// packages/api/src/__tests__/mcp-tools.test.ts import { describe, it, expect, beforeEach, afterEach } from '@jest/globals'; import { mcpToolsList } from '../mcp/mcp-tools.js'; @@ -873,7 +873,7 @@ describe('MCP Tools', () => { #### UI Unit Tests ```typescript -// src/ui/src/app/components/my-component/my-component.component.spec.ts +// packages/ui/src/app/components/my-component/my-component.component.spec.ts import { ComponentFixture, TestBed } from '@angular/core/testing'; import { MyNewComponentComponent } from './my-new-component.component'; @@ -920,7 +920,7 @@ describe('MyNewComponentComponent', () => { #### API Integration Tests ```typescript -// src/api/src/__tests__/integration/chat.test.ts +// packages/api/src/__tests__/integration/chat.test.ts import request from 'supertest'; import { app } from '../index.js'; @@ -1065,7 +1065,7 @@ console.log('Tools result:', result); #### Using Node.js Inspector ```bash # Start API with inspector -cd src/api +cd packages/api npm run debug # Connect Chrome DevTools @@ -1075,7 +1075,7 @@ npm run debug #### Logging and Tracing ```typescript -// src/api/src/utils/logger.ts +// packages/api/src/utils/logger.ts import { trace } from '@opentelemetry/api'; const tracer = trace.getTracer('api-debug'); @@ -1140,7 +1140,7 @@ mcpClient.on('response', (response) => { # Available for Chrome and Firefox # Use Angular CLI in debug mode -cd src/ui +cd packages/ui ng serve --source-map --verbose ``` @@ -1171,7 +1171,7 @@ export class MyComponent { #### Network Debugging ```typescript -// src/ui/src/app/services/api.service.ts +// packages/ui/src/app/services/api.service.ts export class ApiService { async streamChatMessage(message: string, tools: Tools[]) { // Add request/response logging diff --git a/docs/getting-started.md b/docs/getting-started.md index 2f9010eb..59f6fb4e 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -78,13 +78,13 @@ gh repo clone YOUR-USERNAME/azure-ai-travel-agents Start the API service by running the following command in a terminal: ```bash -npm start --prefix=src/api +npm start --prefix=packages/api ``` Open a new terminal and start the UI service by running the following command: ```bash -npm start --prefix=src/ui +npm start --prefix=packages/ui ``` Once all services are up and running, you can access the **UI** at http://localhost:4200. @@ -174,13 +174,13 @@ When asked, enter a name that will be used for the resource group. **Depending o 5. Open a new terminal and run the following command to start the API: ```bash -npm start --prefix=src/api +npm start --prefix=packages/api ``` 6. Open a new terminal and run the following command to start the UI: ```bash -npm start --prefix=src/ui +npm start --prefix=packages/ui ``` 7. Once all services are up and running, you can access the **UI** at http://localhost:4200. diff --git a/docs/maf-migration-plan.md b/docs/maf-migration-plan.md index 7b799840..2466e794 100644 --- a/docs/maf-migration-plan.md +++ b/docs/maf-migration-plan.md @@ -8,7 +8,7 @@ This document outlines the migration strategy from the current LlamaIndex.TS orc ### Existing Architecture -**Location**: `src/api/` +**Location**: `packages/api/` **Technology Stack**: - Node.js 22.16+ with TypeScript @@ -17,12 +17,12 @@ This document outlines the migration strategy from the current LlamaIndex.TS orc - @llamaindex/tools 0.1.2 **Components**: -- Main API server: `src/api/src/index.ts` -- Orchestrator: `src/api/src/orchestrator/llamaindex/` +- Main API server: `packages/api/src/index.ts` +- Orchestrator: `packages/api/src/orchestrator/llamaindex/` - Agent setup: `index.ts` - Provider configuration: `providers/` - Tool configuration: `tools/index.ts` -- MCP clients: `src/api/src/mcp/` +- MCP clients: `packages/api/src/mcp/` - HTTP client: `mcp-http-client.ts` - SSE client: `mcp-sse-client.ts` - Tool list: `mcp-tools.ts` @@ -44,7 +44,7 @@ This document outlines the migration strategy from the current LlamaIndex.TS orc ### Target Architecture -**Location**: `src/api-python/` +**Location**: `packages/api-python/` **Technology Stack**: - Python 3.12+ @@ -81,7 +81,7 @@ We will use a parallel deployment strategy to minimize risk: #### Tasks - [x] Create design documentation - [x] Create implementation guide -- [ ] Create `src/api-python/` directory structure +- [ ] Create `packages/api-python/` directory structure - [ ] Set up `pyproject.toml` with dependencies - [ ] Implement configuration management (`config.py`) - [ ] Create `.env.sample` for Python API diff --git a/docs/maf-orchestration-design.md b/docs/maf-orchestration-design.md index a14f0d02..f8a3f654 100644 --- a/docs/maf-orchestration-design.md +++ b/docs/maf-orchestration-design.md @@ -10,7 +10,7 @@ This document outlines the design for reimplementing the orchestration layer of The current orchestration layer uses: - **Framework**: LlamaIndex.TS - **Language**: TypeScript/Node.js -- **Location**: `src/api/src/orchestrator/llamaindex/` +- **Location**: `packages/api/src/orchestrator/llamaindex/` - **Pattern**: Multi-agent workflow with triage agent as root ### New Implementation Goals diff --git a/docs/maf-visual-guide.md b/docs/maf-visual-guide.md index bc0ce45d..778571ce 100644 --- a/docs/maf-visual-guide.md +++ b/docs/maf-visual-guide.md @@ -109,7 +109,7 @@ flowchart TB ```mermaid flowchart TB - subgraph APIPYTHON["src/api-python/"] + subgraph APIPYTHON["packages/api-python/"] MAIN[main.py - FastAPI App
• Endpoints: /api/health, /api/chat, /api/tools
• SSE Streaming
• CORS Configuration] WORKFLOW[orchestrator/workflow.py
• TravelWorkflow Class
• Agent Initialization
• Workflow Execution
• Tool Filtering] diff --git a/docs/orchestration.md b/docs/orchestration.md index c10b75f6..eeb512ee 100644 --- a/docs/orchestration.md +++ b/docs/orchestration.md @@ -61,8 +61,8 @@ flowchart TB - ✅ Seamless SSE streaming **Implementation Details**: -- Location: `src/api/src/orchestrator/llamaindex/` -- Entry Point: `src/api/src/index.ts` +- Location: `packages/api/src/orchestrator/llamaindex/` +- Entry Point: `packages/api/src/index.ts` - Documentation: [Technical Architecture](./technical-architecture.md#agent-orchestration) **Best For**: @@ -75,7 +75,7 @@ flowchart TB ### Architecture -The Microsoft Agent Framework (MAF) implementation is **fully implemented** in `src/api-python/`: +The Microsoft Agent Framework (MAF) implementation is **fully implemented** in `packages/api-python/`: - **Language**: Python 3.11+ - **Runtime**: Python with asyncio - **Web Framework**: FastAPI @@ -124,10 +124,10 @@ flowchart TB **Implementation Details**: - Status: ✅ Fully implemented and functional -- Location: `src/api-python/` -- Documentation: See `src/api-python/README.md` -- Architecture: `src/api-python/ARCHITECTURE_DIAGRAMS.md` -- Developer Guide: `src/api-python/DEVELOPER_GUIDE.md` +- Location: `packages/api-python/` +- Documentation: See `packages/api-python/README.md` +- Architecture: `packages/api-python/ARCHITECTURE_DIAGRAMS.md` +- Developer Guide: `packages/api-python/DEVELOPER_GUIDE.md` **Best For**: - Teams with Python expertise @@ -156,7 +156,7 @@ flowchart TB | **Streaming** | SSE via Express | SSE via FastAPI | | **Observability** | OpenTelemetry | OpenTelemetry | | **Deployment** | Container Apps | Container Apps | -| **Implementation Location** | `src/api/` | `src/api-python/` | +| **Implementation Location** | `packages/api/` | `packages/api-python/` | ## Common Elements @@ -215,7 +215,7 @@ flowchart TB ### Migration Phases 1. **Phase 1: Evaluate** (Current State) - - MAF implementation already available in `src/api-python/` + - MAF implementation already available in `packages/api-python/` - Review implementation and test locally - Compare functionality with LlamaIndex.TS - Assess team Python expertise @@ -283,7 +283,7 @@ flowchart TB Already active in the repository. See: - [Technical Architecture](./technical-architecture.md#agent-orchestration) - [Development Guide](./development-guide.md) -- Source: `src/api/` +- Source: `packages/api/` ### Implementing Microsoft Agent Framework @@ -291,7 +291,7 @@ The MAF implementation is **already complete** and available for use: **Quick Start**: ```bash -cd src/api-python +cd packages/api-python # Install dependencies pip install -e . @@ -304,19 +304,19 @@ uvicorn main:app --reload ``` **Documentation**: -- **README**: `src/api-python/README.md` - Getting started and overview -- **Architecture**: `src/api-python/ARCHITECTURE_DIAGRAMS.md` - System design and flow diagrams -- **Developer Guide**: `src/api-python/DEVELOPER_GUIDE.md` - Development setup and workflows -- **MCP Integration**: `src/api-python/MCP_QUICK_REFERENCE.md` - MCP tool usage patterns -- **Implementation**: `src/api-python/IMPLEMENTATION_GUIDE.md` - Technical implementation details -- **Event Streaming**: `src/api-python/EVENT_STREAMING.md` - SSE streaming architecture +- **README**: `packages/api-python/README.md` - Getting started and overview +- **Architecture**: `packages/api-python/ARCHITECTURE_DIAGRAMS.md` - System design and flow diagrams +- **Developer Guide**: `packages/api-python/DEVELOPER_GUIDE.md` - Development setup and workflows +- **MCP Integration**: `packages/api-python/MCP_QUICK_REFERENCE.md` - MCP tool usage patterns +- **Implementation**: `packages/api-python/IMPLEMENTATION_GUIDE.md` - Technical implementation details +- **Event Streaming**: `packages/api-python/EVENT_STREAMING.md` - SSE streaming architecture **Key Implementation Files**: -- `src/api-python/src/main.py` - FastAPI application entry point -- `src/api-python/src/orchestrator/magentic_workflow.py` - Magentic orchestration -- `src/api-python/src/orchestrator/workflow.py` - Alternative workflow implementation -- `src/api-python/src/orchestrator/agents/` - All agent implementations -- `src/api-python/src/orchestrator/tools/` - MCP tool registry and wrappers +- `packages/api-python/src/main.py` - FastAPI application entry point +- `packages/api-python/src/orchestrator/magentic_workflow.py` - Magentic orchestration +- `packages/api-python/src/orchestrator/workflow.py` - Alternative workflow implementation +- `packages/api-python/src/orchestrator/agents/` - All agent implementations +- `packages/api-python/src/orchestrator/tools/` - MCP tool registry and wrappers ### Parallel Deployment @@ -384,10 +384,10 @@ Monitoring includes: Both LlamaIndex.TS and Microsoft Agent Framework provide robust orchestration capabilities for the Azure AI Travel Agents system. The choice depends on your team's expertise, technology preferences, and specific requirements. **Current State**: -- **LlamaIndex.TS** (in `src/api/`) is the production-ready, battle-tested implementation -- **Microsoft Agent Framework** (in `src/api-python/`) is a fully implemented alternative ready for evaluation +- **LlamaIndex.TS** (in `packages/api/`) is the production-ready, battle-tested implementation +- **Microsoft Agent Framework** (in `packages/api-python/`) is a fully implemented alternative ready for evaluation -**Recommendation**: Evaluate the MAF implementation in `src/api-python/` to determine if it better fits your team's needs. Both implementations are production-ready and can run in parallel if desired. +**Recommendation**: Evaluate the MAF implementation in `packages/api-python/` to determine if it better fits your team's needs. Both implementations are production-ready and can run in parallel if desired. The parallel deployment option ensures you can evaluate both approaches in your environment, making an informed decision based on real-world performance and team experience. diff --git a/docs/overview.md b/docs/overview.md index dad87b6d..137b923c 100644 --- a/docs/overview.md +++ b/docs/overview.md @@ -36,7 +36,7 @@ See [Technical Architecture - Agent Orchestration](./technical-architecture.md#a **IMPLEMENTED**: Working Python implementation using Microsoft Agent Framework for agent orchestration. -Located in `src/api-python/`, this is a complete, production-ready alternative to the TypeScript API that uses: +Located in `packages/api-python/`, this is a complete, production-ready alternative to the TypeScript API that uses: - **Microsoft Agent Framework** (`agent-framework` Python SDK) - **Magentic Orchestration** pattern for multi-agent workflows - **Built-in MCP Support** via `MCPStreamableHTTPTool` @@ -53,10 +53,10 @@ Located in `src/api-python/`, this is a complete, production-ready alternative t - ✅ Proper async lifecycle management **Documentation**: -- Implementation details: `src/api-python/README.md` -- Architecture diagrams: `src/api-python/ARCHITECTURE_DIAGRAMS.md` -- Developer guide: `src/api-python/DEVELOPER_GUIDE.md` -- MCP integration: `src/api-python/MCP_QUICK_REFERENCE.md` +- Implementation details: `packages/api-python/README.md` +- Architecture diagrams: `packages/api-python/ARCHITECTURE_DIAGRAMS.md` +- Developer guide: `packages/api-python/DEVELOPER_GUIDE.md` +- MCP integration: `packages/api-python/MCP_QUICK_REFERENCE.md` **Status**: Alternative implementation available for evaluation and use alongside LlamaIndex.TS. @@ -95,7 +95,7 @@ flowchart LR ### Alternative Architecture (Microsoft Agent Framework) -**IMPLEMENTED** in `src/api-python/` +**IMPLEMENTED** in `packages/api-python/` ```mermaid flowchart LR @@ -177,7 +177,7 @@ The system provides two orchestration approaches, each with distinct advantages: ### Microsoft Agent Framework (Implemented Alternative) **Status**: ✅ Implemented, Available for Use -**Location**: `src/api-python/` +**Location**: `packages/api-python/` **Advantages**: - Native Microsoft Agent Framework SDK integration @@ -201,7 +201,7 @@ The system provides two orchestration approaches, each with distinct advantages: **Deployment**: Can run parallel to TypeScript API for evaluation or as replacement. -See implementation documentation in `src/api-python/README.md` for details. +See implementation documentation in `packages/api-python/README.md` for details. ## Documentation Features diff --git a/docs/technical-architecture.md b/docs/technical-architecture.md index 0c8f435b..6cdb762b 100644 --- a/docs/technical-architecture.md +++ b/docs/technical-architecture.md @@ -782,10 +782,10 @@ OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889 4. **Start Services** ```bash # Terminal 1: Start API - npm start --prefix=src/api + npm start --prefix=packages/api # Terminal 2: Start UI - npm start --prefix=src/ui + npm start --prefix=packages/ui ``` 5. **Access Applications** @@ -818,11 +818,11 @@ OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889 #### Unit Testing ```bash # API tests -cd src/api +cd packages/api npm test # UI tests -cd src/ui +cd packages/ui npm test ``` @@ -849,7 +849,7 @@ curl -X POST http://localhost:4000/api/chat \ #### API Server Debugging ```bash # Enable debug logging -DEBUG=true npm start --prefix=src/api +DEBUG=true npm start --prefix=packages/api # VS Code debugging # Use launch.json configuration for step debugging @@ -862,7 +862,7 @@ docker-compose logs tool-echo-ping # Test MCP connectivity directly node -e " -const { MCPHTTPClient } = require('./src/api/src/mcp/mcp-http-client.js'); +const { MCPHTTPClient } = require('./packages/api/src/mcp/mcp-http-client.js'); const client = new MCPHTTPClient('test', 'http://localhost:5007/mcp'); client.connect().then(() => console.log('Connected')); " @@ -871,7 +871,7 @@ client.connect().then(() => console.log('Connected')); #### UI Debugging ```bash # Development server with source maps -npm start --prefix=src/ui +npm start --prefix=packages/ui # Browser DevTools # Use Angular DevTools extension for component inspection @@ -882,12 +882,12 @@ npm start --prefix=src/ui #### Linting and Formatting ```bash # API -cd src/api +cd packages/api npm run lint npm run format # UI -cd src/ui +cd packages/ui npm run lint npm run format ``` @@ -895,11 +895,11 @@ npm run format #### Type Checking ```bash # API -cd src/api +cd packages/api npx tsc --noEmit # UI -cd src/ui +cd packages/ui npx ng build --configuration development ``` @@ -909,8 +909,8 @@ npx ng build --configuration development 1. **Create Server Directory** ```bash - mkdir src/tools/my-new-tool - cd src/tools/my-new-tool + mkdir packages/tools/my-new-tool + cd packages/tools/my-new-tool ``` 2. **Implement MCP Server** @@ -963,7 +963,7 @@ npx ng build --configuration development 5. **Register in API** ```typescript - // src/api/src/orchestrator/llamaindex/tools/index.ts + // packages/api/src/orchestrator/llamaindex/tools/index.ts export type McpServerName = | "echo-ping" | "my-new-tool"; // Add new tool @@ -984,7 +984,7 @@ npx ng build --configuration development 6. **Create Agent Integration** ```typescript - // src/api/src/orchestrator/llamaindex/index.ts + // packages/api/src/orchestrator/llamaindex/index.ts if (tools["my-new-tool"]) { const mcpServerConfig = mcpToolsConfig["my-new-tool"]; const tools = await mcp(mcpServerConfig.config).tools(); @@ -1052,7 +1052,7 @@ const agentWithCustomTool = agent({ #### Adding New Tool Selection ```typescript -// src/ui/src/app/services/api.service.ts +// packages/ui/src/app/services/api.service.ts export type ServerID = | 'echo-ping' | 'customer-query' @@ -1163,8 +1163,8 @@ services: language: typescript host: containerapp docker: - path: ./src/tools/my-new-tool/Dockerfile - context: ./src/tools/my-new-tool + path: ./packages/tools/my-new-tool/Dockerfile + context: ./packages/tools/my-new-tool ``` This comprehensive documentation provides architects and developers with the detailed technical understanding needed to work with, extend, and deploy the Azure AI Travel Agents system effectively. \ No newline at end of file diff --git a/infra/hooks/api/setup.ps1 b/infra/hooks/api/setup.ps1 index edcfd6b5..d35604f4 100755 --- a/infra/hooks/api/setup.ps1 +++ b/infra/hooks/api/setup.ps1 @@ -1,6 +1,6 @@ # Install dependencies for the API service Write-Host '>> Installing dependencies for the API service...' -$nodeModules = './src/api/node_modules' +$nodeModules = './packages/api/node_modules' if (-not (Test-Path $nodeModules)) { Write-Host 'Installing dependencies for the API service...' npm ci --prefix=src/api --legacy-peer-deps diff --git a/infra/hooks/api/setup.sh b/infra/hooks/api/setup.sh index 00f67065..f10e5aa5 100755 --- a/infra/hooks/api/setup.sh +++ b/infra/hooks/api/setup.sh @@ -2,7 +2,7 @@ # Install dependencies for the API service printf ">> Installing dependencies for the API service...\n" -if [ ! -d ./src/api/node_modules ]; then +if [ ! -d ./packages/api/node_modules ]; then printf "Installing dependencies for the API service...\n" npm ci --prefix=src/api --legacy-peer-deps status=$? diff --git a/infra/hooks/mcp/setup.ps1 b/infra/hooks/mcp/setup.ps1 index 210ee05f..9b2abedf 100755 --- a/infra/hooks/mcp/setup.ps1 +++ b/infra/hooks/mcp/setup.ps1 @@ -7,9 +7,9 @@ $tools = @('echo-ping', 'customer-query', 'destination-recommendation', 'itinera Write-Host '>> Creating .env file for the MCP servers...' foreach ($tool in $tools) { - $envSample = "./src/tools/$tool/.env.sample" - $envFile = "./src/tools/$tool/.env" - $envDockerFile = "./src/tools/$tool/.env.docker" + $envSample = "./packages/tools/$tool/.env.sample" + $envFile = "./packages/tools/$tool/.env" + $envDockerFile = "./packages/tools/$tool/.env.docker" if (Test-Path $envSample) { Write-Host "Creating .env file for $tool..." if (-not (Test-Path $envFile)) { diff --git a/infra/hooks/mcp/setup.sh b/infra/hooks/mcp/setup.sh index b80a51f5..c2d03408 100755 --- a/infra/hooks/mcp/setup.sh +++ b/infra/hooks/mcp/setup.sh @@ -10,19 +10,19 @@ printf ">> Creating .env file for the MCP servers...\n" # for each tool copy the .env.sample (if it exists) to .env and .env.docker (dont overwrite existing .env files) for tool in $tools; do - if [ -f ./src/tools/$tool/.env.sample ]; then + if [ -f ./packages/tools/$tool/.env.sample ]; then printf "Creating .env file for $tool...\n" - if [ ! -f ./src/tools/$tool/.env ]; then - cp ./src/tools/$tool/.env.sample ./src/tools/$tool/.env - printf "# File automatically generated on $(date)\n" >> ./src/tools/$tool/.env - printf "# See .env.sample for more information\n" >> ./src/tools/$tool/.env + if [ ! -f ./packages/tools/$tool/.env ]; then + cp ./packages/tools/$tool/.env.sample ./packages/tools/$tool/.env + printf "# File automatically generated on $(date)\n" >> ./packages/tools/$tool/.env + printf "# See .env.sample for more information\n" >> ./packages/tools/$tool/.env fi # Create .env.docker file if it doesn't exist - if [ ! -f ./src/tools/$tool/.env.docker ]; then - cp ./src/tools/$tool/.env.sample ./src/tools/$tool/.env.docker - printf "# File automatically generated on $(date)\n" >> ./src/tools/$tool/.env.docker - printf "# See .env.sample for more information\n" >> ./src/tools/$tool/.env.docker + if [ ! -f ./packages/tools/$tool/.env.docker ]; then + cp ./packages/tools/$tool/.env.sample ./packages/tools/$tool/.env.docker + printf "# File automatically generated on $(date)\n" >> ./packages/tools/$tool/.env.docker + printf "# See .env.sample for more information\n" >> ./packages/tools/$tool/.env.docker fi else printf "No .env.sample found for $tool, skipping...\n" diff --git a/infra/hooks/postprovision.ps1 b/infra/hooks/postprovision.ps1 index 3ed89977..ed3efa49 100755 --- a/infra/hooks/postprovision.ps1 +++ b/infra/hooks/postprovision.ps1 @@ -11,7 +11,7 @@ Write-Host "Running post-deployment script for AI Travel Agents application..." ########################################################################## Write-Host ">> Creating .env file for the API service..." -$apiEnvPath = "./src/api/.env" +$apiEnvPath = "./packages/api/.env" if (-not (Test-Path $apiEnvPath)) { "# File automatically generated on $(Get-Date)" | Out-File $apiEnvPath "# See .env.sample for more information" | Add-Content $apiEnvPath @@ -38,7 +38,7 @@ if (-not (Test-Path $apiEnvPath)) { } # Set overrides for docker environment -$apiEnvDockerPath = "./src/api/.env.docker" +$apiEnvDockerPath = "./packages/api/.env.docker" if (-not (Test-Path $apiEnvDockerPath)) { "# File automatically generated on $(Get-Date)" | Out-File $apiEnvDockerPath "# See .env.sample for more information" | Add-Content $apiEnvDockerPath @@ -54,7 +54,7 @@ if (-not (Test-Path $apiEnvDockerPath)) { # Install dependencies for the API service Write-Host ">> Installing dependencies for the API service..." -if (-not (Test-Path "./src/api/node_modules")) { +if (-not (Test-Path "./packages/api/node_modules")) { Write-Host "Installing dependencies for the API service..." npm ci --prefix=src/api --legacy-peer-deps } else { @@ -66,7 +66,7 @@ if (-not (Test-Path "./src/api/node_modules")) { ########################################################################## Write-Host ">> Creating .env file for the UI service..." -$uiEnvPath = "./src/ui/.env" +$uiEnvPath = "./packages/ui/.env" if (-not (Test-Path $uiEnvPath)) { "# File automatically generated on $(Get-Date)" | Out-File $uiEnvPath "# See .env.sample for more information" | Add-Content $uiEnvPath @@ -80,7 +80,7 @@ if (-not (Test-Path $uiEnvPath)) { # Install dependencies for the UI service Write-Host ">> Installing dependencies for the UI service..." -if (-not (Test-Path "./src/ui/node_modules")) { +if (-not (Test-Path "./packages/ui/node_modules")) { Write-Host "Installing dependencies for the UI service..." npm ci --prefix=src/ui } else { @@ -94,7 +94,7 @@ $tools = @('echo-ping', 'customer-query', 'destination-recommendation', 'itinera Write-Host ">> Creating .env file for the MCP servers..." foreach ($tool in $tools) { - $toolPath = "./src/tools/$tool" + $toolPath = "./packages/tools/$tool" $envSample = "$toolPath/.env.sample" $envFile = "$toolPath/.env" $envDockerFile = "$toolPath/.env.docker" diff --git a/infra/hooks/postprovision.sh b/infra/hooks/postprovision.sh index 7e667ef7..ecbb0e31 100755 --- a/infra/hooks/postprovision.sh +++ b/infra/hooks/postprovision.sh @@ -13,43 +13,43 @@ echo "Running post-deployment script for AI Travel Agents application..." ########################################################################## echo ">> Creating .env file for the API service..." -if [ ! -f ./src/api/.env ]; then - echo "# File automatically generated on $(date)" > ./src/api/.env - echo "# See .env.sample for more information" >> ./src/api/.env +if [ ! -f ./packages/api/.env ]; then + echo "# File automatically generated on $(date)" > ./packages/api/.env + echo "# See .env.sample for more information" >> ./packages/api/.env echo "" AZURE_OPENAI_ENDPOINT=$(azd env get-value AZURE_OPENAI_ENDPOINT) - echo "AZURE_OPENAI_ENDPOINT=\"$AZURE_OPENAI_ENDPOINT\"" >> ./src/api/.env + echo "AZURE_OPENAI_ENDPOINT=\"$AZURE_OPENAI_ENDPOINT\"" >> ./packages/api/.env echo "" - echo "LLM_PROVIDER=azure-openai" >> ./src/api/.env + echo "LLM_PROVIDER=azure-openai" >> ./packages/api/.env echo "" - echo "AZURE_OPENAI_DEPLOYMENT=gpt-4o-mini" >> ./src/api/.env + echo "AZURE_OPENAI_DEPLOYMENT=gpt-4o-mini" >> ./packages/api/.env echo "" - echo "MCP_CUSTOMER_QUERY_URL=http://localhost:8080" >> ./src/api/.env - echo "MCP_DESTINATION_RECOMMENDATION_URL=http://localhost:5002" >> ./src/api/.env - echo "MCP_ITINERARY_PLANNING_URL=http://localhost:5003" >> ./src/api/.env - echo "MCP_CODE_EVALUATION_URL=http://localhost:5004" >> ./src/api/.env - echo "MCP_MODEL_INFERENCE_URL=http://localhost:5005" >> ./src/api/.env - echo "MCP_WEB_SEARCH_URL=http://localhost:5006" >> ./src/api/.env - echo "MCP_ECHO_PING_URL=http://localhost:5007" >> ./src/api/.env - echo "MCP_ECHO_PING_ACCESS_TOKEN=123-this-is-a-fake-token-please-use-a-token-provider" >> ./src/api/.env + echo "MCP_CUSTOMER_QUERY_URL=http://localhost:8080" >> ./packages/api/.env + echo "MCP_DESTINATION_RECOMMENDATION_URL=http://localhost:5002" >> ./packages/api/.env + echo "MCP_ITINERARY_PLANNING_URL=http://localhost:5003" >> ./packages/api/.env + echo "MCP_CODE_EVALUATION_URL=http://localhost:5004" >> ./packages/api/.env + echo "MCP_MODEL_INFERENCE_URL=http://localhost:5005" >> ./packages/api/.env + echo "MCP_WEB_SEARCH_URL=http://localhost:5006" >> ./packages/api/.env + echo "MCP_ECHO_PING_URL=http://localhost:5007" >> ./packages/api/.env + echo "MCP_ECHO_PING_ACCESS_TOKEN=123-this-is-a-fake-token-please-use-a-token-provider" >> ./packages/api/.env echo "" - echo "OTEL_SERVICE_NAME=api" >> ./src/api/.env - echo "OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889" >> ./src/api/.env - echo "OTEL_EXPORTER_OTLP_HEADERS=header-value" >> ./src/api/.env + echo "OTEL_SERVICE_NAME=api" >> ./packages/api/.env + echo "OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889" >> ./packages/api/.env + echo "OTEL_EXPORTER_OTLP_HEADERS=header-value" >> ./packages/api/.env fi # Set overrides for docker environment -if [ ! -f ./src/api/.env.docker ]; then - echo "# File automatically generated on $(date)" > ./src/api/.env.docker - echo "# See .env.sample for more information" >> ./src/api/.env.docker +if [ ! -f ./packages/api/.env.docker ]; then + echo "# File automatically generated on $(date)" > ./packages/api/.env.docker + echo "# See .env.sample for more information" >> ./packages/api/.env.docker echo "" - echo "MCP_CUSTOMER_QUERY_URL=http://tool-customer-query:8080" >> ./src/api/.env.docker - echo "MCP_DESTINATION_RECOMMENDATION_URL=http://tool-destination-recommendation:5002" >> ./src/api/.env.docker - echo "MCP_ITINERARY_PLANNING_URL=http://tool-itinerary-planning:5003" >> ./src/api/.env.docker - echo "MCP_CODE_EVALUATION_URL=http://tool-code-evaluation:5004" >> ./src/api/.env.docker - echo "MCP_MODEL_INFERENCE_URL=http://tool-model-inference:5005" >> ./src/api/.env.docker - echo "MCP_WEB_SEARCH_URL=http://tool-web-search:5006" >> ./src/api/.env.docker - echo "MCP_ECHO_PING_URL=http://tool-echo-ping:5007" >> ./src/api/.env.docker + echo "MCP_CUSTOMER_QUERY_URL=http://tool-customer-query:8080" >> ./packages/api/.env.docker + echo "MCP_DESTINATION_RECOMMENDATION_URL=http://tool-destination-recommendation:5002" >> ./packages/api/.env.docker + echo "MCP_ITINERARY_PLANNING_URL=http://tool-itinerary-planning:5003" >> ./packages/api/.env.docker + echo "MCP_CODE_EVALUATION_URL=http://tool-code-evaluation:5004" >> ./packages/api/.env.docker + echo "MCP_MODEL_INFERENCE_URL=http://tool-model-inference:5005" >> ./packages/api/.env.docker + echo "MCP_WEB_SEARCH_URL=http://tool-web-search:5006" >> ./packages/api/.env.docker + echo "MCP_ECHO_PING_URL=http://tool-echo-ping:5007" >> ./packages/api/.env.docker fi ########################################################################## @@ -57,15 +57,15 @@ fi ########################################################################## echo ">> Creating .env file for the UI service..." -if [ ! -f ./src/ui/.env ]; then - echo "# File automatically generated on $(date)" > ./src/ui/.env - echo "# See .env.sample for more information" >> ./src/ui/.env +if [ ! -f ./packages/ui/.env ]; then + echo "# File automatically generated on $(date)" > ./packages/ui/.env + echo "# See .env.sample for more information" >> ./packages/ui/.env echo "" NG_API_URL=$(azd env get-value NG_API_URL) - echo "NG_API_URL=http://localhost:4000" >> ./src/ui/.env + echo "NG_API_URL=http://localhost:4000" >> ./packages/ui/.env echo "" - echo "# Uncomment the following line to use the provisioned endpoint for the API" >> ./src/ui/.env - echo "# NG_API_URL=\"$NG_API_URL\"" >> ./src/ui/.env + echo "# Uncomment the following line to use the provisioned endpoint for the API" >> ./packages/ui/.env + echo "# NG_API_URL=\"$NG_API_URL\"" >> ./packages/ui/.env fi # Execute the API and UI setup scripts diff --git a/infra/hooks/ui/setup.ps1 b/infra/hooks/ui/setup.ps1 index dce557bb..cd63e179 100755 --- a/infra/hooks/ui/setup.ps1 +++ b/infra/hooks/ui/setup.ps1 @@ -1,6 +1,6 @@ # Install dependencies for the UI service Write-Host '>> Installing dependencies for the UI service...' -$nodeModules = './src/ui/node_modules' +$nodeModules = './packages/ui/node_modules' if (-not (Test-Path $nodeModules)) { Write-Host 'Installing dependencies for the UI service...' npm ci --prefix=src/ui diff --git a/infra/hooks/ui/setup.sh b/infra/hooks/ui/setup.sh index ce56c034..23f9cc9b 100755 --- a/infra/hooks/ui/setup.sh +++ b/infra/hooks/ui/setup.sh @@ -2,7 +2,7 @@ # Install dependencies for the UI service printf ">> Installing dependencies for the UI service...\n" -if [ ! -d ./src/ui/node_modules ]; then +if [ ! -d ./packages/ui/node_modules ]; then printf "Installing dependencies for the UI service...\n" npm ci --prefix=src/ui status=$? diff --git a/llms.txt b/llms.txt index 1b8737e9..f43a88dd 100644 --- a/llms.txt +++ b/llms.txt @@ -538,7 +538,7 @@ src/ # Files -## File: src/tools/code-evaluation/Dockerfile +## File: packages/tools/code-evaluation/Dockerfile ```` # Use an ultra-lightweight base image FROM alpine:latest @@ -547,156 +547,156 @@ FROM alpine:latest CMD ["echo", "Hello from code-evaluation!"] ```` -## File: src/tools/customer-query/AITravelAgent.ServiceDefaults/AITravelAgent.ServiceDefaults.csproj -```` - - - - net9.0 - enable - enable - true - - - - - - - - - - - - - - +## File: packages/tools/customer-query/AITravelAgent.ServiceDefaults/AITravelAgent.ServiceDefaults.csproj +```` + + + + net9.0 + enable + enable + true + + + + + + + + + + + + + + ```` -## File: src/tools/customer-query/AITravelAgent.ServiceDefaults/Extensions.cs +## File: packages/tools/customer-query/AITravelAgent.ServiceDefaults/Extensions.cs ````csharp -using Microsoft.AspNetCore.Builder; -using Microsoft.AspNetCore.Diagnostics.HealthChecks; -using Microsoft.Extensions.DependencyInjection; -using Microsoft.Extensions.Diagnostics.HealthChecks; -using Microsoft.Extensions.Logging; -using Microsoft.Extensions.ServiceDiscovery; -using OpenTelemetry; -using OpenTelemetry.Metrics; -using OpenTelemetry.Trace; - -namespace Microsoft.Extensions.Hosting; - -// Adds common .NET Aspire services: service discovery, resilience, health checks, and OpenTelemetry. -// This project should be referenced by each service project in your solution. -// To learn more about using this project, see https://aka.ms/dotnet/aspire/service-defaults -public static class Extensions -{ - public static TBuilder AddServiceDefaults(this TBuilder builder) where TBuilder : IHostApplicationBuilder - { - builder.ConfigureOpenTelemetry(); - - builder.AddDefaultHealthChecks(); - - builder.Services.AddServiceDiscovery(); - - builder.Services.ConfigureHttpClientDefaults(http => - { - // Turn on resilience by default - http.AddStandardResilienceHandler(); - - // Turn on service discovery by default - http.AddServiceDiscovery(); - }); - - // Uncomment the following to restrict the allowed schemes for service discovery. - // builder.Services.Configure(options => - // { - // options.AllowedSchemes = ["https"]; - // }); - - return builder; - } - - public static TBuilder ConfigureOpenTelemetry(this TBuilder builder) where TBuilder : IHostApplicationBuilder - { - builder.Logging.AddOpenTelemetry(logging => - { - logging.IncludeFormattedMessage = true; - logging.IncludeScopes = true; - }); - - builder.Services.AddOpenTelemetry() - .WithMetrics(metrics => - { - metrics.AddAspNetCoreInstrumentation() - .AddHttpClientInstrumentation() - .AddRuntimeInstrumentation(); - }) - .WithTracing(tracing => - { - tracing.AddSource(builder.Environment.ApplicationName) - .AddAspNetCoreInstrumentation() - // Uncomment the following line to enable gRPC instrumentation (requires the OpenTelemetry.Instrumentation.GrpcNetClient package) - //.AddGrpcClientInstrumentation() - .AddHttpClientInstrumentation(); - }); - - builder.AddOpenTelemetryExporters(); - - return builder; - } - - private static TBuilder AddOpenTelemetryExporters(this TBuilder builder) where TBuilder : IHostApplicationBuilder - { - var useOtlpExporter = !string.IsNullOrWhiteSpace(builder.Configuration["OTEL_EXPORTER_OTLP_ENDPOINT"]); - - if (useOtlpExporter) - { - builder.Services.AddOpenTelemetry().UseOtlpExporter(); - } - - // Uncomment the following lines to enable the Azure Monitor exporter (requires the Azure.Monitor.OpenTelemetry.AspNetCore package) - //if (!string.IsNullOrEmpty(builder.Configuration["APPLICATIONINSIGHTS_CONNECTION_STRING"])) - //{ - // builder.Services.AddOpenTelemetry() - // .UseAzureMonitor(); - //} - - return builder; - } - - public static TBuilder AddDefaultHealthChecks(this TBuilder builder) where TBuilder : IHostApplicationBuilder - { - builder.Services.AddHealthChecks() - // Add a default liveness check to ensure app is responsive - .AddCheck("self", () => HealthCheckResult.Healthy(), ["live"]); - - return builder; - } - - public static WebApplication MapDefaultEndpoints(this WebApplication app) - { - // Adding health checks endpoints to applications in non-development environments has security implications. - // See https://aka.ms/dotnet/aspire/healthchecks for details before enabling these endpoints in non-development environments. - if (app.Environment.IsDevelopment()) - { - // All health checks must pass for app to be considered ready to accept traffic after starting - app.MapHealthChecks("/health"); - - // Only health checks tagged with the "live" tag must pass for app to be considered alive - app.MapHealthChecks("/alive", new HealthCheckOptions - { - Predicate = r => r.Tags.Contains("live") - }); - } - - return app; - } -} -```` - -## File: src/tools/customer-query/AITravelAgent.sln +using Microsoft.AspNetCore.Builder; +using Microsoft.AspNetCore.Diagnostics.HealthChecks; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Diagnostics.HealthChecks; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.ServiceDiscovery; +using OpenTelemetry; +using OpenTelemetry.Metrics; +using OpenTelemetry.Trace; + +namespace Microsoft.Extensions.Hosting; + +// Adds common .NET Aspire services: service discovery, resilience, health checks, and OpenTelemetry. +// This project should be referenced by each service project in your solution. +// To learn more about using this project, see https://aka.ms/dotnet/aspire/service-defaults +public static class Extensions +{ + public static TBuilder AddServiceDefaults(this TBuilder builder) where TBuilder : IHostApplicationBuilder + { + builder.ConfigureOpenTelemetry(); + + builder.AddDefaultHealthChecks(); + + builder.Services.AddServiceDiscovery(); + + builder.Services.ConfigureHttpClientDefaults(http => + { + // Turn on resilience by default + http.AddStandardResilienceHandler(); + + // Turn on service discovery by default + http.AddServiceDiscovery(); + }); + + // Uncomment the following to restrict the allowed schemes for service discovery. + // builder.Services.Configure(options => + // { + // options.AllowedSchemes = ["https"]; + // }); + + return builder; + } + + public static TBuilder ConfigureOpenTelemetry(this TBuilder builder) where TBuilder : IHostApplicationBuilder + { + builder.Logging.AddOpenTelemetry(logging => + { + logging.IncludeFormattedMessage = true; + logging.IncludeScopes = true; + }); + + builder.Services.AddOpenTelemetry() + .WithMetrics(metrics => + { + metrics.AddAspNetCoreInstrumentation() + .AddHttpClientInstrumentation() + .AddRuntimeInstrumentation(); + }) + .WithTracing(tracing => + { + tracing.AddSource(builder.Environment.ApplicationName) + .AddAspNetCoreInstrumentation() + // Uncomment the following line to enable gRPC instrumentation (requires the OpenTelemetry.Instrumentation.GrpcNetClient package) + //.AddGrpcClientInstrumentation() + .AddHttpClientInstrumentation(); + }); + + builder.AddOpenTelemetryExporters(); + + return builder; + } + + private static TBuilder AddOpenTelemetryExporters(this TBuilder builder) where TBuilder : IHostApplicationBuilder + { + var useOtlpExporter = !string.IsNullOrWhiteSpace(builder.Configuration["OTEL_EXPORTER_OTLP_ENDPOINT"]); + + if (useOtlpExporter) + { + builder.Services.AddOpenTelemetry().UseOtlpExporter(); + } + + // Uncomment the following lines to enable the Azure Monitor exporter (requires the Azure.Monitor.OpenTelemetry.AspNetCore package) + //if (!string.IsNullOrEmpty(builder.Configuration["APPLICATIONINSIGHTS_CONNECTION_STRING"])) + //{ + // builder.Services.AddOpenTelemetry() + // .UseAzureMonitor(); + //} + + return builder; + } + + public static TBuilder AddDefaultHealthChecks(this TBuilder builder) where TBuilder : IHostApplicationBuilder + { + builder.Services.AddHealthChecks() + // Add a default liveness check to ensure app is responsive + .AddCheck("self", () => HealthCheckResult.Healthy(), ["live"]); + + return builder; + } + + public static WebApplication MapDefaultEndpoints(this WebApplication app) + { + // Adding health checks endpoints to applications in non-development environments has security implications. + // See https://aka.ms/dotnet/aspire/healthchecks for details before enabling these endpoints in non-development environments. + if (app.Environment.IsDevelopment()) + { + // All health checks must pass for app to be considered ready to accept traffic after starting + app.MapHealthChecks("/health"); + + // Only health checks tagged with the "live" tag must pass for app to be considered alive + app.MapHealthChecks("/alive", new HealthCheckOptions + { + Predicate = r => r.Tags.Contains("live") + }); + } + + return app; + } +} +```` + +## File: packages/tools/customer-query/AITravelAgent.sln ```` Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 17 @@ -747,13 +747,13 @@ Global EndGlobal ```` -## File: src/tools/destination-recommendation/.mvn/wrapper/maven-wrapper.properties +## File: packages/tools/destination-recommendation/.mvn/wrapper/maven-wrapper.properties ```` distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar ```` -## File: src/tools/destination-recommendation/.mvn/wrapper/MavenWrapperDownloader.java +## File: packages/tools/destination-recommendation/.mvn/wrapper/MavenWrapperDownloader.java ````java /* * Copyright 2007-present the original author or authors. @@ -874,7 +874,7 @@ public class MavenWrapperDownloader { } ```` -## File: src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/config/StartupConfig.java +## File: packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/config/StartupConfig.java ````java package com.microsoft.mcp.sample.server.config; @@ -919,7 +919,7 @@ public class StartupConfig { } ```` -## File: src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/controller/HealthController.java +## File: packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/controller/HealthController.java ````java package com.microsoft.mcp.sample.server.controller; @@ -985,7 +985,7 @@ public class HealthController { } ```` -## File: src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/exception/GlobalExceptionHandler.java +## File: packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/exception/GlobalExceptionHandler.java ````java package com.microsoft.mcp.sample.server.exception; @@ -1061,7 +1061,7 @@ public class GlobalExceptionHandler { } ```` -## File: src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/ActivityType.java +## File: packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/ActivityType.java ````java package com.microsoft.mcp.sample.server.model; @@ -1079,7 +1079,7 @@ public enum ActivityType { } ```` -## File: src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/BudgetCategory.java +## File: packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/BudgetCategory.java ````java package com.microsoft.mcp.sample.server.model; @@ -1093,7 +1093,7 @@ public enum BudgetCategory { } ```` -## File: src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/PreferenceRequest.java +## File: packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/PreferenceRequest.java ````java package com.microsoft.mcp.sample.server.model; @@ -1166,7 +1166,7 @@ public class PreferenceRequest { } ```` -## File: src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/Season.java +## File: packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/Season.java ````java package com.microsoft.mcp.sample.server.model; @@ -1182,7 +1182,7 @@ public enum Season { } ```` -## File: src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/service/DestinationService.java +## File: packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/service/DestinationService.java ````java package com.microsoft.mcp.sample.server.service; @@ -1449,7 +1449,7 @@ public class DestinationService { } ```` -## File: src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/McpServerApplication.java +## File: packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/McpServerApplication.java ````java package com.microsoft.mcp.sample.server; @@ -1476,7 +1476,7 @@ public class McpServerApplication { } ```` -## File: src/tools/destination-recommendation/src/main/resources/banner.txt +## File: packages/tools/destination-recommendation/src/main/resources/banner.txt ```` _____ _ _ _ _ | __ \ | | (_) | | (_) @@ -1489,7 +1489,7 @@ _____ _ _ _ _ Spring AI MCP-enabled Travel Assistant ```` -## File: src/tools/destination-recommendation/src/test/java/com/microsoft/mcp/sample/client/SampleClient.java +## File: packages/tools/destination-recommendation/src/test/java/com/microsoft/mcp/sample/client/SampleClient.java ````java package com.microsoft.mcp.sample.client; @@ -1529,7 +1529,7 @@ public class SampleClient { } ```` -## File: src/tools/destination-recommendation/.gitignore +## File: packages/tools/destination-recommendation/.gitignore ```` # Compiled class files *.class @@ -1612,7 +1612,7 @@ bin/ Thumbs.db ```` -## File: src/tools/destination-recommendation/Dockerfile +## File: packages/tools/destination-recommendation/Dockerfile ```` # Build stage FROM maven:3.9.9-eclipse-temurin-24-noble AS build @@ -1640,7 +1640,7 @@ EXPOSE 8080 ENTRYPOINT ["java", "-jar", "/app/application.jar"] ```` -## File: src/tools/destination-recommendation/pom.xml +## File: packages/tools/destination-recommendation/pom.xml ````xml ```` -## File: src/tools/itinerary-planning/src/app.py +## File: packages/tools/itinerary-planning/src/app.py ````python import uvicorn from starlette.applications import Starlette @@ -1770,7 +1770,7 @@ if __name__ == "__main__": run() ```` -## File: src/tools/itinerary-planning/Dockerfile +## File: packages/tools/itinerary-planning/Dockerfile ```` FROM python:3.13-slim-bookworm @@ -1799,7 +1799,7 @@ EXPOSE 8000 CMD ["uv", "run", "start"] ```` -## File: src/tools/model-inference/Dockerfile +## File: packages/tools/model-inference/Dockerfile ```` # Use an ultra-lightweight base image FROM alpine:latest @@ -1808,7 +1808,7 @@ FROM alpine:latest CMD ["echo", "Hello from model-inference!"] ```` -## File: src/tools/web-search/Dockerfile +## File: packages/tools/web-search/Dockerfile ```` # Use an ultra-lightweight base image FROM alpine:latest @@ -1839,48 +1839,48 @@ echo "Running post-deployment script for AI Travel Agents application..." ########################################################################## echo ">> Creating .env file for the API service..." -if [ ! -f ./src/api/.env ]; then - echo "# File automatically generated on $(date)" > ./src/api/.env - echo "# See .env.sample for more information" >> ./src/api/.env +if [ ! -f ./packages/api/.env ]; then + echo "# File automatically generated on $(date)" > ./packages/api/.env + echo "# See .env.sample for more information" >> ./packages/api/.env echo "" AZURE_OPENAI_ENDPOINT=$(azd env get-value AZURE_OPENAI_ENDPOINT) - echo "AZURE_OPENAI_ENDPOINT=\"$AZURE_OPENAI_ENDPOINT\"" >> ./src/api/.env + echo "AZURE_OPENAI_ENDPOINT=\"$AZURE_OPENAI_ENDPOINT\"" >> ./packages/api/.env echo "" - echo "LLM_PROVIDER=azure-openai" >> ./src/api/.env + echo "LLM_PROVIDER=azure-openai" >> ./packages/api/.env echo "" - echo "AZURE_OPENAI_DEPLOYMENT=gpt-4o-mini" >> ./src/api/.env + echo "AZURE_OPENAI_DEPLOYMENT=gpt-4o-mini" >> ./packages/api/.env echo "" - echo "MCP_CUSTOMER_QUERY_URL=http://localhost:8080" >> ./src/api/.env - echo "MCP_DESTINATION_RECOMMENDATION_URL=http://localhost:5002" >> ./src/api/.env - echo "MCP_ITINERARY_PLANNING_URL=http://localhost:5003" >> ./src/api/.env - echo "MCP_CODE_EVALUATION_URL=http://localhost:5004" >> ./src/api/.env - echo "MCP_MODEL_INFERENCE_URL=http://localhost:5005" >> ./src/api/.env - echo "MCP_WEB_SEARCH_URL=http://localhost:5006" >> ./src/api/.env - echo "MCP_ECHO_PING_URL=http://localhost:5007" >> ./src/api/.env - echo "MCP_ECHO_PING_ACCESS_TOKEN=123-this-is-a-fake-token-please-use-a-token-provider" >> ./src/api/.env + echo "MCP_CUSTOMER_QUERY_URL=http://localhost:8080" >> ./packages/api/.env + echo "MCP_DESTINATION_RECOMMENDATION_URL=http://localhost:5002" >> ./packages/api/.env + echo "MCP_ITINERARY_PLANNING_URL=http://localhost:5003" >> ./packages/api/.env + echo "MCP_CODE_EVALUATION_URL=http://localhost:5004" >> ./packages/api/.env + echo "MCP_MODEL_INFERENCE_URL=http://localhost:5005" >> ./packages/api/.env + echo "MCP_WEB_SEARCH_URL=http://localhost:5006" >> ./packages/api/.env + echo "MCP_ECHO_PING_URL=http://localhost:5007" >> ./packages/api/.env + echo "MCP_ECHO_PING_ACCESS_TOKEN=123-this-is-a-fake-token-please-use-a-token-provider" >> ./packages/api/.env echo "" - echo "OTEL_SERVICE_NAME=api" >> ./src/api/.env - echo "OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889" >> ./src/api/.env - echo "OTEL_EXPORTER_OTLP_HEADERS=header-value" >> ./src/api/.env + echo "OTEL_SERVICE_NAME=api" >> ./packages/api/.env + echo "OTEL_EXPORTER_OTLP_ENDPOINT=http://aspire-dashboard:18889" >> ./packages/api/.env + echo "OTEL_EXPORTER_OTLP_HEADERS=header-value" >> ./packages/api/.env fi # Set overrides for docker environment -if [ ! -f ./src/api/.env.docker ]; then - echo "# File automatically generated on $(date)" > ./src/api/.env.docker - echo "# See .env.sample for more information" >> ./src/api/.env.docker +if [ ! -f ./packages/api/.env.docker ]; then + echo "# File automatically generated on $(date)" > ./packages/api/.env.docker + echo "# See .env.sample for more information" >> ./packages/api/.env.docker echo "" - echo "MCP_CUSTOMER_QUERY_URL=http://tool-customer-query:8080" >> ./src/api/.env.docker - echo "MCP_DESTINATION_RECOMMENDATION_URL=http://tool-destination-recommendation:5002" >> ./src/api/.env.docker - echo "MCP_ITINERARY_PLANNING_URL=http://tool-itinerary-planning:5003" >> ./src/api/.env.docker - echo "MCP_CODE_EVALUATION_URL=http://tool-code-evaluation:5004" >> ./src/api/.env.docker - echo "MCP_MODEL_INFERENCE_URL=http://tool-model-inference:5005" >> ./src/api/.env.docker - echo "MCP_WEB_SEARCH_URL=http://tool-web-search:5006" >> ./src/api/.env.docker - echo "MCP_ECHO_PING_URL=http://tool-echo-ping:5007" >> ./src/api/.env.docker + echo "MCP_CUSTOMER_QUERY_URL=http://tool-customer-query:8080" >> ./packages/api/.env.docker + echo "MCP_DESTINATION_RECOMMENDATION_URL=http://tool-destination-recommendation:5002" >> ./packages/api/.env.docker + echo "MCP_ITINERARY_PLANNING_URL=http://tool-itinerary-planning:5003" >> ./packages/api/.env.docker + echo "MCP_CODE_EVALUATION_URL=http://tool-code-evaluation:5004" >> ./packages/api/.env.docker + echo "MCP_MODEL_INFERENCE_URL=http://tool-model-inference:5005" >> ./packages/api/.env.docker + echo "MCP_WEB_SEARCH_URL=http://tool-web-search:5006" >> ./packages/api/.env.docker + echo "MCP_ECHO_PING_URL=http://tool-echo-ping:5007" >> ./packages/api/.env.docker fi # Install dependencies for the API service echo ">> Installing dependencies for the API service..." -if [ ! -d ./src/api/node_modules ]; then +if [ ! -d ./packages/api/node_modules ]; then echo "Installing dependencies for the API service..." npm ci --prefix=src/api --legacy-peer-deps else @@ -1892,20 +1892,20 @@ fi ########################################################################## echo ">> Creating .env file for the UI service..." -if [ ! -f ./src/ui/.env ]; then - echo "# File automatically generated on $(date)" > ./src/ui/.env - echo "# See .env.sample for more information" >> ./src/ui/.env +if [ ! -f ./packages/ui/.env ]; then + echo "# File automatically generated on $(date)" > ./packages/ui/.env + echo "# See .env.sample for more information" >> ./packages/ui/.env echo "" NG_API_URL=$(azd env get-value NG_API_URL) - echo "NG_API_URL=http://localhost:4000" >> ./src/ui/.env + echo "NG_API_URL=http://localhost:4000" >> ./packages/ui/.env echo "" - echo "# Uncomment the following line to use the provisioned endpoint for the API" >> ./src/ui/.env - echo "# NG_API_URL=\"$NG_API_URL\"" >> ./src/ui/.env + echo "# Uncomment the following line to use the provisioned endpoint for the API" >> ./packages/ui/.env + echo "# NG_API_URL=\"$NG_API_URL\"" >> ./packages/ui/.env fi # Install dependencies for the UI service echo ">> Installing dependencies for the UI service..." -if [ ! -d ./src/ui/node_modules ]; then +if [ ! -d ./packages/ui/node_modules ]; then echo "Installing dependencies for the UI service..." npm ci --prefix=src/ui else @@ -1920,25 +1920,25 @@ echo ">> Creating .env file for the MCP servers..." # for each tool copy the .env.sample (if it exists) to .env and .env.docker (dont overwrite existing .env files) for tool in $tools; do - if [ -f ./src/tools/$tool/.env.sample ]; then + if [ -f ./packages/tools/$tool/.env.sample ]; then echo "Creating .env file for $tool..." - if [ ! -f ./src/tools/$tool/.env ]; then - cp ./src/tools/$tool/.env.sample ./src/tools/$tool/.env - echo "# File automatically generated on $(date)" >> ./src/tools/$tool/.env - echo "# See .env.sample for more information" >> ./src/tools/$tool/.env + if [ ! -f ./packages/tools/$tool/.env ]; then + cp ./packages/tools/$tool/.env.sample ./packages/tools/$tool/.env + echo "# File automatically generated on $(date)" >> ./packages/tools/$tool/.env + echo "# See .env.sample for more information" >> ./packages/tools/$tool/.env fi # Create .env.docker file if it doesn't exist - if [ ! -f ./src/tools/$tool/.env.docker ]; then - cp ./src/tools/$tool/.env.sample ./src/tools/$tool/.env.docker - echo "# File automatically generated on $(date)" >> ./src/tools/$tool/.env.docker - echo "# See .env.sample for more information" >> ./src/tools/$tool/.env.docker + if [ ! -f ./packages/tools/$tool/.env.docker ]; then + cp ./packages/tools/$tool/.env.sample ./packages/tools/$tool/.env.docker + echo "# File automatically generated on $(date)" >> ./packages/tools/$tool/.env.docker + echo "# See .env.sample for more information" >> ./packages/tools/$tool/.env.docker fi # Install dependencies for the tool service echo ">> Installing dependencies for $tool service..." - if [ ! -d ./src/tools/$tool/node_modules ]; then - npm ci --prefix=./src/tools/$tool + if [ ! -d ./packages/tools/$tool/node_modules ]; then + npm ci --prefix=./packages/tools/$tool else echo "Dependencies for $tool service already installed." fi @@ -2258,7 +2258,7 @@ output containers array = exists ? existingApp.properties.template.containers : } ```` -## File: src/api/src/mcp/mcp-http-client.ts +## File: packages/api/src/mcp/mcp-http-client.ts ````typescript import EventEmitter from 'node:events'; import { Client } from '@modelcontextprotocol/sdk/client/index.js'; @@ -2327,7 +2327,7 @@ export class MCPClient extends EventEmitter { } ```` -## File: src/api/src/mcp/mcp-sse-client.ts +## File: packages/api/src/mcp/mcp-sse-client.ts ````typescript import { Client } from "@modelcontextprotocol/sdk/client/index.js"; import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js"; @@ -2418,7 +2418,7 @@ export class MCPClient { } ```` -## File: src/api/src/orchestrator/llamaindex/providers/foundry-local.ts +## File: packages/api/src/orchestrator/llamaindex/providers/foundry-local.ts ````typescript import { openai } from "llamaindex"; import { FoundryLocalManager } from "foundry-local-sdk"; @@ -2447,7 +2447,7 @@ export const llm = async () => { }; ```` -## File: src/api/src/orchestrator/llamaindex/providers/github-models.ts +## File: packages/api/src/orchestrator/llamaindex/providers/github-models.ts ````typescript import { openai } from "llamaindex"; @@ -2461,7 +2461,7 @@ export const llm = async () => { }; ```` -## File: src/api/src/utils/instrumentation.ts +## File: packages/api/src/utils/instrumentation.ts ````typescript import { metrics, trace } from "@opentelemetry/api"; import { getNodeAutoInstrumentations } from "@opentelemetry/auto-instrumentations-node"; @@ -2544,7 +2544,7 @@ function log( export { log, meter, tracer }; ```` -## File: src/api/Dockerfile +## File: packages/api/Dockerfile ```` FROM node:22.12-alpine AS builder @@ -2575,7 +2575,7 @@ RUN npm ci --ignore-scripts --omit-dev CMD ["node", "dist/index.js"] ```` -## File: src/tools/customer-query/AITravelAgent.CustomerQueryServer/Models/CustomerQueryAnalysisResult.cs +## File: packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Models/CustomerQueryAnalysisResult.cs ````csharp namespace AITravelAgent.CustomerQueryServer.Models; @@ -2589,7 +2589,7 @@ public class CustomerQueryAnalysisResult } ```` -## File: src/tools/customer-query/AITravelAgent.CustomerQueryServer/Tools/CustomerQueryTool.cs +## File: packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Tools/CustomerQueryTool.cs ````csharp using System.ComponentModel; @@ -2634,7 +2634,7 @@ public class CustomerQueryTool(ILogger logger) } ```` -## File: src/tools/customer-query/AITravelAgent.CustomerQueryServer/Tools/EchoTool.cs +## File: packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Tools/EchoTool.cs ````csharp using System.ComponentModel; @@ -2651,7 +2651,7 @@ public static class EchoTool } ```` -## File: src/tools/customer-query/AITravelAgent.CustomerQueryServer/Program.cs +## File: packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Program.cs ````csharp var builder = WebApplication.CreateBuilder(args); @@ -2671,7 +2671,7 @@ app.MapMcp(); await app.RunAsync(); ```` -## File: src/tools/customer-query/Dockerfile +## File: packages/tools/customer-query/Dockerfile ```` # Build stage FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build @@ -2696,7 +2696,7 @@ EXPOSE 8080 ENTRYPOINT ["dotnet", "AITravelAgent.CustomerQueryServer.dll"] ```` -## File: src/tools/destination-recommendation/src/test/java/com/microsoft/mcp/sample/client/ClientSse.java +## File: packages/tools/destination-recommendation/src/test/java/com/microsoft/mcp/sample/client/ClientSse.java ````java package com.microsoft.mcp.sample.client; @@ -2714,7 +2714,7 @@ public class ClientSse { } ```` -## File: src/tools/echo-ping/src/instrumentation.ts +## File: packages/tools/echo-ping/src/instrumentation.ts ````typescript import { metrics, trace } from "@opentelemetry/api"; import { getNodeAutoInstrumentations } from "@opentelemetry/auto-instrumentations-node"; @@ -2797,7 +2797,7 @@ function log( export { log, meter, tracer }; ```` -## File: src/tools/echo-ping/src/server.ts +## File: packages/tools/echo-ping/src/server.ts ````typescript import { Server } from '@modelcontextprotocol/sdk/server/index.js'; import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js'; @@ -2948,7 +2948,7 @@ export class EchoMCPServer { } ```` -## File: src/tools/echo-ping/src/token-provider.ts +## File: packages/tools/echo-ping/src/token-provider.ts ````typescript // This a sample token privider, in a real application this would be replaced with a more secure implementation @@ -2968,7 +2968,7 @@ export function tokenProvider() { } ```` -## File: src/tools/echo-ping/src/tools.ts +## File: packages/tools/echo-ping/src/tools.ts ````typescript import { log, tracer, meter } from "./instrumentation.js"; @@ -3015,7 +3015,7 @@ export const EchoTools = [ ]; ```` -## File: src/tools/itinerary-planning/src/app_routes.py +## File: packages/tools/itinerary-planning/src/app_routes.py ````python from mcp.server.sse import SseServerTransport from starlette.responses import HTMLResponse @@ -3049,7 +3049,7 @@ routes = [ ] ```` -## File: src/tools/itinerary-planning/src/mcp_server.py +## File: packages/tools/itinerary-planning/src/mcp_server.py ````python import random import re @@ -3398,7 +3398,7 @@ if __name__ == "__main__": mcp.run(transport="sse") ```` -## File: src/tools/itinerary-planning/pyproject.toml +## File: packages/tools/itinerary-planning/pyproject.toml ````toml [project] name = "itinerary-planning-mcp-server" @@ -3430,7 +3430,7 @@ lint.select = ["E", "F", "I", "UP", "A"] lint.ignore = ["D203"] ```` -## File: src/ui/.vscode/extensions.json +## File: packages/ui/.vscode/extensions.json ````json { // For more information, visit: https://go.microsoft.com/fwlink/?linkid=827846 @@ -3438,7 +3438,7 @@ lint.ignore = ["D203"] } ```` -## File: src/ui/.vscode/launch.json +## File: packages/ui/.vscode/launch.json ````json { // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 @@ -3462,7 +3462,7 @@ lint.ignore = ["D203"] } ```` -## File: src/ui/.vscode/tasks.json +## File: packages/ui/.vscode/tasks.json ````json { // For more information, visit: https://go.microsoft.com/fwlink/?LinkId=733558 @@ -3508,7 +3508,7 @@ lint.ignore = ["D203"] } ```` -## File: src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-content.component.ts +## File: packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-content.component.ts ````typescript import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, input } from '@angular/core'; import { BrnAccordionContentComponent } from '@spartan-ng/brain/accordion'; @@ -3545,7 +3545,7 @@ export class HlmAccordionContentComponent extends BrnAccordionContentComponent { } ```` -## File: src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-icon.directive.ts +## File: packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-icon.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { provideIcons } from '@ng-icons/core'; @@ -3570,7 +3570,7 @@ export class HlmAccordionIconDirective { } ```` -## File: src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-item.directive.ts +## File: packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-item.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { BrnAccordionItemDirective } from '@spartan-ng/brain/accordion'; @@ -3598,7 +3598,7 @@ export class HlmAccordionItemDirective { } ```` -## File: src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-trigger.directive.ts +## File: packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-trigger.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { BrnAccordionTriggerDirective } from '@spartan-ng/brain/accordion'; @@ -3625,7 +3625,7 @@ export class HlmAccordionTriggerDirective { } ```` -## File: src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion.directive.ts +## File: packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion.directive.ts ````typescript import { Directive, computed, inject, input } from '@angular/core'; import { BrnAccordionDirective } from '@spartan-ng/brain/accordion'; @@ -3650,7 +3650,7 @@ export class HlmAccordionDirective { } ```` -## File: src/ui/libs/ui/ui-accordion-helm/src/index.ts +## File: packages/ui/libs/ui/ui-accordion-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -3681,7 +3681,7 @@ export const HlmAccordionImports = [ export class HlmAccordionModule {} ```` -## File: src/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-description.directive.ts +## File: packages/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-description.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -3706,7 +3706,7 @@ export class HlmAlertDescriptionDirective { } ```` -## File: src/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-icon.directive.ts +## File: packages/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-icon.directive.ts ````typescript import { Directive } from '@angular/core'; import { provideHlmIconConfig } from '@spartan-ng/ui-icon-helm'; @@ -3719,7 +3719,7 @@ import { provideHlmIconConfig } from '@spartan-ng/ui-icon-helm'; export class HlmAlertIconDirective {} ```` -## File: src/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-title.directive.ts +## File: packages/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-title.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -3744,7 +3744,7 @@ export class HlmAlertTitleDirective { } ```` -## File: src/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert.directive.ts +## File: packages/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -3784,7 +3784,7 @@ export class HlmAlertDirective { } ```` -## File: src/ui/libs/ui/ui-alert-helm/src/index.ts +## File: packages/ui/libs/ui/ui-alert-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -3812,7 +3812,7 @@ export const HlmAlertImports = [ export class HlmAlertModule {} ```` -## File: src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-action-button.directive.ts +## File: packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-action-button.directive.ts ````typescript import { Directive } from '@angular/core'; import { HlmButtonDirective } from '@spartan-ng/ui-button-helm'; @@ -3825,7 +3825,7 @@ import { HlmButtonDirective } from '@spartan-ng/ui-button-helm'; export class HlmAlertDialogActionButtonDirective {} ```` -## File: src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-cancel-button.directive.ts +## File: packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-cancel-button.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -3847,7 +3847,7 @@ export class HlmAlertDialogCancelButtonDirective { } ```` -## File: src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-content.component.ts +## File: packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-content.component.ts ````typescript import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, input, signal } from '@angular/core'; import { hlm, injectExposesStateProvider } from '@spartan-ng/brain/core'; @@ -3880,7 +3880,7 @@ export class HlmAlertDialogContentComponent { } ```` -## File: src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-description.directive.ts +## File: packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-description.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { BrnAlertDialogDescriptionDirective } from '@spartan-ng/brain/alert-dialog'; @@ -3901,7 +3901,7 @@ export class HlmAlertDialogDescriptionDirective { } ```` -## File: src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-footer.component.ts +## File: packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-footer.component.ts ````typescript import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -3927,7 +3927,7 @@ export class HlmAlertDialogFooterComponent { } ```` -## File: src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-header.component.ts +## File: packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-header.component.ts ````typescript import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -3953,7 +3953,7 @@ export class HlmAlertDialogHeaderComponent { } ```` -## File: src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-overlay.directive.ts +## File: packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-overlay.directive.ts ````typescript import { Directive, computed, effect, input, untracked } from '@angular/core'; import { hlm, injectCustomClassSettable } from '@spartan-ng/brain/core'; @@ -3983,7 +3983,7 @@ export class HlmAlertDialogOverlayDirective { } ```` -## File: src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-title.directive.ts +## File: packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-title.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { BrnAlertDialogTitleDirective } from '@spartan-ng/brain/alert-dialog'; @@ -4004,7 +4004,7 @@ export class HlmAlertDialogTitleDirective { } ```` -## File: src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog.component.ts +## File: packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog.component.ts ````typescript import { ChangeDetectionStrategy, Component, forwardRef, ViewEncapsulation } from '@angular/core'; import { @@ -4038,7 +4038,7 @@ import { HlmAlertDialogOverlayDirective } from './hlm-alert-dialog-overlay.direc export class HlmAlertDialogComponent extends BrnAlertDialogComponent {} ```` -## File: src/ui/libs/ui/ui-alertdialog-helm/src/index.ts +## File: packages/ui/libs/ui/ui-alertdialog-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -4081,7 +4081,7 @@ export const HlmAlertDialogImports = [ export class HlmAlertDialogModule {} ```` -## File: src/ui/libs/ui/ui-aspectratio-helm/src/lib/helm-aspect-ratio.directive.spec.ts +## File: packages/ui/libs/ui/ui-aspectratio-helm/src/lib/helm-aspect-ratio.directive.spec.ts ````typescript import { Component } from '@angular/core'; import { type ComponentFixture, TestBed } from '@angular/core/testing'; @@ -4159,7 +4159,7 @@ describe('HelmAspectRatioDirective', () => { }); ```` -## File: src/ui/libs/ui/ui-aspectratio-helm/src/lib/helm-aspect-ratio.directive.ts +## File: packages/ui/libs/ui/ui-aspectratio-helm/src/lib/helm-aspect-ratio.directive.ts ````typescript import { type NumberInput, coerceNumberProperty } from '@angular/cdk/coercion'; import { type AfterViewInit, Directive, ElementRef, computed, inject, input } from '@angular/core'; @@ -4207,7 +4207,7 @@ export class HlmAspectRatioDirective implements AfterViewInit { } ```` -## File: src/ui/libs/ui/ui-aspectratio-helm/src/index.ts +## File: packages/ui/libs/ui/ui-aspectratio-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmAspectRatioDirective } from './lib/helm-aspect-ratio.directive'; @@ -4221,7 +4221,7 @@ export * from './lib/helm-aspect-ratio.directive'; export class HlmAspectRatioModule {} ```` -## File: src/ui/libs/ui/ui-avatar-helm/src/lib/fallback/hlm-avatar-fallback.directive.spec.ts +## File: packages/ui/libs/ui/ui-avatar-helm/src/lib/fallback/hlm-avatar-fallback.directive.spec.ts ````typescript import { Component, PLATFORM_ID } from '@angular/core'; import { type ComponentFixture, TestBed, fakeAsync } from '@angular/core/testing'; @@ -4295,7 +4295,7 @@ describe('HlmAvatarFallbackDirective', () => { }); ```` -## File: src/ui/libs/ui/ui-avatar-helm/src/lib/fallback/hlm-avatar-fallback.directive.ts +## File: packages/ui/libs/ui/ui-avatar-helm/src/lib/fallback/hlm-avatar-fallback.directive.ts ````typescript import { Directive, computed, inject } from '@angular/core'; import { BrnAvatarFallbackDirective, hexColorFor, isBright } from '@spartan-ng/brain/avatar'; @@ -4339,12 +4339,12 @@ export class HlmAvatarFallbackDirective { } ```` -## File: src/ui/libs/ui/ui-avatar-helm/src/lib/fallback/index.ts +## File: packages/ui/libs/ui/ui-avatar-helm/src/lib/fallback/index.ts ````typescript export * from './hlm-avatar-fallback.directive'; ```` -## File: src/ui/libs/ui/ui-avatar-helm/src/lib/image/hlm-avatar-image.directive.spec.ts +## File: packages/ui/libs/ui/ui-avatar-helm/src/lib/image/hlm-avatar-image.directive.spec.ts ````typescript import { Component } from '@angular/core'; import { type ComponentFixture, TestBed } from '@angular/core/testing'; @@ -4392,7 +4392,7 @@ describe('HlmAvatarImageDirective', () => { }); ```` -## File: src/ui/libs/ui/ui-avatar-helm/src/lib/image/hlm-avatar-image.directive.ts +## File: packages/ui/libs/ui/ui-avatar-helm/src/lib/image/hlm-avatar-image.directive.ts ````typescript import { Directive, computed, inject, input } from '@angular/core'; import { BrnAvatarImageDirective } from '@spartan-ng/brain/avatar'; @@ -4416,12 +4416,12 @@ export class HlmAvatarImageDirective { } ```` -## File: src/ui/libs/ui/ui-avatar-helm/src/lib/image/index.ts +## File: packages/ui/libs/ui/ui-avatar-helm/src/lib/image/index.ts ````typescript export * from './hlm-avatar-image.directive'; ```` -## File: src/ui/libs/ui/ui-avatar-helm/src/lib/hlm-avatar.component.spec.ts +## File: packages/ui/libs/ui/ui-avatar-helm/src/lib/hlm-avatar.component.spec.ts ````typescript import { Component, Input } from '@angular/core'; import { type ComponentFixture, TestBed } from '@angular/core/testing'; @@ -4490,7 +4490,7 @@ describe('HlmAvatarComponent', () => { }); ```` -## File: src/ui/libs/ui/ui-avatar-helm/src/index.ts +## File: packages/ui/libs/ui/ui-avatar-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -4511,7 +4511,7 @@ export const HlmAvatarImports = [HlmAvatarFallbackDirective, HlmAvatarImageDirec export class HlmAvatarModule {} ```` -## File: src/ui/libs/ui/ui-badge-helm/src/lib/hlm-badge.directive.ts +## File: packages/ui/libs/ui/ui-badge-helm/src/lib/hlm-badge.directive.ts ````typescript import type { BooleanInput } from '@angular/cdk/coercion'; import { Directive, booleanAttribute, computed, input } from '@angular/core'; @@ -4580,7 +4580,7 @@ export class HlmBadgeDirective { } ```` -## File: src/ui/libs/ui/ui-badge-helm/src/index.ts +## File: packages/ui/libs/ui/ui-badge-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmBadgeDirective } from './lib/hlm-badge.directive'; @@ -4594,7 +4594,7 @@ export * from './lib/hlm-badge.directive'; export class HlmBadgeModule {} ```` -## File: src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-ellipsis.component.ts +## File: packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-ellipsis.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { NgIcon, provideIcons } from '@ng-icons/core'; @@ -4621,7 +4621,7 @@ export class HlmBreadcrumbEllipsisComponent { } ```` -## File: src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-item.directive.ts +## File: packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-item.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -4641,7 +4641,7 @@ export class HlmBreadcrumbItemDirective { } ```` -## File: src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-link.directive.ts +## File: packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-link.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { RouterLink } from '@angular/router'; @@ -4681,7 +4681,7 @@ export class HlmBreadcrumbLinkDirective { } ```` -## File: src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-list.directive.ts +## File: packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-list.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -4703,7 +4703,7 @@ export class HlmBreadcrumbListDirective { } ```` -## File: src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-page.directive.ts +## File: packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-page.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -4726,7 +4726,7 @@ export class HlmBreadcrumbPageDirective { } ```` -## File: src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-separator.component.ts +## File: packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-separator.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { NgIcon, provideIcons } from '@ng-icons/core'; @@ -4760,7 +4760,7 @@ export class HlmBreadcrumbSeparatorComponent { } ```` -## File: src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb.directive.ts +## File: packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -4783,7 +4783,7 @@ export class HlmBreadcrumbDirective { } ```` -## File: src/ui/libs/ui/ui-breadcrumb-helm/src/index.ts +## File: packages/ui/libs/ui/ui-breadcrumb-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmBreadcrumbEllipsisComponent } from './lib/breadcrumb-ellipsis.component'; @@ -4819,7 +4819,7 @@ export const HlmBreadCrumbImports = [ export class HlmBreadCrumbModule {} ```` -## File: src/ui/libs/ui/ui-button-helm/src/lib/hlm-button.directive.ts +## File: packages/ui/libs/ui/ui-button-helm/src/lib/hlm-button.directive.ts ````typescript import { Directive, computed, input, signal } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -4883,7 +4883,7 @@ export class HlmButtonDirective { } ```` -## File: src/ui/libs/ui/ui-button-helm/src/lib/hlm-button.token.ts +## File: packages/ui/libs/ui/ui-button-helm/src/lib/hlm-button.token.ts ````typescript import { InjectionToken, ValueProvider, inject } from '@angular/core'; import type { ButtonVariants } from './hlm-button.directive'; @@ -4909,7 +4909,7 @@ export function injectBrnButtonConfig(): BrnButtonConfig { } ```` -## File: src/ui/libs/ui/ui-button-helm/src/index.ts +## File: packages/ui/libs/ui/ui-button-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmButtonDirective } from './lib/hlm-button.directive'; @@ -4924,7 +4924,7 @@ export * from './lib/hlm-button.directive'; export class HlmButtonModule {} ```` -## File: src/ui/libs/ui/ui-calendar-helm/src/lib/hlm-calendar.component.ts +## File: packages/ui/libs/ui/ui-calendar-helm/src/lib/hlm-calendar.component.ts ````typescript import { BooleanInput, NumberInput } from '@angular/cdk/coercion'; import { Component, booleanAttribute, computed, input, model, numberAttribute, viewChild } from '@angular/core'; @@ -5094,7 +5094,7 @@ export class HlmCalendarComponent { } ```` -## File: src/ui/libs/ui/ui-calendar-helm/src/index.ts +## File: packages/ui/libs/ui/ui-calendar-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmCalendarComponent } from './lib/hlm-calendar.component'; @@ -5108,7 +5108,7 @@ export * from './lib/hlm-calendar.component'; export class HlmCalendarModule {} ```` -## File: src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-content.directive.ts +## File: packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-content.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -5134,7 +5134,7 @@ export class HlmCardContentDirective { } ```` -## File: src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-description.directive.ts +## File: packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-description.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -5160,7 +5160,7 @@ export class HlmCardDescriptionDirective { } ```` -## File: src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-footer.directive.ts +## File: packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-footer.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -5195,7 +5195,7 @@ export class HlmCardFooterDirective { } ```` -## File: src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-header.directive.ts +## File: packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-header.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -5230,7 +5230,7 @@ export class HlmCardHeaderDirective { } ```` -## File: src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-title.directive.ts +## File: packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-title.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -5256,7 +5256,7 @@ export class HlmCardTitleDirective { } ```` -## File: src/ui/libs/ui/ui-card-helm/src/lib/hlm-card.directive.ts +## File: packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -5285,7 +5285,7 @@ export class HlmCardDirective { } ```` -## File: src/ui/libs/ui/ui-card-helm/src/index.ts +## File: packages/ui/libs/ui/ui-card-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -5319,7 +5319,7 @@ export const HlmCardImports = [ export class HlmCardModule {} ```` -## File: src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-content.component.ts +## File: packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-content.component.ts ````typescript import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, inject, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -5348,7 +5348,7 @@ export class HlmCarouselContentComponent { } ```` -## File: src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-item.component.ts +## File: packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-item.component.ts ````typescript import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, inject, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -5382,7 +5382,7 @@ export class HlmCarouselItemComponent { } ```` -## File: src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-next.component.ts +## File: packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-next.component.ts ````typescript import { ChangeDetectionStrategy, @@ -5443,7 +5443,7 @@ export class HlmCarouselNextComponent { } ```` -## File: src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-previous.component.ts +## File: packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-previous.component.ts ````typescript import { ChangeDetectionStrategy, @@ -5507,7 +5507,7 @@ export class HlmCarouselPreviousComponent { } ```` -## File: src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel.component.ts +## File: packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel.component.ts ````typescript import { ChangeDetectionStrategy, @@ -5608,7 +5608,7 @@ export class HlmCarouselComponent { } ```` -## File: src/ui/libs/ui/ui-carousel-helm/src/index.ts +## File: packages/ui/libs/ui/ui-carousel-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmCarouselContentComponent } from './lib/hlm-carousel-content.component'; @@ -5638,7 +5638,7 @@ export const HlmCarouselImports = [ export class HlmCarouselModule {} ```` -## File: src/ui/libs/ui/ui-checkbox-helm/src/lib/hlm-checkbox.component.ts +## File: packages/ui/libs/ui/ui-checkbox-helm/src/lib/hlm-checkbox.component.ts ````typescript import { Component, booleanAttribute, computed, forwardRef, input, model, output, signal } from '@angular/core'; import { NG_VALUE_ACCESSOR } from '@angular/forms'; @@ -5765,7 +5765,7 @@ export class HlmCheckboxComponent { type CheckboxValue = boolean | 'indeterminate'; ```` -## File: src/ui/libs/ui/ui-checkbox-helm/src/index.ts +## File: packages/ui/libs/ui/ui-checkbox-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -5781,7 +5781,7 @@ export const HlmCheckboxImports = [HlmCheckboxComponent] as const; export class HlmCheckboxModule {} ```` -## File: src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-dialog-close-button.directive.ts +## File: packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-dialog-close-button.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -5810,7 +5810,7 @@ export class HlmCommandDialogCloseButtonDirective { } ```` -## File: src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-dialog.directive.ts +## File: packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-dialog.directive.ts ````typescript import { Directive, ElementRef, Renderer2, computed, contentChild, effect, inject, input, signal } from '@angular/core'; import { BrnCommandSearchInputToken } from '@spartan-ng/brain/command'; @@ -5855,7 +5855,7 @@ export class HlmCommandDialogDirective { } ```` -## File: src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-empty.directive.ts +## File: packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-empty.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -5874,7 +5874,7 @@ export class HlmCommandEmptyDirective { } ```` -## File: src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-group-label.component.ts +## File: packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-group-label.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -5899,7 +5899,7 @@ export class HlmCommandGroupLabelComponent { } ```` -## File: src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-group.component.ts +## File: packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-group.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { BrnCommandGroupDirective } from '@spartan-ng/brain/command'; @@ -5930,7 +5930,7 @@ export class HlmCommandGroupComponent { } ```` -## File: src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-icon.directive.ts +## File: packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-icon.directive.ts ````typescript import { Directive } from '@angular/core'; import { provideHlmIconConfig } from '@spartan-ng/ui-icon-helm'; @@ -5946,7 +5946,7 @@ import { provideHlmIconConfig } from '@spartan-ng/ui-icon-helm'; export class HlmCommandIconDirective {} ```` -## File: src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-item.component.ts +## File: packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-item.component.ts ````typescript import { BooleanInput } from '@angular/cdk/coercion'; import { booleanAttribute, Component, computed, input, output } from '@angular/core'; @@ -5995,7 +5995,7 @@ export class HlmCommandItemComponent { } ```` -## File: src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-list.component.ts +## File: packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-list.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { BrnCommandListDirective } from '@spartan-ng/brain/command'; @@ -6026,7 +6026,7 @@ export class HlmCommandListComponent { } ```` -## File: src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-search-input.component.ts +## File: packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-search-input.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { BrnCommandSearchInputDirective } from '@spartan-ng/brain/command'; @@ -6055,7 +6055,7 @@ export class HlmCommandSearchInputComponent { } ```` -## File: src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-search.component.ts +## File: packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-search.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -6083,7 +6083,7 @@ export class HlmCommandSearchComponent { } ```` -## File: src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-separator.component.ts +## File: packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-separator.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -6106,7 +6106,7 @@ export class HlmCommandSeparatorComponent { } ```` -## File: src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-shortcut.component.ts +## File: packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-shortcut.component.ts ````typescript import { Component } from '@angular/core'; @@ -6121,7 +6121,7 @@ import { Component } from '@angular/core'; export class HlmCommandShortcutComponent {} ```` -## File: src/ui/libs/ui/ui-command-helm/src/lib/hlm-command.component.ts +## File: packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { BrnCommandDirective } from '@spartan-ng/brain/command'; @@ -6158,7 +6158,7 @@ export class HlmCommandComponent { } ```` -## File: src/ui/libs/ui/ui-command-helm/src/index.ts +## File: packages/ui/libs/ui/ui-command-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -6213,7 +6213,7 @@ export const HlmCommandImports = [ export class HlmCommandModule {} ```` -## File: src/ui/libs/ui/ui-datepicker-helm/src/lib/hlm-date-picker.component.ts +## File: packages/ui/libs/ui/ui-datepicker-helm/src/lib/hlm-date-picker.component.ts ````typescript import { BooleanInput } from '@angular/cdk/coercion'; import { booleanAttribute, Component, computed, forwardRef, input, model, output, signal } from '@angular/core'; @@ -6375,7 +6375,7 @@ export class HlmDatePickerComponent { } ```` -## File: src/ui/libs/ui/ui-datepicker-helm/src/lib/hlm-date-picker.token.ts +## File: packages/ui/libs/ui/ui-datepicker-helm/src/lib/hlm-date-picker.token.ts ````typescript import { inject, InjectionToken, ValueProvider } from '@angular/core'; @@ -6422,7 +6422,7 @@ export function injectHlmDatePickerConfig(): HlmDatePickerConfig { } ```` -## File: src/ui/libs/ui/ui-datepicker-helm/src/index.ts +## File: packages/ui/libs/ui/ui-datepicker-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmDatePickerComponent } from './lib/hlm-date-picker.component'; @@ -6438,7 +6438,7 @@ export * from './lib/hlm-date-picker.component'; export class HlmDatePickerModule {} ```` -## File: src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-close.directive.ts +## File: packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-close.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -6463,7 +6463,7 @@ export class HlmDialogCloseDirective { } ```` -## File: src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-content.component.ts +## File: packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-content.component.ts ````typescript import { NgComponentOutlet } from '@angular/common'; import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, inject, input } from '@angular/core'; @@ -6518,7 +6518,7 @@ export class HlmDialogContentComponent { } ```` -## File: src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-description.directive.ts +## File: packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-description.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -6539,7 +6539,7 @@ export class HlmDialogDescriptionDirective { } ```` -## File: src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-footer.component.ts +## File: packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-footer.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -6563,7 +6563,7 @@ export class HlmDialogFooterComponent { } ```` -## File: src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-header.component.ts +## File: packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-header.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -6587,7 +6587,7 @@ export class HlmDialogHeaderComponent { } ```` -## File: src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-overlay.directive.ts +## File: packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-overlay.directive.ts ````typescript import { Directive, computed, effect, input, untracked } from '@angular/core'; import { hlm, injectCustomClassSettable } from '@spartan-ng/brain/core'; @@ -6615,7 +6615,7 @@ export class HlmDialogOverlayDirective { } ```` -## File: src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-title.directive.ts +## File: packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-title.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -6636,7 +6636,7 @@ export class HlmDialogTitleDirective { } ```` -## File: src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog.component.ts +## File: packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog.component.ts ````typescript import { ChangeDetectionStrategy, Component, forwardRef, ViewEncapsulation } from '@angular/core'; import { @@ -6669,7 +6669,7 @@ import { HlmDialogOverlayDirective } from './hlm-dialog-overlay.directive'; export class HlmDialogComponent extends BrnDialogComponent {} ```` -## File: src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog.service.ts +## File: packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog.service.ts ````typescript import type { ComponentType } from '@angular/cdk/portal'; import { Injectable, type TemplateRef, inject } from '@angular/core'; @@ -6707,7 +6707,7 @@ export class HlmDialogService { } ```` -## File: src/ui/libs/ui/ui-dialog-helm/src/index.ts +## File: packages/ui/libs/ui/ui-dialog-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -6748,7 +6748,7 @@ export const HlmDialogImports = [ export class HlmDialogModule {} ```` -## File: src/ui/libs/ui/ui-formfield-helm/src/lib/form-field.spec.ts +## File: packages/ui/libs/ui/ui-formfield-helm/src/lib/form-field.spec.ts ````typescript /* eslint-disable @angular-eslint/component-class-suffix */ /* eslint-disable @angular-eslint/component-selector */ @@ -6888,7 +6888,7 @@ describe('Hlm Form Field Component', () => { }); ```` -## File: src/ui/libs/ui/ui-formfield-helm/src/lib/hlm-error.directive.ts +## File: packages/ui/libs/ui/ui-formfield-helm/src/lib/hlm-error.directive.ts ````typescript import { Directive } from '@angular/core'; @@ -6903,7 +6903,7 @@ import { Directive } from '@angular/core'; export class HlmErrorDirective {} ```` -## File: src/ui/libs/ui/ui-formfield-helm/src/lib/hlm-form-field.component.ts +## File: packages/ui/libs/ui/ui-formfield-helm/src/lib/hlm-form-field.component.ts ````typescript import { Component, computed, contentChild, contentChildren, effect } from '@angular/core'; import { BrnFormFieldControl } from '@spartan-ng/brain/form-field'; @@ -6947,7 +6947,7 @@ export class HlmFormFieldComponent { } ```` -## File: src/ui/libs/ui/ui-formfield-helm/src/lib/hlm-hint.directive.ts +## File: packages/ui/libs/ui/ui-formfield-helm/src/lib/hlm-hint.directive.ts ````typescript import { Directive } from '@angular/core'; @@ -6962,7 +6962,7 @@ import { Directive } from '@angular/core'; export class HlmHintDirective {} ```` -## File: src/ui/libs/ui/ui-formfield-helm/src/index.ts +## File: packages/ui/libs/ui/ui-formfield-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmErrorDirective } from './lib/hlm-error.directive'; @@ -6980,7 +6980,7 @@ export * from './lib/hlm-hint.directive'; export class HlmFormFieldModule {} ```` -## File: src/ui/libs/ui/ui-hovercard-helm/src/lib/hlm-hover-card-content.component.ts +## File: packages/ui/libs/ui/ui-hovercard-helm/src/lib/hlm-hover-card-content.component.ts ````typescript import { Component, ElementRef, Renderer2, computed, effect, inject, input, signal } from '@angular/core'; import { hlm, injectExposedSideProvider, injectExposesStateProvider } from '@spartan-ng/brain/core'; @@ -7021,7 +7021,7 @@ export class HlmHoverCardContentComponent { } ```` -## File: src/ui/libs/ui/ui-hovercard-helm/src/index.ts +## File: packages/ui/libs/ui/ui-hovercard-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmHoverCardContentComponent } from './lib/hlm-hover-card-content.component'; @@ -7037,7 +7037,7 @@ export const HlmHoverCardImports = [HlmHoverCardContentComponent] as const; export class HlmHoverCardModule {} ```` -## File: src/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.directive.spec.ts +## File: packages/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.directive.spec.ts ````typescript import { ChangeDetectionStrategy, Component, Input } from '@angular/core'; import { By } from '@angular/platform-browser'; @@ -7107,7 +7107,7 @@ describe('HlmIconDirective', () => { }); ```` -## File: src/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.directive.ts +## File: packages/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { injectHlmIconConfig } from './hlm-icon.token'; @@ -7147,7 +7147,7 @@ export class HlmIconDirective { } ```` -## File: src/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.token.ts +## File: packages/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.token.ts ````typescript import { InjectionToken, ValueProvider, inject } from '@angular/core'; import type { IconSize } from './hlm-icon.directive'; @@ -7171,7 +7171,7 @@ export function injectHlmIconConfig(): HlmIconConfig { } ```` -## File: src/ui/libs/ui/ui-icon-helm/src/index.ts +## File: packages/ui/libs/ui/ui-icon-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmIconDirective } from './lib/hlm-icon.directive'; @@ -7186,7 +7186,7 @@ export * from './lib/hlm-icon.token'; export class HlmIconModule {} ```` -## File: src/ui/libs/ui/ui-input-helm/src/lib/hlm-input-error.directive.ts +## File: packages/ui/libs/ui/ui-input-helm/src/lib/hlm-input-error.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -7212,7 +7212,7 @@ export class HlmInputErrorDirective { } ```` -## File: src/ui/libs/ui/ui-input-helm/src/lib/hlm-input.directive.ts +## File: packages/ui/libs/ui/ui-input-helm/src/lib/hlm-input.directive.ts ````typescript import { Directive, type DoCheck, Injector, computed, effect, inject, input, signal, untracked } from '@angular/core'; import { FormGroupDirective, NgControl, NgForm } from '@angular/forms'; @@ -7312,7 +7312,7 @@ export class HlmInputDirective implements BrnFormFieldControl, DoCheck { } ```` -## File: src/ui/libs/ui/ui-input-helm/src/index.ts +## File: packages/ui/libs/ui/ui-input-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmInputErrorDirective } from './lib/hlm-input-error.directive'; @@ -7328,7 +7328,7 @@ export * from './lib/hlm-input.directive'; export class HlmInputModule {} ```` -## File: src/ui/libs/ui/ui-label-helm/src/lib/hlm-label.directive.ts +## File: packages/ui/libs/ui/ui-label-helm/src/lib/hlm-label.directive.ts ````typescript import { Directive, computed, inject, input, signal } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -7405,7 +7405,7 @@ export class HlmLabelDirective { } ```` -## File: src/ui/libs/ui/ui-label-helm/src/index.ts +## File: packages/ui/libs/ui/ui-label-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmLabelDirective } from './lib/hlm-label.directive'; @@ -7419,7 +7419,7 @@ export * from './lib/hlm-label.directive'; export class HlmLabelModule {} ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-bar-item.directive.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-bar-item.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -7445,7 +7445,7 @@ export class HlmMenuBarItemDirective { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-bar.component.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-bar.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -7469,7 +7469,7 @@ export class HlmMenuBarComponent { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-group.component.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-group.component.ts ````typescript import { Component } from '@angular/core'; import { BrnMenuGroupDirective } from '@spartan-ng/brain/menu'; @@ -7488,7 +7488,7 @@ import { BrnMenuGroupDirective } from '@spartan-ng/brain/menu'; export class HlmMenuGroupComponent {} ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-check.component.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-check.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { NgIcon, provideIcons } from '@ng-icons/core'; @@ -7520,7 +7520,7 @@ export class HlmMenuItemCheckComponent { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-checkbox.directive.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-checkbox.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -7552,7 +7552,7 @@ export class HlmMenuItemCheckboxDirective { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-icon.directive.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-icon.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -7573,7 +7573,7 @@ export class HlmMenuItemIconDirective { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-radio.component.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-radio.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { NgIcon, provideIcons } from '@ng-icons/core'; @@ -7605,7 +7605,7 @@ export class HlmMenuItemRadioComponent { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-radio.directive.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-radio.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -7637,7 +7637,7 @@ export class HlmMenuItemRadioDirective { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-sub-indicator.component.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-sub-indicator.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { NgIcon, provideIcons } from '@ng-icons/core'; @@ -7663,7 +7663,7 @@ export class HlmMenuItemSubIndicatorComponent { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item.directive.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item.directive.ts ````typescript import { Directive, Input, booleanAttribute, computed, input, signal } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -7707,7 +7707,7 @@ export class HlmMenuItemDirective { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-label.component.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-label.component.ts ````typescript import { Component, Input, booleanAttribute, computed, input, signal } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -7737,7 +7737,7 @@ export class HlmMenuLabelComponent { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-separator.component.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-separator.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -7757,7 +7757,7 @@ export class HlmMenuSeparatorComponent { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-shortcut.component.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-shortcut.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -7781,7 +7781,7 @@ export class HlmMenuShortcutComponent { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu.component.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu.component.ts ````typescript import { Component, Input, computed, input, signal } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -7828,7 +7828,7 @@ export class HlmMenuComponent { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/lib/hlm-sub-menu.component.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-sub-menu.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -7857,7 +7857,7 @@ export class HlmSubMenuComponent { } ```` -## File: src/ui/libs/ui/ui-menu-helm/src/index.ts +## File: packages/ui/libs/ui/ui-menu-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -7932,7 +7932,7 @@ export class HlmMenuModule {} export class HlmMenuBarModule {} ```` -## File: src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-numbered-pagination.component.ts +## File: packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-numbered-pagination.component.ts ````typescript import { BooleanInput, NumberInput } from '@angular/cdk/coercion'; import { @@ -8204,7 +8204,7 @@ function calculatePageNumber(i: number, currentPage: number, paginationRange: nu } ```` -## File: src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-content.directive.ts +## File: packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-content.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -8230,7 +8230,7 @@ export class HlmPaginationContentDirective { } ```` -## File: src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-ellipsis.component.ts +## File: packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-ellipsis.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { NgIcon, provideIcons } from '@ng-icons/core'; @@ -8257,7 +8257,7 @@ export class HlmPaginationEllipsisComponent { } ```` -## File: src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-item.directive.ts +## File: packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-item.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -8285,7 +8285,7 @@ export class HlmPaginationItemDirective { } ```` -## File: src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-link.directive.ts +## File: packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-link.directive.ts ````typescript import { BooleanInput } from '@angular/cdk/coercion'; import { Directive, booleanAttribute, computed, input } from '@angular/core'; @@ -8347,7 +8347,7 @@ export class HlmPaginationLinkDirective { } ```` -## File: src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-next.component.ts +## File: packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-next.component.ts ````typescript import { BooleanInput } from '@angular/cdk/coercion'; import { booleanAttribute, Component, computed, input } from '@angular/core'; @@ -8397,7 +8397,7 @@ export class HlmPaginationNextComponent { } ```` -## File: src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-previous.component.ts +## File: packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-previous.component.ts ````typescript import { BooleanInput } from '@angular/cdk/coercion'; import { booleanAttribute, Component, computed, input } from '@angular/core'; @@ -8447,7 +8447,7 @@ export class HlmPaginationPreviousComponent { } ```` -## File: src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination.directive.ts +## File: packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -8478,7 +8478,7 @@ export class HlmPaginationDirective { } ```` -## File: src/ui/libs/ui/ui-pagination-helm/src/index.ts +## File: packages/ui/libs/ui/ui-pagination-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -8518,7 +8518,7 @@ export const HlmPaginationImports = [ export class HlmPaginationModule {} ```` -## File: src/ui/libs/ui/ui-popover-helm/src/lib/hlm-popover-close.directive.ts +## File: packages/ui/libs/ui/ui-popover-helm/src/lib/hlm-popover-close.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -8542,7 +8542,7 @@ export class HlmPopoverCloseDirective { } ```` -## File: src/ui/libs/ui/ui-popover-helm/src/lib/hlm-popover-content.directive.ts +## File: packages/ui/libs/ui/ui-popover-helm/src/lib/hlm-popover-content.directive.ts ````typescript import { Directive, ElementRef, Renderer2, computed, effect, inject, input, signal } from '@angular/core'; import { hlm, injectExposesStateProvider } from '@spartan-ng/brain/core'; @@ -8577,7 +8577,7 @@ export class HlmPopoverContentDirective { } ```` -## File: src/ui/libs/ui/ui-popover-helm/src/index.ts +## File: packages/ui/libs/ui/ui-popover-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -8596,7 +8596,7 @@ export const HlmPopoverImports = [HlmPopoverContentDirective, HlmPopoverCloseDir export class HlmPopoverModule {} ```` -## File: src/ui/libs/ui/ui-progress-helm/src/lib/hlm-progress-indicator.directive.ts +## File: packages/ui/libs/ui/ui-progress-helm/src/lib/hlm-progress-indicator.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -8628,7 +8628,7 @@ export class HlmProgressIndicatorDirective { } ```` -## File: src/ui/libs/ui/ui-progress-helm/src/lib/hlm-progress.directive.ts +## File: packages/ui/libs/ui/ui-progress-helm/src/lib/hlm-progress.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -8649,7 +8649,7 @@ export class HlmProgressDirective { } ```` -## File: src/ui/libs/ui/ui-progress-helm/src/index.ts +## File: packages/ui/libs/ui/ui-progress-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -8668,7 +8668,7 @@ export const HlmProgressImports = [HlmProgressDirective, HlmProgressIndicatorDir export class HlmProgressModule {} ```` -## File: src/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio-group.component.ts +## File: packages/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio-group.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -8695,7 +8695,7 @@ export class HlmRadioGroupComponent { } ```` -## File: src/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio-indicator.component.ts +## File: packages/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio-indicator.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -8723,7 +8723,7 @@ export class HlmRadioIndicatorComponent { } ```` -## File: src/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio.component.ts +## File: packages/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio.component.ts ````typescript import { booleanAttribute, Component, computed, input, output } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -8789,7 +8789,7 @@ export class HlmRadioComponent { } ```` -## File: src/ui/libs/ui/ui-radiogroup-helm/src/index.ts +## File: packages/ui/libs/ui/ui-radiogroup-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -8810,7 +8810,7 @@ export const HlmRadioGroupImports = [HlmRadioGroupComponent, HlmRadioComponent, export class HlmRadioGroupModule {} ```` -## File: src/ui/libs/ui/ui-scrollarea-helm/src/lib/hlm-scroll-area.directive.ts +## File: packages/ui/libs/ui/ui-scrollarea-helm/src/lib/hlm-scroll-area.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -8834,7 +8834,7 @@ export class HlmScrollAreaDirective { } ```` -## File: src/ui/libs/ui/ui-scrollarea-helm/src/index.ts +## File: packages/ui/libs/ui/ui-scrollarea-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmScrollAreaDirective } from './lib/hlm-scroll-area.directive'; @@ -8848,7 +8848,7 @@ export * from './lib/hlm-scroll-area.directive'; export class HlmScrollAreaModule {} ```` -## File: src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-content.directive.ts +## File: packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-content.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm, injectExposedSideProvider, injectExposesStateProvider } from '@spartan-ng/brain/core'; @@ -8878,7 +8878,7 @@ export class HlmSelectContentDirective { } ```` -## File: src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-group.directive.ts +## File: packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-group.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -8899,7 +8899,7 @@ export class HlmSelectGroupDirective { } ```` -## File: src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-label.directive.ts +## File: packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-label.directive.ts ````typescript import { Directive, computed, inject, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -8929,7 +8929,7 @@ export class HlmSelectLabelDirective { } ```` -## File: src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-option.component.ts +## File: packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-option.component.ts ````typescript import { ChangeDetectionStrategy, Component, computed, inject, input } from '@angular/core'; import { NgIcon, provideIcons } from '@ng-icons/core'; @@ -8973,7 +8973,7 @@ export class HlmSelectOptionComponent { } ```` -## File: src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-scroll-down.component.ts +## File: packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-scroll-down.component.ts ````typescript import { Component } from '@angular/core'; import { NgIcon, provideIcons } from '@ng-icons/core'; @@ -8994,7 +8994,7 @@ import { HlmIconDirective } from '@spartan-ng/ui-icon-helm'; export class HlmSelectScrollDownComponent {} ```` -## File: src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-scroll-up.component.ts +## File: packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-scroll-up.component.ts ````typescript import { Component } from '@angular/core'; import { NgIcon, provideIcons } from '@ng-icons/core'; @@ -9015,7 +9015,7 @@ import { HlmIconDirective } from '@spartan-ng/ui-icon-helm'; export class HlmSelectScrollUpComponent {} ```` -## File: src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-trigger.component.ts +## File: packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-trigger.component.ts ````typescript import { Component, computed, contentChild, inject, input } from '@angular/core'; import { NgIcon, provideIcons } from '@ng-icons/core'; @@ -9077,7 +9077,7 @@ export class HlmSelectTriggerComponent { } ```` -## File: src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-value.directive.ts +## File: packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-value.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9101,7 +9101,7 @@ export class HlmSelectValueDirective { } ```` -## File: src/ui/libs/ui/ui-select-helm/src/lib/hlm-select.directive.ts +## File: packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9120,7 +9120,7 @@ export class HlmSelectDirective { } ```` -## File: src/ui/libs/ui/ui-select-helm/src/index.ts +## File: packages/ui/libs/ui/ui-select-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmSelectContentDirective } from './lib/hlm-select-content.directive'; @@ -9162,7 +9162,7 @@ export const HlmSelectImports = [ export class HlmSelectModule {} ```` -## File: src/ui/libs/ui/ui-separator-helm/src/lib/hlm-separator.directive.ts +## File: packages/ui/libs/ui/ui-separator-helm/src/lib/hlm-separator.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9189,7 +9189,7 @@ export class HlmSeparatorDirective { } ```` -## File: src/ui/libs/ui/ui-separator-helm/src/index.ts +## File: packages/ui/libs/ui/ui-separator-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmSeparatorDirective } from './lib/hlm-separator.directive'; @@ -9203,7 +9203,7 @@ export * from './lib/hlm-separator.directive'; export class HlmSeparatorModule {} ```` -## File: src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-close.directive.ts +## File: packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-close.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9227,7 +9227,7 @@ export class HlmSheetCloseDirective { } ```` -## File: src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-content.component.ts +## File: packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-content.component.ts ````typescript import { Component, ElementRef, Renderer2, computed, effect, inject, input, signal } from '@angular/core'; import { NgIcon, provideIcons } from '@ng-icons/core'; @@ -9292,7 +9292,7 @@ export class HlmSheetContentComponent { } ```` -## File: src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-description.directive.ts +## File: packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-description.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9313,7 +9313,7 @@ export class HlmSheetDescriptionDirective { } ```` -## File: src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-footer.component.ts +## File: packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-footer.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9337,7 +9337,7 @@ export class HlmSheetFooterComponent { } ```` -## File: src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-header.component.ts +## File: packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-header.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9359,7 +9359,7 @@ export class HlmSheetHeaderComponent { } ```` -## File: src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-overlay.directive.ts +## File: packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-overlay.directive.ts ````typescript import { Directive, computed, effect, input, untracked } from '@angular/core'; import { hlm, injectCustomClassSettable } from '@spartan-ng/brain/core'; @@ -9391,7 +9391,7 @@ export class HlmSheetOverlayDirective { } ```` -## File: src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-title.directive.ts +## File: packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-title.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9412,7 +9412,7 @@ export class HlmSheetTitleDirective { } ```` -## File: src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet.component.ts +## File: packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet.component.ts ````typescript import { ChangeDetectionStrategy, Component, forwardRef, ViewEncapsulation } from '@angular/core'; import { BrnDialogComponent, provideBrnDialogDefaultOptions } from '@spartan-ng/brain/dialog'; @@ -9446,7 +9446,7 @@ import { HlmSheetOverlayDirective } from './hlm-sheet-overlay.directive'; export class HlmSheetComponent extends BrnSheetComponent {} ```` -## File: src/ui/libs/ui/ui-sheet-helm/src/index.ts +## File: packages/ui/libs/ui/ui-sheet-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -9486,7 +9486,7 @@ export const HlmSheetImports = [ export class HlmSheetModule {} ```` -## File: src/ui/libs/ui/ui-skeleton-helm/src/lib/hlm-skeleton.component.ts +## File: packages/ui/libs/ui/ui-skeleton-helm/src/lib/hlm-skeleton.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9506,7 +9506,7 @@ export class HlmSkeletonComponent { } ```` -## File: src/ui/libs/ui/ui-skeleton-helm/src/index.ts +## File: packages/ui/libs/ui/ui-skeleton-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmSkeletonComponent } from './lib/hlm-skeleton.component'; @@ -9520,7 +9520,7 @@ export * from './lib/hlm-skeleton.component'; export class HlmSkeletonModule {} ```` -## File: src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-input.directive.ts +## File: packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-input.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9543,7 +9543,7 @@ export class HlmSliderInputDirective { } ```` -## File: src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-thumb.directive.ts +## File: packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-thumb.directive.ts ````typescript import { Directive, computed, inject, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9574,7 +9574,7 @@ export class HlmSliderThumbDirective { } ```` -## File: src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-tick-mark.directive.ts +## File: packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-tick-mark.directive.ts ````typescript import { Directive, computed, inject, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9607,7 +9607,7 @@ export class HlmSliderTickMarkDirective { } ```` -## File: src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-tick-marks.directive.ts +## File: packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-tick-marks.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9628,7 +9628,7 @@ export class HlmSliderTickMarksDirective { } ```` -## File: src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-active-fill.directive.ts +## File: packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-active-fill.directive.ts ````typescript import { Directive, computed, inject, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9658,7 +9658,7 @@ export class HlmSliderTrackActiveFillDirective { } ```` -## File: src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-active.directive.ts +## File: packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-active.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9682,7 +9682,7 @@ export class HlmSliderTrackActiveDirective { } ```` -## File: src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-inactive.directive.ts +## File: packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-inactive.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9703,7 +9703,7 @@ export class HlmSliderTrackInactiveDirective { } ```` -## File: src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track.component.ts +## File: packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track.component.ts ````typescript import { ChangeDetectionStrategy, Component, computed, inject, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9761,7 +9761,7 @@ export class HlmSliderTrackComponent { } ```` -## File: src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider.component.ts +## File: packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider.component.ts ````typescript import { ChangeDetectionStrategy, Component, computed, inject, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9793,7 +9793,7 @@ export class HlmSliderComponent { } ```` -## File: src/ui/libs/ui/ui-slider-helm/src/index.ts +## File: packages/ui/libs/ui/ui-slider-helm/src/index.ts ````typescript import { HlmSliderInputDirective } from './lib/hlm-slider-input.directive'; import { HlmSliderThumbDirective } from './lib/hlm-slider-thumb.directive'; @@ -9808,7 +9808,7 @@ export const HlmSliderImports = [ ] as const; ```` -## File: src/ui/libs/ui/ui-sonner-helm/src/lib/hlm-toaster.component.ts +## File: packages/ui/libs/ui/ui-sonner-helm/src/lib/hlm-toaster.component.ts ````typescript import { ChangeDetectionStrategy, Component, booleanAttribute, computed, input, numberAttribute } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9878,12 +9878,12 @@ export class HlmToasterComponent { } ```` -## File: src/ui/libs/ui/ui-sonner-helm/src/index.ts +## File: packages/ui/libs/ui/ui-sonner-helm/src/index.ts ````typescript export * from './lib/hlm-toaster.component'; ```` -## File: src/ui/libs/ui/ui-spinner-helm/src/lib/hlm-spinner.component.ts +## File: packages/ui/libs/ui/ui-spinner-helm/src/lib/hlm-spinner.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -9938,7 +9938,7 @@ export class HlmSpinnerComponent { } ```` -## File: src/ui/libs/ui/ui-spinner-helm/src/index.ts +## File: packages/ui/libs/ui/ui-spinner-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmSpinnerComponent } from './lib/hlm-spinner.component'; @@ -9952,7 +9952,7 @@ export * from './lib/hlm-spinner.component'; export class HlmSpinnerModule {} ```` -## File: src/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch-ng-model.component.ignore.spec.ts +## File: packages/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch-ng-model.component.ignore.spec.ts ````typescript import { Component, Input } from '@angular/core'; import { FormsModule } from '@angular/forms'; @@ -9988,7 +9988,7 @@ export class SwitchFormComponent { } ```` -## File: src/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch-thumb.directive.ts +## File: packages/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch-thumb.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -10013,7 +10013,7 @@ export class HlmSwitchThumbDirective { } ```` -## File: src/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch.component.ts +## File: packages/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch.component.ts ````typescript import { BooleanInput } from '@angular/cdk/coercion'; import { Component, booleanAttribute, computed, forwardRef, input, model, output, signal } from '@angular/core'; @@ -10123,7 +10123,7 @@ export class HlmSwitchComponent implements ControlValueAccessor { } ```` -## File: src/ui/libs/ui/ui-switch-helm/src/index.ts +## File: packages/ui/libs/ui/ui-switch-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -10141,7 +10141,7 @@ export const HlmSwitchImports = [HlmSwitchComponent, HlmSwitchThumbDirective] as export class HlmSwitchModule {} ```` -## File: src/ui/libs/ui/ui-table-helm/src/lib/hlm-caption.component.ts +## File: packages/ui/libs/ui/ui-table-helm/src/lib/hlm-caption.component.ts ````typescript import { ChangeDetectionStrategy, @@ -10200,7 +10200,7 @@ export class HlmCaptionComponent { } ```` -## File: src/ui/libs/ui/ui-table-helm/src/lib/hlm-table.component.ts +## File: packages/ui/libs/ui/ui-table-helm/src/lib/hlm-table.component.ts ````typescript import { ChangeDetectionStrategy, @@ -10250,7 +10250,7 @@ export class HlmTableComponent { } ```` -## File: src/ui/libs/ui/ui-table-helm/src/lib/hlm-table.directive.ts +## File: packages/ui/libs/ui/ui-table-helm/src/lib/hlm-table.directive.ts ````typescript import { Directive } from '@angular/core'; import { injectTableClassesSettable } from '@spartan-ng/brain/core'; @@ -10272,7 +10272,7 @@ export class HlmTableDirective { } ```` -## File: src/ui/libs/ui/ui-table-helm/src/lib/hlm-td.component.ts +## File: packages/ui/libs/ui/ui-table-helm/src/lib/hlm-td.component.ts ````typescript import { NgTemplateOutlet } from '@angular/common'; import { @@ -10320,7 +10320,7 @@ export class HlmTdComponent { } ```` -## File: src/ui/libs/ui/ui-table-helm/src/lib/hlm-th.component.ts +## File: packages/ui/libs/ui/ui-table-helm/src/lib/hlm-th.component.ts ````typescript import { NgTemplateOutlet } from '@angular/common'; import { @@ -10372,7 +10372,7 @@ export class HlmThComponent { } ```` -## File: src/ui/libs/ui/ui-table-helm/src/lib/hlm-trow.component.ts +## File: packages/ui/libs/ui/ui-table-helm/src/lib/hlm-trow.component.ts ````typescript import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -10402,7 +10402,7 @@ export class HlmTrowComponent { } ```` -## File: src/ui/libs/ui/ui-table-helm/src/index.ts +## File: packages/ui/libs/ui/ui-table-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -10436,7 +10436,7 @@ export const HlmTableImports = [ export class HlmTableModule {} ```` -## File: src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-content.directive.ts +## File: packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-content.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -10464,7 +10464,7 @@ export class HlmTabsContentDirective { } ```` -## File: src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-list.component.ts +## File: packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-list.component.ts ````typescript import { Component, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -10505,7 +10505,7 @@ export class HlmTabsListComponent { } ```` -## File: src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-paginated-list.component.ts +## File: packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-paginated-list.component.ts ````typescript import { CdkObserveContent } from '@angular/cdk/observers'; import { Component, type ElementRef, computed, contentChildren, input, viewChild } from '@angular/core'; @@ -10603,7 +10603,7 @@ export class HlmTabsPaginatedListComponent extends BrnTabsPaginatedListDirective } ```` -## File: src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-trigger.directive.ts +## File: packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-trigger.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -10631,7 +10631,7 @@ export class HlmTabsTriggerDirective { } ```` -## File: src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs.component.ts +## File: packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs.component.ts ````typescript import { Component, input } from '@angular/core'; import { BrnTabsDirective } from '@spartan-ng/brain/tabs'; @@ -10653,7 +10653,7 @@ export class HlmTabsComponent { } ```` -## File: src/ui/libs/ui/ui-tabs-helm/src/index.ts +## File: packages/ui/libs/ui/ui-tabs-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; @@ -10684,7 +10684,7 @@ export const HlmTabsImports = [ export class HlmTabsModule {} ```` -## File: src/ui/libs/ui/ui-toggle-helm/src/lib/hlm-toggle-group.directive.ts +## File: packages/ui/libs/ui/ui-toggle-helm/src/lib/hlm-toggle-group.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -10708,7 +10708,7 @@ export class HlmToggleGroupDirective { } ```` -## File: src/ui/libs/ui/ui-toggle-helm/src/lib/hlm-toggle.directive.ts +## File: packages/ui/libs/ui/ui-toggle-helm/src/lib/hlm-toggle.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -10754,7 +10754,7 @@ export class HlmToggleDirective { } ```` -## File: src/ui/libs/ui/ui-toggle-helm/src/index.ts +## File: packages/ui/libs/ui/ui-toggle-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmToggleGroupDirective } from './lib/hlm-toggle-group.directive'; @@ -10775,7 +10775,7 @@ export class HlmToggleModule {} export class HlmToggleGroupModule {} ```` -## File: src/ui/libs/ui/ui-tooltip-helm/src/lib/hlm-tooltip-trigger.directive.ts +## File: packages/ui/libs/ui/ui-tooltip-helm/src/lib/hlm-tooltip-trigger.directive.ts ````typescript import { Directive } from '@angular/core'; import { BrnTooltipTriggerDirective, provideBrnTooltipDefaultOptions } from '@spartan-ng/brain/tooltip'; @@ -10818,7 +10818,7 @@ const DEFAULT_TOOLTIP_CONTENT_CLASSES = export class HlmTooltipTriggerDirective {} ```` -## File: src/ui/libs/ui/ui-tooltip-helm/src/lib/hlm-tooltip.component.ts +## File: packages/ui/libs/ui/ui-tooltip-helm/src/lib/hlm-tooltip.component.ts ````typescript import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core'; import { BrnTooltipDirective } from '@spartan-ng/brain/tooltip'; @@ -10840,7 +10840,7 @@ import { BrnTooltipDirective } from '@spartan-ng/brain/tooltip'; export class HlmTooltipComponent {} ```` -## File: src/ui/libs/ui/ui-tooltip-helm/src/index.ts +## File: packages/ui/libs/ui/ui-tooltip-helm/src/index.ts ````typescript import { NgModule } from '@angular/core'; import { HlmTooltipTriggerDirective } from './lib/hlm-tooltip-trigger.directive'; @@ -10858,7 +10858,7 @@ export const HlmTooltipImports = [HlmTooltipComponent, HlmTooltipTriggerDirectiv export class HlmTooltipModule {} ```` -## File: src/ui/libs/ui/ui-typography-helm/src/lib/hlm-blockquote.directive.ts +## File: packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-blockquote.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -10879,7 +10879,7 @@ export class HlmBlockquoteDirective { } ```` -## File: src/ui/libs/ui/ui-typography-helm/src/lib/hlm-code.directive.ts +## File: packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-code.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -10900,7 +10900,7 @@ export class HlmCodeDirective { } ```` -## File: src/ui/libs/ui/ui-typography-helm/src/lib/hlm-h1.directive.ts +## File: packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-h1.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -10921,7 +10921,7 @@ export class HlmH1Directive { } ```` -## File: src/ui/libs/ui/ui-typography-helm/src/lib/hlm-h2.directive.ts +## File: packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-h2.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -10943,7 +10943,7 @@ export class HlmH2Directive { } ```` -## File: src/ui/libs/ui/ui-typography-helm/src/lib/hlm-h3.directive.ts +## File: packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-h3.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -10964,7 +10964,7 @@ export class HlmH3Directive { } ```` -## File: src/ui/libs/ui/ui-typography-helm/src/lib/hlm-h4.directive.ts +## File: packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-h4.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -10985,7 +10985,7 @@ export class HlmH4Directive { } ```` -## File: src/ui/libs/ui/ui-typography-helm/src/lib/hlm-large.directive.ts +## File: packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-large.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -11006,7 +11006,7 @@ export class HlmLargeDirective { } ```` -## File: src/ui/libs/ui/ui-typography-helm/src/lib/hlm-lead.directive.ts +## File: packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-lead.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -11027,7 +11027,7 @@ export class HlmLeadDirective { } ```` -## File: src/ui/libs/ui/ui-typography-helm/src/lib/hlm-muted.directive.ts +## File: packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-muted.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -11048,7 +11048,7 @@ export class HlmMutedDirective { } ```` -## File: src/ui/libs/ui/ui-typography-helm/src/lib/hlm-p.directive.ts +## File: packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-p.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -11069,7 +11069,7 @@ export class HlmPDirective { } ```` -## File: src/ui/libs/ui/ui-typography-helm/src/lib/hlm-small.directive.ts +## File: packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-small.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -11090,7 +11090,7 @@ export class HlmSmallDirective { } ```` -## File: src/ui/libs/ui/ui-typography-helm/src/lib/hlm-ul.directive.ts +## File: packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-ul.directive.ts ````typescript import { Directive, computed, input } from '@angular/core'; import { hlm } from '@spartan-ng/brain/core'; @@ -11111,7 +11111,7 @@ export class HlmUlDirective { } ```` -## File: src/ui/libs/ui/ui-typography-helm/src/index.ts +## File: packages/ui/libs/ui/ui-typography-helm/src/index.ts ````typescript export * from './lib/hlm-blockquote.directive'; export * from './lib/hlm-code.directive'; @@ -11127,7 +11127,7 @@ export * from './lib/hlm-small.directive'; export * from './lib/hlm-ul.directive'; ```` -## File: src/ui/src/app/chat-conversation/chat-conversation.component.spec.ts +## File: packages/ui/src/app/chat-conversation/chat-conversation.component.spec.ts ````typescript import { ComponentFixture, TestBed } from '@angular/core/testing'; @@ -11154,7 +11154,7 @@ describe('ChatConversationComponent', () => { }); ```` -## File: src/ui/src/app/components/alert/alert.component.ts +## File: packages/ui/src/app/components/alert/alert.component.ts ````typescript import { Component } from '@angular/core'; import { @@ -11192,7 +11192,7 @@ import { lucideBox } from '@ng-icons/lucide'; export class AlertComponent {} ```` -## File: src/ui/src/app/components/skeleton-preview/skeleton-preview.component.ts +## File: packages/ui/src/app/components/skeleton-preview/skeleton-preview.component.ts ````typescript import { Component } from '@angular/core'; import { HlmSkeletonComponent } from '@spartan-ng/ui-skeleton-helm'; @@ -11214,7 +11214,7 @@ import { HlmSkeletonComponent } from '@spartan-ng/ui-skeleton-helm'; export class SkeletonPreviewComponent {} ```` -## File: src/ui/src/app/components/theme-toggle/theme-toggle.component.ts +## File: packages/ui/src/app/components/theme-toggle/theme-toggle.component.ts ````typescript import { Component } from '@angular/core'; import { ThemeService } from '../../services/theme.service'; @@ -11290,7 +11290,7 @@ export class ThemeToggleComponent { } ```` -## File: src/ui/src/app/app.component.spec.ts +## File: packages/ui/src/app/app.component.spec.ts ````typescript import { TestBed } from '@angular/core/testing'; import { AppComponent } from './app.component'; @@ -11323,7 +11323,7 @@ describe('AppComponent', () => { }); ```` -## File: src/ui/src/app/app.component.ts +## File: packages/ui/src/app/app.component.ts ````typescript import { Component } from '@angular/core'; import { RouterOutlet } from '@angular/router'; @@ -11342,7 +11342,7 @@ export class AppComponent { } ```` -## File: src/ui/src/app/app.config.server.ts +## File: packages/ui/src/app/app.config.server.ts ````typescript import { mergeApplicationConfig, ApplicationConfig } from '@angular/core'; import { provideServerRendering } from '@angular/platform-server'; @@ -11360,7 +11360,7 @@ const serverConfig: ApplicationConfig = { export const config = mergeApplicationConfig(appConfig, serverConfig); ```` -## File: src/ui/src/app/app.routes.server.ts +## File: packages/ui/src/app/app.routes.server.ts ````typescript import { RenderMode, ServerRoute } from '@angular/ssr'; @@ -11372,14 +11372,14 @@ export const serverRoutes: ServerRoute[] = [ ]; ```` -## File: src/ui/src/app/app.routes.ts +## File: packages/ui/src/app/app.routes.ts ````typescript import { Routes } from '@angular/router'; export const routes: Routes = []; ```` -## File: src/ui/src/environments/environment.development.ts +## File: packages/ui/src/environments/environment.development.ts ````typescript export const environment = { production: false, @@ -11387,7 +11387,7 @@ export const environment = { }; ```` -## File: src/ui/src/env.d.ts +## File: packages/ui/src/env.d.ts ````typescript declare interface Env { readonly NODE_ENV: string; @@ -11399,7 +11399,7 @@ declare interface ImportMeta { } ```` -## File: src/ui/src/main.server.ts +## File: packages/ui/src/main.server.ts ````typescript import { bootstrapApplication } from '@angular/platform-browser'; import { AppComponent } from './app/app.component'; @@ -11410,7 +11410,7 @@ const bootstrap = () => bootstrapApplication(AppComponent, config); export default bootstrap; ```` -## File: src/ui/src/main.ts +## File: packages/ui/src/main.ts ````typescript import { bootstrapApplication } from '@angular/platform-browser'; import { appConfig } from './app/app.config'; @@ -11420,7 +11420,7 @@ bootstrapApplication(AppComponent, appConfig) .catch((err) => console.error(err)); ```` -## File: src/ui/src/server.ts +## File: packages/ui/src/server.ts ````typescript import { AngularNodeAppEngine, @@ -11490,7 +11490,7 @@ if (isMainModule(import.meta.url)) { export const reqHandler = createNodeRequestHandler(app); ```` -## File: src/ui/.editorconfig +## File: packages/ui/.editorconfig ```` # Editor configuration, see https://editorconfig.org root = true @@ -11511,7 +11511,7 @@ max_line_length = off trim_trailing_whitespace = false ```` -## File: src/ui/.gitignore +## File: packages/ui/.gitignore ```` # See https://docs.github.com/get-started/getting-started-with-git/ignoring-files for more about ignoring files. @@ -11557,14 +11557,14 @@ testem.log Thumbs.db ```` -## File: src/ui/components.json +## File: packages/ui/components.json ````json { "componentsPath": "libs/ui" } ```` -## File: src/ui/Dockerfile +## File: packages/ui/Dockerfile ```` FROM node:22-alpine @@ -11579,7 +11579,7 @@ RUN npm install CMD ["ng", "serve", "--host", "0.0.0.0"] ```` -## File: src/ui/tsconfig.app.json +## File: packages/ui/tsconfig.app.json ````json /* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */ /* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */ @@ -11602,7 +11602,7 @@ CMD ["ng", "serve", "--host", "0.0.0.0"] } ```` -## File: src/ui/tsconfig.spec.json +## File: packages/ui/tsconfig.spec.json ````json /* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */ /* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */ @@ -11621,13 +11621,13 @@ CMD ["ng", "serve", "--host", "0.0.0.0"] } ```` -## File: src/api/src/mcp/index.ts +## File: packages/api/src/mcp/index.ts ````typescript export { MCPClient as MCPSSEClient } from "./mcp-sse-client.js"; export { MCPClient as MCPHTTPClient } from "./mcp-http-client.js"; ```` -## File: src/tools/customer-query/AITravelAgent.CustomerQueryServer/AITravelAgent.CustomerQueryServer.csproj +## File: packages/tools/customer-query/AITravelAgent.CustomerQueryServer/AITravelAgent.CustomerQueryServer.csproj ```` @@ -11650,7 +11650,7 @@ export { MCPClient as MCPHTTPClient } from "./mcp-http-client.js"; ```` -## File: src/tools/echo-ping/Dockerfile +## File: packages/tools/echo-ping/Dockerfile ```` # Build stage FROM node:23-slim AS builder @@ -11675,7 +11675,7 @@ EXPOSE 3000 CMD ["node", "./dist/index.js"] ```` -## File: src/tools/echo-ping/package.json +## File: packages/tools/echo-ping/package.json ````json { "name": "tool-echo-ping", @@ -11730,7 +11730,7 @@ CMD ["node", "./dist/index.js"] } ```` -## File: src/ui/libs/ui/ui-avatar-helm/src/lib/hlm-avatar.component.ts +## File: packages/ui/libs/ui/ui-avatar-helm/src/lib/hlm-avatar.component.ts ````typescript import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, input } from '@angular/core'; import { BrnAvatarComponent } from '@spartan-ng/brain/avatar'; @@ -11779,7 +11779,7 @@ export class HlmAvatarComponent extends BrnAvatarComponent { } ```` -## File: src/ui/src/app/services/theme.service.ts +## File: packages/ui/src/app/services/theme.service.ts ````typescript import { Injectable, signal, WritableSignal, effect, PLATFORM_ID, Inject } from '@angular/core'; import { isPlatformBrowser } from '@angular/common'; @@ -11858,7 +11858,7 @@ export class ThemeService { } ```` -## File: src/ui/src/app/app.component.html +## File: packages/ui/src/app/app.component.html ````html
@@ -11869,7 +11869,7 @@ export class ThemeService { ```` -## File: src/ui/src/app/app.config.ts +## File: packages/ui/src/app/app.config.ts ````typescript import { ApplicationConfig, provideZoneChangeDetection } from '@angular/core'; import { provideRouter } from '@angular/router'; @@ -11886,7 +11886,7 @@ export const appConfig: ApplicationConfig = { }; ```` -## File: src/ui/src/environments/environment.ts +## File: packages/ui/src/environments/environment.ts ````typescript export const environment = { production: true, @@ -11894,7 +11894,7 @@ export const environment = { }; ```` -## File: src/ui/src/index.html +## File: packages/ui/src/index.html ````html @@ -11911,7 +11911,7 @@ export const environment = { ```` -## File: src/ui/Dockerfile.production +## File: packages/ui/Dockerfile.production ```` FROM node:22.16-alpine AS build @@ -11934,7 +11934,7 @@ EXPOSE 80 CMD ["nginx", "-g", "daemon off;"] ```` -## File: src/ui/tailwind.config.js +## File: packages/ui/tailwind.config.js ````javascript /** @type {import('tailwindcss').Config} */ module.exports = { @@ -12112,7 +12112,7 @@ output AZURE_TENANT_ID string = tenant().tenantId output MCP_ECHO_PING_ACCESS_TOKEN string = llamaIndexConfig.sampleAccessTokens.echo ```` -## File: src/api/src/orchestrator/llamaindex/providers/azure-openai.ts +## File: packages/api/src/orchestrator/llamaindex/providers/azure-openai.ts ````typescript import { openai } from "llamaindex"; import { @@ -12169,7 +12169,7 @@ export const llm = async () => { }; ```` -## File: src/api/src/orchestrator/llamaindex/providers/index.ts +## File: packages/api/src/orchestrator/llamaindex/providers/index.ts ````typescript import dotenv from "dotenv"; dotenv.config(); @@ -12198,7 +12198,7 @@ export const llm = async () => { }; ```` -## File: src/ui/src/styles.css +## File: packages/ui/src/styles.css ````css /* You can add global styles to this file, and also import other style files */ @import "@angular/cdk/overlay-prebuilt.css"; @@ -13019,7 +13019,7 @@ output NG_API_URL string = 'https://api.${containerAppsEnvironment.outputs.defau output AZURE_CLIENT_ID string = apiIdentity.outputs.clientId ```` -## File: src/api/package.json +## File: packages/api/package.json ````json { "name": "azure-ai-travel-agents-api", @@ -13069,7 +13069,7 @@ output AZURE_CLIENT_ID string = apiIdentity.outputs.clientId } ```` -## File: src/tools/echo-ping/src/index.ts +## File: packages/tools/echo-ping/src/index.ts ````typescript import dotenv from "dotenv"; dotenv.config(); @@ -13168,7 +13168,7 @@ process.on('SIGINT', async () => { }); ```` -## File: src/ui/src/app/chat-conversation/chat-conversation.component.css +## File: packages/ui/src/app/chat-conversation/chat-conversation.component.css ````css :host { display: flex; @@ -13197,7 +13197,7 @@ process.on('SIGINT', async () => { } ```` -## File: src/api/src/orchestrator/llamaindex/tools/index.ts +## File: packages/api/src/orchestrator/llamaindex/tools/index.ts ````typescript import { McpServerDefinition } from "../../../mcp/mcp-tools.js"; @@ -13283,7 +13283,7 @@ export const McpToolsConfig = (): { }); ```` -## File: src/ui/src/app/components/accordion/accordion.component.ts +## File: packages/ui/src/app/components/accordion/accordion.component.ts ````typescript import { Component, input } from '@angular/core'; import { NgIcon, provideIcons } from '@ng-icons/core'; @@ -13339,7 +13339,7 @@ export class AccordionPreviewComponent { } ```` -## File: src/api/src/mcp/mcp-tools.ts +## File: packages/api/src/mcp/mcp-tools.ts ````typescript import type { SSEClientTransportOptions } from "@modelcontextprotocol/sdk/client/sse.js"; import { MCPClient as MCPHTTPClient } from "./mcp-http-client.js"; @@ -13511,7 +13511,7 @@ services: - DOTNET_DASHBOARD_UNSECURED_ALLOW_ANONYMOUS=true ```` -## File: src/api/src/orchestrator/llamaindex/index.ts +## File: packages/api/src/orchestrator/llamaindex/index.ts ````typescript import dotenv from "dotenv"; dotenv.config(); @@ -13667,7 +13667,7 @@ export async function setupAgents(filteredTools: McpServerDefinition[] = []) { } ```` -## File: src/api/src/index.ts +## File: packages/api/src/index.ts ````typescript import dotenv from "dotenv"; dotenv.config(); @@ -13824,7 +13824,7 @@ app.listen(PORT, () => { }); ```` -## File: src/ui/src/app/services/api.service.ts +## File: packages/ui/src/app/services/api.service.ts ````typescript import { inject, Injectable, NgZone } from '@angular/core'; import { BehaviorSubject } from 'rxjs'; @@ -13976,7 +13976,7 @@ export class ApiService { } ```` -## File: src/ui/package.json +## File: packages/ui/package.json ````json { "name": "azure-ai-travel-agents-ui", @@ -14045,7 +14045,7 @@ export class ApiService { } ```` -## File: src/ui/src/app/chat-conversation/chat-conversation.service.ts +## File: packages/ui/src/app/chat-conversation/chat-conversation.service.ts ````typescript import { Injectable, signal } from '@angular/core'; import { toast } from 'ngx-sonner'; @@ -14269,7 +14269,7 @@ export class ChatService { } ```` -## File: src/ui/src/app/chat-conversation/chat-conversation.component.html +## File: packages/ui/src/app/chat-conversation/chat-conversation.component.html ````html
@@ -14518,7 +14518,7 @@ export class ChatService { ```` -## File: src/ui/src/app/chat-conversation/chat-conversation.component.ts +## File: packages/ui/src/app/chat-conversation/chat-conversation.component.ts ````typescript import { AsyncPipe, CommonModule, JsonPipe } from '@angular/common'; import { diff --git a/src/api-python/.dockerignore b/packages/api-python/.dockerignore similarity index 100% rename from src/api-python/.dockerignore rename to packages/api-python/.dockerignore diff --git a/src/api-python/.env.sample b/packages/api-python/.env.sample similarity index 100% rename from src/api-python/.env.sample rename to packages/api-python/.env.sample diff --git a/src/api-python/Dockerfile b/packages/api-python/Dockerfile similarity index 100% rename from src/api-python/Dockerfile rename to packages/api-python/Dockerfile diff --git a/src/api-python/README.md b/packages/api-python/README.md similarity index 99% rename from src/api-python/README.md rename to packages/api-python/README.md index 3cffab9b..4cbc688e 100644 --- a/src/api-python/README.md +++ b/packages/api-python/README.md @@ -316,7 +316,7 @@ async for event in workflow.run_stream(message): ## Project Structure ``` -src/api-python/ +packages/api-python/ ├── src/ │ ├── main.py # FastAPI application & endpoints │ ├── config.py # Configuration management diff --git a/src/api-python/pyproject.toml b/packages/api-python/pyproject.toml similarity index 100% rename from src/api-python/pyproject.toml rename to packages/api-python/pyproject.toml diff --git a/src/api-python/src/__init__.py b/packages/api-python/src/__init__.py similarity index 100% rename from src/api-python/src/__init__.py rename to packages/api-python/src/__init__.py diff --git a/src/api-python/src/config.py b/packages/api-python/src/config.py similarity index 100% rename from src/api-python/src/config.py rename to packages/api-python/src/config.py diff --git a/src/api-python/src/main.py b/packages/api-python/src/main.py similarity index 100% rename from src/api-python/src/main.py rename to packages/api-python/src/main.py diff --git a/src/api-python/src/orchestrator/__init__.py b/packages/api-python/src/orchestrator/__init__.py similarity index 100% rename from src/api-python/src/orchestrator/__init__.py rename to packages/api-python/src/orchestrator/__init__.py diff --git a/src/api-python/src/orchestrator/agents/__init__.py b/packages/api-python/src/orchestrator/agents/__init__.py similarity index 100% rename from src/api-python/src/orchestrator/agents/__init__.py rename to packages/api-python/src/orchestrator/agents/__init__.py diff --git a/src/api-python/src/orchestrator/agents/base_agent.py b/packages/api-python/src/orchestrator/agents/base_agent.py similarity index 100% rename from src/api-python/src/orchestrator/agents/base_agent.py rename to packages/api-python/src/orchestrator/agents/base_agent.py diff --git a/src/api-python/src/orchestrator/agents/specialized_agents.py b/packages/api-python/src/orchestrator/agents/specialized_agents.py similarity index 100% rename from src/api-python/src/orchestrator/agents/specialized_agents.py rename to packages/api-python/src/orchestrator/agents/specialized_agents.py diff --git a/src/api-python/src/orchestrator/agents/triage_agent.py b/packages/api-python/src/orchestrator/agents/triage_agent.py similarity index 100% rename from src/api-python/src/orchestrator/agents/triage_agent.py rename to packages/api-python/src/orchestrator/agents/triage_agent.py diff --git a/src/api-python/src/orchestrator/magentic_workflow.py b/packages/api-python/src/orchestrator/magentic_workflow.py similarity index 100% rename from src/api-python/src/orchestrator/magentic_workflow.py rename to packages/api-python/src/orchestrator/magentic_workflow.py diff --git a/src/api-python/src/orchestrator/providers/__init__.py b/packages/api-python/src/orchestrator/providers/__init__.py similarity index 100% rename from src/api-python/src/orchestrator/providers/__init__.py rename to packages/api-python/src/orchestrator/providers/__init__.py diff --git a/src/api-python/src/orchestrator/providers/azure_openai.py b/packages/api-python/src/orchestrator/providers/azure_openai.py similarity index 100% rename from src/api-python/src/orchestrator/providers/azure_openai.py rename to packages/api-python/src/orchestrator/providers/azure_openai.py diff --git a/src/api-python/src/orchestrator/providers/base.py b/packages/api-python/src/orchestrator/providers/base.py similarity index 87% rename from src/api-python/src/orchestrator/providers/base.py rename to packages/api-python/src/orchestrator/providers/base.py index 2890164b..88e5a465 100644 --- a/src/api-python/src/orchestrator/providers/base.py +++ b/packages/api-python/src/orchestrator/providers/base.py @@ -1,7 +1,7 @@ """LLM provider implementations using strategy pattern. This module implements the same strategy pattern as the TypeScript implementation -in src/api/src/orchestrator/llamaindex/providers, allowing selection between +in packages/api/src/orchestrator/llamaindex/providers, allowing selection between different LLM providers based on the LLM_PROVIDER environment variable. """ diff --git a/src/api-python/src/orchestrator/providers/docker_models.py b/packages/api-python/src/orchestrator/providers/docker_models.py similarity index 100% rename from src/api-python/src/orchestrator/providers/docker_models.py rename to packages/api-python/src/orchestrator/providers/docker_models.py diff --git a/src/api-python/src/orchestrator/providers/foundry_local.py b/packages/api-python/src/orchestrator/providers/foundry_local.py similarity index 100% rename from src/api-python/src/orchestrator/providers/foundry_local.py rename to packages/api-python/src/orchestrator/providers/foundry_local.py diff --git a/src/api-python/src/orchestrator/providers/github_models.py b/packages/api-python/src/orchestrator/providers/github_models.py similarity index 100% rename from src/api-python/src/orchestrator/providers/github_models.py rename to packages/api-python/src/orchestrator/providers/github_models.py diff --git a/src/api-python/src/orchestrator/providers/ollama_models.py b/packages/api-python/src/orchestrator/providers/ollama_models.py similarity index 100% rename from src/api-python/src/orchestrator/providers/ollama_models.py rename to packages/api-python/src/orchestrator/providers/ollama_models.py diff --git a/src/api-python/src/orchestrator/tools/README.md b/packages/api-python/src/orchestrator/tools/README.md similarity index 100% rename from src/api-python/src/orchestrator/tools/README.md rename to packages/api-python/src/orchestrator/tools/README.md diff --git a/src/api-python/src/orchestrator/tools/__init__.py b/packages/api-python/src/orchestrator/tools/__init__.py similarity index 100% rename from src/api-python/src/orchestrator/tools/__init__.py rename to packages/api-python/src/orchestrator/tools/__init__.py diff --git a/src/api-python/src/orchestrator/tools/examples.py b/packages/api-python/src/orchestrator/tools/examples.py similarity index 100% rename from src/api-python/src/orchestrator/tools/examples.py rename to packages/api-python/src/orchestrator/tools/examples.py diff --git a/src/api-python/src/orchestrator/tools/mcp_tool_wrapper.py b/packages/api-python/src/orchestrator/tools/mcp_tool_wrapper.py similarity index 100% rename from src/api-python/src/orchestrator/tools/mcp_tool_wrapper.py rename to packages/api-python/src/orchestrator/tools/mcp_tool_wrapper.py diff --git a/src/api-python/src/orchestrator/tools/tool_config.py b/packages/api-python/src/orchestrator/tools/tool_config.py similarity index 98% rename from src/api-python/src/orchestrator/tools/tool_config.py rename to packages/api-python/src/orchestrator/tools/tool_config.py index 90cf6153..1cd6ddbc 100644 --- a/src/api-python/src/orchestrator/tools/tool_config.py +++ b/packages/api-python/src/orchestrator/tools/tool_config.py @@ -40,7 +40,7 @@ def get_mcp_tools_config() -> dict[McpServerName, MCPServerDefinition]: """ Get MCP tools configuration following TypeScript implementation pattern. - Mirrors src/api/src/orchestrator/llamaindex/tools/index.ts + Mirrors packages/api/src/orchestrator/llamaindex/tools/index.ts Returns: Dictionary mapping server names to their configurations diff --git a/src/api-python/src/orchestrator/tools/tool_registry.py b/packages/api-python/src/orchestrator/tools/tool_registry.py similarity index 100% rename from src/api-python/src/orchestrator/tools/tool_registry.py rename to packages/api-python/src/orchestrator/tools/tool_registry.py diff --git a/src/api-python/src/orchestrator/workflow.py b/packages/api-python/src/orchestrator/workflow.py similarity index 100% rename from src/api-python/src/orchestrator/workflow.py rename to packages/api-python/src/orchestrator/workflow.py diff --git a/src/api-python/src/tests/__init__.py b/packages/api-python/src/tests/__init__.py similarity index 100% rename from src/api-python/src/tests/__init__.py rename to packages/api-python/src/tests/__init__.py diff --git a/src/api-python/src/tests/test_agents.py b/packages/api-python/src/tests/test_agents.py similarity index 100% rename from src/api-python/src/tests/test_agents.py rename to packages/api-python/src/tests/test_agents.py diff --git a/src/api-python/src/tests/test_config.py b/packages/api-python/src/tests/test_config.py similarity index 100% rename from src/api-python/src/tests/test_config.py rename to packages/api-python/src/tests/test_config.py diff --git a/src/api-python/src/tests/test_mcp_client.py b/packages/api-python/src/tests/test_mcp_client.py similarity index 100% rename from src/api-python/src/tests/test_mcp_client.py rename to packages/api-python/src/tests/test_mcp_client.py diff --git a/src/api-python/src/tests/test_mcp_graceful_degradation.py b/packages/api-python/src/tests/test_mcp_graceful_degradation.py similarity index 100% rename from src/api-python/src/tests/test_mcp_graceful_degradation.py rename to packages/api-python/src/tests/test_mcp_graceful_degradation.py diff --git a/src/api-python/src/tests/test_providers.py b/packages/api-python/src/tests/test_providers.py similarity index 100% rename from src/api-python/src/tests/test_providers.py rename to packages/api-python/src/tests/test_providers.py diff --git a/src/api-python/src/tests/test_workflow.py b/packages/api-python/src/tests/test_workflow.py similarity index 100% rename from src/api-python/src/tests/test_workflow.py rename to packages/api-python/src/tests/test_workflow.py diff --git a/src/api-python/src/utils/__init__.py b/packages/api-python/src/utils/__init__.py similarity index 100% rename from src/api-python/src/utils/__init__.py rename to packages/api-python/src/utils/__init__.py diff --git a/src/api-python/test.http b/packages/api-python/test.http similarity index 100% rename from src/api-python/test.http rename to packages/api-python/test.http diff --git a/src/api-python/test_magentic_simplified.py b/packages/api-python/test_magentic_simplified.py similarity index 100% rename from src/api-python/test_magentic_simplified.py rename to packages/api-python/test_magentic_simplified.py diff --git a/src/api-python/test_simplification.py b/packages/api-python/test_simplification.py similarity index 100% rename from src/api-python/test_simplification.py rename to packages/api-python/test_simplification.py diff --git a/src/api/.env.sample b/packages/api/.env.sample similarity index 100% rename from src/api/.env.sample rename to packages/api/.env.sample diff --git a/src/api/Dockerfile b/packages/api/Dockerfile similarity index 100% rename from src/api/Dockerfile rename to packages/api/Dockerfile diff --git a/src/api/package-lock.json b/packages/api/package-lock.json similarity index 100% rename from src/api/package-lock.json rename to packages/api/package-lock.json diff --git a/src/api/package.json b/packages/api/package.json similarity index 100% rename from src/api/package.json rename to packages/api/package.json diff --git a/src/api/readme.md b/packages/api/readme.md similarity index 100% rename from src/api/readme.md rename to packages/api/readme.md diff --git a/src/api/src/index.ts b/packages/api/src/index.ts similarity index 100% rename from src/api/src/index.ts rename to packages/api/src/index.ts diff --git a/src/api/src/mcp/index.ts b/packages/api/src/mcp/index.ts similarity index 100% rename from src/api/src/mcp/index.ts rename to packages/api/src/mcp/index.ts diff --git a/src/api/src/mcp/mcp-http-client.ts b/packages/api/src/mcp/mcp-http-client.ts similarity index 100% rename from src/api/src/mcp/mcp-http-client.ts rename to packages/api/src/mcp/mcp-http-client.ts diff --git a/src/api/src/mcp/mcp-sse-client.ts b/packages/api/src/mcp/mcp-sse-client.ts similarity index 100% rename from src/api/src/mcp/mcp-sse-client.ts rename to packages/api/src/mcp/mcp-sse-client.ts diff --git a/src/api/src/mcp/mcp-tools.ts b/packages/api/src/mcp/mcp-tools.ts similarity index 100% rename from src/api/src/mcp/mcp-tools.ts rename to packages/api/src/mcp/mcp-tools.ts diff --git a/src/api/src/orchestrator/llamaindex/index.ts b/packages/api/src/orchestrator/llamaindex/index.ts similarity index 100% rename from src/api/src/orchestrator/llamaindex/index.ts rename to packages/api/src/orchestrator/llamaindex/index.ts diff --git a/src/api/src/orchestrator/llamaindex/providers/azure-openai.ts b/packages/api/src/orchestrator/llamaindex/providers/azure-openai.ts similarity index 100% rename from src/api/src/orchestrator/llamaindex/providers/azure-openai.ts rename to packages/api/src/orchestrator/llamaindex/providers/azure-openai.ts diff --git a/src/api/src/orchestrator/llamaindex/providers/docker-models.ts b/packages/api/src/orchestrator/llamaindex/providers/docker-models.ts similarity index 100% rename from src/api/src/orchestrator/llamaindex/providers/docker-models.ts rename to packages/api/src/orchestrator/llamaindex/providers/docker-models.ts diff --git a/src/api/src/orchestrator/llamaindex/providers/foundry-local.ts b/packages/api/src/orchestrator/llamaindex/providers/foundry-local.ts similarity index 100% rename from src/api/src/orchestrator/llamaindex/providers/foundry-local.ts rename to packages/api/src/orchestrator/llamaindex/providers/foundry-local.ts diff --git a/src/api/src/orchestrator/llamaindex/providers/github-models.ts b/packages/api/src/orchestrator/llamaindex/providers/github-models.ts similarity index 100% rename from src/api/src/orchestrator/llamaindex/providers/github-models.ts rename to packages/api/src/orchestrator/llamaindex/providers/github-models.ts diff --git a/src/api/src/orchestrator/llamaindex/providers/index.ts b/packages/api/src/orchestrator/llamaindex/providers/index.ts similarity index 100% rename from src/api/src/orchestrator/llamaindex/providers/index.ts rename to packages/api/src/orchestrator/llamaindex/providers/index.ts diff --git a/src/api/src/orchestrator/llamaindex/providers/ollama-models.ts b/packages/api/src/orchestrator/llamaindex/providers/ollama-models.ts similarity index 100% rename from src/api/src/orchestrator/llamaindex/providers/ollama-models.ts rename to packages/api/src/orchestrator/llamaindex/providers/ollama-models.ts diff --git a/src/api/src/orchestrator/llamaindex/tools/index.ts b/packages/api/src/orchestrator/llamaindex/tools/index.ts similarity index 100% rename from src/api/src/orchestrator/llamaindex/tools/index.ts rename to packages/api/src/orchestrator/llamaindex/tools/index.ts diff --git a/src/api/src/utils/instrumentation.ts b/packages/api/src/utils/instrumentation.ts similarity index 100% rename from src/api/src/utils/instrumentation.ts rename to packages/api/src/utils/instrumentation.ts diff --git a/src/api/tsconfig.json b/packages/api/tsconfig.json similarity index 100% rename from src/api/tsconfig.json rename to packages/api/tsconfig.json diff --git a/src/docker-compose.yml b/packages/docker-compose.yml similarity index 100% rename from src/docker-compose.yml rename to packages/docker-compose.yml diff --git a/src/shared/.gitkeep b/packages/shared/.gitkeep similarity index 100% rename from src/shared/.gitkeep rename to packages/shared/.gitkeep diff --git a/src/tools/README.md b/packages/tools/README.md similarity index 100% rename from src/tools/README.md rename to packages/tools/README.md diff --git a/src/tools/code-evaluation/Dockerfile b/packages/tools/code-evaluation/Dockerfile similarity index 100% rename from src/tools/code-evaluation/Dockerfile rename to packages/tools/code-evaluation/Dockerfile diff --git a/src/tools/customer-query/AITravelAgent.CustomerQueryServer/AITravelAgent.CustomerQueryServer.csproj b/packages/tools/customer-query/AITravelAgent.CustomerQueryServer/AITravelAgent.CustomerQueryServer.csproj similarity index 100% rename from src/tools/customer-query/AITravelAgent.CustomerQueryServer/AITravelAgent.CustomerQueryServer.csproj rename to packages/tools/customer-query/AITravelAgent.CustomerQueryServer/AITravelAgent.CustomerQueryServer.csproj diff --git a/src/tools/customer-query/AITravelAgent.CustomerQueryServer/Models/CustomerQueryAnalysisResult.cs b/packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Models/CustomerQueryAnalysisResult.cs similarity index 100% rename from src/tools/customer-query/AITravelAgent.CustomerQueryServer/Models/CustomerQueryAnalysisResult.cs rename to packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Models/CustomerQueryAnalysisResult.cs diff --git a/src/tools/customer-query/AITravelAgent.CustomerQueryServer/Program.cs b/packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Program.cs similarity index 100% rename from src/tools/customer-query/AITravelAgent.CustomerQueryServer/Program.cs rename to packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Program.cs diff --git a/src/tools/customer-query/AITravelAgent.CustomerQueryServer/Properties/launchSettings.json b/packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Properties/launchSettings.json similarity index 100% rename from src/tools/customer-query/AITravelAgent.CustomerQueryServer/Properties/launchSettings.json rename to packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Properties/launchSettings.json diff --git a/src/tools/customer-query/AITravelAgent.CustomerQueryServer/Tools/CustomerQueryTool.cs b/packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Tools/CustomerQueryTool.cs similarity index 100% rename from src/tools/customer-query/AITravelAgent.CustomerQueryServer/Tools/CustomerQueryTool.cs rename to packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Tools/CustomerQueryTool.cs diff --git a/src/tools/customer-query/AITravelAgent.CustomerQueryServer/Tools/EchoTool.cs b/packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Tools/EchoTool.cs similarity index 100% rename from src/tools/customer-query/AITravelAgent.CustomerQueryServer/Tools/EchoTool.cs rename to packages/tools/customer-query/AITravelAgent.CustomerQueryServer/Tools/EchoTool.cs diff --git a/src/tools/customer-query/AITravelAgent.ServiceDefaults/AITravelAgent.ServiceDefaults.csproj b/packages/tools/customer-query/AITravelAgent.ServiceDefaults/AITravelAgent.ServiceDefaults.csproj similarity index 100% rename from src/tools/customer-query/AITravelAgent.ServiceDefaults/AITravelAgent.ServiceDefaults.csproj rename to packages/tools/customer-query/AITravelAgent.ServiceDefaults/AITravelAgent.ServiceDefaults.csproj diff --git a/src/tools/customer-query/AITravelAgent.ServiceDefaults/Extensions.cs b/packages/tools/customer-query/AITravelAgent.ServiceDefaults/Extensions.cs similarity index 100% rename from src/tools/customer-query/AITravelAgent.ServiceDefaults/Extensions.cs rename to packages/tools/customer-query/AITravelAgent.ServiceDefaults/Extensions.cs diff --git a/src/tools/customer-query/AITravelAgent.sln b/packages/tools/customer-query/AITravelAgent.sln similarity index 100% rename from src/tools/customer-query/AITravelAgent.sln rename to packages/tools/customer-query/AITravelAgent.sln diff --git a/src/tools/customer-query/Dockerfile b/packages/tools/customer-query/Dockerfile similarity index 100% rename from src/tools/customer-query/Dockerfile rename to packages/tools/customer-query/Dockerfile diff --git a/src/tools/destination-recommendation/.gitignore b/packages/tools/destination-recommendation/.gitignore similarity index 100% rename from src/tools/destination-recommendation/.gitignore rename to packages/tools/destination-recommendation/.gitignore diff --git a/src/tools/destination-recommendation/.mvn/wrapper/MavenWrapperDownloader.java b/packages/tools/destination-recommendation/.mvn/wrapper/MavenWrapperDownloader.java similarity index 100% rename from src/tools/destination-recommendation/.mvn/wrapper/MavenWrapperDownloader.java rename to packages/tools/destination-recommendation/.mvn/wrapper/MavenWrapperDownloader.java diff --git a/src/tools/destination-recommendation/.mvn/wrapper/maven-wrapper.properties b/packages/tools/destination-recommendation/.mvn/wrapper/maven-wrapper.properties similarity index 100% rename from src/tools/destination-recommendation/.mvn/wrapper/maven-wrapper.properties rename to packages/tools/destination-recommendation/.mvn/wrapper/maven-wrapper.properties diff --git a/src/tools/destination-recommendation/Dockerfile b/packages/tools/destination-recommendation/Dockerfile similarity index 100% rename from src/tools/destination-recommendation/Dockerfile rename to packages/tools/destination-recommendation/Dockerfile diff --git a/src/tools/destination-recommendation/LICENSE b/packages/tools/destination-recommendation/LICENSE similarity index 100% rename from src/tools/destination-recommendation/LICENSE rename to packages/tools/destination-recommendation/LICENSE diff --git a/src/tools/destination-recommendation/README.md b/packages/tools/destination-recommendation/README.md similarity index 100% rename from src/tools/destination-recommendation/README.md rename to packages/tools/destination-recommendation/README.md diff --git a/src/tools/destination-recommendation/mvnw b/packages/tools/destination-recommendation/mvnw similarity index 100% rename from src/tools/destination-recommendation/mvnw rename to packages/tools/destination-recommendation/mvnw diff --git a/src/tools/destination-recommendation/mvnw.cmd b/packages/tools/destination-recommendation/mvnw.cmd similarity index 100% rename from src/tools/destination-recommendation/mvnw.cmd rename to packages/tools/destination-recommendation/mvnw.cmd diff --git a/src/tools/destination-recommendation/pom.xml b/packages/tools/destination-recommendation/pom.xml similarity index 100% rename from src/tools/destination-recommendation/pom.xml rename to packages/tools/destination-recommendation/pom.xml diff --git a/src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/McpServerApplication.java b/packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/McpServerApplication.java similarity index 100% rename from src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/McpServerApplication.java rename to packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/McpServerApplication.java diff --git a/src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/config/StartupConfig.java b/packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/config/StartupConfig.java similarity index 100% rename from src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/config/StartupConfig.java rename to packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/config/StartupConfig.java diff --git a/src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/controller/HealthController.java b/packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/controller/HealthController.java similarity index 100% rename from src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/controller/HealthController.java rename to packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/controller/HealthController.java diff --git a/src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/exception/GlobalExceptionHandler.java b/packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/exception/GlobalExceptionHandler.java similarity index 100% rename from src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/exception/GlobalExceptionHandler.java rename to packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/exception/GlobalExceptionHandler.java diff --git a/src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/ActivityType.java b/packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/ActivityType.java similarity index 100% rename from src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/ActivityType.java rename to packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/ActivityType.java diff --git a/src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/BudgetCategory.java b/packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/BudgetCategory.java similarity index 100% rename from src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/BudgetCategory.java rename to packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/BudgetCategory.java diff --git a/src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/Destination.java b/packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/Destination.java similarity index 100% rename from src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/Destination.java rename to packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/Destination.java diff --git a/src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/PreferenceRequest.java b/packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/PreferenceRequest.java similarity index 100% rename from src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/PreferenceRequest.java rename to packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/PreferenceRequest.java diff --git a/src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/Season.java b/packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/Season.java similarity index 100% rename from src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/Season.java rename to packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/model/Season.java diff --git a/src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/service/DestinationService.java b/packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/service/DestinationService.java similarity index 100% rename from src/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/service/DestinationService.java rename to packages/tools/destination-recommendation/src/main/java/com/microsoft/mcp/sample/server/service/DestinationService.java diff --git a/src/tools/destination-recommendation/src/main/resources/application.yml b/packages/tools/destination-recommendation/src/main/resources/application.yml similarity index 100% rename from src/tools/destination-recommendation/src/main/resources/application.yml rename to packages/tools/destination-recommendation/src/main/resources/application.yml diff --git a/src/tools/destination-recommendation/src/main/resources/banner.txt b/packages/tools/destination-recommendation/src/main/resources/banner.txt similarity index 100% rename from src/tools/destination-recommendation/src/main/resources/banner.txt rename to packages/tools/destination-recommendation/src/main/resources/banner.txt diff --git a/src/tools/echo-ping/.env.sample b/packages/tools/echo-ping/.env.sample similarity index 100% rename from src/tools/echo-ping/.env.sample rename to packages/tools/echo-ping/.env.sample diff --git a/src/tools/echo-ping/Dockerfile b/packages/tools/echo-ping/Dockerfile similarity index 100% rename from src/tools/echo-ping/Dockerfile rename to packages/tools/echo-ping/Dockerfile diff --git a/src/tools/echo-ping/package-lock.json b/packages/tools/echo-ping/package-lock.json similarity index 100% rename from src/tools/echo-ping/package-lock.json rename to packages/tools/echo-ping/package-lock.json diff --git a/src/tools/echo-ping/package.json b/packages/tools/echo-ping/package.json similarity index 100% rename from src/tools/echo-ping/package.json rename to packages/tools/echo-ping/package.json diff --git a/src/tools/echo-ping/src/index.ts b/packages/tools/echo-ping/src/index.ts similarity index 100% rename from src/tools/echo-ping/src/index.ts rename to packages/tools/echo-ping/src/index.ts diff --git a/src/tools/echo-ping/src/instrumentation.ts b/packages/tools/echo-ping/src/instrumentation.ts similarity index 100% rename from src/tools/echo-ping/src/instrumentation.ts rename to packages/tools/echo-ping/src/instrumentation.ts diff --git a/src/tools/echo-ping/src/server.ts b/packages/tools/echo-ping/src/server.ts similarity index 100% rename from src/tools/echo-ping/src/server.ts rename to packages/tools/echo-ping/src/server.ts diff --git a/src/tools/echo-ping/src/token-provider.ts b/packages/tools/echo-ping/src/token-provider.ts similarity index 100% rename from src/tools/echo-ping/src/token-provider.ts rename to packages/tools/echo-ping/src/token-provider.ts diff --git a/src/tools/echo-ping/src/tools.ts b/packages/tools/echo-ping/src/tools.ts similarity index 100% rename from src/tools/echo-ping/src/tools.ts rename to packages/tools/echo-ping/src/tools.ts diff --git a/src/tools/echo-ping/tsconfig.json b/packages/tools/echo-ping/tsconfig.json similarity index 100% rename from src/tools/echo-ping/tsconfig.json rename to packages/tools/echo-ping/tsconfig.json diff --git a/src/tools/itinerary-planning/.dockerignore b/packages/tools/itinerary-planning/.dockerignore similarity index 100% rename from src/tools/itinerary-planning/.dockerignore rename to packages/tools/itinerary-planning/.dockerignore diff --git a/src/tools/itinerary-planning/Dockerfile b/packages/tools/itinerary-planning/Dockerfile similarity index 100% rename from src/tools/itinerary-planning/Dockerfile rename to packages/tools/itinerary-planning/Dockerfile diff --git a/src/tools/itinerary-planning/README.md b/packages/tools/itinerary-planning/README.md similarity index 78% rename from src/tools/itinerary-planning/README.md rename to packages/tools/itinerary-planning/README.md index 63c3cf0b..b1a1d532 100644 --- a/src/tools/itinerary-planning/README.md +++ b/packages/tools/itinerary-planning/README.md @@ -11,13 +11,13 @@ 2. Install the the MCP server packages: ```bash - uv pip install -e src/tools/itinerary-planning + uv pip install -e packages/tools/itinerary-planning ``` 3. Run the MCP server: ```shell - uv run src/tools/itinerary-planning/src/app.py + uv run packages/tools/itinerary-planning/src/app.py ``` ## Debug with MCP Inspector @@ -25,7 +25,7 @@ For testing and debugging MCP functionality, use the MCP Inspector: ```cmd -uv run mcp dev src/tools/itinerary-planning/src/mcp_server.py +uv run mcp dev packages/tools/itinerary-planning/src/mcp_server.py ``` ## Start local server @@ -33,7 +33,7 @@ uv run mcp dev src/tools/itinerary-planning/src/mcp_server.py Navigate to the source directory and run the server: ```bash -cd src/tools/itinerary-planning/src +cd packages/tools/itinerary-planning/src ``` ```bash @@ -65,5 +65,5 @@ This server is designed to be deployed with the rest of the servers in this AI T 4. Deploy the Container App: ```bash - az containerapp up --name pf-travelagent-app --source src/tools/itinerary-planning --ingress external --target-port 8000 + az containerapp up --name pf-travelagent-app --source packages/tools/itinerary-planning --ingress external --target-port 8000 ``` diff --git a/src/tools/itinerary-planning/pyproject.toml b/packages/tools/itinerary-planning/pyproject.toml similarity index 100% rename from src/tools/itinerary-planning/pyproject.toml rename to packages/tools/itinerary-planning/pyproject.toml diff --git a/src/tools/itinerary-planning/src/__init__.py b/packages/tools/itinerary-planning/src/__init__.py similarity index 100% rename from src/tools/itinerary-planning/src/__init__.py rename to packages/tools/itinerary-planning/src/__init__.py diff --git a/src/tools/itinerary-planning/src/app.py b/packages/tools/itinerary-planning/src/app.py similarity index 100% rename from src/tools/itinerary-planning/src/app.py rename to packages/tools/itinerary-planning/src/app.py diff --git a/src/tools/itinerary-planning/src/mcp_server.py b/packages/tools/itinerary-planning/src/mcp_server.py similarity index 100% rename from src/tools/itinerary-planning/src/mcp_server.py rename to packages/tools/itinerary-planning/src/mcp_server.py diff --git a/src/tools/itinerary-planning/uv.lock b/packages/tools/itinerary-planning/uv.lock similarity index 100% rename from src/tools/itinerary-planning/uv.lock rename to packages/tools/itinerary-planning/uv.lock diff --git a/src/tools/model-inference/Dockerfile b/packages/tools/model-inference/Dockerfile similarity index 100% rename from src/tools/model-inference/Dockerfile rename to packages/tools/model-inference/Dockerfile diff --git a/src/tools/web-search/Dockerfile b/packages/tools/web-search/Dockerfile similarity index 100% rename from src/tools/web-search/Dockerfile rename to packages/tools/web-search/Dockerfile diff --git a/src/ui/.editorconfig b/packages/ui/.editorconfig similarity index 100% rename from src/ui/.editorconfig rename to packages/ui/.editorconfig diff --git a/src/ui/.env.sample b/packages/ui/.env.sample similarity index 91% rename from src/ui/.env.sample rename to packages/ui/.env.sample index a04f9752..ed9502e1 100644 --- a/src/ui/.env.sample +++ b/packages/ui/.env.sample @@ -1,5 +1,5 @@ # In the development environment, this should be set to the API URL of the local api server. -# see src/api/ for more details +# see packages/api/ for more details NG_API_URL=http://localhost:4000 # In Docker environment, this should be set to the API URL of the web-api service. diff --git a/src/ui/.gitignore b/packages/ui/.gitignore similarity index 100% rename from src/ui/.gitignore rename to packages/ui/.gitignore diff --git a/src/ui/.vscode/extensions.json b/packages/ui/.vscode/extensions.json similarity index 100% rename from src/ui/.vscode/extensions.json rename to packages/ui/.vscode/extensions.json diff --git a/src/ui/.vscode/launch.json b/packages/ui/.vscode/launch.json similarity index 100% rename from src/ui/.vscode/launch.json rename to packages/ui/.vscode/launch.json diff --git a/src/ui/.vscode/tasks.json b/packages/ui/.vscode/tasks.json similarity index 100% rename from src/ui/.vscode/tasks.json rename to packages/ui/.vscode/tasks.json diff --git a/src/ui/Dockerfile b/packages/ui/Dockerfile similarity index 100% rename from src/ui/Dockerfile rename to packages/ui/Dockerfile diff --git a/src/ui/Dockerfile.production b/packages/ui/Dockerfile.production similarity index 100% rename from src/ui/Dockerfile.production rename to packages/ui/Dockerfile.production diff --git a/src/ui/README.md b/packages/ui/README.md similarity index 100% rename from src/ui/README.md rename to packages/ui/README.md diff --git a/src/ui/angular.json b/packages/ui/angular.json similarity index 100% rename from src/ui/angular.json rename to packages/ui/angular.json diff --git a/src/ui/components.json b/packages/ui/components.json similarity index 100% rename from src/ui/components.json rename to packages/ui/components.json diff --git a/src/ui/libs/ui/ui-accordion-helm/src/index.ts b/packages/ui/libs/ui/ui-accordion-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-accordion-helm/src/index.ts rename to packages/ui/libs/ui/ui-accordion-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-content.component.ts b/packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-content.component.ts similarity index 100% rename from src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-content.component.ts rename to packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-content.component.ts diff --git a/src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-icon.directive.ts b/packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-icon.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-icon.directive.ts rename to packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-icon.directive.ts diff --git a/src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-item.directive.ts b/packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-item.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-item.directive.ts rename to packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-item.directive.ts diff --git a/src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-trigger.directive.ts b/packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-trigger.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-trigger.directive.ts rename to packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion-trigger.directive.ts diff --git a/src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion.directive.ts b/packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion.directive.ts rename to packages/ui/libs/ui/ui-accordion-helm/src/lib/hlm-accordion.directive.ts diff --git a/src/ui/libs/ui/ui-alert-helm/src/index.ts b/packages/ui/libs/ui/ui-alert-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-alert-helm/src/index.ts rename to packages/ui/libs/ui/ui-alert-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-description.directive.ts b/packages/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-description.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-description.directive.ts rename to packages/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-description.directive.ts diff --git a/src/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-icon.directive.ts b/packages/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-icon.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-icon.directive.ts rename to packages/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-icon.directive.ts diff --git a/src/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-title.directive.ts b/packages/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-title.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-title.directive.ts rename to packages/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert-title.directive.ts diff --git a/src/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert.directive.ts b/packages/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert.directive.ts rename to packages/ui/libs/ui/ui-alert-helm/src/lib/hlm-alert.directive.ts diff --git a/src/ui/libs/ui/ui-alertdialog-helm/src/index.ts b/packages/ui/libs/ui/ui-alertdialog-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-alertdialog-helm/src/index.ts rename to packages/ui/libs/ui/ui-alertdialog-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-action-button.directive.ts b/packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-action-button.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-action-button.directive.ts rename to packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-action-button.directive.ts diff --git a/src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-cancel-button.directive.ts b/packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-cancel-button.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-cancel-button.directive.ts rename to packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-cancel-button.directive.ts diff --git a/src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-content.component.ts b/packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-content.component.ts similarity index 100% rename from src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-content.component.ts rename to packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-content.component.ts diff --git a/src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-description.directive.ts b/packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-description.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-description.directive.ts rename to packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-description.directive.ts diff --git a/src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-footer.component.ts b/packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-footer.component.ts similarity index 100% rename from src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-footer.component.ts rename to packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-footer.component.ts diff --git a/src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-header.component.ts b/packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-header.component.ts similarity index 100% rename from src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-header.component.ts rename to packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-header.component.ts diff --git a/src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-overlay.directive.ts b/packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-overlay.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-overlay.directive.ts rename to packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-overlay.directive.ts diff --git a/src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-title.directive.ts b/packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-title.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-title.directive.ts rename to packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog-title.directive.ts diff --git a/src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog.component.ts b/packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog.component.ts similarity index 100% rename from src/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog.component.ts rename to packages/ui/libs/ui/ui-alertdialog-helm/src/lib/hlm-alert-dialog.component.ts diff --git a/src/ui/libs/ui/ui-aspectratio-helm/src/index.ts b/packages/ui/libs/ui/ui-aspectratio-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-aspectratio-helm/src/index.ts rename to packages/ui/libs/ui/ui-aspectratio-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-aspectratio-helm/src/lib/helm-aspect-ratio.directive.spec.ts b/packages/ui/libs/ui/ui-aspectratio-helm/src/lib/helm-aspect-ratio.directive.spec.ts similarity index 100% rename from src/ui/libs/ui/ui-aspectratio-helm/src/lib/helm-aspect-ratio.directive.spec.ts rename to packages/ui/libs/ui/ui-aspectratio-helm/src/lib/helm-aspect-ratio.directive.spec.ts diff --git a/src/ui/libs/ui/ui-aspectratio-helm/src/lib/helm-aspect-ratio.directive.ts b/packages/ui/libs/ui/ui-aspectratio-helm/src/lib/helm-aspect-ratio.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-aspectratio-helm/src/lib/helm-aspect-ratio.directive.ts rename to packages/ui/libs/ui/ui-aspectratio-helm/src/lib/helm-aspect-ratio.directive.ts diff --git a/src/ui/libs/ui/ui-avatar-helm/src/index.ts b/packages/ui/libs/ui/ui-avatar-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-avatar-helm/src/index.ts rename to packages/ui/libs/ui/ui-avatar-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-avatar-helm/src/lib/fallback/hlm-avatar-fallback.directive.spec.ts b/packages/ui/libs/ui/ui-avatar-helm/src/lib/fallback/hlm-avatar-fallback.directive.spec.ts similarity index 100% rename from src/ui/libs/ui/ui-avatar-helm/src/lib/fallback/hlm-avatar-fallback.directive.spec.ts rename to packages/ui/libs/ui/ui-avatar-helm/src/lib/fallback/hlm-avatar-fallback.directive.spec.ts diff --git a/src/ui/libs/ui/ui-avatar-helm/src/lib/fallback/hlm-avatar-fallback.directive.ts b/packages/ui/libs/ui/ui-avatar-helm/src/lib/fallback/hlm-avatar-fallback.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-avatar-helm/src/lib/fallback/hlm-avatar-fallback.directive.ts rename to packages/ui/libs/ui/ui-avatar-helm/src/lib/fallback/hlm-avatar-fallback.directive.ts diff --git a/src/ui/libs/ui/ui-avatar-helm/src/lib/fallback/index.ts b/packages/ui/libs/ui/ui-avatar-helm/src/lib/fallback/index.ts similarity index 100% rename from src/ui/libs/ui/ui-avatar-helm/src/lib/fallback/index.ts rename to packages/ui/libs/ui/ui-avatar-helm/src/lib/fallback/index.ts diff --git a/src/ui/libs/ui/ui-avatar-helm/src/lib/hlm-avatar.component.spec.ts b/packages/ui/libs/ui/ui-avatar-helm/src/lib/hlm-avatar.component.spec.ts similarity index 100% rename from src/ui/libs/ui/ui-avatar-helm/src/lib/hlm-avatar.component.spec.ts rename to packages/ui/libs/ui/ui-avatar-helm/src/lib/hlm-avatar.component.spec.ts diff --git a/src/ui/libs/ui/ui-avatar-helm/src/lib/hlm-avatar.component.ts b/packages/ui/libs/ui/ui-avatar-helm/src/lib/hlm-avatar.component.ts similarity index 100% rename from src/ui/libs/ui/ui-avatar-helm/src/lib/hlm-avatar.component.ts rename to packages/ui/libs/ui/ui-avatar-helm/src/lib/hlm-avatar.component.ts diff --git a/src/ui/libs/ui/ui-avatar-helm/src/lib/image/hlm-avatar-image.directive.spec.ts b/packages/ui/libs/ui/ui-avatar-helm/src/lib/image/hlm-avatar-image.directive.spec.ts similarity index 100% rename from src/ui/libs/ui/ui-avatar-helm/src/lib/image/hlm-avatar-image.directive.spec.ts rename to packages/ui/libs/ui/ui-avatar-helm/src/lib/image/hlm-avatar-image.directive.spec.ts diff --git a/src/ui/libs/ui/ui-avatar-helm/src/lib/image/hlm-avatar-image.directive.ts b/packages/ui/libs/ui/ui-avatar-helm/src/lib/image/hlm-avatar-image.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-avatar-helm/src/lib/image/hlm-avatar-image.directive.ts rename to packages/ui/libs/ui/ui-avatar-helm/src/lib/image/hlm-avatar-image.directive.ts diff --git a/src/ui/libs/ui/ui-avatar-helm/src/lib/image/index.ts b/packages/ui/libs/ui/ui-avatar-helm/src/lib/image/index.ts similarity index 100% rename from src/ui/libs/ui/ui-avatar-helm/src/lib/image/index.ts rename to packages/ui/libs/ui/ui-avatar-helm/src/lib/image/index.ts diff --git a/src/ui/libs/ui/ui-badge-helm/src/index.ts b/packages/ui/libs/ui/ui-badge-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-badge-helm/src/index.ts rename to packages/ui/libs/ui/ui-badge-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-badge-helm/src/lib/hlm-badge.directive.ts b/packages/ui/libs/ui/ui-badge-helm/src/lib/hlm-badge.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-badge-helm/src/lib/hlm-badge.directive.ts rename to packages/ui/libs/ui/ui-badge-helm/src/lib/hlm-badge.directive.ts diff --git a/src/ui/libs/ui/ui-breadcrumb-helm/src/index.ts b/packages/ui/libs/ui/ui-breadcrumb-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-breadcrumb-helm/src/index.ts rename to packages/ui/libs/ui/ui-breadcrumb-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-ellipsis.component.ts b/packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-ellipsis.component.ts similarity index 100% rename from src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-ellipsis.component.ts rename to packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-ellipsis.component.ts diff --git a/src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-item.directive.ts b/packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-item.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-item.directive.ts rename to packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-item.directive.ts diff --git a/src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-link.directive.ts b/packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-link.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-link.directive.ts rename to packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-link.directive.ts diff --git a/src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-list.directive.ts b/packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-list.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-list.directive.ts rename to packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-list.directive.ts diff --git a/src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-page.directive.ts b/packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-page.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-page.directive.ts rename to packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-page.directive.ts diff --git a/src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-separator.component.ts b/packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-separator.component.ts similarity index 100% rename from src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-separator.component.ts rename to packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb-separator.component.ts diff --git a/src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb.directive.ts b/packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb.directive.ts rename to packages/ui/libs/ui/ui-breadcrumb-helm/src/lib/breadcrumb.directive.ts diff --git a/src/ui/libs/ui/ui-button-helm/src/index.ts b/packages/ui/libs/ui/ui-button-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-button-helm/src/index.ts rename to packages/ui/libs/ui/ui-button-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-button-helm/src/lib/hlm-button.directive.ts b/packages/ui/libs/ui/ui-button-helm/src/lib/hlm-button.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-button-helm/src/lib/hlm-button.directive.ts rename to packages/ui/libs/ui/ui-button-helm/src/lib/hlm-button.directive.ts diff --git a/src/ui/libs/ui/ui-button-helm/src/lib/hlm-button.token.ts b/packages/ui/libs/ui/ui-button-helm/src/lib/hlm-button.token.ts similarity index 100% rename from src/ui/libs/ui/ui-button-helm/src/lib/hlm-button.token.ts rename to packages/ui/libs/ui/ui-button-helm/src/lib/hlm-button.token.ts diff --git a/src/ui/libs/ui/ui-calendar-helm/src/index.ts b/packages/ui/libs/ui/ui-calendar-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-calendar-helm/src/index.ts rename to packages/ui/libs/ui/ui-calendar-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-calendar-helm/src/lib/hlm-calendar.component.ts b/packages/ui/libs/ui/ui-calendar-helm/src/lib/hlm-calendar.component.ts similarity index 100% rename from src/ui/libs/ui/ui-calendar-helm/src/lib/hlm-calendar.component.ts rename to packages/ui/libs/ui/ui-calendar-helm/src/lib/hlm-calendar.component.ts diff --git a/src/ui/libs/ui/ui-card-helm/src/index.ts b/packages/ui/libs/ui/ui-card-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-card-helm/src/index.ts rename to packages/ui/libs/ui/ui-card-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-content.directive.ts b/packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-content.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-content.directive.ts rename to packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-content.directive.ts diff --git a/src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-description.directive.ts b/packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-description.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-description.directive.ts rename to packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-description.directive.ts diff --git a/src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-footer.directive.ts b/packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-footer.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-footer.directive.ts rename to packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-footer.directive.ts diff --git a/src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-header.directive.ts b/packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-header.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-header.directive.ts rename to packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-header.directive.ts diff --git a/src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-title.directive.ts b/packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-title.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-card-helm/src/lib/hlm-card-title.directive.ts rename to packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card-title.directive.ts diff --git a/src/ui/libs/ui/ui-card-helm/src/lib/hlm-card.directive.ts b/packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-card-helm/src/lib/hlm-card.directive.ts rename to packages/ui/libs/ui/ui-card-helm/src/lib/hlm-card.directive.ts diff --git a/src/ui/libs/ui/ui-carousel-helm/src/index.ts b/packages/ui/libs/ui/ui-carousel-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-carousel-helm/src/index.ts rename to packages/ui/libs/ui/ui-carousel-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-content.component.ts b/packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-content.component.ts similarity index 100% rename from src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-content.component.ts rename to packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-content.component.ts diff --git a/src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-item.component.ts b/packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-item.component.ts similarity index 100% rename from src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-item.component.ts rename to packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-item.component.ts diff --git a/src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-next.component.ts b/packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-next.component.ts similarity index 100% rename from src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-next.component.ts rename to packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-next.component.ts diff --git a/src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-previous.component.ts b/packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-previous.component.ts similarity index 100% rename from src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-previous.component.ts rename to packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel-previous.component.ts diff --git a/src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel.component.ts b/packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel.component.ts similarity index 100% rename from src/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel.component.ts rename to packages/ui/libs/ui/ui-carousel-helm/src/lib/hlm-carousel.component.ts diff --git a/src/ui/libs/ui/ui-checkbox-helm/src/index.ts b/packages/ui/libs/ui/ui-checkbox-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-checkbox-helm/src/index.ts rename to packages/ui/libs/ui/ui-checkbox-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-checkbox-helm/src/lib/hlm-checkbox.component.ts b/packages/ui/libs/ui/ui-checkbox-helm/src/lib/hlm-checkbox.component.ts similarity index 100% rename from src/ui/libs/ui/ui-checkbox-helm/src/lib/hlm-checkbox.component.ts rename to packages/ui/libs/ui/ui-checkbox-helm/src/lib/hlm-checkbox.component.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/index.ts b/packages/ui/libs/ui/ui-command-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/index.ts rename to packages/ui/libs/ui/ui-command-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-dialog-close-button.directive.ts b/packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-dialog-close-button.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-dialog-close-button.directive.ts rename to packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-dialog-close-button.directive.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-dialog.directive.ts b/packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-dialog.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-dialog.directive.ts rename to packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-dialog.directive.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-empty.directive.ts b/packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-empty.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-empty.directive.ts rename to packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-empty.directive.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-group-label.component.ts b/packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-group-label.component.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-group-label.component.ts rename to packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-group-label.component.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-group.component.ts b/packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-group.component.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-group.component.ts rename to packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-group.component.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-icon.directive.ts b/packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-icon.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-icon.directive.ts rename to packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-icon.directive.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-item.component.ts b/packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-item.component.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-item.component.ts rename to packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-item.component.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-list.component.ts b/packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-list.component.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-list.component.ts rename to packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-list.component.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-search-input.component.ts b/packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-search-input.component.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-search-input.component.ts rename to packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-search-input.component.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-search.component.ts b/packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-search.component.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-search.component.ts rename to packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-search.component.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-separator.component.ts b/packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-separator.component.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-separator.component.ts rename to packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-separator.component.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-shortcut.component.ts b/packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-shortcut.component.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/lib/hlm-command-shortcut.component.ts rename to packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command-shortcut.component.ts diff --git a/src/ui/libs/ui/ui-command-helm/src/lib/hlm-command.component.ts b/packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command.component.ts similarity index 100% rename from src/ui/libs/ui/ui-command-helm/src/lib/hlm-command.component.ts rename to packages/ui/libs/ui/ui-command-helm/src/lib/hlm-command.component.ts diff --git a/src/ui/libs/ui/ui-datepicker-helm/src/index.ts b/packages/ui/libs/ui/ui-datepicker-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-datepicker-helm/src/index.ts rename to packages/ui/libs/ui/ui-datepicker-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-datepicker-helm/src/lib/hlm-date-picker.component.ts b/packages/ui/libs/ui/ui-datepicker-helm/src/lib/hlm-date-picker.component.ts similarity index 100% rename from src/ui/libs/ui/ui-datepicker-helm/src/lib/hlm-date-picker.component.ts rename to packages/ui/libs/ui/ui-datepicker-helm/src/lib/hlm-date-picker.component.ts diff --git a/src/ui/libs/ui/ui-datepicker-helm/src/lib/hlm-date-picker.token.ts b/packages/ui/libs/ui/ui-datepicker-helm/src/lib/hlm-date-picker.token.ts similarity index 100% rename from src/ui/libs/ui/ui-datepicker-helm/src/lib/hlm-date-picker.token.ts rename to packages/ui/libs/ui/ui-datepicker-helm/src/lib/hlm-date-picker.token.ts diff --git a/src/ui/libs/ui/ui-dialog-helm/src/index.ts b/packages/ui/libs/ui/ui-dialog-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-dialog-helm/src/index.ts rename to packages/ui/libs/ui/ui-dialog-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-close.directive.ts b/packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-close.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-close.directive.ts rename to packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-close.directive.ts diff --git a/src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-content.component.ts b/packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-content.component.ts similarity index 100% rename from src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-content.component.ts rename to packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-content.component.ts diff --git a/src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-description.directive.ts b/packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-description.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-description.directive.ts rename to packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-description.directive.ts diff --git a/src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-footer.component.ts b/packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-footer.component.ts similarity index 100% rename from src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-footer.component.ts rename to packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-footer.component.ts diff --git a/src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-header.component.ts b/packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-header.component.ts similarity index 100% rename from src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-header.component.ts rename to packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-header.component.ts diff --git a/src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-overlay.directive.ts b/packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-overlay.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-overlay.directive.ts rename to packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-overlay.directive.ts diff --git a/src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-title.directive.ts b/packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-title.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-title.directive.ts rename to packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog-title.directive.ts diff --git a/src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog.component.ts b/packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog.component.ts similarity index 100% rename from src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog.component.ts rename to packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog.component.ts diff --git a/src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog.service.ts b/packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog.service.ts similarity index 100% rename from src/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog.service.ts rename to packages/ui/libs/ui/ui-dialog-helm/src/lib/hlm-dialog.service.ts diff --git a/src/ui/libs/ui/ui-formfield-helm/src/index.ts b/packages/ui/libs/ui/ui-formfield-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-formfield-helm/src/index.ts rename to packages/ui/libs/ui/ui-formfield-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-formfield-helm/src/lib/form-field.spec.ts b/packages/ui/libs/ui/ui-formfield-helm/src/lib/form-field.spec.ts similarity index 100% rename from src/ui/libs/ui/ui-formfield-helm/src/lib/form-field.spec.ts rename to packages/ui/libs/ui/ui-formfield-helm/src/lib/form-field.spec.ts diff --git a/src/ui/libs/ui/ui-formfield-helm/src/lib/hlm-error.directive.ts b/packages/ui/libs/ui/ui-formfield-helm/src/lib/hlm-error.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-formfield-helm/src/lib/hlm-error.directive.ts rename to packages/ui/libs/ui/ui-formfield-helm/src/lib/hlm-error.directive.ts diff --git a/src/ui/libs/ui/ui-formfield-helm/src/lib/hlm-form-field.component.ts b/packages/ui/libs/ui/ui-formfield-helm/src/lib/hlm-form-field.component.ts similarity index 100% rename from src/ui/libs/ui/ui-formfield-helm/src/lib/hlm-form-field.component.ts rename to packages/ui/libs/ui/ui-formfield-helm/src/lib/hlm-form-field.component.ts diff --git a/src/ui/libs/ui/ui-formfield-helm/src/lib/hlm-hint.directive.ts b/packages/ui/libs/ui/ui-formfield-helm/src/lib/hlm-hint.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-formfield-helm/src/lib/hlm-hint.directive.ts rename to packages/ui/libs/ui/ui-formfield-helm/src/lib/hlm-hint.directive.ts diff --git a/src/ui/libs/ui/ui-hovercard-helm/src/index.ts b/packages/ui/libs/ui/ui-hovercard-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-hovercard-helm/src/index.ts rename to packages/ui/libs/ui/ui-hovercard-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-hovercard-helm/src/lib/hlm-hover-card-content.component.ts b/packages/ui/libs/ui/ui-hovercard-helm/src/lib/hlm-hover-card-content.component.ts similarity index 100% rename from src/ui/libs/ui/ui-hovercard-helm/src/lib/hlm-hover-card-content.component.ts rename to packages/ui/libs/ui/ui-hovercard-helm/src/lib/hlm-hover-card-content.component.ts diff --git a/src/ui/libs/ui/ui-icon-helm/src/index.ts b/packages/ui/libs/ui/ui-icon-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-icon-helm/src/index.ts rename to packages/ui/libs/ui/ui-icon-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.directive.spec.ts b/packages/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.directive.spec.ts similarity index 100% rename from src/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.directive.spec.ts rename to packages/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.directive.spec.ts diff --git a/src/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.directive.ts b/packages/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.directive.ts rename to packages/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.directive.ts diff --git a/src/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.token.ts b/packages/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.token.ts similarity index 100% rename from src/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.token.ts rename to packages/ui/libs/ui/ui-icon-helm/src/lib/hlm-icon.token.ts diff --git a/src/ui/libs/ui/ui-input-helm/src/index.ts b/packages/ui/libs/ui/ui-input-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-input-helm/src/index.ts rename to packages/ui/libs/ui/ui-input-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-input-helm/src/lib/hlm-input-error.directive.ts b/packages/ui/libs/ui/ui-input-helm/src/lib/hlm-input-error.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-input-helm/src/lib/hlm-input-error.directive.ts rename to packages/ui/libs/ui/ui-input-helm/src/lib/hlm-input-error.directive.ts diff --git a/src/ui/libs/ui/ui-input-helm/src/lib/hlm-input.directive.ts b/packages/ui/libs/ui/ui-input-helm/src/lib/hlm-input.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-input-helm/src/lib/hlm-input.directive.ts rename to packages/ui/libs/ui/ui-input-helm/src/lib/hlm-input.directive.ts diff --git a/src/ui/libs/ui/ui-label-helm/src/index.ts b/packages/ui/libs/ui/ui-label-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-label-helm/src/index.ts rename to packages/ui/libs/ui/ui-label-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-label-helm/src/lib/hlm-label.directive.ts b/packages/ui/libs/ui/ui-label-helm/src/lib/hlm-label.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-label-helm/src/lib/hlm-label.directive.ts rename to packages/ui/libs/ui/ui-label-helm/src/lib/hlm-label.directive.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/index.ts b/packages/ui/libs/ui/ui-menu-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/index.ts rename to packages/ui/libs/ui/ui-menu-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-bar-item.directive.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-bar-item.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-bar-item.directive.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-bar-item.directive.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-bar.component.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-bar.component.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-bar.component.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-bar.component.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-group.component.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-group.component.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-group.component.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-group.component.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-check.component.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-check.component.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-check.component.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-check.component.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-checkbox.directive.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-checkbox.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-checkbox.directive.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-checkbox.directive.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-icon.directive.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-icon.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-icon.directive.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-icon.directive.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-radio.component.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-radio.component.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-radio.component.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-radio.component.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-radio.directive.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-radio.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-radio.directive.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-radio.directive.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-sub-indicator.component.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-sub-indicator.component.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-sub-indicator.component.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item-sub-indicator.component.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item.directive.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item.directive.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-item.directive.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-label.component.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-label.component.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-label.component.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-label.component.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-separator.component.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-separator.component.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-separator.component.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-separator.component.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-shortcut.component.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-shortcut.component.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-shortcut.component.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu-shortcut.component.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu.component.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu.component.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu.component.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-menu.component.ts diff --git a/src/ui/libs/ui/ui-menu-helm/src/lib/hlm-sub-menu.component.ts b/packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-sub-menu.component.ts similarity index 100% rename from src/ui/libs/ui/ui-menu-helm/src/lib/hlm-sub-menu.component.ts rename to packages/ui/libs/ui/ui-menu-helm/src/lib/hlm-sub-menu.component.ts diff --git a/src/ui/libs/ui/ui-pagination-helm/src/index.ts b/packages/ui/libs/ui/ui-pagination-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-pagination-helm/src/index.ts rename to packages/ui/libs/ui/ui-pagination-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-numbered-pagination.component.ts b/packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-numbered-pagination.component.ts similarity index 100% rename from src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-numbered-pagination.component.ts rename to packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-numbered-pagination.component.ts diff --git a/src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-content.directive.ts b/packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-content.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-content.directive.ts rename to packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-content.directive.ts diff --git a/src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-ellipsis.component.ts b/packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-ellipsis.component.ts similarity index 100% rename from src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-ellipsis.component.ts rename to packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-ellipsis.component.ts diff --git a/src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-item.directive.ts b/packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-item.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-item.directive.ts rename to packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-item.directive.ts diff --git a/src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-link.directive.ts b/packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-link.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-link.directive.ts rename to packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-link.directive.ts diff --git a/src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-next.component.ts b/packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-next.component.ts similarity index 100% rename from src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-next.component.ts rename to packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-next.component.ts diff --git a/src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-previous.component.ts b/packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-previous.component.ts similarity index 100% rename from src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-previous.component.ts rename to packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination-previous.component.ts diff --git a/src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination.directive.ts b/packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination.directive.ts rename to packages/ui/libs/ui/ui-pagination-helm/src/lib/hlm-pagination.directive.ts diff --git a/src/ui/libs/ui/ui-popover-helm/src/index.ts b/packages/ui/libs/ui/ui-popover-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-popover-helm/src/index.ts rename to packages/ui/libs/ui/ui-popover-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-popover-helm/src/lib/hlm-popover-close.directive.ts b/packages/ui/libs/ui/ui-popover-helm/src/lib/hlm-popover-close.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-popover-helm/src/lib/hlm-popover-close.directive.ts rename to packages/ui/libs/ui/ui-popover-helm/src/lib/hlm-popover-close.directive.ts diff --git a/src/ui/libs/ui/ui-popover-helm/src/lib/hlm-popover-content.directive.ts b/packages/ui/libs/ui/ui-popover-helm/src/lib/hlm-popover-content.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-popover-helm/src/lib/hlm-popover-content.directive.ts rename to packages/ui/libs/ui/ui-popover-helm/src/lib/hlm-popover-content.directive.ts diff --git a/src/ui/libs/ui/ui-progress-helm/src/index.ts b/packages/ui/libs/ui/ui-progress-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-progress-helm/src/index.ts rename to packages/ui/libs/ui/ui-progress-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-progress-helm/src/lib/hlm-progress-indicator.directive.ts b/packages/ui/libs/ui/ui-progress-helm/src/lib/hlm-progress-indicator.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-progress-helm/src/lib/hlm-progress-indicator.directive.ts rename to packages/ui/libs/ui/ui-progress-helm/src/lib/hlm-progress-indicator.directive.ts diff --git a/src/ui/libs/ui/ui-progress-helm/src/lib/hlm-progress.directive.ts b/packages/ui/libs/ui/ui-progress-helm/src/lib/hlm-progress.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-progress-helm/src/lib/hlm-progress.directive.ts rename to packages/ui/libs/ui/ui-progress-helm/src/lib/hlm-progress.directive.ts diff --git a/src/ui/libs/ui/ui-radiogroup-helm/src/index.ts b/packages/ui/libs/ui/ui-radiogroup-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-radiogroup-helm/src/index.ts rename to packages/ui/libs/ui/ui-radiogroup-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio-group.component.ts b/packages/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio-group.component.ts similarity index 100% rename from src/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio-group.component.ts rename to packages/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio-group.component.ts diff --git a/src/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio-indicator.component.ts b/packages/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio-indicator.component.ts similarity index 100% rename from src/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio-indicator.component.ts rename to packages/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio-indicator.component.ts diff --git a/src/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio.component.ts b/packages/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio.component.ts similarity index 100% rename from src/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio.component.ts rename to packages/ui/libs/ui/ui-radiogroup-helm/src/lib/hlm-radio.component.ts diff --git a/src/ui/libs/ui/ui-scrollarea-helm/src/index.ts b/packages/ui/libs/ui/ui-scrollarea-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-scrollarea-helm/src/index.ts rename to packages/ui/libs/ui/ui-scrollarea-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-scrollarea-helm/src/lib/hlm-scroll-area.directive.ts b/packages/ui/libs/ui/ui-scrollarea-helm/src/lib/hlm-scroll-area.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-scrollarea-helm/src/lib/hlm-scroll-area.directive.ts rename to packages/ui/libs/ui/ui-scrollarea-helm/src/lib/hlm-scroll-area.directive.ts diff --git a/src/ui/libs/ui/ui-select-helm/src/index.ts b/packages/ui/libs/ui/ui-select-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-select-helm/src/index.ts rename to packages/ui/libs/ui/ui-select-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-content.directive.ts b/packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-content.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-content.directive.ts rename to packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-content.directive.ts diff --git a/src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-group.directive.ts b/packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-group.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-group.directive.ts rename to packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-group.directive.ts diff --git a/src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-label.directive.ts b/packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-label.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-label.directive.ts rename to packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-label.directive.ts diff --git a/src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-option.component.ts b/packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-option.component.ts similarity index 100% rename from src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-option.component.ts rename to packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-option.component.ts diff --git a/src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-scroll-down.component.ts b/packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-scroll-down.component.ts similarity index 100% rename from src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-scroll-down.component.ts rename to packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-scroll-down.component.ts diff --git a/src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-scroll-up.component.ts b/packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-scroll-up.component.ts similarity index 100% rename from src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-scroll-up.component.ts rename to packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-scroll-up.component.ts diff --git a/src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-trigger.component.ts b/packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-trigger.component.ts similarity index 100% rename from src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-trigger.component.ts rename to packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-trigger.component.ts diff --git a/src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-value.directive.ts b/packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-value.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-select-helm/src/lib/hlm-select-value.directive.ts rename to packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select-value.directive.ts diff --git a/src/ui/libs/ui/ui-select-helm/src/lib/hlm-select.directive.ts b/packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-select-helm/src/lib/hlm-select.directive.ts rename to packages/ui/libs/ui/ui-select-helm/src/lib/hlm-select.directive.ts diff --git a/src/ui/libs/ui/ui-separator-helm/src/index.ts b/packages/ui/libs/ui/ui-separator-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-separator-helm/src/index.ts rename to packages/ui/libs/ui/ui-separator-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-separator-helm/src/lib/hlm-separator.directive.ts b/packages/ui/libs/ui/ui-separator-helm/src/lib/hlm-separator.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-separator-helm/src/lib/hlm-separator.directive.ts rename to packages/ui/libs/ui/ui-separator-helm/src/lib/hlm-separator.directive.ts diff --git a/src/ui/libs/ui/ui-sheet-helm/src/index.ts b/packages/ui/libs/ui/ui-sheet-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-sheet-helm/src/index.ts rename to packages/ui/libs/ui/ui-sheet-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-close.directive.ts b/packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-close.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-close.directive.ts rename to packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-close.directive.ts diff --git a/src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-content.component.ts b/packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-content.component.ts similarity index 100% rename from src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-content.component.ts rename to packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-content.component.ts diff --git a/src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-description.directive.ts b/packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-description.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-description.directive.ts rename to packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-description.directive.ts diff --git a/src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-footer.component.ts b/packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-footer.component.ts similarity index 100% rename from src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-footer.component.ts rename to packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-footer.component.ts diff --git a/src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-header.component.ts b/packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-header.component.ts similarity index 100% rename from src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-header.component.ts rename to packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-header.component.ts diff --git a/src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-overlay.directive.ts b/packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-overlay.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-overlay.directive.ts rename to packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-overlay.directive.ts diff --git a/src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-title.directive.ts b/packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-title.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-title.directive.ts rename to packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet-title.directive.ts diff --git a/src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet.component.ts b/packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet.component.ts similarity index 100% rename from src/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet.component.ts rename to packages/ui/libs/ui/ui-sheet-helm/src/lib/hlm-sheet.component.ts diff --git a/src/ui/libs/ui/ui-skeleton-helm/src/index.ts b/packages/ui/libs/ui/ui-skeleton-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-skeleton-helm/src/index.ts rename to packages/ui/libs/ui/ui-skeleton-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-skeleton-helm/src/lib/hlm-skeleton.component.ts b/packages/ui/libs/ui/ui-skeleton-helm/src/lib/hlm-skeleton.component.ts similarity index 100% rename from src/ui/libs/ui/ui-skeleton-helm/src/lib/hlm-skeleton.component.ts rename to packages/ui/libs/ui/ui-skeleton-helm/src/lib/hlm-skeleton.component.ts diff --git a/src/ui/libs/ui/ui-slider-helm/src/index.ts b/packages/ui/libs/ui/ui-slider-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-slider-helm/src/index.ts rename to packages/ui/libs/ui/ui-slider-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-input.directive.ts b/packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-input.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-input.directive.ts rename to packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-input.directive.ts diff --git a/src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-thumb.directive.ts b/packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-thumb.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-thumb.directive.ts rename to packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-thumb.directive.ts diff --git a/src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-tick-mark.directive.ts b/packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-tick-mark.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-tick-mark.directive.ts rename to packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-tick-mark.directive.ts diff --git a/src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-tick-marks.directive.ts b/packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-tick-marks.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-tick-marks.directive.ts rename to packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-tick-marks.directive.ts diff --git a/src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-active-fill.directive.ts b/packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-active-fill.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-active-fill.directive.ts rename to packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-active-fill.directive.ts diff --git a/src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-active.directive.ts b/packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-active.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-active.directive.ts rename to packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-active.directive.ts diff --git a/src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-inactive.directive.ts b/packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-inactive.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-inactive.directive.ts rename to packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track-inactive.directive.ts diff --git a/src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track.component.ts b/packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track.component.ts similarity index 100% rename from src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track.component.ts rename to packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider-track.component.ts diff --git a/src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider.component.ts b/packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider.component.ts similarity index 100% rename from src/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider.component.ts rename to packages/ui/libs/ui/ui-slider-helm/src/lib/hlm-slider.component.ts diff --git a/src/ui/libs/ui/ui-sonner-helm/src/index.ts b/packages/ui/libs/ui/ui-sonner-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-sonner-helm/src/index.ts rename to packages/ui/libs/ui/ui-sonner-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-sonner-helm/src/lib/hlm-toaster.component.ts b/packages/ui/libs/ui/ui-sonner-helm/src/lib/hlm-toaster.component.ts similarity index 100% rename from src/ui/libs/ui/ui-sonner-helm/src/lib/hlm-toaster.component.ts rename to packages/ui/libs/ui/ui-sonner-helm/src/lib/hlm-toaster.component.ts diff --git a/src/ui/libs/ui/ui-spinner-helm/src/index.ts b/packages/ui/libs/ui/ui-spinner-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-spinner-helm/src/index.ts rename to packages/ui/libs/ui/ui-spinner-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-spinner-helm/src/lib/hlm-spinner.component.ts b/packages/ui/libs/ui/ui-spinner-helm/src/lib/hlm-spinner.component.ts similarity index 100% rename from src/ui/libs/ui/ui-spinner-helm/src/lib/hlm-spinner.component.ts rename to packages/ui/libs/ui/ui-spinner-helm/src/lib/hlm-spinner.component.ts diff --git a/src/ui/libs/ui/ui-switch-helm/src/index.ts b/packages/ui/libs/ui/ui-switch-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-switch-helm/src/index.ts rename to packages/ui/libs/ui/ui-switch-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch-ng-model.component.ignore.spec.ts b/packages/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch-ng-model.component.ignore.spec.ts similarity index 100% rename from src/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch-ng-model.component.ignore.spec.ts rename to packages/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch-ng-model.component.ignore.spec.ts diff --git a/src/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch-thumb.directive.ts b/packages/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch-thumb.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch-thumb.directive.ts rename to packages/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch-thumb.directive.ts diff --git a/src/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch.component.ts b/packages/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch.component.ts similarity index 100% rename from src/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch.component.ts rename to packages/ui/libs/ui/ui-switch-helm/src/lib/hlm-switch.component.ts diff --git a/src/ui/libs/ui/ui-table-helm/src/index.ts b/packages/ui/libs/ui/ui-table-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-table-helm/src/index.ts rename to packages/ui/libs/ui/ui-table-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-table-helm/src/lib/hlm-caption.component.ts b/packages/ui/libs/ui/ui-table-helm/src/lib/hlm-caption.component.ts similarity index 100% rename from src/ui/libs/ui/ui-table-helm/src/lib/hlm-caption.component.ts rename to packages/ui/libs/ui/ui-table-helm/src/lib/hlm-caption.component.ts diff --git a/src/ui/libs/ui/ui-table-helm/src/lib/hlm-table.component.ts b/packages/ui/libs/ui/ui-table-helm/src/lib/hlm-table.component.ts similarity index 100% rename from src/ui/libs/ui/ui-table-helm/src/lib/hlm-table.component.ts rename to packages/ui/libs/ui/ui-table-helm/src/lib/hlm-table.component.ts diff --git a/src/ui/libs/ui/ui-table-helm/src/lib/hlm-table.directive.ts b/packages/ui/libs/ui/ui-table-helm/src/lib/hlm-table.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-table-helm/src/lib/hlm-table.directive.ts rename to packages/ui/libs/ui/ui-table-helm/src/lib/hlm-table.directive.ts diff --git a/src/ui/libs/ui/ui-table-helm/src/lib/hlm-td.component.ts b/packages/ui/libs/ui/ui-table-helm/src/lib/hlm-td.component.ts similarity index 100% rename from src/ui/libs/ui/ui-table-helm/src/lib/hlm-td.component.ts rename to packages/ui/libs/ui/ui-table-helm/src/lib/hlm-td.component.ts diff --git a/src/ui/libs/ui/ui-table-helm/src/lib/hlm-th.component.ts b/packages/ui/libs/ui/ui-table-helm/src/lib/hlm-th.component.ts similarity index 100% rename from src/ui/libs/ui/ui-table-helm/src/lib/hlm-th.component.ts rename to packages/ui/libs/ui/ui-table-helm/src/lib/hlm-th.component.ts diff --git a/src/ui/libs/ui/ui-table-helm/src/lib/hlm-trow.component.ts b/packages/ui/libs/ui/ui-table-helm/src/lib/hlm-trow.component.ts similarity index 100% rename from src/ui/libs/ui/ui-table-helm/src/lib/hlm-trow.component.ts rename to packages/ui/libs/ui/ui-table-helm/src/lib/hlm-trow.component.ts diff --git a/src/ui/libs/ui/ui-tabs-helm/src/index.ts b/packages/ui/libs/ui/ui-tabs-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-tabs-helm/src/index.ts rename to packages/ui/libs/ui/ui-tabs-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-content.directive.ts b/packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-content.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-content.directive.ts rename to packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-content.directive.ts diff --git a/src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-list.component.ts b/packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-list.component.ts similarity index 100% rename from src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-list.component.ts rename to packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-list.component.ts diff --git a/src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-paginated-list.component.ts b/packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-paginated-list.component.ts similarity index 100% rename from src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-paginated-list.component.ts rename to packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-paginated-list.component.ts diff --git a/src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-trigger.directive.ts b/packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-trigger.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-trigger.directive.ts rename to packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs-trigger.directive.ts diff --git a/src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs.component.ts b/packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs.component.ts similarity index 100% rename from src/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs.component.ts rename to packages/ui/libs/ui/ui-tabs-helm/src/lib/hlm-tabs.component.ts diff --git a/src/ui/libs/ui/ui-toggle-helm/src/index.ts b/packages/ui/libs/ui/ui-toggle-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-toggle-helm/src/index.ts rename to packages/ui/libs/ui/ui-toggle-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-toggle-helm/src/lib/hlm-toggle-group.directive.ts b/packages/ui/libs/ui/ui-toggle-helm/src/lib/hlm-toggle-group.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-toggle-helm/src/lib/hlm-toggle-group.directive.ts rename to packages/ui/libs/ui/ui-toggle-helm/src/lib/hlm-toggle-group.directive.ts diff --git a/src/ui/libs/ui/ui-toggle-helm/src/lib/hlm-toggle.directive.ts b/packages/ui/libs/ui/ui-toggle-helm/src/lib/hlm-toggle.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-toggle-helm/src/lib/hlm-toggle.directive.ts rename to packages/ui/libs/ui/ui-toggle-helm/src/lib/hlm-toggle.directive.ts diff --git a/src/ui/libs/ui/ui-tooltip-helm/src/index.ts b/packages/ui/libs/ui/ui-tooltip-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-tooltip-helm/src/index.ts rename to packages/ui/libs/ui/ui-tooltip-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-tooltip-helm/src/lib/hlm-tooltip-trigger.directive.ts b/packages/ui/libs/ui/ui-tooltip-helm/src/lib/hlm-tooltip-trigger.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-tooltip-helm/src/lib/hlm-tooltip-trigger.directive.ts rename to packages/ui/libs/ui/ui-tooltip-helm/src/lib/hlm-tooltip-trigger.directive.ts diff --git a/src/ui/libs/ui/ui-tooltip-helm/src/lib/hlm-tooltip.component.ts b/packages/ui/libs/ui/ui-tooltip-helm/src/lib/hlm-tooltip.component.ts similarity index 100% rename from src/ui/libs/ui/ui-tooltip-helm/src/lib/hlm-tooltip.component.ts rename to packages/ui/libs/ui/ui-tooltip-helm/src/lib/hlm-tooltip.component.ts diff --git a/src/ui/libs/ui/ui-typography-helm/src/index.ts b/packages/ui/libs/ui/ui-typography-helm/src/index.ts similarity index 100% rename from src/ui/libs/ui/ui-typography-helm/src/index.ts rename to packages/ui/libs/ui/ui-typography-helm/src/index.ts diff --git a/src/ui/libs/ui/ui-typography-helm/src/lib/hlm-blockquote.directive.ts b/packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-blockquote.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-typography-helm/src/lib/hlm-blockquote.directive.ts rename to packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-blockquote.directive.ts diff --git a/src/ui/libs/ui/ui-typography-helm/src/lib/hlm-code.directive.ts b/packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-code.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-typography-helm/src/lib/hlm-code.directive.ts rename to packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-code.directive.ts diff --git a/src/ui/libs/ui/ui-typography-helm/src/lib/hlm-h1.directive.ts b/packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-h1.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-typography-helm/src/lib/hlm-h1.directive.ts rename to packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-h1.directive.ts diff --git a/src/ui/libs/ui/ui-typography-helm/src/lib/hlm-h2.directive.ts b/packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-h2.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-typography-helm/src/lib/hlm-h2.directive.ts rename to packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-h2.directive.ts diff --git a/src/ui/libs/ui/ui-typography-helm/src/lib/hlm-h3.directive.ts b/packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-h3.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-typography-helm/src/lib/hlm-h3.directive.ts rename to packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-h3.directive.ts diff --git a/src/ui/libs/ui/ui-typography-helm/src/lib/hlm-h4.directive.ts b/packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-h4.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-typography-helm/src/lib/hlm-h4.directive.ts rename to packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-h4.directive.ts diff --git a/src/ui/libs/ui/ui-typography-helm/src/lib/hlm-large.directive.ts b/packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-large.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-typography-helm/src/lib/hlm-large.directive.ts rename to packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-large.directive.ts diff --git a/src/ui/libs/ui/ui-typography-helm/src/lib/hlm-lead.directive.ts b/packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-lead.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-typography-helm/src/lib/hlm-lead.directive.ts rename to packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-lead.directive.ts diff --git a/src/ui/libs/ui/ui-typography-helm/src/lib/hlm-muted.directive.ts b/packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-muted.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-typography-helm/src/lib/hlm-muted.directive.ts rename to packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-muted.directive.ts diff --git a/src/ui/libs/ui/ui-typography-helm/src/lib/hlm-p.directive.ts b/packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-p.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-typography-helm/src/lib/hlm-p.directive.ts rename to packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-p.directive.ts diff --git a/src/ui/libs/ui/ui-typography-helm/src/lib/hlm-small.directive.ts b/packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-small.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-typography-helm/src/lib/hlm-small.directive.ts rename to packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-small.directive.ts diff --git a/src/ui/libs/ui/ui-typography-helm/src/lib/hlm-ul.directive.ts b/packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-ul.directive.ts similarity index 100% rename from src/ui/libs/ui/ui-typography-helm/src/lib/hlm-ul.directive.ts rename to packages/ui/libs/ui/ui-typography-helm/src/lib/hlm-ul.directive.ts diff --git a/src/ui/package-lock.json b/packages/ui/package-lock.json similarity index 100% rename from src/ui/package-lock.json rename to packages/ui/package-lock.json diff --git a/src/ui/package.json b/packages/ui/package.json similarity index 100% rename from src/ui/package.json rename to packages/ui/package.json diff --git a/src/ui/public/favicon.ico b/packages/ui/public/favicon.ico similarity index 100% rename from src/ui/public/favicon.ico rename to packages/ui/public/favicon.ico diff --git a/src/ui/src/app/app.component.css b/packages/ui/src/app/app.component.css similarity index 100% rename from src/ui/src/app/app.component.css rename to packages/ui/src/app/app.component.css diff --git a/src/ui/src/app/app.component.html b/packages/ui/src/app/app.component.html similarity index 100% rename from src/ui/src/app/app.component.html rename to packages/ui/src/app/app.component.html diff --git a/src/ui/src/app/app.component.spec.ts b/packages/ui/src/app/app.component.spec.ts similarity index 100% rename from src/ui/src/app/app.component.spec.ts rename to packages/ui/src/app/app.component.spec.ts diff --git a/src/ui/src/app/app.component.ts b/packages/ui/src/app/app.component.ts similarity index 100% rename from src/ui/src/app/app.component.ts rename to packages/ui/src/app/app.component.ts diff --git a/src/ui/src/app/app.config.server.ts b/packages/ui/src/app/app.config.server.ts similarity index 100% rename from src/ui/src/app/app.config.server.ts rename to packages/ui/src/app/app.config.server.ts diff --git a/src/ui/src/app/app.config.ts b/packages/ui/src/app/app.config.ts similarity index 100% rename from src/ui/src/app/app.config.ts rename to packages/ui/src/app/app.config.ts diff --git a/src/ui/src/app/app.routes.server.ts b/packages/ui/src/app/app.routes.server.ts similarity index 100% rename from src/ui/src/app/app.routes.server.ts rename to packages/ui/src/app/app.routes.server.ts diff --git a/src/ui/src/app/app.routes.ts b/packages/ui/src/app/app.routes.ts similarity index 100% rename from src/ui/src/app/app.routes.ts rename to packages/ui/src/app/app.routes.ts diff --git a/src/ui/src/app/chat-conversation/chat-conversation.component.css b/packages/ui/src/app/chat-conversation/chat-conversation.component.css similarity index 100% rename from src/ui/src/app/chat-conversation/chat-conversation.component.css rename to packages/ui/src/app/chat-conversation/chat-conversation.component.css diff --git a/src/ui/src/app/chat-conversation/chat-conversation.component.html b/packages/ui/src/app/chat-conversation/chat-conversation.component.html similarity index 100% rename from src/ui/src/app/chat-conversation/chat-conversation.component.html rename to packages/ui/src/app/chat-conversation/chat-conversation.component.html diff --git a/src/ui/src/app/chat-conversation/chat-conversation.component.spec.ts b/packages/ui/src/app/chat-conversation/chat-conversation.component.spec.ts similarity index 100% rename from src/ui/src/app/chat-conversation/chat-conversation.component.spec.ts rename to packages/ui/src/app/chat-conversation/chat-conversation.component.spec.ts diff --git a/src/ui/src/app/chat-conversation/chat-conversation.component.ts b/packages/ui/src/app/chat-conversation/chat-conversation.component.ts similarity index 100% rename from src/ui/src/app/chat-conversation/chat-conversation.component.ts rename to packages/ui/src/app/chat-conversation/chat-conversation.component.ts diff --git a/src/ui/src/app/chat-conversation/chat-conversation.service.ts b/packages/ui/src/app/chat-conversation/chat-conversation.service.ts similarity index 100% rename from src/ui/src/app/chat-conversation/chat-conversation.service.ts rename to packages/ui/src/app/chat-conversation/chat-conversation.service.ts diff --git a/src/ui/src/app/components/accordion/accordion.component.ts b/packages/ui/src/app/components/accordion/accordion.component.ts similarity index 100% rename from src/ui/src/app/components/accordion/accordion.component.ts rename to packages/ui/src/app/components/accordion/accordion.component.ts diff --git a/src/ui/src/app/components/alert/alert.component.ts b/packages/ui/src/app/components/alert/alert.component.ts similarity index 100% rename from src/ui/src/app/components/alert/alert.component.ts rename to packages/ui/src/app/components/alert/alert.component.ts diff --git a/src/ui/src/app/components/skeleton-preview/skeleton-preview.component.ts b/packages/ui/src/app/components/skeleton-preview/skeleton-preview.component.ts similarity index 100% rename from src/ui/src/app/components/skeleton-preview/skeleton-preview.component.ts rename to packages/ui/src/app/components/skeleton-preview/skeleton-preview.component.ts diff --git a/src/ui/src/app/components/theme-toggle/theme-toggle.component.ts b/packages/ui/src/app/components/theme-toggle/theme-toggle.component.ts similarity index 100% rename from src/ui/src/app/components/theme-toggle/theme-toggle.component.ts rename to packages/ui/src/app/components/theme-toggle/theme-toggle.component.ts diff --git a/src/ui/src/app/services/api.service.ts b/packages/ui/src/app/services/api.service.ts similarity index 100% rename from src/ui/src/app/services/api.service.ts rename to packages/ui/src/app/services/api.service.ts diff --git a/src/ui/src/app/services/theme.service.ts b/packages/ui/src/app/services/theme.service.ts similarity index 100% rename from src/ui/src/app/services/theme.service.ts rename to packages/ui/src/app/services/theme.service.ts diff --git a/src/ui/src/env.d.ts b/packages/ui/src/env.d.ts similarity index 100% rename from src/ui/src/env.d.ts rename to packages/ui/src/env.d.ts diff --git a/src/ui/src/environments/environment.development.ts b/packages/ui/src/environments/environment.development.ts similarity index 100% rename from src/ui/src/environments/environment.development.ts rename to packages/ui/src/environments/environment.development.ts diff --git a/src/ui/src/environments/environment.ts b/packages/ui/src/environments/environment.ts similarity index 100% rename from src/ui/src/environments/environment.ts rename to packages/ui/src/environments/environment.ts diff --git a/src/ui/src/index.html b/packages/ui/src/index.html similarity index 100% rename from src/ui/src/index.html rename to packages/ui/src/index.html diff --git a/src/ui/src/main.server.ts b/packages/ui/src/main.server.ts similarity index 100% rename from src/ui/src/main.server.ts rename to packages/ui/src/main.server.ts diff --git a/src/ui/src/main.ts b/packages/ui/src/main.ts similarity index 100% rename from src/ui/src/main.ts rename to packages/ui/src/main.ts diff --git a/src/ui/src/server.ts b/packages/ui/src/server.ts similarity index 100% rename from src/ui/src/server.ts rename to packages/ui/src/server.ts diff --git a/src/ui/src/styles.css b/packages/ui/src/styles.css similarity index 100% rename from src/ui/src/styles.css rename to packages/ui/src/styles.css diff --git a/src/ui/tailwind.config.js b/packages/ui/tailwind.config.js similarity index 100% rename from src/ui/tailwind.config.js rename to packages/ui/tailwind.config.js diff --git a/src/ui/tsconfig.app.json b/packages/ui/tsconfig.app.json similarity index 100% rename from src/ui/tsconfig.app.json rename to packages/ui/tsconfig.app.json diff --git a/src/ui/tsconfig.json b/packages/ui/tsconfig.json similarity index 100% rename from src/ui/tsconfig.json rename to packages/ui/tsconfig.json diff --git a/src/ui/tsconfig.spec.json b/packages/ui/tsconfig.spec.json similarity index 100% rename from src/ui/tsconfig.spec.json rename to packages/ui/tsconfig.spec.json diff --git a/preview.ps1 b/preview.ps1 index ac29ded6..096b5bb4 100644 --- a/preview.ps1 +++ b/preview.ps1 @@ -118,8 +118,8 @@ MCP_WEB_SEARCH_URL=http://localhost:5006 MCP_ECHO_PING_URL=http://localhost:5007 MCP_ECHO_PING_ACCESS_TOKEN=123-this-is-a-fake-token-please-use-a-token-provider "@ - Set-Content -Path ./src/api/.env -Value $envContent -Encoding UTF8 - Write-Host ("{0}{1}.env file created in src/api/.env.{2}" -f $GREEN, $BOLD, $NC) + Set-Content -Path ./packages/api/.env -Value $envContent -Encoding UTF8 + Write-Host ("{0}{1}.env file created in packages/api/.env.{2}" -f $GREEN, $BOLD, $NC) # Step 2: Setup UI dependencies if (Test-Path ./infra/hooks/ui/setup.ps1) { @@ -138,8 +138,8 @@ MCP_ECHO_PING_ACCESS_TOKEN=123-this-is-a-fake-token-please-use-a-token-provider $uiEnvContent = @" NG_API_URL=http://localhost:4000 "@ - Set-Content -Path ./src/ui/.env -Value $uiEnvContent -Encoding UTF8 - Write-Host ("{0}{1}.env file created in src/ui/.env.{2}" -f $GREEN, $BOLD, $NC) + Set-Content -Path ./packages/ui/.env -Value $uiEnvContent -Encoding UTF8 + Write-Host ("{0}{1}.env file created in packages/ui/.env.{2}" -f $GREEN, $BOLD, $NC) # Step 3: Setup MCP tools (env, dependencies, docker build) if (Test-Path ./infra/hooks/mcp/setup.ps1) { diff --git a/preview.sh b/preview.sh index f6355975..b8911c78 100755 --- a/preview.sh +++ b/preview.sh @@ -102,7 +102,7 @@ else fi # Step 1.5: Create .env file for the user -cat > ./src/api/.env < ./packages/api/.env < ./src/ui/.env < ./packages/ui/.env <