@sumaris-net/ngx-components 21.4.3 → 21.4.5

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.
@@ -23,11 +23,12 @@ import * as i2$2 from '@angular/material/sort';
23
23
  import { SortDirection, MatSort, MatSortable } from '@angular/material/sort';
24
24
  import * as _apollo_client from '@apollo/client';
25
25
  import { OperationVariables as OperationVariables$1 } from '@apollo/client';
26
+ import { DocumentNode } from 'graphql';
26
27
  import { PersistentStorage } from 'apollo4-cache-persist';
27
28
  import * as i4$2 from '@ionic/storage-angular';
28
29
  import { Storage } from '@ionic/storage-angular';
29
30
  import * as i1 from '@ionic/angular/standalone';
30
- import { Platform, ModalController, IonSearchbar, PopoverController, IonApp, IonAvatar, IonBackButton, IonBackdrop, IonBadge, IonButton, IonButtons, IonCard, IonCardContent, IonCardHeader, IonCardSubtitle, IonCardTitle, IonCheckbox, IonChip, IonCol, IonContent, IonFab, IonFabButton, IonFooter, IonGrid, IonHeader, IonIcon, IonImg, IonInfiniteScroll, IonInfiniteScrollContent, IonInput, IonItem, IonItemDivider, IonItemGroup, IonLabel, IonList, IonListHeader, IonMenu, IonMenuButton, IonMenuToggle, IonModal, IonNote, IonPopover, IonProgressBar, IonRefresher, IonRefresherContent, IonReorder, IonReorderGroup, IonRouterLink, IonRouterLinkWithHref, IonRouterOutlet, IonRow, IonSegment, IonSegmentButton, IonSelect, IonSelectOption, IonSkeletonText, IonSpinner, IonSplitPane, IonText, IonTitle, IonToggle, IonToolbar, NavController, PopoverOptions, ToastController, AlertController, MenuController, NavParams } from '@ionic/angular/standalone';
31
+ import { Platform, ModalController, IonSearchbar, PopoverController, IonInfiniteScroll, IonModal, IonRouterOutlet, IonContent, IonItem, IonApp, IonAvatar, IonBackButton, IonBackdrop, IonBadge, IonButton, IonButtons, IonCard, IonCardContent, IonCardHeader, IonCardSubtitle, IonCardTitle, IonCheckbox, IonChip, IonCol, IonFab, IonFabButton, IonFooter, IonGrid, IonHeader, IonIcon, IonImg, IonInfiniteScrollContent, IonInput, IonItemDivider, IonItemGroup, IonLabel, IonList, IonListHeader, IonMenu, IonMenuButton, IonMenuToggle, IonNote, IonPopover, IonProgressBar, IonRefresher, IonRefresherContent, IonReorder, IonReorderGroup, IonRouterLink, IonRouterLinkWithHref, IonRow, IonSegment, IonSegmentButton, IonSelect, IonSelectOption, IonSkeletonText, IonSpinner, IonSplitPane, IonText, IonTitle, IonToggle, IonToolbar, NavController, PopoverOptions, ToastController, AlertController, MenuController, NavParams } from '@ionic/angular/standalone';
31
32
  import * as momentImported from 'moment';
32
33
  import { Moment, unitOfTime as unitOfTime$1 } from 'moment';
33
34
  import * as i9 from '@ngx-translate/core';
@@ -36,10 +37,10 @@ import * as i14 from '@angular/material/select';
36
37
  import { MatSelect, MatSelectChange } from '@angular/material/select';
37
38
  import * as i10 from '@angular/material/autocomplete';
38
39
  import { MatAutocomplete, MatAutocompleteTrigger, MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';
39
- import * as i4$1 from '@angular/router';
40
- import { ActivatedRoute, Router, CanDeactivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Params, CanActivate } from '@angular/router';
41
40
  import * as i2$1 from '@angular/common';
42
41
  import { Location } from '@angular/common';
42
+ import * as i4$1 from '@angular/router';
43
+ import { ActivatedRoute, Router, CanDeactivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Params, CanActivate } from '@angular/router';
43
44
  import * as i10$3 from '@angular/cdk/drag-drop';
44
45
  import * as i11$1 from 'ngx-markdown';
45
46
  import { MarkedRenderer } from 'ngx-markdown';
@@ -110,7 +111,6 @@ import { Apollo, QueryRef } from 'apollo-angular';
110
111
  import { RxState, ProjectValueReducer } from '@rx-angular/state';
111
112
  import * as i3$3 from 'ionic-cache';
112
113
  import { CacheService } from 'ionic-cache';
113
- import { DocumentNode } from 'graphql';
114
114
  import { TypedDocumentNode } from '@graphql-typed-document-node/core';
115
115
  import { AudioManagement, AudioMode } from '@awesome-cordova-plugins/audio-management/ngx';
116
116
  import { Platform as Platform$1 } from '@angular/cdk/platform';
@@ -126,6 +126,7 @@ import * as i3$2 from 'ngx-jdenticon';
126
126
  import * as _angular_animations from '@angular/animations';
127
127
  import { TableElement, TableDataSource, ValidatorService, TableDataSourceConfig, AsyncTableElement, AsyncTableDataSource } from '@e-is/ngx-material-table';
128
128
  import { ImageOptions } from '@capacitor/camera';
129
+ import { MarkedExtension } from 'marked';
129
130
  import { RxStrategyNames } from '@rx-angular/cdk/render-strategies';
130
131
  import { DocumentNode as DocumentNode$1 } from 'graphql/index';
131
132
  import { ScryptParams } from '@polkadot/util-crypto/scrypt/types';
@@ -238,6 +239,7 @@ declare class Environment {
238
239
  persistCache?: boolean;
239
240
  offline?: boolean;
240
241
  apolloFetchPolicy?: FetchPolicy;
242
+ enableGraphqlDefer?: boolean;
241
243
  defaultLocale: string;
242
244
  defaultLatLongFormat?: 'DD' | 'DDMM' | 'DDMMSS';
243
245
  defaultDepartmentId?: number;
@@ -258,8 +260,12 @@ declare class Environment {
258
260
  changelogUrl?: string;
259
261
  forumUrl?: string;
260
262
  helpUrl?: string;
261
- privacyPolicyUrl?: string;
262
- termsOfUseUrl?: string;
263
+ privacyPolicyUrl?: string | {
264
+ [locale: string]: string;
265
+ };
266
+ termsOfUseUrl?: string | {
267
+ [locale: string]: string;
268
+ };
263
269
  defaultAuthValues?: {
264
270
  username?: string;
265
271
  password?: string;
@@ -440,6 +446,20 @@ interface EmptyObject {
440
446
  declare const AppWebSocket: any;
441
447
  declare function isMutationOperation(operation: ApolloLink.Operation): boolean;
442
448
  declare function isSubscriptionOperation(operation: ApolloLink.Operation): boolean;
449
+ declare const DEFER_DIRECTIVE_NAME = "defer";
450
+ /**
451
+ * Return true if the document uses the @defer directive
452
+ */
453
+ declare function hasDeferDirective(document: DocumentNode): boolean;
454
+ /**
455
+ * Remove the @defer directives from a document (deferred fragments are then fetched with the rest of the query)
456
+ */
457
+ declare function removeDeferDirectives(document: DocumentNode): DocumentNode;
458
+ declare function isDeferredOperation(operation: ApolloLink.Operation): boolean;
459
+ /**
460
+ * Convert Angular HttpHeaders (used by the apollo-angular HttpLink) into a plain object, as expected by the Apollo fetch HttpLink
461
+ */
462
+ declare const httpHeadersToRecordLink: ApolloLink;
443
463
  interface TrackedQuery {
444
464
  id: string;
445
465
  name: string;
@@ -904,6 +924,20 @@ declare function removeAll<T>(array: T[], predicate: (value: T) => boolean): T[]
904
924
  */
905
925
  declare function remove<T>(array: T[], predicate: (value: T) => boolean): T;
906
926
  declare function capitalizeFirstLetter(value: string): string;
927
+ /**
928
+ * Resolve a value that can be defined either as a single string, or as a map by locale
929
+ * (e.g. `privacyPolicyUrl` in the environment).
930
+ *
931
+ * When a map is given, the resolution order is:
932
+ * 1. the exact locale key (e.g. `fr-FR`);
933
+ * 2. the language only, extracted from the locale (e.g. `fr`);
934
+ * 3. the given default locale.
935
+ *
936
+ * Blank values are ignored at each step. Returns `undefined` when nothing matches.
937
+ */
938
+ declare function resolveLocaleUrl(value: string | {
939
+ [locale: string]: string;
940
+ } | undefined | null, locale: string, defaultLocale?: string): string | undefined;
907
941
  declare function uncapitalizeFirstLetter(value: string): string;
908
942
  declare function booleanToString(value: any, opts?: {
909
943
  yesLabel: string;
@@ -1555,7 +1589,7 @@ interface InputElement extends FocusableElement {
1555
1589
  }
1556
1590
  declare function isInputElement(object: any): object is InputElement;
1557
1591
  declare function asInputElement<T = any>(object: ElementRef<T> | InputElement): InputElement | undefined;
1558
- declare function tabindexComparator(a: InputElement, b: InputElement): 1 | 0 | -1;
1592
+ declare function tabindexComparator(a: InputElement, b: InputElement): 0 | 1 | -1;
1559
1593
  interface CanGainFocusOptions {
1560
1594
  minTabindex?: number;
1561
1595
  maxTabindex?: number;
@@ -1670,6 +1704,7 @@ declare class MatAutocompleteField implements OnInit, AfterViewInit, OnDestroy,
1670
1704
  protected _fetchMore$: EventEmitter<Event>;
1671
1705
  protected _defaultPanelWidth: string;
1672
1706
  protected _focused: boolean;
1707
+ protected _ignoredBlurEvent: FocusEvent;
1673
1708
  protected _panelClosedAtTime: number;
1674
1709
  protected _classList: string;
1675
1710
  protected get searchText(): string | undefined;
@@ -1797,6 +1832,15 @@ declare class MatAutocompleteField implements OnInit, AfterViewInit, OnDestroy,
1797
1832
  protected searchFromText(value: string): void;
1798
1833
  filterInputTextFocusEvent(event: FocusEvent): boolean;
1799
1834
  protected filterInputTextBlurEvent(event: FocusEvent): void;
1835
+ /**
1836
+ * A blur event may have been ignored while the panel was open, because a click on an option was possible.
1837
+ * If the panel is now closed and the input has not recovered the focus, then the focus has really left the field
1838
+ * (e.g. a click on an empty area of the modal, see issue sumaris-app#2218): handle the blur event now.
1839
+ *
1840
+ * When an option is selected, the input recovers the focus before the panel is closed: no blur is handled.
1841
+ */
1842
+ protected onAutocompleteClosed(): void;
1843
+ protected handleInputTextBlur(event: FocusEvent): void;
1800
1844
  protected emitEnter(event: Event | KeyboardEvent): void;
1801
1845
  emitArrowUp(event: Event | KeyboardEvent): void;
1802
1846
  emitArrowDown(event: Event | KeyboardEvent): void;
@@ -1877,6 +1921,7 @@ declare class MatChipsField implements OnInit, OnDestroy, IAppInputField, Contro
1877
1921
  private _onTouchedCallback;
1878
1922
  private _onFetchMoreCallback;
1879
1923
  private _implicitValue;
1924
+ protected _ignoredBlurEvent: FocusEvent;
1880
1925
  private _subscription;
1881
1926
  private _itemsSubscription;
1882
1927
  private _openedSubscription;
@@ -1994,6 +2039,15 @@ declare class MatChipsField implements OnInit, OnDestroy, IAppInputField, Contro
1994
2039
  focus(): void;
1995
2040
  filterInputTextFocusEvent(event: FocusEvent): boolean;
1996
2041
  protected filterInputTextBlurEvent(event: FocusEvent): void;
2042
+ /**
2043
+ * A blur event may have been ignored while the panel was open, because a click on an option was possible.
2044
+ * If the panel is now closed and the input has not recovered the focus, then the focus has really left the field
2045
+ * (e.g. a click on an empty area of the modal, see issue sumaris-app#2218): handle the blur event now.
2046
+ *
2047
+ * When an option is selected, the input recovers the focus before the panel is closed: no blur is handled.
2048
+ */
2049
+ protected onAutocompleteClosed(): void;
2050
+ protected handleInputTextBlur(event: FocusEvent): void;
1997
2051
  filterChipsFocusEvent(event: FocusEvent): void;
1998
2052
  clearValue(event?: Event): void;
1999
2053
  _initAutocompleteInfiniteScroll(threshold?: string): void;
@@ -2371,14 +2425,52 @@ declare interface TestingPage {
2371
2425
  divider?: boolean;
2372
2426
  }
2373
2427
  declare const APP_TESTING_PAGES: InjectionToken<TestingPage[]>;
2428
+ /** A text part, flagged when it matches the search */
2429
+ declare interface TestingTextPart {
2430
+ text: string;
2431
+ match: boolean;
2432
+ }
2433
+ declare interface TestingPageItem {
2434
+ index: number;
2435
+ page: string;
2436
+ labelParts: TestingTextPart[];
2437
+ pageParts: TestingTextPart[];
2438
+ }
2439
+ declare interface TestingPageSection {
2440
+ labelParts?: TestingTextPart[];
2441
+ items: TestingPageItem[];
2442
+ }
2374
2443
  declare class SharedTestsPage {
2375
- protected route: ActivatedRoute;
2376
- protected router: Router;
2377
- protected translate: TranslateService;
2378
- pages: TestingPage[];
2379
- constructor(route: ActivatedRoute, router: Router, translate: TranslateService, pages: TestingPage[]);
2380
- openPage(page: any): Promise<boolean>;
2381
- static ɵfac: i0.ɵɵFactoryDeclaration<SharedTestsPage, [null, null, null, { optional: true; }]>;
2444
+ protected readonly searchbar: i0.Signal<IonSearchbar>;
2445
+ protected readonly searchText: i0.WritableSignal<string>;
2446
+ protected readonly activeIndex: i0.WritableSignal<number>;
2447
+ protected readonly showSearchbar: i0.WritableSignal<boolean>;
2448
+ protected readonly totalCount: number;
2449
+ protected initialSearchText: string;
2450
+ protected readonly sections: i0.Signal<TestingPageSection[]>;
2451
+ protected readonly visibleCount: i0.Signal<number>;
2452
+ protected readonly route: ActivatedRoute;
2453
+ protected readonly router: Router;
2454
+ protected readonly location: Location;
2455
+ readonly pages: TestingPage[];
2456
+ constructor();
2457
+ ionViewDidEnter(): void;
2458
+ onDocumentKeydown(domEvent: Event): void;
2459
+ toggleSearchbar(): void;
2460
+ openSearchbar(): void;
2461
+ closeSearchbar(): void;
2462
+ onSearchInput(value: string | null | undefined): void;
2463
+ onSearchKeydown(event: KeyboardEvent): void;
2464
+ clearSearch(): void;
2465
+ protected focusSearchbar(): void;
2466
+ openPage(page: string, event?: {
2467
+ ctrlKey?: boolean;
2468
+ metaKey?: boolean;
2469
+ }): Promise<boolean>;
2470
+ protected setActiveIndex(index: number): void;
2471
+ protected findItem(index: number): TestingPageItem | undefined;
2472
+ protected filter(searchText: string): TestingPageSection[];
2473
+ static ɵfac: i0.ɵɵFactoryDeclaration<SharedTestsPage, never>;
2382
2474
  static ɵcmp: i0.ɵɵComponentDeclaration<SharedTestsPage, "app-tests-page", never, {}, {}, never, never, false, never>;
2383
2475
  }
2384
2476
 
@@ -2388,7 +2480,7 @@ declare class SharedTestsPage {
2388
2480
  *
2389
2481
  * To use a new Ionic component, add it here (see https://ionicframework.com/docs/angular/build-options#standalone)
2390
2482
  */
2391
- declare const SHARED_IONIC_COMPONENTS: (typeof IonApp | typeof IonAvatar | typeof IonBackButton | typeof IonBackdrop | typeof IonBadge | typeof IonButton | typeof IonButtons | typeof IonCard | typeof IonCardContent | typeof IonCardHeader | typeof IonCardSubtitle | typeof IonCardTitle | typeof IonCheckbox | typeof IonChip | typeof IonCol | typeof IonContent | typeof IonFab | typeof IonFabButton | typeof IonFooter | typeof IonGrid | typeof IonHeader | typeof IonIcon | typeof IonImg | typeof IonInfiniteScroll | typeof IonInfiniteScrollContent | typeof IonInput | typeof IonItem | typeof IonItemDivider | typeof IonItemGroup | typeof IonLabel | typeof IonList | typeof IonListHeader | typeof IonMenu | typeof IonMenuButton | typeof IonMenuToggle | typeof IonModal | typeof IonNote | typeof IonPopover | typeof IonProgressBar | typeof IonRefresher | typeof IonRefresherContent | typeof IonReorder | typeof IonReorderGroup | typeof IonRouterLink | typeof IonRouterLinkWithHref | typeof IonRouterOutlet | typeof IonRow | typeof IonSearchbar | typeof IonSegment | typeof IonSegmentButton | typeof IonSelect | typeof IonSelectOption | typeof IonSkeletonText | typeof IonSpinner | typeof IonSplitPane | typeof IonText | typeof IonTitle | typeof IonToggle | typeof IonToolbar)[];
2483
+ declare const SHARED_IONIC_COMPONENTS: (typeof IonSearchbar | typeof IonInfiniteScroll | typeof IonModal | typeof IonRouterOutlet | typeof IonContent | typeof IonItem | typeof IonApp | typeof IonAvatar | typeof IonBackButton | typeof IonBackdrop | typeof IonBadge | typeof IonButton | typeof IonButtons | typeof IonCard | typeof IonCardContent | typeof IonCardHeader | typeof IonCardSubtitle | typeof IonCardTitle | typeof IonCheckbox | typeof IonChip | typeof IonCol | typeof IonFab | typeof IonFabButton | typeof IonFooter | typeof IonGrid | typeof IonHeader | typeof IonIcon | typeof IonImg | typeof IonInfiniteScrollContent | typeof IonInput | typeof IonItemDivider | typeof IonItemGroup | typeof IonLabel | typeof IonList | typeof IonListHeader | typeof IonMenu | typeof IonMenuButton | typeof IonMenuToggle | typeof IonNote | typeof IonPopover | typeof IonProgressBar | typeof IonRefresher | typeof IonRefresherContent | typeof IonReorder | typeof IonReorderGroup | typeof IonRouterLink | typeof IonRouterLinkWithHref | typeof IonRow | typeof IonSegment | typeof IonSegmentButton | typeof IonSelect | typeof IonSelectOption | typeof IonSkeletonText | typeof IonSpinner | typeof IonSplitPane | typeof IonText | typeof IonTitle | typeof IonToggle | typeof IonToolbar)[];
2392
2484
  /**
2393
2485
  * Replacement of the (lazy-loaded) `IonicModule`, using Ionic standalone components.
2394
2486
  */
@@ -6083,6 +6175,10 @@ declare class GraphqlService extends StartableService<ApolloClient> {
6083
6175
  protected readonly environment: Environment;
6084
6176
  get client(): ApolloClient;
6085
6177
  get cache(): ApolloCache;
6178
+ /**
6179
+ * Is the @defer directive enabled (see environment.enableGraphqlDefer)? If not, @defer directives are removed from queries
6180
+ */
6181
+ get deferEnabled(): boolean;
6086
6182
  get defaultFetchPolicy(): WatchQueryFetchPolicy;
6087
6183
  get connectionParams(): ConnectionParams;
6088
6184
  constructor();
@@ -7527,6 +7623,19 @@ declare function parseBooleanText(text: string, yesLabel: string, noLabel: strin
7527
7623
  declare class MatAutocompleteFieldUtils {
7528
7624
  static createDisplayFn(displayAttributes: string[], multiple?: boolean, propertySeparator?: string, itemSeparator?: string): DisplayFn;
7529
7625
  static defaultEquals(o1: any, o2: any): boolean;
7626
+ /**
7627
+ * Check if the given event target belongs to the open panel of the autocomplete, or hosts it.
7628
+ *
7629
+ * Used to ignore a blur event while the panel is open, because a click on an option may be in progress:
7630
+ * - the target is inside the panel (e.g. a `<mat-option>`, or a content of an option);
7631
+ * - or the target hosts the panel (e.g. the `<ion-modal>` element, with `tabindex="-1"`, which
7632
+ * becomes the nearest focusable ancestor when pressing a non focusable option).
7633
+ *
7634
+ * A target hosting the panel can also come from a click outside the panel (e.g. on an empty area
7635
+ * of the modal): the caller must handle this blur event when the panel closes, if the input has not
7636
+ * recovered the focus (see issue sumaris-app#2218).
7637
+ */
7638
+ static isPanelTarget(autocomplete: MatAutocomplete, target: EventTarget | null): boolean;
7530
7639
  }
7531
7640
 
7532
7641
  declare class MatPaginatorI18n extends MatPaginatorIntl implements OnDestroy {
@@ -9135,6 +9244,104 @@ declare class AppMarkdownModal implements AppMarkdownModalOptions {
9135
9244
  static ngAcceptInputType_debug: unknown;
9136
9245
  }
9137
9246
 
9247
+ /** Selection state of a textarea, as understandable by the composition helpers. */
9248
+ interface MarkdownSelectionState {
9249
+ text: string;
9250
+ selectionStart: number;
9251
+ selectionEnd: number;
9252
+ }
9253
+ declare class MarkdownUtils {
9254
+ static readonly HTML_ENTITIES_MAP: {
9255
+ [entity: string]: string;
9256
+ };
9257
+ /**
9258
+ * Converts the given text into a valid anchor-compatible format.
9259
+ *
9260
+ * @param {string} text - The input text to be transformed into an anchor.
9261
+ * @return {string} The formatted string suitable for use as an anchor.
9262
+ */
9263
+ static textToAnchor(text: string): string;
9264
+ /**
9265
+ * Adjusts the given anchor ID by replacing underscores with hyphens and converting to lowercase.
9266
+ *
9267
+ * @param {string} anchorId - The anchor ID string to be fixed.
9268
+ * @return {string} The modified anchor ID with underscores replaced by hyphens and converted to lowercase, or the original anchor ID if it is falsy.
9269
+ */
9270
+ static fixAnchor(anchorId: string): string;
9271
+ static isMarkdownFile(url: string): boolean;
9272
+ static resolveRelativeUrl(baseUrl: string, relativePath: string, opts?: {
9273
+ absoluteByDefault: boolean;
9274
+ }): string;
9275
+ static getRootUrl(url: string): string;
9276
+ }
9277
+ /**
9278
+ * Wraps (or unwraps when already wrapped) the textarea selection with the given markdown markers.
9279
+ * Pure function: the caller is responsible for applying the result to the textarea and the control value.
9280
+ *
9281
+ * @param state current text and selection
9282
+ * @param prefix left marker (e.g. '**' for bold, '==' for highlight)
9283
+ * @param suffix right marker, defaults to prefix
9284
+ * @param placeholder text inserted when the selection is empty
9285
+ */
9286
+ declare function wrapSelection(state: MarkdownSelectionState, prefix: string, suffix?: string, placeholder?: string): MarkdownSelectionState;
9287
+ /**
9288
+ * Toggles a line marker (e.g. '# ' for heading 1) on every involved line of the selection.
9289
+ * When all involved lines already have the marker, it is removed; another heading marker is replaced.
9290
+ */
9291
+ declare function toggleLinePrefix(state: MarkdownSelectionState, marker: string): MarkdownSelectionState;
9292
+ /**
9293
+ * Inserts a markdown link: turns the selected text into a link label, or inserts a template
9294
+ * with the given placeholders when the selection is empty. The label stays selected afterwards.
9295
+ */
9296
+ declare function insertLink(state: MarkdownSelectionState, opts?: {
9297
+ url?: string;
9298
+ label?: string;
9299
+ }): MarkdownSelectionState;
9300
+
9301
+ /**
9302
+ * Markdown composition toolbar: a row of buttons that insert markdown syntax
9303
+ * at the caret of the linked textarea (bold, underline, strikethrough, highlight, headings, bullet list, link, attachment).
9304
+ *
9305
+ * Purely presentational towards the text: the component emits the new text through
9306
+ * {@link textChange}, so the host remains owner of the form control value.
9307
+ * The caret and selection are restored on the textarea after each action.
9308
+ */
9309
+ declare class MarkdownToolbarComponent {
9310
+ /** The textarea to edit (native element). */
9311
+ textarea: HTMLTextAreaElement;
9312
+ /** Disable all buttons (e.g. when the host form is disabled). */
9313
+ disabled: boolean;
9314
+ /** Disable the edition buttons, but not the preview toggle (e.g. when the preview replaces the text). */
9315
+ editDisabled: boolean;
9316
+ /** Show the attachment (paper clip) button. */
9317
+ canAttach: boolean;
9318
+ /** Reflects the current preview state (highlight the toggle button when active). */
9319
+ preview: boolean;
9320
+ /** Emits the new text value after each insertion. */
9321
+ textChange: EventEmitter<string>;
9322
+ /** Emits when the attachment button is clicked. */
9323
+ attachClick: EventEmitter<Event>;
9324
+ /** Emits when the preview toggle button is clicked. */
9325
+ previewToggle: EventEmitter<void>;
9326
+ bold(): void;
9327
+ /** Underline: no markdown syntax exists, so use the inline HTML `<u>` tag (rendered by marked, and portable) */
9328
+ underline(): void;
9329
+ /** Strikethrough (GFM syntax) */
9330
+ strikethrough(): void;
9331
+ highlight(): void;
9332
+ heading1(): void;
9333
+ heading2(): void;
9334
+ /** Bullet list: toggle the '- ' marker on each selected line */
9335
+ bulletList(): void;
9336
+ link(): void;
9337
+ onAttachClick(event: Event): void;
9338
+ togglePreview(): void;
9339
+ protected currentState(): MarkdownSelectionState;
9340
+ protected apply(next: MarkdownSelectionState): void;
9341
+ static ɵfac: i0.ɵɵFactoryDeclaration<MarkdownToolbarComponent, never>;
9342
+ static ɵcmp: i0.ɵɵComponentDeclaration<MarkdownToolbarComponent, "app-markdown-toolbar", never, { "textarea": { "alias": "textarea"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "editDisabled": { "alias": "editDisabled"; "required": false; }; "canAttach": { "alias": "canAttach"; "required": false; }; "preview": { "alias": "preview"; "required": false; }; }, { "textChange": "textChange"; "attachClick": "attachClick"; "previewToggle": "previewToggle"; }, never, never, false, never>;
9343
+ }
9344
+
9138
9345
  declare class MarkdownDirective implements OnDestroy {
9139
9346
  private service;
9140
9347
  private element;
@@ -9167,7 +9374,7 @@ declare class SharedDebugModule {
9167
9374
  declare class SharedMarkdownModule {
9168
9375
  static forRoot(): ModuleWithProviders<SharedMarkdownModule>;
9169
9376
  static ɵfac: i0.ɵɵFactoryDeclaration<SharedMarkdownModule, never>;
9170
- static ɵmod: i0.ɵɵNgModuleDeclaration<SharedMarkdownModule, [typeof AppMarkdownContent, typeof AppMarkdownModal, typeof MarkdownDirective], [typeof i2$1.CommonModule, typeof SharedIonicModule, typeof i9.TranslatePipe, typeof i11$1.MarkdownModule, typeof SharedToolbarModule, typeof SharedDebugModule], [typeof i11$1.MarkdownModule, typeof AppMarkdownContent, typeof MarkdownDirective]>;
9377
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SharedMarkdownModule, [typeof AppMarkdownContent, typeof AppMarkdownModal, typeof MarkdownToolbarComponent, typeof MarkdownDirective], [typeof i2$1.CommonModule, typeof SharedIonicModule, typeof i9.TranslatePipe, typeof SharedMaterialModule, typeof i11$1.MarkdownModule, typeof SharedToolbarModule, typeof SharedDebugModule], [typeof i11$1.MarkdownModule, typeof AppMarkdownContent, typeof MarkdownDirective, typeof MarkdownToolbarComponent]>;
9171
9378
  static ɵinj: i0.ɵɵInjectorDeclaration<SharedMarkdownModule>;
9172
9379
  }
9173
9380
 
@@ -9566,30 +9773,16 @@ declare class SharedAsyncValidators {
9566
9773
  }): Subscription;
9567
9774
  }
9568
9775
 
9569
- declare class MarkdownUtils {
9570
- static readonly HTML_ENTITIES_MAP: {
9571
- [entity: string]: string;
9572
- };
9573
- /**
9574
- * Converts the given text into a valid anchor-compatible format.
9575
- *
9576
- * @param {string} text - The input text to be transformed into an anchor.
9577
- * @return {string} The formatted string suitable for use as an anchor.
9578
- */
9579
- static textToAnchor(text: string): string;
9580
- /**
9581
- * Adjusts the given anchor ID by replacing underscores with hyphens and converting to lowercase.
9582
- *
9583
- * @param {string} anchorId - The anchor ID string to be fixed.
9584
- * @return {string} The modified anchor ID with underscores replaced by hyphens and converted to lowercase, or the original anchor ID if it is falsy.
9585
- */
9586
- static fixAnchor(anchorId: string): string;
9587
- static isMarkdownFile(url: string): boolean;
9588
- static resolveRelativeUrl(baseUrl: string, relativePath: string, opts?: {
9589
- absoluteByDefault: boolean;
9590
- }): string;
9591
- static getRootUrl(url: string): string;
9592
- }
9776
+ /**
9777
+ * Marked inline extension rendering `==highlighted text==` as `<mark>` elements.
9778
+ *
9779
+ * The highlight syntax has no GFM standard: this extension completes the renderer
9780
+ * used by ngx-markdown, so composed messages (feed, inbox) render the same way as they are previewed.
9781
+ *
9782
+ * Registered through `SharedMarkdownModule.forRoot()` (`markedExtensions` option),
9783
+ * and testable without Angular by applying it on a `Marked` instance.
9784
+ */
9785
+ declare const compositionMarkdownExtensions: MarkedExtension[];
9593
9786
 
9594
9787
  interface IGitlabRelease {
9595
9788
  name: string;
@@ -10294,6 +10487,7 @@ declare abstract class AppTable<T extends IEntity<T, ID>, F = any, ID = number>
10294
10487
  protected previouslyEditedRowId: number;
10295
10488
  protected formErrorAdapter: FormErrorTranslator;
10296
10489
  protected readonly destroySubject: Subject<void>;
10490
+ protected logPrefix: string;
10297
10491
  excludesColumns: string[];
10298
10492
  displayedColumns: string[];
10299
10493
  errorTranslateOptions: FormErrorTranslateOptions;
@@ -10350,6 +10544,8 @@ declare abstract class AppTable<T extends IEntity<T, ID>, F = any, ID = number>
10350
10544
  defaultPageSize: number;
10351
10545
  defaultPageSizeOptions: number[];
10352
10546
  focusColumn: string;
10547
+ get reservedStartColumns(): string[];
10548
+ get reservedEndColumns(): string[];
10353
10549
  get firstUserColumn(): string;
10354
10550
  get lastUserColumn(): string;
10355
10551
  set dataSource(value: EntitiesTableDataSource<T, F, ID>);
@@ -10486,6 +10682,20 @@ declare abstract class AppTable<T extends IEntity<T, ID>, F = any, ID = number>
10486
10682
  confirmAndForward(event: Event | undefined, row?: TableElement<T>, opts?: {
10487
10683
  focusColumn?: string;
10488
10684
  }): boolean | Promise<boolean>;
10685
+ /**
10686
+ * Confirms the current row and moves the focus to the upper row.
10687
+ * Typical usage is inside a <input type="number">, with `(keyup.arrowUp)="confirmAndUp(event, row, {focusColumn: columnName})"`
10688
+ * Same as confirmAndBackward, but on the current row.
10689
+ *
10690
+ * @param {Event} [event] - The event associated with the confirmation and update action.
10691
+ * @param {TableElement} [row] - The current row object (defaults to the edited row).
10692
+ * @param {Object} [opts] - Options.
10693
+ * @param {string} [opts.focusColumn] - The column to focus on the upper row; defaults to the current focus column
10694
+ * @return `true` if the navigation has been done, or a promise of it if the row validation is pending
10695
+ */
10696
+ confirmAndUp(event?: Event, row?: TableElement<T>, opts?: {
10697
+ focusColumn?: string;
10698
+ }): boolean | Promise<boolean>;
10489
10699
  /**
10490
10700
  * Confirm the creation of the given row, or if not specified the currently edited row
10491
10701
  *
@@ -10501,9 +10711,21 @@ declare abstract class AppTable<T extends IEntity<T, ID>, F = any, ID = number>
10501
10711
  focusColumn?: string;
10502
10712
  editing?: boolean;
10503
10713
  }): Promise<boolean>;
10714
+ /**
10715
+ * Save the table
10716
+ *
10717
+ * @param opts.keepEditing if true, the edited row will be kept after save (defaulting to this.keepEditedRowOnSave)
10718
+ * @param opts.keepSelection if true, the selected row will be kept after save (no effect if opts.keepEditing is true)
10719
+ * @param opts.confirmRow if true or not provided, the edited row will be confirmed before save
10720
+ * @param opts.throwIfNotConfirmed if true or not provided, an error will be thrown if the edited row is not confirmed
10721
+ */
10504
10722
  save(opts?: {
10505
10723
  keepEditing?: boolean;
10724
+ keepSelection?: boolean;
10725
+ confirmRow?: boolean;
10726
+ throwIfNotConfirmed?: boolean;
10506
10727
  }): Promise<boolean>;
10728
+ protected selectRowsByIds(rowIds: number[]): Promise<void>;
10507
10729
  cancel(event?: Event, opts?: {
10508
10730
  interactive?: boolean;
10509
10731
  }): void;
@@ -10582,6 +10804,8 @@ declare abstract class AppTable<T extends IEntity<T, ID>, F = any, ID = number>
10582
10804
  }): Promise<boolean>;
10583
10805
  protected canCancelRows(rows?: TableElement<T>[], opts?: {
10584
10806
  interactive?: boolean;
10807
+ backdropDismiss?: boolean;
10808
+ keyboardClose?: boolean;
10585
10809
  }): Promise<boolean>;
10586
10810
  protected saveBeforeAction(saveAction: SaveActionType): Promise<boolean>;
10587
10811
  /**
@@ -12174,6 +12398,7 @@ declare class AppPropertiesForm<O = any, T extends Property<O> = Property<O>, S
12174
12398
  declare class ActionsColumnComponent<T extends TableElement<any> | AsyncTableElement<any>> implements OnInit, OnDestroy {
12175
12399
  private table;
12176
12400
  private cd;
12401
+ private readonly navigationFocus;
12177
12402
  columnDef: MatColumnDef;
12178
12403
  matMenuTrigger: MatMenuTrigger;
12179
12404
  matColumnDef: string;
@@ -12195,6 +12420,8 @@ declare class ActionsColumnComponent<T extends TableElement<any> | AsyncTableEle
12195
12420
  cellTemplate: TemplateRef<{
12196
12421
  $implicit: T;
12197
12422
  }>;
12423
+ /** Max duration (in ms) of the Tab key lock, if the focus never reaches a cell after a navigation */
12424
+ navigationTimeout: number;
12198
12425
  optionsClick: EventEmitter<Event>;
12199
12426
  cancelOrDeleteClick: EventEmitter<{
12200
12427
  event: Event;
@@ -12220,8 +12447,10 @@ declare class ActionsColumnComponent<T extends TableElement<any> | AsyncTableEle
12220
12447
  constructor(table: MatTable<any>, cd: ChangeDetectorRef);
12221
12448
  ngOnInit(): void;
12222
12449
  ngOnDestroy(): void;
12450
+ protected emitForward(event: Event, row: T): void;
12451
+ protected emitBackward(event: Event, row: T): void;
12223
12452
  static ɵfac: i0.ɵɵFactoryDeclaration<ActionsColumnComponent<any>, never>;
12224
- static ɵcmp: i0.ɵɵComponentDeclaration<ActionsColumnComponent<any>, "app-actions-column", never, { "matColumnDef": { "alias": "matColumnDef"; "required": false; }; "style": { "alias": "style"; "required": false; }; "showPendingSpinner": { "alias": "showPendingSpinner"; "required": false; }; "stickyEnd": { "alias": "stickyEnd"; "required": false; }; "canCancel": { "alias": "canCancel"; "required": false; }; "canConfirm": { "alias": "canConfirm"; "required": false; }; "canDelete": { "alias": "canDelete"; "required": false; }; "canBackward": { "alias": "canBackward"; "required": false; }; "canForward": { "alias": "canForward"; "required": false; }; "canConfirmAndAdd": { "alias": "canConfirmAndAdd"; "required": false; }; "dirtyIcon": { "alias": "dirtyIcon"; "required": false; }; "optionsTitle": { "alias": "optionsTitle"; "required": false; }; "classList": { "alias": "class"; "required": false; }; "cellTemplateStart": { "alias": "cellTemplateStart"; "required": false; }; "cellTemplate": { "alias": "cellTemplate"; "required": false; }; }, { "optionsClick": "optionsClick"; "cancelOrDeleteClick": "cancelOrDeleteClick"; "confirmEditCreateClick": "confirmEditCreateClick"; "confirmAndAddClick": "confirmAndAddClick"; "backward": "backward"; "forward": "forward"; }, never, ["[matHeader]", "[matFooter]", "[matHeader]", "[matFooter]"], false, never>;
12453
+ static ɵcmp: i0.ɵɵComponentDeclaration<ActionsColumnComponent<any>, "app-actions-column", never, { "matColumnDef": { "alias": "matColumnDef"; "required": false; }; "style": { "alias": "style"; "required": false; }; "showPendingSpinner": { "alias": "showPendingSpinner"; "required": false; }; "stickyEnd": { "alias": "stickyEnd"; "required": false; }; "canCancel": { "alias": "canCancel"; "required": false; }; "canConfirm": { "alias": "canConfirm"; "required": false; }; "canDelete": { "alias": "canDelete"; "required": false; }; "canBackward": { "alias": "canBackward"; "required": false; }; "canForward": { "alias": "canForward"; "required": false; }; "canConfirmAndAdd": { "alias": "canConfirmAndAdd"; "required": false; }; "dirtyIcon": { "alias": "dirtyIcon"; "required": false; }; "optionsTitle": { "alias": "optionsTitle"; "required": false; }; "classList": { "alias": "class"; "required": false; }; "cellTemplateStart": { "alias": "cellTemplateStart"; "required": false; }; "cellTemplate": { "alias": "cellTemplate"; "required": false; }; "navigationTimeout": { "alias": "navigationTimeout"; "required": false; }; }, { "optionsClick": "optionsClick"; "cancelOrDeleteClick": "cancelOrDeleteClick"; "confirmEditCreateClick": "confirmEditCreateClick"; "confirmAndAddClick": "confirmAndAddClick"; "backward": "backward"; "forward": "forward"; }, never, ["[matHeader]", "[matFooter]", "[matHeader]", "[matFooter]"], false, never>;
12225
12454
  static ngAcceptInputType_showPendingSpinner: unknown;
12226
12455
  static ngAcceptInputType_stickyEnd: unknown;
12227
12456
  static ngAcceptInputType_canCancel: unknown;
@@ -12235,15 +12464,7 @@ declare class ActionsColumnComponent<T extends TableElement<any> | AsyncTableEle
12235
12464
  declare class NavActionsColumnComponent<T extends TableElement<any> | AsyncTableElement<any> = TableElement<any>> implements OnInit, OnDestroy {
12236
12465
  private matTable;
12237
12466
  private cd;
12238
- _subscription: Subscription;
12239
- _forwardEventSubject: Subject<{
12240
- event: Event;
12241
- row: T;
12242
- }>;
12243
- _backwardEventSubject: Subject<{
12244
- event: Event;
12245
- row: T;
12246
- }>;
12467
+ private readonly navigationFocus;
12247
12468
  columnDef: MatColumnDef;
12248
12469
  matMenuTrigger: MatMenuTrigger;
12249
12470
  appTable: AppTable<any> | AppAsyncTable<any>;
@@ -12257,7 +12478,8 @@ declare class NavActionsColumnComponent<T extends TableElement<any> | AsyncTable
12257
12478
  cellTemplate: TemplateRef<{
12258
12479
  $implicit: T;
12259
12480
  }>;
12260
- throttleTime: number;
12481
+ /** Max duration (in ms) of the Tab key lock, if the focus never reaches a cell after a navigation */
12482
+ navigationTimeout: number;
12261
12483
  optionsClick: EventEmitter<Event>;
12262
12484
  showTooltip: boolean;
12263
12485
  constructor(matTable: MatTable<any>, cd: ChangeDetectorRef, appTable: AppTable<any>, appAsyncTable: AppAsyncTable<any>);
@@ -12267,7 +12489,7 @@ declare class NavActionsColumnComponent<T extends TableElement<any> | AsyncTable
12267
12489
  protected confirmAndForward(event: Event, row: T): void;
12268
12490
  protected confirmAndBackward(event: Event, row: T): void;
12269
12491
  static ɵfac: i0.ɵɵFactoryDeclaration<NavActionsColumnComponent<any>, [null, null, { optional: true; }, { optional: true; }]>;
12270
- static ɵcmp: i0.ɵɵComponentDeclaration<NavActionsColumnComponent<any>, "app-nav-actions-column", never, { "appTable": { "alias": "appTable"; "required": false; }; "matColumnDef": { "alias": "matColumnDef"; "required": false; }; "style": { "alias": "style"; "required": false; }; "stickyEnd": { "alias": "stickyEnd"; "required": false; }; "showPending": { "alias": "showPending"; "required": false; }; "dirtyIcon": { "alias": "dirtyIcon"; "required": false; }; "optionsTitle": { "alias": "optionsTitle"; "required": false; }; "classList": { "alias": "class"; "required": false; }; "cellTemplate": { "alias": "cellTemplate"; "required": false; }; "throttleTime": { "alias": "throttleTime"; "required": false; }; }, { "optionsClick": "optionsClick"; }, never, ["[matHeader]", "[matFooter]", "[matHeader]", "[matFooter]"], false, never>;
12492
+ static ɵcmp: i0.ɵɵComponentDeclaration<NavActionsColumnComponent<any>, "app-nav-actions-column", never, { "appTable": { "alias": "appTable"; "required": false; }; "matColumnDef": { "alias": "matColumnDef"; "required": false; }; "style": { "alias": "style"; "required": false; }; "stickyEnd": { "alias": "stickyEnd"; "required": false; }; "showPending": { "alias": "showPending"; "required": false; }; "dirtyIcon": { "alias": "dirtyIcon"; "required": false; }; "optionsTitle": { "alias": "optionsTitle"; "required": false; }; "classList": { "alias": "class"; "required": false; }; "cellTemplate": { "alias": "cellTemplate"; "required": false; }; "navigationTimeout": { "alias": "navigationTimeout"; "required": false; }; }, { "optionsClick": "optionsClick"; }, never, ["[matHeader]", "[matFooter]", "[matHeader]", "[matFooter]"], false, never>;
12271
12493
  static ngAcceptInputType_stickyEnd: unknown;
12272
12494
  static ngAcceptInputType_showPending: unknown;
12273
12495
  }
@@ -12431,7 +12653,7 @@ declare class AppInstallUpgradeCard implements OnInit, OnDestroy {
12431
12653
  download(event: Event, link: InstallAppLink): Promise<void>;
12432
12654
  openFile(event: Event, link: InstallAppLink): Promise<void>;
12433
12655
  tryOnline(): Promise<void>;
12434
- getPlatformName(platform: 'android' | 'ios' | 'electron'): "" | "desktop" | "Android" | "iOS";
12656
+ getPlatformName(platform: 'android' | 'ios' | 'electron'): "" | "Android" | "iOS" | "desktop";
12435
12657
  asLink(value: any): InstallAppLink;
12436
12658
  private checkNeedInstallOrUpdate;
12437
12659
  private getCompatibleInstallLinks;
@@ -12849,12 +13071,18 @@ interface MessageModalOptions {
12849
13071
  deleteFn?: FileDeleteFn<any>;
12850
13072
  maxAttachmentSizeMb?: number;
12851
13073
  }
12852
- declare class MessageModal implements OnInit, AfterViewInit, MessageModalOptions {
13074
+ declare class MessageModal implements OnInit, AfterViewInit, OnDestroy, MessageModalOptions {
12853
13075
  protected settings: LocalSettingsService;
12854
13076
  protected viewCtrl: ModalController;
12855
13077
  protected accountService: AccountService;
12856
13078
  protected cd: ChangeDetectorRef;
12857
13079
  private readonly userController;
13080
+ /** Margin (in px) kept between the modal and the window borders, when the modal grows */
13081
+ static readonly FIT_HEIGHT_MARGIN = 50;
13082
+ /** Min window width (in px) to display the body preview side by side with the text (2 columns), in a wider modal */
13083
+ static readonly PREVIEW_SIDE_BY_SIDE_MIN_WINDOW_WIDTH = 1000;
13084
+ /** Max modal width (in px), when the body preview is displayed side by side */
13085
+ static readonly PREVIEW_SIDE_BY_SIDE_MAX_WIDTH = 1200;
12858
13086
  readonly mobile: boolean;
12859
13087
  debug: boolean;
12860
13088
  title: string;
@@ -12869,9 +13097,18 @@ declare class MessageModal implements OnInit, AfterViewInit, MessageModalOptions
12869
13097
  deleteFn: FileDeleteFn<any>;
12870
13098
  maxAttachmentSizeMb: number;
12871
13099
  private form;
13100
+ protected readonly elementRef: ElementRef<HTMLElement>;
13101
+ /** Initial (default) height of the modal, used as the min height when fitting the content */
13102
+ private initialHeight;
13103
+ /** Attachments count, at the last fit (used to allow the modal to shrink only when an attachment has been removed) */
13104
+ private fittedAttachmentsCount;
13105
+ private resizeObserver;
13106
+ /** Display the body preview side by side with the text (if enough space), or replacing the text */
13107
+ protected bodyPreviewSideBySide: boolean;
12872
13108
  constructor(settings: LocalSettingsService, viewCtrl: ModalController, accountService: AccountService, cd: ChangeDetectorRef, userController: IUserController);
12873
13109
  ngOnInit(): void;
12874
13110
  ngAfterViewInit(): void;
13111
+ ngOnDestroy(): void;
12875
13112
  cancel(): void;
12876
13113
  openSelectUsers(event: Event): Promise<void>;
12877
13114
  doSubmit(): Promise<any>;
@@ -12882,6 +13119,25 @@ declare class MessageModal implements OnInit, AfterViewInit, MessageModalOptions
12882
13119
  protected markAsLoaded(opts?: {
12883
13120
  emitEvent?: boolean;
12884
13121
  }): void;
13122
+ /**
13123
+ * Observe the attachments area: when its size changes, fit the modal height to its content
13124
+ */
13125
+ protected observeAttachmentsResize(): void;
13126
+ /**
13127
+ * Fit the modal height to its content (to avoid any scroll), between its initial height,
13128
+ * and the window height (minus a margin). The modal never shrinks below its initial height.
13129
+ *
13130
+ * To avoid any flickering, the modal shrinks only when an attachment has been removed (or if `allowShrink`): the upload progress
13131
+ * (global and per file progress bars) makes the content grow temporarily, so the reached height is kept after the upload.
13132
+ */
13133
+ protected fitHeightToContent(opts?: {
13134
+ allowShrink?: boolean;
13135
+ }): void;
13136
+ /**
13137
+ * When the body preview is toggled: if enough space, widen the modal to display the preview side by side with the text;
13138
+ * otherwise (e.g. mobile, or small window), the preview replaces the text
13139
+ */
13140
+ protected onBodyPreviewChange(preview: boolean): void;
12885
13141
  static ɵfac: i0.ɵɵFactoryDeclaration<MessageModal, [null, null, null, null, { optional: true; }]>;
12886
13142
  static ɵcmp: i0.ɵɵComponentDeclaration<MessageModal, "app-message-modal", never, { "debug": { "alias": "debug"; "required": false; }; "title": { "alias": "title"; "required": false; }; "suggestFn": { "alias": "suggestFn"; "required": false; }; "data": { "alias": "data"; "required": false; }; "canSelectType": { "alias": "canSelectType"; "required": false; }; "canRecipientFilter": { "alias": "canRecipientFilter"; "required": false; }; "canSearchRecipients": { "alias": "canSearchRecipients"; "required": false; }; "recipientFilterCount": { "alias": "recipientFilterCount"; "required": false; }; "canAttach": { "alias": "canAttach"; "required": false; }; "uploadFn": { "alias": "uploadFn"; "required": false; }; "deleteFn": { "alias": "deleteFn"; "required": false; }; "maxAttachmentSizeMb": { "alias": "maxAttachmentSizeMb"; "required": false; }; }, {}, never, never, false, never>;
12887
13143
  static ngAcceptInputType_debug: unknown;
@@ -13641,6 +13897,7 @@ declare class MessageForm extends AppForm<Message> implements OnInit {
13641
13897
  /**
13642
13898
  * Allow the user to attach files to the message.
13643
13899
  * When enabled, {@link uploadFn} and {@link deleteFn} should also be provided (see `UploadFileComponent`).
13900
+ * Also used by the markdown toolbar to show its attachment (paper clip) button.
13644
13901
  */
13645
13902
  canAttach: boolean;
13646
13903
  /** Upload callback, called for each added file (usually a call to the REST endpoint `POST api/upload`) */
@@ -13649,7 +13906,18 @@ declare class MessageForm extends AppForm<Message> implements OnInit {
13649
13906
  deleteFn: FileDeleteFn<any>;
13650
13907
  /** Max size of an attached file, in megabytes (default: 20 Mo) */
13651
13908
  maxAttachmentSizeMb: number;
13909
+ /**
13910
+ * Layout of the body preview: side by side with the body text (2 columns), or replacing the text (e.g. on small screens).
13911
+ * The edition toolbar buttons are disabled when the preview replaces the text.
13912
+ */
13913
+ bodyPreviewSideBySide: boolean;
13652
13914
  searchRecipients: EventEmitter<Event>;
13915
+ /** Emits when the attachment button is clicked (after opening the file browser) */
13916
+ attach: EventEmitter<Event>;
13917
+ /** Emits when the body preview is toggled (e.g. to let the parent modal grow, if side by side) */
13918
+ bodyPreviewChange: EventEmitter<boolean>;
13919
+ /** Whether the markdown preview of the body is displayed. */
13920
+ protected bodyPreview: boolean;
13653
13921
  attachmentsUpload: UploadFileComponent;
13654
13922
  types: readonly {
13655
13923
  id: string;
@@ -13666,6 +13934,12 @@ declare class MessageForm extends AppForm<Message> implements OnInit {
13666
13934
  constructor(injector: Injector, formBuilder: UntypedFormBuilder, cd: ChangeDetectorRef);
13667
13935
  ngOnInit(): void;
13668
13936
  isSamePerson(o1: Person, o2: Person): boolean;
13937
+ /**
13938
+ * New body value, emitted by the markdown toolbar after an insertion at the caret.
13939
+ * The textarea value (and its caret) has already been updated by the toolbar.
13940
+ */
13941
+ protected onBodyTextChange(value: string): void;
13942
+ protected toggleBodyPreview(): void;
13669
13943
  setValue(data: Message, opts?: {
13670
13944
  emitEvent?: boolean;
13671
13945
  onlySelf?: boolean;
@@ -13679,6 +13953,9 @@ declare class MessageForm extends AppForm<Message> implements OnInit {
13679
13953
  /**
13680
13954
  * Open the file browser, to add an attachment
13681
13955
  */
13956
+ /**
13957
+ * Open the file browser (called by the markdown toolbar attachment button), then emit {@link attach}
13958
+ */
13682
13959
  addAttachment(event?: Event): void;
13683
13960
  /**
13684
13961
  * Highlight the form when a file is dragged over it
@@ -13707,8 +13984,9 @@ declare class MessageForm extends AppForm<Message> implements OnInit {
13707
13984
  }): void;
13708
13985
  protected markForCheck(): void;
13709
13986
  static ɵfac: i0.ɵɵFactoryDeclaration<MessageForm, never>;
13710
- static ɵcmp: i0.ɵɵComponentDeclaration<MessageForm, "app-message-form", never, { "mobile": { "alias": "mobile"; "required": false; }; "suggestFn": { "alias": "suggestFn"; "required": false; }; "subjectMinLength": { "alias": "subjectMinLength"; "required": false; }; "subjectMaxLength": { "alias": "subjectMaxLength"; "required": false; }; "bodyMaxLength": { "alias": "bodyMaxLength"; "required": false; }; "bodyAutoHeight": { "alias": "bodyAutoHeight"; "required": false; }; "canSelectType": { "alias": "canSelectType"; "required": false; }; "canRecipientFilter": { "alias": "canRecipientFilter"; "required": false; }; "recipientFilterCount": { "alias": "recipientFilterCount"; "required": false; }; "canSearchRecipients": { "alias": "canSearchRecipients"; "required": false; }; "canAttach": { "alias": "canAttach"; "required": false; }; "uploadFn": { "alias": "uploadFn"; "required": false; }; "deleteFn": { "alias": "deleteFn"; "required": false; }; "maxAttachmentSizeMb": { "alias": "maxAttachmentSizeMb"; "required": false; }; }, { "searchRecipients": "searchRecipients"; }, never, never, false, never>;
13987
+ static ɵcmp: i0.ɵɵComponentDeclaration<MessageForm, "app-message-form", never, { "mobile": { "alias": "mobile"; "required": false; }; "suggestFn": { "alias": "suggestFn"; "required": false; }; "subjectMinLength": { "alias": "subjectMinLength"; "required": false; }; "subjectMaxLength": { "alias": "subjectMaxLength"; "required": false; }; "bodyMaxLength": { "alias": "bodyMaxLength"; "required": false; }; "bodyAutoHeight": { "alias": "bodyAutoHeight"; "required": false; }; "canSelectType": { "alias": "canSelectType"; "required": false; }; "canRecipientFilter": { "alias": "canRecipientFilter"; "required": false; }; "recipientFilterCount": { "alias": "recipientFilterCount"; "required": false; }; "canSearchRecipients": { "alias": "canSearchRecipients"; "required": false; }; "canAttach": { "alias": "canAttach"; "required": false; }; "uploadFn": { "alias": "uploadFn"; "required": false; }; "deleteFn": { "alias": "deleteFn"; "required": false; }; "maxAttachmentSizeMb": { "alias": "maxAttachmentSizeMb"; "required": false; }; "bodyPreviewSideBySide": { "alias": "bodyPreviewSideBySide"; "required": false; }; }, { "searchRecipients": "searchRecipients"; "attach": "attach"; "bodyPreviewChange": "bodyPreviewChange"; }, never, never, false, never>;
13711
13988
  static ngAcceptInputType_canAttach: boolean | null | undefined | string;
13989
+ static ngAcceptInputType_bodyPreviewSideBySide: boolean | null | undefined | string;
13712
13990
  }
13713
13991
 
13714
13992
  declare class IsOnFieldPipe implements PipeTransform {
@@ -13782,7 +14060,7 @@ declare class CorePipesModule {
13782
14060
 
13783
14061
  declare class MessageModule {
13784
14062
  static ɵfac: i0.ɵɵFactoryDeclaration<MessageModule, never>;
13785
- static ɵmod: i0.ɵɵNgModuleDeclaration<MessageModule, [typeof MessageModal, typeof MessageForm], [typeof i2$1.CommonModule, typeof SharedModule, typeof CorePipesModule, typeof i12$2.MatChipsModule, typeof SharedDebugModule], [typeof MessageModal, typeof MessageForm]>;
14063
+ static ɵmod: i0.ɵɵNgModuleDeclaration<MessageModule, [typeof MessageModal, typeof MessageForm], [typeof i2$1.CommonModule, typeof SharedModule, typeof CorePipesModule, typeof i12$2.MatChipsModule, typeof SharedDebugModule, typeof SharedMarkdownModule], [typeof MessageModal, typeof MessageForm]>;
13786
14064
  static ɵinj: i0.ɵɵInjectorDeclaration<MessageModule>;
13787
14065
  }
13788
14066
 
@@ -15047,6 +15325,7 @@ declare class AutocompleteTestPage implements OnInit, AfterViewInit {
15047
15325
  protected _$items: BehaviorSubject<EntityTestClass$1[]>;
15048
15326
  protected _favoriteItems: any[];
15049
15327
  protected _favoriteFarItems: any[];
15328
+ protected _favoritesDirty: boolean;
15050
15329
  form: UntypedFormGroup;
15051
15330
  autocompleteFields: MatAutocompleteConfigHolder;
15052
15331
  memoryHide: boolean;
@@ -15066,6 +15345,8 @@ declare class AutocompleteTestPage implements OnInit, AfterViewInit {
15066
15345
  suggest(value: any, filter?: any): Promise<LoadResult<EntityTestClass$1>>;
15067
15346
  doSubmit(_: any): void;
15068
15347
  equals(o1: EntityTestClass$1, o2: EntityTestClass$1): boolean;
15348
+ onToggleFavorite({ value }: MatAutocompleteFieldToggleFavorite): void;
15349
+ onFavoritesPanelOpenedChange(field: MatAutocompleteField, opened: boolean): void;
15069
15350
  toggleMode(value: any): void;
15070
15351
  startMemoryTimer(): void;
15071
15352
  stopMemoryTimer(): void;
@@ -15982,11 +16263,40 @@ declare class FeedTestingModule {
15982
16263
  static ɵinj: i0.ɵɵInjectorDeclaration<FeedTestingModule>;
15983
16264
  }
15984
16265
 
16266
+ declare class MessageFormTestingPage implements AfterViewInit {
16267
+ protected modalCtrl: ModalController;
16268
+ protected cd: ChangeDetectorRef;
16269
+ form: MessageForm;
16270
+ protected debug: boolean;
16271
+ protected canSelectType: boolean;
16272
+ protected canAttach: boolean;
16273
+ protected bodyPreviewSideBySide: boolean;
16274
+ protected modalResult: any;
16275
+ protected suggestFn: SuggestFn<Person, PersonFilter>;
16276
+ /** Simulate an upload (with progression) */
16277
+ protected uploadFn: (file: File) => Observable<FileEvent<{
16278
+ finalName: string;
16279
+ }>>;
16280
+ protected deleteFn: (_file: File) => Promise<boolean>;
16281
+ constructor(modalCtrl: ModalController, cd: ChangeDetectorRef);
16282
+ ngAfterViewInit(): void;
16283
+ protected reset(withSample?: boolean): Promise<void>;
16284
+ protected openModal(): Promise<void>;
16285
+ static ɵfac: i0.ɵɵFactoryDeclaration<MessageFormTestingPage, never>;
16286
+ static ɵcmp: i0.ɵɵComponentDeclaration<MessageFormTestingPage, "app-message-form-testing", never, {}, {}, never, never, false, never>;
16287
+ }
16288
+
16289
+ declare class MessageFormTestingModule {
16290
+ static ɵfac: i0.ɵɵFactoryDeclaration<MessageFormTestingModule, never>;
16291
+ static ɵmod: i0.ɵɵNgModuleDeclaration<MessageFormTestingModule, [typeof MessageFormTestingPage], [typeof SharedModule, typeof i5.FormsModule, typeof MessageModule], [typeof MessageFormTestingPage]>;
16292
+ static ɵinj: i0.ɵɵInjectorDeclaration<MessageFormTestingModule>;
16293
+ }
16294
+
15985
16295
  declare const SOCIAL_TESTING_PAGES: TestingPage[];
15986
16296
 
15987
16297
  declare class SocialTestingModule {
15988
16298
  static ɵfac: i0.ɵɵFactoryDeclaration<SocialTestingModule, never>;
15989
- static ɵmod: i0.ɵɵNgModuleDeclaration<SocialTestingModule, never, [typeof i2$1.CommonModule, typeof i4$1.RouterModule, typeof JobTestingModule, typeof UserEventTestingModule, typeof FeedTestingModule], never>;
16299
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SocialTestingModule, never, [typeof i2$1.CommonModule, typeof i4$1.RouterModule, typeof JobTestingModule, typeof UserEventTestingModule, typeof FeedTestingModule, typeof MessageFormTestingModule], never>;
15990
16300
  static ɵinj: i0.ɵɵInjectorDeclaration<SocialTestingModule>;
15991
16301
  }
15992
16302
 
@@ -16010,5 +16320,5 @@ declare class TableValidatorService extends ReferentialValidatorService {
16010
16320
  static ɵprov: i0.ɵɵInjectableDeclaration<TableValidatorService>;
16011
16321
  }
16012
16322
 
16013
- export { ADMIN_ICONS, APP_ABOUT_DEVELOPERS, APP_ABOUT_PARTNERS, APP_ACCOUNT_SERVICE, APP_ACCOUNT_SERVICE_OPTIONS, APP_CELL_SELECTION_SERVICE_CONFIG_TOKEN, APP_CELL_SELECTION_SERVICE_TOKEN, APP_CONFIG_OPTIONS, APP_DEBUG_DATA_SERVICE, APP_FEED_SERVICE, APP_FILE_TRANSFER_SERVICE, APP_FORM_ERROR_I18N_KEYS, APP_GRAPHQL_FRAGMENTS, APP_GRAPHQL_SERVICE, APP_GRAPHQL_TYPE_POLICIES, APP_HOME_BUTTONS, APP_HOME_CONFIG, APP_HOME_TOOLBAR_BUTTONS, APP_HOTKEYS_CONFIG, APP_INPUT_FIELD, APP_JOB_PROGRESSION_SERVICE, APP_LOCALES, APP_LOCAL_SETTINGS, APP_LOCAL_SETTINGS_OPTIONS, APP_LOCAL_STORAGE_TYPE_POLICIES, APP_LOGGING_SERVICE, APP_MENU_ITEMS, APP_MENU_OPTIONS, APP_MESSAGE_SERVICE_OPTIONS, APP_NAMED_FILTER_SERVICE, APP_PERSON_SERVICE, APP_PERSON_SERVICE_OPTIONS, APP_PROGRESS_BAR_SERVICE, APP_SETTINGS_MENU_ITEMS, APP_SHOW_TOOLTIP, APP_STORAGE, APP_STORAGE_EXPLORER_PROTECTED_KEYS, APP_TABLE_OPTIONS, APP_TESTING_PAGES, APP_USER_EVENT_LIST_INFINITE_SCROLL_THRESHOLD, APP_USER_EVENT_SERVICE, APP_USER_SETTINGS_OPTIONS, APP_USER_TOKEN_SCOPES, AboutModal, AbstractNamedFilterService, AbstractPersonService, AbstractSelectionModelPipe, AbstractTableSelectionPipe, AbstractUserEventService, Account, AccountPage, AccountService, AccountToStringPipe, AccountUtils, ActionsColumnComponent, AdminModule, AdminRoutingModule, AdminUsersModule, Alerts, AndroidOsEnvironment, AppAboutModalModule, AppAccountModule, AppAsyncTable, AppAuthForm, AppAuthModal, AppAuthModule, AppChangePasswordModule, AppChangePasswordPage, AppEditor, AppEditorOptions, AppEntityEditor, AppEntityEditorModal, AppEntityEditorModalOptions, AppEntityFormModule, AppForm, AppFormArray, AppFormButtonsBarModule, AppFormContainer, AppFormField, AppFormModule, AppFormProvider, AppFormUtils, AppGestureConfig, AppHomePageModule, AppIconComponent, AppIconModule, AppIconSelectorField, AppIconSelectorModal, AppIconSelectorModule, AppImageGalleryComponent, AppImageGallerySlideshowComponent, AppInMemoryTable, AppInstallUpgradeCard, AppInstallUpgradeCardModule, AppListForm, AppListFormModule, AppLoadingSpinner, AppMarkdownContent, AppMarkdownModal, AppMenuModule, AppNullForm, AppPropertiesForm, AppPropertiesFormModule, AppPropertiesTable, AppPropertiesUtils, AppPropertyUtils, AppRegisterModule, AppResetPasswordModal, AppRowField, AppSelectPeerModule, AppSelectUsersModal, AppSettingsPageModule, AppTabEditor, AppTabEditorOptions, AppTable, AppTableModule, AppTableUtils, AppTextFormModule, AppTextPopoverModule, AppUpdateOfflineModeCard, AppUpdateOfflineModeCardModule, AppValidatorService, AppWebSocket, AppendQueryParamsPipePipe, ArrayDistinctPipe, ArrayFilterPipe, ArrayFindByPropertyPipe, ArrayFindPipe, ArrayFirstPipe, ArrayFormTestPage, ArrayIncludesPipe, ArrayJoinPipe, ArrayLastPipe, ArrayLengthPipe, ArrayMapPipe, ArrayPluckPipe, ArraySlicePipe, ArraySortPipe, AsAnyPipe, AsArrayPipe, AsBooleanPipe, AsFloatLabelTypePipe, AsObservablePipe, AudioProvider, AudioTestingModule, AudioTestingPage, AuthGuardService, AutoResizeDirective, AutoTitleDirective, AutoTooltipDirective, AutocompleteTestPage, AutofocusDirective, BadgeDirective, BadgeNumberPipe, Base58, BaseEntityService, BaseGraphqlService, BaseGraphqlServiceOptions, BaseReferential, Beans, BooleanFormatPipe, BooleanTestPage, CORE_CONFIG_OPTIONS, CORE_ICONS, CORE_TESTING_PAGES, CapitalizePipe, CellIdentifierDirective, CellSelectionDirective, CellSelectionService, CellValueChangeListener, ChangeCaseToUnderscorePipe, ChangePasswordForm, ChipsTestPage, Color, ColorScale, ComponentDirtyGuard, ConfigFragments, ConfigService, Configuration, CoreModule, CorePipesModule, CoreTestingModule, CryptoService, CsvUtils, DATE_ISO_PATTERN, DATE_ISO_PATTERNS, DATE_MATCH_REGEXP, DATE_PATTERN, DATE_UNIX_MS_TIMESTAMP, DATE_UNIX_TIMESTAMP, DEFAULT_JOIN_ARRAY_VALUES_SEPARATOR, DEFAULT_JOIN_PROPERTIES_SEPARATOR, DEFAULT_MENU_SHOW_WHEN, DEFAULT_PAGE_SIZE, DEFAULT_PAGE_SIZE_OPTIONS, DEFAULT_PLACEHOLDER_CHAR, DEFAULT_REQUIRED_COLUMNS, DateDiffDurationPipe, DateFormatPipe, DateFormatService, DateFromNowPipe, DateFromPipe, DateShortTestPage, DateTestPage, DateTimeTestPage, DateUtils, DebugComponent, Department, DepartmentToStringPipe, DisplayWithPipe, DragAndDropDirective, DurationPipe, DurationTestPage, ED25519_SEED_LENGTH, EMPTY_PLACEHOLDER_CHAR, EMPTY_PLACEHOLDER_CHAR_REGEXP_GLOBAL, ENTITIES_STORAGE_KEY_PREFIX, ENVIRONMENT, EmptyArrayPipe, EmptyMissingTranslationHandler, EntitiesAsyncTableDataSource, EntitiesStorage, EntitiesTableDataSource, Entity, EntityClass, EntityClasses, EntityFilter, EntityFilterUtils, EntityMetadataComponent, EntityStore, EntityUtils, Environment, EnvironmentHttpLoader, EnvironmentLoader, ErrorCodes, EvenPipe, FILE_KIND_ICONS, FeedAttachmentUtils, FeedDirective, FeedModule, FeedPage, FeedService, FeedsComponent, FileAttachmentComponent, FileAttachmentPreviewModal, FileAttachmentUtils, FileDownloadService, FileResponse, FileService, FileSizePipe, FileTypeUtils, FilesUtils, FirstFalsePipe, FirstPipe, FirstTruePipe, FormArrayAtControlPipe, FormArrayAtGroupPipe, FormArrayHelper, FormArrayTestModule, FormButtonsBarComponent, FormButtonsBarToken, FormErrorPipe, FormErrorTranslatePipe, FormErrorTranslator, FormFieldDefinitionUtils, FormFieldValuesHolder, FormGetArrayPipe, FormGetControlPipe, FormGetGroupPipe, FormGetNamePipe, FormGetPipe, FormGetValuePipe, GalleryTestPage, GeolocationUtils, GitlabUtils, GraphqlService, HAMMER_PRESS_TIME, HAMMER_TAP_TIME, HighlightPipe, HomePage, Hotkeys, HotkeysDialogComponent, HttpUtils, IMAGE_DEFAULTS, ION_ICONS, IPosition, IconSelectorTestPage, IconSelectorTestingModule, ImageAttachment$1 as ImageAttachment, ImageAttachmentFilter$1 as ImageAttachmentFilter, ImageAttachmentService, ImageGalleryModule, ImageGalleryTestingModule, ImageModule, ImageService, ImageSizes, ImagesUtils, InMemoryEntitiesService, InputFieldTestPage, IsAllSelectedPipe, IsEmptySelectionPipe, IsLoginAccountPipe, IsMultipleSelectionPipe, IsNilOrBlankPipe, IsNilOrNaNPipe, IsNilPipe, IsNotAllSelectedPipe, IsNotEmptySelectionPipe, IsNotNilOrBlankPipe, IsNotNilOrNaNPipe, IsNotNilPipe, IsOnDeskPipe, IsOnFieldPipe, IsSelectedPipe, IsSingleSelectionPipe, IsValidDatePipe, JobModule, JobProgression, JobProgressionComponent, JobProgressionIcon, JobProgressionList, JobProgressionService, JobProgressionTestService, JobProgressionTestingPage, JobTestingModule, JobUtils, JsonFeedUtils, JsonUtils, KEYBOARD_HIDE_DELAY_MS, LAT_LONG_PATTERNS, LAT_LONG_PATTERN_MAX_DECIMALS, LAT_LONG_VALUE_MAX_DECIMALS, LatLongFormatOptions, LatLongFormatPipe, LatLongTestPage, LatitudeFormatPipe, ListFormTestPage, ListFormTestingModule, LocalSettingsService, LogLevel, LogUtils, Logger, LoggingService, LoggingServiceModule, LongitudeFormatPipe, MASKS, MASK_RANGES, MAT_FORM_FIELD_DEFAULT_APPEARANCE, MAT_FORM_FIELD_DEFAULT_SUBSCRIPT_SIZING, MINIFY_ENTITY_FOR_LOCAL_STORAGE, MINIFY_ENTITY_FOR_POD, MOMENT_NO_TIME_PROPERTY, MapGetPipe, MapKeysPipe, MapPipe, MapToPipe, MapValuesPipe, MarkdownDirective, MarkdownService, MarkdownTestPage, MarkdownTestingModule, MarkdownUtils, MaskitoPlaceholderPipe, MaskitoTestPage, MatAutocompleteConfigHolder, MatAutocompleteField, MatAutocompleteFieldUtils, MatBadgeTestPage, MatBooleanField, MatChipsField, MatColorPipe, MatCommonTestPage, MatDate, MatDateShort, MatDateTime, MatDuration, MatLatLongField, MatLatLongFieldInput, MatPaginatorI18n, MatStepperI18n, MatSwipeField, MaterialAutocompleteFooterDirective, MaterialAutocompleteHeaderDirective, MaterialTestingModule, MathAbsPipe, MenuComponent, MenuItem, MenuItems, MenuOptions, MenuService, MenuTestingModule, MenuTestingPage, Message, MessageAttachment, MessageAttachmentUtils, MessageFilter, MessageForm, MessageModal, MessageModule, MessageService, MessageTypeList, MessageTypes, MimeTypes, ModalToolbarComponent, NETWORK_DEFAULT_CONNECTION_TIMEOUT, NamedFilter, NamedFilterFilter, NamedFilterSelector, NamedFilterSelectorTestingModule, NamedFilterSelectorTestingPage, NativeWebSocket, NavActionsColumnComponent, NestedTableTestPage, NetworkService, NetworkUtils, NewTokenForm, NewTokenModal, NgInitDirective, NgVarDirective, NoHtmlPipe, NotEmptyArrayPipe, NumberFormatPipe, ObservableTestPage, OddPipe, OtherMenuTestingPage, PEER_URL_REGEXP, PLUS_PLACEHOLDER_CHAR_REGEXP_GLOBAL, PRINT_ID_QUERY_PARAM, PRINT_LOADING_STORAGE_KEY_PREFIX, PRIORITIZED_AUTHORITIES, PUBKEY_REGEXP, Peer, Person, PersonFilter, PersonFilterAdditionalFields, PersonFragments, PersonService, PersonToStringPipe, PersonUtils, PersonValidatorService, PlatformService, PrintService, ProgressBarService, ProgressInterceptor, PropertiesFormTestPage, PropertiesFormTestingModule, PropertyEntity, PropertyEntityFilter, PropertyEntityValidator, PropertyFormatPipe, PropertyGetPipe, RESERVED_END_COLUMNS, RESERVED_START_COLUMNS, Referential, ReferentialFilter, ReferentialRef, ReferentialToStringPipe, ReferentialUtils, ReferentialValidatorService, ReferentialsToStringPipe, RegExpUtils, RegisterConfirmPage, RegisterForm, RegisterModal, ResizableComponent, ResizableDirective, ResizableModule, RoundPipe, RxStateComputed, RxStateModule, RxStateOutput, RxStateProperty, RxStateRegister, RxStateSelect, SCRYPT_PARAMS, SETTINGS_COMPACT_ROWS, SETTINGS_DISPLAY_COLUMNS, SETTINGS_FILTER, SETTINGS_PAGE_SIZE, SETTINGS_SORTED_COLUMN, SETTINGS_STORAGE_KEY, SETTINGS_TRANSIENT_PROPERTIES, SHARED_ICONS, SHARED_IONIC_COMPONENTS, SHARED_MATERIAL_TESTING_PAGES, SHARED_STORAGE_TESTING_PAGES, SHARED_TESTING_PAGES, SOCIAL_CONFIG_OPTIONS, SOCIAL_ICONS, SOCIAL_TESTING_PAGES, SPACE_PLACEHOLDER_CHAR, SPACE_PLACEHOLDER_CHAR_REGEXP_GLOBAL, STARTUP_DATA_STORAGE_KEY, SafeHtmlPipe, SafeStylePipe, SelectPeerModal, SelectionLengthPipe, ServerErrorCodes, SettingsPage, SharedAsyncValidators, SharedBadgeModule, SharedDebugModule, SharedDirectivesModule, SharedFileAttachmentModule, SharedFormArrayValidators, SharedFormGroupValidators, SharedHotkeysModule, SharedIonicModule, SharedMarkdownModule, SharedMatAutocompleteModule, SharedMatBooleanModule, SharedMatChipsModule, SharedMatDateTimeModule, SharedMatDurationModule, SharedMatLatLongModule, SharedMatSwipeModule, SharedMaterialModule, SharedModule, SharedNamedFilterModule, SharedPipesModule, SharedRoutingModule, SharedTestingModule, SharedTestsPage, SharedToolbarModule, SharedValidators, SocialErrorCodes, SocialModule, SocialModuleOptionsToken, SocialTestingModule, Software, SplitArrayInChunksPipe, StartableService, StartupService, StatusById, StatusIds, StatusList, StorageDrivers, StorageExplorerComponent, StorageExplorerModule, StorageExplorerTestingModule, StorageExplorerTestingRoutingModule, StorageService, StorageServiceWrapper, StrIncludesPipe, StrLengthPipe, StrReplacePipe, SubMenuTabDirective, SwipeTestPage, TABLE_SETTINGS_ENUM, TOOLBAR_HEADER_ID, TRACKED_QUERIES_STORAGE_KEY, Table2TestPage, TableSelectColumnsComponent, TableTestPage, TableTestingModule, TableValidatorService, TextForm, TextFormTestingModule, TextFormTestingPage, TextPopover, TextPopoverTestingModule, TextPopoverTestingPage, ThrottledClickDirective, TimeFormatPipe, ToStringPipe, ToastTestingModule, ToastTestingPage, Toasts, TokenScope, ToolbarComponent, ToolbarToken, TranslatablePipe, TranslateContextPipe, TranslateContextService, TreeItemEntityUtils, TruncHtmlPipe, TruncTextPipe, TruncateHtmlPipe, USER_CONTROLLER, UploadFile, UploadFileComponent, UploadFilePopover, UploadFileTestingModule, UploadFileTestingPage, UriUtils, UrlUtils, UserController, UserEventModule, UserEventNotificationIcon, UserEventNotificationList, UserEventNotificationModal, UserEventTestService, UserEventTestingModule, UserEventTestingPage, UserSettings, UserToken, UserTokenTable, UsersPage, ValueFormatPipe, VersionUtils, accountToString, adaptValueToControl, addValueInArray, arrayDistinct, arrayResize, arraySize, asInputElement, assignSkipUndefined, base64ArrayBuffer, booleanToString, canHaveFocus, capitalizeFirstLetter, chainPromises, changeCaseToUnderscore, clearValueInArray, collectByProperty, collectByPropertyPath, compareValues, compareValuesDesc, compareVersionNumbers, composeComparators, computeDecimalDegrees, computeDecimalPart, copyEntity2Form, createApolloClientOptions, createAppStartupInitializer, createPromiseEvent, createPromiseEventEmitter, createTestingImageDataUrl, createTrackerLink, decorateWithTakeUntil, deepMergeSkipUndefined, departmentToString, departmentsToString, disableAndClearControl, disableAndClearControls, disableControl, disableControls, emitPromiseEvent, enableControl, enableControls, enableRxStateProdMode, entityToString, equals, equalsOrNil, escapeRegExp, expansionAnimation, fadeInAnimation, fadeInOutAnimation, fadeInSlowAnimation, filterFalse, filterFormErrors, filterFormErrorsByPath, filterFormErrorsByPrefix, filterNotNil, filterNumberInput, filterTrue, findParentWithClass, firstArrayValue, firstFalse, firstFalsePromise, firstNotNil, firstNotNilPromise, firstPromise, firstTrue, firstTruePromise, focusInput, focusNextInput, focusPreviousInput, formatLatLong, formatLatitude, formatLongitude, fromDateISOString, fromScrollEndEvent, fromUnixMsTimestamp, fromUnixTimestamp, getCaretPosition, getColorContrast, getColorLuminance, getColorShade, getColorTint, getControlFromPath, getFocusableInputElements, getFormControlName, getFormErrors, getFormValueFromEntity, getInputRangeFromCaretIndex, getInputSelectionRangesFromMask, getProperty, getPropertyByPath, getPropertyByPathAsString, getRandomImage, getRandomImageWithCredit, getUserAgent, hasFocusWithin, hexToRgb, hexToRgbArray, initArrayControlsFromValues, initializeSharedModule, interpolateString, intersectArrays, isAndroid, isAppInputField, isAppTextInputField, isBlankString, isCapacitor, isChrome, isControlHasInput, isEdge, isEmptyArray, isEntityService, isFirefox, isFocusableElement, isIOS, isInputElement, isInstanceOf, isInt, isIpad, isLightColor, isMacOS, isMobile, isMutationOperation, isNil, isNilOrBlank, isNilOrNaN, isNotEmptyArray, isNotNil, isNotNilBoolean, isNotNilObject, isNotNilOrBlank, isNotNilOrNaN, isNotNilString, isNumber, isNumberRange, isOnFieldMode, isPrint, isProgressEvent, isPromise, isResponseEvent, isSafari, isSameVersion, isStartableService, isSubscriptionOperation, isTouchUi, isValidVersion, isVersionCompatible, isWebAnimationsSupported, isWindows, joinProperties, joinPropertiesPath, lastArrayValue, logFormErrors, loggerLink, markAllAsTouched, markAsUntouched, markControlAsTouched, markFormGroupAsTouched, maskitoAutoSelectByMaskPattern, maskitoPrefixPlugin, matchMedia, matchUpperCase, mergeLoadResult, mergeObjectsWithoutUndefined, mixHex, moveInputCaretToSeparator, newArray, noHtml, noTrailingSlash, notNilOrDefault, nullIfNilOrBlank, nullIfUndefined, numberOrNilAttribute, numberToString, parseBooleanText, parseLatLongText, parseLatitudeOrLongitude, parseVersion, propertiesPathComparator, propertyComparator, propertyPathComparator, provideAccountService, provideAllIonicIcons, provideIonicIcons, provideIonicIconsInitializer, providePersonService, referentialToString, referentialsToString, registerIonicIcons, remove, removeAll, removeDiacritics, removeDuplicatesFromArray, removeEnd, removeValueInArray, replaceAll, resetCalculatedValue, resizeArray, restoreTrackedQueries, rgbArrayToHex, rgbToHex, round, scrollFactory, selectInputContent, selectInputContentFromEvent, selectInputRange, setCalculatedValue, setControlEnabled, setControlRequired, setControlsEnabled, setFormErrors, setPropertyByPath, setTabIndex, sleep, slideDownAnimation, slideInAnimation, slideInOutAnimation, slideUpDownAnimation, sort, splitArrayInChunks, splitById, splitByProperty, splitDegreesToDDArray, splitDegreesToDDMMArray, splitDegreesToDDMMSSArray, startsWithUpperCase, suggestFromArray, suggestFromStringArray, tabindexComparator, testUserAgent, toBoolean, toDateISOString, toDuration, toFloat, toInt, toLoadData, toLoadResult, toNotNil, toNumber, trimEmptyToNull, truncateHtml, typeTextIntoInput, uncapitalizeFirstLetter, undefinedIfNull, underscoreToChangeCase, updateValueAndValidity, waitFor, waitForFalse, waitForTrue, waitIdle, waitWhilePending };
16014
- export type { AbstractPersonServiceOptions, AccountDetails, AccountServiceGraphqlMutations, AccountServiceGraphqlQueries, AccountServiceGraphqlSubscriptions, AccountServiceOptions, AccountViewName, AccountWatchOptions, AddToPageHistoryOptions, AppColors, AppError, AppErrorWithDetails, AppFloatLabelType, AppFormArrayOptions, AppListFormOptions, AppManifest, AppMarkdownModalOptions, AppMarkdownOptions, AppPropertiesFormState, AppSelectUsersModalOptions, AppTableAddButtonPosition, AppTableOptions, AppTableRowCountProperty, AudioType, AuthData, AuthTokenType, BaseEntityGraphqlMutations, BaseEntityGraphqlQueries, BaseEntityGraphqlSubscriptions, BaseEntityServiceOptions, BiFunction, CallableWithProgressionFn, CallableWithProgressionOptions, CanGainFocusOptions, CanLeave, CanSave, CellSelectionEvent, CellSelectionServiceConfig, ChangePasswordData, Cloneable, ColorGradientOptions, ColorName, ColorScaleLegend, ColorScaleLegendItem, ColorScaleOptions, ColumnItem, CompareFn, CompletableEvent, ConnectionParams, Constructor, DisplayFn, EmptyObject, EntitiesAsyncTableDataSourceConfig, EntitiesServiceDeleteOptions, EntitiesServiceLoadOptions, EntitiesServiceSaveOptions, EntitiesServiceWatchOptions, EntitiesStorageTypePolicies, EntitiesTableDataSourceConfig, EntityAsObjectOptions, EntitySaveOptions, EntityServiceDeleteOptions, EntityServiceListenChangesOptions, EntityServiceLoadOptions, EntityServiceRefetchQueriesOptions, EntityServiceSaveOptions, EntityServiceWatchOptions, EntityStorageLoadOptions, EntityStoreTypePolicy, EntityStoreTypePolicyMode, EqualsFn, EventLevel, FeedLoadOptions, FeedServiceState, FeedState, FeedsLoadOptions, FeedsWatchOptions, FetchMoreFn, FileAttachmentInfo, FileAttachmentPreviewModalOptions, FileCheck, FileCheckEnabledFn, FileDeleteFn, FileDownloadOptions, FileEvent, FileHasErrorFn, FileKind, FilePreviewInfo, FileProgressEvent, FileServiceGetImageOptions, FileTransferUploadOptions, FileTransferUploadResponseBody, FileUploadFn, FilterFn, FilterFnFactory, FilterItemFunction, FindMutableWatchQueriesOptions, FirstOptions, FocusableElement, FormArrayHelperOptions, FormErrorTranslateOptions, FormErrors, FormFieldDefinition, FormFieldDefinitionMap, FormFieldType, Function$1 as Function, GalleryMode, GetFocusableInputOptions, HammerSwipeAction, HammerSwipeEvent, HammerTapEvent, HistoryPageReference, HomePageState, HotKeysConfig, IAppEditor, IAppEntityEditor, IAppForm, IAppFormContainer, IAppFormGetter, IAppInputField, IAppTabEditor, IAppTextInputField, ICellId, IDebugDataService, IEntitiesService, IEntitiesTableDataSource, IEntity, IEntityEditorModalOptions, IEntityFilter, IEntityFullService, IEntityService, IFeedService, IFileTransferService, IFormPathTranslator, IFormPathTranslatorOptions, IGitlabRelease, IHomePageConfig, IJobProgressionService, ILatLongData, ILogger, ILoggingAppender, ILoggingService, IMenuItem, IModalDetailOptions, INamedFilter, INamedFilterFilter, INamedFilterService, INewTokenOptions, IPersonService, IProgressBarService, IReferentialRef, ISelectPeerModalOptions, ISelectPeerModalState, IStartableService, IStatus, IStorage, ITreeItemEntity, IUserController, IUserEvent, IUserEventAction, IUserEventFilter, IUserEventListener, IUserEventMutations, IUserEventQueries, IUserEventService, IUserEventSubscriptions, IconRef, Image, ImageEditEvent, ImageEditFormat, ImageGallerySizes, ImageGallerySlideChangeEvent, ImageGallerySlideshowMode, ImageResizeOptions, ImageSize, InMemoryEntitiesServiceOptions, InputElement, InstallAppLink, IsEmailExistsVariables, ItemButton, JobProgressionIconState, JobProgressionListOptions, JobProgressionOptions, JobProgressionState, JoinOptions, JsonFeed, JsonFeedAttachment, JsonFeedAuthor, JsonFeedItem, KeyType, KeyValueType, KeysEnum, LatLongPattern, LatLongSign, LatLongSignValue, LatLongType, LoadResult, LoadResultByPageFn, LocalSettings, LocalSettingsOptions, LocaleConfig, Log, LoggingServiceConfig, MaskitoPlaceholderPipeOptions, MatAutocompleteFieldAddOptions, MatAutocompleteFieldConfig, MatAutocompleteFieldSelectChange, MatAutocompleteFieldToggleFavorite, MatBadgeFill, MenuPathParam, MessageModalOptions, MessageServiceOptions, MutableWatchQueriesUpdatePolicy, MutableWatchQueryDescription, MutableWatchQueryOptions, MutateQueryOptions, MutateQueryWithCacheUpdateOptions, NamedFilterLoadOptions, NamedFilterSelectorButtonsPosition, NamedFilterWatchOptions, NetworkEventType, NodeInfo, ObjectMap, ObjectMapEntry, ObservablePropertyDecorator, ObservableValidatorFn, Observed, OfflineFeature, OmitFunctions, OnReady, Page, PersonServiceOptions, PersonValidatorOptions, PrintOptions, ProgressMode, PromiseEvent, PromiseEventPayload, PromiseValidatorFn, PropertiesArray, PropertiesMap, Property, PropertyMap, QueryVariables, ReferentialAsObjectOptions, RegisterData, SaveActionType, SemVersion, ServiceError, SharedModuleConfig, ShowToastOptions, SimpleFunction, SocialModuleOptions, Sound, SplitPaneShowWhen, StartupData, StartupMethod, StatePropertyDecorator, Statefull, SuggestFn, SuggestService, SynchronizationHistory, TestingPage, TextPopoverButton, TextPopoverOptions, TrackableMutationContext, TrackedQuery, UploadFilePopoverOptions, UsageMode, UserEventAction, UserEventLoadOptions, UserEventNotificationListOptions, UserEventNotificationModalOptions, UserEventServiceOptions, UserEventWatchOptions, UserProfileLabel, UserSettingsOptions, WaitForOptions, WatchQueryOptions };
16323
+ export { ADMIN_ICONS, APP_ABOUT_DEVELOPERS, APP_ABOUT_PARTNERS, APP_ACCOUNT_SERVICE, APP_ACCOUNT_SERVICE_OPTIONS, APP_CELL_SELECTION_SERVICE_CONFIG_TOKEN, APP_CELL_SELECTION_SERVICE_TOKEN, APP_CONFIG_OPTIONS, APP_DEBUG_DATA_SERVICE, APP_FEED_SERVICE, APP_FILE_TRANSFER_SERVICE, APP_FORM_ERROR_I18N_KEYS, APP_GRAPHQL_FRAGMENTS, APP_GRAPHQL_SERVICE, APP_GRAPHQL_TYPE_POLICIES, APP_HOME_BUTTONS, APP_HOME_CONFIG, APP_HOME_TOOLBAR_BUTTONS, APP_HOTKEYS_CONFIG, APP_INPUT_FIELD, APP_JOB_PROGRESSION_SERVICE, APP_LOCALES, APP_LOCAL_SETTINGS, APP_LOCAL_SETTINGS_OPTIONS, APP_LOCAL_STORAGE_TYPE_POLICIES, APP_LOGGING_SERVICE, APP_MENU_ITEMS, APP_MENU_OPTIONS, APP_MESSAGE_SERVICE_OPTIONS, APP_NAMED_FILTER_SERVICE, APP_PERSON_SERVICE, APP_PERSON_SERVICE_OPTIONS, APP_PROGRESS_BAR_SERVICE, APP_SETTINGS_MENU_ITEMS, APP_SHOW_TOOLTIP, APP_STORAGE, APP_STORAGE_EXPLORER_PROTECTED_KEYS, APP_TABLE_OPTIONS, APP_TESTING_PAGES, APP_USER_EVENT_LIST_INFINITE_SCROLL_THRESHOLD, APP_USER_EVENT_SERVICE, APP_USER_SETTINGS_OPTIONS, APP_USER_TOKEN_SCOPES, AboutModal, AbstractNamedFilterService, AbstractPersonService, AbstractSelectionModelPipe, AbstractTableSelectionPipe, AbstractUserEventService, Account, AccountPage, AccountService, AccountToStringPipe, AccountUtils, ActionsColumnComponent, AdminModule, AdminRoutingModule, AdminUsersModule, Alerts, AndroidOsEnvironment, AppAboutModalModule, AppAccountModule, AppAsyncTable, AppAuthForm, AppAuthModal, AppAuthModule, AppChangePasswordModule, AppChangePasswordPage, AppEditor, AppEditorOptions, AppEntityEditor, AppEntityEditorModal, AppEntityEditorModalOptions, AppEntityFormModule, AppForm, AppFormArray, AppFormButtonsBarModule, AppFormContainer, AppFormField, AppFormModule, AppFormProvider, AppFormUtils, AppGestureConfig, AppHomePageModule, AppIconComponent, AppIconModule, AppIconSelectorField, AppIconSelectorModal, AppIconSelectorModule, AppImageGalleryComponent, AppImageGallerySlideshowComponent, AppInMemoryTable, AppInstallUpgradeCard, AppInstallUpgradeCardModule, AppListForm, AppListFormModule, AppLoadingSpinner, AppMarkdownContent, AppMarkdownModal, AppMenuModule, AppNullForm, AppPropertiesForm, AppPropertiesFormModule, AppPropertiesTable, AppPropertiesUtils, AppPropertyUtils, AppRegisterModule, AppResetPasswordModal, AppRowField, AppSelectPeerModule, AppSelectUsersModal, AppSettingsPageModule, AppTabEditor, AppTabEditorOptions, AppTable, AppTableModule, AppTableUtils, AppTextFormModule, AppTextPopoverModule, AppUpdateOfflineModeCard, AppUpdateOfflineModeCardModule, AppValidatorService, AppWebSocket, AppendQueryParamsPipePipe, ArrayDistinctPipe, ArrayFilterPipe, ArrayFindByPropertyPipe, ArrayFindPipe, ArrayFirstPipe, ArrayFormTestPage, ArrayIncludesPipe, ArrayJoinPipe, ArrayLastPipe, ArrayLengthPipe, ArrayMapPipe, ArrayPluckPipe, ArraySlicePipe, ArraySortPipe, AsAnyPipe, AsArrayPipe, AsBooleanPipe, AsFloatLabelTypePipe, AsObservablePipe, AudioProvider, AudioTestingModule, AudioTestingPage, AuthGuardService, AutoResizeDirective, AutoTitleDirective, AutoTooltipDirective, AutocompleteTestPage, AutofocusDirective, BadgeDirective, BadgeNumberPipe, Base58, BaseEntityService, BaseGraphqlService, BaseGraphqlServiceOptions, BaseReferential, Beans, BooleanFormatPipe, BooleanTestPage, CORE_CONFIG_OPTIONS, CORE_ICONS, CORE_TESTING_PAGES, CapitalizePipe, CellIdentifierDirective, CellSelectionDirective, CellSelectionService, CellValueChangeListener, ChangeCaseToUnderscorePipe, ChangePasswordForm, ChipsTestPage, Color, ColorScale, ComponentDirtyGuard, ConfigFragments, ConfigService, Configuration, CoreModule, CorePipesModule, CoreTestingModule, CryptoService, CsvUtils, DATE_ISO_PATTERN, DATE_ISO_PATTERNS, DATE_MATCH_REGEXP, DATE_PATTERN, DATE_UNIX_MS_TIMESTAMP, DATE_UNIX_TIMESTAMP, DEFAULT_JOIN_ARRAY_VALUES_SEPARATOR, DEFAULT_JOIN_PROPERTIES_SEPARATOR, DEFAULT_MENU_SHOW_WHEN, DEFAULT_PAGE_SIZE, DEFAULT_PAGE_SIZE_OPTIONS, DEFAULT_PLACEHOLDER_CHAR, DEFAULT_REQUIRED_COLUMNS, DEFER_DIRECTIVE_NAME, DateDiffDurationPipe, DateFormatPipe, DateFormatService, DateFromNowPipe, DateFromPipe, DateShortTestPage, DateTestPage, DateTimeTestPage, DateUtils, DebugComponent, Department, DepartmentToStringPipe, DisplayWithPipe, DragAndDropDirective, DurationPipe, DurationTestPage, ED25519_SEED_LENGTH, EMPTY_PLACEHOLDER_CHAR, EMPTY_PLACEHOLDER_CHAR_REGEXP_GLOBAL, ENTITIES_STORAGE_KEY_PREFIX, ENVIRONMENT, EmptyArrayPipe, EmptyMissingTranslationHandler, EntitiesAsyncTableDataSource, EntitiesStorage, EntitiesTableDataSource, Entity, EntityClass, EntityClasses, EntityFilter, EntityFilterUtils, EntityMetadataComponent, EntityStore, EntityUtils, Environment, EnvironmentHttpLoader, EnvironmentLoader, ErrorCodes, EvenPipe, FILE_KIND_ICONS, FeedAttachmentUtils, FeedDirective, FeedModule, FeedPage, FeedService, FeedsComponent, FileAttachmentComponent, FileAttachmentPreviewModal, FileAttachmentUtils, FileDownloadService, FileResponse, FileService, FileSizePipe, FileTypeUtils, FilesUtils, FirstFalsePipe, FirstPipe, FirstTruePipe, FormArrayAtControlPipe, FormArrayAtGroupPipe, FormArrayHelper, FormArrayTestModule, FormButtonsBarComponent, FormButtonsBarToken, FormErrorPipe, FormErrorTranslatePipe, FormErrorTranslator, FormFieldDefinitionUtils, FormFieldValuesHolder, FormGetArrayPipe, FormGetControlPipe, FormGetGroupPipe, FormGetNamePipe, FormGetPipe, FormGetValuePipe, GalleryTestPage, GeolocationUtils, GitlabUtils, GraphqlService, HAMMER_PRESS_TIME, HAMMER_TAP_TIME, HighlightPipe, HomePage, Hotkeys, HotkeysDialogComponent, HttpUtils, IMAGE_DEFAULTS, ION_ICONS, IPosition, IconSelectorTestPage, IconSelectorTestingModule, ImageAttachment$1 as ImageAttachment, ImageAttachmentFilter$1 as ImageAttachmentFilter, ImageAttachmentService, ImageGalleryModule, ImageGalleryTestingModule, ImageModule, ImageService, ImageSizes, ImagesUtils, InMemoryEntitiesService, InputFieldTestPage, IsAllSelectedPipe, IsEmptySelectionPipe, IsLoginAccountPipe, IsMultipleSelectionPipe, IsNilOrBlankPipe, IsNilOrNaNPipe, IsNilPipe, IsNotAllSelectedPipe, IsNotEmptySelectionPipe, IsNotNilOrBlankPipe, IsNotNilOrNaNPipe, IsNotNilPipe, IsOnDeskPipe, IsOnFieldPipe, IsSelectedPipe, IsSingleSelectionPipe, IsValidDatePipe, JobModule, JobProgression, JobProgressionComponent, JobProgressionIcon, JobProgressionList, JobProgressionService, JobProgressionTestService, JobProgressionTestingPage, JobTestingModule, JobUtils, JsonFeedUtils, JsonUtils, KEYBOARD_HIDE_DELAY_MS, LAT_LONG_PATTERNS, LAT_LONG_PATTERN_MAX_DECIMALS, LAT_LONG_VALUE_MAX_DECIMALS, LatLongFormatOptions, LatLongFormatPipe, LatLongTestPage, LatitudeFormatPipe, ListFormTestPage, ListFormTestingModule, LocalSettingsService, LogLevel, LogUtils, Logger, LoggingService, LoggingServiceModule, LongitudeFormatPipe, MASKS, MASK_RANGES, MAT_FORM_FIELD_DEFAULT_APPEARANCE, MAT_FORM_FIELD_DEFAULT_SUBSCRIPT_SIZING, MINIFY_ENTITY_FOR_LOCAL_STORAGE, MINIFY_ENTITY_FOR_POD, MOMENT_NO_TIME_PROPERTY, MapGetPipe, MapKeysPipe, MapPipe, MapToPipe, MapValuesPipe, MarkdownDirective, MarkdownService, MarkdownTestPage, MarkdownTestingModule, MarkdownToolbarComponent, MarkdownUtils, MaskitoPlaceholderPipe, MaskitoTestPage, MatAutocompleteConfigHolder, MatAutocompleteField, MatAutocompleteFieldUtils, MatBadgeTestPage, MatBooleanField, MatChipsField, MatColorPipe, MatCommonTestPage, MatDate, MatDateShort, MatDateTime, MatDuration, MatLatLongField, MatLatLongFieldInput, MatPaginatorI18n, MatStepperI18n, MatSwipeField, MaterialAutocompleteFooterDirective, MaterialAutocompleteHeaderDirective, MaterialTestingModule, MathAbsPipe, MenuComponent, MenuItem, MenuItems, MenuOptions, MenuService, MenuTestingModule, MenuTestingPage, Message, MessageAttachment, MessageAttachmentUtils, MessageFilter, MessageForm, MessageModal, MessageModule, MessageService, MessageTypeList, MessageTypes, MimeTypes, ModalToolbarComponent, NETWORK_DEFAULT_CONNECTION_TIMEOUT, NamedFilter, NamedFilterFilter, NamedFilterSelector, NamedFilterSelectorTestingModule, NamedFilterSelectorTestingPage, NativeWebSocket, NavActionsColumnComponent, NestedTableTestPage, NetworkService, NetworkUtils, NewTokenForm, NewTokenModal, NgInitDirective, NgVarDirective, NoHtmlPipe, NotEmptyArrayPipe, NumberFormatPipe, ObservableTestPage, OddPipe, OtherMenuTestingPage, PEER_URL_REGEXP, PLUS_PLACEHOLDER_CHAR_REGEXP_GLOBAL, PRINT_ID_QUERY_PARAM, PRINT_LOADING_STORAGE_KEY_PREFIX, PRIORITIZED_AUTHORITIES, PUBKEY_REGEXP, Peer, Person, PersonFilter, PersonFilterAdditionalFields, PersonFragments, PersonService, PersonToStringPipe, PersonUtils, PersonValidatorService, PlatformService, PrintService, ProgressBarService, ProgressInterceptor, PropertiesFormTestPage, PropertiesFormTestingModule, PropertyEntity, PropertyEntityFilter, PropertyEntityValidator, PropertyFormatPipe, PropertyGetPipe, RESERVED_END_COLUMNS, RESERVED_START_COLUMNS, Referential, ReferentialFilter, ReferentialRef, ReferentialToStringPipe, ReferentialUtils, ReferentialValidatorService, ReferentialsToStringPipe, RegExpUtils, RegisterConfirmPage, RegisterForm, RegisterModal, ResizableComponent, ResizableDirective, ResizableModule, RoundPipe, RxStateComputed, RxStateModule, RxStateOutput, RxStateProperty, RxStateRegister, RxStateSelect, SCRYPT_PARAMS, SETTINGS_COMPACT_ROWS, SETTINGS_DISPLAY_COLUMNS, SETTINGS_FILTER, SETTINGS_PAGE_SIZE, SETTINGS_SORTED_COLUMN, SETTINGS_STORAGE_KEY, SETTINGS_TRANSIENT_PROPERTIES, SHARED_ICONS, SHARED_IONIC_COMPONENTS, SHARED_MATERIAL_TESTING_PAGES, SHARED_STORAGE_TESTING_PAGES, SHARED_TESTING_PAGES, SOCIAL_CONFIG_OPTIONS, SOCIAL_ICONS, SOCIAL_TESTING_PAGES, SPACE_PLACEHOLDER_CHAR, SPACE_PLACEHOLDER_CHAR_REGEXP_GLOBAL, STARTUP_DATA_STORAGE_KEY, SafeHtmlPipe, SafeStylePipe, SelectPeerModal, SelectionLengthPipe, ServerErrorCodes, SettingsPage, SharedAsyncValidators, SharedBadgeModule, SharedDebugModule, SharedDirectivesModule, SharedFileAttachmentModule, SharedFormArrayValidators, SharedFormGroupValidators, SharedHotkeysModule, SharedIonicModule, SharedMarkdownModule, SharedMatAutocompleteModule, SharedMatBooleanModule, SharedMatChipsModule, SharedMatDateTimeModule, SharedMatDurationModule, SharedMatLatLongModule, SharedMatSwipeModule, SharedMaterialModule, SharedModule, SharedNamedFilterModule, SharedPipesModule, SharedRoutingModule, SharedTestingModule, SharedTestsPage, SharedToolbarModule, SharedValidators, SocialErrorCodes, SocialModule, SocialModuleOptionsToken, SocialTestingModule, Software, SplitArrayInChunksPipe, StartableService, StartupService, StatusById, StatusIds, StatusList, StorageDrivers, StorageExplorerComponent, StorageExplorerModule, StorageExplorerTestingModule, StorageExplorerTestingRoutingModule, StorageService, StorageServiceWrapper, StrIncludesPipe, StrLengthPipe, StrReplacePipe, SubMenuTabDirective, SwipeTestPage, TABLE_SETTINGS_ENUM, TOOLBAR_HEADER_ID, TRACKED_QUERIES_STORAGE_KEY, Table2TestPage, TableSelectColumnsComponent, TableTestPage, TableTestingModule, TableValidatorService, TextForm, TextFormTestingModule, TextFormTestingPage, TextPopover, TextPopoverTestingModule, TextPopoverTestingPage, ThrottledClickDirective, TimeFormatPipe, ToStringPipe, ToastTestingModule, ToastTestingPage, Toasts, TokenScope, ToolbarComponent, ToolbarToken, TranslatablePipe, TranslateContextPipe, TranslateContextService, TreeItemEntityUtils, TruncHtmlPipe, TruncTextPipe, TruncateHtmlPipe, USER_CONTROLLER, UploadFile, UploadFileComponent, UploadFilePopover, UploadFileTestingModule, UploadFileTestingPage, UriUtils, UrlUtils, UserController, UserEventModule, UserEventNotificationIcon, UserEventNotificationList, UserEventNotificationModal, UserEventTestService, UserEventTestingModule, UserEventTestingPage, UserSettings, UserToken, UserTokenTable, UsersPage, ValueFormatPipe, VersionUtils, accountToString, adaptValueToControl, addValueInArray, arrayDistinct, arrayResize, arraySize, asInputElement, assignSkipUndefined, base64ArrayBuffer, booleanToString, canHaveFocus, capitalizeFirstLetter, chainPromises, changeCaseToUnderscore, clearValueInArray, collectByProperty, collectByPropertyPath, compareValues, compareValuesDesc, compareVersionNumbers, composeComparators, compositionMarkdownExtensions, computeDecimalDegrees, computeDecimalPart, copyEntity2Form, createApolloClientOptions, createAppStartupInitializer, createPromiseEvent, createPromiseEventEmitter, createTestingImageDataUrl, createTrackerLink, decorateWithTakeUntil, deepMergeSkipUndefined, departmentToString, departmentsToString, disableAndClearControl, disableAndClearControls, disableControl, disableControls, emitPromiseEvent, enableControl, enableControls, enableRxStateProdMode, entityToString, equals, equalsOrNil, escapeRegExp, expansionAnimation, fadeInAnimation, fadeInOutAnimation, fadeInSlowAnimation, filterFalse, filterFormErrors, filterFormErrorsByPath, filterFormErrorsByPrefix, filterNotNil, filterNumberInput, filterTrue, findParentWithClass, firstArrayValue, firstFalse, firstFalsePromise, firstNotNil, firstNotNilPromise, firstPromise, firstTrue, firstTruePromise, focusInput, focusNextInput, focusPreviousInput, formatLatLong, formatLatitude, formatLongitude, fromDateISOString, fromScrollEndEvent, fromUnixMsTimestamp, fromUnixTimestamp, getCaretPosition, getColorContrast, getColorLuminance, getColorShade, getColorTint, getControlFromPath, getFocusableInputElements, getFormControlName, getFormErrors, getFormValueFromEntity, getInputRangeFromCaretIndex, getInputSelectionRangesFromMask, getProperty, getPropertyByPath, getPropertyByPathAsString, getRandomImage, getRandomImageWithCredit, getUserAgent, hasDeferDirective, hasFocusWithin, hexToRgb, hexToRgbArray, httpHeadersToRecordLink, initArrayControlsFromValues, initializeSharedModule, insertLink, interpolateString, intersectArrays, isAndroid, isAppInputField, isAppTextInputField, isBlankString, isCapacitor, isChrome, isControlHasInput, isDeferredOperation, isEdge, isEmptyArray, isEntityService, isFirefox, isFocusableElement, isIOS, isInputElement, isInstanceOf, isInt, isIpad, isLightColor, isMacOS, isMobile, isMutationOperation, isNil, isNilOrBlank, isNilOrNaN, isNotEmptyArray, isNotNil, isNotNilBoolean, isNotNilObject, isNotNilOrBlank, isNotNilOrNaN, isNotNilString, isNumber, isNumberRange, isOnFieldMode, isPrint, isProgressEvent, isPromise, isResponseEvent, isSafari, isSameVersion, isStartableService, isSubscriptionOperation, isTouchUi, isValidVersion, isVersionCompatible, isWebAnimationsSupported, isWindows, joinProperties, joinPropertiesPath, lastArrayValue, logFormErrors, loggerLink, markAllAsTouched, markAsUntouched, markControlAsTouched, markFormGroupAsTouched, maskitoAutoSelectByMaskPattern, maskitoPrefixPlugin, matchMedia, matchUpperCase, mergeLoadResult, mergeObjectsWithoutUndefined, mixHex, moveInputCaretToSeparator, newArray, noHtml, noTrailingSlash, notNilOrDefault, nullIfNilOrBlank, nullIfUndefined, numberOrNilAttribute, numberToString, parseBooleanText, parseLatLongText, parseLatitudeOrLongitude, parseVersion, propertiesPathComparator, propertyComparator, propertyPathComparator, provideAccountService, provideAllIonicIcons, provideIonicIcons, provideIonicIconsInitializer, providePersonService, referentialToString, referentialsToString, registerIonicIcons, remove, removeAll, removeDeferDirectives, removeDiacritics, removeDuplicatesFromArray, removeEnd, removeValueInArray, replaceAll, resetCalculatedValue, resizeArray, resolveLocaleUrl, restoreTrackedQueries, rgbArrayToHex, rgbToHex, round, scrollFactory, selectInputContent, selectInputContentFromEvent, selectInputRange, setCalculatedValue, setControlEnabled, setControlRequired, setControlsEnabled, setFormErrors, setPropertyByPath, setTabIndex, sleep, slideDownAnimation, slideInAnimation, slideInOutAnimation, slideUpDownAnimation, sort, splitArrayInChunks, splitById, splitByProperty, splitDegreesToDDArray, splitDegreesToDDMMArray, splitDegreesToDDMMSSArray, startsWithUpperCase, suggestFromArray, suggestFromStringArray, tabindexComparator, testUserAgent, toBoolean, toDateISOString, toDuration, toFloat, toInt, toLoadData, toLoadResult, toNotNil, toNumber, toggleLinePrefix, trimEmptyToNull, truncateHtml, typeTextIntoInput, uncapitalizeFirstLetter, undefinedIfNull, underscoreToChangeCase, updateValueAndValidity, waitFor, waitForFalse, waitForTrue, waitIdle, waitWhilePending, wrapSelection };
16324
+ export type { AbstractPersonServiceOptions, AccountDetails, AccountServiceGraphqlMutations, AccountServiceGraphqlQueries, AccountServiceGraphqlSubscriptions, AccountServiceOptions, AccountViewName, AccountWatchOptions, AddToPageHistoryOptions, AppColors, AppError, AppErrorWithDetails, AppFloatLabelType, AppFormArrayOptions, AppListFormOptions, AppManifest, AppMarkdownModalOptions, AppMarkdownOptions, AppPropertiesFormState, AppSelectUsersModalOptions, AppTableAddButtonPosition, AppTableOptions, AppTableRowCountProperty, AudioType, AuthData, AuthTokenType, BaseEntityGraphqlMutations, BaseEntityGraphqlQueries, BaseEntityGraphqlSubscriptions, BaseEntityServiceOptions, BiFunction, CallableWithProgressionFn, CallableWithProgressionOptions, CanGainFocusOptions, CanLeave, CanSave, CellSelectionEvent, CellSelectionServiceConfig, ChangePasswordData, Cloneable, ColorGradientOptions, ColorName, ColorScaleLegend, ColorScaleLegendItem, ColorScaleOptions, ColumnItem, CompareFn, CompletableEvent, ConnectionParams, Constructor, DisplayFn, EmptyObject, EntitiesAsyncTableDataSourceConfig, EntitiesServiceDeleteOptions, EntitiesServiceLoadOptions, EntitiesServiceSaveOptions, EntitiesServiceWatchOptions, EntitiesStorageTypePolicies, EntitiesTableDataSourceConfig, EntityAsObjectOptions, EntitySaveOptions, EntityServiceDeleteOptions, EntityServiceListenChangesOptions, EntityServiceLoadOptions, EntityServiceRefetchQueriesOptions, EntityServiceSaveOptions, EntityServiceWatchOptions, EntityStorageLoadOptions, EntityStoreTypePolicy, EntityStoreTypePolicyMode, EqualsFn, EventLevel, FeedLoadOptions, FeedServiceState, FeedState, FeedsLoadOptions, FeedsWatchOptions, FetchMoreFn, FileAttachmentInfo, FileAttachmentPreviewModalOptions, FileCheck, FileCheckEnabledFn, FileDeleteFn, FileDownloadOptions, FileEvent, FileHasErrorFn, FileKind, FilePreviewInfo, FileProgressEvent, FileServiceGetImageOptions, FileTransferUploadOptions, FileTransferUploadResponseBody, FileUploadFn, FilterFn, FilterFnFactory, FilterItemFunction, FindMutableWatchQueriesOptions, FirstOptions, FocusableElement, FormArrayHelperOptions, FormErrorTranslateOptions, FormErrors, FormFieldDefinition, FormFieldDefinitionMap, FormFieldType, Function$1 as Function, GalleryMode, GetFocusableInputOptions, HammerSwipeAction, HammerSwipeEvent, HammerTapEvent, HistoryPageReference, HomePageState, HotKeysConfig, IAppEditor, IAppEntityEditor, IAppForm, IAppFormContainer, IAppFormGetter, IAppInputField, IAppTabEditor, IAppTextInputField, ICellId, IDebugDataService, IEntitiesService, IEntitiesTableDataSource, IEntity, IEntityEditorModalOptions, IEntityFilter, IEntityFullService, IEntityService, IFeedService, IFileTransferService, IFormPathTranslator, IFormPathTranslatorOptions, IGitlabRelease, IHomePageConfig, IJobProgressionService, ILatLongData, ILogger, ILoggingAppender, ILoggingService, IMenuItem, IModalDetailOptions, INamedFilter, INamedFilterFilter, INamedFilterService, INewTokenOptions, IPersonService, IProgressBarService, IReferentialRef, ISelectPeerModalOptions, ISelectPeerModalState, IStartableService, IStatus, IStorage, ITreeItemEntity, IUserController, IUserEvent, IUserEventAction, IUserEventFilter, IUserEventListener, IUserEventMutations, IUserEventQueries, IUserEventService, IUserEventSubscriptions, IconRef, Image, ImageEditEvent, ImageEditFormat, ImageGallerySizes, ImageGallerySlideChangeEvent, ImageGallerySlideshowMode, ImageResizeOptions, ImageSize, InMemoryEntitiesServiceOptions, InputElement, InstallAppLink, IsEmailExistsVariables, ItemButton, JobProgressionIconState, JobProgressionListOptions, JobProgressionOptions, JobProgressionState, JoinOptions, JsonFeed, JsonFeedAttachment, JsonFeedAuthor, JsonFeedItem, KeyType, KeyValueType, KeysEnum, LatLongPattern, LatLongSign, LatLongSignValue, LatLongType, LoadResult, LoadResultByPageFn, LocalSettings, LocalSettingsOptions, LocaleConfig, Log, LoggingServiceConfig, MarkdownSelectionState, MaskitoPlaceholderPipeOptions, MatAutocompleteFieldAddOptions, MatAutocompleteFieldConfig, MatAutocompleteFieldSelectChange, MatAutocompleteFieldToggleFavorite, MatBadgeFill, MenuPathParam, MessageModalOptions, MessageServiceOptions, MutableWatchQueriesUpdatePolicy, MutableWatchQueryDescription, MutableWatchQueryOptions, MutateQueryOptions, MutateQueryWithCacheUpdateOptions, NamedFilterLoadOptions, NamedFilterSelectorButtonsPosition, NamedFilterWatchOptions, NetworkEventType, NodeInfo, ObjectMap, ObjectMapEntry, ObservablePropertyDecorator, ObservableValidatorFn, Observed, OfflineFeature, OmitFunctions, OnReady, Page, PersonServiceOptions, PersonValidatorOptions, PrintOptions, ProgressMode, PromiseEvent, PromiseEventPayload, PromiseValidatorFn, PropertiesArray, PropertiesMap, Property, PropertyMap, QueryVariables, ReferentialAsObjectOptions, RegisterData, SaveActionType, SemVersion, ServiceError, SharedModuleConfig, ShowToastOptions, SimpleFunction, SocialModuleOptions, Sound, SplitPaneShowWhen, StartupData, StartupMethod, StatePropertyDecorator, Statefull, SuggestFn, SuggestService, SynchronizationHistory, TestingPage, TestingPageItem, TestingPageSection, TestingTextPart, TextPopoverButton, TextPopoverOptions, TrackableMutationContext, TrackedQuery, UploadFilePopoverOptions, UsageMode, UserEventAction, UserEventLoadOptions, UserEventNotificationListOptions, UserEventNotificationModalOptions, UserEventServiceOptions, UserEventWatchOptions, UserProfileLabel, UserSettingsOptions, WaitForOptions, WatchQueryOptions };