diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..68451bc
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,27 @@
+# Build outputs
+bin/
+obj/
+
+# IDE
+.vs/
+.vscode/
+*.suo
+*.user
+
+# Dependencies
+node_modules/
+
+# OS files
+.DS_Store
+Thumbs.db
+
+# Certificates (sensitive)
+*.pfx
+*.p12
+
+# Data files
+data/
+
+# Temporary files
+*.tmp
+*.log
diff --git a/.roo.md b/.roo.md
new file mode 100644
index 0000000..1d73cda
--- /dev/null
+++ b/.roo.md
@@ -0,0 +1,94 @@
+[CONTENT_MANAGEMENT_RULES]
+1. 작업 시작 시 반드시 Todo List를 작성하세요. 각 항목은 독립 실행 가능해야 합니다.
+2. 단일 응답에서 다음 중 하나라도 만족하면 작업을 중단하고 이관 신호를 생성하세요:
+ - 처리 파일 수 ≥ 5개
+ - 코드 변경/생성 라인 수 ≥ 200줄
+ - 논리적 모듈 단위 완료
+3. 이관 시 반드시 아래 형식으로 응답을 종료하세요:
+ [TASK_MIGRATION]
+ ✅ 완료: [목록]
+ 📦 현재 상태: [요약]
+ 🎯 다음 하위작업 지시문: [명확한 프롬프트]
+ [/TASK_MIGRATION]
+4. 이관 신호 이후에는 추가 코딩/분석을 중단하고 사용자의 계속 지시를 기다리세요.
+[/CONTENT_MANAGEMENT_RULES]
+
+# Roo 작업 시작 가이드
+
+## 작업 시작 시 필수 절차
+
+1. **`CLAUDE.md` 파일 반드시 읽기**
+ - 프로젝트 루트의 `CLAUDE.md` 파일을 먼저 읽어서 이전 작업 이력 확인
+ - 완료된 작업, 현재 진행 중인 작업, 알려진 문제점 파악
+ - 최근 작업 내용을 바탕으로 현재 작업과 충돌하지 않도록 주의
+
+2. **todo 목록 생성**
+ - 복잡한 작업은 반드시 `update_todo_list` 도구로 todo 목록 생성
+ - 각 단계별로 명확한 목표 설정
+
+3. **파일 수정 시 주의**
+ - `apply_diff` 도구는 정확한 검색/교체 블록 사용
+ - `read_file` 도구로 정확한 내용 확인 후 수정
+
+## 데이터베이스 연결 정보
+
+### docker container : iiot-timescaledb (주요 목적 DB)
+- **Host**: localhost
+- **Port**: 5432
+- **Database**: iiot_platform
+- **Username**: postgres
+- **Password**: postgres
+- **용도**: TimescaleDB 확장, 시계열 데이터 저장, Text-to-SQL 기능
+
+### Experion DB (데이터 소스)
+- **Host**: localhost
+- **Port**: 5432
+- **Database**: postgres
+- **Username**: postgres
+- **Password**: postgres
+- **용도**: Experion HS R530 메타데이터 조회
+
+## 프로젝트 개요
+
+- **이름**: ExperionCrawler
+- **기술 스택**: .NET 8 (C#), PostgreSQL, OPC UA
+- **주요 기능**:
+ - Experion HS R530 DCS 시스템에서 실시간 데이터 크롤링
+ - OPC UA Client로 Experion HS R530 연결
+ - OPC UA Server로 외부 시스템 연결 지원
+ - 데이터 PostgreSQL DB 저장
+ - CSV 내보내기 기능
+ - Text-to-SQL 기능 (TimescaleDB)
+
+## 디렉토리 구조
+
+```
+src/
+├── Core/
+│ ├── Application/ (DTOs, Services, Interfaces)
+│ └── Domain/ (Entities)
+├── Infrastructure/ (Certificates, Csv, Database, OpcUa)
+└── Web/ (Controllers, Program.cs, wwwroot)
+```
+
+## 작업 규칙
+
+- 복잡한 작업은 항상 todo 목록 먼저 생성
+- 각 단계 시작 전 todo 목록 확인
+- 단계 완료 후 즉시 completed 표시
+- 코드 수정 전 반드시 `read_file`으로 현재 내용 확인
+
+## 컨텍스트 관리
+
+### 컨텍스트 캐시 최적화
+- 컨텍스트 캐시가 70%를 넘으면 작업중이던 정보를 새로운 하위작업에게 넘기고 시작
+- 정보의 질 저하를 방지하기 위해 컨텍스트 압축 수행
+- 단일 항목 작업 중에도 컨텍스트가 가득차면 하위작업으로 분할
+
+### 작업 분할 원칙
+1. 모든 새로운 작업을 시작하기 전 todo list 생성 (`update_todo_list` 도구 사용)
+2. 단일 항목 작업 중 컨텍스트 캐시 70% 초과 시:
+ - 현재 작업 상태를 하위작업에게 명확히 전달
+ - 하위작업에서 이어받아 작업 진행
+ - 완료 후 상위 작업에 결과 보고
+3. 하위작업은 `new_task` 도구로 생성하고 mode은 현재 모드 유지 또는 적절히 선택
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.MvcApplicationPartsAssemblyInfo.cache b/autocomplete.py
similarity index 100%
rename from src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.MvcApplicationPartsAssemblyInfo.cache
rename to autocomplete.py
diff --git a/plans/history-query-status-indicator.md b/plans/history-query-status-indicator.md
new file mode 100644
index 0000000..b6e70d9
--- /dev/null
+++ b/plans/history-query-status-indicator.md
@@ -0,0 +1,52 @@
+# 이력 조회 상태 표시기 구현
+
+## 개요
+이력 조회 페이지의 '▼ 옵션 불러오기' 버튼 오른쪽에 상태 표시기를 추가하여, 태그 목록 조회 상태를 시각적으로 표시합니다.
+
+## 구현 내용
+
+### 1. HTML 구조 ([`index.html`](src/Web/wwwroot/index.html:503))
+```html
+
+
+ 태그 선택 (최대 8개, OR 조건)
+ ▼ 옵션 불러오기
+ 대기 중
+
+
+
+
+
+```
+
+### 2. CSS 스타일 ([`style.css`](src/Web/wwwroot/css/style.css:815))
+- `.hist-status`: 상태 표시기 컨테이너
+- `.hist-status.loading`: 조회 중 (파란색)
+- `.hist-status.success`: 조회 완료 (초록색)
+- `.hist-status.error`: 조회 실패 (빨간색)
+- 성능 최적화: `contain: layout style`, `transform: translateZ(0)`
+
+### 3. JavaScript 로직 ([`app.js`](src/Web/wwwroot/js/app.js:688))
+- `histUpdateStatus(state, message)`: 상태 표시기 업데이트
+- `histLoad()`: 태그 목록 조회 및 상태 업데이트
+ - 조회 시작: `⏳ 조회 중...`
+ - 조회 완료: `✅ 조회 완료 (개수, 초)`
+ - 데이터 없음: `❌ 조회 데이터 없음 (0개)`
+ - 오류: `❌ 조회 실패: 메시지`
+
+## 수정된 문제들
+1. 초기 상태 "준비됨" → "대기 중"으로 변경
+2. 레이아웃 구조 개선 (flex 컨테이너 사용)
+3. CSS 애니메이션 제거 및 성능 최적화
+4. `requestAnimationFrame`으로 DOM 업데이트 지연
+
+## 남은 문제 (추가 작업 필요)
+- 태그 선택 시 페이지 hang 현상 원인 파악 필요
+ - `pb-name-grid`의 CSS grid 레이아웃과 select 요소 8개의 상호작용
+ - 브라우저 호환성 문제 가능성
+ - 메모리 누락 가능성
+
+## 테스트 방법
+1. 이력 조회 탭 진입 → "대기 중" 표시 확인
+2. '▼ 옵션 불러오기' 클릭 → 상태 변화 확인
+3. 태그 선택 시 페이지 반응성 확인
diff --git a/plans/text-to-sql-timescaledb-plan.md b/plans/text-to-sql-timescaledb-plan.md
new file mode 100644
index 0000000..9e74f38
--- /dev/null
+++ b/plans/text-to-sql-timescaledb-plan.md
@@ -0,0 +1,416 @@
+# Text-to-SQL (PostgreSQL + TimeScaleDB) 추가 계획
+
+## 1. 개요
+
+ExperionCrawler 프로젝트에 **TimeScaleDB 하이퍼테이블**을 적용하여 시계열 데이터(`realtime_table`, `history_table`)의 성능과 확장성을 대폭 개선합니다. 또한 **Text-to-SQL 기능**을 추가하여 API를 통해 자연어/쿼리 입력으로 시계열 데이터를 조회·분석할 수 있도록 합니다.
+
+---
+
+## 2. 현재 아키텍처 분석
+
+```mermaid
+graph TB
+ subgraph WebLayer
+ Controller[Controllers]
+ Program[Program.cs]
+ end
+
+ subgraph Infrastructure
+ DbContext[ExperionDbContext]
+ DbService[ExperionDbService]
+ end
+
+ subgraph Core
+ CrawlService[ExperionCrawlService]
+ RealtimeSvc[ExperionRealtimeService]
+ HistorySvc[ExperionHistoryService]
+ end
+
+ subgraph Data
+ PostgreSQL[(PostgreSQL)]
+ CSV[CSV Files]
+ end
+
+ Controller --> DbContext
+ Controller --> DbService
+ DbContext --> PostgreSQL
+ RealtimeSvc --> DbService
+ HistorySvc --> DbService
+ DbService --> CSV
+```
+
+### 현재 사용 테이블
+| 테이블명 | 용도 | 현재 방식 |
+|----------|------|-----------|
+| `realtime_table` | 실시간 모니터링 포인트 | 일반 PostgreSQL 테이블 |
+| `history_table` | 시계열 이력 스냅샷 | 일반 PostgreSQL 테이블 |
+| `raw_node_map` | OPC UA 노드맵 원시 데이터 | 일반 PostgreSQL 테이블 |
+| `node_map_master` | 빌드된 노드맵 | 일반 PostgreSQL 테이블 |
+| `experion_records` | 크롤링 기록 | EF Core DbSet |
+
+---
+
+## 3. 목표 아키텍처
+
+```mermaid
+graph TB
+ subgraph WebLayer
+ Controller[Controllers]
+ TextToSql[Text-to-SQL Service]
+ Program[Program.cs]
+ end
+
+ subgraph Infrastructure
+ DbContext[ExperionDbContext]
+ DbService[ExperionDbService]
+ TimeSeriesSvc[TimeSeries Service]
+ end
+
+ subgraph Core
+ CrawlService[ExperionCrawlService]
+ RealtimeSvc[ExperionRealtimeService]
+ HistorySvc[ExperionHistoryService]
+ end
+
+ subgraph Data
+ TimeScaleDB[(TimeScaleDB HyperTables)]
+ CSV[CSV Files]
+ end
+
+ Controller --> TextToSql
+ TextToSql --> DbService
+ Controller --> DbContext
+ Controller --> DbService
+ DbContext --> TimeScaleDB
+ RealtimeSvc --> TimeSeriesSvc
+ HistorySvc --> TimeSeriesSvc
+ TimeSeriesSvc --> DbService
+ DbService --> CSV
+```
+
+---
+
+## 4. 구현 단계별 계획
+
+### 단계 1: TimeScaleDB 패키지 추가 및 초기화
+
+**목표**: TimeScaleDB 확장 활성화 및 하이퍼테이블 생성
+
+#### 4.1.1 NuGet 패키지 추가
+- `Npgsql.EntityFrameworkCore.PostgreSQL` (이미 존재)
+- `Npgsql.TimeScaleDB` (새로 추가)
+
+#### 4.1.2 데이터베이스 초기화 수정
+- [`ExperionDbContext`](src/Infrastructure/Database/ExperionDbContext.cs:1)에 TimeScaleDB 확장 활성화 코드 추가
+- `history_table` → `history_hypertable` (하이퍼테이블)로 마이그레이션
+- `realtime_table` → `realtime_hypertable` (하이퍼테이블)로 마이그레이션
+
+#### 4.1.3 마이그레이션 스크립트
+```sql
+-- TimeScaleDB 확장 활성화
+CREATE EXTENSION IF NOT EXISTS timescaledb;
+
+-- 기존 history_table 데이터를 백업
+CREATE TABLE history_table_backup AS SELECT * FROM history_table;
+
+-- 기존 테이블 삭제 후 하이퍼테이블 생성
+DROP TABLE history_table;
+SELECT create_hypertable('history_hypertable', 'recorded_at',
+ chunk_time_interval => INTERVAL '1 day',
+ create_default_indexes => true);
+
+-- 데이터 복원
+INSERT INTO history_hypertable (id, tagname, node_id, value, recorded_at)
+ SELECT id, tagname, node_id, value, recorded_at FROM history_table_backup;
+DROP TABLE history_table_backup;
+```
+
+---
+
+### 단계 2: Text-to-SQL 서비스 구현
+
+**목표**: 자연어/쿼리 입력으로 시계열 데이터를 조회하는 서비스 계층 구현
+
+#### 4.2.1 인터페이스 정의 (`ITextToSqlService`)
+```
+namespace ExperionCrawler.Core.Application.Interfaces;
+
+public interface ITextToSqlService
+{
+ /// 자연어 질의를 SQL로 변환
+ Task ParseNaturalLanguageAsync(string input);
+
+ /// SQL 쿼리 실행 및 결과 반환
+ Task ExecuteQueryAsync(string sql);
+
+ /// 쿼리 제안 (자동 완성)
+ Task> SuggestQueriesAsync(string partialInput);
+
+ /// 시계열 분석 (평균, 최대, 최소, 추세)
+ Task AnalyzeAsync(string tagName, DateTime? from, DateTime? to);
+}
+```
+
+#### 4.2.2 구현체 (`TextToSqlService`)
+- **자연어 파싱**: 키워드 기반 파서 (tag name, 시간 범위, 집계 함수)
+- **SQL 생성**: TimeScaleDB 함수 (`time_bucket`, `avg`, `max`, `min`, `last`) 활용
+- **결과 매핑**: 동적 SQL → DTO 매핑
+
+#### 4.2.3 자연어 파싱 예시
+| 입력 | 생성된 SQL |
+|------|-----------|
+| "PV001 온도 최근 1시간 평균" | `SELECT time_bucket('5 min', recorded_at) AS bucket, AVG(value::float) FROM history_hypertable WHERE tagname = 'PV001' AND recorded_at > NOW() - INTERVAL '1 hour' GROUP BY bucket ORDER BY bucket` |
+| "전체 태그 현재 값" | `SELECT DISTINCT ON (tagname) tagname, livevalue, timestamp FROM realtime_hypertable ORDER BY tagname, timestamp DESC` |
+| "PV001, PV002 최근 24시간 최대값" | `SELECT time_bucket('1 hour', recorded_at) AS bucket, tagname, MAX(value::float) FROM history_hypertable WHERE tagname IN ('PV001', 'PV002') AND recorded_at > NOW() - INTERVAL '24 hour' GROUP BY bucket, tagname ORDER BY bucket, tagname` |
+
+---
+
+### 단계 3: API 엔드포인트 추가
+
+**목표**: Text-to-SQL 기능을 REST API로 노출
+
+#### 4.3.1 컨트롤러 (`TextToSqlController`)
+```
+[ApiController]
+[Route("api/text-to-sql")]
+public class TextToSqlController : ControllerBase
+{
+ private readonly ITextToSqlService _service;
+
+ [HttpPost("parse")]
+ public Task Parse([FromBody] NaturalLanguageQueryDto dto);
+
+ [HttpPost("execute")]
+ public Task Execute([FromBody] SqlQueryDto dto);
+
+ [HttpGet("suggest")]
+ public Task Suggest([FromQuery] string input);
+
+ [HttpPost("analyze")]
+ public Task Analyze([FromBody] AnalysisRequestDto dto);
+}
+```
+
+#### 4.3.2 DTO 정의
+```
+public class NaturalLanguageQueryDto
+{
+ public string Query { get; set; } = string.Empty;
+ public string Language { get; set; } = "ko"; // "ko" or "en"
+}
+
+public class SqlQueryDto
+{
+ public string Sql { get; set; } = string.Empty;
+ public int? Limit { get; set; } = 1000;
+}
+
+public class AnalysisRequestDto
+{
+ public List TagNames { get; set; } = new();
+ public DateTime? From { get; set; }
+ public DateTime? To { get; set; }
+ public string Interval { get; set; } = "5 min"; // time_bucket interval
+}
+```
+
+---
+
+### 단계 4: TimeSeries 서비스 개선
+
+**목표**: TimeScaleDB 특화 함수 활용하여 성능 최적화
+
+#### 4.4.1 기존 `ExperionDbService` 수정
+- `history_table` → `history_hypertable` 참조로 변경
+- `realtime_table` → `realtime_hypertable` 참조로 변경
+- TimeScaleDB 함수 (`time_bucket`, `continuous aggregates`) 활용
+
+#### 4.4.2 연속 집계 (Continuous Aggregates) 생성
+```sql
+-- 5분 단위 집계 뷰 생성
+CREATE MATERIALIZED VIEW history_5min_agg
+WITH (timescaledb.continuous) AS
+SELECT
+ time_bucket('5 min', recorded_at) AS bucket,
+ tagname,
+ AVG(value::float) AS avg_value,
+ MIN(value::float) AS min_value,
+ MAX(value::float) AS max_value,
+ FIRST(value::float, recorded_at) AS open_value,
+ LAST(value::float, recorded_at) AS close_value,
+ COUNT(*) AS point_count
+FROM history_hypertable
+GROUP BY bucket, tagname;
+
+-- 기존 데이터 리프레시
+REFRESH MATERIALIZED VIEW history_5min_agg;
+```
+
+---
+
+### 단계 5: Program.cs 설정 업데이트
+
+**목표**: 서비스 등록 및 초기화 플로우 수정
+
+#### 4.5.1 서비스 등록
+```csharp
+// Text-to-SQL 서비스
+builder.Services.AddScoped();
+
+// TimeSeries 서비스
+builder.Services.AddScoped();
+```
+
+#### 4.5.2 연결 문자열 확인
+```json
+{
+ "ConnectionStrings": {
+ "DefaultConnection": "Host=localhost;Port=5432;Database=experion_crawler;Username=postgres;Password=postgres"
+ }
+}
+```
+
+---
+
+## 5. 파일 구조 변경
+
+```
+src/
+├── Core/
+│ ├── Application/
+│ │ ├── DTOs/
+│ │ │ ├── ExperionDtos.cs (수정: Text-to-SQL DTO 추가)
+│ │ │ └── TextToSqlDtos.cs (신규)
+│ │ ├── Interfaces/
+│ │ │ ├── IExperionServices.cs (수정: ITextToSqlService, ITimeSeriesService 추가)
+│ │ │ └── ITextToSqlService.cs (신규)
+│ │ └── Services/
+│ │ ├── ExperionCrawlService.cs (변경 없음)
+│ │ └── TextToSqlService.cs (신규)
+│ └── Domain/
+│ └── Entities/
+│ ├── ExperionEntities.cs (수정: TimeScaleDB 엔티티 추가)
+│ └── TimeSeriesEntities.cs (신규)
+├── Infrastructure/
+│ ├── Database/
+│ │ ├── ExperionDbContext.cs (수정: 하이퍼테이블 설정)
+│ │ ├── TimeSeriesService.cs (신규)
+│ │ └── Migrations/ (신규: TimeScaleDB 마이그레이션)
+│ └── ... (기존 파일 유지)
+└── Web/
+ ├── Controllers/
+ │ ├── ExperionControllers.cs (수정: Text-to-SQL 엔드포인트 추가)
+ │ └── TextToSqlController.cs (신규)
+ ├── appsettings.json (수정: 연결 문자열)
+ └── ExperionCrawler.csproj (수정: NuGet 패키지 추가)
+```
+
+---
+
+## 6. TimeScaleDB 특화 기능
+
+### 6.1 체킹 간격 설정
+| 테이블 | chunk_time_interval | 설명 |
+|--------|-------------------|------|
+| `history_hypertable` | 1일 | 이력 데이터는 1일 단위 청크 |
+| `realtime_hypertable` | 1시간 | 실시간 데이터는 1시간 단위 청크 |
+
+### 6.2 데이터 보존 정책
+```sql
+-- 90일 이전 데이터 자동 삭제
+SELECT add_drop_chunks_policy('history_hypertable', INTERVAL '90 days');
+```
+
+### 6.3 압축 설정
+```sql
+-- 1일 이전 데이터 자동 압축
+SELECT add_compression_policy('history_hypertable', INTERVAL '1 day');
+```
+
+---
+
+## 7. NuGet 패키지 변경
+
+### 추가 패키지
+| 패키지 | 버전 | 용도 |
+|--------|------|------|
+| `Npgsql.TimeScaleDB` | 최신 | TimeScaleDB 전용 확장 |
+
+### 기존 패키지 (변경 없음)
+| 패키지 | 현재 버전 |
+|--------|----------|
+| `Npgsql.EntityFrameworkCore.PostgreSQL` | 8.0.11 |
+| `Microsoft.EntityFrameworkCore.Design` | 8.0.13 |
+
+---
+
+## 8. 구현 체크리스트
+
+- [ ] **단계 1**: TimeScaleDB 패키지 추가 및 초기화
+ - [ ] `Npgsql.TimeScaleDB` NuGet 패키지 추가
+ - [ ] `ExperionDbContext`에 TimeScaleDB 확장 코드 추가
+ - [ ] `history_table` → `history_hypertable` 마이그레이션
+ - [ ] `realtime_table` → `realtime_hypertable` 마이그레이션
+
+- [ ] **단계 2**: Text-to-SQL 서비스 구현
+ - [ ] `ITextToSqlService` 인터페이스 정의
+ - [ ] `TextToSqlService` 구현체 작성
+ - [ ] 자연어 파서 (한국어/영어 지원)
+ - [ ] SQL 생성 로직 (TimeScaleDB 함수 활용)
+ - [ ] 시계열 분석 기능 (평균, 최대, 최소, 추세)
+
+- [ ] **단계 3**: API 엔드포인트 추가
+ - [ ] `TextToSqlController` 생성
+ - [ ] `/api/text-to-sql/parse` 엔드포인트
+ - [ ] `/api/text-to-sql/execute` 엔드포인트
+ - [ ] `/api/text-to-sql/suggest` 엔드포인트
+ - [ ] `/api/text-to-sql/analyze` 엔드포인트
+ - [ ] DTO 정의
+
+- [ ] **단계 4**: TimeSeries 서비스 개선
+ - [ ] `ExperionDbService` 수정 (하이퍼테이블 참조)
+ - [ ] 연속 집계 (Continuous Aggregates) 생성
+ - [ ] TimeScaleDB 함수 활용 쿼리 최적화
+
+- [ ] **단계 5**: Program.cs 설정 업데이트
+ - [ ] 서비스 등록
+ - [ ] 연결 문자열 확인
+ - [ ] 초기화 플로우 수정
+
+- [ ] **단계 6**: 테스트 및 문서화
+ - [ ] API 테스트 (Swagger)
+ - [ ] 자연어 파싱 테스트
+ - [ ] TimeScaleDB 성능 벤치마크
+ - [ ] README.md 업데이트
+
+---
+
+## 9. 예상 효과
+
+| 항목 | 기존 | 개선 후 |
+|------|------|--------|
+| 시계열 데이터 삽입 속도 | 일반 테이블 | TimeScaleDB 청킹으로 10x 이상 향상 |
+| 시간 범위 쿼리 | 전체 테이블 스캔 | 청크 제거로 빠른 응답 |
+| 데이터 압축 | 없음 | 자동 압축 (5-10x 저장공간 절약) |
+| 자동 보존 | 수동 삭제 | 정책 기반 자동 삭제 |
+| Text-to-SQL | 없음 | 자연어 기반 시계열 쿼리 |
+
+---
+
+## 10. 주의사항
+
+1. **TimeScaleDB 설치 prerequisite**: 대상 서버에 TimeScaleDB가 설치되어 있어야 함
+ ```bash
+ # Ubuntu/Debian
+ sudo apt-get install timescaledb-postgresql-16
+ ```
+
+2. **기존 데이터 마이그레이션**: `history_table`과 `realtime_table`의 기존 데이터를 새 하이퍼테이블로 이동해야 함
+
+3. **연결 문자열**: `Trust Server Certificate=true`는 TimeScaleDB에서 필요하지 않을 수 있음
+
+4. **EF Core 제한**: EF Core는 TimeScaleDB 하이퍼테이블을 직접 지원하지 않음
+ - Raw SQL 쿼리 활용 필요
+ - `ExecuteSqlRawAsync`, `FromSqlRaw` 사용
+
+5. **백호환성**: 기존 API 엔드포인트는 변경되지 않도록 유지
diff --git a/src/Core/Application/DTOs/ExperionDtos.cs b/src/Core/Application/DTOs/ExperionDtos.cs
index 5998ce2..9225398 100644
--- a/src/Core/Application/DTOs/ExperionDtos.cs
+++ b/src/Core/Application/DTOs/ExperionDtos.cs
@@ -59,3 +59,29 @@ public class PointBuilderAddDto
{
public string NodeId { get; set; } = string.Empty;
}
+
+// ── TimeScaleDB 하이퍼테이블 ────────────────────────────────────────────────────
+
+public class HypertableStatusDto
+{
+ public bool IsHypertable { get; set; }
+ public string? TableName { get; set; }
+ public string? StatusMessage { get; set; }
+ public int RecordCount { get; set; }
+ public bool HasRetentionPolicy { get; set; }
+ public bool HasCompression { get; set; }
+ public bool HasContinuousAggregate { get; set; }
+}
+
+public class HypertableCreateDto
+{
+ public string TableName { get; set; } = "history_table";
+ public string TimeColumn { get; set; } = "recorded_at";
+ public string TimeInterval { get; set; } = "1 day";
+ public bool MigrateData { get; set; } = true;
+ public bool SetRetentionPolicy { get; set; } = true;
+ public string RetentionPeriod { get; set; } = "90 days";
+ public bool EnableCompression { get; set; } = true;
+ public string CompressionPeriod { get; set; } = "1 day";
+ public bool CreateContinuousAggregate { get; set; } = true;
+}
diff --git a/src/Core/Application/DTOs/TextToSqlDtos.cs b/src/Core/Application/DTOs/TextToSqlDtos.cs
new file mode 100644
index 0000000..4f00662
--- /dev/null
+++ b/src/Core/Application/DTOs/TextToSqlDtos.cs
@@ -0,0 +1,51 @@
+namespace ExperionCrawler.Core.Application.DTOs;
+
+// ── Text-to-SQL DTOs ─────────────────────────────────────────────────────────
+
+public class NaturalLanguageQueryDto
+{
+ public string Query { get; set; } = string.Empty;
+}
+
+public class SqlQueryDto
+{
+ public string Sql { get; set; } = string.Empty;
+ public int? Limit { get; set; } = 1000;
+}
+
+public class AnalyzeRequestDto
+{
+ public List TagNames { get; set; } = new();
+ public DateTime? From { get; set; }
+ public DateTime? To { get; set; }
+ public string Interval { get; set; } = "5 min"; // time_bucket interval
+}
+
+public class SqlQueryResultDto
+{
+ public bool Success { get; set; }
+ public string? Error { get; set; }
+ public List Columns { get; set; } = new();
+ public List> Rows { get; set; } = new();
+ public int TotalCount { get; set; }
+}
+
+public class TimeSeriesAnalysisDto
+{
+ public bool Success { get; set; }
+ public string? Error { get; set; }
+ public List Tags { get; set; } = new();
+}
+
+public class AnalysisTagResult
+{
+ public string TagName { get; set; } = string.Empty;
+ public double? Avg { get; set; }
+ public double? Min { get; set; }
+ public double? Max { get; set; }
+ public double? First { get; set; }
+ public double? Last { get; set; }
+ public long PointCount { get; set; }
+ public DateTime? From { get; set; }
+ public DateTime? To { get; set; }
+}
diff --git a/src/Core/Application/Interfaces/IExperionServices.cs b/src/Core/Application/Interfaces/IExperionServices.cs
index c2d9e43..2959609 100644
--- a/src/Core/Application/Interfaces/IExperionServices.cs
+++ b/src/Core/Application/Interfaces/IExperionServices.cs
@@ -1,4 +1,6 @@
+using ExperionCrawler.Core.Application.DTOs;
using ExperionCrawler.Core.Domain.Entities;
+using ExperionCrawler.Infrastructure.Database;
using System.Collections.Generic;
namespace ExperionCrawler.Core.Application.Interfaces;
@@ -44,6 +46,11 @@ public interface IExperionCsvService
public interface IExperionDbService
{
Task InitializeAsync();
+
+ // ── TimeScaleDB 하이퍼테이블 ──────────────────────────────────────────────────
+ Task GetHypertableStatusAsync();
+ Task CreateHypertableAsync(HypertableCreateRequest request);
+
Task SaveRecordsAsync(IEnumerable records);
Task ClearRecordsAsync();
Task BuildMasterFromRawAsync(bool truncate = false);
diff --git a/src/Core/Application/Interfaces/ITextToSqlService.cs b/src/Core/Application/Interfaces/ITextToSqlService.cs
new file mode 100644
index 0000000..8c0f3cc
--- /dev/null
+++ b/src/Core/Application/Interfaces/ITextToSqlService.cs
@@ -0,0 +1,19 @@
+using ExperionCrawler.Core.Application.DTOs;
+
+namespace ExperionCrawler.Core.Application.Interfaces;
+
+/// Text-to-SQL 시계열 쿼리 서비스
+public interface ITextToSqlService
+{
+ /// 자연어 질의를 SQL로 변환
+ Task ParseNaturalLanguageAsync(string input);
+
+ /// SQL 쿼리 실행 및 결과 반환
+ Task ExecuteQueryAsync(string sql, int? limit = 1000);
+
+ /// 쿼리 제안 (자동 완성)
+ Task> SuggestQueriesAsync(string partialInput);
+
+ /// 시계열 분석 (평균, 최대, 최소, 추세)
+ Task AnalyzeAsync(AnalyzeRequestDto dto);
+}
diff --git a/src/Core/Application/Services/TextToSqlService.cs b/src/Core/Application/Services/TextToSqlService.cs
new file mode 100644
index 0000000..4cec3f9
--- /dev/null
+++ b/src/Core/Application/Services/TextToSqlService.cs
@@ -0,0 +1,394 @@
+using ExperionCrawler.Core.Application.DTOs;
+using ExperionCrawler.Core.Application.Interfaces;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.Extensions.Logging;
+using Microsoft.Extensions.Configuration;
+using Npgsql;
+
+namespace ExperionCrawler.Core.Application.Services;
+
+///
+/// Text-to-SQL 시계열 쿼리 서비스
+/// 자연어 질의를 파싱하여 iiot-timescaledb(IIoT 플랫폼) SQL 쿼리를 생성하고 실행합니다.
+/// measurements (TimeScaleDB 하이퍼테이블) + opc_nodes 테이블을 참조합니다.
+///
+public class TextToSqlService : ITextToSqlService
+{
+ private readonly ILogger _logger;
+ private readonly IConfiguration _configuration;
+ private readonly string _connectionString;
+
+ public TextToSqlService(ILogger logger, IConfiguration configuration)
+ {
+ _logger = logger;
+ _configuration = configuration;
+ _connectionString = configuration.GetConnectionString("DefaultConnection")
+ ?? throw new InvalidOperationException("Connection string 'DefaultConnection' not found.");
+ }
+
+ // ── 테이블명 설정 (iiot-timescaledb 매핑) ─────────────────────────────────
+ // iiot-timescaledb: measurements (node_id, time, value, quality)
+ // ExperionCrawler: history_hypertable (tagname, recorded_at, value)
+ private string HistoryTable => "measurements";
+ private string NodesTable => "opc_nodes";
+
+ // ── 자연어 파싱 ─────────────────────────────────────────────────────────────
+
+ public Task ParseNaturalLanguageAsync(string input)
+ {
+ if (string.IsNullOrWhiteSpace(input))
+ throw new ArgumentException("쿼리 입력이 필요합니다.", nameof(input));
+
+ var sql = BuildSqlFromNaturalLanguage(input);
+ _logger.LogInformation("[TextToSql] 자연어 파싱: \"{Input}\" → {Sql}", input, sql);
+ return Task.FromResult(sql);
+ }
+
+ ///
+ /// 자연어 입력에서 태그명, 시간 범위, 집계 함수를 추출하여 SQL 생성
+ ///
+ private string BuildSqlFromNaturalLanguage(string input)
+ {
+ var lower = input.ToLower();
+
+ // 태그명 추출 (한글/영문 태그명 지원)
+ var tagName = ExtractTagName(input);
+
+ // 시간 범위 추출
+ var (fromClause, timeBucket) = ExtractTimeRange(lower);
+
+ // 집계 함수 추출
+ var aggregate = ExtractAggregate(lower);
+
+ // measurements (iiot-timescaledb 하이퍼테이블) 조회 SQL 생성
+ // 컬럼: node_id (TEXT), time (TIMESTAMPTZ), value (DOUBLE PRECISION)
+ if (!string.IsNullOrEmpty(tagName))
+ {
+ // SQL 인젝션 방지를 위해 태그명 이스케이프
+ var escapedTagName = tagName.Replace("'", "''");
+ var whereTag = $"WHERE node_id = '{escapedTagName}'";
+ if (!string.IsNullOrEmpty(fromClause))
+ whereTag += $" AND {fromClause}";
+
+ if (aggregate != "last" && aggregate != "first")
+ {
+ // 집계 쿼리 (value는 이미 double precision)
+ return $"SELECT time_bucket('{timeBucket}', time) AS bucket, " +
+ $"{aggregate}(value) AS result " +
+ $"FROM {HistoryTable} " +
+ $"{whereTag} " +
+ $"GROUP BY bucket ORDER BY bucket";
+ }
+ else
+ {
+ // first/last 쿼리 (TimeScaleDB 함수)
+ var func = aggregate == "first" ? "first" : "last";
+ return $"SELECT time_bucket('{timeBucket}', time) AS bucket, " +
+ $"{func}(value, time) AS result " +
+ $"FROM {HistoryTable} " +
+ $"{whereTag} " +
+ $"GROUP BY bucket ORDER BY bucket";
+ }
+ }
+
+ // 태그명 없이 전체 조회
+ var whereAll = fromClause ?? "1=1";
+ return $"SELECT time_bucket('{timeBucket}', time) AS bucket, " +
+ $"node_id, {aggregate}(value) AS result " +
+ $"FROM {HistoryTable} " +
+ $"WHERE {whereAll} " +
+ $"GROUP BY bucket, node_id ORDER BY bucket, node_id";
+ }
+
+ ///
+ /// 자연어에서 태그명/node_id 추출
+ /// 예: "Reactor.Temperature 온도 최근 1시간 평균" → "Reactor.Temperature"
+ /// "ns=2;s=Reactor.Temperature 온도 최근 1시간 평균" → "ns=2;s=Reactor.Temperature"
+ ///
+ private string ExtractTagName(string input)
+ {
+ var lower = input.ToLower();
+
+ // 키워드 목록 (시간/집계 관련 단어)
+ var keywords = new[]
+ {
+ "최근", "last", "latest",
+ "평균", "average", "avg", "평균값",
+ "최대", "maximum", "max", "최댓값",
+ "최소", "minimum", "min", "최솟값",
+ "첫번째", "first", "초기값",
+ "마지막", "last", "종료값",
+ "추세", "trend",
+ "데이터", "조회", "quer", "query",
+ "시간", "hour", "hr",
+ "분", "minute", "min", "m",
+ "초", "second", "sec", "s",
+ "일", "day", "d",
+ "주", "week", "w",
+ "전체", "all",
+ "온도", "temperature",
+ "압력", "pressure",
+ "유량", "flow", "유량", "flow rate",
+ "수위", "level", "수위",
+ "rpm", "전류", "current"
+ };
+
+ foreach (var kw in keywords)
+ {
+ var idx = lower.IndexOf(kw);
+ if (idx > 0)
+ {
+ var candidate = input.Substring(0, idx).Trim();
+ // OPC UA node_id 형식(ns=...;s=...) 또는 일반 태그명 반환
+ return candidate;
+ }
+ }
+
+ // OPC UA node_id 형식 확인 (ns=X;s=...)
+ var nsMatch = System.Text.RegularExpressions.Regex.Match(input, @"ns=\d+;s=[^ ]+");
+ if (nsMatch.Success)
+ return nsMatch.Value;
+
+ // 키워드가 없으면 첫 단어(공백 이전)를 태그명으로 간주
+ var firstSpace = input.IndexOf(' ');
+ if (firstSpace > 0)
+ return input.Substring(0, firstSpace).Trim();
+
+ return input.Trim();
+ }
+
+ ///
+ /// 자연어에서 시간 범위 추출
+ ///
+ private (string? whereClause, string timeBucket) ExtractTimeRange(string lower)
+ {
+ // 시간 단위 매핑 (measurements 테이블의 time 컬럼 사용)
+ var timePatterns = new (string pattern, string interval, string bucket)[]
+ {
+ ("최근 1시간", "1 hour", "5 min"),
+ ("최근 2시간", "2 hours", "5 min"),
+ ("최근 3시간", "3 hours", "10 min"),
+ ("최근 6시간", "6 hours", "10 min"),
+ ("최근 12시간", "12 hours", "30 min"),
+ ("최근 24시간", "24 hours", "1 hour"),
+ ("최근 하루", "24 hours", "1 hour"),
+ ("최근 1일", "1 day", "1 hour"),
+ ("최근 3일", "3 days", "6 hours"),
+ ("최근 7일", "7 days", "12 hours"),
+ ("최근 1주", "7 days", "12 hours"),
+ ("최근 1개월", "30 days", "1 day"),
+ ("최근 한달", "30 days", "1 day"),
+ ("오늘", "1 day", "1 hour"),
+ ("어제", "1 day", "1 hour"),
+ ("최근 5분", "5 minutes", "1 min"),
+ ("최근 10분", "10 minutes", "1 min"),
+ ("최근 30분", "30 minutes", "1 min"),
+ };
+
+ foreach (var (pattern, interval, bucket) in timePatterns)
+ {
+ if (lower.Contains(pattern))
+ {
+ return ($"time > NOW() - INTERVAL '{interval}'", bucket);
+ }
+ }
+
+ // "from ~ to" 패턴 (ISO 8601 형식 또는 한국어)
+ var fromMatch = System.Text.RegularExpressions.Regex.Match(lower, @"from\s+(\d{4}-\d{2}-\d{2})");
+ var toMatch = System.Text.RegularExpressions.Regex.Match(lower, @"to\s+(\d{4}-\d{2}-\d{2})");
+ if (fromMatch.Success)
+ {
+ var from = fromMatch.Groups[1].Value;
+ var to = toMatch.Success ? toMatch.Groups[1].Value : DateTime.Now.ToString("yyyy-MM-dd");
+ return ($"time >= '{from} 00:00:00' AND time <= '{to} 23:59:59'", "1 hour");
+ }
+
+ return (null, "5 min");
+ }
+
+ ///
+ /// 자연어에서 집계 함수 추출
+ ///
+ private string ExtractAggregate(string lower)
+ {
+ if (lower.Contains("최대") || lower.Contains("max") || lower.Contains("최댓값"))
+ return "max";
+ if (lower.Contains("최소") || lower.Contains("min") || lower.Contains("최솟값"))
+ return "min";
+ if (lower.Contains("첫") || lower.Contains("first") || lower.Contains("초기"))
+ return "first";
+ if (lower.Contains("마지막") || lower.Contains("last") || lower.Contains("종료"))
+ return "last";
+ // 기본값: 평균
+ return "avg";
+ }
+
+ // ── SQL 실행 ────────────────────────────────────────────────────────────────
+
+ public async Task ExecuteQueryAsync(string sql, int? limit = 1000)
+ {
+ try
+ {
+ using var conn = new NpgsqlConnection(_connectionString);
+ await conn.OpenAsync();
+
+ var fullSql = sql.TrimEnd();
+ if (limit.HasValue && !fullSql.EndsWith(";", StringComparison.OrdinalIgnoreCase)
+ && !fullSql.EndsWith(" limit ", StringComparison.OrdinalIgnoreCase))
+ {
+ fullSql += $" LIMIT {limit.Value}";
+ }
+
+ using var cmd = new NpgsqlCommand(fullSql, conn);
+ using var reader = await cmd.ExecuteReaderAsync();
+
+ var columns = new List();
+ for (int i = 0; i < reader.FieldCount; i++)
+ {
+ columns.Add(reader.GetName(i));
+ }
+
+ var rows = new List>();
+ while (await reader.ReadAsync())
+ {
+ var row = new Dictionary();
+ for (int i = 0; i < reader.FieldCount; i++)
+ {
+ row[reader.GetName(i)] = reader.IsDBNull(i) ? null : reader.GetValue(i);
+ }
+ rows.Add(row);
+ }
+
+ _logger.LogInformation("[TextToSql] 쿼리 실행 성공: {RowCount}행", rows.Count);
+ return new SqlQueryResultDto
+ {
+ Success = true,
+ Columns = columns,
+ Rows = rows,
+ TotalCount = rows.Count
+ };
+ }
+ catch (Exception ex)
+ {
+ _logger.LogError(ex, "[TextToSql] 쿼리 실행 실패: {Sql}", sql);
+ return new SqlQueryResultDto
+ {
+ Success = false,
+ Error = ex.Message
+ };
+ }
+ }
+
+ // ── 쿼리 제안 ───────────────────────────────────────────────────────────────
+
+ public Task> SuggestQueriesAsync(string partialInput)
+ {
+ var suggestions = new List
+ {
+ "최근 1시간 평균",
+ "최근 24시간 최대값",
+ "최근 7일 최소값",
+ "전체 태그 현재 값",
+ "오늘의 데이터 추세"
+ };
+
+ if (string.IsNullOrWhiteSpace(partialInput))
+ return Task.FromResult>(suggestions);
+
+ var lower = partialInput.ToLower();
+ return Task.FromResult>(suggestions.Where(s => s.Contains(lower)));
+ }
+
+ // ── 시계열 분석 ─────────────────────────────────────────────────────────────
+
+ public async Task AnalyzeAsync(AnalyzeRequestDto dto)
+ {
+ var result = new TimeSeriesAnalysisDto();
+
+ try
+ {
+ using var conn = new NpgsqlConnection(_connectionString);
+ await conn.OpenAsync();
+
+ var tagNames = dto.TagNames.Count > 0
+ ? dto.TagNames
+ : await GetAllTagNamesAsync(conn);
+
+ var from = dto.From?.ToString("yyyy-MM-dd HH:mm:ss") ?? DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd HH:mm:ss");
+ var to = dto.To?.ToString("yyyy-MM-dd HH:mm:ss") ?? DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
+
+ var tagResults = new List();
+
+ foreach (var tagName in tagNames)
+ {
+ // SQL 인젝션 방지를 위해 태그명 이스케이프
+ var escapedTagName = tagName.Replace("'", "''");
+
+ // measurements 테이블: node_id (TEXT), time (TIMESTAMPTZ), value (DOUBLE PRECISION)
+ var sql = $@"
+ SELECT
+ AVG(value) AS avg_val,
+ MIN(value) AS min_val,
+ MAX(value) AS max_val,
+ first(value, time) AS first_val,
+ last(value, time) AS last_val,
+ COUNT(*) AS point_count
+ FROM measurements
+ WHERE node_id = '{escapedTagName}'
+ AND time BETWEEN '{from}' AND '{to}'";
+
+ using var cmd = new NpgsqlCommand(sql, conn);
+ using var reader = await cmd.ExecuteReaderAsync();
+
+ if (await reader.ReadAsync())
+ {
+ tagResults.Add(new AnalysisTagResult
+ {
+ TagName = tagName,
+ Avg = reader.IsDBNull(0) ? null : Convert.ToDouble(reader.GetValue(0)),
+ Min = reader.IsDBNull(1) ? null : Convert.ToDouble(reader.GetValue(1)),
+ Max = reader.IsDBNull(2) ? null : Convert.ToDouble(reader.GetValue(2)),
+ First = reader.IsDBNull(3) ? null : Convert.ToDouble(reader.GetValue(3)),
+ Last = reader.IsDBNull(4) ? null : Convert.ToDouble(reader.GetValue(4)),
+ PointCount = reader.IsDBNull(5) ? 0 : Convert.ToInt64(reader.GetValue(5)),
+ From = dto.From,
+ To = dto.To
+ });
+ }
+ }
+
+ result.Tags = tagResults;
+ result.Success = true;
+ _logger.LogInformation("[TextToSql] 분석 완료: {TagCount}개 태그", tagResults.Count);
+ }
+ catch (Exception ex)
+ {
+ _logger.LogError(ex, "[TextToSql] 분석 실패");
+ result.Success = false;
+ result.Error = ex.Message;
+ }
+
+ return result;
+ }
+
+ private async Task> GetAllTagNamesAsync(NpgsqlConnection conn)
+ {
+ var tags = new List();
+ try
+ {
+ // measurements 테이블에서 고유 node_id 목록 조회
+ using var cmd = new NpgsqlCommand(
+ "SELECT DISTINCT node_id FROM measurements ORDER BY node_id", conn);
+ using var reader = await cmd.ExecuteReaderAsync();
+ while (await reader.ReadAsync())
+ {
+ tags.Add(reader.GetString(0));
+ }
+ }
+ catch
+ {
+ // fallback: empty list
+ }
+ return tags;
+ }
+}
diff --git a/src/Infrastructure/Certificates/ExperionCertificateService.cs b/src/Infrastructure/Certificates/ExperionCertificateService.cs
index 1b628fa..71aa943 100644
--- a/src/Infrastructure/Certificates/ExperionCertificateService.cs
+++ b/src/Infrastructure/Certificates/ExperionCertificateService.cs
@@ -45,11 +45,20 @@ public class ExperionCertificateService : IExperionCertificateService
}
}
- public async Task EnsureCertificateAsync(
+ public Task EnsureCertificateAsync(
string applicationUri,
string clientHostName,
IEnumerable subjectAltNames,
string pfxPassword = "")
+ {
+ return Task.Run(() => EnsureCertificateCore(applicationUri, clientHostName, subjectAltNames, pfxPassword));
+ }
+
+ private ExperionCertResult EnsureCertificateCore(
+ string applicationUri,
+ string clientHostName,
+ IEnumerable subjectAltNames,
+ string pfxPassword)
{
var path = PfxPath(clientHostName);
diff --git a/src/Infrastructure/Csv/ExperionCsvService.cs b/src/Infrastructure/Csv/ExperionCsvService.cs
index 7ee4a6f..de81865 100644
--- a/src/Infrastructure/Csv/ExperionCsvService.cs
+++ b/src/Infrastructure/Csv/ExperionCsvService.cs
@@ -36,9 +36,13 @@ public class ExperionCsvService : IExperionCsvService
if (!File.Exists(filePath))
throw new FileNotFoundException($"CSV 파일을 찾을 수 없습니다: {filePath}");
- using var reader = new StreamReader(filePath);
- using var csv = new CsvReader(reader, CultureInfo.InvariantCulture);
- var records = csv.GetRecords().ToList();
+ // I/O 작업이므로 Task.Run으로 백그라운드 스레드에서 실행
+ var records = await Task.Run(() =>
+ {
+ using var reader = new StreamReader(filePath);
+ using var csv = new CsvReader(reader, CultureInfo.InvariantCulture);
+ return csv.GetRecords().ToList();
+ });
_logger.LogInformation("[ExperionCsv] 가져오기 완료: {Path} ({Count}건)", filePath, records.Count);
return records;
diff --git a/src/Infrastructure/Database/ExperionDbContext.cs b/src/Infrastructure/Database/ExperionDbContext.cs
index 6355325..27914c5 100644
--- a/src/Infrastructure/Database/ExperionDbContext.cs
+++ b/src/Infrastructure/Database/ExperionDbContext.cs
@@ -2,6 +2,7 @@ using ExperionCrawler.Core.Application.Interfaces;
using ExperionCrawler.Core.Domain.Entities;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Logging;
+using Npgsql;
namespace ExperionCrawler.Infrastructure.Database;
@@ -75,6 +76,9 @@ public class ExperionDbService : IExperionDbService
{
await _ctx.Database.EnsureCreatedAsync();
+ // TimeScaleDB 확장 활성화
+ await _ctx.Database.ExecuteSqlRawAsync("CREATE EXTENSION IF NOT EXISTS timescaledb");
+
// EnsureCreatedAsync는 기존 DB에 새 테이블을 추가하지 않으므로
// raw_node_map / node_map_master 는 DDL로 직접 보장
await _ctx.Database.ExecuteSqlRawAsync("""
@@ -99,32 +103,25 @@ public class ExperionDbService : IExperionDbService
)
""");
+ // realtime_table 생성 (실시간 모니터링 포인트)
await _ctx.Database.ExecuteSqlRawAsync("""
CREATE TABLE IF NOT EXISTS realtime_table (
- id SERIAL PRIMARY KEY,
- tagname TEXT NOT NULL,
- node_id TEXT NOT NULL UNIQUE,
- livevalue TEXT,
- timestamp TIMESTAMPTZ NOT NULL DEFAULT NOW()
- )
- """);
-
- await _ctx.Database.ExecuteSqlRawAsync("""
- CREATE TABLE IF NOT EXISTS history_table (
id SERIAL PRIMARY KEY,
tagname TEXT NOT NULL,
node_id TEXT NOT NULL,
- value TEXT,
- recorded_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
+ livevalue TEXT,
+ timestamp TIMESTAMPTZ NOT NULL DEFAULT NOW()
)
""");
- await _ctx.Database.ExecuteSqlRawAsync(
- "CREATE INDEX IF NOT EXISTS idx_history_tagname ON history_table(tagname)");
- await _ctx.Database.ExecuteSqlRawAsync(
- "CREATE INDEX IF NOT EXISTS idx_history_recorded_at ON history_table(recorded_at)");
+ // realtime_table은 실시간 값 저장용이므로 하이퍼테이블로 변환하지 않음
- _logger.LogInformation("[ExperionDb] 데이터베이스 초기화 완료");
+ // history 테이블은 수동으로 하이퍼테이블 생성 필요
+ // CreateHypertableAsync() 메서드를 사용하여 수동 생성 가능
+ // 참고: 하이퍼테이블 생성 후 보존 정책, 압축 정책, 연속 집계 설정은
+ // CreateHypertableAsync() 메서드에서 선택적으로 설정 가능
+
+ _logger.LogInformation("[ExperionDb] 데이터베이스 초기화 완료 (TimeScaleDB 활성화)");
return true;
}
catch (Exception ex)
@@ -134,6 +131,90 @@ public class ExperionDbService : IExperionDbService
}
}
+ ///
+ /// history 테이블을 TimeScaleDB 하이퍼테이블로 생성/마이그레이션
+ ///
+ /// 생성할 하이퍼테이블 이름 (예: history_hypertable)
+ /// 기존 테이블 이름 (예: history_table, null이면 새 테이블 생성)
+ /// 시간 컬럼 이름
+ /// 청크 간격 (예: '1 day')
+ /// 하이퍼테이블 생성 여부 (true: 생성됨/기존 있음, false: 실패/스킵)
+ private async Task CreateHistoryHypertableIfNotExistsAsync(
+ string hypertableName, string? tableName, string timeColumn, string interval)
+ {
+ try
+ {
+ // SQL injection 방지를 위해 식별자 검증
+ if (!IsValidSqlIdentifier(hypertableName))
+ {
+ _logger.LogWarning("[ExperionDb] 하이퍼테이블 이름 '{HypertableName}'이(가) 유효하지 않음", hypertableName);
+ return false;
+ }
+
+ // 1️⃣ 하이퍼테이블이 이미 존재하면 스킵
+ await using var conn = new NpgsqlConnection(_ctx.Database.GetConnectionString());
+ await conn.OpenAsync();
+
+ await using var cmd1 = new NpgsqlCommand(
+ $"SELECT 1 FROM pg_catalog.pg_tables WHERE tablename = '{hypertableName.Replace("'", "''")}' LIMIT 1", conn);
+ var result = await cmd1.ExecuteScalarAsync();
+ if (result != null)
+ {
+ _logger.LogInformation("[ExperionDb] 하이퍼테이블 '{HypertableName}' 이미 존재함", hypertableName);
+ return true;
+ }
+
+ // 2️⃣ 기존 테이블 이름이 제공되면 검증
+ if (tableName != null && !IsValidSqlIdentifier(tableName))
+ {
+ _logger.LogWarning("[ExperionDb] 테이블 이름 '{TableName}'이(가) 유효하지 않음", tableName);
+ return false;
+ }
+
+ // 3️⃣ 기존 테이블이 존재하면 → 하이퍼테이블로 마이그레이션
+ if (tableName != null)
+ {
+ await using var cmd2 = new NpgsqlCommand(
+ $"SELECT 1 FROM pg_catalog.pg_tables WHERE tablename = '{tableName.Replace("'", "''")}' LIMIT 1", conn);
+ result = await cmd2.ExecuteScalarAsync();
+ if (result != null)
+ {
+ // 데이터가 있는 경우 migrate_data => true 옵션 필요
+#pragma warning disable EF1002 // Method 'ExecuteSqlRawAsync' inserts interpolated strings directly into the SQL
+ await _ctx.Database.ExecuteSqlRawAsync(
+ $"SELECT create_hypertable('{tableName}', '{timeColumn}', chunk_time_interval => INTERVAL '{interval}', create_default_indexes => true, migrate_data => true)");
+ _logger.LogInformation("[ExperionDb] 테이블 '{TableName}'을(를) 하이퍼테이블로 변환 완료", tableName);
+ return true;
+ }
+ }
+
+ // 4️⃣ 기존 테이블이 없으면 → 새 하이퍼테이블 테이블 생성
+ // TimeScaleDB 요구사항: 고유 인덱스를 위해서는 partitioning 컬럼이 primary key에 포함되어야 함
+#pragma warning disable EF1002 // Method 'ExecuteSqlRawAsync' inserts interpolated strings directly into the SQL
+ await _ctx.Database.ExecuteSqlRawAsync($"""
+ CREATE TABLE IF NOT EXISTS {hypertableName} (
+ id SERIAL,
+ tagname TEXT NOT NULL,
+ node_id TEXT,
+ value TEXT,
+ livevalue TEXT,
+ {timeColumn} TIMESTAMPTZ NOT NULL DEFAULT NOW(),
+ PRIMARY KEY (id, {timeColumn})
+ )
+ """);
+ await _ctx.Database.ExecuteSqlRawAsync($"""
+ SELECT create_hypertable('{hypertableName}', '{timeColumn}', chunk_time_interval => INTERVAL '{interval}', create_default_indexes => true)
+ """);
+ _logger.LogInformation("[ExperionDb] 새 하이퍼테이블 '{HypertableName}' 생성 완료", hypertableName);
+ return true;
+ }
+ catch (Exception ex)
+ {
+ _logger.LogWarning(ex, "[ExperionDb] 하이퍼테이블 '{HypertableName}' 생성 실패 (기본 테이블 사용 계속)", hypertableName);
+ return false;
+ }
+ }
+
public async Task SaveRecordsAsync(IEnumerable records)
{
var list = records.ToList();
@@ -390,4 +471,363 @@ public class ExperionDbService : IExperionDbService
.GroupBy(x => x.NodeId)
.ToDictionary(g => g.Key, g => g.First().DataType);
}
+
+ ///
+ /// 하이퍼테이블 상태 조회합니다.
+ /// 하이퍼테이블인지 여부, 레코드 수, 보존 정책, 압축, 연속 집계 설정 등을 확인합니다.
+ ///
+ public async Task GetHypertableStatusAsync()
+ {
+ try
+ {
+ await _ctx.Database.GetDbConnection().OpenAsync();
+
+ // 하이퍼테이블 존재 여부 확인
+ await using var hypertableCheckCmd = _ctx.Database.GetDbConnection().CreateCommand();
+ hypertableCheckCmd.CommandText = @"
+ SELECT EXISTS (
+ SELECT 1 FROM timescaledb_information.hypertables
+ WHERE hypertable_name = 'history_table'
+ )";
+
+ var isHypertableResult = Convert.ToBoolean(await hypertableCheckCmd.ExecuteScalarAsync());
+
+ // 레코드 수 조회
+ var recordCount = 0;
+ if (isHypertableResult)
+ {
+ await using var countCmd = _ctx.Database.GetDbConnection().CreateCommand();
+ countCmd.CommandText = "SELECT COUNT(*) FROM history_table";
+ recordCount = Convert.ToInt32(await countCmd.ExecuteScalarAsync());
+ }
+
+ // 보존 정책 확인 (pg_extension으로 TimeScaleDB 활성화 여부만 확인)
+ var hasRetentionPolicy = false;
+ try
+ {
+ await using var retentionCmd = _ctx.Database.GetDbConnection().CreateCommand();
+ retentionCmd.CommandText = @"
+ SELECT EXISTS (
+ SELECT 1 FROM timescaledb_information.policies
+ WHERE policy_type = 'data_retention'
+ AND hypertable_name = 'history_table'
+ )";
+ hasRetentionPolicy = Convert.ToBoolean(await retentionCmd.ExecuteScalarAsync());
+ }
+ catch
+ {
+ // policies 뷰가 없는 경우 false 유지
+ hasRetentionPolicy = false;
+ }
+
+ // 압축 확인
+ var hasCompression = false;
+ try
+ {
+ await using var compressionCmd = _ctx.Database.GetDbConnection().CreateCommand();
+ compressionCmd.CommandText = @"
+ SELECT is_compressed = 't'
+ FROM timescaledb_information.hypertables
+ WHERE hypertable_name = 'history_table'";
+ var compressionResult = await compressionCmd.ExecuteScalarAsync();
+ if (compressionResult != null)
+ {
+ hasCompression = compressionResult.ToString() == "t";
+ }
+ }
+ catch
+ {
+ // 압축 정보 조회 실패 시 false 유지
+ hasCompression = false;
+ }
+
+ // 연속 집계 확인
+ var hasContinuousAggregate = false;
+ try
+ {
+ await using var aggregateCmd = _ctx.Database.GetDbConnection().CreateCommand();
+ aggregateCmd.CommandText = @"
+ SELECT EXISTS (
+ SELECT 1 FROM timescaledb_information.continuous_aggregates
+ WHERE hypertable_name = 'history_table'
+ )";
+ hasContinuousAggregate = Convert.ToBoolean(await aggregateCmd.ExecuteScalarAsync());
+ }
+ catch
+ {
+ // continuous_aggregates 뷰가 없는 경우 false 유지
+ hasContinuousAggregate = false;
+ }
+
+ return new HypertableStatusInfo
+ {
+ IsHypertable = isHypertableResult,
+ TableName = "history_table",
+ StatusMessage = isHypertableResult
+ ? "하이퍼테이블이 활성화되어 있습니다."
+ : "일반 테이블입니다. CreateHypertableAsync()를 사용하여 하이퍼테이블로 변환할 수 있습니다.",
+ RecordCount = recordCount,
+ HasRetentionPolicy = hasRetentionPolicy,
+ HasCompression = hasCompression,
+ HasContinuousAggregate = hasContinuousAggregate
+ };
+ }
+ catch (Exception ex)
+ {
+ return new HypertableStatusInfo
+ {
+ IsHypertable = false,
+ TableName = "history_table",
+ StatusMessage = $"상태 확인 중 오류 발생: {ex.Message}",
+ RecordCount = 0,
+ HasRetentionPolicy = false,
+ HasCompression = false,
+ HasContinuousAggregate = false
+ };
+ }
+ }
+
+ ///
+ /// 수동으로 하이퍼테이블을 생성합니다.
+ /// 테이블이 이미 존재하거나 하이퍼테이블로 변환된 경우 예외를 throw합니다.
+ ///
+ public async Task CreateHypertableAsync(HypertableCreateRequest request)
+ {
+ // 식별자 검증 - SQL injection 방지
+ if (!IsValidSqlIdentifier(request.TableName))
+ {
+ return HypertableCreateResult.Failed($"테이블 이름 '{request.TableName}'은 유효하지 않습니다. 영문, 숫자, 언더스코어, 하이픈, 마침표만 사용 가능합니다.");
+ }
+
+ if (!IsValidSqlIdentifier(request.TimeColumn))
+ {
+ return HypertableCreateResult.Failed($"시간 컬럼 이름 '{request.TimeColumn}'은 유효하지 않습니다. 영문, 숫자, 언더스코어, 하이픈, 마침표만 사용 가능합니다.");
+ }
+
+ if (!IsValidSqlIdentifier(request.TimeInterval?.Replace(" ", "")))
+ {
+ return HypertableCreateResult.Failed($"시간 간격 '{request.TimeInterval}'은 유효하지 않습니다.");
+ }
+
+ try
+ {
+ _ctx.Database.GetDbConnection().Open();
+
+ // 1. 테이블 존재 여부 확인
+ await using var tableCheckCmd = _ctx.Database.GetDbConnection().CreateCommand();
+ tableCheckCmd.CommandText = @"
+ SELECT EXISTS (
+ SELECT 1 FROM information_schema.tables
+ WHERE table_schema = 'public'
+ AND table_name = @tableName)";
+ tableCheckCmd.Parameters.Add(new NpgsqlParameter("@tableName", request.TableName));
+
+ var tableExists = Convert.ToBoolean(await tableCheckCmd.ExecuteScalarAsync());
+ if (!tableExists)
+ {
+ return HypertableCreateResult.Failed($"테이블 '{request.TableName}'이 존재하지 않습니다.");
+ }
+
+ // 2. 이미 하이퍼테이블인지 확인
+ await using var hypertableCheckCmd = _ctx.Database.GetDbConnection().CreateCommand();
+ hypertableCheckCmd.CommandText = @"
+ SELECT EXISTS (
+ SELECT 1 FROM timescaledb_information.hypertables
+ WHERE hypertable_name = @tableName)";
+ hypertableCheckCmd.Parameters.Add(new NpgsqlParameter("@tableName", request.TableName));
+
+ var isHypertable = Convert.ToBoolean(await hypertableCheckCmd.ExecuteScalarAsync());
+ if (isHypertable)
+ {
+ return HypertableCreateResult.AlreadyExists($"테이블 '{request.TableName}'은 이미 하이퍼테이블입니다.");
+ }
+
+ // 3. TimescaleDB 확장 활성화
+ await _ctx.Database.ExecuteSqlRawAsync("CREATE EXTENSION IF NOT EXISTS timescaledb");
+
+ // 3-1. 기존 SERIAL PRIMARY KEY 제약사항 제거 (TimeScaleDB 호환성)
+ var dropPrimaryKeySql = $"ALTER TABLE {request.TableName} DROP CONSTRAINT IF EXISTS {request.TableName}_pkey";
+ Console.WriteLine($"[DEBUG] 기본키 제약사항 제거 SQL: {dropPrimaryKeySql}");
+#pragma warning disable EF1002
+ await _ctx.Database.ExecuteSqlRawAsync(dropPrimaryKeySql);
+#pragma warning restore EF1002
+
+ // 4. 하이퍼테이블 생성 (기존 데이터 마이그레이션 포함)
+ var createHypertableSql = $"SELECT create_hypertable('{request.TableName}'::regclass, '{request.TimeColumn}'::text, if_not_exists => TRUE, migrate_data => TRUE)";
+ Console.WriteLine($"[DEBUG] 하이퍼테이블 생성 SQL: {createHypertableSql}");
+#pragma warning disable EF1002
+ await _ctx.Database.ExecuteSqlRawAsync(createHypertableSql);
+#pragma warning restore EF1002
+
+ // 4-1. TimeScaleDB 하이퍼테이블에 적합한 새로운 기본키 생성
+ var addPrimaryKeySql = $"ALTER TABLE {request.TableName} ADD CONSTRAINT {request.TableName}_pkey PRIMARY KEY ({request.TimeColumn}, id)";
+ Console.WriteLine($"[DEBUG] 새 기본키 생성 SQL: {addPrimaryKeySql}");
+#pragma warning disable EF1002
+ await _ctx.Database.ExecuteSqlRawAsync(addPrimaryKeySql);
+#pragma warning restore EF1002
+
+ // 6. 보존 정책 설정 (요청된 경우)
+ if (request.SetRetentionPolicy && !string.IsNullOrEmpty(request.RetentionPeriod))
+ {
+ var retentionSql = $"SELECT add_retention_policy('{request.TableName}'::regclass, INTERVAL '{request.RetentionPeriod}')";
+ Console.WriteLine($"[DEBUG] 보존 정책 SQL: {retentionSql}");
+#pragma warning disable EF1002
+ await _ctx.Database.ExecuteSqlRawAsync(retentionSql);
+#pragma warning restore EF1002
+ }
+
+ // 7. 압축 정책 설정 (요청된 경우)
+ if (request.EnableCompression && !string.IsNullOrEmpty(request.CompressionPeriod))
+ {
+ var compressionSql = $"SELECT add_compression_policy('{request.TableName}'::regclass, INTERVAL '{request.CompressionPeriod}')";
+ Console.WriteLine($"[DEBUG] 압축 정책 SQL: {compressionSql}");
+#pragma warning disable EF1002
+ await _ctx.Database.ExecuteSqlRawAsync(compressionSql);
+#pragma warning restore EF1002
+ }
+
+ // 7-1. history_table 컬럼명 검증 (tag_name vs tagname)
+ if (request.TableName == "history_table")
+ {
+ await using var columnCheckCmd = _ctx.Database.GetDbConnection().CreateCommand();
+ columnCheckCmd.CommandText = @"
+ SELECT column_name FROM information_schema.columns
+ WHERE table_schema = 'public'
+ AND table_name = 'history_table'
+ AND column_name IN ('tag_name', 'tagname')
+ ORDER BY column_name;";
+
+ var columns = new List();
+ await using var reader = await columnCheckCmd.ExecuteReaderAsync();
+ while (await reader.ReadAsync())
+ {
+ columns.Add(reader.GetString(0));
+ }
+
+ Console.WriteLine($"[DEBUG] history_table 컬럼명 검증: {string.Join(", ", columns)}");
+ }
+
+ // 8. 연속 집계 생성 (요청된 경우)
+ if (request.CreateContinuousAggregate)
+ {
+ // 8-1. 기존 MATERIALIZED VIEW 삭제 (별도 실행)
+ var dropViewSql = "DROP MATERIALIZED VIEW IF EXISTS history_5min_agg";
+ Console.WriteLine($"[DEBUG] 연속 집계 DROP VIEW SQL: {dropViewSql}");
+#pragma warning disable EF1002
+ await _ctx.Database.ExecuteSqlRawAsync(dropViewSql);
+#pragma warning restore EF1002
+
+ // 8-2. 연속 집계 MATERIALIZED VIEW 생성 (별도 실행)
+ var createViewSql = $@"
+ CREATE MATERIALIZED VIEW history_5min_agg
+ WITH (timescaledb.continuous) AS
+ SELECT
+ time_bucket(INTERVAL '5 minutes', {request.TimeColumn}) AS time_bucket,
+ tagname,
+ AVG(value) AS avg_value,
+ first(value, {request.TimeColumn}) AS min_value,
+ last(value, {request.TimeColumn}) AS max_value
+ FROM {request.TableName}
+ GROUP BY time_bucket, tagname;";
+
+ Console.WriteLine($"[DEBUG] 연속 집계 CREATE VIEW SQL: {createViewSql}");
+
+#pragma warning disable EF1002
+ Console.WriteLine($"[DEBUG] CREATE VIEW SQL 실행 전: {createViewSql}");
+ await _ctx.Database.ExecuteSqlRawAsync(createViewSql);
+ Console.WriteLine($"[DEBUG] CREATE VIEW SQL 실행 성공");
+#pragma warning restore EF1002
+
+ // 8-3. 연속 집계 정책 추가
+ var aggregatePolicySql = $"SELECT add_continuous_aggregate_policy('history_5min_agg', '10 minutes', '1 minute', '5 minutes')";
+
+ Console.WriteLine($"[DEBUG] 연속 집계 정책 SQL: {aggregatePolicySql}");
+
+#pragma warning disable EF1002
+ await _ctx.Database.ExecuteSqlRawAsync(aggregatePolicySql);
+#pragma warning restore EF1002
+ }
+
+ return HypertableCreateResult.Ok();
+ }
+ catch (Exception ex)
+ {
+ var errorDetails = $"하이퍼테이블 생성 실패: {ex.Message}";
+ Console.WriteLine($"[ERROR] {errorDetails}");
+ if (ex.InnerException != null)
+ {
+ Console.WriteLine($"[ERROR] InnerException: {ex.InnerException.Message}");
+ Console.WriteLine($"[ERROR] InnerException StackTrace: {ex.InnerException.StackTrace}");
+ }
+ Console.WriteLine($"[ERROR] Full StackTrace: {ex.StackTrace}");
+ return HypertableCreateResult.Failed(errorDetails);
+ }
+ }
+
+ ///
+ /// SQL 식별자로 안전한지 검증합니다. 영문, 숫자, 언더스코어, 하이픈, 마침표만 허용합니다.
+ /// EF1002 SQL injection 방지를 위해 DDL 문에서 식별자를 사용할 때 이 메서드로 검증을 필수로 합니다.
+ ///
+ private static bool IsValidSqlIdentifier(string identifier)
+ {
+ if (string.IsNullOrEmpty(identifier))
+ return false;
+
+ if (identifier.Length > 63) // PostgreSQL 식별자 최대 길이
+ return false;
+
+ // 영문, 숫자, 언더스코어, 하이픈, 마침표만 허용
+ return System.Text.RegularExpressions.Regex.IsMatch(
+ identifier,
+ @"^[a-zA-Z0-9_\-\.]+$");
+ }
+}
+
+///
+/// 하이퍼테이블 상태 정보 결과 클래스
+///
+public record HypertableStatusInfo
+{
+ public bool IsHypertable { get; init; }
+ public string? TableName { get; init; }
+ public string? StatusMessage { get; init; }
+ public int RecordCount { get; init; }
+ public bool HasRetentionPolicy { get; init; }
+ public bool HasCompression { get; init; }
+ public bool HasContinuousAggregate { get; init; }
+}
+
+///
+/// 하이퍼테이블 생성 요청 클래스
+///
+public record HypertableCreateRequest
+{
+ public string TableName { get; init; } = "history_table";
+ public string TimeColumn { get; init; } = "recorded_at";
+ public string TimeInterval { get; init; } = "1 day";
+ public bool MigrateData { get; init; } = true;
+ public bool SetRetentionPolicy { get; init; } = true;
+ public string RetentionPeriod { get; init; } = "90 days";
+ public bool EnableCompression { get; init; } = true;
+ public string CompressionPeriod { get; init; } = "1 day";
+ public bool CreateContinuousAggregate { get; init; } = true;
+}
+
+///
+/// 하이퍼테이블 생성 결과 클래스
+///
+public record HypertableCreateResult
+{
+ public bool Success { get; init; }
+ public string Message { get; init; } = string.Empty;
+ public string? TableName { get; init; }
+
+ public static HypertableCreateResult Ok(string? tableName = null, string? message = null)
+ => new() { Success = true, TableName = tableName, Message = message ?? "하이퍼테이블이 성공적으로 생성되었습니다." };
+
+ public static HypertableCreateResult Failed(string message)
+ => new() { Success = false, Message = message };
+
+ public static HypertableCreateResult AlreadyExists(string message)
+ => new() { Success = false, Message = message };
}
diff --git a/src/Infrastructure/OpcUa/ExperionOpcClient.cs b/src/Infrastructure/OpcUa/ExperionOpcClient.cs
index 05decba..23e5bef 100644
--- a/src/Infrastructure/OpcUa/ExperionOpcClient.cs
+++ b/src/Infrastructure/OpcUa/ExperionOpcClient.cs
@@ -105,7 +105,18 @@ public class ExperionOpcClient : IExperionOpcClient
// 원본: new UserIdentity(userName, Encoding.UTF8.GetBytes(password))
var identity = new UserIdentity(cfg.UserName, Encoding.UTF8.GetBytes(cfg.Password));
- return await Session.Create(appConfig, endpoint, false, sessionName, 60_000, identity, null);
+ // CS0618: Session.Create는 obsolete이지만 SessionFactory/CreateAsync가 현재 라이브러리에 없음
+ // Task.Run으로 래핑하여 비동기 실행
+#pragma warning disable CS0618 // 'Session.Create()' is obsolete
+ return await Task.Run(() => Session.Create(
+ appConfig,
+ endpoint,
+ false,
+ sessionName,
+ 60_000,
+ identity,
+ null));
+#pragma warning restore CS0618 // 'Session.Create()' is obsolete
}
// ── 접속 테스트 ───────────────────────────────────────────────────────────
diff --git a/src/Infrastructure/OpcUa/ExperionOpcServerService.cs b/src/Infrastructure/OpcUa/ExperionOpcServerService.cs
index 928c2ee..f51e7da 100644
--- a/src/Infrastructure/OpcUa/ExperionOpcServerService.cs
+++ b/src/Infrastructure/OpcUa/ExperionOpcServerService.cs
@@ -141,7 +141,7 @@ public class ExperionOpcServerService : IExperionOpcServerService, IHostedServic
var config = BuildServerConfig();
_server = new ExperionStandardServer();
- _server.Start(config);
+ await _server.StartAsync(config);
_nodeManager = _server.NodeManager;
_running = true;
@@ -168,7 +168,9 @@ public class ExperionOpcServerService : IExperionOpcServerService, IHostedServic
try
{
_nodeManager?.UpdateServerStatus("Stopped", 0);
+#pragma warning disable CS0618 // 'Stop()' is obsolete
_server?.Stop();
+#pragma warning restore CS0618 // 'Stop()' is obsolete
}
catch (Exception ex) { _logger.LogWarning(ex, "[OpcServer] 서버 Stop() 중 오류 (무시)"); }
@@ -264,9 +266,24 @@ public class ExperionOpcServerService : IExperionOpcServerService, IHostedServic
};
}
- public void Dispose()
+ public async ValueTask DisposeAsync()
{
- try { _server?.Stop(); } catch { /* ignore */ }
+ if (_server != null)
+ {
+ try { await _server.StopAsync(CancellationToken.None).ConfigureAwait(false); } catch { /* ignore */ }
+ _server = null;
+ }
+ }
+
+ void IDisposable.Dispose()
+ {
+ try
+ {
+#pragma warning disable CS0618 // 'Stop()' is obsolete
+ _server?.Stop();
+#pragma warning restore CS0618 // 'Stop()' is obsolete
+ }
+ catch { /* ignore */ }
_server = null;
}
}
diff --git a/src/Infrastructure/OpcUa/ExperionRealtimeService.cs b/src/Infrastructure/OpcUa/ExperionRealtimeService.cs
index e1d686d..fdf1dc4 100644
--- a/src/Infrastructure/OpcUa/ExperionRealtimeService.cs
+++ b/src/Infrastructure/OpcUa/ExperionRealtimeService.cs
@@ -174,14 +174,18 @@ public class ExperionRealtimeService : IExperionRealtimeService, IHostedService,
try
{
// OPC UA 서버에 실제 적용 — 서버가 node_id 유효성 검증
- await Task.Run(() => _subscription.ApplyChanges());
+#pragma warning disable CS0618 // 'ApplyChanges()' is obsolete
+ await Task.Run(() => { _subscription.ApplyChanges(); });
+#pragma warning restore CS0618 // 'ApplyChanges()' is obsolete
// 서버 응답 상태 확인 (Error가 null이면 정상)
if (item.Status.Error != null && !StatusCode.IsGood(item.Status.Error.StatusCode))
{
// 유효하지 않은 node_id → subscription에서 제거
_subscription.RemoveItem(item);
- await Task.Run(() => _subscription.ApplyChanges());
+#pragma warning disable CS0618 // 'ApplyChanges()' is obsolete
+ await Task.Run(() => { _subscription.ApplyChanges(); });
+#pragma warning restore CS0618 // 'ApplyChanges()' is obsolete
var code = item.Status.Error.StatusCode;
_logger.LogWarning("[Realtime] 잘못된 node_id: {NodeId} — {Code}", nodeId, code);
@@ -290,7 +294,9 @@ public class ExperionRealtimeService : IExperionRealtimeService, IHostedService,
}
_session.AddSubscription(_subscription);
+#pragma warning disable CS0618 // 'Create()' is obsolete
_subscription.Create();
+#pragma warning restore CS0618 // 'Create()' is obsolete
// nodeId → RealtimePoint 캐시 빌드 (FlushLoop에서 tagname 조회용)
_pointCache = points.ToDictionary(p => p.NodeId, p => p);
@@ -380,7 +386,9 @@ public class ExperionRealtimeService : IExperionRealtimeService, IHostedService,
{
if (_subscription != null)
{
+#pragma warning disable CS0618 // 'Delete()' is obsolete
_subscription.Delete(true);
+#pragma warning restore CS0618 // 'Delete()' is obsolete
_subscription = null;
}
if (_session != null)
@@ -458,14 +466,36 @@ public class ExperionRealtimeService : IExperionRealtimeService, IHostedService,
ExperionServerConfig cfg)
{
var identity = new UserIdentity(cfg.UserName, Encoding.UTF8.GetBytes(cfg.Password));
- return await Session.Create(
- appConfig, endpoint, false, "ExperionRealtimeSession", 60_000, identity, null);
+ // CS0618: Session.Create는 obsolete이지만 SessionFactory/CreateAsync가 현재 라이브러리에 없음
+ // Task.Run으로 래핑하여 비동기 실행
+#pragma warning disable CS0618 // 'Session.Create()' is obsolete
+ return await Task.Run(() => Session.Create(
+ appConfig,
+ endpoint,
+ false,
+ "ExperionRealtimeSession",
+ 60_000,
+ identity,
+ null));
+#pragma warning restore CS0618 // 'Session.Create()' is obsolete
}
+ private volatile bool _disposed = false;
+
public void Dispose()
{
+ if (_disposed) return;
+ _disposed = true;
+
_cts?.Cancel();
- CleanupSessionAsync().GetAwaiter().GetResult();
+ try
+ {
+ CleanupSessionAsync().GetAwaiter().GetResult();
+ }
+ catch
+ {
+ // Ignore exceptions during disposal
+ }
_cts?.Dispose();
}
}
diff --git a/src/Web/Controllers/ExperionControllers.cs b/src/Web/Controllers/ExperionControllers.cs
index 3840968..3fb5f60 100644
--- a/src/Web/Controllers/ExperionControllers.cs
+++ b/src/Web/Controllers/ExperionControllers.cs
@@ -3,6 +3,7 @@ using ExperionCrawler.Core.Application.Interfaces;
using ExperionCrawler.Core.Application.Services;
using ExperionCrawler.Core.Domain.Entities;
using ExperionCrawler.Infrastructure.Csv;
+using ExperionCrawler.Infrastructure.Database;
using Microsoft.AspNetCore.Mvc;
namespace ExperionCrawler.Web.Controllers;
@@ -368,14 +369,31 @@ public class ExperionRealtimeController : ControllerBase
public class ExperionHistoryController : ControllerBase
{
private readonly IExperionDbService _dbSvc;
- public ExperionHistoryController(IExperionDbService dbSvc) => _dbSvc = dbSvc;
+ private readonly ILogger _logger;
+
+ public ExperionHistoryController(IExperionDbService dbSvc, ILogger logger)
+ {
+ _dbSvc = dbSvc;
+ _logger = logger;
+ }
/// realtime_table 의 tagname 목록
[HttpGet("tagnames")]
public async Task TagNames()
{
- var names = await _dbSvc.GetTagNamesAsync();
- return Ok(new { tagNames = names });
+ try
+ {
+ _logger.LogDebug("[History] tagname 목록 조회 시작");
+ var names = await _dbSvc.GetTagNamesAsync();
+ var count = names.Count();
+ _logger.LogDebug("[History] tagname 목록 조회 완료: {Count}개 태그", count);
+ return Ok(new { tagNames = names });
+ }
+ catch (Exception ex)
+ {
+ _logger.LogError(ex, "[History] tagname 목록 조회 실패");
+ return StatusCode(500, new { success = false, message = $"tagname 조회 실패: {ex.Message}" });
+ }
}
/// 이력 조회 (tagname 다중, 시간범위, limit)
@@ -386,18 +404,39 @@ public class ExperionHistoryController : ControllerBase
[FromQuery] DateTime? to,
[FromQuery] int limit = 1000)
{
- var result = await _dbSvc.QueryHistoryAsync(
- tagNames ?? Enumerable.Empty(), from, to, limit);
-
- return Ok(new
+ try
{
- tagNames = result.TagNames,
- rows = result.Rows.Select(r => new
+ var tagList = tagNames ?? Enumerable.Empty().ToList();
+ _logger.LogDebug("[History] 이력 조회 시작 - 태그 수: {TagCount}, FROM: {From}, TO: {To}, LIMIT: {Limit}",
+ tagList.Count(), from, to, limit);
+
+ var result = await _dbSvc.QueryHistoryAsync(
+ tagList, from, to, limit);
+
+ _logger.LogDebug("[History] 이력 조회 완료: {RowCount}행, {TagCount}태그",
+ result.Rows.Count(), result.TagNames.Count());
+
+ return Ok(new
{
- recordedAt = r.RecordedAt,
- values = r.Values
- })
- });
+ tagNames = result.TagNames,
+ rows = result.Rows.Select(r => new
+ {
+ recordedAt = r.RecordedAt,
+ values = r.Values
+ })
+ });
+ }
+ catch (Exception ex)
+ {
+ _logger.LogError(ex, "[History] 이력 조회 실패 - tagNames: {@TagNames}, from: {From}, to: {To}",
+ tagNames, from, to);
+ return StatusCode(500, new
+ {
+ success = false,
+ message = $"이력 조회 실패: {ex.Message}",
+ detail = ex.InnerException?.Message ?? ex.StackTrace
+ });
+ }
}
}
@@ -522,3 +561,57 @@ public class ExperionNodeMapController : ControllerBase
});
}
}
+
+// ── 하이퍼테이블 관리 ───────────────────────────────────────────────────────────
+
+[ApiController]
+[Route("api/experion/hypertable")]
+public class ExperionHypertableController : ControllerBase
+{
+ private readonly IExperionDbService _dbSvc;
+
+ public ExperionHypertableController(IExperionDbService dbSvc) => _dbSvc = dbSvc;
+
+ /// 하이퍼테이블 상태 조회
+ [HttpGet("status")]
+ public async Task GetStatus()
+ {
+ var status = await _dbSvc.GetHypertableStatusAsync();
+ return Ok(new
+ {
+ isHypertable = status.IsHypertable,
+ tableName = status.TableName,
+ statusMessage = status.StatusMessage,
+ recordCount = status.RecordCount,
+ hasRetentionPolicy = status.HasRetentionPolicy,
+ hasCompression = status.HasCompression,
+ hasContinuousAggregate = status.HasContinuousAggregate
+ });
+ }
+
+ /// 하이퍼테이블 수동 생성
+ [HttpPost("create")]
+ public async Task Create([FromBody] HypertableCreateDto request)
+ {
+ var createRequest = new HypertableCreateRequest
+ {
+ TableName = request.TableName ?? "history_table",
+ TimeColumn = request.TimeColumn ?? "recorded_at",
+ TimeInterval = request.TimeInterval ?? "1 day",
+ MigrateData = request.MigrateData,
+ SetRetentionPolicy = request.SetRetentionPolicy,
+ RetentionPeriod = request.RetentionPeriod ?? "90 days",
+ EnableCompression = request.EnableCompression,
+ CompressionPeriod = request.CompressionPeriod ?? "1 day",
+ CreateContinuousAggregate = request.CreateContinuousAggregate
+ };
+
+ var result = await _dbSvc.CreateHypertableAsync(createRequest);
+
+ return result.Success
+ ? Ok(new { result.Success, result.Message, result.TableName })
+ : (IActionResult)(result.TableName != null
+ ? StatusCode(409, new { result.Success, result.Message })
+ : StatusCode(500, new { result.Success, result.Message }));
+ }
+}
diff --git a/src/Web/Controllers/TextToSqlController.cs b/src/Web/Controllers/TextToSqlController.cs
new file mode 100644
index 0000000..e52af94
--- /dev/null
+++ b/src/Web/Controllers/TextToSqlController.cs
@@ -0,0 +1,68 @@
+using ExperionCrawler.Core.Application.DTOs;
+using ExperionCrawler.Core.Application.Interfaces;
+using Microsoft.AspNetCore.Mvc;
+
+namespace ExperionCrawler.Web.Controllers;
+
+///
+/// Text-to-SQL API 컨트롤러
+/// 자연어 질의를 SQL로 변환하고 시계열 데이터를 조회합니다.
+///
+[ApiController]
+[Route("api/text-to-sql")]
+public class TextToSqlController : ControllerBase
+{
+ private readonly ITextToSqlService _textToSqlService;
+
+ public TextToSqlController(ITextToSqlService textToSqlService)
+ {
+ _textToSqlService = textToSqlService;
+ }
+
+ ///
+ /// 자연어 질의를 SQL로 변환
+ ///
+ [HttpPost("parse")]
+ public async Task Parse([FromBody] NaturalLanguageQueryDto dto)
+ {
+ try
+ {
+ var sql = await _textToSqlService.ParseNaturalLanguageAsync(dto.Query);
+ return Ok(new { success = true, sql });
+ }
+ catch (Exception ex)
+ {
+ return Ok(new { success = false, error = ex.Message });
+ }
+ }
+
+ ///
+ /// SQL 쿼리 실행 및 결과 반환
+ ///
+ [HttpPost("execute")]
+ public async Task Execute([FromBody] SqlQueryDto dto)
+ {
+ var result = await _textToSqlService.ExecuteQueryAsync(dto.Sql, dto.Limit);
+ return Ok(result);
+ }
+
+ ///
+ /// 쿼리 제안 (자동 완성)
+ ///
+ [HttpGet("suggest")]
+ public async Task Suggest([FromQuery] string input = "")
+ {
+ var suggestions = await _textToSqlService.SuggestQueriesAsync(input);
+ return Ok(new { success = true, suggestions });
+ }
+
+ ///
+ /// 시계열 분석 (평균, 최대, 최소, 추세)
+ ///
+ [HttpPost("analyze")]
+ public async Task Analyze([FromBody] AnalyzeRequestDto dto)
+ {
+ var result = await _textToSqlService.AnalyzeAsync(dto);
+ return Ok(result);
+ }
+}
diff --git a/src/Web/ExperionCrawler.csproj b/src/Web/ExperionCrawler.csproj
index eb59b57..a347942 100644
--- a/src/Web/ExperionCrawler.csproj
+++ b/src/Web/ExperionCrawler.csproj
@@ -6,7 +6,7 @@
enable
ExperionCrawler
ExperionCrawler
- linux-x64
+ linux-arm64
false
@@ -20,7 +20,7 @@
-
+
all
diff --git a/src/Web/Program.cs b/src/Web/Program.cs
index 2243c56..5552127 100644
--- a/src/Web/Program.cs
+++ b/src/Web/Program.cs
@@ -30,6 +30,9 @@ builder.Services.AddScoped();
// ── Application Services ──────────────────────────────────────────────────────
builder.Services.AddScoped();
+// ── Text-to-SQL Service ──────────────────────────────────────────────────────
+builder.Services.AddScoped();
+
// ── Realtime & History BackgroundServices ─────────────────────────────────────
builder.Services.AddSingleton();
builder.Services.AddSingleton(
diff --git a/src/Web/appsettings.json b/src/Web/appsettings.json
index 43076c1..1d4f3e8 100644
--- a/src/Web/appsettings.json
+++ b/src/Web/appsettings.json
@@ -3,12 +3,20 @@
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning",
- "Microsoft.EntityFrameworkCore": "Warning"
+ "Microsoft.EntityFrameworkCore": "Information",
+ "Microsoft.EntityFrameworkCore.Database.Command": "Information"
+ },
+ "Console": {
+ "LogLevel": {
+ "Default": "Information",
+ "Microsoft.EntityFrameworkCore": "Information"
+ }
}
},
"AllowedHosts": "*",
"ConnectionStrings": {
- "DefaultConnection": "Host=localhost;Port=5432;Database=postgres;Username=postgres;Password=postgres;Trust Server Certificate=true"
+ "DefaultConnection": "Host=localhost;Port=5432;Database=iiot_platform;Username=postgres;Password=postgres",
+ "ExperionDbConnection": "Host=localhost;Port=5432;Database=postgres;Username=postgres;Password=postgres;Trust Server Certificate=true;Include Error Detail=true"
},
"OpcUaServer": {
"Port": 4841,
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/BitFaster.Caching.dll b/src/Web/bin/Debug/net8.0/linux-x64/BitFaster.Caching.dll
deleted file mode 100755
index a2597b7..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/BitFaster.Caching.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/CsvHelper.dll b/src/Web/bin/Debug/net8.0/linux-x64/CsvHelper.dll
deleted file mode 100755
index 7a4a0fa..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/CsvHelper.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler b/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler
deleted file mode 100755
index 39ef32c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.deps.json b/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.deps.json
deleted file mode 100644
index f697cfc..0000000
--- a/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.deps.json
+++ /dev/null
@@ -1,1133 +0,0 @@
-{
- "runtimeTarget": {
- "name": ".NETCoreApp,Version=v8.0/linux-x64",
- "signature": ""
- },
- "compilationOptions": {},
- "targets": {
- ".NETCoreApp,Version=v8.0": {},
- ".NETCoreApp,Version=v8.0/linux-x64": {
- "ExperionCrawler/1.0.0": {
- "dependencies": {
- "CsvHelper": "33.0.1",
- "Microsoft.EntityFrameworkCore.Design": "8.0.13",
- "Npgsql.EntityFrameworkCore.PostgreSQL": "8.0.11",
- "OPCFoundation.NetStandard.Opc.Ua.Client": "1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Configuration": "1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Core": "1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Server": "1.5.378.134",
- "Swashbuckle.AspNetCore": "6.8.1"
- },
- "runtime": {
- "ExperionCrawler.dll": {}
- }
- },
- "BitFaster.Caching/2.5.4": {
- "runtime": {
- "lib/net6.0/BitFaster.Caching.dll": {
- "assemblyVersion": "2.5.4.0",
- "fileVersion": "2.5.4.0"
- }
- }
- },
- "CsvHelper/33.0.1": {
- "runtime": {
- "lib/net8.0/CsvHelper.dll": {
- "assemblyVersion": "33.0.0.0",
- "fileVersion": "33.0.1.24"
- }
- }
- },
- "Humanizer.Core/2.14.1": {
- "runtime": {
- "lib/net6.0/Humanizer.dll": {
- "assemblyVersion": "2.14.0.0",
- "fileVersion": "2.14.1.48190"
- }
- }
- },
- "Microsoft.Bcl.AsyncInterfaces/6.0.0": {
- "runtime": {
- "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": {
- "assemblyVersion": "6.0.0.0",
- "fileVersion": "6.0.21.52210"
- }
- }
- },
- "Microsoft.CodeAnalysis.Analyzers/3.3.3": {},
- "Microsoft.CodeAnalysis.Common/4.5.0": {
- "dependencies": {
- "Microsoft.CodeAnalysis.Analyzers": "3.3.3",
- "System.Collections.Immutable": "10.0.2",
- "System.Reflection.Metadata": "6.0.1",
- "System.Runtime.CompilerServices.Unsafe": "6.0.0",
- "System.Text.Encoding.CodePages": "6.0.0"
- },
- "runtime": {
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll": {
- "assemblyVersion": "4.5.0.0",
- "fileVersion": "4.500.23.10905"
- }
- },
- "resources": {
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "cs"
- },
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "de"
- },
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "es"
- },
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "fr"
- },
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "it"
- },
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "ja"
- },
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "ko"
- },
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "pl"
- },
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "pt-BR"
- },
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "ru"
- },
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "tr"
- },
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "zh-Hans"
- },
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "zh-Hant"
- }
- }
- },
- "Microsoft.CodeAnalysis.CSharp/4.5.0": {
- "dependencies": {
- "Microsoft.CodeAnalysis.Common": "4.5.0"
- },
- "runtime": {
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll": {
- "assemblyVersion": "4.5.0.0",
- "fileVersion": "4.500.23.10905"
- }
- },
- "resources": {
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "cs"
- },
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "de"
- },
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "es"
- },
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "fr"
- },
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "it"
- },
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "ja"
- },
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "ko"
- },
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "pl"
- },
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "pt-BR"
- },
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "ru"
- },
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "tr"
- },
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "zh-Hans"
- },
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "zh-Hant"
- }
- }
- },
- "Microsoft.CodeAnalysis.CSharp.Workspaces/4.5.0": {
- "dependencies": {
- "Humanizer.Core": "2.14.1",
- "Microsoft.CodeAnalysis.CSharp": "4.5.0",
- "Microsoft.CodeAnalysis.Common": "4.5.0",
- "Microsoft.CodeAnalysis.Workspaces.Common": "4.5.0"
- },
- "runtime": {
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": {
- "assemblyVersion": "4.5.0.0",
- "fileVersion": "4.500.23.10905"
- }
- },
- "resources": {
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "cs"
- },
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "de"
- },
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "es"
- },
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "fr"
- },
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "it"
- },
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "ja"
- },
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "ko"
- },
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "pl"
- },
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "pt-BR"
- },
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "ru"
- },
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "tr"
- },
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "zh-Hans"
- },
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "zh-Hant"
- }
- }
- },
- "Microsoft.CodeAnalysis.Workspaces.Common/4.5.0": {
- "dependencies": {
- "Humanizer.Core": "2.14.1",
- "Microsoft.Bcl.AsyncInterfaces": "6.0.0",
- "Microsoft.CodeAnalysis.Common": "4.5.0",
- "System.Composition": "6.0.0",
- "System.IO.Pipelines": "10.0.2",
- "System.Threading.Channels": "6.0.0"
- },
- "runtime": {
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll": {
- "assemblyVersion": "4.5.0.0",
- "fileVersion": "4.500.23.10905"
- }
- },
- "resources": {
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "cs"
- },
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "de"
- },
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "es"
- },
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "fr"
- },
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "it"
- },
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "ja"
- },
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "ko"
- },
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "pl"
- },
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "pt-BR"
- },
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "ru"
- },
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "tr"
- },
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "zh-Hans"
- },
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "zh-Hant"
- }
- }
- },
- "Microsoft.EntityFrameworkCore/8.0.13": {
- "dependencies": {
- "Microsoft.EntityFrameworkCore.Abstractions": "8.0.13",
- "Microsoft.EntityFrameworkCore.Analyzers": "8.0.13",
- "Microsoft.Extensions.Caching.Memory": "8.0.1",
- "Microsoft.Extensions.Logging": "10.0.2"
- },
- "runtime": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
- "assemblyVersion": "8.0.13.0",
- "fileVersion": "8.0.1325.6604"
- }
- }
- },
- "Microsoft.EntityFrameworkCore.Abstractions/8.0.13": {
- "runtime": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
- "assemblyVersion": "8.0.13.0",
- "fileVersion": "8.0.1325.6604"
- }
- }
- },
- "Microsoft.EntityFrameworkCore.Analyzers/8.0.13": {},
- "Microsoft.EntityFrameworkCore.Design/8.0.13": {
- "dependencies": {
- "Humanizer.Core": "2.14.1",
- "Microsoft.CodeAnalysis.CSharp.Workspaces": "4.5.0",
- "Microsoft.EntityFrameworkCore.Relational": "8.0.13",
- "Microsoft.Extensions.DependencyModel": "8.0.2",
- "Mono.TextTemplating": "2.2.1"
- },
- "runtime": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.Design.dll": {
- "assemblyVersion": "8.0.13.0",
- "fileVersion": "8.0.1325.6604"
- }
- }
- },
- "Microsoft.EntityFrameworkCore.Relational/8.0.13": {
- "dependencies": {
- "Microsoft.EntityFrameworkCore": "8.0.13",
- "Microsoft.Extensions.Configuration.Abstractions": "8.0.0"
- },
- "runtime": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
- "assemblyVersion": "8.0.13.0",
- "fileVersion": "8.0.1325.6604"
- }
- }
- },
- "Microsoft.Extensions.ApiDescription.Server/6.0.5": {},
- "Microsoft.Extensions.Caching.Abstractions/8.0.0": {
- "dependencies": {
- "Microsoft.Extensions.Primitives": "10.0.2"
- }
- },
- "Microsoft.Extensions.Caching.Memory/8.0.1": {
- "dependencies": {
- "Microsoft.Extensions.Caching.Abstractions": "8.0.0",
- "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2",
- "Microsoft.Extensions.Logging.Abstractions": "10.0.2",
- "Microsoft.Extensions.Options": "10.0.2",
- "Microsoft.Extensions.Primitives": "10.0.2"
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": {
- "assemblyVersion": "8.0.0.0",
- "fileVersion": "8.0.1024.46610"
- }
- }
- },
- "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
- "dependencies": {
- "Microsoft.Extensions.Primitives": "10.0.2"
- }
- },
- "Microsoft.Extensions.DependencyInjection/10.0.2": {
- "dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2"
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": {
- "assemblyVersion": "10.0.0.0",
- "fileVersion": "10.0.225.61305"
- }
- }
- },
- "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": {
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
- "assemblyVersion": "10.0.0.0",
- "fileVersion": "10.0.225.61305"
- }
- }
- },
- "Microsoft.Extensions.DependencyModel/8.0.2": {
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.DependencyModel.dll": {
- "assemblyVersion": "8.0.0.2",
- "fileVersion": "8.0.1024.46610"
- }
- }
- },
- "Microsoft.Extensions.Logging/10.0.2": {
- "dependencies": {
- "Microsoft.Extensions.DependencyInjection": "10.0.2",
- "Microsoft.Extensions.Logging.Abstractions": "10.0.2",
- "Microsoft.Extensions.Options": "10.0.2"
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Logging.dll": {
- "assemblyVersion": "10.0.0.0",
- "fileVersion": "10.0.225.61305"
- }
- }
- },
- "Microsoft.Extensions.Logging.Abstractions/10.0.2": {
- "dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2",
- "System.Diagnostics.DiagnosticSource": "10.0.2"
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": {
- "assemblyVersion": "10.0.0.0",
- "fileVersion": "10.0.225.61305"
- }
- }
- },
- "Microsoft.Extensions.Options/10.0.2": {
- "dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2",
- "Microsoft.Extensions.Primitives": "10.0.2"
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Options.dll": {
- "assemblyVersion": "10.0.0.0",
- "fileVersion": "10.0.225.61305"
- }
- }
- },
- "Microsoft.Extensions.Primitives/10.0.2": {
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Primitives.dll": {
- "assemblyVersion": "10.0.0.0",
- "fileVersion": "10.0.225.61305"
- }
- }
- },
- "Microsoft.OpenApi/1.6.14": {
- "runtime": {
- "lib/netstandard2.0/Microsoft.OpenApi.dll": {
- "assemblyVersion": "1.6.14.0",
- "fileVersion": "1.6.14.0"
- }
- }
- },
- "Mono.TextTemplating/2.2.1": {
- "dependencies": {
- "System.CodeDom": "4.4.0"
- },
- "runtime": {
- "lib/netstandard2.0/Mono.TextTemplating.dll": {
- "assemblyVersion": "2.2.0.0",
- "fileVersion": "2.2.1.1"
- }
- }
- },
- "Newtonsoft.Json/13.0.4": {
- "runtime": {
- "lib/net6.0/Newtonsoft.Json.dll": {
- "assemblyVersion": "13.0.0.0",
- "fileVersion": "13.0.4.30916"
- }
- }
- },
- "Npgsql/8.0.6": {
- "dependencies": {
- "Microsoft.Extensions.Logging.Abstractions": "10.0.2"
- },
- "runtime": {
- "lib/net8.0/Npgsql.dll": {
- "assemblyVersion": "8.0.6.0",
- "fileVersion": "8.0.6.0"
- }
- }
- },
- "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.11": {
- "dependencies": {
- "Microsoft.EntityFrameworkCore": "8.0.13",
- "Microsoft.EntityFrameworkCore.Abstractions": "8.0.13",
- "Microsoft.EntityFrameworkCore.Relational": "8.0.13",
- "Npgsql": "8.0.6"
- },
- "runtime": {
- "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": {
- "assemblyVersion": "8.0.11.0",
- "fileVersion": "8.0.11.0"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Client/1.5.378.134": {
- "dependencies": {
- "BitFaster.Caching": "2.5.4",
- "OPCFoundation.NetStandard.Opc.Ua.Configuration": "1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Core": "1.5.378.134"
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Client.dll": {
- "assemblyVersion": "1.5.378.0",
- "fileVersion": "1.5.378.134"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Configuration/1.5.378.134": {
- "dependencies": {
- "OPCFoundation.NetStandard.Opc.Ua.Core": "1.5.378.134"
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Configuration.dll": {
- "assemblyVersion": "1.5.378.0",
- "fileVersion": "1.5.378.134"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Core/1.5.378.134": {
- "dependencies": {
- "Microsoft.Extensions.Logging": "10.0.2",
- "Newtonsoft.Json": "13.0.4",
- "OPCFoundation.NetStandard.Opc.Ua.Security.Certificates": "1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Types": "1.5.378.134"
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Core.dll": {
- "assemblyVersion": "1.5.378.0",
- "fileVersion": "1.5.378.134"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Security.Certificates/1.5.378.134": {
- "dependencies": {
- "OPCFoundation.NetStandard.Opc.Ua.Types": "1.5.378.134",
- "System.Collections.Immutable": "10.0.2",
- "System.Diagnostics.DiagnosticSource": "10.0.2",
- "System.Formats.Asn1": "10.0.2",
- "System.Text.Json": "10.0.2"
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Security.Certificates.dll": {
- "assemblyVersion": "1.5.378.0",
- "fileVersion": "1.5.378.134"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Server/1.5.378.134": {
- "dependencies": {
- "OPCFoundation.NetStandard.Opc.Ua.Configuration": "1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Core": "1.5.378.134"
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Server.dll": {
- "assemblyVersion": "1.5.378.0",
- "fileVersion": "1.5.378.134"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Types/1.5.378.134": {
- "dependencies": {
- "Microsoft.Extensions.Logging.Abstractions": "10.0.2",
- "System.Collections.Immutable": "10.0.2"
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Types.dll": {
- "assemblyVersion": "1.5.378.0",
- "fileVersion": "1.5.378.134"
- }
- }
- },
- "Swashbuckle.AspNetCore/6.8.1": {
- "dependencies": {
- "Microsoft.Extensions.ApiDescription.Server": "6.0.5",
- "Swashbuckle.AspNetCore.Swagger": "6.8.1",
- "Swashbuckle.AspNetCore.SwaggerGen": "6.8.1",
- "Swashbuckle.AspNetCore.SwaggerUI": "6.8.1"
- }
- },
- "Swashbuckle.AspNetCore.Swagger/6.8.1": {
- "dependencies": {
- "Microsoft.OpenApi": "1.6.14"
- },
- "runtime": {
- "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": {
- "assemblyVersion": "6.8.1.0",
- "fileVersion": "6.8.1.756"
- }
- }
- },
- "Swashbuckle.AspNetCore.SwaggerGen/6.8.1": {
- "dependencies": {
- "Swashbuckle.AspNetCore.Swagger": "6.8.1"
- },
- "runtime": {
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
- "assemblyVersion": "6.8.1.0",
- "fileVersion": "6.8.1.756"
- }
- }
- },
- "Swashbuckle.AspNetCore.SwaggerUI/6.8.1": {
- "runtime": {
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
- "assemblyVersion": "6.8.1.0",
- "fileVersion": "6.8.1.756"
- }
- }
- },
- "System.CodeDom/4.4.0": {
- "runtime": {
- "lib/netstandard2.0/System.CodeDom.dll": {
- "assemblyVersion": "4.0.0.0",
- "fileVersion": "4.6.25519.3"
- }
- }
- },
- "System.Collections.Immutable/10.0.2": {
- "runtime": {
- "lib/net8.0/System.Collections.Immutable.dll": {
- "assemblyVersion": "10.0.0.0",
- "fileVersion": "10.0.225.61305"
- }
- }
- },
- "System.Composition/6.0.0": {
- "dependencies": {
- "System.Composition.AttributedModel": "6.0.0",
- "System.Composition.Convention": "6.0.0",
- "System.Composition.Hosting": "6.0.0",
- "System.Composition.Runtime": "6.0.0",
- "System.Composition.TypedParts": "6.0.0"
- }
- },
- "System.Composition.AttributedModel/6.0.0": {
- "runtime": {
- "lib/net6.0/System.Composition.AttributedModel.dll": {
- "assemblyVersion": "6.0.0.0",
- "fileVersion": "6.0.21.52210"
- }
- }
- },
- "System.Composition.Convention/6.0.0": {
- "dependencies": {
- "System.Composition.AttributedModel": "6.0.0"
- },
- "runtime": {
- "lib/net6.0/System.Composition.Convention.dll": {
- "assemblyVersion": "6.0.0.0",
- "fileVersion": "6.0.21.52210"
- }
- }
- },
- "System.Composition.Hosting/6.0.0": {
- "dependencies": {
- "System.Composition.Runtime": "6.0.0"
- },
- "runtime": {
- "lib/net6.0/System.Composition.Hosting.dll": {
- "assemblyVersion": "6.0.0.0",
- "fileVersion": "6.0.21.52210"
- }
- }
- },
- "System.Composition.Runtime/6.0.0": {
- "runtime": {
- "lib/net6.0/System.Composition.Runtime.dll": {
- "assemblyVersion": "6.0.0.0",
- "fileVersion": "6.0.21.52210"
- }
- }
- },
- "System.Composition.TypedParts/6.0.0": {
- "dependencies": {
- "System.Composition.AttributedModel": "6.0.0",
- "System.Composition.Hosting": "6.0.0",
- "System.Composition.Runtime": "6.0.0"
- },
- "runtime": {
- "lib/net6.0/System.Composition.TypedParts.dll": {
- "assemblyVersion": "6.0.0.0",
- "fileVersion": "6.0.21.52210"
- }
- }
- },
- "System.Diagnostics.DiagnosticSource/10.0.2": {
- "runtime": {
- "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": {
- "assemblyVersion": "10.0.0.0",
- "fileVersion": "10.0.225.61305"
- }
- }
- },
- "System.Formats.Asn1/10.0.2": {
- "runtime": {
- "lib/net8.0/System.Formats.Asn1.dll": {
- "assemblyVersion": "10.0.0.0",
- "fileVersion": "10.0.225.61305"
- }
- }
- },
- "System.IO.Pipelines/10.0.2": {
- "runtime": {
- "lib/net8.0/System.IO.Pipelines.dll": {
- "assemblyVersion": "10.0.0.0",
- "fileVersion": "10.0.225.61305"
- }
- }
- },
- "System.Reflection.Metadata/6.0.1": {
- "dependencies": {
- "System.Collections.Immutable": "10.0.2"
- }
- },
- "System.Runtime.CompilerServices.Unsafe/6.0.0": {},
- "System.Text.Encoding.CodePages/6.0.0": {
- "dependencies": {
- "System.Runtime.CompilerServices.Unsafe": "6.0.0"
- }
- },
- "System.Text.Encodings.Web/10.0.2": {
- "runtime": {
- "lib/net8.0/System.Text.Encodings.Web.dll": {
- "assemblyVersion": "10.0.0.0",
- "fileVersion": "10.0.225.61305"
- }
- }
- },
- "System.Text.Json/10.0.2": {
- "dependencies": {
- "System.IO.Pipelines": "10.0.2",
- "System.Text.Encodings.Web": "10.0.2"
- },
- "runtime": {
- "lib/net8.0/System.Text.Json.dll": {
- "assemblyVersion": "10.0.0.0",
- "fileVersion": "10.0.225.61305"
- }
- }
- },
- "System.Threading.Channels/6.0.0": {}
- }
- },
- "libraries": {
- "ExperionCrawler/1.0.0": {
- "type": "project",
- "serviceable": false,
- "sha512": ""
- },
- "BitFaster.Caching/2.5.4": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-1QroTY1PVCZOSG9FnkkCrmCKk/+bZCgI/YXq376HnYwUDJ4Ho0EaV4YaA/5v5WYLnwIwIO7RZkdWbg9pxIpueQ==",
- "path": "bitfaster.caching/2.5.4",
- "hashPath": "bitfaster.caching.2.5.4.nupkg.sha512"
- },
- "CsvHelper/33.0.1": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-fev4lynklAU2A9GVMLtwarkwaanjSYB4wUqO2nOJX5hnzObORzUqVLe+bDYCUyIIRQM4o5Bsq3CcyJR89iMmEQ==",
- "path": "csvhelper/33.0.1",
- "hashPath": "csvhelper.33.0.1.nupkg.sha512"
- },
- "Humanizer.Core/2.14.1": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-lQKvtaTDOXnoVJ20ibTuSIOf2i0uO0MPbDhd1jm238I+U/2ZnRENj0cktKZhtchBMtCUSRQ5v4xBCUbKNmyVMw==",
- "path": "humanizer.core/2.14.1",
- "hashPath": "humanizer.core.2.14.1.nupkg.sha512"
- },
- "Microsoft.Bcl.AsyncInterfaces/6.0.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-UcSjPsst+DfAdJGVDsu346FX0ci0ah+lw3WRtn18NUwEqRt70HaOQ7lI72vy3+1LxtqI3T5GWwV39rQSrCzAeg==",
- "path": "microsoft.bcl.asyncinterfaces/6.0.0",
- "hashPath": "microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512"
- },
- "Microsoft.CodeAnalysis.Analyzers/3.3.3": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-j/rOZtLMVJjrfLRlAMckJLPW/1rze9MT1yfWqSIbUPGRu1m1P0fuo9PmqapwsmePfGB5PJrudQLvmUOAMF0DqQ==",
- "path": "microsoft.codeanalysis.analyzers/3.3.3",
- "hashPath": "microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512"
- },
- "Microsoft.CodeAnalysis.Common/4.5.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-lwAbIZNdnY0SUNoDmZHkVUwLO8UyNnyyh1t/4XsbFxi4Ounb3xszIYZaWhyj5ZjyfcwqwmtMbE7fUTVCqQEIdQ==",
- "path": "microsoft.codeanalysis.common/4.5.0",
- "hashPath": "microsoft.codeanalysis.common.4.5.0.nupkg.sha512"
- },
- "Microsoft.CodeAnalysis.CSharp/4.5.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-cM59oMKAOxvdv76bdmaKPy5hfj+oR+zxikWoueEB7CwTko7mt9sVKZI8Qxlov0C/LuKEG+WQwifepqL3vuTiBQ==",
- "path": "microsoft.codeanalysis.csharp/4.5.0",
- "hashPath": "microsoft.codeanalysis.csharp.4.5.0.nupkg.sha512"
- },
- "Microsoft.CodeAnalysis.CSharp.Workspaces/4.5.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-h74wTpmGOp4yS4hj+EvNzEiPgg/KVs2wmSfTZ81upJZOtPkJsVkgfsgtxxqmAeapjT/vLKfmYV0bS8n5MNVP+g==",
- "path": "microsoft.codeanalysis.csharp.workspaces/4.5.0",
- "hashPath": "microsoft.codeanalysis.csharp.workspaces.4.5.0.nupkg.sha512"
- },
- "Microsoft.CodeAnalysis.Workspaces.Common/4.5.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-l4dDRmGELXG72XZaonnOeORyD/T5RpEu5LGHOUIhnv+MmUWDY/m1kWXGwtcgQ5CJ5ynkFiRnIYzTKXYjUs7rbw==",
- "path": "microsoft.codeanalysis.workspaces.common/4.5.0",
- "hashPath": "microsoft.codeanalysis.workspaces.common.4.5.0.nupkg.sha512"
- },
- "Microsoft.EntityFrameworkCore/8.0.13": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-4wyLeg64sZgJcER83fkitlKuySY3OzwcOZSZcGV1TNskmThupfhcVlsQht7bNCfNpXTCZVNIOwAZChk6/OFdXQ==",
- "path": "microsoft.entityframeworkcore/8.0.13",
- "hashPath": "microsoft.entityframeworkcore.8.0.13.nupkg.sha512"
- },
- "Microsoft.EntityFrameworkCore.Abstractions/8.0.13": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-a6O+v8CMStumpVoQyN0aUpx5P3/qYZP+5791sGrzJhIM+QsniQdSaJVdUSneL40M+FpBgtiC8ggqzNo2x/gVlw==",
- "path": "microsoft.entityframeworkcore.abstractions/8.0.13",
- "hashPath": "microsoft.entityframeworkcore.abstractions.8.0.13.nupkg.sha512"
- },
- "Microsoft.EntityFrameworkCore.Analyzers/8.0.13": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-ENny33QADFiRxge5ikJBs2p7JB4MQx/ZSPKPNwt2eJPO0lVUGSjTiJeunGGggkVHiaUy0yY4f625LQtNlErIsw==",
- "path": "microsoft.entityframeworkcore.analyzers/8.0.13",
- "hashPath": "microsoft.entityframeworkcore.analyzers.8.0.13.nupkg.sha512"
- },
- "Microsoft.EntityFrameworkCore.Design/8.0.13": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-lQ+ck65jBgUc4VdQFzmeE7rofw3VCW4vkLZKp3ntz1GONw8Upsvhg+bpRiMjz4HvArxoGaUZz2XQ6vg5Im0uUQ==",
- "path": "microsoft.entityframeworkcore.design/8.0.13",
- "hashPath": "microsoft.entityframeworkcore.design.8.0.13.nupkg.sha512"
- },
- "Microsoft.EntityFrameworkCore.Relational/8.0.13": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-uQR2iTar+6ZEjEHTwgH0/7ySSRme4R9sDiupfG3w/eBub3365fPw/MjhsuOMQkdq9YzLM7veH4Qt/K9OqL26Qg==",
- "path": "microsoft.entityframeworkcore.relational/8.0.13",
- "hashPath": "microsoft.entityframeworkcore.relational.8.0.13.nupkg.sha512"
- },
- "Microsoft.Extensions.ApiDescription.Server/6.0.5": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-Ckb5EDBUNJdFWyajfXzUIMRkhf52fHZOQuuZg/oiu8y7zDCVwD0iHhew6MnThjHmevanpxL3f5ci2TtHQEN6bw==",
- "path": "microsoft.extensions.apidescription.server/6.0.5",
- "hashPath": "microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512"
- },
- "Microsoft.Extensions.Caching.Abstractions/8.0.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-3KuSxeHoNYdxVYfg2IRZCThcrlJ1XJqIXkAWikCsbm5C/bCjv7G0WoKDyuR98Q+T607QT2Zl5GsbGRkENcV2yQ==",
- "path": "microsoft.extensions.caching.abstractions/8.0.0",
- "hashPath": "microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512"
- },
- "Microsoft.Extensions.Caching.Memory/8.0.1": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==",
- "path": "microsoft.extensions.caching.memory/8.0.1",
- "hashPath": "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512"
- },
- "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==",
- "path": "microsoft.extensions.configuration.abstractions/8.0.0",
- "hashPath": "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512"
- },
- "Microsoft.Extensions.DependencyInjection/10.0.2": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-J/Zmp6fY93JbaiZ11ckWvcyxMPjD6XVwIHQXBjryTBgn7O6O20HYg9uVLFcZlNfgH78MnreE/7EH+hjfzn7VyA==",
- "path": "microsoft.extensions.dependencyinjection/10.0.2",
- "hashPath": "microsoft.extensions.dependencyinjection.10.0.2.nupkg.sha512"
- },
- "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-zOIurr59+kUf9vNcsUkCvKWZv+fPosUZXURZesYkJCvl0EzTc9F7maAO4Cd2WEV7ZJJ0AZrFQvuH6Npph9wdBw==",
- "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.2",
- "hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.2.nupkg.sha512"
- },
- "Microsoft.Extensions.DependencyModel/8.0.2": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-mUBDZZRgZrSyFOsJ2qJJ9fXfqd/kXJwf3AiDoqLD9m6TjY5OO/vLNOb9fb4juC0487eq4hcGN/M2Rh/CKS7QYw==",
- "path": "microsoft.extensions.dependencymodel/8.0.2",
- "hashPath": "microsoft.extensions.dependencymodel.8.0.2.nupkg.sha512"
- },
- "Microsoft.Extensions.Logging/10.0.2": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-a0EWuBs6D3d7XMGroDXm+WsAi5CVVfjOJvyxurzWnuhBN9CO+1qHKcrKV1JK7H/T4ZtHIoVCOX/YyWM8K87qtw==",
- "path": "microsoft.extensions.logging/10.0.2",
- "hashPath": "microsoft.extensions.logging.10.0.2.nupkg.sha512"
- },
- "Microsoft.Extensions.Logging.Abstractions/10.0.2": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-RZkez/JjpnO+MZ6efKkSynN6ZztLpw3WbxNzjLCPBd97wWj1S9ZYPWi0nmT4kWBRa6atHsdM1ydGkUr8GudyDQ==",
- "path": "microsoft.extensions.logging.abstractions/10.0.2",
- "hashPath": "microsoft.extensions.logging.abstractions.10.0.2.nupkg.sha512"
- },
- "Microsoft.Extensions.Options/10.0.2": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-1De2LJjmxdqopI5AYC5dIhoZQ79AR5ayywxNF1rXrXFtKQfbQOV9+n/IsZBa7qWlr0MqoGpW8+OY2v/57udZOA==",
- "path": "microsoft.extensions.options/10.0.2",
- "hashPath": "microsoft.extensions.options.10.0.2.nupkg.sha512"
- },
- "Microsoft.Extensions.Primitives/10.0.2": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-QmSiO+oLBEooGgB3i0GRXyeYRDHjllqt3k365jwfZlYWhvSHA3UL2NEVV5m8aZa041eIlblo6KMI5txvTMpTwA==",
- "path": "microsoft.extensions.primitives/10.0.2",
- "hashPath": "microsoft.extensions.primitives.10.0.2.nupkg.sha512"
- },
- "Microsoft.OpenApi/1.6.14": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-tTaBT8qjk3xINfESyOPE2rIellPvB7qpVqiWiyA/lACVvz+xOGiXhFUfohcx82NLbi5avzLW0lx+s6oAqQijfw==",
- "path": "microsoft.openapi/1.6.14",
- "hashPath": "microsoft.openapi.1.6.14.nupkg.sha512"
- },
- "Mono.TextTemplating/2.2.1": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-KZYeKBET/2Z0gY1WlTAK7+RHTl7GSbtvTLDXEZZojUdAPqpQNDL6tHv7VUpqfX5VEOh+uRGKaZXkuD253nEOBQ==",
- "path": "mono.texttemplating/2.2.1",
- "hashPath": "mono.texttemplating.2.2.1.nupkg.sha512"
- },
- "Newtonsoft.Json/13.0.4": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-pdgNNMai3zv51W5aq268sujXUyx7SNdE2bj1wZcWjAQrKMFZV260lbqYop1d2GM67JI1huLRwxo9ZqnfF/lC6A==",
- "path": "newtonsoft.json/13.0.4",
- "hashPath": "newtonsoft.json.13.0.4.nupkg.sha512"
- },
- "Npgsql/8.0.6": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-KaS6CY5kY2Sd0P00MSeFcOI3t2DiQ4UWG8AuRpVOUeDWITOKfoEEG91DP3cmT6aerixPkjwKgXxnpDxIkDpO6g==",
- "path": "npgsql/8.0.6",
- "hashPath": "npgsql.8.0.6.nupkg.sha512"
- },
- "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.11": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-leShR/O/nSIS3Jpj8yUBmkzaXzBbtlV326+MYkX2BwAj2qSNrUv/H6m8G9Hnv2zUkQYccTpmV5jIVq5vdciEUA==",
- "path": "npgsql.entityframeworkcore.postgresql/8.0.11",
- "hashPath": "npgsql.entityframeworkcore.postgresql.8.0.11.nupkg.sha512"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Client/1.5.378.134": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-8kuk6B3dbPpi1GgeUGxDa13cSYd6i53t2sq3Da32ACeJzLSlsQbFi8x1G32f51qJDb6PwSMuB4QZN/AnTQOzxQ==",
- "path": "opcfoundation.netstandard.opc.ua.client/1.5.378.134",
- "hashPath": "opcfoundation.netstandard.opc.ua.client.1.5.378.134.nupkg.sha512"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Configuration/1.5.378.134": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-OODpaduemEywEY6dLQPgnebQspDVzd2wLT6xvWsXG9aGCGH5cO5qjG3Csn5WPGWGkEKaMsHBjaGifceM3X91yg==",
- "path": "opcfoundation.netstandard.opc.ua.configuration/1.5.378.134",
- "hashPath": "opcfoundation.netstandard.opc.ua.configuration.1.5.378.134.nupkg.sha512"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Core/1.5.378.134": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-oKn5HEmJHmCK2dOvYcrd3c13vMP4eGG3fYzISfHljMeubeNleOlgrKa7Izt3Z0Ku1PdKmLZQ1jICX56IAmLi0w==",
- "path": "opcfoundation.netstandard.opc.ua.core/1.5.378.134",
- "hashPath": "opcfoundation.netstandard.opc.ua.core.1.5.378.134.nupkg.sha512"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Security.Certificates/1.5.378.134": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-ch2BQIQIBQfL+ek3a3lKCXWfUq67AqCtzvmShcIjTI6Yix9I2z4lnissi87TPfQ/IgkPTBKJQIFXrFz0V2w1VQ==",
- "path": "opcfoundation.netstandard.opc.ua.security.certificates/1.5.378.134",
- "hashPath": "opcfoundation.netstandard.opc.ua.security.certificates.1.5.378.134.nupkg.sha512"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Server/1.5.378.134": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-qdM5DQwo42cBsW9V+5w4wHD/fDXwjBpbuFYEgXTm9zrB2Cy3dadIsmVDswV3oZWm45k6DwzMy1SB2+xzIK/ppQ==",
- "path": "opcfoundation.netstandard.opc.ua.server/1.5.378.134",
- "hashPath": "opcfoundation.netstandard.opc.ua.server.1.5.378.134.nupkg.sha512"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Types/1.5.378.134": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-UYwgU4bvh2/Fy+cbtCvbQqqNFElTvAolRX8faj9JhceMWPXvbwEIF9R1VQI2MKFPkrfXM/ZbGegEanVaj9NkLQ==",
- "path": "opcfoundation.netstandard.opc.ua.types/1.5.378.134",
- "hashPath": "opcfoundation.netstandard.opc.ua.types.1.5.378.134.nupkg.sha512"
- },
- "Swashbuckle.AspNetCore/6.8.1": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-JN6ccH37QKtNOwBrvSxc+jBYIB+cw6RlZie2IKoJhjjf6HzBH+2kPJCpxmJ5EHIqmxvq6aQG+0A8XklGx9rAxA==",
- "path": "swashbuckle.aspnetcore/6.8.1",
- "hashPath": "swashbuckle.aspnetcore.6.8.1.nupkg.sha512"
- },
- "Swashbuckle.AspNetCore.Swagger/6.8.1": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-eOkdM4bsWBU5Ty3kWbyq5O9L+05kZT0vOdGh4a92vIb/LLQGQTPLRHXuJdnUBNIPNC8XfKWfSbtRfqzI6nnbqw==",
- "path": "swashbuckle.aspnetcore.swagger/6.8.1",
- "hashPath": "swashbuckle.aspnetcore.swagger.6.8.1.nupkg.sha512"
- },
- "Swashbuckle.AspNetCore.SwaggerGen/6.8.1": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-TjBPxsN0HeJzxEXZYeDXBNNMSyhg+TYXtkbwX+Cn8GH/y5ZeoB/chw0p71kRo5tR2sNshbKwL24T6f9pTF9PHg==",
- "path": "swashbuckle.aspnetcore.swaggergen/6.8.1",
- "hashPath": "swashbuckle.aspnetcore.swaggergen.6.8.1.nupkg.sha512"
- },
- "Swashbuckle.AspNetCore.SwaggerUI/6.8.1": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-lpEszYJ7vZaTTE5Dp8MrsbSHrgDfjhDMjzW1qOA1Xs1Dnj3ZRBJAcPZUTsa5Bva+nLaw91JJ8OI8FkSg8hhIyA==",
- "path": "swashbuckle.aspnetcore.swaggerui/6.8.1",
- "hashPath": "swashbuckle.aspnetcore.swaggerui.6.8.1.nupkg.sha512"
- },
- "System.CodeDom/4.4.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-2sCCb7doXEwtYAbqzbF/8UAeDRMNmPaQbU2q50Psg1J9KzumyVVCgKQY8s53WIPTufNT0DpSe9QRvVjOzfDWBA==",
- "path": "system.codedom/4.4.0",
- "hashPath": "system.codedom.4.4.0.nupkg.sha512"
- },
- "System.Collections.Immutable/10.0.2": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-ty6kCaqyoh/M/jKV5yojgta+nf7T8zkkjpRI1beLQkrTC+9R6LS1eCEc+3ED2YUlRyA0g0PXExESnxnW3HcVVQ==",
- "path": "system.collections.immutable/10.0.2",
- "hashPath": "system.collections.immutable.10.0.2.nupkg.sha512"
- },
- "System.Composition/6.0.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-d7wMuKQtfsxUa7S13tITC8n1cQzewuhD5iDjZtK2prwFfKVzdYtgrTHgjaV03Zq7feGQ5gkP85tJJntXwInsJA==",
- "path": "system.composition/6.0.0",
- "hashPath": "system.composition.6.0.0.nupkg.sha512"
- },
- "System.Composition.AttributedModel/6.0.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-WK1nSDLByK/4VoC7fkNiFuTVEiperuCN/Hyn+VN30R+W2ijO1d0Z2Qm0ScEl9xkSn1G2MyapJi8xpf4R8WRa/w==",
- "path": "system.composition.attributedmodel/6.0.0",
- "hashPath": "system.composition.attributedmodel.6.0.0.nupkg.sha512"
- },
- "System.Composition.Convention/6.0.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-XYi4lPRdu5bM4JVJ3/UIHAiG6V6lWWUlkhB9ab4IOq0FrRsp0F4wTyV4Dj+Ds+efoXJ3qbLqlvaUozDO7OLeXA==",
- "path": "system.composition.convention/6.0.0",
- "hashPath": "system.composition.convention.6.0.0.nupkg.sha512"
- },
- "System.Composition.Hosting/6.0.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-w/wXjj7kvxuHPLdzZ0PAUt++qJl03t7lENmb2Oev0n3zbxyNULbWBlnd5J5WUMMv15kg5o+/TCZFb6lSwfaUUQ==",
- "path": "system.composition.hosting/6.0.0",
- "hashPath": "system.composition.hosting.6.0.0.nupkg.sha512"
- },
- "System.Composition.Runtime/6.0.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-qkRH/YBaMPTnzxrS5RDk1juvqed4A6HOD/CwRcDGyPpYps1J27waBddiiq1y93jk2ZZ9wuA/kynM+NO0kb3PKg==",
- "path": "system.composition.runtime/6.0.0",
- "hashPath": "system.composition.runtime.6.0.0.nupkg.sha512"
- },
- "System.Composition.TypedParts/6.0.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-iUR1eHrL8Cwd82neQCJ00MpwNIBs4NZgXzrPqx8NJf/k4+mwBO0XCRmHYJT4OLSwDDqh5nBLJWkz5cROnrGhRA==",
- "path": "system.composition.typedparts/6.0.0",
- "hashPath": "system.composition.typedparts.6.0.0.nupkg.sha512"
- },
- "System.Diagnostics.DiagnosticSource/10.0.2": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-lYWBy8fKkJHaRcOuw30d67PrtVjR5754sz5Wl76s8P+vJ9FSThh9b7LIcTSODx1LY7NB3Srvg+JMnzd67qNZOw==",
- "path": "system.diagnostics.diagnosticsource/10.0.2",
- "hashPath": "system.diagnostics.diagnosticsource.10.0.2.nupkg.sha512"
- },
- "System.Formats.Asn1/10.0.2": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-9Hee6iQ74pDgdRNIL6lO8Vlx2onVWd5aDnqwk4Pvo0h5FklBd7QwcQDKgxeLuhiy0o3ibzUVO0KFQe0/hPXU+Q==",
- "path": "system.formats.asn1/10.0.2",
- "hashPath": "system.formats.asn1.10.0.2.nupkg.sha512"
- },
- "System.IO.Pipelines/10.0.2": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-EqMsn9r18ABvTDxrDce4OWDhBE3y+rR23ilG7Y3BudDKrDKrLG/hkD/JmeFZbctAPxSkCjyJ/Ddwbn/g7ufRJA==",
- "path": "system.io.pipelines/10.0.2",
- "hashPath": "system.io.pipelines.10.0.2.nupkg.sha512"
- },
- "System.Reflection.Metadata/6.0.1": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-III/lNMSn0ZRBuM9m5Cgbiho5j81u0FAEagFX5ta2DKbljZ3T0IpD8j+BIiHQPeKqJppWS9bGEp6JnKnWKze0g==",
- "path": "system.reflection.metadata/6.0.1",
- "hashPath": "system.reflection.metadata.6.0.1.nupkg.sha512"
- },
- "System.Runtime.CompilerServices.Unsafe/6.0.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==",
- "path": "system.runtime.compilerservices.unsafe/6.0.0",
- "hashPath": "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512"
- },
- "System.Text.Encoding.CodePages/6.0.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-ZFCILZuOvtKPauZ/j/swhvw68ZRi9ATCfvGbk1QfydmcXBkIWecWKn/250UH7rahZ5OoDBaiAudJtPvLwzw85A==",
- "path": "system.text.encoding.codepages/6.0.0",
- "hashPath": "system.text.encoding.codepages.6.0.0.nupkg.sha512"
- },
- "System.Text.Encodings.Web/10.0.2": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-Ro4cLT4qpRy64crfLAy3ekihtXckeXrD5eI6qb6NDSEVyHcHsmH7KgN4dbnIuiBmXIoaCslx4SynLYxag1SLSQ==",
- "path": "system.text.encodings.web/10.0.2",
- "hashPath": "system.text.encodings.web.10.0.2.nupkg.sha512"
- },
- "System.Text.Json/10.0.2": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-zy8ey7I16G9neZ6uzxrnYwS7pidElzN8XarsBjGu7lE2m7afTKMEe18KbY3ZSmh/z/bR40oxjd6hlUcmOEaMHw==",
- "path": "system.text.json/10.0.2",
- "hashPath": "system.text.json.10.0.2.nupkg.sha512"
- },
- "System.Threading.Channels/6.0.0": {
- "type": "package",
- "serviceable": true,
- "sha512": "sha512-TY8/9+tI0mNaUMgntOxxaq2ndTkdXqLSxvPmas7XEqOlv9lQtB7wLjYGd756lOaO7Dvb5r/WXhluM+0Xe87v5Q==",
- "path": "system.threading.channels/6.0.0",
- "hashPath": "system.threading.channels.6.0.0.nupkg.sha512"
- }
- }
-}
\ No newline at end of file
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.dll b/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.dll
deleted file mode 100644
index 6be3e2b..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.pdb b/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.pdb
deleted file mode 100644
index 2efc6f6..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.pdb and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.runtimeconfig.json b/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.runtimeconfig.json
deleted file mode 100644
index b8a4a9c..0000000
--- a/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.runtimeconfig.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "runtimeOptions": {
- "tfm": "net8.0",
- "frameworks": [
- {
- "name": "Microsoft.NETCore.App",
- "version": "8.0.0"
- },
- {
- "name": "Microsoft.AspNetCore.App",
- "version": "8.0.0"
- }
- ],
- "configProperties": {
- "System.GC.Server": true,
- "System.Reflection.NullabilityInfoContext.IsSupported": true,
- "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
- }
- }
-}
\ No newline at end of file
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.staticwebassets.runtime.json b/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.staticwebassets.runtime.json
deleted file mode 100644
index 41e44c8..0000000
--- a/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.staticwebassets.runtime.json
+++ /dev/null
@@ -1 +0,0 @@
-{"ContentRoots":["/home/pacer/projects/ExperionCrawler/src/Web/wwwroot/"],"Root":{"Children":{"css":{"Children":{"style.css":{"Children":null,"Asset":{"ContentRootIndex":0,"SubPath":"css/style.css"},"Patterns":null}},"Asset":null,"Patterns":null},"index.html":{"Children":null,"Asset":{"ContentRootIndex":0,"SubPath":"index.html"},"Patterns":null},"js":{"Children":{"app.js":{"Children":null,"Asset":{"ContentRootIndex":0,"SubPath":"js/app.js"},"Patterns":null}},"Asset":null,"Patterns":null}},"Asset":null,"Patterns":[{"ContentRootIndex":0,"Pattern":"**","Depth":0}]}}
\ No newline at end of file
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Humanizer.dll b/src/Web/bin/Debug/net8.0/linux-x64/Humanizer.dll
deleted file mode 100755
index c9a7ef8..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Humanizer.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Bcl.AsyncInterfaces.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Bcl.AsyncInterfaces.dll
deleted file mode 100755
index fe6ba4c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Bcl.AsyncInterfaces.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.CSharp.Workspaces.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.CSharp.Workspaces.dll
deleted file mode 100755
index dc218f9..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.CSharp.Workspaces.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.CSharp.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.CSharp.dll
deleted file mode 100755
index 412e7ed..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.CSharp.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.Workspaces.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.Workspaces.dll
deleted file mode 100755
index 8dec441..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.Workspaces.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.dll
deleted file mode 100755
index 79e9046..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.Abstractions.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.Abstractions.dll
deleted file mode 100755
index d018e80..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.Abstractions.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.Design.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.Design.dll
deleted file mode 100755
index cb75a2c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.Design.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.Relational.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.Relational.dll
deleted file mode 100755
index 2a73d55..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.Relational.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.dll
deleted file mode 100755
index fca0952..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Caching.Memory.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Caching.Memory.dll
deleted file mode 100755
index 077b1b6..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Caching.Memory.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.DependencyInjection.Abstractions.dll
deleted file mode 100755
index 7c48cd8..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.DependencyInjection.Abstractions.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.DependencyInjection.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.DependencyInjection.dll
deleted file mode 100755
index 5524cb1..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.DependencyInjection.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.DependencyModel.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.DependencyModel.dll
deleted file mode 100755
index 8905537..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.DependencyModel.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Logging.Abstractions.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Logging.Abstractions.dll
deleted file mode 100755
index 12bf8a2..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Logging.Abstractions.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Logging.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Logging.dll
deleted file mode 100755
index 81a7c3c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Logging.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Options.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Options.dll
deleted file mode 100755
index fd101a7..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Options.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Primitives.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Primitives.dll
deleted file mode 100755
index b3ded80..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Primitives.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.OpenApi.dll b/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.OpenApi.dll
deleted file mode 100755
index aac9a6d..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.OpenApi.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Mono.TextTemplating.dll b/src/Web/bin/Debug/net8.0/linux-x64/Mono.TextTemplating.dll
deleted file mode 100755
index d5a4b3c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Mono.TextTemplating.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Newtonsoft.Json.dll b/src/Web/bin/Debug/net8.0/linux-x64/Newtonsoft.Json.dll
deleted file mode 100755
index 5813d8c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Newtonsoft.Json.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Npgsql.EntityFrameworkCore.PostgreSQL.dll b/src/Web/bin/Debug/net8.0/linux-x64/Npgsql.EntityFrameworkCore.PostgreSQL.dll
deleted file mode 100755
index 7747d6d..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Npgsql.EntityFrameworkCore.PostgreSQL.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Npgsql.dll b/src/Web/bin/Debug/net8.0/linux-x64/Npgsql.dll
deleted file mode 100755
index b88e61f..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Npgsql.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Client.dll b/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Client.dll
deleted file mode 100755
index 70da365..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Client.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Configuration.dll b/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Configuration.dll
deleted file mode 100755
index a92ec9c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Configuration.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Core.dll b/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Core.dll
deleted file mode 100755
index f865603..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Core.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Security.Certificates.dll b/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Security.Certificates.dll
deleted file mode 100755
index 3d3855c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Security.Certificates.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Server.dll b/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Server.dll
deleted file mode 100755
index 7562dd8..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Server.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Types.dll b/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Types.dll
deleted file mode 100755
index 281fc8a..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Types.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Swashbuckle.AspNetCore.Swagger.dll b/src/Web/bin/Debug/net8.0/linux-x64/Swashbuckle.AspNetCore.Swagger.dll
deleted file mode 100755
index 7052c5f..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Swashbuckle.AspNetCore.Swagger.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Swashbuckle.AspNetCore.SwaggerGen.dll b/src/Web/bin/Debug/net8.0/linux-x64/Swashbuckle.AspNetCore.SwaggerGen.dll
deleted file mode 100755
index 2612d7f..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Swashbuckle.AspNetCore.SwaggerGen.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/Swashbuckle.AspNetCore.SwaggerUI.dll b/src/Web/bin/Debug/net8.0/linux-x64/Swashbuckle.AspNetCore.SwaggerUI.dll
deleted file mode 100755
index 7e2dec3..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/Swashbuckle.AspNetCore.SwaggerUI.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/System.CodeDom.dll b/src/Web/bin/Debug/net8.0/linux-x64/System.CodeDom.dll
deleted file mode 100755
index 3128b6a..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/System.CodeDom.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/System.Collections.Immutable.dll b/src/Web/bin/Debug/net8.0/linux-x64/System.Collections.Immutable.dll
deleted file mode 100755
index b029dd2..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/System.Collections.Immutable.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.AttributedModel.dll b/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.AttributedModel.dll
deleted file mode 100755
index d37283b..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.AttributedModel.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.Convention.dll b/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.Convention.dll
deleted file mode 100755
index b6fa4ab..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.Convention.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.Hosting.dll b/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.Hosting.dll
deleted file mode 100755
index c67f1c0..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.Hosting.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.Runtime.dll b/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.Runtime.dll
deleted file mode 100755
index 2a4b38c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.Runtime.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.TypedParts.dll b/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.TypedParts.dll
deleted file mode 100755
index 7c0c780..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.TypedParts.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/System.Diagnostics.DiagnosticSource.dll b/src/Web/bin/Debug/net8.0/linux-x64/System.Diagnostics.DiagnosticSource.dll
deleted file mode 100755
index ef5af86..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/System.Diagnostics.DiagnosticSource.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/System.Formats.Asn1.dll b/src/Web/bin/Debug/net8.0/linux-x64/System.Formats.Asn1.dll
deleted file mode 100755
index 280256c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/System.Formats.Asn1.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/System.IO.Pipelines.dll b/src/Web/bin/Debug/net8.0/linux-x64/System.IO.Pipelines.dll
deleted file mode 100755
index ba5d482..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/System.IO.Pipelines.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/System.Text.Encodings.Web.dll b/src/Web/bin/Debug/net8.0/linux-x64/System.Text.Encodings.Web.dll
deleted file mode 100755
index af14793..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/System.Text.Encodings.Web.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/System.Text.Json.dll b/src/Web/bin/Debug/net8.0/linux-x64/System.Text.Json.dll
deleted file mode 100755
index 64e4277..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/System.Text.Json.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/appsettings.json b/src/Web/bin/Debug/net8.0/linux-x64/appsettings.json
deleted file mode 100644
index 43076c1..0000000
--- a/src/Web/bin/Debug/net8.0/linux-x64/appsettings.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "Logging": {
- "LogLevel": {
- "Default": "Information",
- "Microsoft.AspNetCore": "Warning",
- "Microsoft.EntityFrameworkCore": "Warning"
- }
- },
- "AllowedHosts": "*",
- "ConnectionStrings": {
- "DefaultConnection": "Host=localhost;Port=5432;Database=postgres;Username=postgres;Password=postgres;Trust Server Certificate=true"
- },
- "OpcUaServer": {
- "Port": 4841,
- "EnableSecurity": false,
- "AllowAnonymous": true,
- "AllowedUsernames": [ "opcuser" ],
- "AllowedPasswords": [ "opcpass" ]
- }
-}
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
deleted file mode 100755
index b08ba21..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.CSharp.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.CSharp.resources.dll
deleted file mode 100755
index eba2a5a..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.CSharp.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll
deleted file mode 100755
index ff203e1..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.resources.dll
deleted file mode 100755
index fe89036..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
deleted file mode 100755
index 3dda417..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.CSharp.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.CSharp.resources.dll
deleted file mode 100755
index 4d3bd0a..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.CSharp.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.Workspaces.resources.dll
deleted file mode 100755
index c41bb1f..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.resources.dll
deleted file mode 100755
index 05845f2..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
deleted file mode 100755
index 1e5038d..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.CSharp.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.CSharp.resources.dll
deleted file mode 100755
index 456ac85..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.CSharp.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.Workspaces.resources.dll
deleted file mode 100755
index 7bb3187..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.resources.dll
deleted file mode 100755
index 01edef3..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
deleted file mode 100755
index de36d31..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.CSharp.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.CSharp.resources.dll
deleted file mode 100755
index 71d6443..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.CSharp.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll
deleted file mode 100755
index 23107b9..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.resources.dll
deleted file mode 100755
index 291cf9b..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
deleted file mode 100755
index ef0d337..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.CSharp.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.CSharp.resources.dll
deleted file mode 100755
index f266330..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.CSharp.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.Workspaces.resources.dll
deleted file mode 100755
index 6affe5c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.resources.dll
deleted file mode 100755
index 263bd04..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
deleted file mode 100755
index a94da35..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.CSharp.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.CSharp.resources.dll
deleted file mode 100755
index c94e8e6..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.CSharp.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll
deleted file mode 100755
index 6e0e837..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.resources.dll
deleted file mode 100755
index 212267a..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
deleted file mode 100755
index 1fae94d..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.CSharp.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.CSharp.resources.dll
deleted file mode 100755
index b2e573c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.CSharp.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll
deleted file mode 100755
index fdbe6ff..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.resources.dll
deleted file mode 100755
index 5fee24c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
deleted file mode 100755
index 9533b36..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.CSharp.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.CSharp.resources.dll
deleted file mode 100755
index fa25298..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.CSharp.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll
deleted file mode 100755
index 1297d58..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.resources.dll
deleted file mode 100755
index 8af36a3..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
deleted file mode 100755
index 197797b..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll
deleted file mode 100755
index 0fd342c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll
deleted file mode 100755
index c09c2ab..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.resources.dll
deleted file mode 100755
index d6eaab6..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/realtime_autostart.json b/src/Web/bin/Debug/net8.0/linux-x64/realtime_autostart.json
deleted file mode 100644
index 37e00cb..0000000
--- a/src/Web/bin/Debug/net8.0/linux-x64/realtime_autostart.json
+++ /dev/null
@@ -1 +0,0 @@
-{"Id":0,"ServerHostName":"192.168.0.20","Port":4840,"ClientHostName":"dbsvr","UserName":"mngr","Password":"mngr","EndpointUrl":"opc.tcp://192.168.0.20:4840","ApplicationUri":"urn:dbsvr:ExperionCrawlerClient"}
\ No newline at end of file
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
deleted file mode 100755
index ecfe483..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.CSharp.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.CSharp.resources.dll
deleted file mode 100755
index e9133a5..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.CSharp.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll
deleted file mode 100755
index baa7776..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.resources.dll
deleted file mode 100755
index 74714d8..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
deleted file mode 100755
index 2fbf86e..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.CSharp.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.CSharp.resources.dll
deleted file mode 100755
index 4c57b04..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.CSharp.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll
deleted file mode 100755
index b551e37..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.resources.dll
deleted file mode 100755
index 8758fff..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
deleted file mode 100755
index de4fe51..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll
deleted file mode 100755
index 67b261c..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll
deleted file mode 100755
index c6b8d86..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.resources.dll
deleted file mode 100755
index a14ec60..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
deleted file mode 100755
index 2d39791..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll
deleted file mode 100755
index 86802cf..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll
deleted file mode 100755
index 691a8fa..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll and /dev/null differ
diff --git a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.resources.dll b/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.resources.dll
deleted file mode 100755
index e8e4ee0..0000000
Binary files a/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.resources.dll and /dev/null differ
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs b/src/Web/obj/Debug/net8.0/linux-x64/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
deleted file mode 100644
index 2217181..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/.NETCoreApp,Version=v8.0.AssemblyAttributes.cs
+++ /dev/null
@@ -1,4 +0,0 @@
-//
-using System;
-using System.Reflection;
-[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.AssemblyInfo.cs b/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.AssemblyInfo.cs
deleted file mode 100644
index be4081e..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.AssemblyInfo.cs
+++ /dev/null
@@ -1,22 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-using System;
-using System.Reflection;
-
-[assembly: System.Reflection.AssemblyCompanyAttribute("ExperionCrawler")]
-[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
-[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+85e596d66b4d229d2c740ae81c0d0f0d1563b3b9")]
-[assembly: System.Reflection.AssemblyProductAttribute("ExperionCrawler")]
-[assembly: System.Reflection.AssemblyTitleAttribute("ExperionCrawler")]
-[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
-
-// Generated by the MSBuild WriteCodeFragment class.
-
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.AssemblyInfoInputs.cache b/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.AssemblyInfoInputs.cache
deleted file mode 100644
index 6b000cc..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.AssemblyInfoInputs.cache
+++ /dev/null
@@ -1 +0,0 @@
-921345a281005866fc86fed7ed49309ead5f6d514afdd2152545c464e2f7e902
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.GeneratedMSBuildEditorConfig.editorconfig b/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.GeneratedMSBuildEditorConfig.editorconfig
deleted file mode 100644
index feb09c8..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.GeneratedMSBuildEditorConfig.editorconfig
+++ /dev/null
@@ -1,19 +0,0 @@
-is_global = true
-build_property.TargetFramework = net8.0
-build_property.TargetPlatformMinVersion =
-build_property.UsingMicrosoftNETSdkWeb = true
-build_property.ProjectTypeGuids =
-build_property.InvariantGlobalization =
-build_property.PlatformNeutralAssembly =
-build_property.EnforceExtendedAnalyzerRules =
-build_property._SupportedPlatformList = Linux,macOS,Windows
-build_property.RootNamespace = ExperionCrawler
-build_property.RootNamespace = ExperionCrawler
-build_property.ProjectDir = /home/pacer/projects/ExperionCrawler/src/Web/
-build_property.EnableComHosting =
-build_property.EnableGeneratedComInterfaceComImportInterop =
-build_property.RazorLangVersion = 8.0
-build_property.SupportLocalizedComponentNames =
-build_property.GenerateRazorMetadataSourceChecksumAttributes =
-build_property.MSBuildProjectDirectory = /home/pacer/projects/ExperionCrawler/src/Web
-build_property._RazorSourceGeneratorDebug =
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.GlobalUsings.g.cs b/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.GlobalUsings.g.cs
deleted file mode 100644
index 025530a..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.GlobalUsings.g.cs
+++ /dev/null
@@ -1,17 +0,0 @@
-//
-global using global::Microsoft.AspNetCore.Builder;
-global using global::Microsoft.AspNetCore.Hosting;
-global using global::Microsoft.AspNetCore.Http;
-global using global::Microsoft.AspNetCore.Routing;
-global using global::Microsoft.Extensions.Configuration;
-global using global::Microsoft.Extensions.DependencyInjection;
-global using global::Microsoft.Extensions.Hosting;
-global using global::Microsoft.Extensions.Logging;
-global using global::System;
-global using global::System.Collections.Generic;
-global using global::System.IO;
-global using global::System.Linq;
-global using global::System.Net.Http;
-global using global::System.Net.Http.Json;
-global using global::System.Threading;
-global using global::System.Threading.Tasks;
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.MvcApplicationPartsAssemblyInfo.cs b/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.MvcApplicationPartsAssemblyInfo.cs
deleted file mode 100644
index 5c337f8..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.MvcApplicationPartsAssemblyInfo.cs
+++ /dev/null
@@ -1,16 +0,0 @@
-//------------------------------------------------------------------------------
-//
-// This code was generated by a tool.
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-//
-//------------------------------------------------------------------------------
-
-using System;
-using System.Reflection;
-
-[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("Swashbuckle.AspNetCore.SwaggerGen")]
-
-// Generated by the MSBuild WriteCodeFragment class.
-
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.assets.cache b/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.assets.cache
deleted file mode 100644
index 1ee9971..0000000
Binary files a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.assets.cache and /dev/null differ
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.AssemblyReference.cache b/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.AssemblyReference.cache
deleted file mode 100644
index 74394f4..0000000
Binary files a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.AssemblyReference.cache and /dev/null differ
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.CopyComplete b/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.CopyComplete
deleted file mode 100644
index e69de29..0000000
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.CoreCompileInputs.cache b/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.CoreCompileInputs.cache
deleted file mode 100644
index 443499f..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.CoreCompileInputs.cache
+++ /dev/null
@@ -1 +0,0 @@
-c9dbbb40f4de1e460d3292106c6091274466b431f64c11eec57755b60fcadc46
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.FileListAbsolute.txt b/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.FileListAbsolute.txt
deleted file mode 100644
index d5867f6..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.FileListAbsolute.txt
+++ /dev/null
@@ -1,127 +0,0 @@
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/appsettings.json
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.staticwebassets.runtime.json
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.deps.json
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.runtimeconfig.json
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ExperionCrawler.pdb
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/BitFaster.Caching.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/CsvHelper.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Humanizer.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Bcl.AsyncInterfaces.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.CSharp.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.CSharp.Workspaces.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.CodeAnalysis.Workspaces.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.Abstractions.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.Design.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.EntityFrameworkCore.Relational.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Caching.Memory.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.DependencyInjection.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.DependencyInjection.Abstractions.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.DependencyModel.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Logging.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Logging.Abstractions.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Options.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.Extensions.Primitives.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Microsoft.OpenApi.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Mono.TextTemplating.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Newtonsoft.Json.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Npgsql.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Npgsql.EntityFrameworkCore.PostgreSQL.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Client.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Configuration.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Core.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Security.Certificates.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Types.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Swashbuckle.AspNetCore.Swagger.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Swashbuckle.AspNetCore.SwaggerGen.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Swashbuckle.AspNetCore.SwaggerUI.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/System.CodeDom.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/System.Collections.Immutable.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.AttributedModel.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.Convention.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.Hosting.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.Runtime.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/System.Composition.TypedParts.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/System.Diagnostics.DiagnosticSource.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/System.Formats.Asn1.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/System.IO.Pipelines.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/System.Text.Encodings.Web.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/System.Text.Json.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.CSharp.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.CSharp.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.CSharp.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.CSharp.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.CSharp.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.CSharp.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.CSharp.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.CSharp.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.CSharp.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.CSharp.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/de/Microsoft.CodeAnalysis.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/es/Microsoft.CodeAnalysis.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/it/Microsoft.CodeAnalysis.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.AssemblyReference.cache
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.GeneratedMSBuildEditorConfig.editorconfig
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.AssemblyInfoInputs.cache
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.AssemblyInfo.cs
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.CoreCompileInputs.cache
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.MvcApplicationPartsAssemblyInfo.cs
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.MvcApplicationPartsAssemblyInfo.cache
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets.build.json
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets.development.json
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.ExperionCrawler.Microsoft.AspNetCore.StaticWebAssets.props
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.build.ExperionCrawler.props
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.buildMultiTargeting.ExperionCrawler.props
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.buildTransitive.ExperionCrawler.props
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets.pack.json
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/scopedcss/bundle/ExperionCrawler.styles.css
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.csproj.CopyComplete
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.dll
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/refint/ExperionCrawler.dll
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.pdb
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.genruntimeconfig.cache
-/home/pacer/projects/ExperionCrawler/src/Web/obj/Debug/net8.0/linux-x64/ref/ExperionCrawler.dll
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/realtime_autostart.json
-/home/pacer/projects/ExperionCrawler/src/Web/bin/Debug/net8.0/linux-x64/Opc.Ua.Server.dll
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.dll b/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.dll
deleted file mode 100644
index 6be3e2b..0000000
Binary files a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.dll and /dev/null differ
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.genruntimeconfig.cache b/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.genruntimeconfig.cache
deleted file mode 100644
index 4b701c7..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.genruntimeconfig.cache
+++ /dev/null
@@ -1 +0,0 @@
-a3bf8e68024ff91e97e6426c62906e38cac8185aef0aa77c7f8bb4b366e46536
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.pdb b/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.pdb
deleted file mode 100644
index 2efc6f6..0000000
Binary files a/src/Web/obj/Debug/net8.0/linux-x64/ExperionCrawler.pdb and /dev/null differ
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/apphost b/src/Web/obj/Debug/net8.0/linux-x64/apphost
deleted file mode 100755
index 39ef32c..0000000
Binary files a/src/Web/obj/Debug/net8.0/linux-x64/apphost and /dev/null differ
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/ref/ExperionCrawler.dll b/src/Web/obj/Debug/net8.0/linux-x64/ref/ExperionCrawler.dll
deleted file mode 100644
index 3027059..0000000
Binary files a/src/Web/obj/Debug/net8.0/linux-x64/ref/ExperionCrawler.dll and /dev/null differ
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/refint/ExperionCrawler.dll b/src/Web/obj/Debug/net8.0/linux-x64/refint/ExperionCrawler.dll
deleted file mode 100644
index 3027059..0000000
Binary files a/src/Web/obj/Debug/net8.0/linux-x64/refint/ExperionCrawler.dll and /dev/null differ
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets.build.json b/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets.build.json
deleted file mode 100644
index b4a8c0b..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets.build.json
+++ /dev/null
@@ -1,77 +0,0 @@
-{
- "Version": 1,
- "Hash": "DZwSNHjnNj+3HTVoujeF0A1MrnnZnDnL3RedX9BDd2w=",
- "Source": "ExperionCrawler",
- "BasePath": "_content/ExperionCrawler",
- "Mode": "Default",
- "ManifestType": "Build",
- "ReferencedProjectsConfiguration": [],
- "DiscoveryPatterns": [
- {
- "Name": "ExperionCrawler/wwwroot",
- "Source": "ExperionCrawler",
- "ContentRoot": "/home/pacer/projects/ExperionCrawler/src/Web/wwwroot/",
- "BasePath": "_content/ExperionCrawler",
- "Pattern": "**"
- }
- ],
- "Assets": [
- {
- "Identity": "/home/pacer/projects/ExperionCrawler/src/Web/wwwroot/css/style.css",
- "SourceId": "ExperionCrawler",
- "SourceType": "Discovered",
- "ContentRoot": "/home/pacer/projects/ExperionCrawler/src/Web/wwwroot/",
- "BasePath": "_content/ExperionCrawler",
- "RelativePath": "css/style.css",
- "AssetKind": "All",
- "AssetMode": "All",
- "AssetRole": "Primary",
- "AssetMergeBehavior": "PreferTarget",
- "AssetMergeSource": "",
- "RelatedAsset": "",
- "AssetTraitName": "",
- "AssetTraitValue": "",
- "CopyToOutputDirectory": "Never",
- "CopyToPublishDirectory": "PreserveNewest",
- "OriginalItemSpec": "wwwroot/css/style.css"
- },
- {
- "Identity": "/home/pacer/projects/ExperionCrawler/src/Web/wwwroot/index.html",
- "SourceId": "ExperionCrawler",
- "SourceType": "Discovered",
- "ContentRoot": "/home/pacer/projects/ExperionCrawler/src/Web/wwwroot/",
- "BasePath": "_content/ExperionCrawler",
- "RelativePath": "index.html",
- "AssetKind": "All",
- "AssetMode": "All",
- "AssetRole": "Primary",
- "AssetMergeBehavior": "PreferTarget",
- "AssetMergeSource": "",
- "RelatedAsset": "",
- "AssetTraitName": "",
- "AssetTraitValue": "",
- "CopyToOutputDirectory": "Never",
- "CopyToPublishDirectory": "PreserveNewest",
- "OriginalItemSpec": "wwwroot/index.html"
- },
- {
- "Identity": "/home/pacer/projects/ExperionCrawler/src/Web/wwwroot/js/app.js",
- "SourceId": "ExperionCrawler",
- "SourceType": "Discovered",
- "ContentRoot": "/home/pacer/projects/ExperionCrawler/src/Web/wwwroot/",
- "BasePath": "_content/ExperionCrawler",
- "RelativePath": "js/app.js",
- "AssetKind": "All",
- "AssetMode": "All",
- "AssetRole": "Primary",
- "AssetMergeBehavior": "PreferTarget",
- "AssetMergeSource": "",
- "RelatedAsset": "",
- "AssetTraitName": "",
- "AssetTraitValue": "",
- "CopyToOutputDirectory": "Never",
- "CopyToPublishDirectory": "PreserveNewest",
- "OriginalItemSpec": "wwwroot/js/app.js"
- }
- ]
-}
\ No newline at end of file
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets.development.json b/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets.development.json
deleted file mode 100644
index 41e44c8..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets.development.json
+++ /dev/null
@@ -1 +0,0 @@
-{"ContentRoots":["/home/pacer/projects/ExperionCrawler/src/Web/wwwroot/"],"Root":{"Children":{"css":{"Children":{"style.css":{"Children":null,"Asset":{"ContentRootIndex":0,"SubPath":"css/style.css"},"Patterns":null}},"Asset":null,"Patterns":null},"index.html":{"Children":null,"Asset":{"ContentRootIndex":0,"SubPath":"index.html"},"Patterns":null},"js":{"Children":{"app.js":{"Children":null,"Asset":{"ContentRootIndex":0,"SubPath":"js/app.js"},"Patterns":null}},"Asset":null,"Patterns":null}},"Asset":null,"Patterns":[{"ContentRootIndex":0,"Pattern":"**","Depth":0}]}}
\ No newline at end of file
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets.pack.json b/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets.pack.json
deleted file mode 100644
index 01e8916..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets.pack.json
+++ /dev/null
@@ -1,33 +0,0 @@
-{
- "Files": [
- {
- "Id": "/home/pacer/projects/ExperionCrawler/src/Web/wwwroot/css/style.css",
- "PackagePath": "staticwebassets/css/style.css"
- },
- {
- "Id": "/home/pacer/projects/ExperionCrawler/src/Web/wwwroot/index.html",
- "PackagePath": "staticwebassets/index.html"
- },
- {
- "Id": "/home/pacer/projects/ExperionCrawler/src/Web/wwwroot/js/app.js",
- "PackagePath": "staticwebassets/js/app.js"
- },
- {
- "Id": "obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.ExperionCrawler.Microsoft.AspNetCore.StaticWebAssets.props",
- "PackagePath": "build\\Microsoft.AspNetCore.StaticWebAssets.props"
- },
- {
- "Id": "obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.build.ExperionCrawler.props",
- "PackagePath": "build\\ExperionCrawler.props"
- },
- {
- "Id": "obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.buildMultiTargeting.ExperionCrawler.props",
- "PackagePath": "buildMultiTargeting\\ExperionCrawler.props"
- },
- {
- "Id": "obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.buildTransitive.ExperionCrawler.props",
- "PackagePath": "buildTransitive\\ExperionCrawler.props"
- }
- ],
- "ElementsToRemove": []
-}
\ No newline at end of file
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.ExperionCrawler.Microsoft.AspNetCore.StaticWebAssets.props b/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.ExperionCrawler.Microsoft.AspNetCore.StaticWebAssets.props
deleted file mode 100644
index 801e0dd..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.ExperionCrawler.Microsoft.AspNetCore.StaticWebAssets.props
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
- Package
- ExperionCrawler
- $(MSBuildThisFileDirectory)..\staticwebassets\
- _content/ExperionCrawler
- css/style.css
- All
- All
- Primary
-
-
-
- Never
- PreserveNewest
- $([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\staticwebassets\css\style.css))
-
-
- Package
- ExperionCrawler
- $(MSBuildThisFileDirectory)..\staticwebassets\
- _content/ExperionCrawler
- index.html
- All
- All
- Primary
-
-
-
- Never
- PreserveNewest
- $([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\staticwebassets\index.html))
-
-
- Package
- ExperionCrawler
- $(MSBuildThisFileDirectory)..\staticwebassets\
- _content/ExperionCrawler
- js/app.js
- All
- All
- Primary
-
-
-
- Never
- PreserveNewest
- $([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\staticwebassets\js\app.js))
-
-
-
\ No newline at end of file
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.build.ExperionCrawler.props b/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.build.ExperionCrawler.props
deleted file mode 100644
index 5a6032a..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.build.ExperionCrawler.props
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
\ No newline at end of file
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.buildMultiTargeting.ExperionCrawler.props b/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.buildMultiTargeting.ExperionCrawler.props
deleted file mode 100644
index e121221..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.buildMultiTargeting.ExperionCrawler.props
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
\ No newline at end of file
diff --git a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.buildTransitive.ExperionCrawler.props b/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.buildTransitive.ExperionCrawler.props
deleted file mode 100644
index 05dc20b..0000000
--- a/src/Web/obj/Debug/net8.0/linux-x64/staticwebassets/msbuild.buildTransitive.ExperionCrawler.props
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
\ No newline at end of file
diff --git a/src/Web/obj/ExperionCrawler.csproj.nuget.dgspec.json b/src/Web/obj/ExperionCrawler.csproj.nuget.dgspec.json
deleted file mode 100644
index 7b76125..0000000
--- a/src/Web/obj/ExperionCrawler.csproj.nuget.dgspec.json
+++ /dev/null
@@ -1,111 +0,0 @@
-{
- "format": 1,
- "restore": {
- "/home/pacer/projects/ExperionCrawler/src/Web/ExperionCrawler.csproj": {}
- },
- "projects": {
- "/home/pacer/projects/ExperionCrawler/src/Web/ExperionCrawler.csproj": {
- "version": "1.0.0",
- "restore": {
- "projectUniqueName": "/home/pacer/projects/ExperionCrawler/src/Web/ExperionCrawler.csproj",
- "projectName": "ExperionCrawler",
- "projectPath": "/home/pacer/projects/ExperionCrawler/src/Web/ExperionCrawler.csproj",
- "packagesPath": "/home/pacer/.nuget/packages/",
- "outputPath": "/home/pacer/projects/ExperionCrawler/src/Web/obj/",
- "projectStyle": "PackageReference",
- "configFilePaths": [
- "/home/pacer/.nuget/NuGet/NuGet.Config"
- ],
- "originalTargetFrameworks": [
- "net8.0"
- ],
- "sources": {
- "https://api.nuget.org/v3/index.json": {}
- },
- "frameworks": {
- "net8.0": {
- "targetAlias": "net8.0",
- "projectReferences": {}
- }
- },
- "warningProperties": {
- "warnAsError": [
- "NU1605"
- ]
- }
- },
- "frameworks": {
- "net8.0": {
- "targetAlias": "net8.0",
- "dependencies": {
- "CsvHelper": {
- "target": "Package",
- "version": "[33.0.1, )"
- },
- "Microsoft.EntityFrameworkCore.Design": {
- "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive",
- "suppressParent": "All",
- "target": "Package",
- "version": "[8.0.13, )"
- },
- "Npgsql.EntityFrameworkCore.PostgreSQL": {
- "target": "Package",
- "version": "[8.0.11, )"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Client": {
- "target": "Package",
- "version": "[1.5.378.134, )"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Configuration": {
- "target": "Package",
- "version": "[1.5.378.134, )"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Core": {
- "target": "Package",
- "version": "[1.5.378.134, )"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Server": {
- "target": "Package",
- "version": "[1.5.378.134, )"
- },
- "Swashbuckle.AspNetCore": {
- "target": "Package",
- "version": "[6.8.1, )"
- }
- },
- "imports": [
- "net461",
- "net462",
- "net47",
- "net471",
- "net472",
- "net48",
- "net481"
- ],
- "assetTargetFallback": true,
- "warn": true,
- "downloadDependencies": [
- {
- "name": "Microsoft.NETCore.App.Host.linux-x64",
- "version": "[8.0.25, 8.0.25]"
- }
- ],
- "frameworkReferences": {
- "Microsoft.AspNetCore.App": {
- "privateAssets": "none"
- },
- "Microsoft.NETCore.App": {
- "privateAssets": "all"
- }
- },
- "runtimeIdentifierGraphPath": "/usr/lib/dotnet/sdk/8.0.125/PortableRuntimeIdentifierGraph.json"
- }
- },
- "runtimes": {
- "linux-x64": {
- "#import": []
- }
- }
- }
- }
-}
\ No newline at end of file
diff --git a/src/Web/obj/ExperionCrawler.csproj.nuget.g.props b/src/Web/obj/ExperionCrawler.csproj.nuget.g.props
deleted file mode 100644
index 5626f07..0000000
--- a/src/Web/obj/ExperionCrawler.csproj.nuget.g.props
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
- True
- NuGet
- $(MSBuildThisFileDirectory)project.assets.json
- /home/pacer/.nuget/packages/
- /home/pacer/.nuget/packages/
- PackageReference
- 6.8.1
-
-
-
-
-
-
-
-
-
-
-
- /home/pacer/.nuget/packages/microsoft.extensions.apidescription.server/6.0.5
- /home/pacer/.nuget/packages/microsoft.codeanalysis.analyzers/3.3.3
-
-
\ No newline at end of file
diff --git a/src/Web/obj/ExperionCrawler.csproj.nuget.g.targets b/src/Web/obj/ExperionCrawler.csproj.nuget.g.targets
deleted file mode 100644
index 026e9b2..0000000
--- a/src/Web/obj/ExperionCrawler.csproj.nuget.g.targets
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/Web/obj/project.assets.json b/src/Web/obj/project.assets.json
deleted file mode 100644
index 9694f45..0000000
--- a/src/Web/obj/project.assets.json
+++ /dev/null
@@ -1,4393 +0,0 @@
-{
- "version": 3,
- "targets": {
- "net8.0": {
- "BitFaster.Caching/2.5.4": {
- "type": "package",
- "compile": {
- "lib/net6.0/BitFaster.Caching.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/BitFaster.Caching.dll": {
- "related": ".xml"
- }
- }
- },
- "CsvHelper/33.0.1": {
- "type": "package",
- "compile": {
- "lib/net8.0/CsvHelper.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/CsvHelper.dll": {
- "related": ".xml"
- }
- }
- },
- "Humanizer.Core/2.14.1": {
- "type": "package",
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/Humanizer.dll": {
- "related": ".xml"
- }
- }
- },
- "Microsoft.Bcl.AsyncInterfaces/6.0.0": {
- "type": "package",
- "compile": {
- "lib/netstandard2.1/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": {
- "related": ".xml"
- }
- }
- },
- "Microsoft.CodeAnalysis.Analyzers/3.3.3": {
- "type": "package",
- "build": {
- "build/_._": {}
- }
- },
- "Microsoft.CodeAnalysis.Common/4.5.0": {
- "type": "package",
- "dependencies": {
- "Microsoft.CodeAnalysis.Analyzers": "3.3.3",
- "System.Collections.Immutable": "6.0.0",
- "System.Reflection.Metadata": "6.0.1",
- "System.Runtime.CompilerServices.Unsafe": "6.0.0",
- "System.Text.Encoding.CodePages": "6.0.0"
- },
- "compile": {
- "lib/netcoreapp3.1/_._": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll": {
- "related": ".pdb;.xml"
- }
- },
- "resource": {
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "cs"
- },
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "de"
- },
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "es"
- },
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "fr"
- },
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "it"
- },
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "ja"
- },
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "ko"
- },
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "pl"
- },
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "pt-BR"
- },
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "ru"
- },
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "tr"
- },
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "zh-Hans"
- },
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "zh-Hant"
- }
- }
- },
- "Microsoft.CodeAnalysis.CSharp/4.5.0": {
- "type": "package",
- "dependencies": {
- "Microsoft.CodeAnalysis.Common": "[4.5.0]"
- },
- "compile": {
- "lib/netcoreapp3.1/_._": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll": {
- "related": ".pdb;.xml"
- }
- },
- "resource": {
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "cs"
- },
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "de"
- },
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "es"
- },
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "fr"
- },
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "it"
- },
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "ja"
- },
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "ko"
- },
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "pl"
- },
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "pt-BR"
- },
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "ru"
- },
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "tr"
- },
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "zh-Hans"
- },
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "zh-Hant"
- }
- }
- },
- "Microsoft.CodeAnalysis.CSharp.Workspaces/4.5.0": {
- "type": "package",
- "dependencies": {
- "Humanizer.Core": "2.14.1",
- "Microsoft.CodeAnalysis.CSharp": "[4.5.0]",
- "Microsoft.CodeAnalysis.Common": "[4.5.0]",
- "Microsoft.CodeAnalysis.Workspaces.Common": "[4.5.0]"
- },
- "compile": {
- "lib/netcoreapp3.1/_._": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": {
- "related": ".pdb;.xml"
- }
- },
- "resource": {
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "cs"
- },
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "de"
- },
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "es"
- },
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "fr"
- },
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "it"
- },
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "ja"
- },
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "ko"
- },
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "pl"
- },
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "pt-BR"
- },
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "ru"
- },
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "tr"
- },
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "zh-Hans"
- },
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "zh-Hant"
- }
- }
- },
- "Microsoft.CodeAnalysis.Workspaces.Common/4.5.0": {
- "type": "package",
- "dependencies": {
- "Humanizer.Core": "2.14.1",
- "Microsoft.Bcl.AsyncInterfaces": "6.0.0",
- "Microsoft.CodeAnalysis.Common": "[4.5.0]",
- "System.Composition": "6.0.0",
- "System.IO.Pipelines": "6.0.3",
- "System.Threading.Channels": "6.0.0"
- },
- "compile": {
- "lib/netcoreapp3.1/_._": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll": {
- "related": ".pdb;.xml"
- }
- },
- "resource": {
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "cs"
- },
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "de"
- },
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "es"
- },
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "fr"
- },
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "it"
- },
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "ja"
- },
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "ko"
- },
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "pl"
- },
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "pt-BR"
- },
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "ru"
- },
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "tr"
- },
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "zh-Hans"
- },
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "zh-Hant"
- }
- }
- },
- "Microsoft.EntityFrameworkCore/8.0.13": {
- "type": "package",
- "dependencies": {
- "Microsoft.EntityFrameworkCore.Abstractions": "8.0.13",
- "Microsoft.EntityFrameworkCore.Analyzers": "8.0.13",
- "Microsoft.Extensions.Caching.Memory": "8.0.1",
- "Microsoft.Extensions.Logging": "8.0.1"
- },
- "compile": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props": {}
- }
- },
- "Microsoft.EntityFrameworkCore.Abstractions/8.0.13": {
- "type": "package",
- "compile": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
- "related": ".xml"
- }
- }
- },
- "Microsoft.EntityFrameworkCore.Analyzers/8.0.13": {
- "type": "package",
- "compile": {
- "lib/netstandard2.0/_._": {}
- },
- "runtime": {
- "lib/netstandard2.0/_._": {}
- }
- },
- "Microsoft.EntityFrameworkCore.Design/8.0.13": {
- "type": "package",
- "dependencies": {
- "Humanizer.Core": "2.14.1",
- "Microsoft.CodeAnalysis.CSharp.Workspaces": "4.5.0",
- "Microsoft.EntityFrameworkCore.Relational": "8.0.13",
- "Microsoft.Extensions.DependencyModel": "8.0.2",
- "Mono.TextTemplating": "2.2.1"
- },
- "compile": {
- "lib/net8.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.Design.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "build/net8.0/Microsoft.EntityFrameworkCore.Design.props": {}
- }
- },
- "Microsoft.EntityFrameworkCore.Relational/8.0.13": {
- "type": "package",
- "dependencies": {
- "Microsoft.EntityFrameworkCore": "8.0.13",
- "Microsoft.Extensions.Configuration.Abstractions": "8.0.0"
- },
- "compile": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
- "related": ".xml"
- }
- }
- },
- "Microsoft.Extensions.ApiDescription.Server/6.0.5": {
- "type": "package",
- "build": {
- "build/Microsoft.Extensions.ApiDescription.Server.props": {},
- "build/Microsoft.Extensions.ApiDescription.Server.targets": {}
- },
- "buildMultiTargeting": {
- "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props": {},
- "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets": {}
- }
- },
- "Microsoft.Extensions.Caching.Abstractions/8.0.0": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.Primitives": "8.0.0"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net6.0/_._": {}
- }
- },
- "Microsoft.Extensions.Caching.Memory/8.0.1": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.Caching.Abstractions": "8.0.0",
- "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2",
- "Microsoft.Extensions.Logging.Abstractions": "8.0.2",
- "Microsoft.Extensions.Options": "8.0.2",
- "Microsoft.Extensions.Primitives": "8.0.0"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net6.0/_._": {}
- }
- },
- "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.Primitives": "8.0.0"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net6.0/_._": {}
- }
- },
- "Microsoft.Extensions.DependencyInjection/10.0.2": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "Microsoft.Extensions.DependencyModel/8.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.DependencyModel.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net6.0/_._": {}
- }
- },
- "Microsoft.Extensions.Logging/10.0.2": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.DependencyInjection": "10.0.2",
- "Microsoft.Extensions.Logging.Abstractions": "10.0.2",
- "Microsoft.Extensions.Options": "10.0.2"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Logging.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Logging.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "Microsoft.Extensions.Logging.Abstractions/10.0.2": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2",
- "System.Diagnostics.DiagnosticSource": "10.0.2"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {}
- }
- },
- "Microsoft.Extensions.Options/10.0.2": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2",
- "Microsoft.Extensions.Primitives": "10.0.2"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Options.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Options.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/Microsoft.Extensions.Options.targets": {}
- }
- },
- "Microsoft.Extensions.Primitives/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Primitives.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Primitives.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "Microsoft.OpenApi/1.6.14": {
- "type": "package",
- "compile": {
- "lib/netstandard2.0/Microsoft.OpenApi.dll": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/netstandard2.0/Microsoft.OpenApi.dll": {
- "related": ".pdb;.xml"
- }
- }
- },
- "Mono.TextTemplating/2.2.1": {
- "type": "package",
- "dependencies": {
- "System.CodeDom": "4.4.0"
- },
- "compile": {
- "lib/netstandard2.0/_._": {}
- },
- "runtime": {
- "lib/netstandard2.0/Mono.TextTemplating.dll": {}
- }
- },
- "Newtonsoft.Json/13.0.4": {
- "type": "package",
- "compile": {
- "lib/net6.0/Newtonsoft.Json.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/Newtonsoft.Json.dll": {
- "related": ".xml"
- }
- }
- },
- "Npgsql/8.0.6": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.Logging.Abstractions": "8.0.0"
- },
- "compile": {
- "lib/net8.0/Npgsql.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Npgsql.dll": {
- "related": ".xml"
- }
- }
- },
- "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.11": {
- "type": "package",
- "dependencies": {
- "Microsoft.EntityFrameworkCore": "8.0.11",
- "Microsoft.EntityFrameworkCore.Abstractions": "8.0.11",
- "Microsoft.EntityFrameworkCore.Relational": "8.0.11",
- "Npgsql": "8.0.6"
- },
- "compile": {
- "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": {
- "related": ".xml"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Client/1.5.378.134": {
- "type": "package",
- "dependencies": {
- "BitFaster.Caching": "2.5.4",
- "OPCFoundation.NetStandard.Opc.Ua.Configuration": "1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Core": "1.5.378.134"
- },
- "compile": {
- "lib/net8.0/Opc.Ua.Client.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Client.dll": {
- "related": ".xml"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Configuration/1.5.378.134": {
- "type": "package",
- "dependencies": {
- "OPCFoundation.NetStandard.Opc.Ua.Core": "1.5.378.134"
- },
- "compile": {
- "lib/net8.0/Opc.Ua.Configuration.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Configuration.dll": {
- "related": ".xml"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Core/1.5.378.134": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.Logging": "10.0.2",
- "Newtonsoft.Json": "13.0.4",
- "OPCFoundation.NetStandard.Opc.Ua.Security.Certificates": "1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Types": "1.5.378.134"
- },
- "compile": {
- "lib/net8.0/Opc.Ua.Core.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Core.dll": {
- "related": ".xml"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Security.Certificates/1.5.378.134": {
- "type": "package",
- "dependencies": {
- "OPCFoundation.NetStandard.Opc.Ua.Types": "1.5.378.134",
- "System.Collections.Immutable": "10.0.2",
- "System.Diagnostics.DiagnosticSource": "10.0.2",
- "System.Formats.Asn1": "10.0.2",
- "System.Text.Json": "10.0.2"
- },
- "compile": {
- "lib/net8.0/Opc.Ua.Security.Certificates.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Security.Certificates.dll": {
- "related": ".xml"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Server/1.5.378.134": {
- "type": "package",
- "dependencies": {
- "OPCFoundation.NetStandard.Opc.Ua.Configuration": "1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Core": "1.5.378.134"
- },
- "compile": {
- "lib/net8.0/Opc.Ua.Server.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Server.dll": {
- "related": ".xml"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Types/1.5.378.134": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.Logging.Abstractions": "10.0.2",
- "System.Collections.Immutable": "10.0.2"
- },
- "compile": {
- "lib/net8.0/Opc.Ua.Types.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Types.dll": {
- "related": ".xml"
- }
- }
- },
- "Swashbuckle.AspNetCore/6.8.1": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.ApiDescription.Server": "6.0.5",
- "Swashbuckle.AspNetCore.Swagger": "6.8.1",
- "Swashbuckle.AspNetCore.SwaggerGen": "6.8.1",
- "Swashbuckle.AspNetCore.SwaggerUI": "6.8.1"
- },
- "build": {
- "build/Swashbuckle.AspNetCore.props": {}
- }
- },
- "Swashbuckle.AspNetCore.Swagger/6.8.1": {
- "type": "package",
- "dependencies": {
- "Microsoft.OpenApi": "1.6.14"
- },
- "compile": {
- "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": {
- "related": ".pdb;.xml"
- }
- },
- "frameworkReferences": [
- "Microsoft.AspNetCore.App"
- ]
- },
- "Swashbuckle.AspNetCore.SwaggerGen/6.8.1": {
- "type": "package",
- "dependencies": {
- "Swashbuckle.AspNetCore.Swagger": "6.8.1"
- },
- "compile": {
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
- "related": ".pdb;.xml"
- }
- }
- },
- "Swashbuckle.AspNetCore.SwaggerUI/6.8.1": {
- "type": "package",
- "compile": {
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
- "related": ".pdb;.xml"
- }
- },
- "frameworkReferences": [
- "Microsoft.AspNetCore.App"
- ]
- },
- "System.CodeDom/4.4.0": {
- "type": "package",
- "compile": {
- "ref/netstandard2.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/netstandard2.0/System.CodeDom.dll": {}
- }
- },
- "System.Collections.Immutable/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/System.Collections.Immutable.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/System.Collections.Immutable.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "System.Composition/6.0.0": {
- "type": "package",
- "dependencies": {
- "System.Composition.AttributedModel": "6.0.0",
- "System.Composition.Convention": "6.0.0",
- "System.Composition.Hosting": "6.0.0",
- "System.Composition.Runtime": "6.0.0",
- "System.Composition.TypedParts": "6.0.0"
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Composition.AttributedModel/6.0.0": {
- "type": "package",
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Composition.AttributedModel.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Composition.Convention/6.0.0": {
- "type": "package",
- "dependencies": {
- "System.Composition.AttributedModel": "6.0.0"
- },
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Composition.Convention.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Composition.Hosting/6.0.0": {
- "type": "package",
- "dependencies": {
- "System.Composition.Runtime": "6.0.0"
- },
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Composition.Hosting.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Composition.Runtime/6.0.0": {
- "type": "package",
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Composition.Runtime.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Composition.TypedParts/6.0.0": {
- "type": "package",
- "dependencies": {
- "System.Composition.AttributedModel": "6.0.0",
- "System.Composition.Hosting": "6.0.0",
- "System.Composition.Runtime": "6.0.0"
- },
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Composition.TypedParts.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Diagnostics.DiagnosticSource/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "System.Formats.Asn1/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/System.Formats.Asn1.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/System.Formats.Asn1.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "System.IO.Pipelines/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/System.IO.Pipelines.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/System.IO.Pipelines.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "System.Reflection.Metadata/6.0.1": {
- "type": "package",
- "dependencies": {
- "System.Collections.Immutable": "6.0.0"
- },
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Reflection.Metadata.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Runtime.CompilerServices.Unsafe/6.0.0": {
- "type": "package",
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Text.Encoding.CodePages/6.0.0": {
- "type": "package",
- "dependencies": {
- "System.Runtime.CompilerServices.Unsafe": "6.0.0"
- },
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Text.Encoding.CodePages.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- },
- "runtimeTargets": {
- "runtimes/win/lib/net6.0/System.Text.Encoding.CodePages.dll": {
- "assetType": "runtime",
- "rid": "win"
- }
- }
- },
- "System.Text.Encodings.Web/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/System.Text.Encodings.Web.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/System.Text.Encodings.Web.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- },
- "runtimeTargets": {
- "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll": {
- "assetType": "runtime",
- "rid": "browser"
- }
- }
- },
- "System.Text.Json/10.0.2": {
- "type": "package",
- "dependencies": {
- "System.IO.Pipelines": "10.0.2",
- "System.Text.Encodings.Web": "10.0.2"
- },
- "compile": {
- "lib/net8.0/System.Text.Json.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/System.Text.Json.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/System.Text.Json.targets": {}
- }
- },
- "System.Threading.Channels/6.0.0": {
- "type": "package",
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Threading.Channels.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- }
- },
- "net8.0/linux-x64": {
- "BitFaster.Caching/2.5.4": {
- "type": "package",
- "compile": {
- "lib/net6.0/BitFaster.Caching.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/BitFaster.Caching.dll": {
- "related": ".xml"
- }
- }
- },
- "CsvHelper/33.0.1": {
- "type": "package",
- "compile": {
- "lib/net8.0/CsvHelper.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/CsvHelper.dll": {
- "related": ".xml"
- }
- }
- },
- "Humanizer.Core/2.14.1": {
- "type": "package",
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/Humanizer.dll": {
- "related": ".xml"
- }
- }
- },
- "Microsoft.Bcl.AsyncInterfaces/6.0.0": {
- "type": "package",
- "compile": {
- "lib/netstandard2.1/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll": {
- "related": ".xml"
- }
- }
- },
- "Microsoft.CodeAnalysis.Analyzers/3.3.3": {
- "type": "package",
- "build": {
- "build/_._": {}
- }
- },
- "Microsoft.CodeAnalysis.Common/4.5.0": {
- "type": "package",
- "dependencies": {
- "Microsoft.CodeAnalysis.Analyzers": "3.3.3",
- "System.Collections.Immutable": "6.0.0",
- "System.Reflection.Metadata": "6.0.1",
- "System.Runtime.CompilerServices.Unsafe": "6.0.0",
- "System.Text.Encoding.CodePages": "6.0.0"
- },
- "compile": {
- "lib/netcoreapp3.1/_._": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll": {
- "related": ".pdb;.xml"
- }
- },
- "resource": {
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "cs"
- },
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "de"
- },
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "es"
- },
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "fr"
- },
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "it"
- },
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "ja"
- },
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "ko"
- },
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "pl"
- },
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "pt-BR"
- },
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "ru"
- },
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "tr"
- },
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "zh-Hans"
- },
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll": {
- "locale": "zh-Hant"
- }
- }
- },
- "Microsoft.CodeAnalysis.CSharp/4.5.0": {
- "type": "package",
- "dependencies": {
- "Microsoft.CodeAnalysis.Common": "[4.5.0]"
- },
- "compile": {
- "lib/netcoreapp3.1/_._": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll": {
- "related": ".pdb;.xml"
- }
- },
- "resource": {
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "cs"
- },
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "de"
- },
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "es"
- },
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "fr"
- },
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "it"
- },
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "ja"
- },
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "ko"
- },
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "pl"
- },
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "pt-BR"
- },
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "ru"
- },
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "tr"
- },
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "zh-Hans"
- },
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": {
- "locale": "zh-Hant"
- }
- }
- },
- "Microsoft.CodeAnalysis.CSharp.Workspaces/4.5.0": {
- "type": "package",
- "dependencies": {
- "Humanizer.Core": "2.14.1",
- "Microsoft.CodeAnalysis.CSharp": "[4.5.0]",
- "Microsoft.CodeAnalysis.Common": "[4.5.0]",
- "Microsoft.CodeAnalysis.Workspaces.Common": "[4.5.0]"
- },
- "compile": {
- "lib/netcoreapp3.1/_._": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": {
- "related": ".pdb;.xml"
- }
- },
- "resource": {
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "cs"
- },
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "de"
- },
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "es"
- },
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "fr"
- },
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "it"
- },
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "ja"
- },
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "ko"
- },
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "pl"
- },
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "pt-BR"
- },
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "ru"
- },
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "tr"
- },
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "zh-Hans"
- },
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll": {
- "locale": "zh-Hant"
- }
- }
- },
- "Microsoft.CodeAnalysis.Workspaces.Common/4.5.0": {
- "type": "package",
- "dependencies": {
- "Humanizer.Core": "2.14.1",
- "Microsoft.Bcl.AsyncInterfaces": "6.0.0",
- "Microsoft.CodeAnalysis.Common": "[4.5.0]",
- "System.Composition": "6.0.0",
- "System.IO.Pipelines": "6.0.3",
- "System.Threading.Channels": "6.0.0"
- },
- "compile": {
- "lib/netcoreapp3.1/_._": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll": {
- "related": ".pdb;.xml"
- }
- },
- "resource": {
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "cs"
- },
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "de"
- },
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "es"
- },
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "fr"
- },
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "it"
- },
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "ja"
- },
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "ko"
- },
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "pl"
- },
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "pt-BR"
- },
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "ru"
- },
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "tr"
- },
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "zh-Hans"
- },
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll": {
- "locale": "zh-Hant"
- }
- }
- },
- "Microsoft.EntityFrameworkCore/8.0.13": {
- "type": "package",
- "dependencies": {
- "Microsoft.EntityFrameworkCore.Abstractions": "8.0.13",
- "Microsoft.EntityFrameworkCore.Analyzers": "8.0.13",
- "Microsoft.Extensions.Caching.Memory": "8.0.1",
- "Microsoft.Extensions.Logging": "8.0.1"
- },
- "compile": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props": {}
- }
- },
- "Microsoft.EntityFrameworkCore.Abstractions/8.0.13": {
- "type": "package",
- "compile": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
- "related": ".xml"
- }
- }
- },
- "Microsoft.EntityFrameworkCore.Analyzers/8.0.13": {
- "type": "package",
- "compile": {
- "lib/netstandard2.0/_._": {}
- },
- "runtime": {
- "lib/netstandard2.0/_._": {}
- }
- },
- "Microsoft.EntityFrameworkCore.Design/8.0.13": {
- "type": "package",
- "dependencies": {
- "Humanizer.Core": "2.14.1",
- "Microsoft.CodeAnalysis.CSharp.Workspaces": "4.5.0",
- "Microsoft.EntityFrameworkCore.Relational": "8.0.13",
- "Microsoft.Extensions.DependencyModel": "8.0.2",
- "Mono.TextTemplating": "2.2.1"
- },
- "compile": {
- "lib/net8.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.Design.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "build/net8.0/Microsoft.EntityFrameworkCore.Design.props": {}
- }
- },
- "Microsoft.EntityFrameworkCore.Relational/8.0.13": {
- "type": "package",
- "dependencies": {
- "Microsoft.EntityFrameworkCore": "8.0.13",
- "Microsoft.Extensions.Configuration.Abstractions": "8.0.0"
- },
- "compile": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
- "related": ".xml"
- }
- }
- },
- "Microsoft.Extensions.ApiDescription.Server/6.0.5": {
- "type": "package",
- "build": {
- "build/Microsoft.Extensions.ApiDescription.Server.props": {},
- "build/Microsoft.Extensions.ApiDescription.Server.targets": {}
- },
- "buildMultiTargeting": {
- "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props": {},
- "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets": {}
- }
- },
- "Microsoft.Extensions.Caching.Abstractions/8.0.0": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.Primitives": "8.0.0"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net6.0/_._": {}
- }
- },
- "Microsoft.Extensions.Caching.Memory/8.0.1": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.Caching.Abstractions": "8.0.0",
- "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.2",
- "Microsoft.Extensions.Logging.Abstractions": "8.0.2",
- "Microsoft.Extensions.Options": "8.0.2",
- "Microsoft.Extensions.Primitives": "8.0.0"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net6.0/_._": {}
- }
- },
- "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.Primitives": "8.0.0"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net6.0/_._": {}
- }
- },
- "Microsoft.Extensions.DependencyInjection/10.0.2": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "Microsoft.Extensions.DependencyModel/8.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.DependencyModel.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net6.0/_._": {}
- }
- },
- "Microsoft.Extensions.Logging/10.0.2": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.DependencyInjection": "10.0.2",
- "Microsoft.Extensions.Logging.Abstractions": "10.0.2",
- "Microsoft.Extensions.Options": "10.0.2"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Logging.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Logging.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "Microsoft.Extensions.Logging.Abstractions/10.0.2": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2",
- "System.Diagnostics.DiagnosticSource": "10.0.2"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {}
- }
- },
- "Microsoft.Extensions.Options/10.0.2": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.2",
- "Microsoft.Extensions.Primitives": "10.0.2"
- },
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Options.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Options.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/Microsoft.Extensions.Options.targets": {}
- }
- },
- "Microsoft.Extensions.Primitives/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/Microsoft.Extensions.Primitives.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Microsoft.Extensions.Primitives.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "Microsoft.OpenApi/1.6.14": {
- "type": "package",
- "compile": {
- "lib/netstandard2.0/Microsoft.OpenApi.dll": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/netstandard2.0/Microsoft.OpenApi.dll": {
- "related": ".pdb;.xml"
- }
- }
- },
- "Mono.TextTemplating/2.2.1": {
- "type": "package",
- "dependencies": {
- "System.CodeDom": "4.4.0"
- },
- "compile": {
- "lib/netstandard2.0/_._": {}
- },
- "runtime": {
- "lib/netstandard2.0/Mono.TextTemplating.dll": {}
- }
- },
- "Newtonsoft.Json/13.0.4": {
- "type": "package",
- "compile": {
- "lib/net6.0/Newtonsoft.Json.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/Newtonsoft.Json.dll": {
- "related": ".xml"
- }
- }
- },
- "Npgsql/8.0.6": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.Logging.Abstractions": "8.0.0"
- },
- "compile": {
- "lib/net8.0/Npgsql.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Npgsql.dll": {
- "related": ".xml"
- }
- }
- },
- "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.11": {
- "type": "package",
- "dependencies": {
- "Microsoft.EntityFrameworkCore": "8.0.11",
- "Microsoft.EntityFrameworkCore.Abstractions": "8.0.11",
- "Microsoft.EntityFrameworkCore.Relational": "8.0.11",
- "Npgsql": "8.0.6"
- },
- "compile": {
- "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll": {
- "related": ".xml"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Client/1.5.378.134": {
- "type": "package",
- "dependencies": {
- "BitFaster.Caching": "2.5.4",
- "OPCFoundation.NetStandard.Opc.Ua.Configuration": "1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Core": "1.5.378.134"
- },
- "compile": {
- "lib/net8.0/Opc.Ua.Client.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Client.dll": {
- "related": ".xml"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Configuration/1.5.378.134": {
- "type": "package",
- "dependencies": {
- "OPCFoundation.NetStandard.Opc.Ua.Core": "1.5.378.134"
- },
- "compile": {
- "lib/net8.0/Opc.Ua.Configuration.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Configuration.dll": {
- "related": ".xml"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Core/1.5.378.134": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.Logging": "10.0.2",
- "Newtonsoft.Json": "13.0.4",
- "OPCFoundation.NetStandard.Opc.Ua.Security.Certificates": "1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Types": "1.5.378.134"
- },
- "compile": {
- "lib/net8.0/Opc.Ua.Core.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Core.dll": {
- "related": ".xml"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Security.Certificates/1.5.378.134": {
- "type": "package",
- "dependencies": {
- "OPCFoundation.NetStandard.Opc.Ua.Types": "1.5.378.134",
- "System.Collections.Immutable": "10.0.2",
- "System.Diagnostics.DiagnosticSource": "10.0.2",
- "System.Formats.Asn1": "10.0.2",
- "System.Text.Json": "10.0.2"
- },
- "compile": {
- "lib/net8.0/Opc.Ua.Security.Certificates.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Security.Certificates.dll": {
- "related": ".xml"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Server/1.5.378.134": {
- "type": "package",
- "dependencies": {
- "OPCFoundation.NetStandard.Opc.Ua.Configuration": "1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Core": "1.5.378.134"
- },
- "compile": {
- "lib/net8.0/Opc.Ua.Server.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Server.dll": {
- "related": ".xml"
- }
- }
- },
- "OPCFoundation.NetStandard.Opc.Ua.Types/1.5.378.134": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.Logging.Abstractions": "10.0.2",
- "System.Collections.Immutable": "10.0.2"
- },
- "compile": {
- "lib/net8.0/Opc.Ua.Types.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/Opc.Ua.Types.dll": {
- "related": ".xml"
- }
- }
- },
- "Swashbuckle.AspNetCore/6.8.1": {
- "type": "package",
- "dependencies": {
- "Microsoft.Extensions.ApiDescription.Server": "6.0.5",
- "Swashbuckle.AspNetCore.Swagger": "6.8.1",
- "Swashbuckle.AspNetCore.SwaggerGen": "6.8.1",
- "Swashbuckle.AspNetCore.SwaggerUI": "6.8.1"
- },
- "build": {
- "build/Swashbuckle.AspNetCore.props": {}
- }
- },
- "Swashbuckle.AspNetCore.Swagger/6.8.1": {
- "type": "package",
- "dependencies": {
- "Microsoft.OpenApi": "1.6.14"
- },
- "compile": {
- "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll": {
- "related": ".pdb;.xml"
- }
- },
- "frameworkReferences": [
- "Microsoft.AspNetCore.App"
- ]
- },
- "Swashbuckle.AspNetCore.SwaggerGen/6.8.1": {
- "type": "package",
- "dependencies": {
- "Swashbuckle.AspNetCore.Swagger": "6.8.1"
- },
- "compile": {
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {
- "related": ".pdb;.xml"
- }
- }
- },
- "Swashbuckle.AspNetCore.SwaggerUI/6.8.1": {
- "type": "package",
- "compile": {
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
- "related": ".pdb;.xml"
- }
- },
- "runtime": {
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {
- "related": ".pdb;.xml"
- }
- },
- "frameworkReferences": [
- "Microsoft.AspNetCore.App"
- ]
- },
- "System.CodeDom/4.4.0": {
- "type": "package",
- "compile": {
- "ref/netstandard2.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/netstandard2.0/System.CodeDom.dll": {}
- }
- },
- "System.Collections.Immutable/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/System.Collections.Immutable.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/System.Collections.Immutable.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "System.Composition/6.0.0": {
- "type": "package",
- "dependencies": {
- "System.Composition.AttributedModel": "6.0.0",
- "System.Composition.Convention": "6.0.0",
- "System.Composition.Hosting": "6.0.0",
- "System.Composition.Runtime": "6.0.0",
- "System.Composition.TypedParts": "6.0.0"
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Composition.AttributedModel/6.0.0": {
- "type": "package",
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Composition.AttributedModel.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Composition.Convention/6.0.0": {
- "type": "package",
- "dependencies": {
- "System.Composition.AttributedModel": "6.0.0"
- },
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Composition.Convention.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Composition.Hosting/6.0.0": {
- "type": "package",
- "dependencies": {
- "System.Composition.Runtime": "6.0.0"
- },
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Composition.Hosting.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Composition.Runtime/6.0.0": {
- "type": "package",
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Composition.Runtime.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Composition.TypedParts/6.0.0": {
- "type": "package",
- "dependencies": {
- "System.Composition.AttributedModel": "6.0.0",
- "System.Composition.Hosting": "6.0.0",
- "System.Composition.Runtime": "6.0.0"
- },
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Composition.TypedParts.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Diagnostics.DiagnosticSource/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/System.Diagnostics.DiagnosticSource.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "System.Formats.Asn1/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/System.Formats.Asn1.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/System.Formats.Asn1.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "System.IO.Pipelines/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/System.IO.Pipelines.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/System.IO.Pipelines.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "System.Reflection.Metadata/6.0.1": {
- "type": "package",
- "dependencies": {
- "System.Collections.Immutable": "6.0.0"
- },
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Reflection.Metadata.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Runtime.CompilerServices.Unsafe/6.0.0": {
- "type": "package",
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Text.Encoding.CodePages/6.0.0": {
- "type": "package",
- "dependencies": {
- "System.Runtime.CompilerServices.Unsafe": "6.0.0"
- },
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Text.Encoding.CodePages.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- },
- "System.Text.Encodings.Web/10.0.2": {
- "type": "package",
- "compile": {
- "lib/net8.0/System.Text.Encodings.Web.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/System.Text.Encodings.Web.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/_._": {}
- }
- },
- "System.Text.Json/10.0.2": {
- "type": "package",
- "dependencies": {
- "System.IO.Pipelines": "10.0.2",
- "System.Text.Encodings.Web": "10.0.2"
- },
- "compile": {
- "lib/net8.0/System.Text.Json.dll": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net8.0/System.Text.Json.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/net8.0/System.Text.Json.targets": {}
- }
- },
- "System.Threading.Channels/6.0.0": {
- "type": "package",
- "compile": {
- "lib/net6.0/_._": {
- "related": ".xml"
- }
- },
- "runtime": {
- "lib/net6.0/System.Threading.Channels.dll": {
- "related": ".xml"
- }
- },
- "build": {
- "buildTransitive/netcoreapp3.1/_._": {}
- }
- }
- }
- },
- "libraries": {
- "BitFaster.Caching/2.5.4": {
- "sha512": "1QroTY1PVCZOSG9FnkkCrmCKk/+bZCgI/YXq376HnYwUDJ4Ho0EaV4YaA/5v5WYLnwIwIO7RZkdWbg9pxIpueQ==",
- "type": "package",
- "path": "bitfaster.caching/2.5.4",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "LICENSE",
- "ReadMe.md",
- "bitfaster.caching.2.5.4.nupkg.sha512",
- "bitfaster.caching.nuspec",
- "lib/net6.0/BitFaster.Caching.dll",
- "lib/net6.0/BitFaster.Caching.xml",
- "lib/netcoreapp3.1/BitFaster.Caching.dll",
- "lib/netcoreapp3.1/BitFaster.Caching.xml",
- "lib/netstandard2.0/BitFaster.Caching.dll",
- "lib/netstandard2.0/BitFaster.Caching.xml"
- ]
- },
- "CsvHelper/33.0.1": {
- "sha512": "fev4lynklAU2A9GVMLtwarkwaanjSYB4wUqO2nOJX5hnzObORzUqVLe+bDYCUyIIRQM4o5Bsq3CcyJR89iMmEQ==",
- "type": "package",
- "path": "csvhelper/33.0.1",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "csvhelper.33.0.1.nupkg.sha512",
- "csvhelper.nuspec",
- "lib/net462/CsvHelper.dll",
- "lib/net462/CsvHelper.xml",
- "lib/net47/CsvHelper.dll",
- "lib/net47/CsvHelper.xml",
- "lib/net48/CsvHelper.dll",
- "lib/net48/CsvHelper.xml",
- "lib/net6.0/CsvHelper.dll",
- "lib/net6.0/CsvHelper.xml",
- "lib/net7.0/CsvHelper.dll",
- "lib/net7.0/CsvHelper.xml",
- "lib/net8.0/CsvHelper.dll",
- "lib/net8.0/CsvHelper.xml",
- "lib/netstandard2.0/CsvHelper.dll",
- "lib/netstandard2.0/CsvHelper.xml",
- "lib/netstandard2.1/CsvHelper.dll",
- "lib/netstandard2.1/CsvHelper.xml"
- ]
- },
- "Humanizer.Core/2.14.1": {
- "sha512": "lQKvtaTDOXnoVJ20ibTuSIOf2i0uO0MPbDhd1jm238I+U/2ZnRENj0cktKZhtchBMtCUSRQ5v4xBCUbKNmyVMw==",
- "type": "package",
- "path": "humanizer.core/2.14.1",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "humanizer.core.2.14.1.nupkg.sha512",
- "humanizer.core.nuspec",
- "lib/net6.0/Humanizer.dll",
- "lib/net6.0/Humanizer.xml",
- "lib/netstandard1.0/Humanizer.dll",
- "lib/netstandard1.0/Humanizer.xml",
- "lib/netstandard2.0/Humanizer.dll",
- "lib/netstandard2.0/Humanizer.xml",
- "logo.png"
- ]
- },
- "Microsoft.Bcl.AsyncInterfaces/6.0.0": {
- "sha512": "UcSjPsst+DfAdJGVDsu346FX0ci0ah+lw3WRtn18NUwEqRt70HaOQ7lI72vy3+1LxtqI3T5GWwV39rQSrCzAeg==",
- "type": "package",
- "path": "microsoft.bcl.asyncinterfaces/6.0.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "THIRD-PARTY-NOTICES.TXT",
- "lib/net461/Microsoft.Bcl.AsyncInterfaces.dll",
- "lib/net461/Microsoft.Bcl.AsyncInterfaces.xml",
- "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll",
- "lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml",
- "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll",
- "lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml",
- "microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512",
- "microsoft.bcl.asyncinterfaces.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "Microsoft.CodeAnalysis.Analyzers/3.3.3": {
- "sha512": "j/rOZtLMVJjrfLRlAMckJLPW/1rze9MT1yfWqSIbUPGRu1m1P0fuo9PmqapwsmePfGB5PJrudQLvmUOAMF0DqQ==",
- "type": "package",
- "path": "microsoft.codeanalysis.analyzers/3.3.3",
- "hasTools": true,
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "ThirdPartyNotices.rtf",
- "analyzers/dotnet/cs/Microsoft.CodeAnalysis.Analyzers.dll",
- "analyzers/dotnet/cs/Microsoft.CodeAnalysis.CSharp.Analyzers.dll",
- "analyzers/dotnet/cs/cs/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/cs/de/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/cs/es/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/cs/fr/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/cs/it/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/cs/ja/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/cs/ko/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/cs/pl/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/cs/pt-BR/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/cs/ru/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/cs/tr/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/cs/zh-Hans/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/cs/zh-Hant/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/vb/Microsoft.CodeAnalysis.Analyzers.dll",
- "analyzers/dotnet/vb/Microsoft.CodeAnalysis.VisualBasic.Analyzers.dll",
- "analyzers/dotnet/vb/cs/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/vb/de/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/vb/es/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/vb/fr/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/vb/it/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/vb/ja/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/vb/ko/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/vb/pl/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/vb/pt-BR/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/vb/ru/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/vb/tr/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/vb/zh-Hans/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "analyzers/dotnet/vb/zh-Hant/Microsoft.CodeAnalysis.Analyzers.resources.dll",
- "build/Microsoft.CodeAnalysis.Analyzers.props",
- "build/Microsoft.CodeAnalysis.Analyzers.targets",
- "build/config/analysislevel_2_9_8_all.editorconfig",
- "build/config/analysislevel_2_9_8_default.editorconfig",
- "build/config/analysislevel_2_9_8_minimum.editorconfig",
- "build/config/analysislevel_2_9_8_none.editorconfig",
- "build/config/analysislevel_2_9_8_recommended.editorconfig",
- "build/config/analysislevel_3_3_all.editorconfig",
- "build/config/analysislevel_3_3_default.editorconfig",
- "build/config/analysislevel_3_3_minimum.editorconfig",
- "build/config/analysislevel_3_3_none.editorconfig",
- "build/config/analysislevel_3_3_recommended.editorconfig",
- "build/config/analysislevel_3_all.editorconfig",
- "build/config/analysislevel_3_default.editorconfig",
- "build/config/analysislevel_3_minimum.editorconfig",
- "build/config/analysislevel_3_none.editorconfig",
- "build/config/analysislevel_3_recommended.editorconfig",
- "build/config/analysislevelcorrectness_2_9_8_all.editorconfig",
- "build/config/analysislevelcorrectness_2_9_8_default.editorconfig",
- "build/config/analysislevelcorrectness_2_9_8_minimum.editorconfig",
- "build/config/analysislevelcorrectness_2_9_8_none.editorconfig",
- "build/config/analysislevelcorrectness_2_9_8_recommended.editorconfig",
- "build/config/analysislevelcorrectness_3_3_all.editorconfig",
- "build/config/analysislevelcorrectness_3_3_default.editorconfig",
- "build/config/analysislevelcorrectness_3_3_minimum.editorconfig",
- "build/config/analysislevelcorrectness_3_3_none.editorconfig",
- "build/config/analysislevelcorrectness_3_3_recommended.editorconfig",
- "build/config/analysislevelcorrectness_3_all.editorconfig",
- "build/config/analysislevelcorrectness_3_default.editorconfig",
- "build/config/analysislevelcorrectness_3_minimum.editorconfig",
- "build/config/analysislevelcorrectness_3_none.editorconfig",
- "build/config/analysislevelcorrectness_3_recommended.editorconfig",
- "build/config/analysislevellibrary_2_9_8_all.editorconfig",
- "build/config/analysislevellibrary_2_9_8_default.editorconfig",
- "build/config/analysislevellibrary_2_9_8_minimum.editorconfig",
- "build/config/analysislevellibrary_2_9_8_none.editorconfig",
- "build/config/analysislevellibrary_2_9_8_recommended.editorconfig",
- "build/config/analysislevellibrary_3_3_all.editorconfig",
- "build/config/analysislevellibrary_3_3_default.editorconfig",
- "build/config/analysislevellibrary_3_3_minimum.editorconfig",
- "build/config/analysislevellibrary_3_3_none.editorconfig",
- "build/config/analysislevellibrary_3_3_recommended.editorconfig",
- "build/config/analysislevellibrary_3_all.editorconfig",
- "build/config/analysislevellibrary_3_default.editorconfig",
- "build/config/analysislevellibrary_3_minimum.editorconfig",
- "build/config/analysislevellibrary_3_none.editorconfig",
- "build/config/analysislevellibrary_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_2_9_8_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscompatibility_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_2_9_8_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysiscorrectness_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_2_9_8_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_3_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdesign_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_2_9_8_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisdocumentation_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_2_9_8_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_3_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysislocalization_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_2_9_8_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_3_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisperformance_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_2_9_8_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_3_recommended.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_all.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_default.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_minimum.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_none.editorconfig",
- "build/config/analysislevelmicrosoftcodeanalysisreleasetracking_3_recommended.editorconfig",
- "documentation/Analyzer Configuration.md",
- "documentation/Microsoft.CodeAnalysis.Analyzers.md",
- "documentation/Microsoft.CodeAnalysis.Analyzers.sarif",
- "editorconfig/AllRulesDefault/.editorconfig",
- "editorconfig/AllRulesDisabled/.editorconfig",
- "editorconfig/AllRulesEnabled/.editorconfig",
- "editorconfig/CorrectnessRulesDefault/.editorconfig",
- "editorconfig/CorrectnessRulesEnabled/.editorconfig",
- "editorconfig/DataflowRulesDefault/.editorconfig",
- "editorconfig/DataflowRulesEnabled/.editorconfig",
- "editorconfig/LibraryRulesDefault/.editorconfig",
- "editorconfig/LibraryRulesEnabled/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisCompatibilityRulesDefault/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisCompatibilityRulesEnabled/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisCorrectnessRulesDefault/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisCorrectnessRulesEnabled/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisDesignRulesDefault/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisDesignRulesEnabled/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisDocumentationRulesDefault/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisDocumentationRulesEnabled/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisLocalizationRulesDefault/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisLocalizationRulesEnabled/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisPerformanceRulesDefault/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisPerformanceRulesEnabled/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisReleaseTrackingRulesDefault/.editorconfig",
- "editorconfig/MicrosoftCodeAnalysisReleaseTrackingRulesEnabled/.editorconfig",
- "editorconfig/PortedFromFxCopRulesDefault/.editorconfig",
- "editorconfig/PortedFromFxCopRulesEnabled/.editorconfig",
- "microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512",
- "microsoft.codeanalysis.analyzers.nuspec",
- "rulesets/AllRulesDefault.ruleset",
- "rulesets/AllRulesDisabled.ruleset",
- "rulesets/AllRulesEnabled.ruleset",
- "rulesets/CorrectnessRulesDefault.ruleset",
- "rulesets/CorrectnessRulesEnabled.ruleset",
- "rulesets/DataflowRulesDefault.ruleset",
- "rulesets/DataflowRulesEnabled.ruleset",
- "rulesets/LibraryRulesDefault.ruleset",
- "rulesets/LibraryRulesEnabled.ruleset",
- "rulesets/MicrosoftCodeAnalysisCompatibilityRulesDefault.ruleset",
- "rulesets/MicrosoftCodeAnalysisCompatibilityRulesEnabled.ruleset",
- "rulesets/MicrosoftCodeAnalysisCorrectnessRulesDefault.ruleset",
- "rulesets/MicrosoftCodeAnalysisCorrectnessRulesEnabled.ruleset",
- "rulesets/MicrosoftCodeAnalysisDesignRulesDefault.ruleset",
- "rulesets/MicrosoftCodeAnalysisDesignRulesEnabled.ruleset",
- "rulesets/MicrosoftCodeAnalysisDocumentationRulesDefault.ruleset",
- "rulesets/MicrosoftCodeAnalysisDocumentationRulesEnabled.ruleset",
- "rulesets/MicrosoftCodeAnalysisLocalizationRulesDefault.ruleset",
- "rulesets/MicrosoftCodeAnalysisLocalizationRulesEnabled.ruleset",
- "rulesets/MicrosoftCodeAnalysisPerformanceRulesDefault.ruleset",
- "rulesets/MicrosoftCodeAnalysisPerformanceRulesEnabled.ruleset",
- "rulesets/MicrosoftCodeAnalysisReleaseTrackingRulesDefault.ruleset",
- "rulesets/MicrosoftCodeAnalysisReleaseTrackingRulesEnabled.ruleset",
- "rulesets/PortedFromFxCopRulesDefault.ruleset",
- "rulesets/PortedFromFxCopRulesEnabled.ruleset",
- "tools/install.ps1",
- "tools/uninstall.ps1"
- ]
- },
- "Microsoft.CodeAnalysis.Common/4.5.0": {
- "sha512": "lwAbIZNdnY0SUNoDmZHkVUwLO8UyNnyyh1t/4XsbFxi4Ounb3xszIYZaWhyj5ZjyfcwqwmtMbE7fUTVCqQEIdQ==",
- "type": "package",
- "path": "microsoft.codeanalysis.common/4.5.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "ThirdPartyNotices.rtf",
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.dll",
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.pdb",
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.xml",
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.resources.dll",
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.resources.dll",
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.resources.dll",
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.resources.dll",
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.resources.dll",
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.resources.dll",
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.resources.dll",
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.resources.dll",
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.resources.dll",
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.resources.dll",
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.resources.dll",
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.resources.dll",
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.resources.dll",
- "lib/netstandard2.0/Microsoft.CodeAnalysis.dll",
- "lib/netstandard2.0/Microsoft.CodeAnalysis.pdb",
- "lib/netstandard2.0/Microsoft.CodeAnalysis.xml",
- "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.resources.dll",
- "lib/netstandard2.0/de/Microsoft.CodeAnalysis.resources.dll",
- "lib/netstandard2.0/es/Microsoft.CodeAnalysis.resources.dll",
- "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.resources.dll",
- "lib/netstandard2.0/it/Microsoft.CodeAnalysis.resources.dll",
- "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.resources.dll",
- "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.resources.dll",
- "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.resources.dll",
- "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.resources.dll",
- "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.resources.dll",
- "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.resources.dll",
- "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll",
- "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll",
- "microsoft.codeanalysis.common.4.5.0.nupkg.sha512",
- "microsoft.codeanalysis.common.nuspec"
- ]
- },
- "Microsoft.CodeAnalysis.CSharp/4.5.0": {
- "sha512": "cM59oMKAOxvdv76bdmaKPy5hfj+oR+zxikWoueEB7CwTko7mt9sVKZI8Qxlov0C/LuKEG+WQwifepqL3vuTiBQ==",
- "type": "package",
- "path": "microsoft.codeanalysis.csharp/4.5.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "ThirdPartyNotices.rtf",
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.dll",
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.pdb",
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.xml",
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.dll",
- "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.pdb",
- "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.xml",
- "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netstandard2.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netstandard2.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netstandard2.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll",
- "microsoft.codeanalysis.csharp.4.5.0.nupkg.sha512",
- "microsoft.codeanalysis.csharp.nuspec"
- ]
- },
- "Microsoft.CodeAnalysis.CSharp.Workspaces/4.5.0": {
- "sha512": "h74wTpmGOp4yS4hj+EvNzEiPgg/KVs2wmSfTZ81upJZOtPkJsVkgfsgtxxqmAeapjT/vLKfmYV0bS8n5MNVP+g==",
- "type": "package",
- "path": "microsoft.codeanalysis.csharp.workspaces/4.5.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "ThirdPartyNotices.rtf",
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.dll",
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.pdb",
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.CSharp.Workspaces.xml",
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.Workspaces.dll",
- "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.Workspaces.pdb",
- "lib/netstandard2.0/Microsoft.CodeAnalysis.CSharp.Workspaces.xml",
- "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netstandard2.0/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netstandard2.0/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netstandard2.0/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll",
- "microsoft.codeanalysis.csharp.workspaces.4.5.0.nupkg.sha512",
- "microsoft.codeanalysis.csharp.workspaces.nuspec"
- ]
- },
- "Microsoft.CodeAnalysis.Workspaces.Common/4.5.0": {
- "sha512": "l4dDRmGELXG72XZaonnOeORyD/T5RpEu5LGHOUIhnv+MmUWDY/m1kWXGwtcgQ5CJ5ynkFiRnIYzTKXYjUs7rbw==",
- "type": "package",
- "path": "microsoft.codeanalysis.workspaces.common/4.5.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "ThirdPartyNotices.rtf",
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.dll",
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.pdb",
- "lib/netcoreapp3.1/Microsoft.CodeAnalysis.Workspaces.xml",
- "lib/netcoreapp3.1/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netcoreapp3.1/de/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netcoreapp3.1/es/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netcoreapp3.1/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netcoreapp3.1/it/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netcoreapp3.1/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netcoreapp3.1/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netcoreapp3.1/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netcoreapp3.1/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netcoreapp3.1/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netcoreapp3.1/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netcoreapp3.1/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netcoreapp3.1/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netstandard2.0/Microsoft.CodeAnalysis.Workspaces.dll",
- "lib/netstandard2.0/Microsoft.CodeAnalysis.Workspaces.pdb",
- "lib/netstandard2.0/Microsoft.CodeAnalysis.Workspaces.xml",
- "lib/netstandard2.0/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netstandard2.0/de/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netstandard2.0/es/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netstandard2.0/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netstandard2.0/it/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netstandard2.0/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netstandard2.0/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netstandard2.0/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netstandard2.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netstandard2.0/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netstandard2.0/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netstandard2.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "lib/netstandard2.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll",
- "microsoft.codeanalysis.workspaces.common.4.5.0.nupkg.sha512",
- "microsoft.codeanalysis.workspaces.common.nuspec"
- ]
- },
- "Microsoft.EntityFrameworkCore/8.0.13": {
- "sha512": "4wyLeg64sZgJcER83fkitlKuySY3OzwcOZSZcGV1TNskmThupfhcVlsQht7bNCfNpXTCZVNIOwAZChk6/OFdXQ==",
- "type": "package",
- "path": "microsoft.entityframeworkcore/8.0.13",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "buildTransitive/net8.0/Microsoft.EntityFrameworkCore.props",
- "lib/net8.0/Microsoft.EntityFrameworkCore.dll",
- "lib/net8.0/Microsoft.EntityFrameworkCore.xml",
- "microsoft.entityframeworkcore.8.0.13.nupkg.sha512",
- "microsoft.entityframeworkcore.nuspec"
- ]
- },
- "Microsoft.EntityFrameworkCore.Abstractions/8.0.13": {
- "sha512": "a6O+v8CMStumpVoQyN0aUpx5P3/qYZP+5791sGrzJhIM+QsniQdSaJVdUSneL40M+FpBgtiC8ggqzNo2x/gVlw==",
- "type": "package",
- "path": "microsoft.entityframeworkcore.abstractions/8.0.13",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll",
- "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.xml",
- "microsoft.entityframeworkcore.abstractions.8.0.13.nupkg.sha512",
- "microsoft.entityframeworkcore.abstractions.nuspec"
- ]
- },
- "Microsoft.EntityFrameworkCore.Analyzers/8.0.13": {
- "sha512": "ENny33QADFiRxge5ikJBs2p7JB4MQx/ZSPKPNwt2eJPO0lVUGSjTiJeunGGggkVHiaUy0yY4f625LQtNlErIsw==",
- "type": "package",
- "path": "microsoft.entityframeworkcore.analyzers/8.0.13",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll",
- "docs/PACKAGE.md",
- "lib/netstandard2.0/_._",
- "microsoft.entityframeworkcore.analyzers.8.0.13.nupkg.sha512",
- "microsoft.entityframeworkcore.analyzers.nuspec"
- ]
- },
- "Microsoft.EntityFrameworkCore.Design/8.0.13": {
- "sha512": "lQ+ck65jBgUc4VdQFzmeE7rofw3VCW4vkLZKp3ntz1GONw8Upsvhg+bpRiMjz4HvArxoGaUZz2XQ6vg5Im0uUQ==",
- "type": "package",
- "path": "microsoft.entityframeworkcore.design/8.0.13",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "build/net8.0/Microsoft.EntityFrameworkCore.Design.props",
- "lib/net8.0/Microsoft.EntityFrameworkCore.Design.dll",
- "lib/net8.0/Microsoft.EntityFrameworkCore.Design.xml",
- "microsoft.entityframeworkcore.design.8.0.13.nupkg.sha512",
- "microsoft.entityframeworkcore.design.nuspec"
- ]
- },
- "Microsoft.EntityFrameworkCore.Relational/8.0.13": {
- "sha512": "uQR2iTar+6ZEjEHTwgH0/7ySSRme4R9sDiupfG3w/eBub3365fPw/MjhsuOMQkdq9YzLM7veH4Qt/K9OqL26Qg==",
- "type": "package",
- "path": "microsoft.entityframeworkcore.relational/8.0.13",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll",
- "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.xml",
- "microsoft.entityframeworkcore.relational.8.0.13.nupkg.sha512",
- "microsoft.entityframeworkcore.relational.nuspec"
- ]
- },
- "Microsoft.Extensions.ApiDescription.Server/6.0.5": {
- "sha512": "Ckb5EDBUNJdFWyajfXzUIMRkhf52fHZOQuuZg/oiu8y7zDCVwD0iHhew6MnThjHmevanpxL3f5ci2TtHQEN6bw==",
- "type": "package",
- "path": "microsoft.extensions.apidescription.server/6.0.5",
- "hasTools": true,
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "build/Microsoft.Extensions.ApiDescription.Server.props",
- "build/Microsoft.Extensions.ApiDescription.Server.targets",
- "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props",
- "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets",
- "microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512",
- "microsoft.extensions.apidescription.server.nuspec",
- "tools/Newtonsoft.Json.dll",
- "tools/dotnet-getdocument.deps.json",
- "tools/dotnet-getdocument.dll",
- "tools/dotnet-getdocument.runtimeconfig.json",
- "tools/net461-x86/GetDocument.Insider.exe",
- "tools/net461-x86/GetDocument.Insider.exe.config",
- "tools/net461-x86/Microsoft.Win32.Primitives.dll",
- "tools/net461-x86/System.AppContext.dll",
- "tools/net461-x86/System.Buffers.dll",
- "tools/net461-x86/System.Collections.Concurrent.dll",
- "tools/net461-x86/System.Collections.NonGeneric.dll",
- "tools/net461-x86/System.Collections.Specialized.dll",
- "tools/net461-x86/System.Collections.dll",
- "tools/net461-x86/System.ComponentModel.EventBasedAsync.dll",
- "tools/net461-x86/System.ComponentModel.Primitives.dll",
- "tools/net461-x86/System.ComponentModel.TypeConverter.dll",
- "tools/net461-x86/System.ComponentModel.dll",
- "tools/net461-x86/System.Console.dll",
- "tools/net461-x86/System.Data.Common.dll",
- "tools/net461-x86/System.Diagnostics.Contracts.dll",
- "tools/net461-x86/System.Diagnostics.Debug.dll",
- "tools/net461-x86/System.Diagnostics.DiagnosticSource.dll",
- "tools/net461-x86/System.Diagnostics.FileVersionInfo.dll",
- "tools/net461-x86/System.Diagnostics.Process.dll",
- "tools/net461-x86/System.Diagnostics.StackTrace.dll",
- "tools/net461-x86/System.Diagnostics.TextWriterTraceListener.dll",
- "tools/net461-x86/System.Diagnostics.Tools.dll",
- "tools/net461-x86/System.Diagnostics.TraceSource.dll",
- "tools/net461-x86/System.Diagnostics.Tracing.dll",
- "tools/net461-x86/System.Drawing.Primitives.dll",
- "tools/net461-x86/System.Dynamic.Runtime.dll",
- "tools/net461-x86/System.Globalization.Calendars.dll",
- "tools/net461-x86/System.Globalization.Extensions.dll",
- "tools/net461-x86/System.Globalization.dll",
- "tools/net461-x86/System.IO.Compression.ZipFile.dll",
- "tools/net461-x86/System.IO.Compression.dll",
- "tools/net461-x86/System.IO.FileSystem.DriveInfo.dll",
- "tools/net461-x86/System.IO.FileSystem.Primitives.dll",
- "tools/net461-x86/System.IO.FileSystem.Watcher.dll",
- "tools/net461-x86/System.IO.FileSystem.dll",
- "tools/net461-x86/System.IO.IsolatedStorage.dll",
- "tools/net461-x86/System.IO.MemoryMappedFiles.dll",
- "tools/net461-x86/System.IO.Pipes.dll",
- "tools/net461-x86/System.IO.UnmanagedMemoryStream.dll",
- "tools/net461-x86/System.IO.dll",
- "tools/net461-x86/System.Linq.Expressions.dll",
- "tools/net461-x86/System.Linq.Parallel.dll",
- "tools/net461-x86/System.Linq.Queryable.dll",
- "tools/net461-x86/System.Linq.dll",
- "tools/net461-x86/System.Memory.dll",
- "tools/net461-x86/System.Net.Http.dll",
- "tools/net461-x86/System.Net.NameResolution.dll",
- "tools/net461-x86/System.Net.NetworkInformation.dll",
- "tools/net461-x86/System.Net.Ping.dll",
- "tools/net461-x86/System.Net.Primitives.dll",
- "tools/net461-x86/System.Net.Requests.dll",
- "tools/net461-x86/System.Net.Security.dll",
- "tools/net461-x86/System.Net.Sockets.dll",
- "tools/net461-x86/System.Net.WebHeaderCollection.dll",
- "tools/net461-x86/System.Net.WebSockets.Client.dll",
- "tools/net461-x86/System.Net.WebSockets.dll",
- "tools/net461-x86/System.Numerics.Vectors.dll",
- "tools/net461-x86/System.ObjectModel.dll",
- "tools/net461-x86/System.Reflection.Extensions.dll",
- "tools/net461-x86/System.Reflection.Primitives.dll",
- "tools/net461-x86/System.Reflection.dll",
- "tools/net461-x86/System.Resources.Reader.dll",
- "tools/net461-x86/System.Resources.ResourceManager.dll",
- "tools/net461-x86/System.Resources.Writer.dll",
- "tools/net461-x86/System.Runtime.CompilerServices.Unsafe.dll",
- "tools/net461-x86/System.Runtime.CompilerServices.VisualC.dll",
- "tools/net461-x86/System.Runtime.Extensions.dll",
- "tools/net461-x86/System.Runtime.Handles.dll",
- "tools/net461-x86/System.Runtime.InteropServices.RuntimeInformation.dll",
- "tools/net461-x86/System.Runtime.InteropServices.dll",
- "tools/net461-x86/System.Runtime.Numerics.dll",
- "tools/net461-x86/System.Runtime.Serialization.Formatters.dll",
- "tools/net461-x86/System.Runtime.Serialization.Json.dll",
- "tools/net461-x86/System.Runtime.Serialization.Primitives.dll",
- "tools/net461-x86/System.Runtime.Serialization.Xml.dll",
- "tools/net461-x86/System.Runtime.dll",
- "tools/net461-x86/System.Security.Claims.dll",
- "tools/net461-x86/System.Security.Cryptography.Algorithms.dll",
- "tools/net461-x86/System.Security.Cryptography.Csp.dll",
- "tools/net461-x86/System.Security.Cryptography.Encoding.dll",
- "tools/net461-x86/System.Security.Cryptography.Primitives.dll",
- "tools/net461-x86/System.Security.Cryptography.X509Certificates.dll",
- "tools/net461-x86/System.Security.Principal.dll",
- "tools/net461-x86/System.Security.SecureString.dll",
- "tools/net461-x86/System.Text.Encoding.Extensions.dll",
- "tools/net461-x86/System.Text.Encoding.dll",
- "tools/net461-x86/System.Text.RegularExpressions.dll",
- "tools/net461-x86/System.Threading.Overlapped.dll",
- "tools/net461-x86/System.Threading.Tasks.Parallel.dll",
- "tools/net461-x86/System.Threading.Tasks.dll",
- "tools/net461-x86/System.Threading.Thread.dll",
- "tools/net461-x86/System.Threading.ThreadPool.dll",
- "tools/net461-x86/System.Threading.Timer.dll",
- "tools/net461-x86/System.Threading.dll",
- "tools/net461-x86/System.ValueTuple.dll",
- "tools/net461-x86/System.Xml.ReaderWriter.dll",
- "tools/net461-x86/System.Xml.XDocument.dll",
- "tools/net461-x86/System.Xml.XPath.XDocument.dll",
- "tools/net461-x86/System.Xml.XPath.dll",
- "tools/net461-x86/System.Xml.XmlDocument.dll",
- "tools/net461-x86/System.Xml.XmlSerializer.dll",
- "tools/net461-x86/netstandard.dll",
- "tools/net461/GetDocument.Insider.exe",
- "tools/net461/GetDocument.Insider.exe.config",
- "tools/net461/Microsoft.Win32.Primitives.dll",
- "tools/net461/System.AppContext.dll",
- "tools/net461/System.Buffers.dll",
- "tools/net461/System.Collections.Concurrent.dll",
- "tools/net461/System.Collections.NonGeneric.dll",
- "tools/net461/System.Collections.Specialized.dll",
- "tools/net461/System.Collections.dll",
- "tools/net461/System.ComponentModel.EventBasedAsync.dll",
- "tools/net461/System.ComponentModel.Primitives.dll",
- "tools/net461/System.ComponentModel.TypeConverter.dll",
- "tools/net461/System.ComponentModel.dll",
- "tools/net461/System.Console.dll",
- "tools/net461/System.Data.Common.dll",
- "tools/net461/System.Diagnostics.Contracts.dll",
- "tools/net461/System.Diagnostics.Debug.dll",
- "tools/net461/System.Diagnostics.DiagnosticSource.dll",
- "tools/net461/System.Diagnostics.FileVersionInfo.dll",
- "tools/net461/System.Diagnostics.Process.dll",
- "tools/net461/System.Diagnostics.StackTrace.dll",
- "tools/net461/System.Diagnostics.TextWriterTraceListener.dll",
- "tools/net461/System.Diagnostics.Tools.dll",
- "tools/net461/System.Diagnostics.TraceSource.dll",
- "tools/net461/System.Diagnostics.Tracing.dll",
- "tools/net461/System.Drawing.Primitives.dll",
- "tools/net461/System.Dynamic.Runtime.dll",
- "tools/net461/System.Globalization.Calendars.dll",
- "tools/net461/System.Globalization.Extensions.dll",
- "tools/net461/System.Globalization.dll",
- "tools/net461/System.IO.Compression.ZipFile.dll",
- "tools/net461/System.IO.Compression.dll",
- "tools/net461/System.IO.FileSystem.DriveInfo.dll",
- "tools/net461/System.IO.FileSystem.Primitives.dll",
- "tools/net461/System.IO.FileSystem.Watcher.dll",
- "tools/net461/System.IO.FileSystem.dll",
- "tools/net461/System.IO.IsolatedStorage.dll",
- "tools/net461/System.IO.MemoryMappedFiles.dll",
- "tools/net461/System.IO.Pipes.dll",
- "tools/net461/System.IO.UnmanagedMemoryStream.dll",
- "tools/net461/System.IO.dll",
- "tools/net461/System.Linq.Expressions.dll",
- "tools/net461/System.Linq.Parallel.dll",
- "tools/net461/System.Linq.Queryable.dll",
- "tools/net461/System.Linq.dll",
- "tools/net461/System.Memory.dll",
- "tools/net461/System.Net.Http.dll",
- "tools/net461/System.Net.NameResolution.dll",
- "tools/net461/System.Net.NetworkInformation.dll",
- "tools/net461/System.Net.Ping.dll",
- "tools/net461/System.Net.Primitives.dll",
- "tools/net461/System.Net.Requests.dll",
- "tools/net461/System.Net.Security.dll",
- "tools/net461/System.Net.Sockets.dll",
- "tools/net461/System.Net.WebHeaderCollection.dll",
- "tools/net461/System.Net.WebSockets.Client.dll",
- "tools/net461/System.Net.WebSockets.dll",
- "tools/net461/System.Numerics.Vectors.dll",
- "tools/net461/System.ObjectModel.dll",
- "tools/net461/System.Reflection.Extensions.dll",
- "tools/net461/System.Reflection.Primitives.dll",
- "tools/net461/System.Reflection.dll",
- "tools/net461/System.Resources.Reader.dll",
- "tools/net461/System.Resources.ResourceManager.dll",
- "tools/net461/System.Resources.Writer.dll",
- "tools/net461/System.Runtime.CompilerServices.Unsafe.dll",
- "tools/net461/System.Runtime.CompilerServices.VisualC.dll",
- "tools/net461/System.Runtime.Extensions.dll",
- "tools/net461/System.Runtime.Handles.dll",
- "tools/net461/System.Runtime.InteropServices.RuntimeInformation.dll",
- "tools/net461/System.Runtime.InteropServices.dll",
- "tools/net461/System.Runtime.Numerics.dll",
- "tools/net461/System.Runtime.Serialization.Formatters.dll",
- "tools/net461/System.Runtime.Serialization.Json.dll",
- "tools/net461/System.Runtime.Serialization.Primitives.dll",
- "tools/net461/System.Runtime.Serialization.Xml.dll",
- "tools/net461/System.Runtime.dll",
- "tools/net461/System.Security.Claims.dll",
- "tools/net461/System.Security.Cryptography.Algorithms.dll",
- "tools/net461/System.Security.Cryptography.Csp.dll",
- "tools/net461/System.Security.Cryptography.Encoding.dll",
- "tools/net461/System.Security.Cryptography.Primitives.dll",
- "tools/net461/System.Security.Cryptography.X509Certificates.dll",
- "tools/net461/System.Security.Principal.dll",
- "tools/net461/System.Security.SecureString.dll",
- "tools/net461/System.Text.Encoding.Extensions.dll",
- "tools/net461/System.Text.Encoding.dll",
- "tools/net461/System.Text.RegularExpressions.dll",
- "tools/net461/System.Threading.Overlapped.dll",
- "tools/net461/System.Threading.Tasks.Parallel.dll",
- "tools/net461/System.Threading.Tasks.dll",
- "tools/net461/System.Threading.Thread.dll",
- "tools/net461/System.Threading.ThreadPool.dll",
- "tools/net461/System.Threading.Timer.dll",
- "tools/net461/System.Threading.dll",
- "tools/net461/System.ValueTuple.dll",
- "tools/net461/System.Xml.ReaderWriter.dll",
- "tools/net461/System.Xml.XDocument.dll",
- "tools/net461/System.Xml.XPath.XDocument.dll",
- "tools/net461/System.Xml.XPath.dll",
- "tools/net461/System.Xml.XmlDocument.dll",
- "tools/net461/System.Xml.XmlSerializer.dll",
- "tools/net461/netstandard.dll",
- "tools/netcoreapp2.1/GetDocument.Insider.deps.json",
- "tools/netcoreapp2.1/GetDocument.Insider.dll",
- "tools/netcoreapp2.1/GetDocument.Insider.runtimeconfig.json",
- "tools/netcoreapp2.1/System.Diagnostics.DiagnosticSource.dll"
- ]
- },
- "Microsoft.Extensions.Caching.Abstractions/8.0.0": {
- "sha512": "3KuSxeHoNYdxVYfg2IRZCThcrlJ1XJqIXkAWikCsbm5C/bCjv7G0WoKDyuR98Q+T607QT2Zl5GsbGRkENcV2yQ==",
- "type": "package",
- "path": "microsoft.extensions.caching.abstractions/8.0.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/net461/Microsoft.Extensions.Caching.Abstractions.targets",
- "buildTransitive/net462/_._",
- "buildTransitive/net6.0/_._",
- "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Abstractions.targets",
- "lib/net462/Microsoft.Extensions.Caching.Abstractions.dll",
- "lib/net462/Microsoft.Extensions.Caching.Abstractions.xml",
- "lib/net6.0/Microsoft.Extensions.Caching.Abstractions.dll",
- "lib/net6.0/Microsoft.Extensions.Caching.Abstractions.xml",
- "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.dll",
- "lib/net7.0/Microsoft.Extensions.Caching.Abstractions.xml",
- "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.dll",
- "lib/net8.0/Microsoft.Extensions.Caching.Abstractions.xml",
- "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll",
- "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.xml",
- "microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512",
- "microsoft.extensions.caching.abstractions.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "Microsoft.Extensions.Caching.Memory/8.0.1": {
- "sha512": "HFDnhYLccngrzyGgHkjEDU5FMLn4MpOsr5ElgsBMC4yx6lJh4jeWO7fHS8+TXPq+dgxCmUa/Trl8svObmwW4QA==",
- "type": "package",
- "path": "microsoft.extensions.caching.memory/8.0.1",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/net461/Microsoft.Extensions.Caching.Memory.targets",
- "buildTransitive/net462/_._",
- "buildTransitive/net6.0/_._",
- "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Caching.Memory.targets",
- "lib/net462/Microsoft.Extensions.Caching.Memory.dll",
- "lib/net462/Microsoft.Extensions.Caching.Memory.xml",
- "lib/net6.0/Microsoft.Extensions.Caching.Memory.dll",
- "lib/net6.0/Microsoft.Extensions.Caching.Memory.xml",
- "lib/net7.0/Microsoft.Extensions.Caching.Memory.dll",
- "lib/net7.0/Microsoft.Extensions.Caching.Memory.xml",
- "lib/net8.0/Microsoft.Extensions.Caching.Memory.dll",
- "lib/net8.0/Microsoft.Extensions.Caching.Memory.xml",
- "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll",
- "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.xml",
- "microsoft.extensions.caching.memory.8.0.1.nupkg.sha512",
- "microsoft.extensions.caching.memory.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
- "sha512": "3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==",
- "type": "package",
- "path": "microsoft.extensions.configuration.abstractions/8.0.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/net461/Microsoft.Extensions.Configuration.Abstractions.targets",
- "buildTransitive/net462/_._",
- "buildTransitive/net6.0/_._",
- "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Configuration.Abstractions.targets",
- "lib/net462/Microsoft.Extensions.Configuration.Abstractions.dll",
- "lib/net462/Microsoft.Extensions.Configuration.Abstractions.xml",
- "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.dll",
- "lib/net6.0/Microsoft.Extensions.Configuration.Abstractions.xml",
- "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.dll",
- "lib/net7.0/Microsoft.Extensions.Configuration.Abstractions.xml",
- "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.dll",
- "lib/net8.0/Microsoft.Extensions.Configuration.Abstractions.xml",
- "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll",
- "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.xml",
- "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512",
- "microsoft.extensions.configuration.abstractions.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "Microsoft.Extensions.DependencyInjection/10.0.2": {
- "sha512": "J/Zmp6fY93JbaiZ11ckWvcyxMPjD6XVwIHQXBjryTBgn7O6O20HYg9uVLFcZlNfgH78MnreE/7EH+hjfzn7VyA==",
- "type": "package",
- "path": "microsoft.extensions.dependencyinjection/10.0.2",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets",
- "buildTransitive/net462/_._",
- "buildTransitive/net8.0/_._",
- "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets",
- "lib/net10.0/Microsoft.Extensions.DependencyInjection.dll",
- "lib/net10.0/Microsoft.Extensions.DependencyInjection.xml",
- "lib/net462/Microsoft.Extensions.DependencyInjection.dll",
- "lib/net462/Microsoft.Extensions.DependencyInjection.xml",
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.dll",
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.xml",
- "lib/net9.0/Microsoft.Extensions.DependencyInjection.dll",
- "lib/net9.0/Microsoft.Extensions.DependencyInjection.xml",
- "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll",
- "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml",
- "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll",
- "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml",
- "microsoft.extensions.dependencyinjection.10.0.2.nupkg.sha512",
- "microsoft.extensions.dependencyinjection.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "Microsoft.Extensions.DependencyInjection.Abstractions/10.0.2": {
- "sha512": "zOIurr59+kUf9vNcsUkCvKWZv+fPosUZXURZesYkJCvl0EzTc9F7maAO4Cd2WEV7ZJJ0AZrFQvuH6Npph9wdBw==",
- "type": "package",
- "path": "microsoft.extensions.dependencyinjection.abstractions/10.0.2",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets",
- "buildTransitive/net462/_._",
- "buildTransitive/net8.0/_._",
- "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets",
- "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
- "lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
- "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
- "lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
- "lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
- "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
- "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
- "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
- "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
- "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
- "lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
- "microsoft.extensions.dependencyinjection.abstractions.10.0.2.nupkg.sha512",
- "microsoft.extensions.dependencyinjection.abstractions.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "Microsoft.Extensions.DependencyModel/8.0.2": {
- "sha512": "mUBDZZRgZrSyFOsJ2qJJ9fXfqd/kXJwf3AiDoqLD9m6TjY5OO/vLNOb9fb4juC0487eq4hcGN/M2Rh/CKS7QYw==",
- "type": "package",
- "path": "microsoft.extensions.dependencymodel/8.0.2",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/net461/Microsoft.Extensions.DependencyModel.targets",
- "buildTransitive/net462/_._",
- "buildTransitive/net6.0/_._",
- "buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyModel.targets",
- "lib/net462/Microsoft.Extensions.DependencyModel.dll",
- "lib/net462/Microsoft.Extensions.DependencyModel.xml",
- "lib/net6.0/Microsoft.Extensions.DependencyModel.dll",
- "lib/net6.0/Microsoft.Extensions.DependencyModel.xml",
- "lib/net7.0/Microsoft.Extensions.DependencyModel.dll",
- "lib/net7.0/Microsoft.Extensions.DependencyModel.xml",
- "lib/net8.0/Microsoft.Extensions.DependencyModel.dll",
- "lib/net8.0/Microsoft.Extensions.DependencyModel.xml",
- "lib/netstandard2.0/Microsoft.Extensions.DependencyModel.dll",
- "lib/netstandard2.0/Microsoft.Extensions.DependencyModel.xml",
- "microsoft.extensions.dependencymodel.8.0.2.nupkg.sha512",
- "microsoft.extensions.dependencymodel.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "Microsoft.Extensions.Logging/10.0.2": {
- "sha512": "a0EWuBs6D3d7XMGroDXm+WsAi5CVVfjOJvyxurzWnuhBN9CO+1qHKcrKV1JK7H/T4ZtHIoVCOX/YyWM8K87qtw==",
- "type": "package",
- "path": "microsoft.extensions.logging/10.0.2",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/net461/Microsoft.Extensions.Logging.targets",
- "buildTransitive/net462/_._",
- "buildTransitive/net8.0/_._",
- "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.targets",
- "lib/net10.0/Microsoft.Extensions.Logging.dll",
- "lib/net10.0/Microsoft.Extensions.Logging.xml",
- "lib/net462/Microsoft.Extensions.Logging.dll",
- "lib/net462/Microsoft.Extensions.Logging.xml",
- "lib/net8.0/Microsoft.Extensions.Logging.dll",
- "lib/net8.0/Microsoft.Extensions.Logging.xml",
- "lib/net9.0/Microsoft.Extensions.Logging.dll",
- "lib/net9.0/Microsoft.Extensions.Logging.xml",
- "lib/netstandard2.0/Microsoft.Extensions.Logging.dll",
- "lib/netstandard2.0/Microsoft.Extensions.Logging.xml",
- "lib/netstandard2.1/Microsoft.Extensions.Logging.dll",
- "lib/netstandard2.1/Microsoft.Extensions.Logging.xml",
- "microsoft.extensions.logging.10.0.2.nupkg.sha512",
- "microsoft.extensions.logging.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "Microsoft.Extensions.Logging.Abstractions/10.0.2": {
- "sha512": "RZkez/JjpnO+MZ6efKkSynN6ZztLpw3WbxNzjLCPBd97wWj1S9ZYPWi0nmT4kWBRa6atHsdM1ydGkUr8GudyDQ==",
- "type": "package",
- "path": "microsoft.extensions.logging.abstractions/10.0.2",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll",
- "analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll",
- "analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll",
- "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
- "buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets",
- "buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets",
- "buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets",
- "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets",
- "buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets",
- "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.dll",
- "lib/net10.0/Microsoft.Extensions.Logging.Abstractions.xml",
- "lib/net462/Microsoft.Extensions.Logging.Abstractions.dll",
- "lib/net462/Microsoft.Extensions.Logging.Abstractions.xml",
- "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll",
- "lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml",
- "lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll",
- "lib/net9.0/Microsoft.Extensions.Logging.Abstractions.xml",
- "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll",
- "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml",
- "microsoft.extensions.logging.abstractions.10.0.2.nupkg.sha512",
- "microsoft.extensions.logging.abstractions.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "Microsoft.Extensions.Options/10.0.2": {
- "sha512": "1De2LJjmxdqopI5AYC5dIhoZQ79AR5ayywxNF1rXrXFtKQfbQOV9+n/IsZBa7qWlr0MqoGpW8+OY2v/57udZOA==",
- "type": "package",
- "path": "microsoft.extensions.options/10.0.2",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Options.SourceGeneration.dll",
- "analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Options.SourceGeneration.resources.dll",
- "buildTransitive/net461/Microsoft.Extensions.Options.targets",
- "buildTransitive/net462/Microsoft.Extensions.Options.targets",
- "buildTransitive/net8.0/Microsoft.Extensions.Options.targets",
- "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Options.targets",
- "buildTransitive/netstandard2.0/Microsoft.Extensions.Options.targets",
- "lib/net10.0/Microsoft.Extensions.Options.dll",
- "lib/net10.0/Microsoft.Extensions.Options.xml",
- "lib/net462/Microsoft.Extensions.Options.dll",
- "lib/net462/Microsoft.Extensions.Options.xml",
- "lib/net8.0/Microsoft.Extensions.Options.dll",
- "lib/net8.0/Microsoft.Extensions.Options.xml",
- "lib/net9.0/Microsoft.Extensions.Options.dll",
- "lib/net9.0/Microsoft.Extensions.Options.xml",
- "lib/netstandard2.0/Microsoft.Extensions.Options.dll",
- "lib/netstandard2.0/Microsoft.Extensions.Options.xml",
- "lib/netstandard2.1/Microsoft.Extensions.Options.dll",
- "lib/netstandard2.1/Microsoft.Extensions.Options.xml",
- "microsoft.extensions.options.10.0.2.nupkg.sha512",
- "microsoft.extensions.options.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "Microsoft.Extensions.Primitives/10.0.2": {
- "sha512": "QmSiO+oLBEooGgB3i0GRXyeYRDHjllqt3k365jwfZlYWhvSHA3UL2NEVV5m8aZa041eIlblo6KMI5txvTMpTwA==",
- "type": "package",
- "path": "microsoft.extensions.primitives/10.0.2",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/net461/Microsoft.Extensions.Primitives.targets",
- "buildTransitive/net462/_._",
- "buildTransitive/net8.0/_._",
- "buildTransitive/netcoreapp2.0/Microsoft.Extensions.Primitives.targets",
- "lib/net10.0/Microsoft.Extensions.Primitives.dll",
- "lib/net10.0/Microsoft.Extensions.Primitives.xml",
- "lib/net462/Microsoft.Extensions.Primitives.dll",
- "lib/net462/Microsoft.Extensions.Primitives.xml",
- "lib/net8.0/Microsoft.Extensions.Primitives.dll",
- "lib/net8.0/Microsoft.Extensions.Primitives.xml",
- "lib/net9.0/Microsoft.Extensions.Primitives.dll",
- "lib/net9.0/Microsoft.Extensions.Primitives.xml",
- "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll",
- "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml",
- "microsoft.extensions.primitives.10.0.2.nupkg.sha512",
- "microsoft.extensions.primitives.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "Microsoft.OpenApi/1.6.14": {
- "sha512": "tTaBT8qjk3xINfESyOPE2rIellPvB7qpVqiWiyA/lACVvz+xOGiXhFUfohcx82NLbi5avzLW0lx+s6oAqQijfw==",
- "type": "package",
- "path": "microsoft.openapi/1.6.14",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "README.md",
- "lib/netstandard2.0/Microsoft.OpenApi.dll",
- "lib/netstandard2.0/Microsoft.OpenApi.pdb",
- "lib/netstandard2.0/Microsoft.OpenApi.xml",
- "microsoft.openapi.1.6.14.nupkg.sha512",
- "microsoft.openapi.nuspec"
- ]
- },
- "Mono.TextTemplating/2.2.1": {
- "sha512": "KZYeKBET/2Z0gY1WlTAK7+RHTl7GSbtvTLDXEZZojUdAPqpQNDL6tHv7VUpqfX5VEOh+uRGKaZXkuD253nEOBQ==",
- "type": "package",
- "path": "mono.texttemplating/2.2.1",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "lib/net472/Mono.TextTemplating.dll",
- "lib/netstandard2.0/Mono.TextTemplating.dll",
- "mono.texttemplating.2.2.1.nupkg.sha512",
- "mono.texttemplating.nuspec"
- ]
- },
- "Newtonsoft.Json/13.0.4": {
- "sha512": "pdgNNMai3zv51W5aq268sujXUyx7SNdE2bj1wZcWjAQrKMFZV260lbqYop1d2GM67JI1huLRwxo9ZqnfF/lC6A==",
- "type": "package",
- "path": "newtonsoft.json/13.0.4",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "LICENSE.md",
- "README.md",
- "lib/net20/Newtonsoft.Json.dll",
- "lib/net20/Newtonsoft.Json.xml",
- "lib/net35/Newtonsoft.Json.dll",
- "lib/net35/Newtonsoft.Json.xml",
- "lib/net40/Newtonsoft.Json.dll",
- "lib/net40/Newtonsoft.Json.xml",
- "lib/net45/Newtonsoft.Json.dll",
- "lib/net45/Newtonsoft.Json.xml",
- "lib/net6.0/Newtonsoft.Json.dll",
- "lib/net6.0/Newtonsoft.Json.xml",
- "lib/netstandard1.0/Newtonsoft.Json.dll",
- "lib/netstandard1.0/Newtonsoft.Json.xml",
- "lib/netstandard1.3/Newtonsoft.Json.dll",
- "lib/netstandard1.3/Newtonsoft.Json.xml",
- "lib/netstandard2.0/Newtonsoft.Json.dll",
- "lib/netstandard2.0/Newtonsoft.Json.xml",
- "newtonsoft.json.13.0.4.nupkg.sha512",
- "newtonsoft.json.nuspec",
- "packageIcon.png"
- ]
- },
- "Npgsql/8.0.6": {
- "sha512": "KaS6CY5kY2Sd0P00MSeFcOI3t2DiQ4UWG8AuRpVOUeDWITOKfoEEG91DP3cmT6aerixPkjwKgXxnpDxIkDpO6g==",
- "type": "package",
- "path": "npgsql/8.0.6",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "README.md",
- "lib/net6.0/Npgsql.dll",
- "lib/net6.0/Npgsql.xml",
- "lib/net7.0/Npgsql.dll",
- "lib/net7.0/Npgsql.xml",
- "lib/net8.0/Npgsql.dll",
- "lib/net8.0/Npgsql.xml",
- "lib/netstandard2.0/Npgsql.dll",
- "lib/netstandard2.0/Npgsql.xml",
- "lib/netstandard2.1/Npgsql.dll",
- "lib/netstandard2.1/Npgsql.xml",
- "npgsql.8.0.6.nupkg.sha512",
- "npgsql.nuspec",
- "postgresql.png"
- ]
- },
- "Npgsql.EntityFrameworkCore.PostgreSQL/8.0.11": {
- "sha512": "leShR/O/nSIS3Jpj8yUBmkzaXzBbtlV326+MYkX2BwAj2qSNrUv/H6m8G9Hnv2zUkQYccTpmV5jIVq5vdciEUA==",
- "type": "package",
- "path": "npgsql.entityframeworkcore.postgresql/8.0.11",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "README.md",
- "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.dll",
- "lib/net8.0/Npgsql.EntityFrameworkCore.PostgreSQL.xml",
- "npgsql.entityframeworkcore.postgresql.8.0.11.nupkg.sha512",
- "npgsql.entityframeworkcore.postgresql.nuspec",
- "postgresql.png"
- ]
- },
- "OPCFoundation.NetStandard.Opc.Ua.Client/1.5.378.134": {
- "sha512": "8kuk6B3dbPpi1GgeUGxDa13cSYd6i53t2sq3Da32ACeJzLSlsQbFi8x1G32f51qJDb6PwSMuB4QZN/AnTQOzxQ==",
- "type": "package",
- "path": "opcfoundation.netstandard.opc.ua.client/1.5.378.134",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "LICENSE.txt",
- "NugetREADME.md",
- "images/logo.jpg",
- "lib/net10.0/Opc.Ua.Client.dll",
- "lib/net10.0/Opc.Ua.Client.xml",
- "lib/net472/Opc.Ua.Client.dll",
- "lib/net472/Opc.Ua.Client.xml",
- "lib/net48/Opc.Ua.Client.dll",
- "lib/net48/Opc.Ua.Client.xml",
- "lib/net8.0/Opc.Ua.Client.dll",
- "lib/net8.0/Opc.Ua.Client.xml",
- "lib/net9.0/Opc.Ua.Client.dll",
- "lib/net9.0/Opc.Ua.Client.xml",
- "lib/netstandard2.1/Opc.Ua.Client.dll",
- "lib/netstandard2.1/Opc.Ua.Client.xml",
- "opcfoundation.netstandard.opc.ua.client.1.5.378.134.nupkg.sha512",
- "opcfoundation.netstandard.opc.ua.client.nuspec"
- ]
- },
- "OPCFoundation.NetStandard.Opc.Ua.Configuration/1.5.378.134": {
- "sha512": "OODpaduemEywEY6dLQPgnebQspDVzd2wLT6xvWsXG9aGCGH5cO5qjG3Csn5WPGWGkEKaMsHBjaGifceM3X91yg==",
- "type": "package",
- "path": "opcfoundation.netstandard.opc.ua.configuration/1.5.378.134",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "LICENSE.txt",
- "NugetREADME.md",
- "images/logo.jpg",
- "lib/net10.0/Opc.Ua.Configuration.dll",
- "lib/net10.0/Opc.Ua.Configuration.xml",
- "lib/net472/Opc.Ua.Configuration.dll",
- "lib/net472/Opc.Ua.Configuration.xml",
- "lib/net48/Opc.Ua.Configuration.dll",
- "lib/net48/Opc.Ua.Configuration.xml",
- "lib/net8.0/Opc.Ua.Configuration.dll",
- "lib/net8.0/Opc.Ua.Configuration.xml",
- "lib/net9.0/Opc.Ua.Configuration.dll",
- "lib/net9.0/Opc.Ua.Configuration.xml",
- "lib/netstandard2.1/Opc.Ua.Configuration.dll",
- "lib/netstandard2.1/Opc.Ua.Configuration.xml",
- "opcfoundation.netstandard.opc.ua.configuration.1.5.378.134.nupkg.sha512",
- "opcfoundation.netstandard.opc.ua.configuration.nuspec"
- ]
- },
- "OPCFoundation.NetStandard.Opc.Ua.Core/1.5.378.134": {
- "sha512": "oKn5HEmJHmCK2dOvYcrd3c13vMP4eGG3fYzISfHljMeubeNleOlgrKa7Izt3Z0Ku1PdKmLZQ1jICX56IAmLi0w==",
- "type": "package",
- "path": "opcfoundation.netstandard.opc.ua.core/1.5.378.134",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "LICENSE.txt",
- "NugetREADME.md",
- "images/logo.jpg",
- "lib/net10.0/Opc.Ua.Core.dll",
- "lib/net10.0/Opc.Ua.Core.xml",
- "lib/net472/Opc.Ua.Core.dll",
- "lib/net472/Opc.Ua.Core.xml",
- "lib/net48/Opc.Ua.Core.dll",
- "lib/net48/Opc.Ua.Core.xml",
- "lib/net8.0/Opc.Ua.Core.dll",
- "lib/net8.0/Opc.Ua.Core.xml",
- "lib/net9.0/Opc.Ua.Core.dll",
- "lib/net9.0/Opc.Ua.Core.xml",
- "lib/netstandard2.1/Opc.Ua.Core.dll",
- "lib/netstandard2.1/Opc.Ua.Core.xml",
- "opcfoundation.netstandard.opc.ua.core.1.5.378.134.nupkg.sha512",
- "opcfoundation.netstandard.opc.ua.core.nuspec"
- ]
- },
- "OPCFoundation.NetStandard.Opc.Ua.Security.Certificates/1.5.378.134": {
- "sha512": "ch2BQIQIBQfL+ek3a3lKCXWfUq67AqCtzvmShcIjTI6Yix9I2z4lnissi87TPfQ/IgkPTBKJQIFXrFz0V2w1VQ==",
- "type": "package",
- "path": "opcfoundation.netstandard.opc.ua.security.certificates/1.5.378.134",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "LICENSE.txt",
- "NugetREADME.md",
- "images/logo.jpg",
- "lib/net10.0/Opc.Ua.Security.Certificates.dll",
- "lib/net10.0/Opc.Ua.Security.Certificates.xml",
- "lib/net472/Opc.Ua.Security.Certificates.dll",
- "lib/net472/Opc.Ua.Security.Certificates.xml",
- "lib/net48/Opc.Ua.Security.Certificates.dll",
- "lib/net48/Opc.Ua.Security.Certificates.xml",
- "lib/net8.0/Opc.Ua.Security.Certificates.dll",
- "lib/net8.0/Opc.Ua.Security.Certificates.xml",
- "lib/net9.0/Opc.Ua.Security.Certificates.dll",
- "lib/net9.0/Opc.Ua.Security.Certificates.xml",
- "lib/netstandard2.1/Opc.Ua.Security.Certificates.dll",
- "lib/netstandard2.1/Opc.Ua.Security.Certificates.xml",
- "opcfoundation.netstandard.opc.ua.security.certificates.1.5.378.134.nupkg.sha512",
- "opcfoundation.netstandard.opc.ua.security.certificates.nuspec"
- ]
- },
- "OPCFoundation.NetStandard.Opc.Ua.Server/1.5.378.134": {
- "sha512": "qdM5DQwo42cBsW9V+5w4wHD/fDXwjBpbuFYEgXTm9zrB2Cy3dadIsmVDswV3oZWm45k6DwzMy1SB2+xzIK/ppQ==",
- "type": "package",
- "path": "opcfoundation.netstandard.opc.ua.server/1.5.378.134",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "LICENSE.txt",
- "NugetREADME.md",
- "images/logo.jpg",
- "lib/net10.0/Opc.Ua.Server.dll",
- "lib/net10.0/Opc.Ua.Server.xml",
- "lib/net472/Opc.Ua.Server.dll",
- "lib/net472/Opc.Ua.Server.xml",
- "lib/net48/Opc.Ua.Server.dll",
- "lib/net48/Opc.Ua.Server.xml",
- "lib/net8.0/Opc.Ua.Server.dll",
- "lib/net8.0/Opc.Ua.Server.xml",
- "lib/net9.0/Opc.Ua.Server.dll",
- "lib/net9.0/Opc.Ua.Server.xml",
- "lib/netstandard2.1/Opc.Ua.Server.dll",
- "lib/netstandard2.1/Opc.Ua.Server.xml",
- "opcfoundation.netstandard.opc.ua.server.1.5.378.134.nupkg.sha512",
- "opcfoundation.netstandard.opc.ua.server.nuspec"
- ]
- },
- "OPCFoundation.NetStandard.Opc.Ua.Types/1.5.378.134": {
- "sha512": "UYwgU4bvh2/Fy+cbtCvbQqqNFElTvAolRX8faj9JhceMWPXvbwEIF9R1VQI2MKFPkrfXM/ZbGegEanVaj9NkLQ==",
- "type": "package",
- "path": "opcfoundation.netstandard.opc.ua.types/1.5.378.134",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "LICENSE.txt",
- "NugetREADME.md",
- "images/logo.jpg",
- "lib/net10.0/Opc.Ua.Types.dll",
- "lib/net10.0/Opc.Ua.Types.xml",
- "lib/net472/Opc.Ua.Types.dll",
- "lib/net472/Opc.Ua.Types.xml",
- "lib/net48/Opc.Ua.Types.dll",
- "lib/net48/Opc.Ua.Types.xml",
- "lib/net8.0/Opc.Ua.Types.dll",
- "lib/net8.0/Opc.Ua.Types.xml",
- "lib/net9.0/Opc.Ua.Types.dll",
- "lib/net9.0/Opc.Ua.Types.xml",
- "lib/netstandard2.0/Opc.Ua.Types.dll",
- "lib/netstandard2.0/Opc.Ua.Types.xml",
- "lib/netstandard2.1/Opc.Ua.Types.dll",
- "lib/netstandard2.1/Opc.Ua.Types.xml",
- "opcfoundation.netstandard.opc.ua.types.1.5.378.134.nupkg.sha512",
- "opcfoundation.netstandard.opc.ua.types.nuspec"
- ]
- },
- "Swashbuckle.AspNetCore/6.8.1": {
- "sha512": "JN6ccH37QKtNOwBrvSxc+jBYIB+cw6RlZie2IKoJhjjf6HzBH+2kPJCpxmJ5EHIqmxvq6aQG+0A8XklGx9rAxA==",
- "type": "package",
- "path": "swashbuckle.aspnetcore/6.8.1",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "build/Swashbuckle.AspNetCore.props",
- "swashbuckle.aspnetcore.6.8.1.nupkg.sha512",
- "swashbuckle.aspnetcore.nuspec"
- ]
- },
- "Swashbuckle.AspNetCore.Swagger/6.8.1": {
- "sha512": "eOkdM4bsWBU5Ty3kWbyq5O9L+05kZT0vOdGh4a92vIb/LLQGQTPLRHXuJdnUBNIPNC8XfKWfSbtRfqzI6nnbqw==",
- "type": "package",
- "path": "swashbuckle.aspnetcore.swagger/6.8.1",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "lib/net5.0/Swashbuckle.AspNetCore.Swagger.dll",
- "lib/net5.0/Swashbuckle.AspNetCore.Swagger.pdb",
- "lib/net5.0/Swashbuckle.AspNetCore.Swagger.xml",
- "lib/net6.0/Swashbuckle.AspNetCore.Swagger.dll",
- "lib/net6.0/Swashbuckle.AspNetCore.Swagger.pdb",
- "lib/net6.0/Swashbuckle.AspNetCore.Swagger.xml",
- "lib/net7.0/Swashbuckle.AspNetCore.Swagger.dll",
- "lib/net7.0/Swashbuckle.AspNetCore.Swagger.pdb",
- "lib/net7.0/Swashbuckle.AspNetCore.Swagger.xml",
- "lib/net8.0/Swashbuckle.AspNetCore.Swagger.dll",
- "lib/net8.0/Swashbuckle.AspNetCore.Swagger.pdb",
- "lib/net8.0/Swashbuckle.AspNetCore.Swagger.xml",
- "lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.dll",
- "lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.pdb",
- "lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.xml",
- "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.dll",
- "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.pdb",
- "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.xml",
- "package-readme.md",
- "swashbuckle.aspnetcore.swagger.6.8.1.nupkg.sha512",
- "swashbuckle.aspnetcore.swagger.nuspec"
- ]
- },
- "Swashbuckle.AspNetCore.SwaggerGen/6.8.1": {
- "sha512": "TjBPxsN0HeJzxEXZYeDXBNNMSyhg+TYXtkbwX+Cn8GH/y5ZeoB/chw0p71kRo5tR2sNshbKwL24T6f9pTF9PHg==",
- "type": "package",
- "path": "swashbuckle.aspnetcore.swaggergen/6.8.1",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.dll",
- "lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.pdb",
- "lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.xml",
- "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll",
- "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.pdb",
- "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.xml",
- "lib/net7.0/Swashbuckle.AspNetCore.SwaggerGen.dll",
- "lib/net7.0/Swashbuckle.AspNetCore.SwaggerGen.pdb",
- "lib/net7.0/Swashbuckle.AspNetCore.SwaggerGen.xml",
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.dll",
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.pdb",
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerGen.xml",
- "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.dll",
- "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.pdb",
- "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.xml",
- "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.dll",
- "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.pdb",
- "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.xml",
- "package-readme.md",
- "swashbuckle.aspnetcore.swaggergen.6.8.1.nupkg.sha512",
- "swashbuckle.aspnetcore.swaggergen.nuspec"
- ]
- },
- "Swashbuckle.AspNetCore.SwaggerUI/6.8.1": {
- "sha512": "lpEszYJ7vZaTTE5Dp8MrsbSHrgDfjhDMjzW1qOA1Xs1Dnj3ZRBJAcPZUTsa5Bva+nLaw91JJ8OI8FkSg8hhIyA==",
- "type": "package",
- "path": "swashbuckle.aspnetcore.swaggerui/6.8.1",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.dll",
- "lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.pdb",
- "lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.xml",
- "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll",
- "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.pdb",
- "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.xml",
- "lib/net7.0/Swashbuckle.AspNetCore.SwaggerUI.dll",
- "lib/net7.0/Swashbuckle.AspNetCore.SwaggerUI.pdb",
- "lib/net7.0/Swashbuckle.AspNetCore.SwaggerUI.xml",
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.dll",
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.pdb",
- "lib/net8.0/Swashbuckle.AspNetCore.SwaggerUI.xml",
- "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.dll",
- "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.pdb",
- "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.xml",
- "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.dll",
- "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.pdb",
- "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.xml",
- "package-readme.md",
- "swashbuckle.aspnetcore.swaggerui.6.8.1.nupkg.sha512",
- "swashbuckle.aspnetcore.swaggerui.nuspec"
- ]
- },
- "System.CodeDom/4.4.0": {
- "sha512": "2sCCb7doXEwtYAbqzbF/8UAeDRMNmPaQbU2q50Psg1J9KzumyVVCgKQY8s53WIPTufNT0DpSe9QRvVjOzfDWBA==",
- "type": "package",
- "path": "system.codedom/4.4.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "LICENSE.TXT",
- "THIRD-PARTY-NOTICES.TXT",
- "lib/net461/System.CodeDom.dll",
- "lib/netstandard2.0/System.CodeDom.dll",
- "ref/net461/System.CodeDom.dll",
- "ref/net461/System.CodeDom.xml",
- "ref/netstandard2.0/System.CodeDom.dll",
- "ref/netstandard2.0/System.CodeDom.xml",
- "system.codedom.4.4.0.nupkg.sha512",
- "system.codedom.nuspec",
- "useSharedDesignerContext.txt",
- "version.txt"
- ]
- },
- "System.Collections.Immutable/10.0.2": {
- "sha512": "ty6kCaqyoh/M/jKV5yojgta+nf7T8zkkjpRI1beLQkrTC+9R6LS1eCEc+3ED2YUlRyA0g0PXExESnxnW3HcVVQ==",
- "type": "package",
- "path": "system.collections.immutable/10.0.2",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/net461/System.Collections.Immutable.targets",
- "buildTransitive/net462/_._",
- "buildTransitive/net8.0/_._",
- "buildTransitive/netcoreapp2.0/System.Collections.Immutable.targets",
- "lib/net10.0/System.Collections.Immutable.dll",
- "lib/net10.0/System.Collections.Immutable.xml",
- "lib/net462/System.Collections.Immutable.dll",
- "lib/net462/System.Collections.Immutable.xml",
- "lib/net8.0/System.Collections.Immutable.dll",
- "lib/net8.0/System.Collections.Immutable.xml",
- "lib/net9.0/System.Collections.Immutable.dll",
- "lib/net9.0/System.Collections.Immutable.xml",
- "lib/netstandard2.0/System.Collections.Immutable.dll",
- "lib/netstandard2.0/System.Collections.Immutable.xml",
- "system.collections.immutable.10.0.2.nupkg.sha512",
- "system.collections.immutable.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Composition/6.0.0": {
- "sha512": "d7wMuKQtfsxUa7S13tITC8n1cQzewuhD5iDjZtK2prwFfKVzdYtgrTHgjaV03Zq7feGQ5gkP85tJJntXwInsJA==",
- "type": "package",
- "path": "system.composition/6.0.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/netcoreapp2.0/System.Composition.targets",
- "buildTransitive/netcoreapp3.1/_._",
- "system.composition.6.0.0.nupkg.sha512",
- "system.composition.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Composition.AttributedModel/6.0.0": {
- "sha512": "WK1nSDLByK/4VoC7fkNiFuTVEiperuCN/Hyn+VN30R+W2ijO1d0Z2Qm0ScEl9xkSn1G2MyapJi8xpf4R8WRa/w==",
- "type": "package",
- "path": "system.composition.attributedmodel/6.0.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/netcoreapp2.0/System.Composition.AttributedModel.targets",
- "buildTransitive/netcoreapp3.1/_._",
- "lib/net461/System.Composition.AttributedModel.dll",
- "lib/net461/System.Composition.AttributedModel.xml",
- "lib/net6.0/System.Composition.AttributedModel.dll",
- "lib/net6.0/System.Composition.AttributedModel.xml",
- "lib/netstandard2.0/System.Composition.AttributedModel.dll",
- "lib/netstandard2.0/System.Composition.AttributedModel.xml",
- "system.composition.attributedmodel.6.0.0.nupkg.sha512",
- "system.composition.attributedmodel.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Composition.Convention/6.0.0": {
- "sha512": "XYi4lPRdu5bM4JVJ3/UIHAiG6V6lWWUlkhB9ab4IOq0FrRsp0F4wTyV4Dj+Ds+efoXJ3qbLqlvaUozDO7OLeXA==",
- "type": "package",
- "path": "system.composition.convention/6.0.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/netcoreapp2.0/System.Composition.Convention.targets",
- "buildTransitive/netcoreapp3.1/_._",
- "lib/net461/System.Composition.Convention.dll",
- "lib/net461/System.Composition.Convention.xml",
- "lib/net6.0/System.Composition.Convention.dll",
- "lib/net6.0/System.Composition.Convention.xml",
- "lib/netstandard2.0/System.Composition.Convention.dll",
- "lib/netstandard2.0/System.Composition.Convention.xml",
- "system.composition.convention.6.0.0.nupkg.sha512",
- "system.composition.convention.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Composition.Hosting/6.0.0": {
- "sha512": "w/wXjj7kvxuHPLdzZ0PAUt++qJl03t7lENmb2Oev0n3zbxyNULbWBlnd5J5WUMMv15kg5o+/TCZFb6lSwfaUUQ==",
- "type": "package",
- "path": "system.composition.hosting/6.0.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/netcoreapp2.0/System.Composition.Hosting.targets",
- "buildTransitive/netcoreapp3.1/_._",
- "lib/net461/System.Composition.Hosting.dll",
- "lib/net461/System.Composition.Hosting.xml",
- "lib/net6.0/System.Composition.Hosting.dll",
- "lib/net6.0/System.Composition.Hosting.xml",
- "lib/netstandard2.0/System.Composition.Hosting.dll",
- "lib/netstandard2.0/System.Composition.Hosting.xml",
- "system.composition.hosting.6.0.0.nupkg.sha512",
- "system.composition.hosting.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Composition.Runtime/6.0.0": {
- "sha512": "qkRH/YBaMPTnzxrS5RDk1juvqed4A6HOD/CwRcDGyPpYps1J27waBddiiq1y93jk2ZZ9wuA/kynM+NO0kb3PKg==",
- "type": "package",
- "path": "system.composition.runtime/6.0.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/netcoreapp2.0/System.Composition.Runtime.targets",
- "buildTransitive/netcoreapp3.1/_._",
- "lib/net461/System.Composition.Runtime.dll",
- "lib/net461/System.Composition.Runtime.xml",
- "lib/net6.0/System.Composition.Runtime.dll",
- "lib/net6.0/System.Composition.Runtime.xml",
- "lib/netstandard2.0/System.Composition.Runtime.dll",
- "lib/netstandard2.0/System.Composition.Runtime.xml",
- "system.composition.runtime.6.0.0.nupkg.sha512",
- "system.composition.runtime.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Composition.TypedParts/6.0.0": {
- "sha512": "iUR1eHrL8Cwd82neQCJ00MpwNIBs4NZgXzrPqx8NJf/k4+mwBO0XCRmHYJT4OLSwDDqh5nBLJWkz5cROnrGhRA==",
- "type": "package",
- "path": "system.composition.typedparts/6.0.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/netcoreapp2.0/System.Composition.TypedParts.targets",
- "buildTransitive/netcoreapp3.1/_._",
- "lib/net461/System.Composition.TypedParts.dll",
- "lib/net461/System.Composition.TypedParts.xml",
- "lib/net6.0/System.Composition.TypedParts.dll",
- "lib/net6.0/System.Composition.TypedParts.xml",
- "lib/netstandard2.0/System.Composition.TypedParts.dll",
- "lib/netstandard2.0/System.Composition.TypedParts.xml",
- "system.composition.typedparts.6.0.0.nupkg.sha512",
- "system.composition.typedparts.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Diagnostics.DiagnosticSource/10.0.2": {
- "sha512": "lYWBy8fKkJHaRcOuw30d67PrtVjR5754sz5Wl76s8P+vJ9FSThh9b7LIcTSODx1LY7NB3Srvg+JMnzd67qNZOw==",
- "type": "package",
- "path": "system.diagnostics.diagnosticsource/10.0.2",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/net461/System.Diagnostics.DiagnosticSource.targets",
- "buildTransitive/net462/_._",
- "buildTransitive/net8.0/_._",
- "buildTransitive/netcoreapp2.0/System.Diagnostics.DiagnosticSource.targets",
- "lib/net10.0/System.Diagnostics.DiagnosticSource.dll",
- "lib/net10.0/System.Diagnostics.DiagnosticSource.xml",
- "lib/net462/System.Diagnostics.DiagnosticSource.dll",
- "lib/net462/System.Diagnostics.DiagnosticSource.xml",
- "lib/net8.0/System.Diagnostics.DiagnosticSource.dll",
- "lib/net8.0/System.Diagnostics.DiagnosticSource.xml",
- "lib/net9.0/System.Diagnostics.DiagnosticSource.dll",
- "lib/net9.0/System.Diagnostics.DiagnosticSource.xml",
- "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.dll",
- "lib/netstandard2.0/System.Diagnostics.DiagnosticSource.xml",
- "system.diagnostics.diagnosticsource.10.0.2.nupkg.sha512",
- "system.diagnostics.diagnosticsource.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Formats.Asn1/10.0.2": {
- "sha512": "9Hee6iQ74pDgdRNIL6lO8Vlx2onVWd5aDnqwk4Pvo0h5FklBd7QwcQDKgxeLuhiy0o3ibzUVO0KFQe0/hPXU+Q==",
- "type": "package",
- "path": "system.formats.asn1/10.0.2",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/net461/System.Formats.Asn1.targets",
- "buildTransitive/net462/_._",
- "buildTransitive/net8.0/_._",
- "buildTransitive/netcoreapp2.0/System.Formats.Asn1.targets",
- "lib/net10.0/System.Formats.Asn1.dll",
- "lib/net10.0/System.Formats.Asn1.xml",
- "lib/net462/System.Formats.Asn1.dll",
- "lib/net462/System.Formats.Asn1.xml",
- "lib/net8.0/System.Formats.Asn1.dll",
- "lib/net8.0/System.Formats.Asn1.xml",
- "lib/net9.0/System.Formats.Asn1.dll",
- "lib/net9.0/System.Formats.Asn1.xml",
- "lib/netstandard2.0/System.Formats.Asn1.dll",
- "lib/netstandard2.0/System.Formats.Asn1.xml",
- "system.formats.asn1.10.0.2.nupkg.sha512",
- "system.formats.asn1.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.IO.Pipelines/10.0.2": {
- "sha512": "EqMsn9r18ABvTDxrDce4OWDhBE3y+rR23ilG7Y3BudDKrDKrLG/hkD/JmeFZbctAPxSkCjyJ/Ddwbn/g7ufRJA==",
- "type": "package",
- "path": "system.io.pipelines/10.0.2",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/net461/System.IO.Pipelines.targets",
- "buildTransitive/net462/_._",
- "buildTransitive/net8.0/_._",
- "buildTransitive/netcoreapp2.0/System.IO.Pipelines.targets",
- "lib/net10.0/System.IO.Pipelines.dll",
- "lib/net10.0/System.IO.Pipelines.xml",
- "lib/net462/System.IO.Pipelines.dll",
- "lib/net462/System.IO.Pipelines.xml",
- "lib/net8.0/System.IO.Pipelines.dll",
- "lib/net8.0/System.IO.Pipelines.xml",
- "lib/net9.0/System.IO.Pipelines.dll",
- "lib/net9.0/System.IO.Pipelines.xml",
- "lib/netstandard2.0/System.IO.Pipelines.dll",
- "lib/netstandard2.0/System.IO.Pipelines.xml",
- "system.io.pipelines.10.0.2.nupkg.sha512",
- "system.io.pipelines.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Reflection.Metadata/6.0.1": {
- "sha512": "III/lNMSn0ZRBuM9m5Cgbiho5j81u0FAEagFX5ta2DKbljZ3T0IpD8j+BIiHQPeKqJppWS9bGEp6JnKnWKze0g==",
- "type": "package",
- "path": "system.reflection.metadata/6.0.1",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/netcoreapp2.0/System.Reflection.Metadata.targets",
- "buildTransitive/netcoreapp3.1/_._",
- "lib/net461/System.Reflection.Metadata.dll",
- "lib/net461/System.Reflection.Metadata.xml",
- "lib/net6.0/System.Reflection.Metadata.dll",
- "lib/net6.0/System.Reflection.Metadata.xml",
- "lib/netstandard2.0/System.Reflection.Metadata.dll",
- "lib/netstandard2.0/System.Reflection.Metadata.xml",
- "system.reflection.metadata.6.0.1.nupkg.sha512",
- "system.reflection.metadata.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Runtime.CompilerServices.Unsafe/6.0.0": {
- "sha512": "/iUeP3tq1S0XdNNoMz5C9twLSrM/TH+qElHkXWaPvuNOt+99G75NrV0OS2EqHx5wMN7popYjpc8oTjC1y16DLg==",
- "type": "package",
- "path": "system.runtime.compilerservices.unsafe/6.0.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.targets",
- "buildTransitive/netcoreapp3.1/_._",
- "lib/net461/System.Runtime.CompilerServices.Unsafe.dll",
- "lib/net461/System.Runtime.CompilerServices.Unsafe.xml",
- "lib/net6.0/System.Runtime.CompilerServices.Unsafe.dll",
- "lib/net6.0/System.Runtime.CompilerServices.Unsafe.xml",
- "lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.dll",
- "lib/netcoreapp3.1/System.Runtime.CompilerServices.Unsafe.xml",
- "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll",
- "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml",
- "system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512",
- "system.runtime.compilerservices.unsafe.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Text.Encoding.CodePages/6.0.0": {
- "sha512": "ZFCILZuOvtKPauZ/j/swhvw68ZRi9ATCfvGbk1QfydmcXBkIWecWKn/250UH7rahZ5OoDBaiAudJtPvLwzw85A==",
- "type": "package",
- "path": "system.text.encoding.codepages/6.0.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/netcoreapp2.0/System.Text.Encoding.CodePages.targets",
- "buildTransitive/netcoreapp3.1/_._",
- "lib/MonoAndroid10/_._",
- "lib/MonoTouch10/_._",
- "lib/net461/System.Text.Encoding.CodePages.dll",
- "lib/net461/System.Text.Encoding.CodePages.xml",
- "lib/net6.0/System.Text.Encoding.CodePages.dll",
- "lib/net6.0/System.Text.Encoding.CodePages.xml",
- "lib/netcoreapp3.1/System.Text.Encoding.CodePages.dll",
- "lib/netcoreapp3.1/System.Text.Encoding.CodePages.xml",
- "lib/netstandard2.0/System.Text.Encoding.CodePages.dll",
- "lib/netstandard2.0/System.Text.Encoding.CodePages.xml",
- "lib/xamarinios10/_._",
- "lib/xamarinmac20/_._",
- "lib/xamarintvos10/_._",
- "lib/xamarinwatchos10/_._",
- "runtimes/win/lib/net461/System.Text.Encoding.CodePages.dll",
- "runtimes/win/lib/net461/System.Text.Encoding.CodePages.xml",
- "runtimes/win/lib/net6.0/System.Text.Encoding.CodePages.dll",
- "runtimes/win/lib/net6.0/System.Text.Encoding.CodePages.xml",
- "runtimes/win/lib/netcoreapp3.1/System.Text.Encoding.CodePages.dll",
- "runtimes/win/lib/netcoreapp3.1/System.Text.Encoding.CodePages.xml",
- "runtimes/win/lib/netstandard2.0/System.Text.Encoding.CodePages.dll",
- "runtimes/win/lib/netstandard2.0/System.Text.Encoding.CodePages.xml",
- "system.text.encoding.codepages.6.0.0.nupkg.sha512",
- "system.text.encoding.codepages.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Text.Encodings.Web/10.0.2": {
- "sha512": "Ro4cLT4qpRy64crfLAy3ekihtXckeXrD5eI6qb6NDSEVyHcHsmH7KgN4dbnIuiBmXIoaCslx4SynLYxag1SLSQ==",
- "type": "package",
- "path": "system.text.encodings.web/10.0.2",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/net461/System.Text.Encodings.Web.targets",
- "buildTransitive/net462/_._",
- "buildTransitive/net8.0/_._",
- "buildTransitive/netcoreapp2.0/System.Text.Encodings.Web.targets",
- "lib/net10.0/System.Text.Encodings.Web.dll",
- "lib/net10.0/System.Text.Encodings.Web.xml",
- "lib/net462/System.Text.Encodings.Web.dll",
- "lib/net462/System.Text.Encodings.Web.xml",
- "lib/net8.0/System.Text.Encodings.Web.dll",
- "lib/net8.0/System.Text.Encodings.Web.xml",
- "lib/net9.0/System.Text.Encodings.Web.dll",
- "lib/net9.0/System.Text.Encodings.Web.xml",
- "lib/netstandard2.0/System.Text.Encodings.Web.dll",
- "lib/netstandard2.0/System.Text.Encodings.Web.xml",
- "runtimes/browser/lib/net10.0/System.Text.Encodings.Web.dll",
- "runtimes/browser/lib/net10.0/System.Text.Encodings.Web.xml",
- "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll",
- "runtimes/browser/lib/net8.0/System.Text.Encodings.Web.xml",
- "runtimes/wasi/lib/net10.0/System.Text.Encodings.Web.dll",
- "runtimes/wasi/lib/net10.0/System.Text.Encodings.Web.xml",
- "runtimes/win/lib/net9.0/System.Text.Encodings.Web.dll",
- "runtimes/win/lib/net9.0/System.Text.Encodings.Web.xml",
- "system.text.encodings.web.10.0.2.nupkg.sha512",
- "system.text.encodings.web.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Text.Json/10.0.2": {
- "sha512": "zy8ey7I16G9neZ6uzxrnYwS7pidElzN8XarsBjGu7lE2m7afTKMEe18KbY3ZSmh/z/bR40oxjd6hlUcmOEaMHw==",
- "type": "package",
- "path": "system.text.json/10.0.2",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "PACKAGE.md",
- "THIRD-PARTY-NOTICES.TXT",
- "analyzers/dotnet/roslyn3.11/cs/System.Text.Json.SourceGeneration.dll",
- "analyzers/dotnet/roslyn3.11/cs/cs/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/de/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/es/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/fr/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/it/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/ja/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/ko/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/pl/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/ru/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/tr/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn3.11/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/System.Text.Json.SourceGeneration.dll",
- "analyzers/dotnet/roslyn4.0/cs/cs/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/de/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/es/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/fr/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/it/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/ja/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/ko/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/pl/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/ru/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/tr/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.0/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/System.Text.Json.SourceGeneration.dll",
- "analyzers/dotnet/roslyn4.4/cs/cs/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/de/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/es/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/fr/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/it/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/ja/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/ko/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/pl/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/pt-BR/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/ru/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/tr/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/zh-Hans/System.Text.Json.SourceGeneration.resources.dll",
- "analyzers/dotnet/roslyn4.4/cs/zh-Hant/System.Text.Json.SourceGeneration.resources.dll",
- "buildTransitive/net461/System.Text.Json.targets",
- "buildTransitive/net462/System.Text.Json.targets",
- "buildTransitive/net8.0/System.Text.Json.targets",
- "buildTransitive/netcoreapp2.0/System.Text.Json.targets",
- "buildTransitive/netstandard2.0/System.Text.Json.targets",
- "lib/net10.0/System.Text.Json.dll",
- "lib/net10.0/System.Text.Json.xml",
- "lib/net462/System.Text.Json.dll",
- "lib/net462/System.Text.Json.xml",
- "lib/net8.0/System.Text.Json.dll",
- "lib/net8.0/System.Text.Json.xml",
- "lib/net9.0/System.Text.Json.dll",
- "lib/net9.0/System.Text.Json.xml",
- "lib/netstandard2.0/System.Text.Json.dll",
- "lib/netstandard2.0/System.Text.Json.xml",
- "system.text.json.10.0.2.nupkg.sha512",
- "system.text.json.nuspec",
- "useSharedDesignerContext.txt"
- ]
- },
- "System.Threading.Channels/6.0.0": {
- "sha512": "TY8/9+tI0mNaUMgntOxxaq2ndTkdXqLSxvPmas7XEqOlv9lQtB7wLjYGd756lOaO7Dvb5r/WXhluM+0Xe87v5Q==",
- "type": "package",
- "path": "system.threading.channels/6.0.0",
- "files": [
- ".nupkg.metadata",
- ".signature.p7s",
- "Icon.png",
- "LICENSE.TXT",
- "THIRD-PARTY-NOTICES.TXT",
- "buildTransitive/netcoreapp2.0/System.Threading.Channels.targets",
- "buildTransitive/netcoreapp3.1/_._",
- "lib/net461/System.Threading.Channels.dll",
- "lib/net461/System.Threading.Channels.xml",
- "lib/net6.0/System.Threading.Channels.dll",
- "lib/net6.0/System.Threading.Channels.xml",
- "lib/netcoreapp3.1/System.Threading.Channels.dll",
- "lib/netcoreapp3.1/System.Threading.Channels.xml",
- "lib/netstandard2.0/System.Threading.Channels.dll",
- "lib/netstandard2.0/System.Threading.Channels.xml",
- "lib/netstandard2.1/System.Threading.Channels.dll",
- "lib/netstandard2.1/System.Threading.Channels.xml",
- "system.threading.channels.6.0.0.nupkg.sha512",
- "system.threading.channels.nuspec",
- "useSharedDesignerContext.txt"
- ]
- }
- },
- "projectFileDependencyGroups": {
- "net8.0": [
- "CsvHelper >= 33.0.1",
- "Microsoft.EntityFrameworkCore.Design >= 8.0.13",
- "Npgsql.EntityFrameworkCore.PostgreSQL >= 8.0.11",
- "OPCFoundation.NetStandard.Opc.Ua.Client >= 1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Configuration >= 1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Core >= 1.5.378.134",
- "OPCFoundation.NetStandard.Opc.Ua.Server >= 1.5.378.134",
- "Swashbuckle.AspNetCore >= 6.8.1"
- ]
- },
- "packageFolders": {
- "/home/pacer/.nuget/packages/": {}
- },
- "project": {
- "version": "1.0.0",
- "restore": {
- "projectUniqueName": "/home/pacer/projects/ExperionCrawler/src/Web/ExperionCrawler.csproj",
- "projectName": "ExperionCrawler",
- "projectPath": "/home/pacer/projects/ExperionCrawler/src/Web/ExperionCrawler.csproj",
- "packagesPath": "/home/pacer/.nuget/packages/",
- "outputPath": "/home/pacer/projects/ExperionCrawler/src/Web/obj/",
- "projectStyle": "PackageReference",
- "configFilePaths": [
- "/home/pacer/.nuget/NuGet/NuGet.Config"
- ],
- "originalTargetFrameworks": [
- "net8.0"
- ],
- "sources": {
- "https://api.nuget.org/v3/index.json": {}
- },
- "frameworks": {
- "net8.0": {
- "targetAlias": "net8.0",
- "projectReferences": {}
- }
- },
- "warningProperties": {
- "warnAsError": [
- "NU1605"
- ]
- }
- },
- "frameworks": {
- "net8.0": {
- "targetAlias": "net8.0",
- "dependencies": {
- "CsvHelper": {
- "target": "Package",
- "version": "[33.0.1, )"
- },
- "Microsoft.EntityFrameworkCore.Design": {
- "include": "Runtime, Build, Native, ContentFiles, Analyzers, BuildTransitive",
- "suppressParent": "All",
- "target": "Package",
- "version": "[8.0.13, )"
- },
- "Npgsql.EntityFrameworkCore.PostgreSQL": {
- "target": "Package",
- "version": "[8.0.11, )"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Client": {
- "target": "Package",
- "version": "[1.5.378.134, )"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Configuration": {
- "target": "Package",
- "version": "[1.5.378.134, )"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Core": {
- "target": "Package",
- "version": "[1.5.378.134, )"
- },
- "OPCFoundation.NetStandard.Opc.Ua.Server": {
- "target": "Package",
- "version": "[1.5.378.134, )"
- },
- "Swashbuckle.AspNetCore": {
- "target": "Package",
- "version": "[6.8.1, )"
- }
- },
- "imports": [
- "net461",
- "net462",
- "net47",
- "net471",
- "net472",
- "net48",
- "net481"
- ],
- "assetTargetFallback": true,
- "warn": true,
- "downloadDependencies": [
- {
- "name": "Microsoft.NETCore.App.Host.linux-x64",
- "version": "[8.0.25, 8.0.25]"
- }
- ],
- "frameworkReferences": {
- "Microsoft.AspNetCore.App": {
- "privateAssets": "none"
- },
- "Microsoft.NETCore.App": {
- "privateAssets": "all"
- }
- },
- "runtimeIdentifierGraphPath": "/usr/lib/dotnet/sdk/8.0.125/PortableRuntimeIdentifierGraph.json"
- }
- },
- "runtimes": {
- "linux-x64": {
- "#import": []
- }
- }
- }
-}
\ No newline at end of file
diff --git a/src/Web/obj/project.nuget.cache b/src/Web/obj/project.nuget.cache
deleted file mode 100644
index 8d839d9..0000000
--- a/src/Web/obj/project.nuget.cache
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "version": 2,
- "dgSpecHash": "DvDBBf+ZftMQEZFrHiCN6PjT2qlTihoBAxhRRY0VH8ymmHnuSkQnt2z9twYiIXrWFiroBR5ZTiY60EFQ6yWzUg==",
- "success": true,
- "projectFilePath": "/home/pacer/projects/ExperionCrawler/src/Web/ExperionCrawler.csproj",
- "expectedPackageFiles": [
- "/home/pacer/.nuget/packages/bitfaster.caching/2.5.4/bitfaster.caching.2.5.4.nupkg.sha512",
- "/home/pacer/.nuget/packages/csvhelper/33.0.1/csvhelper.33.0.1.nupkg.sha512",
- "/home/pacer/.nuget/packages/humanizer.core/2.14.1/humanizer.core.2.14.1.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.bcl.asyncinterfaces/6.0.0/microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.codeanalysis.analyzers/3.3.3/microsoft.codeanalysis.analyzers.3.3.3.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.codeanalysis.common/4.5.0/microsoft.codeanalysis.common.4.5.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.codeanalysis.csharp/4.5.0/microsoft.codeanalysis.csharp.4.5.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.codeanalysis.csharp.workspaces/4.5.0/microsoft.codeanalysis.csharp.workspaces.4.5.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.codeanalysis.workspaces.common/4.5.0/microsoft.codeanalysis.workspaces.common.4.5.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.entityframeworkcore/8.0.13/microsoft.entityframeworkcore.8.0.13.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.entityframeworkcore.abstractions/8.0.13/microsoft.entityframeworkcore.abstractions.8.0.13.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.entityframeworkcore.analyzers/8.0.13/microsoft.entityframeworkcore.analyzers.8.0.13.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.entityframeworkcore.design/8.0.13/microsoft.entityframeworkcore.design.8.0.13.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.entityframeworkcore.relational/8.0.13/microsoft.entityframeworkcore.relational.8.0.13.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.extensions.apidescription.server/6.0.5/microsoft.extensions.apidescription.server.6.0.5.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.extensions.caching.abstractions/8.0.0/microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.extensions.caching.memory/8.0.1/microsoft.extensions.caching.memory.8.0.1.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.extensions.configuration.abstractions/8.0.0/microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.extensions.dependencyinjection/10.0.2/microsoft.extensions.dependencyinjection.10.0.2.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.extensions.dependencyinjection.abstractions/10.0.2/microsoft.extensions.dependencyinjection.abstractions.10.0.2.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.extensions.dependencymodel/8.0.2/microsoft.extensions.dependencymodel.8.0.2.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.extensions.logging/10.0.2/microsoft.extensions.logging.10.0.2.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.extensions.logging.abstractions/10.0.2/microsoft.extensions.logging.abstractions.10.0.2.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.extensions.options/10.0.2/microsoft.extensions.options.10.0.2.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.extensions.primitives/10.0.2/microsoft.extensions.primitives.10.0.2.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.openapi/1.6.14/microsoft.openapi.1.6.14.nupkg.sha512",
- "/home/pacer/.nuget/packages/mono.texttemplating/2.2.1/mono.texttemplating.2.2.1.nupkg.sha512",
- "/home/pacer/.nuget/packages/newtonsoft.json/13.0.4/newtonsoft.json.13.0.4.nupkg.sha512",
- "/home/pacer/.nuget/packages/npgsql/8.0.6/npgsql.8.0.6.nupkg.sha512",
- "/home/pacer/.nuget/packages/npgsql.entityframeworkcore.postgresql/8.0.11/npgsql.entityframeworkcore.postgresql.8.0.11.nupkg.sha512",
- "/home/pacer/.nuget/packages/opcfoundation.netstandard.opc.ua.client/1.5.378.134/opcfoundation.netstandard.opc.ua.client.1.5.378.134.nupkg.sha512",
- "/home/pacer/.nuget/packages/opcfoundation.netstandard.opc.ua.configuration/1.5.378.134/opcfoundation.netstandard.opc.ua.configuration.1.5.378.134.nupkg.sha512",
- "/home/pacer/.nuget/packages/opcfoundation.netstandard.opc.ua.core/1.5.378.134/opcfoundation.netstandard.opc.ua.core.1.5.378.134.nupkg.sha512",
- "/home/pacer/.nuget/packages/opcfoundation.netstandard.opc.ua.security.certificates/1.5.378.134/opcfoundation.netstandard.opc.ua.security.certificates.1.5.378.134.nupkg.sha512",
- "/home/pacer/.nuget/packages/opcfoundation.netstandard.opc.ua.server/1.5.378.134/opcfoundation.netstandard.opc.ua.server.1.5.378.134.nupkg.sha512",
- "/home/pacer/.nuget/packages/opcfoundation.netstandard.opc.ua.types/1.5.378.134/opcfoundation.netstandard.opc.ua.types.1.5.378.134.nupkg.sha512",
- "/home/pacer/.nuget/packages/swashbuckle.aspnetcore/6.8.1/swashbuckle.aspnetcore.6.8.1.nupkg.sha512",
- "/home/pacer/.nuget/packages/swashbuckle.aspnetcore.swagger/6.8.1/swashbuckle.aspnetcore.swagger.6.8.1.nupkg.sha512",
- "/home/pacer/.nuget/packages/swashbuckle.aspnetcore.swaggergen/6.8.1/swashbuckle.aspnetcore.swaggergen.6.8.1.nupkg.sha512",
- "/home/pacer/.nuget/packages/swashbuckle.aspnetcore.swaggerui/6.8.1/swashbuckle.aspnetcore.swaggerui.6.8.1.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.codedom/4.4.0/system.codedom.4.4.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.collections.immutable/10.0.2/system.collections.immutable.10.0.2.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.composition/6.0.0/system.composition.6.0.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.composition.attributedmodel/6.0.0/system.composition.attributedmodel.6.0.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.composition.convention/6.0.0/system.composition.convention.6.0.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.composition.hosting/6.0.0/system.composition.hosting.6.0.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.composition.runtime/6.0.0/system.composition.runtime.6.0.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.composition.typedparts/6.0.0/system.composition.typedparts.6.0.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.diagnostics.diagnosticsource/10.0.2/system.diagnostics.diagnosticsource.10.0.2.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.formats.asn1/10.0.2/system.formats.asn1.10.0.2.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.io.pipelines/10.0.2/system.io.pipelines.10.0.2.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.reflection.metadata/6.0.1/system.reflection.metadata.6.0.1.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.runtime.compilerservices.unsafe/6.0.0/system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.text.encoding.codepages/6.0.0/system.text.encoding.codepages.6.0.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.text.encodings.web/10.0.2/system.text.encodings.web.10.0.2.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.text.json/10.0.2/system.text.json.10.0.2.nupkg.sha512",
- "/home/pacer/.nuget/packages/system.threading.channels/6.0.0/system.threading.channels.6.0.0.nupkg.sha512",
- "/home/pacer/.nuget/packages/microsoft.netcore.app.host.linux-x64/8.0.25/microsoft.netcore.app.host.linux-x64.8.0.25.nupkg.sha512"
- ],
- "logs": []
-}
\ No newline at end of file
diff --git a/src/Web/realtime_autostart.json b/src/Web/realtime_autostart.json
deleted file mode 100644
index 37e00cb..0000000
--- a/src/Web/realtime_autostart.json
+++ /dev/null
@@ -1 +0,0 @@
-{"Id":0,"ServerHostName":"192.168.0.20","Port":4840,"ClientHostName":"dbsvr","UserName":"mngr","Password":"mngr","EndpointUrl":"opc.tcp://192.168.0.20:4840","ApplicationUri":"urn:dbsvr:ExperionCrawlerClient"}
\ No newline at end of file
diff --git a/src/Web/wwwroot/css/style.css b/src/Web/wwwroot/css/style.css
index f1f02cd..f48d2b3 100644
--- a/src/Web/wwwroot/css/style.css
+++ b/src/Web/wwwroot/css/style.css
@@ -2,36 +2,36 @@
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
- /* surfaces */
- --s0: #080b0f;
- --s1: #0d1117;
- --s2: #131920;
- --s3: #192028;
- --s4: #1f2a36;
- --bd: #1e2d3d;
- --bd2: #243546;
+ /* surfaces — slate palette (Hanmo-inspired) */
+ --s0: #0f172a; /* slate-950 */
+ --s1: #1e293b; /* slate-800 */
+ --s2: #1e293b; /* slate-800 */
+ --s3: #253144; /* custom dark card */
+ --s4: #2d3a4f; /* custom hover */
+ --bd: #334155; /* slate-700 */
+ --bd2: #475569; /* slate-600 */
- /* accents */
- --a: #f0a500; /* amber – Experion brand */
- --ag: rgba(240,165,0,.13);
- --a2: #ffbf33;
- --grn: #3ddc84;
- --red: #ff4c6a;
- --blu: #4ca6ff;
+ /* accents — blue palette (Hanmo #2563eb) */
+ --a: #2563eb; /* blue-600 – primary brand */
+ --ag: rgba(37,99,235,.15);
+ --a2: #3b82f6; /* blue-500 – hover */
+ --grn: #10b981; /* emerald-500 */
+ --red: #ef4444; /* red-500 */
+ --blu: #60a5fa; /* blue-400 */
/* text */
- --t0: #e2ecf8;
- --t1: #7a94af;
- --t2: #3d5269;
+ --t0: #f1f5f9; /* slate-100 */
+ --t1: #94a3b8; /* slate-400 */
+ --t2: #64748b; /* slate-500 */
- /* type */
- --ff: 'Barlow', sans-serif;
- --fm: 'JetBrains Mono', monospace;
+ /* type — System fonts (offline-compatible) */
+ --ff: 'Noto Sans', 'Ubuntu Sans', 'Liberation Sans', sans-serif;
+ --fm: 'Noto Sans Mono', 'Ubuntu Mono', 'Liberation Mono', monospace;
- --r: 6px;
- --rl: 10px;
+ --r: 8px;
+ --rl: 14px;
--sw: 224px;
- --tr: .15s ease;
+ --tr: .2s ease;
}
html, body { height: 100%; background: var(--s0); color: var(--t1); font-family: var(--ff); font-size: 14px; line-height: 1.6; }
@@ -39,13 +39,14 @@ html, body { height: 100%; background: var(--s0); color: var(--t1); font-family:
/* ── Shell ───────────────────────────────────────────────── */
.shell { display: flex; height: 100vh; overflow: hidden; }
-/* ── Sidebar ─────────────────────────────────────────────── */
+/* ── Sidebar — blue gradient + glass (Hanmo-style) ──────── */
.sidebar {
width: var(--sw);
- background: var(--s1);
+ background: linear-gradient(180deg, #1e293b 0%, #0f172a 100%);
border-right: 1px solid var(--bd);
display: flex; flex-direction: column;
flex-shrink: 0;
+ backdrop-filter: blur(12px);
}
.brand {
@@ -58,12 +59,12 @@ html, body { height: 100%; background: var(--s0); color: var(--t1); font-family:
.brand-name {
font-family: var(--ff); font-weight: 800; font-size: 16px;
- color: var(--a); letter-spacing: .08em; line-height: 1;
+ color: var(--a); letter-spacing: -0.02em; line-height: 1;
}
.brand-sub {
font-family: var(--fm); font-size: 9px; color: var(--t2);
- letter-spacing: .18em; margin-top: 3px;
+ letter-spacing: 0.15em; margin-top: 3px;
}
/* nav */
@@ -82,7 +83,7 @@ html, body { height: 100%; background: var(--s0); color: var(--t1); font-family:
.nav-item.active {
background: var(--ag);
color: var(--a);
- border: 1px solid rgba(240,165,0,.22);
+ border: 1px solid rgba(37,99,235,.3);
}
.ni {
@@ -120,9 +121,10 @@ html, body { height: 100%; background: var(--s0); color: var(--t1); font-family:
.mono { font-family: var(--fm); }
-/* ── Content ─────────────────────────────────────────────── */
+/* ── Content — blue gradient background (Hanmo-style) ───── */
.content {
- flex: 1; overflow-y: auto; background: var(--s1);
+ flex: 1; overflow-y: auto;
+ background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #0f172a 100%);
padding: 32px 36px;
}
@@ -138,24 +140,27 @@ html, body { height: 100%; background: var(--s0); color: var(--t1); font-family:
.pane-hdr h1 {
font-family: var(--ff); font-weight: 700; font-size: 22px;
color: var(--t0); margin-bottom: 3px;
+ letter-spacing: -0.02em;
}
.pane-hdr p { color: var(--t2); font-size: 13px; }
.pane-tag {
- font-family: var(--fm); font-size: 10px; letter-spacing: .15em;
- color: var(--a); border: 1px solid rgba(240,165,0,.3);
- padding: 4px 10px; border-radius: 3px; white-space: nowrap;
+ font-family: var(--fm); font-size: 10px; letter-spacing: 0.15em;
+ color: var(--a); border: 1px solid rgba(37,99,235,.35);
+ padding: 4px 10px; border-radius: 6px; white-space: nowrap;
margin-top: 4px;
}
-/* ── Cards ───────────────────────────────────────────────── */
+/* ── Cards — glassmorphism (Hanmo-style) ────────────────── */
.card {
- background: var(--s3);
+ background: linear-gradient(135deg, rgba(37,49,68,.8) 0%, rgba(31,42,54,.6) 100%);
border: 1px solid var(--bd);
border-radius: var(--rl);
padding: 22px 24px;
margin-bottom: 18px;
+ backdrop-filter: blur(8px);
+ box-shadow: 0 4px 16px rgba(0,0,0,.15);
}
.card-cap {
@@ -213,9 +218,16 @@ html, body { height: 100%; background: var(--s0); color: var(--t1); font-family:
white-space: nowrap;
}
-.btn-a { background: var(--a); color: var(--s0); }
-.btn-a:hover { background: var(--a2); box-shadow: 0 0 14px var(--ag); }
-.btn-a:disabled { background: var(--bd); color: var(--t2); cursor: not-allowed; }
+.btn-a {
+ background: linear-gradient(135deg, var(--a) 0%, var(--a2) 100%);
+ color: var(--s0);
+ box-shadow: 0 2px 8px rgba(37,99,235,.3);
+}
+.btn-a:hover {
+ background: linear-gradient(135deg, var(--a2) 0%, #60a5fa 100%);
+ box-shadow: 0 4px 20px var(--ag);
+}
+.btn-a:disabled { background: var(--bd); color: var(--t2); cursor: not-allowed; box-shadow: none; }
.btn-b { background: var(--s4); color: var(--t1); border: 1px solid var(--bd2); }
.btn-b:hover { background: var(--bd2); color: var(--t0); }
@@ -304,7 +316,7 @@ html, body { height: 100%; background: var(--s0); color: var(--t1); font-family:
.prog-fill {
height: 100%;
- background: linear-gradient(90deg, #c07800, var(--a));
+ background: linear-gradient(90deg, #1d4ed8, var(--a), var(--a2));
border-radius: 3px; transition: width .4s ease;
}
@@ -326,7 +338,7 @@ html, body { height: 100%; background: var(--s0); color: var(--t1); font-family:
.fitem.sel {
background: var(--ag); color: var(--a);
- border: 1px solid rgba(240,165,0,.25);
+ border: 1px solid rgba(37,99,235,.3);
}
/* ── Stats ───────────────────────────────────────────────── */
@@ -411,7 +423,7 @@ tr:last-child td { border-bottom: none; }
.mode-opt:has(input:checked) {
background: var(--ag); color: var(--a);
- border-color: rgba(240,165,0,.4);
+ border-color: rgba(37,99,235,.4);
}
.mode-opt-danger:has(input:checked) {
@@ -460,7 +472,7 @@ tr:last-child td { border-bottom: none; }
background: var(--s2);
}
-.nm-cls-object { color: var(--a); border: 1px solid rgba(240,165,0,.3); }
+.nm-cls-object { color: var(--a); border: 1px solid rgba(37,99,235,.35); }
.nm-cls-variable { color: var(--grn); border: 1px solid rgba(61,220,132,.3); }
.nm-dtype {
@@ -599,6 +611,256 @@ tr:last-child td { border-bottom: none; }
.srv-meta span b { color: var(--t0); }
.dot.grn { background: var(--grn); box-shadow: 0 0 6px var(--grn); }
+/* ── Text-to-SQL Dashboard ───────────────────────────────── */
+
+/* 입력 행 */
+.t2s-input-row {
+ display: flex; gap: 8px; align-items: flex-end;
+}
+.t2s-input-row .fg { flex: 1; margin-bottom: 0; }
+
+/* 제안 칩 */
+.t2s-chips { display: flex; flex-wrap: wrap; gap: 6px; }
+.t2s-chip {
+ background: var(--s3); border: 1px solid var(--bd);
+ color: var(--t1); border-radius: 12px;
+ padding: 4px 12px; cursor: pointer; font-size: 12px;
+ transition: all var(--tr);
+}
+.t2s-chip:hover { background: var(--s4); color: var(--t0); border-color: var(--a); }
+
+/* SQL 텍스트영역 */
+.t2s-sql-area {
+ width: 100%; min-height: 80px; resize: vertical;
+ background: var(--s2); border: 1px solid var(--bd);
+ color: var(--t0); border-radius: var(--r);
+ padding: 10px 12px; font-family: var(--fm); font-size: 13px;
+ line-height: 1.5;
+}
+.t2s-sql-area:focus { outline: none; border-color: var(--a); }
+.t2s-sql-area:disabled { opacity: 0.6; }
+
+/* 태그 분석 옵션 */
+.t2s-tag-label {
+ display: block; font-size: 12px; color: var(--t1);
+ margin-bottom: 4px;
+}
+
+/* 결과 테이블 */
+.t2s-result-info {
+ font-size: 13px; color: var(--t1); margin-bottom: 10px;
+ padding: 8px 0;
+}
+
+.t2s-table {
+ width: 100%; border-collapse: collapse;
+ font-size: 13px; font-family: var(--fm);
+}
+.t2s-table thead { background: var(--s3); }
+.t2s-table th {
+ padding: 8px 12px; text-align: left;
+ color: var(--t0); font-weight: 600;
+ border-bottom: 2px solid var(--bd);
+ white-space: nowrap;
+}
+.t2s-table td {
+ padding: 6px 12px;
+ border-bottom: 1px solid var(--bd);
+ color: var(--t1);
+ max-width: 300px; overflow: hidden;
+ text-overflow: ellipsis; white-space: nowrap;
+}
+.t2s-table tbody tr:hover { background: var(--s3); }
+.t2s-null { color: var(--t2); font-style: italic; }
+
+/* 로딩 / 빈 결과 / 오류 */
+.t2s-loading, .t2s-empty {
+ text-align: center; padding: 40px 20px;
+ color: var(--t1); font-size: 14px;
+}
+.t2s-loading { color: var(--a); }
+.t2s-error {
+ text-align: center; padding: 40px 20px;
+ color: var(--red); font-size: 14px;
+}
+
+/* 분석 결과 그리드 */
+.t2s-analysis-grid {
+ display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
+ gap: 12px; margin-top: 10px;
+}
+.t2s-tag-card {
+ background: var(--s2); border: 1px solid var(--bd);
+ border-radius: var(--r); padding: 14px 16px;
+}
+.t2s-tag-card h4 {
+ font-size: 14px; color: var(--t0); margin-bottom: 10px;
+ font-weight: 600;
+}
+.t2s-tag-stats { font-size: 13px; }
+.t2s-stat-row {
+ display: flex; justify-content: space-between;
+ padding: 4px 0; border-bottom: 1px solid var(--bd);
+}
+.t2s-stat-row:last-child { border-bottom: none; }
+.t2s-stat-row span:first-child { color: var(--t1); }
+.t2s-value { color: var(--t0); font-family: var(--fm); font-weight: 500; }
+.t2s-max { color: var(--red); }
+.t2s-min { color: var(--blu); }
+
+/* ── History Query Status Box ──────────────────────────────── */
+.hist-status-box {
+ background: var(--s2);
+ border: 1px solid var(--bd);
+ border-radius: var(--r);
+ padding: 14px 16px;
+ margin: 12px 0;
+ transition: all var(--tr);
+}
+.hist-status-box.pending { border-color: var(--t2); }
+.hist-status-box.busy { border-color: var(--blu); }
+.hist-status-box.ok { border-color: var(--grn); }
+.hist-status-box.err { border-color: var(--red); }
+
+.hist-status-header {
+ display: flex; align-items: center; gap: 10px;
+ font-size: 14px; font-weight: 600;
+}
+.hist-status-icon {
+ font-size: 18px;
+ width: 28px; height: 28px;
+ display: flex; align-items: center; justify-content: center;
+ background: var(--s3);
+ border-radius: 50%;
+}
+.hist-status-text { color: var(--t0); }
+.hist-status-detail {
+ margin-top: 8px;
+ font-size: 12px;
+ color: var(--t1);
+ font-family: var(--fm);
+ line-height: 1.5;
+ word-break: break-all;
+}
+
+/* ── Hypertable Management ─────────────────────────────────── */
+.ht-hidden { display: none !important; }
+
+.ht-status-box {
+ background: var(--s2);
+ border: 1px solid var(--bd);
+ border-radius: var(--r);
+ padding: 14px 16px;
+ margin: 12px 0;
+ transition: all var(--tr);
+}
+.ht-status-box.pending { border-color: var(--t2); }
+.ht-status-box.busy { border-color: var(--blu); }
+.ht-status-box.ok { border-color: var(--grn); }
+.ht-status-box.err { border-color: var(--red); }
+
+.ht-status-header {
+ display: flex; align-items: center; gap: 10px;
+ font-size: 14px; font-weight: 600;
+}
+.ht-status-icon {
+ font-size: 18px;
+ width: 28px; height: 28px;
+ display: flex; align-items: center; justify-content: center;
+ background: var(--s3);
+ border-radius: 50%;
+}
+.ht-status-text { color: var(--t0); }
+.ht-status-detail {
+ margin-top: 8px;
+ font-size: 12px;
+ color: var(--t1);
+ font-family: var(--fm);
+ line-height: 1.5;
+ word-break: break-all;
+}
+
+.ht-info-panel {
+ margin-top: 12px;
+ padding-top: 12px;
+ border-top: 1px solid var(--bd);
+}
+.ht-info-grid {
+ display: grid;
+ grid-template-columns: repeat(2, 1fr);
+ gap: 10px;
+}
+.ht-info-item {
+ display: flex;
+ flex-direction: column;
+ gap: 4px;
+}
+.ht-info-label {
+ font-size: 11px;
+ color: var(--t2);
+ text-transform: uppercase;
+ letter-spacing: 0.05em;
+ font-weight: 600;
+}
+.ht-info-value {
+ font-size: 13px;
+ color: var(--t0);
+ font-family: var(--fm);
+ font-weight: 500;
+}
+
+/* ── 이력 조회 상태 표시기 ─────────────────────────────────── */
+.hist-status {
+ display: inline-flex;
+ align-items: center;
+ gap: 6px;
+ font-size: 12px;
+ font-family: var(--fm);
+ padding: 3px 10px;
+ border-radius: 6px;
+ background: var(--s4);
+ color: var(--t1);
+ white-space: nowrap;
+ margin-left: auto;
+ contain: layout style;
+ transform: translateZ(0);
+}
+
+.hist-status .status-dot {
+ width: 8px;
+ height: 8px;
+ border-radius: 50%;
+ background: var(--t2);
+ flex-shrink: 0;
+}
+
+.hist-status.loading {
+ background: rgba(37,99,235,.15);
+ color: var(--a2);
+}
+
+.hist-status.loading .status-dot {
+ background: var(--a2);
+}
+
+.hist-status.success {
+ background: rgba(16,185,129,.15);
+ color: var(--grn);
+}
+
+.hist-status.success .status-dot {
+ background: var(--grn);
+}
+
+.hist-status.error {
+ background: rgba(239,68,68,.15);
+ color: var(--red);
+}
+
+.hist-status.error .status-dot {
+ background: var(--red);
+}
+
/* ── Utility ─────────────────────────────────────────────── */
.hidden { display: none !important; }
diff --git a/src/Web/wwwroot/index.html b/src/Web/wwwroot/index.html
index ed2dfe1..4462a09 100644
--- a/src/Web/wwwroot/index.html
+++ b/src/Web/wwwroot/index.html
@@ -4,8 +4,6 @@
ExperionCrawler
-
-
@@ -65,6 +63,10 @@
OPC UA 서버
+
+ 09
+ Text-to-SQL
+
-
-
-
-
-
-
-
-
-
- ▶ 서버 시작
- ■ 서버 중지
- ↺ 주소공간 재구성
- ↻ 상태 새로고침
-
-
-
-
-