@meshmakers/octo-services 3.3.450 → 3.3.470

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,17 +2,78 @@
2
2
 
3
3
  Angular library providing services for interacting with OctoMesh backend APIs.
4
4
 
5
+ Part of the [@meshmakers](https://www.npmjs.com/org/meshmakers) package ecosystem.
6
+
5
7
  ## Features
6
8
 
7
- - **HTTP Services** - REST API clients for Asset Repository, Identity Service, Bot Service
9
+ - **HTTP Services** - REST API clients for Asset Repository, Identity Service, Bot Service, Communication Controller
8
10
  - **GraphQL Services** - Construction Kit queries for types, attributes, and models
9
11
  - **Job Management** - Background job execution with progress tracking
12
+ - **TUS Upload** - Resumable file uploads for large database restores
10
13
  - **Error Handling** - Apollo Link for GraphQL error handling with user notifications
11
14
 
12
- ## Documentation
15
+ ## Build & Test
16
+
17
+ ```bash
18
+ # Build
19
+ npm run build:octo-services
20
+
21
+ # Lint
22
+ npm run lint:octo-services
23
+
24
+ # Run tests
25
+ npm test -- --project=@meshmakers/octo-services --watch=false
26
+ ```
27
+
28
+ ## Architecture
29
+
30
+ ```
31
+ octo-services/
32
+ ├── src/
33
+ │ ├── public-api.ts
34
+ │ └── lib/
35
+ │ ├── services/
36
+ │ │ ├── health.service.ts # Backend health checks
37
+ │ │ ├── asset-repo.service.ts # Tenant and model management
38
+ │ │ ├── identity-service.ts # User, role, client management
39
+ │ │ ├── bot-service.ts # Background job execution
40
+ │ │ ├── job-management.service.ts # Job progress tracking with UI
41
+ │ │ ├── communication.service.ts # Adapter and pipeline management
42
+ │ │ ├── tus-upload.service.ts # Resumable file uploads (TUS)
43
+ │ │ ├── ck-type-selector.service.ts # Query CK types (GraphQL)
44
+ │ │ ├── ck-type-attribute.service.ts # Query CK type attributes (GraphQL)
45
+ │ │ ├── ck-model.service.ts # Check model availability (GraphQL)
46
+ │ │ ├── attribute-selector.service.ts # Query columns (GraphQL)
47
+ │ │ ├── configuration.service.ts # Configuration injection token
48
+ │ │ └── tenant-provider.ts # Tenant ID injection token
49
+ │ ├── graphQL/ # GraphQL queries and generated types
50
+ │ ├── shared/ # DTOs, models, and utilities
51
+ │ ├── options/ # Configuration options
52
+ │ └── compat/ # Backward compatibility exports
53
+ ```
54
+
55
+ ## Services
56
+
57
+ ### HTTP Services
58
+
59
+ | Service | Description |
60
+ |---------|-------------|
61
+ | `HealthService` | Backend health checks (Asset Repo, Identity, Bot, Communication, Mesh Adapter) |
62
+ | `AssetRepoService` | Tenant management, model import/export, user merging |
63
+ | `IdentityService` | User, role, and OAuth client management |
64
+ | `BotService` | Background job execution (fixup scripts, dump/restore) |
65
+ | `JobManagementService` | Job progress tracking with UI dialogs |
66
+ | `CommunicationService` | Adapter deployment, pipeline execution, and debugging |
67
+ | `TusUploadService` | Resumable file uploads via TUS protocol |
13
68
 
14
- - [Developer Documentation](docs/README.md) - Complete API reference and usage examples
15
- - [AI Context](CLAUDE.md) - Guidelines for AI-assisted development
69
+ ### GraphQL Services
70
+
71
+ | Service | Description |
72
+ |---------|-------------|
73
+ | `CkTypeSelectorService` | Query CK types with filtering, pagination, and derived types |
74
+ | `CkTypeAttributeService` | Query CK type and record attributes |
75
+ | `CkModelService` | Check model availability and versions |
76
+ | `AttributeSelectorService` | Query available query columns for a CK type |
16
77
 
17
78
  ## Quick Start
18
79
 
@@ -71,35 +132,26 @@ export class MyComponent {
71
132
  }
72
133
  ```
73
134
 
74
- ## Available Services
75
-
76
- | Service | Description |
77
- |---------|-------------|
78
- | `HealthService` | Backend health checks |
79
- | `AssetRepoService` | Tenant and model management |
80
- | `IdentityService` | User, role, and client management |
81
- | `BotService` | Background job execution |
82
- | `JobManagementService` | Job progress tracking with UI |
83
- | `CkTypeSelectorService` | Query CK types |
84
- | `CkTypeAttributeService` | Query CK type/record attributes |
85
- | `CkModelService` | Check model availability and versions |
86
- | `AttributeSelectorService` | Query available query columns |
135
+ ## Detailed Documentation
87
136
 
88
- ## Build
137
+ See [docs/README.md](docs/README.md) for complete API reference with all method signatures and usage examples.
89
138
 
90
- ```bash
91
- # From frontend-libraries directory
92
- npm run build:octo-services
93
- ```
139
+ See [CLAUDE.md](CLAUDE.md) for development guidelines, CK ID types, GraphQL utilities, and testing patterns.
94
140
 
95
- ## Test
141
+ ## Dependencies
96
142
 
97
- ```bash
98
- npm test -- --project=@meshmakers/octo-services --watch=false
99
- ```
143
+ - **Angular 21** (core, common/http)
144
+ - **Apollo Angular** / **@apollo/client** (GraphQL client)
145
+ - **tus-js-client** (resumable uploads)
146
+ - **@meshmakers/shared-auth** (AuthorizeService for TUS uploads)
147
+ - **@meshmakers/shared-services** (MessageService, PagedResultDto)
148
+ - **@meshmakers/shared-ui** (ProgressWindowService for job tracking)
100
149
 
101
- ## Lint
150
+ ## Documentation and Testing Standards
102
151
 
103
- ```bash
104
- npx ng lint @meshmakers/octo-services
105
- ```
152
+ - **All developer documentation must be written in English**
153
+ - **Every code change must include updated documentation** — update README.md, CLAUDE.md, docs/README.md, or inline docs when adding, modifying, or removing features
154
+ - **Unit tests and integration tests must be executed** after every code change
155
+ - **Existing tests must be updated** when the behavior of tested code changes
156
+ - **New tests must be added** when new features, components, or services are implemented
157
+ - Never commit code with failing tests