@sinequa/atomic-angular 2.0.0 → 2.2.0
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 +249 -249
- package/document-workspaces/i18n/de.json +11 -1
- package/document-workspaces/i18n/en.json +11 -1
- package/document-workspaces/i18n/fr.json +11 -1
- package/document-workspaces/i18n/ja.json +11 -1
- package/fesm2022/sinequa-atomic-angular-document-workspaces.mjs +1250 -108
- package/fesm2022/sinequa-atomic-angular-document-workspaces.mjs.map +1 -1
- package/fesm2022/sinequa-atomic-angular-workspace-elements.mjs +4 -1
- package/fesm2022/sinequa-atomic-angular-workspace-elements.mjs.map +1 -1
- package/fesm2022/sinequa-atomic-angular.mjs +170 -1
- package/fesm2022/sinequa-atomic-angular.mjs.map +1 -1
- package/package.json +6 -2
- package/providers/session-expiry/i18n/de.json +7 -0
- package/providers/session-expiry/i18n/en.json +7 -0
- package/providers/session-expiry/i18n/fr.json +7 -0
- package/types/sinequa-atomic-angular-document-workspaces.d.ts +501 -27
- package/types/sinequa-atomic-angular.d.ts +90 -36
package/README.md
CHANGED
|
@@ -1,249 +1,249 @@
|
|
|
1
|
-
# @sinequa/atomic-angular
|
|
2
|
-
|
|
3
|
-
[](https://npm.sinequa.com/@sinequa/atomic-angular)
|
|
4
|
-
[](https://angular.dev)
|
|
5
|
-
[](https://www.typescriptlang.org/)
|
|
6
|
-
|
|
7
|
-
> A comprehensive Angular component library and design system for building modern Sinequa search applications.
|
|
8
|
-
|
|
9
|
-
## Overview
|
|
10
|
-
|
|
11
|
-
**@sinequa/atomic-angular** provides a complete set of UI components, features, and utilities for building enterprise-grade search applications powered by Sinequa. Built with Angular 20+ and modern web standards, it offers a consistent, accessible, and themeable framework with TypeScript-first development experience.
|
|
12
|
-
|
|
13
|
-
## Installation
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
npm install @sinequa/atomic-angular
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
### Peer Dependencies
|
|
20
|
-
|
|
21
|
-
```json
|
|
22
|
-
{
|
|
23
|
-
"@angular/core": "^22.0.0",
|
|
24
|
-
"@angular/aria": "^22.0.0",
|
|
25
|
-
"@sinequa/galactik": "^2.0.0-next.1",
|
|
26
|
-
"@sinequa/atomic": ">=2.3.0"
|
|
27
|
-
}
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
> ℹ️ The peer dependency above targets the **2.x** line (Angular 22, pre-release). For the
|
|
31
|
-
> Angular 20 lines (1.x / 1.0.x), see the compatibility table below.
|
|
32
|
-
|
|
33
|
-
> See [`ARCHITECTURE.md`](../../ARCHITECTURE.md) for how this library relates to
|
|
34
|
-
> `@sinequa/galactik` (and the deprecated `@sinequa/ui`, which it no longer depends on).
|
|
35
|
-
|
|
36
|
-
## Versioning & Compatibility
|
|
37
|
-
|
|
38
|
-
`@sinequa/atomic-angular` is maintained across several **parallel version lines**, each
|
|
39
|
-
pinned to an Angular major and consumed by a specific product release. Pick the line that
|
|
40
|
-
matches the Angular version embedded in your product.
|
|
41
|
-
|
|
42
|
-
| Library line | Angular | Product release
|
|
43
|
-
|
|
44
|
-
| **1.0.x**
|
|
45
|
-
| **1.x**
|
|
46
|
-
| **2.x**
|
|
47
|
-
|
|
48
|
-
**How the lines work**
|
|
49
|
-
|
|
50
|
-
- **Each line is an independent version range.** A `1.0.x` patch and a `1.x` minor are
|
|
51
|
-
unrelated number spaces — upgrading within a line never crosses an Angular major.
|
|
52
|
-
- **`~1.0`** keeps you on patch releases of the 11.13 line (no minor jumps).
|
|
53
|
-
**`^1`** follows the active 1.x line (patches + minors, still Angular 20).
|
|
54
|
-
**`@next` / `^2`** is the Angular 22 line, for the upcoming product release.
|
|
55
|
-
- A fix relevant to several lines is applied to each supported line independently, so you
|
|
56
|
-
receive it on whichever line you track — without being forced onto a new Angular major.
|
|
57
|
-
|
|
58
|
-
## Features
|
|
59
|
-
|
|
60
|
-
### 🔐 Authentication & Authorization
|
|
61
|
-
|
|
62
|
-
- Complete authentication flows with SSO support
|
|
63
|
-
- Password management (expiry, forgotten, change)
|
|
64
|
-
- Route guards and access control
|
|
65
|
-
- Multi-language support (EN, FR, DE)
|
|
66
|
-
|
|
67
|
-
### 🔍 Advanced Search
|
|
68
|
-
|
|
69
|
-
- Powerful filter system with aggregations
|
|
70
|
-
- "Did You Mean" suggestions and autocomplete
|
|
71
|
-
- Recent and saved searches
|
|
72
|
-
- Bookmark and collection management
|
|
73
|
-
- Document preview and navigation
|
|
74
|
-
- Export functionality
|
|
75
|
-
|
|
76
|
-
### 🛠️ Developer Experience
|
|
77
|
-
|
|
78
|
-
- **TypeScript-first** with full type safety
|
|
79
|
-
- **Standalone components** (no NgModules required)
|
|
80
|
-
- **Signal-based reactivity** for better performance
|
|
81
|
-
- **Modern syntax**: @if, @for, @switch control flow
|
|
82
|
-
- **Tree-shakeable** for optimal bundle size
|
|
83
|
-
|
|
84
|
-
## Package Structure
|
|
85
|
-
|
|
86
|
-
### @sinequa/atomic-angular
|
|
87
|
-
|
|
88
|
-
```bash
|
|
89
|
-
components/ # Reusable UI components
|
|
90
|
-
├── backdrop/
|
|
91
|
-
├── document-locator/
|
|
92
|
-
├── navbar-tabs/
|
|
93
|
-
├── pagination/
|
|
94
|
-
└── ...
|
|
95
|
-
|
|
96
|
-
features/ # Feature modules
|
|
97
|
-
├── auth/ # Authentication flows
|
|
98
|
-
├── filters/ # Filter system
|
|
99
|
-
├── bookmarks/ # Bookmark management
|
|
100
|
-
├── collections/
|
|
101
|
-
└── ...
|
|
102
|
-
|
|
103
|
-
services/ # Business logic services
|
|
104
|
-
stores/ # State management
|
|
105
|
-
guards/ # Route guards
|
|
106
|
-
pipes/ # Custom pipes
|
|
107
|
-
utils/ # Utility functions
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
## Available Components
|
|
111
|
-
|
|
112
|
-
### Core Components
|
|
113
|
-
|
|
114
|
-
- `SearchInputComponent` - Advanced search input with autocomplete
|
|
115
|
-
- `FiltersComponent` - Dynamic filter system
|
|
116
|
-
- `PaginationComponent` - Result pagination
|
|
117
|
-
- `DocumentLocatorComponent` - Document navigation
|
|
118
|
-
- `PreviewComponent` - Document preview
|
|
119
|
-
- `BackdropComponent` - Backdrop overlay
|
|
120
|
-
- `NavbarTabsComponent` - Navigation tabs
|
|
121
|
-
- `NoResultComponent` - No results display
|
|
122
|
-
- `SortSelectorComponent` - Sort options selector
|
|
123
|
-
|
|
124
|
-
### Authentication
|
|
125
|
-
|
|
126
|
-
- `AuthPageComponent` - Authentication page, switches between the views below
|
|
127
|
-
- `SignInComponent` - User sign-in
|
|
128
|
-
- `ChangePasswordComponent` - Password change
|
|
129
|
-
- `ForgotPasswordComponent` - Password recovery
|
|
130
|
-
- `SignedOutComponent` - Post-logout confirmation
|
|
131
|
-
- `AuthGuard` - Route protection
|
|
132
|
-
- `PasswordExpiryGuard` - Password expiry detection
|
|
133
|
-
|
|
134
|
-
### Features
|
|
135
|
-
|
|
136
|
-
- Alerts management
|
|
137
|
-
- Bookmarks system
|
|
138
|
-
- Collections management
|
|
139
|
-
- Advanced search
|
|
140
|
-
- Export functionality
|
|
141
|
-
- Feedback system
|
|
142
|
-
- Labels management
|
|
143
|
-
- Recent searches
|
|
144
|
-
- Saved searches
|
|
145
|
-
|
|
146
|
-
## API Documentation
|
|
147
|
-
|
|
148
|
-
### Services
|
|
149
|
-
|
|
150
|
-
```typescript
|
|
151
|
-
// ApplicationService - Core application logic
|
|
152
|
-
import { ApplicationService } from '@sinequa/atomic-angular';
|
|
153
|
-
|
|
154
|
-
// AggregationsService - Filter management
|
|
155
|
-
import { AggregationsService } from '@sinequa/atomic-angular';
|
|
156
|
-
|
|
157
|
-
// AuthService - Authentication
|
|
158
|
-
import { AuthService } from '@sinequa/atomic-angular';
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
### Guards
|
|
162
|
-
|
|
163
|
-
```typescript
|
|
164
|
-
import { AuthGuard, PasswordExpiryGuard } from '@sinequa/atomic-angular';
|
|
165
|
-
|
|
166
|
-
const routes: Routes = [
|
|
167
|
-
{
|
|
168
|
-
path: 'search',
|
|
169
|
-
canActivate: [AuthGuard],
|
|
170
|
-
component: SearchComponent
|
|
171
|
-
},
|
|
172
|
-
{
|
|
173
|
-
path: 'profile',
|
|
174
|
-
canActivate: [AuthGuard, PasswordExpiryGuard],
|
|
175
|
-
component: ProfileComponent
|
|
176
|
-
}
|
|
177
|
-
];
|
|
178
|
-
```
|
|
179
|
-
|
|
180
|
-
## Changelog
|
|
181
|
-
|
|
182
|
-
### Recent Releases
|
|
183
|
-
|
|
184
|
-
**v0.3.8** (2025-12-18)
|
|
185
|
-
|
|
186
|
-
- Added chevron icon in document locator menu
|
|
187
|
-
- Improved component structure
|
|
188
|
-
|
|
189
|
-
**v0.3.7** (2025-12-17)
|
|
190
|
-
|
|
191
|
-
- Fixed parent selection in filters with `linkChildren`
|
|
192
|
-
- Enhanced selection state management
|
|
193
|
-
|
|
194
|
-
**v0.3.6** (2025-12-17)
|
|
195
|
-
|
|
196
|
-
- Enhanced "Did You Mean" component styling
|
|
197
|
-
- Added text truncation for long filter names
|
|
198
|
-
|
|
199
|
-
**v0.3.4** (2025-12-15)
|
|
200
|
-
|
|
201
|
-
- Complete password management flows
|
|
202
|
-
- Added `PasswordExpiryGuard`
|
|
203
|
-
|
|
204
|
-
**v0.3.0** (2025-12-09) - Major Release
|
|
205
|
-
|
|
206
|
-
- New Chapsvision theme system
|
|
207
|
-
- Standardized icon components
|
|
208
|
-
- New `InputGroup` architecture
|
|
209
|
-
- Badge API changes
|
|
210
|
-
|
|
211
|
-
## Migration Guide
|
|
212
|
-
|
|
213
|
-
### Migrating from 0.2.x to 0.3.0+
|
|
214
|
-
|
|
215
|
-
#### Authentication
|
|
216
|
-
|
|
217
|
-
Route `/login` and `/logout` to `AuthPageComponent` rather than to `SignInComponent` directly — it is what switches between the sign-in, change-password, forgot-password and signed-out views.
|
|
218
|
-
|
|
219
|
-
```typescript
|
|
220
|
-
// Before
|
|
221
|
-
{ path: 'login', component: SignInComponent }
|
|
222
|
-
// After
|
|
223
|
-
{ path: 'login', component: AuthPageComponent }
|
|
224
|
-
```
|
|
225
|
-
|
|
226
|
-
## Browser Support
|
|
227
|
-
|
|
228
|
-
- Chrome (latest)
|
|
229
|
-
- Firefox (latest)
|
|
230
|
-
- Safari (latest)
|
|
231
|
-
- Edge (latest)
|
|
232
|
-
|
|
233
|
-
## Requirements
|
|
234
|
-
|
|
235
|
-
- Angular 22+
|
|
236
|
-
- TypeScript 6.0+
|
|
237
|
-
- Node.js 22.22+
|
|
238
|
-
|
|
239
|
-
## License
|
|
240
|
-
|
|
241
|
-
Proprietary - Copyright © 2025 Sinequa. All rights reserved.
|
|
242
|
-
|
|
243
|
-
## Support
|
|
244
|
-
|
|
245
|
-
- 📧 Email: [support@sinequa.com](mailto:support@sinequa.com)
|
|
246
|
-
- 📚 Documentation: [sinequa.com/docs](https://sinequa.com/docs)
|
|
247
|
-
- 🌐 Website: [www.sinequa.com](https://www.sinequa.com)
|
|
248
|
-
|
|
249
|
-
**Built by the Sinequa Team**
|
|
1
|
+
# @sinequa/atomic-angular
|
|
2
|
+
|
|
3
|
+
[](https://npm.sinequa.com/@sinequa/atomic-angular)
|
|
4
|
+
[](https://angular.dev)
|
|
5
|
+
[](https://www.typescriptlang.org/)
|
|
6
|
+
|
|
7
|
+
> A comprehensive Angular component library and design system for building modern Sinequa search applications.
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
|
|
11
|
+
**@sinequa/atomic-angular** provides a complete set of UI components, features, and utilities for building enterprise-grade search applications powered by Sinequa. Built with Angular 20+ and modern web standards, it offers a consistent, accessible, and themeable framework with TypeScript-first development experience.
|
|
12
|
+
|
|
13
|
+
## Installation
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm install @sinequa/atomic-angular
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
### Peer Dependencies
|
|
20
|
+
|
|
21
|
+
```json
|
|
22
|
+
{
|
|
23
|
+
"@angular/core": "^22.0.0",
|
|
24
|
+
"@angular/aria": "^22.0.0",
|
|
25
|
+
"@sinequa/galactik": "^2.0.0-next.1",
|
|
26
|
+
"@sinequa/atomic": ">=2.3.0"
|
|
27
|
+
}
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
> ℹ️ The peer dependency above targets the **2.x** line (Angular 22, pre-release). For the
|
|
31
|
+
> Angular 20 lines (1.x / 1.0.x), see the compatibility table below.
|
|
32
|
+
|
|
33
|
+
> See [`ARCHITECTURE.md`](../../ARCHITECTURE.md) for how this library relates to
|
|
34
|
+
> `@sinequa/galactik` (and the deprecated `@sinequa/ui`, which it no longer depends on).
|
|
35
|
+
|
|
36
|
+
## Versioning & Compatibility
|
|
37
|
+
|
|
38
|
+
`@sinequa/atomic-angular` is maintained across several **parallel version lines**, each
|
|
39
|
+
pinned to an Angular major and consumed by a specific product release. Pick the line that
|
|
40
|
+
matches the Angular version embedded in your product.
|
|
41
|
+
|
|
42
|
+
| Library line | Angular | Product release | Status | Install |
|
|
43
|
+
| ------------ | ------- | ---------------- | ------------------------------------------ | ------------------------------------ |
|
|
44
|
+
| **1.0.x** | 20 | 11.13.0 | 🩹 Maintenance — critical & bug fixes only | `npm i @sinequa/atomic-angular@~1.0` |
|
|
45
|
+
| **1.x** | 20 | 11.14.0 | ✅ Active — fixes + new features | `npm i @sinequa/atomic-angular@^1` |
|
|
46
|
+
| **2.x** | 22 | _future release_ | 🚧 Upcoming — pre-release | `npm i @sinequa/atomic-angular@next` |
|
|
47
|
+
|
|
48
|
+
**How the lines work**
|
|
49
|
+
|
|
50
|
+
- **Each line is an independent version range.** A `1.0.x` patch and a `1.x` minor are
|
|
51
|
+
unrelated number spaces — upgrading within a line never crosses an Angular major.
|
|
52
|
+
- **`~1.0`** keeps you on patch releases of the 11.13 line (no minor jumps).
|
|
53
|
+
**`^1`** follows the active 1.x line (patches + minors, still Angular 20).
|
|
54
|
+
**`@next` / `^2`** is the Angular 22 line, for the upcoming product release.
|
|
55
|
+
- A fix relevant to several lines is applied to each supported line independently, so you
|
|
56
|
+
receive it on whichever line you track — without being forced onto a new Angular major.
|
|
57
|
+
|
|
58
|
+
## Features
|
|
59
|
+
|
|
60
|
+
### 🔐 Authentication & Authorization
|
|
61
|
+
|
|
62
|
+
- Complete authentication flows with SSO support
|
|
63
|
+
- Password management (expiry, forgotten, change)
|
|
64
|
+
- Route guards and access control
|
|
65
|
+
- Multi-language support (EN, FR, DE)
|
|
66
|
+
|
|
67
|
+
### 🔍 Advanced Search
|
|
68
|
+
|
|
69
|
+
- Powerful filter system with aggregations
|
|
70
|
+
- "Did You Mean" suggestions and autocomplete
|
|
71
|
+
- Recent and saved searches
|
|
72
|
+
- Bookmark and collection management
|
|
73
|
+
- Document preview and navigation
|
|
74
|
+
- Export functionality
|
|
75
|
+
|
|
76
|
+
### 🛠️ Developer Experience
|
|
77
|
+
|
|
78
|
+
- **TypeScript-first** with full type safety
|
|
79
|
+
- **Standalone components** (no NgModules required)
|
|
80
|
+
- **Signal-based reactivity** for better performance
|
|
81
|
+
- **Modern syntax**: @if, @for, @switch control flow
|
|
82
|
+
- **Tree-shakeable** for optimal bundle size
|
|
83
|
+
|
|
84
|
+
## Package Structure
|
|
85
|
+
|
|
86
|
+
### @sinequa/atomic-angular
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
components/ # Reusable UI components
|
|
90
|
+
├── backdrop/
|
|
91
|
+
├── document-locator/
|
|
92
|
+
├── navbar-tabs/
|
|
93
|
+
├── pagination/
|
|
94
|
+
└── ...
|
|
95
|
+
|
|
96
|
+
features/ # Feature modules
|
|
97
|
+
├── auth/ # Authentication flows
|
|
98
|
+
├── filters/ # Filter system
|
|
99
|
+
├── bookmarks/ # Bookmark management
|
|
100
|
+
├── collections/
|
|
101
|
+
└── ...
|
|
102
|
+
|
|
103
|
+
services/ # Business logic services
|
|
104
|
+
stores/ # State management
|
|
105
|
+
guards/ # Route guards
|
|
106
|
+
pipes/ # Custom pipes
|
|
107
|
+
utils/ # Utility functions
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
## Available Components
|
|
111
|
+
|
|
112
|
+
### Core Components
|
|
113
|
+
|
|
114
|
+
- `SearchInputComponent` - Advanced search input with autocomplete
|
|
115
|
+
- `FiltersComponent` - Dynamic filter system
|
|
116
|
+
- `PaginationComponent` - Result pagination
|
|
117
|
+
- `DocumentLocatorComponent` - Document navigation
|
|
118
|
+
- `PreviewComponent` - Document preview
|
|
119
|
+
- `BackdropComponent` - Backdrop overlay
|
|
120
|
+
- `NavbarTabsComponent` - Navigation tabs
|
|
121
|
+
- `NoResultComponent` - No results display
|
|
122
|
+
- `SortSelectorComponent` - Sort options selector
|
|
123
|
+
|
|
124
|
+
### Authentication
|
|
125
|
+
|
|
126
|
+
- `AuthPageComponent` - Authentication page, switches between the views below
|
|
127
|
+
- `SignInComponent` - User sign-in
|
|
128
|
+
- `ChangePasswordComponent` - Password change
|
|
129
|
+
- `ForgotPasswordComponent` - Password recovery
|
|
130
|
+
- `SignedOutComponent` - Post-logout confirmation
|
|
131
|
+
- `AuthGuard` - Route protection
|
|
132
|
+
- `PasswordExpiryGuard` - Password expiry detection
|
|
133
|
+
|
|
134
|
+
### Features
|
|
135
|
+
|
|
136
|
+
- Alerts management
|
|
137
|
+
- Bookmarks system
|
|
138
|
+
- Collections management
|
|
139
|
+
- Advanced search
|
|
140
|
+
- Export functionality
|
|
141
|
+
- Feedback system
|
|
142
|
+
- Labels management
|
|
143
|
+
- Recent searches
|
|
144
|
+
- Saved searches
|
|
145
|
+
|
|
146
|
+
## API Documentation
|
|
147
|
+
|
|
148
|
+
### Services
|
|
149
|
+
|
|
150
|
+
```typescript
|
|
151
|
+
// ApplicationService - Core application logic
|
|
152
|
+
import { ApplicationService } from '@sinequa/atomic-angular';
|
|
153
|
+
|
|
154
|
+
// AggregationsService - Filter management
|
|
155
|
+
import { AggregationsService } from '@sinequa/atomic-angular';
|
|
156
|
+
|
|
157
|
+
// AuthService - Authentication
|
|
158
|
+
import { AuthService } from '@sinequa/atomic-angular';
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
### Guards
|
|
162
|
+
|
|
163
|
+
```typescript
|
|
164
|
+
import { AuthGuard, PasswordExpiryGuard } from '@sinequa/atomic-angular';
|
|
165
|
+
|
|
166
|
+
const routes: Routes = [
|
|
167
|
+
{
|
|
168
|
+
path: 'search',
|
|
169
|
+
canActivate: [AuthGuard],
|
|
170
|
+
component: SearchComponent
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
path: 'profile',
|
|
174
|
+
canActivate: [AuthGuard, PasswordExpiryGuard],
|
|
175
|
+
component: ProfileComponent
|
|
176
|
+
}
|
|
177
|
+
];
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
## Changelog
|
|
181
|
+
|
|
182
|
+
### Recent Releases
|
|
183
|
+
|
|
184
|
+
**v0.3.8** (2025-12-18)
|
|
185
|
+
|
|
186
|
+
- Added chevron icon in document locator menu
|
|
187
|
+
- Improved component structure
|
|
188
|
+
|
|
189
|
+
**v0.3.7** (2025-12-17)
|
|
190
|
+
|
|
191
|
+
- Fixed parent selection in filters with `linkChildren`
|
|
192
|
+
- Enhanced selection state management
|
|
193
|
+
|
|
194
|
+
**v0.3.6** (2025-12-17)
|
|
195
|
+
|
|
196
|
+
- Enhanced "Did You Mean" component styling
|
|
197
|
+
- Added text truncation for long filter names
|
|
198
|
+
|
|
199
|
+
**v0.3.4** (2025-12-15)
|
|
200
|
+
|
|
201
|
+
- Complete password management flows
|
|
202
|
+
- Added `PasswordExpiryGuard`
|
|
203
|
+
|
|
204
|
+
**v0.3.0** (2025-12-09) - Major Release
|
|
205
|
+
|
|
206
|
+
- New Chapsvision theme system
|
|
207
|
+
- Standardized icon components
|
|
208
|
+
- New `InputGroup` architecture
|
|
209
|
+
- Badge API changes
|
|
210
|
+
|
|
211
|
+
## Migration Guide
|
|
212
|
+
|
|
213
|
+
### Migrating from 0.2.x to 0.3.0+
|
|
214
|
+
|
|
215
|
+
#### Authentication
|
|
216
|
+
|
|
217
|
+
Route `/login` and `/logout` to `AuthPageComponent` rather than to `SignInComponent` directly — it is what switches between the sign-in, change-password, forgot-password and signed-out views.
|
|
218
|
+
|
|
219
|
+
```typescript
|
|
220
|
+
// Before
|
|
221
|
+
{ path: 'login', component: SignInComponent }
|
|
222
|
+
// After
|
|
223
|
+
{ path: 'login', component: AuthPageComponent }
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
## Browser Support
|
|
227
|
+
|
|
228
|
+
- Chrome (latest)
|
|
229
|
+
- Firefox (latest)
|
|
230
|
+
- Safari (latest)
|
|
231
|
+
- Edge (latest)
|
|
232
|
+
|
|
233
|
+
## Requirements
|
|
234
|
+
|
|
235
|
+
- Angular 22+
|
|
236
|
+
- TypeScript 6.0+
|
|
237
|
+
- Node.js 22.22+
|
|
238
|
+
|
|
239
|
+
## License
|
|
240
|
+
|
|
241
|
+
Proprietary - Copyright © 2025 Sinequa. All rights reserved.
|
|
242
|
+
|
|
243
|
+
## Support
|
|
244
|
+
|
|
245
|
+
- 📧 Email: [support@sinequa.com](mailto:support@sinequa.com)
|
|
246
|
+
- 📚 Documentation: [sinequa.com/docs](https://sinequa.com/docs)
|
|
247
|
+
- 🌐 Website: [www.sinequa.com](https://www.sinequa.com)
|
|
248
|
+
|
|
249
|
+
**Built by the Sinequa Team**
|
|
@@ -220,7 +220,17 @@
|
|
|
220
220
|
"mention": {
|
|
221
221
|
"documentCount": "{count, plural, one {{count} Dokument} other {{count} Dokumente}}",
|
|
222
222
|
"loadError": "Arbeitsbereiche konnten nicht geladen werden.",
|
|
223
|
-
"loading": "Wird geladen…"
|
|
223
|
+
"loading": "Wird geladen…",
|
|
224
|
+
"newWorkspace": "Neuer Arbeitsbereich",
|
|
225
|
+
"empty": "Noch kein Arbeitsbereich",
|
|
226
|
+
"noMatch": "Kein Arbeitsbereich entspricht Ihrer Suche",
|
|
227
|
+
"searchPlaceholder": "Arbeitsbereich suchen...",
|
|
228
|
+
"tabAll": "Alle",
|
|
229
|
+
"tabOwned": "Eigene",
|
|
230
|
+
"tabShared": "Geteilt",
|
|
231
|
+
"tabsLabel": "Kategorien",
|
|
232
|
+
"selectAll": "Alle auswählen",
|
|
233
|
+
"unselectAll": "Auswahl aufheben"
|
|
224
234
|
},
|
|
225
235
|
"format": {
|
|
226
236
|
"added": "Hinzugefügt {relative}",
|
|
@@ -220,7 +220,17 @@
|
|
|
220
220
|
"mention": {
|
|
221
221
|
"documentCount": "{count, plural, one {{count} document} other {{count} documents}}",
|
|
222
222
|
"loadError": "Couldn’t load workspaces.",
|
|
223
|
-
"loading": "Loading…"
|
|
223
|
+
"loading": "Loading…",
|
|
224
|
+
"newWorkspace": "New workspace",
|
|
225
|
+
"empty": "No workspace yet",
|
|
226
|
+
"noMatch": "No workspace matches your search",
|
|
227
|
+
"searchPlaceholder": "Search workspace...",
|
|
228
|
+
"tabAll": "All",
|
|
229
|
+
"tabOwned": "Owned",
|
|
230
|
+
"tabShared": "Shared",
|
|
231
|
+
"tabsLabel": "Categories",
|
|
232
|
+
"selectAll": "Select all",
|
|
233
|
+
"unselectAll": "Unselect all"
|
|
224
234
|
},
|
|
225
235
|
"format": {
|
|
226
236
|
"added": "Added {relative}",
|
|
@@ -220,7 +220,17 @@
|
|
|
220
220
|
"mention": {
|
|
221
221
|
"documentCount": "{count, plural, one {{count} document} many {{count} documents} other {{count} documents}}",
|
|
222
222
|
"loadError": "Impossible de charger les espaces de travail.",
|
|
223
|
-
"loading": "Chargement…"
|
|
223
|
+
"loading": "Chargement…",
|
|
224
|
+
"newWorkspace": "Nouvel espace de travail",
|
|
225
|
+
"empty": "Aucun espace de travail pour le moment",
|
|
226
|
+
"noMatch": "Aucun espace de travail ne correspond à votre recherche",
|
|
227
|
+
"searchPlaceholder": "Rechercher un espace de travail...",
|
|
228
|
+
"tabAll": "Tous",
|
|
229
|
+
"tabOwned": "Les miens",
|
|
230
|
+
"tabShared": "Partagés",
|
|
231
|
+
"tabsLabel": "Catégories",
|
|
232
|
+
"selectAll": "Tout sélectionner",
|
|
233
|
+
"unselectAll": "Tout désélectionner"
|
|
224
234
|
},
|
|
225
235
|
"format": {
|
|
226
236
|
"added": "Ajouté {relative}",
|
|
@@ -220,7 +220,17 @@
|
|
|
220
220
|
"mention": {
|
|
221
221
|
"documentCount": "{count, plural, other {{count} 件のドキュメント}}",
|
|
222
222
|
"loadError": "ワークスペースを読み込めませんでした。",
|
|
223
|
-
"loading": "読み込んでいます…"
|
|
223
|
+
"loading": "読み込んでいます…",
|
|
224
|
+
"newWorkspace": "新しいワークスペース",
|
|
225
|
+
"empty": "ワークスペースはまだありません",
|
|
226
|
+
"noMatch": "検索に一致するワークスペースはありません",
|
|
227
|
+
"searchPlaceholder": "ワークスペースを検索...",
|
|
228
|
+
"tabAll": "すべて",
|
|
229
|
+
"tabOwned": "自分の",
|
|
230
|
+
"tabShared": "共有",
|
|
231
|
+
"tabsLabel": "カテゴリ",
|
|
232
|
+
"selectAll": "すべて選択",
|
|
233
|
+
"unselectAll": "選択を解除"
|
|
224
234
|
},
|
|
225
235
|
"format": {
|
|
226
236
|
"added": "{relative}に追加",
|