@quadrel-enterprise-ui/framework 20.11.2-beta.150.1 → 20.12.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/index.d.ts CHANGED
@@ -3,7 +3,7 @@ import { Observable, BehaviorSubject, Subject, Subscription, ReplaySubject } fro
3
3
  import * as i11 from '@angular/cdk/dialog';
4
4
  import { DialogConfig, DialogRef } from '@angular/cdk/dialog';
5
5
  import * as i0 from '@angular/core';
6
- import { InjectionToken, EventEmitter, OnInit, PipeTransform, TemplateRef, AfterContentInit, AfterViewInit, OnDestroy, OnChanges, AfterViewChecked, SimpleChanges, AfterContentChecked, Injector, ElementRef, QueryList, DoCheck, NgIterable, ViewContainerRef, TrackByFunction, Type, DestroyRef, ModuleWithProviders } from '@angular/core';
6
+ import { InjectionToken, EventEmitter, OnInit, PipeTransform, TemplateRef, AfterContentInit, AfterViewInit, OnDestroy, DestroyRef, OnChanges, AfterViewChecked, SimpleChanges, AfterContentChecked, Injector, ElementRef, QueryList, DoCheck, NgIterable, ViewContainerRef, TrackByFunction, Type, ModuleWithProviders } from '@angular/core';
7
7
  import { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent } from '@angular/common/http';
8
8
  import * as i2 from '@angular/common';
9
9
  import { Moment } from 'moment/moment';
@@ -13,6 +13,7 @@ import * as i9 from '@ngx-translate/core';
13
13
  import { TranslateService } from '@ngx-translate/core';
14
14
  import { OverlayRef, OverlayPositionBuilder, Overlay, ConnectedPosition } from '@angular/cdk/overlay';
15
15
  import * as i4 from '@angular/router';
16
+ import { Params } from '@angular/router';
16
17
  import { Highlightable, ActiveDescendantKeyManager } from '@angular/cdk/a11y';
17
18
  import * as i39 from 'ngx-editor';
18
19
  import { Editor, Toolbar } from 'ngx-editor';
@@ -957,16 +958,6 @@ declare enum QdCalendarMode {
957
958
  MonthPicker = 2
958
959
  }
959
960
 
960
- declare class QdViewportAdaptiveDirective {
961
- static ɵfac: i0.ɵɵFactoryDeclaration<QdViewportAdaptiveDirective, never>;
962
- static ɵdir: i0.ɵɵDirectiveDeclaration<QdViewportAdaptiveDirective, "[qdViewportAdaptive]", never, {}, {}, never, never, false, never>;
963
- }
964
-
965
- declare class QdDisabledDirective {
966
- static ɵfac: i0.ɵɵFactoryDeclaration<QdDisabledDirective, never>;
967
- static ɵdir: i0.ɵɵDirectiveDeclaration<QdDisabledDirective, "[qdDisabled]", never, {}, {}, never, never, false, never>;
968
- }
969
-
970
961
  /**
971
962
  * Represents the QdAppEnvironment configuration.
972
963
  */
@@ -991,27 +982,9 @@ type QdAppEnvironment = {
991
982
  disableBackendNotifications?: boolean;
992
983
  };
993
984
 
994
- declare const QD_SAFE_BOTTOM_OFFSET: InjectionToken<BehaviorSubject<number>>;
995
-
996
- type i18n = string;
997
- interface QdTranslatable {
998
- /**
999
- * @description Defines the translation key
1000
- */
1001
- i18n: i18n;
1002
- /**
1003
- * @description Alternative to i18n translations, used when translations are provided from the backend
1004
- */
1005
- translation?: QdTranslation;
1006
- }
1007
- /**
1008
- * @description Translations originating from the backend
1009
- */
1010
- interface QdTranslation {
1011
- de: string;
1012
- fr: string;
1013
- it: string;
1014
- en: string;
985
+ declare class QdDisabledDirective {
986
+ static ɵfac: i0.ɵɵFactoryDeclaration<QdDisabledDirective, never>;
987
+ static ɵdir: i0.ɵɵDirectiveDeclaration<QdDisabledDirective, "[qdDisabled]", never, {}, {}, never, never, false, never>;
1015
988
  }
1016
989
 
1017
990
  declare class QdFileSizePipe$1 implements PipeTransform {
@@ -1027,8 +1000,6 @@ declare class QdPlaceholderPipe implements PipeTransform {
1027
1000
  static ɵpipe: i0.ɵɵPipeDeclaration<QdPlaceholderPipe, "placeholder", false>;
1028
1001
  }
1029
1002
 
1030
- declare const QD_POPOVER_TOP_FIRST: InjectionToken<boolean>;
1031
-
1032
1003
  declare class QdProjectionGuardComponent implements AfterContentInit, AfterViewInit {
1033
1004
  private elementRef;
1034
1005
  isDisabled: boolean;
@@ -1045,31 +1016,63 @@ declare class QdRwdDisabledDirective {
1045
1016
  static ɵdir: i0.ɵɵDirectiveDeclaration<QdRwdDisabledDirective, "[qdRwdDisabled]", never, {}, {}, never, never, false, never>;
1046
1017
  }
1047
1018
 
1048
- declare class QdNumberInputService {
1049
- private _locale;
1050
- private _decimalSeparator;
1051
- private _groupSeparator;
1052
- private readonly localeService;
1053
- private readonly destroyRef;
1054
- readonly ambiguityHintKeyDot = "i18n.qd.input.number.ambiguousHint.dot";
1055
- readonly ambiguityHintKeyComma = "i18n.qd.input.number.ambiguousHint.comma";
1056
- readonly invalidCharactersErrorKeyComma = "i18n.qd.input.number.invalidCharacters.comma";
1057
- readonly invalidCharactersErrorKeyDot = "i18n.qd.input.number.invalidCharacters.dot";
1058
- get invalidCharactersErrorKey(): string;
1059
- get decimalSeparator(): string;
1060
- get groupSeparator(): string;
1061
- constructor();
1062
- detectSeparators(): void;
1063
- isValidNumber(value: string): boolean;
1064
- private detectSeparatorsForLocale;
1065
- filterValue(value: string): string;
1066
- parseValue(value: string): number | string;
1067
- isAmbiguous(value: QdInputValue): boolean;
1068
- getAmbiguityHintKey(value: QdInputValue): string;
1069
- formatNumberForViewonly(value: QdInputValue): string;
1070
- formatValueForDisplay(value: QdInputValue): string;
1071
- static ɵfac: i0.ɵɵFactoryDeclaration<QdNumberInputService, never>;
1072
- static ɵprov: i0.ɵɵInjectableDeclaration<QdNumberInputService>;
1019
+ /**
1020
+ * QdTooltipAtIntersectionDirective provides a tooltip. This will be triggered if the content is intersected.
1021
+ *
1022
+ * * Selector: [qdTooltipAtIntersection]
1023
+ * * Target Selector: .qd-intersection-target
1024
+ *
1025
+ * The IntersectionObserver API is used for the implementation.
1026
+ * * @see https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver
1027
+ *
1028
+ * * Note: The intersection of the target is calculated by the IntersectionObserver only once, initially (can be extended later if required). After that it will be unsubscribed immediately.
1029
+ * */
1030
+ declare class QdTooltipAtIntersectionDirective implements AfterViewInit, OnDestroy {
1031
+ private _host;
1032
+ private _positionBuilder;
1033
+ private _overlay;
1034
+ private _overlayRef;
1035
+ private _target;
1036
+ private _observer$;
1037
+ private _isIntersected;
1038
+ private _destroyed$;
1039
+ ngAfterViewInit(): void;
1040
+ ngOnDestroy(): void;
1041
+ private setTarget;
1042
+ private observeTarget;
1043
+ private _setStyles;
1044
+ private createOverlay;
1045
+ private subscribeShow;
1046
+ private subscribeHide;
1047
+ private getContent;
1048
+ static ɵfac: i0.ɵɵFactoryDeclaration<QdTooltipAtIntersectionDirective, never>;
1049
+ static ɵdir: i0.ɵɵDirectiveDeclaration<QdTooltipAtIntersectionDirective, "[qdTooltipAtIntersection]", never, {}, {}, never, never, false, never>;
1050
+ }
1051
+
1052
+ type i18n = string;
1053
+ interface QdTranslatable {
1054
+ /**
1055
+ * @description Defines the translation key
1056
+ */
1057
+ i18n: i18n;
1058
+ /**
1059
+ * @description Alternative to i18n translations, used when translations are provided from the backend
1060
+ */
1061
+ translation?: QdTranslation;
1062
+ }
1063
+ /**
1064
+ * @description Translations originating from the backend
1065
+ */
1066
+ interface QdTranslation {
1067
+ de: string;
1068
+ fr: string;
1069
+ it: string;
1070
+ en: string;
1071
+ }
1072
+
1073
+ declare class QdVisuallyHiddenDirective {
1074
+ static ɵfac: i0.ɵɵFactoryDeclaration<QdVisuallyHiddenDirective, never>;
1075
+ static ɵdir: i0.ɵɵDirectiveDeclaration<QdVisuallyHiddenDirective, "[qdVisuallyHidden]", never, {}, {}, never, never, false, never>;
1073
1076
  }
1074
1077
 
1075
1078
  type QdPushEventName = 'RESOURCE_CREATED' | 'RESOURCE_UPDATED' | 'RESOURCE_DELETED';
@@ -1188,6 +1191,198 @@ declare class QdPushEventsService {
1188
1191
  static ɵprov: i0.ɵɵInjectableDeclaration<QdPushEventsService>;
1189
1192
  }
1190
1193
 
1194
+ /**
1195
+ * Framework-wide funnel for syncing application state with the URL `?key=value` query string.
1196
+ *
1197
+ * Several Quadrel features mirror their state to the URL — the table's sort and pagination today,
1198
+ * filter, search, and `qd-page-tabs` over time. Without coordination they each call
1199
+ * `router.navigate(...)` directly, which produces two failure modes:
1200
+ *
1201
+ * 1. **Race**: two navigates issued in the same JS turn cancel each other. Only the last writer
1202
+ * wins; the URL silently loses the cancelled feature's params.
1203
+ * 2. **History pollution**: a single user action that changes two features (e.g. clicking a sort
1204
+ * header resets the page index) ends up as two history entries. Browser-back only undoes one.
1205
+ *
1206
+ * `QdRouterQueryParamHubService` is the single funnel through which features run their query-param
1207
+ * reads and writes. It does three jobs:
1208
+ *
1209
+ * - **Ownership** — `claim()` / `release()` enforce one writer per param key, app-wide.
1210
+ * - **Shared reads** — `queryParams()` and `snapshotQueryParam()` expose the route state without
1211
+ * each feature needing its own `ActivatedRoute` subscription.
1212
+ * - **Coordinated writes** — `write()` buffers param updates within a microtask and serializes
1213
+ * navigations via a Promise chain, so two writes in the same JS turn become one history entry
1214
+ * and concurrent writes never race.
1215
+ *
1216
+ * The hub is feature-agnostic. Per-feature adapters (e.g. `QdTableSortRouterConnectorService`)
1217
+ * own their parsing/serialization and delegate the URL plumbing to the hub.
1218
+ *
1219
+ * ### Usage
1220
+ *
1221
+ * ```ts
1222
+ * @Injectable()
1223
+ * export class FilterRouterAdapterService {
1224
+ * private readonly _hub = inject(QdRouterQueryParamHubService);
1225
+ * private readonly _destroyRef = inject(DestroyRef);
1226
+ *
1227
+ * connect(state$: Observable<FilterState>, dispatch: (state: FilterState) => void): void {
1228
+ * if (!this._hub.isAvailable()) return;
1229
+ * if (!this._hub.claim(['filter'], this, this._destroyRef)) return;
1230
+ *
1231
+ * this._hub
1232
+ * .queryParams()
1233
+ * .pipe(takeUntilDestroyed(this._destroyRef))
1234
+ * .subscribe(params => dispatch(parseFilter(params['filter'])));
1235
+ *
1236
+ * state$
1237
+ * .pipe(takeUntilDestroyed(this._destroyRef))
1238
+ * .subscribe(state => this._hub.write({ filter: serializeFilter(state) }, false));
1239
+ * }
1240
+ * }
1241
+ * ```
1242
+ */
1243
+ declare class QdRouterQueryParamHubService {
1244
+ /**
1245
+ * Replays whenever the router has finished a navigation (`NavigationEnd`, `NavigationCancel`
1246
+ * or `NavigationError` — every event that ends a navigation, regardless of outcome).
1247
+ * Adapters that want to delay a write until any in-flight navigation has settled can take(1)
1248
+ * on this stream before calling `write()`.
1249
+ *
1250
+ * Late subscribers receive the most recent settling event immediately, so an adapter that
1251
+ * mounts after the initial route navigation can observe the route as already-settled. The
1252
+ * first replayed tick may represent that initial route navigation rather than a user-driven
1253
+ * settling event — adapters that need to distinguish "the route just changed" should compare
1254
+ * `ActivatedRoute.snapshot` themselves.
1255
+ *
1256
+ * **When the hub is unavailable** (no `Router` / `ActivatedRoute` in the injector — see
1257
+ * `isAvailable()`) this observable never emits. Adapters that compose `navigationSettled$`
1258
+ * via operators like `switchMap` or `concat` must guard with `isAvailable()` first, otherwise
1259
+ * their pipelines hang silently.
1260
+ */
1261
+ readonly navigationSettled$: Observable<void>;
1262
+ private readonly _router;
1263
+ private readonly _activatedRoute;
1264
+ private readonly _destroyRef;
1265
+ private readonly _ownership;
1266
+ private readonly _destroyClaims;
1267
+ private readonly _navigationSettledSubject;
1268
+ private _pendingParams;
1269
+ private _pendingReplaceUrl;
1270
+ private _flushScheduled;
1271
+ private _navigationChain;
1272
+ constructor();
1273
+ /**
1274
+ * Returns whether the hub can sync at all. False when the consuming injector has neither a
1275
+ * `Router` nor an `ActivatedRoute` available — for example in unit tests that omit
1276
+ * `RouterTestingModule`. Adapters should bail out early when this returns false.
1277
+ */
1278
+ isAvailable(): boolean;
1279
+ /**
1280
+ * Reserves exclusive write access to the given query-param keys for `owner`.
1281
+ *
1282
+ * The same `owner` may claim the same keys repeatedly without conflict — claims are idempotent
1283
+ * per owner. A different owner attempting to claim an already-claimed key fails: the hub logs
1284
+ * a `console.error` listing every contested key and returns `false`. The original owner keeps
1285
+ * the keys until it calls `release()` (or until its `DestroyRef` fires, if a `destroyRef` is
1286
+ * passed here).
1287
+ *
1288
+ * Atomicity: when the call fails, no keys are claimed, even partially. The hub checks every
1289
+ * requested key against the registry before mutating anything.
1290
+ *
1291
+ * **Pass `destroyRef` to opt into auto-release.** Without it, the hub keeps a strong reference
1292
+ * to `owner` until `release()` is called manually — a destroyed adapter that forgets to release
1293
+ * pins itself in the registry. Passing the adapter's `DestroyRef` registers an `onDestroy`
1294
+ * callback that releases exactly the keys claimed via this call (and any later claims that
1295
+ * reuse the same `destroyRef`), which is the recommended path.
1296
+ *
1297
+ * Each `destroyRef` releases only the keys it owns. If the same owner uses two different
1298
+ * `DestroyRef`s in two `claim()` calls, each fires independently and only releases its own
1299
+ * keys — keys claimed via the still-alive `destroyRef` stay reserved.
1300
+ *
1301
+ * Re-claiming with the same `destroyRef` appends to the same destroy listener — no duplicate
1302
+ * listeners are registered, even when the second claim names a different owner. Each appended
1303
+ * entry carries its own owner, so when the `destroyRef` fires the hub releases each entry's
1304
+ * keys against that entry's owner. An empty `keys` array is a no-op even when `destroyRef`
1305
+ * is provided: no listener is attached, so the hub does not pin a destroy hook that would
1306
+ * release nothing.
1307
+ *
1308
+ * @param keys The query-param keys this adapter wants to own (e.g. `['sort']`, `['page', 'size']`).
1309
+ * @param owner Stable identity of the caller — usually `this`. Used as the registry key.
1310
+ * @param destroyRef Optional. If provided, the hub releases the keys automatically when the
1311
+ * `DestroyRef` fires. Pass the adapter's `inject(DestroyRef)` to make leaks impossible.
1312
+ * @returns `true` if every requested key is now owned by `owner`. `false` if at least one key
1313
+ * was already owned by a different adapter; the registry is left untouched and `destroyRef`
1314
+ * is not registered.
1315
+ */
1316
+ claim(keys: readonly string[], owner: object, destroyRef?: DestroyRef): boolean;
1317
+ /**
1318
+ * Drops `owner`'s claim on the given keys. Keys not owned by `owner` are left untouched —
1319
+ * a foreign release call cannot steal another adapter's ownership.
1320
+ *
1321
+ * Adapters typically release in their `DestroyRef.onDestroy` callback so a destroyed component
1322
+ * frees its keys for the next adapter that mounts.
1323
+ */
1324
+ release(keys: readonly string[], owner: object): void;
1325
+ /**
1326
+ * Reactive view of `ActivatedRoute.queryParams`. Returns the empty observable if the hub is
1327
+ * not available (no Router/ActivatedRoute). Adapters subscribe here instead of injecting
1328
+ * `ActivatedRoute` themselves so the hub stays the single read funnel.
1329
+ *
1330
+ * The observable is hot — late subscribers receive the current params immediately.
1331
+ */
1332
+ queryParams(): Observable<Params>;
1333
+ /**
1334
+ * Synchronous read of a single query param from the latest `ActivatedRoute` snapshot.
1335
+ * Adapters use this to detect "URL already matches the desired state" and skip a redundant
1336
+ * `write()`.
1337
+ *
1338
+ * @returns The param value, or `undefined` if the param is missing or the hub is unavailable.
1339
+ */
1340
+ snapshotQueryParam(key: string): string | undefined;
1341
+ /**
1342
+ * Schedules a query-param update.
1343
+ *
1344
+ * Two coordination guarantees:
1345
+ *
1346
+ * - **Microtask batching** — every `write()` issued in the same JavaScript turn is merged into
1347
+ * a single `router.navigate(...)` call. A user action that changes two features at once
1348
+ * (e.g. sort change resets the page) becomes one history entry, not two. Note: batching is
1349
+ * per JS turn, not per logical user action — writes that fall into the next microtask after
1350
+ * a settled navigation produce a separate history entry, even when they belong to the same
1351
+ * conceptual gesture.
1352
+ * - **Serialized navigations** — flushes are chained on a Promise so a second flush only fires
1353
+ * after the previous `router.navigate` has settled. Concurrent navigates can therefore not
1354
+ * cancel each other. A rejected `router.navigate` (cancelled by a guard, redirected, or
1355
+ * failed) does not stop the chain — the next pending flush still runs. Rejections are not
1356
+ * logged here; consumers that need routing diagnostics should subscribe to `router.events`.
1357
+ *
1358
+ * Adapters are still responsible for skipping no-op writes (compare the desired value against
1359
+ * `snapshotQueryParam()` first), since the hub does not deduplicate identical values.
1360
+ *
1361
+ * Setting a param value to `undefined` removes the param from the URL via Angular Router's
1362
+ * `merge` behavior. Other params not mentioned in the call are preserved.
1363
+ *
1364
+ * @param params Partial map of query-param keys to their new values. Missing keys are not touched.
1365
+ * An empty object short-circuits and is a no-op.
1366
+ * @param replaceUrl `true` replaces the current history entry; `false` pushes a new entry.
1367
+ * When several `write()` calls in the same microtask disagree, `true` wins (so an initial
1368
+ * replace is preserved when a follow-up write would otherwise push). The escalation is
1369
+ * per-batch — after each flush the pending flag resets to `false`, so writes that arrive
1370
+ * in the next microtask start a fresh batch with their own `replaceUrl` argument.
1371
+ */
1372
+ write(params: Record<string, string | undefined>, replaceUrl: boolean): void;
1373
+ private replayCurrentRouterStateForLateSubscribers;
1374
+ private forwardSettlingRouterEventsToNavigationSettled;
1375
+ private registerAutoRelease;
1376
+ private flush;
1377
+ static ɵfac: i0.ɵɵFactoryDeclaration<QdRouterQueryParamHubService, never>;
1378
+ static ɵprov: i0.ɵɵInjectableDeclaration<QdRouterQueryParamHubService>;
1379
+ }
1380
+
1381
+ declare class QdViewportAdaptiveDirective {
1382
+ static ɵfac: i0.ɵɵFactoryDeclaration<QdViewportAdaptiveDirective, never>;
1383
+ static ɵdir: i0.ɵɵDirectiveDeclaration<QdViewportAdaptiveDirective, "[qdViewportAdaptive]", never, {}, {}, never, never, false, never>;
1384
+ }
1385
+
1191
1386
  /**
1192
1387
  * @description Defines the content.
1193
1388
  */
@@ -1218,39 +1413,6 @@ interface QdTooltip {
1218
1413
  hidden?: boolean;
1219
1414
  }
1220
1415
 
1221
- /**
1222
- * QdTooltipAtIntersectionDirective provides a tooltip. This will be triggered if the content is intersected.
1223
- *
1224
- * * Selector: [qdTooltipAtIntersection]
1225
- * * Target Selector: .qd-intersection-target
1226
- *
1227
- * The IntersectionObserver API is used for the implementation.
1228
- * * @see https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserver
1229
- *
1230
- * * Note: The intersection of the target is calculated by the IntersectionObserver only once, initially (can be extended later if required). After that it will be unsubscribed immediately.
1231
- * */
1232
- declare class QdTooltipAtIntersectionDirective implements AfterViewInit, OnDestroy {
1233
- private _host;
1234
- private _positionBuilder;
1235
- private _overlay;
1236
- private _overlayRef;
1237
- private _target;
1238
- private _observer$;
1239
- private _isIntersected;
1240
- private _destroyed$;
1241
- ngAfterViewInit(): void;
1242
- ngOnDestroy(): void;
1243
- private setTarget;
1244
- private observeTarget;
1245
- private _setStyles;
1246
- private createOverlay;
1247
- private subscribeShow;
1248
- private subscribeHide;
1249
- private getContent;
1250
- static ɵfac: i0.ɵɵFactoryDeclaration<QdTooltipAtIntersectionDirective, never>;
1251
- static ɵdir: i0.ɵɵDirectiveDeclaration<QdTooltipAtIntersectionDirective, "[qdTooltipAtIntersection]", never, {}, {}, never, never, false, never>;
1252
- }
1253
-
1254
1416
  declare class QdTooltipIconComponent {
1255
1417
  tooltip?: QdTooltip;
1256
1418
  get isVisible(): boolean;
@@ -1258,10 +1420,9 @@ declare class QdTooltipIconComponent {
1258
1420
  static ɵcmp: i0.ɵɵComponentDeclaration<QdTooltipIconComponent, "qd-tooltip-icon", never, { "tooltip": { "alias": "tooltip"; "required": false; }; }, {}, never, never, false, never>;
1259
1421
  }
1260
1422
 
1261
- declare class QdVisuallyHiddenDirective {
1262
- static ɵfac: i0.ɵɵFactoryDeclaration<QdVisuallyHiddenDirective, never>;
1263
- static ɵdir: i0.ɵɵDirectiveDeclaration<QdVisuallyHiddenDirective, "[qdVisuallyHidden]", never, {}, {}, never, never, false, never>;
1264
- }
1423
+ declare const QD_SAFE_BOTTOM_OFFSET: InjectionToken<BehaviorSubject<number>>;
1424
+
1425
+ declare const QD_POPOVER_TOP_FIRST: InjectionToken<boolean>;
1265
1426
 
1266
1427
  /**
1267
1428
  * The **QdChip** component can visualize different statuses.
@@ -3989,6 +4150,13 @@ interface QdTableConfig<T extends string> {
3989
4150
  * @description Activates a pagination with configurable available page sizes
3990
4151
  */
3991
4152
  pagination?: true | QdTablePagination;
4153
+ /**
4154
+ * @description Configures table-level sorting behavior. Per-column sortability
4155
+ * remains configured via the `sort` property on each column (see
4156
+ * `QdTableConfigColumnSort`). Pass `true` to enable defaults, or an object to
4157
+ * tune individual options such as `connectWithRouter`.
4158
+ */
4159
+ sort?: true | QdTableSort;
3992
4160
  /**
3993
4161
  * @description Sets an alternative view if no elements are available in QdTableData
3994
4162
  */
@@ -4215,6 +4383,59 @@ interface QdTablePagination {
4215
4383
  * * @default: false
4216
4384
  */
4217
4385
  hasFirstLastPageNavigation?: boolean;
4386
+ /**
4387
+ * @description Synchronizes pagination state with URL query params (`?page=1&size=25`),
4388
+ * making the table state shareable, bookmarkable and reload-safe.
4389
+ *
4390
+ * **Behavior**
4391
+ * - URL is 1-based, the internal store stays 0-based.
4392
+ * - Initial sync writes defaults via `replaceUrl: true` (no extra history entry).
4393
+ * - User-driven page/size changes push a regular history entry, so browser back works.
4394
+ * - Filter, search and sort reset the page to 1 — the URL syncs accordingly.
4395
+ *
4396
+ * **Validation**
4397
+ * - `page`: positive integer, otherwise falls back to 1.
4398
+ * - `size`: must be one of `pageSizes`; if `pageSizes` is omitted, an internal sanity range applies.
4399
+ * - Invalid values are ignored; the default is used instead.
4400
+ * - Out-of-range pages (e.g. `?page=99` with 5 pages) auto-correct via the resolver.
4401
+ *
4402
+ * **Limitations**
4403
+ * - Only one paginator per view may enable this. Additional paginators stay functional
4404
+ * but skip URL sync and log an error.
4405
+ * - Requires `Router` and `ActivatedRoute` to be available; otherwise the option is
4406
+ * silently ignored and the table paginates locally.
4407
+ * - Multi-table URL sync via param namespacing is not supported.
4408
+ *
4409
+ * * @default false — URL sync is opt-in. Plain `pagination: true` and pagination
4410
+ * objects without `connectWithRouter` stay URL-disconnected. Set
4411
+ * `connectWithRouter: true` to opt in.
4412
+ */
4413
+ connectWithRouter?: boolean;
4414
+ }
4415
+ /**
4416
+ * @description Configuration model for table-level sorting behavior. Configures
4417
+ * how table-wide sorting interacts with the application — for example whether
4418
+ * the active sort is mirrored to the URL.
4419
+ *
4420
+ * Per-column sortability is configured separately via `QdTableConfigColumnSort`
4421
+ * on each column.
4422
+ */
4423
+ interface QdTableSort {
4424
+ /**
4425
+ * @description When `true`, the active sort state is mirrored to the URL
4426
+ * query parameter `sort` and read back from the URL on table init. The data
4427
+ * resolver receives the URL-driven sort on its initial call so deep links
4428
+ * restore the sorted view exactly.
4429
+ *
4430
+ * Only one sort-router connection per page is allowed. Subsequent tables
4431
+ * with `connectWithRouter: true` stay URL-disconnected and a console error
4432
+ * is logged.
4433
+ *
4434
+ * @default false — URL sync is opt-in. Plain `sort: true`, an omitted
4435
+ * `sort` block, or a sort object without `connectWithRouter` stay
4436
+ * URL-disconnected. Set `connectWithRouter: true` to opt in.
4437
+ */
4438
+ connectWithRouter?: boolean;
4218
4439
  }
4219
4440
  /**
4220
4441
  * @description Configuration model for empty state view
@@ -6658,7 +6879,6 @@ declare class QdInputComponent implements OnInit, OnChanges, OnDestroy, ControlV
6658
6879
  private readonly resolverRegistry;
6659
6880
  private readonly controlContainer;
6660
6881
  private readonly eventBrokerService;
6661
- private readonly numberInputService;
6662
6882
  /**
6663
6883
  * The form control name can be assigned here if you want to use Reactive Forms.
6664
6884
  */
@@ -6729,11 +6949,9 @@ declare class QdInputComponent implements OnInit, OnChanges, OnDestroy, ControlV
6729
6949
  areUnitsOpened: boolean;
6730
6950
  get hasError(): boolean;
6731
6951
  get isErrorFromOutside(): boolean;
6732
- get isAmbiguousState(): boolean;
6733
6952
  inputElement: ElementRef;
6734
6953
  inputType: QdInputType;
6735
6954
  inputMode: QdInputMode;
6736
- htmlInputType: string;
6737
6955
  placeholder: string;
6738
6956
  label: string;
6739
6957
  hint: string;
@@ -6745,13 +6963,10 @@ declare class QdInputComponent implements OnInit, OnChanges, OnDestroy, ControlV
6745
6963
  control: AbstractControl | QdFormControl<any>;
6746
6964
  private _optionsResolver;
6747
6965
  private _subs;
6748
- private _isUserTyped;
6749
6966
  private _onChange;
6750
6967
  private _onTouch;
6751
6968
  get hasOnlyUnitsError(): boolean;
6752
6969
  get hasUnits(): boolean;
6753
- get ambiguityHintKey(): string;
6754
- get isAmbiguousInput(): boolean;
6755
6970
  get numberOfCharacters(): number;
6756
6971
  get hasMaxLength(): boolean;
6757
6972
  get maxLength(): number;
@@ -14400,6 +14615,7 @@ declare enum QdPaginatorDirection {
14400
14615
  declare class QdTablePaginatorComponent<T extends string> implements OnInit, OnDestroy {
14401
14616
  private readonly tableDataResolver;
14402
14617
  private readonly tableStoreService;
14618
+ private readonly routerConnector;
14403
14619
  /**
14404
14620
  * @description Configuration Model for Qd-Table.
14405
14621
  */
@@ -14423,10 +14639,25 @@ declare class QdTablePaginatorComponent<T extends string> implements OnInit, OnD
14423
14639
  get hasData$(): Observable<boolean>;
14424
14640
  ngOnInit(): void;
14425
14641
  ngOnDestroy(): void;
14642
+ /**
14643
+ * @description Whether this paginator should sync its state with the URL. Reads
14644
+ * `pagination.connectWithRouter` (default `false` — URL sync is opt-in and
14645
+ * requires an explicit `pagination: { connectWithRouter: true }`).
14646
+ *
14647
+ * Used by `QdTablePaginationRouterConnectorService` to decide whether to claim
14648
+ * the router-singleton for this paginator.
14649
+ */
14650
+ shouldConnectWithRouter(): boolean;
14651
+ /**
14652
+ * @description The effective default page size for this paginator. Resolves
14653
+ * `pagination.pageSizeDefault` first, then falls back to the first entry of
14654
+ * `pagination.pageSizes`, finally to the framework constant `PAGE_SIZE_DEFAULT`.
14655
+ */
14656
+ getPageSizeDefault(): number;
14426
14657
  navigateToPage(direction: QdPaginatorDirection): void;
14427
14658
  private isConfigValid;
14659
+ private startPagination;
14428
14660
  private initPagination;
14429
- private getPageSizeDefault;
14430
14661
  private calculatePageNumber;
14431
14662
  static ɵfac: i0.ɵɵFactoryDeclaration<QdTablePaginatorComponent<any>, never>;
14432
14663
  static ɵcmp: i0.ɵɵComponentDeclaration<QdTablePaginatorComponent<any>, "qd-table-paginator", never, { "config": { "alias": "config"; "required": false; }; "testId": { "alias": "data-test-id"; "required": false; }; }, {}, never, never, false, never>;
@@ -14551,6 +14782,7 @@ declare class QdTableComponent<T extends string> implements OnInit, OnChanges, O
14551
14782
  private readonly breakpointService;
14552
14783
  private readonly resolverService;
14553
14784
  private readonly confirmationDialogService;
14785
+ private readonly sortRouterConnector;
14554
14786
  /**
14555
14787
  * Configuration of the table. The generic type specifies the column definition. <br />
14556
14788
  *
@@ -16994,7 +17226,6 @@ declare class QdShellServiceNavigationComponent implements OnInit, OnDestroy, Af
16994
17226
  private _config;
16995
17227
  private _destroyed$;
16996
17228
  private _attributesHaveBeenSet$;
16997
- private readonly localeService;
16998
17229
  ngOnInit(): void;
16999
17230
  private setPamsEnvironment;
17000
17231
  private logPamsEnvironmentMissingError;
@@ -17719,5 +17950,5 @@ declare class QdUiModule {
17719
17950
 
17720
17951
  declare const APP_ENVIRONMENT: InjectionToken<QdAppEnvironment>;
17721
17952
 
17722
- export { APP_ENVIRONMENT, AVAILABLE_ICONS, BACKEND_ERROR_CODES, MockLocaleDatePipe, NavigationTileComponent, NavigationTilesComponent, QD_DIALOG_CONFIRMATION_RESOLVER_TOKEN, QD_FILE_MANAGER_TOKEN, QD_FILE_UPLOAD_MANAGER_TOKEN, QD_FORM_OPTIONS_RESOLVER, QD_PAGE_OBJECT_RESOLVER_TOKEN, QD_PAGE_STEP_RESOLVER_TOKEN, QD_POPOVER_TOP_FIRST, QD_SAFE_BOTTOM_OFFSET, QD_TABLE_DATA_RESOLVER_TOKEN, QD_UPLOAD_HTTP_OPTIONS, QdButtonComponent, QdButtonGhostDirective, QdButtonGridComponent, QdButtonLinkDirective, QdButtonModule, QdButtonStackButtonComponent, QdButtonStackComponent, QdCheckboxChipsComponent, QdCheckboxComponent, QdCheckboxesComponent, QdChipComponent, QdChipModule, QdColumnAutoFillDirective, QdColumnBreakBeforeDirective, QdColumnDirective, QdColumnDisableResponsiveColspansDirective, QdColumnFullGridWidthDirective, QdColumnNextInSameRowDirective, QdColumnsDirective, QdColumnsDisableAutoFillDirective, QdColumnsDisableResponsiveColspansDirective, QdColumnsMaxDirective, QdCommentsComponent, QdCommentsModule, QdConnectFormStateToPageDirective, QdConnectorTableContextDirective, QdConnectorTableFilterDirective, QdConnectorTableSearchDirective, QdContactCardComponent, QdContactCardModule, QdContainerPairsCaptionComponent, QdContainerPairsContainerComponent, QdContainerPairsHeaderComponent, QdContainerPairsItemComponent, QdContainerPairsValueComponent, QdContextService, QdCoreModule, QdDatepickerComponent, QdDialogActionComponent, QdDialogAuthSessionEndComponent, QdDialogAuthSessionEndService, QdDialogComponent, QdDialogConfirmationComponent, QdDialogConfirmationErrorDirective, QdDialogConfirmationInfoDirective, QdDialogConfirmationSuccessDirective, QdDialogModule, QdDialogRecordStepperComponent, QdDialogService, QdDialogSize, QdDisabledDirective, QdDropdownComponent, QdFileCollectorComponent, QdFileCollectorModule, QdFileSizePipe$1 as QdFileSizePipe, QdFileUploadComponent, QdFileUploadService, QdFilterComponent, QdFilterFormItemsComponent, QdFilterModule, QdFilterRestParamBuilder, QdFilterService, QdFormArray, QdFormBuilder, QdFormControl, QdFormGroup, QdFormModule, QdGridComponent, QdGridModule, QdHorizontalPairsCaptionComponent, QdHorizontalPairsComponent, QdHorizontalPairsItemComponent, QdHorizontalPairsValueComponent, QdIconButtonComponent, QdIconComponent, QdIconModule, QdImageComponent, QdImageModule, QdIndeterminateProgressBarComponent, QdInputComponent, QdListModule, QdMenuButtonComponent, QdMockBreakpointService, QdMockButtonComponent, QdMockButtonGhostDirective, QdMockButtonGridComponent, QdMockButtonLinkDirective, QdMockButtonModule, QdMockButtonStackButtonComponent, QdMockButtonStackComponent, QdMockCalendarComponent, QdMockCheckboxChipsComponent, QdMockCheckboxComponent, QdMockCheckboxesComponent, QdMockChipComponent, QdMockChipModule, QdMockColumnDirective, QdMockColumnsDirective, QdMockContactCardComponent, QdMockContactCardModule, QdMockContainerPairsCaptionComponent, QdMockContainerPairsContainerComponent, QdMockContainerPairsHeaderComponent, QdMockContainerPairsItemComponent, QdMockContainerPairsValueComponent, QdMockCoreModule, QdMockCounterBadgeComponent, QdMockDatepickerComponent, QdMockDisabledDirective, QdMockDropdownComponent, QdMockFileCollectorComponent, QdMockFileCollectorModule, QdMockFilterCategoryBooleanComponent, QdMockFilterCategoryComponent, QdMockFilterCategoryDateComponent, QdMockFilterCategoryDateRangeComponent, QdMockFilterCategoryFreeTextComponent, QdMockFilterCategorySelectComponent, QdMockFilterComponent, QdMockFilterFormItemsComponent, QdMockFilterItemBooleanComponent, QdMockFilterItemDateComponent, QdMockFilterItemDateRangeComponent, QdMockFilterItemFreeTextComponent, QdMockFilterItemMultiSelectComponent, QdMockFilterItemSingleSelectComponent, QdMockFilterModule, QdMockFilterService, QdMockFormErrorComponent, QdMockFormGroupErrorComponent, QdMockFormHintComponent, QdMockFormLabelComponent, QdMockFormReadonlyComponent, QdMockFormViewonlyComponent, QdMockFormsModule, QdMockGridModule, QdMockIconButtonComponent, QdMockIconComponent, QdMockIconModule, QdMockImageComponent, QdMockImageModule, QdMockIndeterminateProgressBarComponent, QdMockInputComponent, QdMockListModule, QdMockNavigationTileComponent, QdMockNavigationTilesComponent, QdMockNavigationTilesModule, QdMockNotificationComponent, QdMockNotificationContentComponent, QdMockNotificationsComponent, QdMockNotificationsModule, QdMockNotificationsService, QdMockPageComponent, QdMockPageModule, QdMockPercentageProgressBarComponent, QdMockPinCodeComponent, QdMockPlaceHolderModule, QdMockPopoverOnClickDirective, QdMockProgressBarModule, QdMockQdPlaceHolderComponent, QdMockRadioButtonsComponent, QdMockRwdDisabledDirective, QdMockSearchComponent, QdMockSearchModule, QdMockSectionComponent, QdMockSectionModule, QdMockShellComponent, QdMockShellFooterComponent, QdMockShellHeaderBannerComponent, QdMockShellHeaderComponent, QdMockShellHeaderSearchComponent, QdMockShellHeaderWidgetComponent, QdMockShellModule, QdMockShellToolbarComponent, QdMockShellToolbarItemComponent, QdMockStatusIndicatorCaptionComponent, QdMockStatusIndicatorComponent, QdMockStatusIndicatorItemComponent, QdMockStatusIndicatorModule, QdMockStatusPairsCaptionComponent, QdMockStatusPairsComponent, QdMockStatusPairsErrorComponent, QdMockStatusPairsItemComponent, QdMockStatusPairsValueComponent, QdMockSwitchComponent, QdMockSwitchesComponent, QdMockTableComponent, QdMockTableModule, QdMockTextSectionComponent, QdMockTextSectionHeadlineComponent, QdMockTextSectionModule, QdMockTextSectionParagraphComponent, QdMockTextareaComponent, QdMockTileButtonListComponent, QdMockTileComponent, QdMockTileTextListComponent, QdMockTileTextListItemComponent, QdMockTileTitleComponent, QdMockTilesContainerComponent, QdMockTilesContainerTitleComponent, QdMockTilesModule, QdMockTranslatePipe, QdMockVisuallyHiddenDirective, QdMultiInputComponent, QdNavigationTilesModule, QdNotificationComponent, QdNotificationContentComponent, QdNotificationsComponent, QdNotificationsHttpInterceptorService, QdNotificationsModule, QdNotificationsService, QdNotificationsSnackbarListenerDirective, QdNumberInputService, QdPageComponent, QdPageControlPanelComponent, QdPageFooterComponent, QdPageFooterCustomContentDirective, QdPageInfoBannerComponent, QdPageModule, QdPageStepComponent, QdPageStepperAdapterDirective, QdPageStepperComponent, QdPageStepperModule, QdPageStoreService, QdPageTabComponent, QdPageTabsAdapterDirective, QdPageTabsComponent, QdPageTabsModule, QdPanelSectionActionsComponent, QdPanelSectionComponent, QdPanelSectionModule, QdPanelSectionStatusComponent, QdPanelSectionTextParagraphComponent, QdPendingChangesGuardDirective, QdPercentageProgressBarComponent, QdPinCodeComponent, QdPlaceHolderComponent, QdPlaceHolderModule, QdPlaceholderPipe, QdProgressBarModule, QdProjectionGuardComponent, QdPushEventsService, QdQuickEditComponent, QdQuickEditModule, QdRadioButtonsComponent, QdRichtextComponent, QdRwdDisabledDirective, QdSearchComponent, QdSearchModule, QdSectionAdapterDirective, QdSectionComponent, QdSectionModule, QdSectionToolbarComponent, QdShellComponent, QdShellModule, QdSortDirection, QdSpinnerComponent, QdSpinnerModule, QdStatusIndicatorComponent, QdStatusIndicatorModule, QdStatusPairsCaptionComponent, QdStatusPairsComponent, QdStatusPairsErrorComponent, QdStatusPairsItemComponent, QdStatusPairsValueComponent, QdSubgridComponent, QdSwitchComponent, QdSwitchesComponent, QdTableComponent, QdTableModule, QdTableSpringTools, QdTextSectionComponent, QdTextSectionHeadlineComponent, QdTextSectionModule, QdTextSectionParagraphComponent, QdTextareaComponent, QdTileButtonListComponent, QdTileComponent, QdTileTextListComponent, QdTileTextListItemComponent, QdTileTitleComponent, QdTilesComponent, QdTilesModule, QdTilesTitleComponent, QdTooltipAtIntersectionDirective, QdTooltipIconComponent, QdTreeComponent, QdTreeModule, QdTreeRowExpanderService, QdUiMockModule, QdUiModule, QdUploadErrorType, QdValidators, QdViewportAdaptiveDirective, QdVisuallyHiddenDirective, chipColorDefault, createMetadataStream, updateHtmlLang };
17723
- export type { CustomField, QdAppEnvironment, QdButtonAdditionalInfo, QdButtonColor, QdChipColor, QdCollectedFile, QdComment, QdCommentAuthorFieldConfig, QdCommentCustomFieldConfig, QdCommentDeletedMeta, QdCommentRichtextConfig, QdCommentSecondaryActionConfig, QdCommentsAddButtonConfig, QdCommentsAddConfig, QdCommentsConfig, QdContactAddress, QdContactData, QdContactDataCustomField, QdContactDataCustomFieldEntry, QdContactDataCustomTranslatedEntry, QdContactFunction, QdContactPerson, QdContactTag, QdContextSelection, QdDependentFilterCategory, QdDialogAuthSessionEndResult, QdDialogConfig, QdDialogConfirmationConfig, QdDialogConfirmationResolver, QdDialogData, QdDialogTitle, QdFileCollectorConfig, QdFileManager, QdFileType, QdFileUploadManager, QdFilterCategory, QdFilterConfigData, QdFilterItem, QdFilterPostBodyCategory, QdFilterPostBodyData, QdFormCheckboxChipsConfiguration, QdFormCheckboxesConfiguration, QdFormConfiguration, QdFormDatepickerConfiguration, QdFormDropdownConfiguration, QdFormFileUploadConfiguration, QdFormHint, QdFormInput, QdFormInputConfiguration, QdFormLabel, QdFormMultiInputConfiguration, QdFormOption, QdFormOptionsResolver, QdFormPinCodeConfiguration, QdFormRadioButtonsConfiguration, QdFormSwitchesConfiguration, QdFormTextAreaConfiguration, QdGridConfig, QdInputValue, QdInputValueWithUnit, QdInspectOperationMode, QdMenuButtonConfig, QdMultiInputOption, QdNotification, QdNotificationType, QdPageConfig, QdPageConfigCreate, QdPageConfigCustom, QdPageConfigInspect, QdPageConfigOverview, QdPageControlPanelConfig, QdPageHeaderFacetConfig, QdPageInfoBannerConfig, QdPageObjectResolver, QdPageObjectResolverConfig, QdPageSelectedContext, QdPageStepConfig, QdPageStepResolver, QdPageStepperConfig, QdPageTabConfig, QdPageTabCounters, QdPageTabsConfig, QdPageTypeCreateConfig, QdPageTypeCustomConfig, QdPageTypeInspectConfig, QdPageTypeOverviewConfig, QdPlaceholder, QdPushEventName, QdQuickEditConfig, QdQuickEditData, QdRichtextConfig, QdSearchOptions, QdSearchPostBodyData, QdSectionActionType, QdSectionConfig, QdShellConfig, QdShellServiceNavigationConfig, QdStatusIndicator, QdSwitchOption, QdTabSelectionEvent, QdTableChipDataValue, QdTableConfig, QdTableConfigColumn, QdTableConfigSelection, QdTableContentDataChip, QdTableContentDataChipObject, QdTableData, QdTableDataResolver, QdTableDataResolverProps, QdTableDataRow, QdTableDataValue, QdTableEmptyStateView, QdTableOptionalRefreshingEventTypes, QdTablePagination, QdTablePrimaryAction, QdTableRecentSecondaryAction, QdTableResolvedData, QdTableRowIdentifier, QdTableRowIndex, QdTableRowUid, QdTableSecondaryAction, QdTableSelectedRow, QdTableSelectedRows, QdTableStateSort, QdTableStatusDataValue, QdTileConfig, QdTilesConfig, QdTooltip, QdTranslatable, QdTranslation, QdTreeConfig, QdTreeData, QdTreeDataRow, QdTreeDataValue, QdUploadError, QdUploadProgress };
17953
+ export { APP_ENVIRONMENT, AVAILABLE_ICONS, BACKEND_ERROR_CODES, MockLocaleDatePipe, NavigationTileComponent, NavigationTilesComponent, QD_DIALOG_CONFIRMATION_RESOLVER_TOKEN, QD_FILE_MANAGER_TOKEN, QD_FILE_UPLOAD_MANAGER_TOKEN, QD_FORM_OPTIONS_RESOLVER, QD_PAGE_OBJECT_RESOLVER_TOKEN, QD_PAGE_STEP_RESOLVER_TOKEN, QD_POPOVER_TOP_FIRST, QD_SAFE_BOTTOM_OFFSET, QD_TABLE_DATA_RESOLVER_TOKEN, QD_UPLOAD_HTTP_OPTIONS, QdButtonComponent, QdButtonGhostDirective, QdButtonGridComponent, QdButtonLinkDirective, QdButtonModule, QdButtonStackButtonComponent, QdButtonStackComponent, QdCheckboxChipsComponent, QdCheckboxComponent, QdCheckboxesComponent, QdChipComponent, QdChipModule, QdColumnAutoFillDirective, QdColumnBreakBeforeDirective, QdColumnDirective, QdColumnDisableResponsiveColspansDirective, QdColumnFullGridWidthDirective, QdColumnNextInSameRowDirective, QdColumnsDirective, QdColumnsDisableAutoFillDirective, QdColumnsDisableResponsiveColspansDirective, QdColumnsMaxDirective, QdCommentsComponent, QdCommentsModule, QdConnectFormStateToPageDirective, QdConnectorTableContextDirective, QdConnectorTableFilterDirective, QdConnectorTableSearchDirective, QdContactCardComponent, QdContactCardModule, QdContainerPairsCaptionComponent, QdContainerPairsContainerComponent, QdContainerPairsHeaderComponent, QdContainerPairsItemComponent, QdContainerPairsValueComponent, QdContextService, QdCoreModule, QdDatepickerComponent, QdDialogActionComponent, QdDialogAuthSessionEndComponent, QdDialogAuthSessionEndService, QdDialogComponent, QdDialogConfirmationComponent, QdDialogConfirmationErrorDirective, QdDialogConfirmationInfoDirective, QdDialogConfirmationSuccessDirective, QdDialogModule, QdDialogRecordStepperComponent, QdDialogService, QdDialogSize, QdDisabledDirective, QdDropdownComponent, QdFileCollectorComponent, QdFileCollectorModule, QdFileSizePipe$1 as QdFileSizePipe, QdFileUploadComponent, QdFileUploadService, QdFilterComponent, QdFilterFormItemsComponent, QdFilterModule, QdFilterRestParamBuilder, QdFilterService, QdFormArray, QdFormBuilder, QdFormControl, QdFormGroup, QdFormModule, QdGridComponent, QdGridModule, QdHorizontalPairsCaptionComponent, QdHorizontalPairsComponent, QdHorizontalPairsItemComponent, QdHorizontalPairsValueComponent, QdIconButtonComponent, QdIconComponent, QdIconModule, QdImageComponent, QdImageModule, QdIndeterminateProgressBarComponent, QdInputComponent, QdListModule, QdMenuButtonComponent, QdMockBreakpointService, QdMockButtonComponent, QdMockButtonGhostDirective, QdMockButtonGridComponent, QdMockButtonLinkDirective, QdMockButtonModule, QdMockButtonStackButtonComponent, QdMockButtonStackComponent, QdMockCalendarComponent, QdMockCheckboxChipsComponent, QdMockCheckboxComponent, QdMockCheckboxesComponent, QdMockChipComponent, QdMockChipModule, QdMockColumnDirective, QdMockColumnsDirective, QdMockContactCardComponent, QdMockContactCardModule, QdMockContainerPairsCaptionComponent, QdMockContainerPairsContainerComponent, QdMockContainerPairsHeaderComponent, QdMockContainerPairsItemComponent, QdMockContainerPairsValueComponent, QdMockCoreModule, QdMockCounterBadgeComponent, QdMockDatepickerComponent, QdMockDisabledDirective, QdMockDropdownComponent, QdMockFileCollectorComponent, QdMockFileCollectorModule, QdMockFilterCategoryBooleanComponent, QdMockFilterCategoryComponent, QdMockFilterCategoryDateComponent, QdMockFilterCategoryDateRangeComponent, QdMockFilterCategoryFreeTextComponent, QdMockFilterCategorySelectComponent, QdMockFilterComponent, QdMockFilterFormItemsComponent, QdMockFilterItemBooleanComponent, QdMockFilterItemDateComponent, QdMockFilterItemDateRangeComponent, QdMockFilterItemFreeTextComponent, QdMockFilterItemMultiSelectComponent, QdMockFilterItemSingleSelectComponent, QdMockFilterModule, QdMockFilterService, QdMockFormErrorComponent, QdMockFormGroupErrorComponent, QdMockFormHintComponent, QdMockFormLabelComponent, QdMockFormReadonlyComponent, QdMockFormViewonlyComponent, QdMockFormsModule, QdMockGridModule, QdMockIconButtonComponent, QdMockIconComponent, QdMockIconModule, QdMockImageComponent, QdMockImageModule, QdMockIndeterminateProgressBarComponent, QdMockInputComponent, QdMockListModule, QdMockNavigationTileComponent, QdMockNavigationTilesComponent, QdMockNavigationTilesModule, QdMockNotificationComponent, QdMockNotificationContentComponent, QdMockNotificationsComponent, QdMockNotificationsModule, QdMockNotificationsService, QdMockPageComponent, QdMockPageModule, QdMockPercentageProgressBarComponent, QdMockPinCodeComponent, QdMockPlaceHolderModule, QdMockPopoverOnClickDirective, QdMockProgressBarModule, QdMockQdPlaceHolderComponent, QdMockRadioButtonsComponent, QdMockRwdDisabledDirective, QdMockSearchComponent, QdMockSearchModule, QdMockSectionComponent, QdMockSectionModule, QdMockShellComponent, QdMockShellFooterComponent, QdMockShellHeaderBannerComponent, QdMockShellHeaderComponent, QdMockShellHeaderSearchComponent, QdMockShellHeaderWidgetComponent, QdMockShellModule, QdMockShellToolbarComponent, QdMockShellToolbarItemComponent, QdMockStatusIndicatorCaptionComponent, QdMockStatusIndicatorComponent, QdMockStatusIndicatorItemComponent, QdMockStatusIndicatorModule, QdMockStatusPairsCaptionComponent, QdMockStatusPairsComponent, QdMockStatusPairsErrorComponent, QdMockStatusPairsItemComponent, QdMockStatusPairsValueComponent, QdMockSwitchComponent, QdMockSwitchesComponent, QdMockTableComponent, QdMockTableModule, QdMockTextSectionComponent, QdMockTextSectionHeadlineComponent, QdMockTextSectionModule, QdMockTextSectionParagraphComponent, QdMockTextareaComponent, QdMockTileButtonListComponent, QdMockTileComponent, QdMockTileTextListComponent, QdMockTileTextListItemComponent, QdMockTileTitleComponent, QdMockTilesContainerComponent, QdMockTilesContainerTitleComponent, QdMockTilesModule, QdMockTranslatePipe, QdMockVisuallyHiddenDirective, QdMultiInputComponent, QdNavigationTilesModule, QdNotificationComponent, QdNotificationContentComponent, QdNotificationsComponent, QdNotificationsHttpInterceptorService, QdNotificationsModule, QdNotificationsService, QdNotificationsSnackbarListenerDirective, QdPageComponent, QdPageControlPanelComponent, QdPageFooterComponent, QdPageFooterCustomContentDirective, QdPageInfoBannerComponent, QdPageModule, QdPageStepComponent, QdPageStepperAdapterDirective, QdPageStepperComponent, QdPageStepperModule, QdPageStoreService, QdPageTabComponent, QdPageTabsAdapterDirective, QdPageTabsComponent, QdPageTabsModule, QdPanelSectionActionsComponent, QdPanelSectionComponent, QdPanelSectionModule, QdPanelSectionStatusComponent, QdPanelSectionTextParagraphComponent, QdPendingChangesGuardDirective, QdPercentageProgressBarComponent, QdPinCodeComponent, QdPlaceHolderComponent, QdPlaceHolderModule, QdPlaceholderPipe, QdProgressBarModule, QdProjectionGuardComponent, QdPushEventsService, QdQuickEditComponent, QdQuickEditModule, QdRadioButtonsComponent, QdRichtextComponent, QdRouterQueryParamHubService, QdRwdDisabledDirective, QdSearchComponent, QdSearchModule, QdSectionAdapterDirective, QdSectionComponent, QdSectionModule, QdSectionToolbarComponent, QdShellComponent, QdShellModule, QdSortDirection, QdSpinnerComponent, QdSpinnerModule, QdStatusIndicatorComponent, QdStatusIndicatorModule, QdStatusPairsCaptionComponent, QdStatusPairsComponent, QdStatusPairsErrorComponent, QdStatusPairsItemComponent, QdStatusPairsValueComponent, QdSubgridComponent, QdSwitchComponent, QdSwitchesComponent, QdTableComponent, QdTableModule, QdTableSpringTools, QdTextSectionComponent, QdTextSectionHeadlineComponent, QdTextSectionModule, QdTextSectionParagraphComponent, QdTextareaComponent, QdTileButtonListComponent, QdTileComponent, QdTileTextListComponent, QdTileTextListItemComponent, QdTileTitleComponent, QdTilesComponent, QdTilesModule, QdTilesTitleComponent, QdTooltipAtIntersectionDirective, QdTooltipIconComponent, QdTreeComponent, QdTreeModule, QdTreeRowExpanderService, QdUiMockModule, QdUiModule, QdUploadErrorType, QdValidators, QdViewportAdaptiveDirective, QdVisuallyHiddenDirective, chipColorDefault, createMetadataStream, updateHtmlLang };
17954
+ export type { CustomField, QdAppEnvironment, QdButtonAdditionalInfo, QdButtonColor, QdChipColor, QdCollectedFile, QdComment, QdCommentAuthorFieldConfig, QdCommentCustomFieldConfig, QdCommentDeletedMeta, QdCommentRichtextConfig, QdCommentSecondaryActionConfig, QdCommentsAddButtonConfig, QdCommentsAddConfig, QdCommentsConfig, QdContactAddress, QdContactData, QdContactDataCustomField, QdContactDataCustomFieldEntry, QdContactDataCustomTranslatedEntry, QdContactFunction, QdContactPerson, QdContactTag, QdContextSelection, QdDependentFilterCategory, QdDialogAuthSessionEndResult, QdDialogConfig, QdDialogConfirmationConfig, QdDialogConfirmationResolver, QdDialogData, QdDialogTitle, QdFileCollectorConfig, QdFileManager, QdFileType, QdFileUploadManager, QdFilterCategory, QdFilterConfigData, QdFilterItem, QdFilterPostBodyCategory, QdFilterPostBodyData, QdFormCheckboxChipsConfiguration, QdFormCheckboxesConfiguration, QdFormConfiguration, QdFormDatepickerConfiguration, QdFormDropdownConfiguration, QdFormFileUploadConfiguration, QdFormHint, QdFormInput, QdFormInputConfiguration, QdFormLabel, QdFormMultiInputConfiguration, QdFormOption, QdFormOptionsResolver, QdFormPinCodeConfiguration, QdFormRadioButtonsConfiguration, QdFormSwitchesConfiguration, QdFormTextAreaConfiguration, QdGridConfig, QdInputValue, QdInputValueWithUnit, QdInspectOperationMode, QdMenuButtonConfig, QdMultiInputOption, QdNotification, QdNotificationType, QdPageConfig, QdPageConfigCreate, QdPageConfigCustom, QdPageConfigInspect, QdPageConfigOverview, QdPageControlPanelConfig, QdPageHeaderFacetConfig, QdPageInfoBannerConfig, QdPageObjectResolver, QdPageObjectResolverConfig, QdPageSelectedContext, QdPageStepConfig, QdPageStepResolver, QdPageStepperConfig, QdPageTabConfig, QdPageTabCounters, QdPageTabsConfig, QdPageTypeCreateConfig, QdPageTypeCustomConfig, QdPageTypeInspectConfig, QdPageTypeOverviewConfig, QdPlaceholder, QdPushEventName, QdQuickEditConfig, QdQuickEditData, QdRichtextConfig, QdSearchOptions, QdSearchPostBodyData, QdSectionActionType, QdSectionConfig, QdShellConfig, QdShellFooterCopyrightInfo, QdShellNavigationConfig, QdShellServiceNavigationBadge, QdShellServiceNavigationConfig, QdShellServiceNavigationContactInfo, QdShellServiceNavigationCustomButtonLinks, QdShellServiceNavigationEnvironment, QdShellServiceNavigationHrefs, QdShellServiceNavigationInfoLink, QdShellServiceNavigationLanguage, QdShellServiceNavigationMultiHrefs, QdShellServiceNavigationProfileLink, QdShellServiceNavigationSingleHref, QdShellToolbarConfig, QdShellToolbarItem, QdStatusIndicator, QdSwitchOption, QdTabSelectionEvent, QdTableChipDataValue, QdTableConfig, QdTableConfigColumn, QdTableConfigSelection, QdTableContentDataChip, QdTableContentDataChipObject, QdTableData, QdTableDataResolver, QdTableDataResolverProps, QdTableDataRow, QdTableDataValue, QdTableEmptyStateView, QdTableOptionalRefreshingEventTypes, QdTablePagination, QdTablePrimaryAction, QdTableRecentSecondaryAction, QdTableResolvedData, QdTableRowIdentifier, QdTableRowIndex, QdTableRowUid, QdTableSecondaryAction, QdTableSelectedRow, QdTableSelectedRows, QdTableStateSort, QdTableStatusDataValue, QdTileConfig, QdTilesConfig, QdTooltip, QdTranslatable, QdTranslation, QdTreeConfig, QdTreeData, QdTreeDataRow, QdTreeDataValue, QdUploadError, QdUploadProgress };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quadrel-enterprise-ui/framework",
3
- "version": "20.11.2-beta.150.1",
3
+ "version": "20.12.0",
4
4
  "exports": {
5
5
  "./jest-preset": "./jest-preset.js",
6
6
  "./package.json": {
@@ -68,10 +68,6 @@
68
68
  "i18n.qd.input.units.percentage": "%",
69
69
  "i18n.qd.input.options.loading": "Vorschläge werden geladen...",
70
70
  "i18n.qd.input.options.error": "Fehler beim Laden der Vorschläge",
71
- "i18n.qd.input.number.ambiguousHint.comma": "Der eingegebene Wert wird gemäß der regionalen Formatierung interpretiert und verwendet als Dezimaltrennzeichen ein Komma (,).",
72
- "i18n.qd.input.number.ambiguousHint.dot": "Der eingegebene Wert wird gemäß der regionalen Formatierung interpretiert und verwendet als Dezimaltrennzeichen einen Punkt (.).",
73
- "i18n.qd.input.number.invalidCharacters.comma": "Der eingegebene Wert ist ungültig. Gemäß der regionalen Formatierung wird ein Komma (,) als Dezimaltrennzeichen erwartet.",
74
- "i18n.qd.input.number.invalidCharacters.dot": "Der eingegebene Wert ist ungültig. Gemäß der regionalen Formatierung wird ein Punkt (.) als Dezimaltrennzeichen erwartet.",
75
71
  "i18n.qd.multiInput.label.tariffNumbers": "Tarifnummern",
76
72
  "i18n.qd.multiInput.label.tariffNumbers.hint": "Bitte erfassen Sie mindestens eine Tarifnummer.",
77
73
  "i18n.qd.multiInput.label.tariffNumbers.hintFormat": "Bitte erfassen Sie mindestens eine Tarifnummer (Format: 9- od. 13-stellig).",
@@ -68,12 +68,6 @@
68
68
  "i18n.qd.input.units.percentage": "%",
69
69
  "i18n.qd.input.options.loading": "Suggestions are loading...",
70
70
  "i18n.qd.input.options.error": "Error loading suggestions",
71
-
72
- "i18n.qd.input.number.ambiguousHint.comma": "The entered value is interpreted according to the regional formatting and uses a comma (,) as the decimal separator.",
73
- "i18n.qd.input.number.ambiguousHint.dot": "The entered value is interpreted according to the regional formatting and uses a dot (.) as the decimal separator.",
74
- "i18n.qd.input.number.invalidCharacters.comma": "The entered value is invalid. According to the regional formatting, a comma (,) is expected as the decimal separator.",
75
- "i18n.qd.input.number.invalidCharacters.dot": "The entered value is invalid. According to the regional formatting, a dot (.) is expected as the decimal separator.",
76
-
77
71
  "i18n.qd.multiInput.label.tariffNumbers": "[en]Tarifnummern",
78
72
  "i18n.qd.multiInput.label.tariffNumbers.hint": "[en]Bitte erfassen Sie mindestens eine Tarifnummer.",
79
73
  "i18n.qd.multiInput.label.tariffNumbers.hintFormat": "[en]Bitte erfassen Sie mindestens eine Tarifnummer (Format: 9- od. 13-stellig).",