@sumaris-net/ngx-components 18.5.14 → 18.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/doc/changelog.md +5 -0
  2. package/esm2022/public_api.mjs +10 -2
  3. package/esm2022/src/app/core/about/about.modal.mjs +5 -4
  4. package/esm2022/src/app/core/home/home.mjs +5 -5
  5. package/esm2022/src/app/core/home/home.module.mjs +7 -3
  6. package/esm2022/src/app/shared/file/url.utils.mjs +164 -0
  7. package/esm2022/src/app/shared/image/gallery/image-gallery.component.mjs +40 -28
  8. package/esm2022/src/app/shared/markdown/markdown.component.mjs +259 -0
  9. package/esm2022/src/app/shared/markdown/markdown.directive.mjs +34 -0
  10. package/esm2022/src/app/shared/markdown/markdown.modal.mjs +75 -0
  11. package/esm2022/src/app/shared/markdown/markdown.module.mjs +88 -0
  12. package/esm2022/src/app/shared/markdown/markdown.service.mjs +202 -0
  13. package/esm2022/src/app/shared/markdown/markdown.utils.mjs +78 -0
  14. package/esm2022/src/app/shared/markdown/testing/markdown.test.mjs +45 -0
  15. package/esm2022/src/app/shared/markdown/testing/markdown.testing.module.mjs +29 -0
  16. package/esm2022/src/app/shared/material/material.animations.mjs +31 -1
  17. package/esm2022/src/app/shared/pipes/pipes.module.mjs +5 -2
  18. package/esm2022/src/app/shared/pipes/string.pipes.mjs +17 -1
  19. package/esm2022/src/app/shared/shared.module.mjs +11 -9
  20. package/esm2022/src/app/shared/shared.testing.module.mjs +13 -5
  21. package/fesm2022/sumaris-net.ngx-components.mjs +6642 -5746
  22. package/fesm2022/sumaris-net.ngx-components.mjs.map +1 -1
  23. package/package.json +2 -1
  24. package/public_api.d.ts +9 -1
  25. package/src/app/core/home/home.module.d.ts +2 -1
  26. package/src/app/shared/file/url.utils.d.ts +77 -0
  27. package/src/app/shared/image/gallery/image-gallery.component.d.ts +10 -1
  28. package/src/app/shared/inputs.d.ts +1 -1
  29. package/src/app/shared/markdown/markdown.component.d.ts +76 -0
  30. package/src/app/shared/markdown/markdown.directive.d.ts +13 -0
  31. package/src/app/shared/{help/help.modal.d.ts → markdown/markdown.modal.d.ts} +11 -12
  32. package/src/app/shared/markdown/markdown.module.d.ts +18 -0
  33. package/src/app/shared/markdown/markdown.service.d.ts +38 -0
  34. package/src/app/shared/markdown/markdown.utils.d.ts +25 -0
  35. package/src/app/shared/markdown/testing/markdown.test.d.ts +15 -0
  36. package/src/app/shared/markdown/testing/markdown.testing.module.d.ts +11 -0
  37. package/src/app/shared/material/material.animations.d.ts +1 -0
  38. package/src/app/shared/pipes/pipes.module.d.ts +1 -1
  39. package/src/app/shared/pipes/string.pipes.d.ts +5 -0
  40. package/src/app/shared/shared.module.d.ts +19 -19
  41. package/src/app/shared/shared.testing.module.d.ts +2 -1
  42. package/src/assets/manifest.json +1 -1
  43. package/esm2022/src/app/shared/help/help.modal.mjs +0 -86
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sumaris-net/ngx-components",
3
3
  "description": "SUMARiS Angular components",
4
- "version": "18.5.14",
4
+ "version": "18.6.0",
5
5
  "author": "contact@e-is.pro",
6
6
  "license": "AGPL-3.0",
7
7
  "readmeFilename": "README.md",
@@ -26,6 +26,7 @@
26
26
  "@rx-angular/state": "~18.1.0",
27
27
  "@rx-angular/template": "~18.0.3",
28
28
  "clone": "~2.1.2",
29
+ "marked-base-url": "^1.1.6",
29
30
  "tslib": "^2.3.0"
30
31
  },
31
32
  "peerDependencies": {
package/public_api.d.ts CHANGED
@@ -42,7 +42,6 @@ export * from './src/app/shared/toolbar/modal-toolbar';
42
42
  export * from './src/app/shared/toolbar/toolbar.module';
43
43
  export * from './src/app/shared/interceptors/progess.interceptor';
44
44
  export * from './src/app/shared/toast/toasts';
45
- export * from './src/app/shared/help/help.modal';
46
45
  export * from './src/app/shared/guard/component-dirty.guard';
47
46
  export * from './src/app/shared/upload-file/upload-file.model';
48
47
  export * from './src/app/shared/upload-file/upload-file-popover.component';
@@ -124,6 +123,7 @@ export * from './src/app/shared/file/csv.utils';
124
123
  export * from './src/app/shared/file/images.utils';
125
124
  export * from './src/app/shared/file/json.utils';
126
125
  export * from './src/app/shared/file/uri.utils';
126
+ export * from './src/app/shared/file/url.utils';
127
127
  export * from './src/app/shared/hotkeys/shared-hotkeys.module';
128
128
  export * from './src/app/shared/hotkeys/hotkeys.service';
129
129
  export * from './src/app/shared/hotkeys/dialog/hotkeys-dialog.component';
@@ -140,6 +140,12 @@ export * from './src/app/shared/named-filter/named-filter.module';
140
140
  export * from './src/app/shared/named-filter/named-filter.model';
141
141
  export * from './src/app/shared/named-filter/named-filter.service';
142
142
  export * from './src/app/shared/named-filter/named-filter-selector.component';
143
+ export * from './src/app/shared/markdown/markdown.module';
144
+ export * from './src/app/shared/markdown/markdown.utils';
145
+ export * from './src/app/shared/markdown/markdown.service';
146
+ export * from './src/app/shared/markdown/markdown.directive';
147
+ export * from './src/app/shared/markdown/markdown.component';
148
+ export * from './src/app/shared/markdown/markdown.modal';
143
149
  export * from './src/app/core/core.module';
144
150
  export * from './src/app/core/services/model/account.model';
145
151
  export * from './src/app/core/services/model/token.model';
@@ -302,6 +308,8 @@ export * from './src/app/shared/storage/storage-explorer.testing.module';
302
308
  export * from './src/app/shared/storage/storage-explorer.testing-routing.module';
303
309
  export * from './src/app/shared/audio/audio.testing';
304
310
  export * from './src/app/shared/audio/audio.testing.module';
311
+ export * from './src/app/shared/markdown/testing/markdown.test';
312
+ export * from './src/app/shared/markdown/testing/markdown.testing.module';
305
313
  export * from './src/app/core/core.testing.module';
306
314
  export * from './src/app/core/services/testing/referential-filter.model';
307
315
  export * from './src/app/core/services/testing/referential.validator';
@@ -6,8 +6,9 @@ import * as i4 from "@ngx-translate/core";
6
6
  import * as i5 from "../../shared/rx-state/rx-state.module";
7
7
  import * as i6 from "../auth/auth.module";
8
8
  import * as i7 from "../install/install-upgrade-card.module";
9
+ import * as i8 from "../../shared/markdown/markdown.module";
9
10
  export declare class AppHomePageModule {
10
11
  static ɵfac: i0.ɵɵFactoryDeclaration<AppHomePageModule, never>;
11
- static ɵmod: i0.ɵɵNgModuleDeclaration<AppHomePageModule, [typeof i1.HomePage], [typeof i2.SharedModule, typeof i3.RouterModule, typeof i4.TranslateModule, typeof i5.RxStateModule, typeof i6.AppAuthModule, typeof i7.AppInstallUpgradeCardModule], [typeof i3.RouterModule, typeof i4.TranslateModule, typeof i1.HomePage]>;
12
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AppHomePageModule, [typeof i1.HomePage], [typeof i2.SharedModule, typeof i3.RouterModule, typeof i4.TranslateModule, typeof i5.RxStateModule, typeof i6.AppAuthModule, typeof i7.AppInstallUpgradeCardModule, typeof i8.SharedMarkdownModule], [typeof i3.RouterModule, typeof i4.TranslateModule, typeof i1.HomePage]>;
12
13
  static ɵinj: i0.ɵɵInjectorDeclaration<AppHomePageModule>;
13
14
  }
@@ -0,0 +1,77 @@
1
+ export declare abstract class UrlUtils {
2
+ /**
3
+ * Determines if a given URL is a relative URL.
4
+ *
5
+ * @param {string | null} href - The URL to check.
6
+ * @return {boolean} True if the URL is relative, false otherwise.
7
+ */
8
+ static isRelativeUrl(href: string | null): boolean;
9
+ /**
10
+ * Determines if a given URL is an internal URL.
11
+ *
12
+ * @param {string | null} href - The URL to be checked. Can be a string representing the URL or null.
13
+ * @return {boolean} Returns true if the URL is internal, otherwise false.
14
+ */
15
+ static isInternalUrl(href: string | null): boolean;
16
+ static isExternalUrl(href: string | null): boolean;
17
+ /**
18
+ * Removes the query string from the given URL, returning only the base URL.
19
+ *
20
+ * @param {string} url - The URL from which the query string will be stripped.
21
+ * @return {string} The URL without the query string.
22
+ */
23
+ static stripQuery(url: string): string;
24
+ /**
25
+ * Removes the fragment and query components from a given URL string.
26
+ *
27
+ * @param {string} url - The URL string to process.
28
+ * @return {string} The URL without its fragment and query components.
29
+ */
30
+ static stripFragmentAndQuery(url: string): string;
31
+ /**
32
+ * Extracts the fragment identifier from the given URL.
33
+ *
34
+ * @param {string} url - The URL from which to extract the fragment.
35
+ * @return {string} The fragment identifier of the URL, excluding the '#' symbol.
36
+ */
37
+ static getFragment(url: string): string;
38
+ static resolveRelativeUrl(baseUrl: string, relativePath: string, opts?: {
39
+ absoluteByDefault: boolean;
40
+ }): string;
41
+ /**
42
+ * Resolves a given URL by normalizing its parts, removing unnecessary path segments like "." and "..".
43
+ *
44
+ * @param {string} url - The URL to be resolved. Must be a non-empty string.
45
+ * @return {string} The resolved and cleaned URL string.
46
+ * @throws {Error} If the provided URL is missing or undefined.
47
+ */
48
+ static normalizeUrl(url: string): string;
49
+ /**
50
+ * Extracts and returns the root URL from the given complete URL string.
51
+ *
52
+ * @param {string} url - The complete URL string from which the root URL will be extracted.
53
+ * @return {string} The root URL including the protocol and host (and port if present).
54
+ * @throws {Error} Throws an error if the provided URL is missing or is in an invalid format.
55
+ */
56
+ static getRootUrl(url: string): string;
57
+ /**
58
+ * Retrieves the parent URL or directory path from the provided URL.
59
+ * This method handles both relative and absolute URLs.
60
+ *
61
+ * @param {string} url - The URL from which to derive the parent path.
62
+ * Must be a valid URL or relative path.
63
+ * @return {string} The parent URL or directory path. Throws an error if the input is invalid.
64
+ */
65
+ static getParent(url: string): string;
66
+ /**
67
+ * Cleans the provided URL by encoding it safely and replacing specific patterns.
68
+ *
69
+ * @param {string} href - The URL string to be cleaned.
70
+ * @return {string|null} The cleaned and encoded URL string, or null if an error occurs.
71
+ */
72
+ static cleanUrl(href: string): string;
73
+ static addTrailingSlash(url: string): string;
74
+ static addStartingSlash(url: string): string;
75
+ static removeStartingSlash(url: string): string;
76
+ static concat(basePath: string, relativePath: string): string;
77
+ }
@@ -84,7 +84,8 @@ export declare class AppImageGalleryComponent<T extends Image> implements OnInit
84
84
  protected clickRow(row: TableElement<T>, index: number): Promise<void>;
85
85
  protected activeSlideIndex: number;
86
86
  protected getSwiper(swiperElement?: any): Swiper;
87
- protected initModalSlides(swiperElement: any): Promise<void>;
87
+ protected onSlideChange(swiperElement: any): void;
88
+ protected initModalSlides(swiperElement: any): void;
88
89
  protected zoom(swiperElement: any, zoomIn: boolean): Promise<void>;
89
90
  protected deleteFromModal(event: any, swiperElement: any): Promise<boolean>;
90
91
  protected slidePrev(swiperElement: any): Promise<void>;
@@ -95,4 +96,12 @@ export declare class AppImageGalleryComponent<T extends Image> implements OnInit
95
96
  protected markForCheck(): void;
96
97
  static ɵfac: i0.ɵɵFactoryDeclaration<AppImageGalleryComponent<any>, [null, null, null, null, null, { optional: true; }]>;
97
98
  static ɵcmp: i0.ɵɵComponentDeclaration<AppImageGalleryComponent<any>, "app-image-gallery", never, { "cardColor": { "alias": "cardColor"; "required": false; }; "debug": { "alias": "debug"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readOnly": { "alias": "readOnly"; "required": false; }; "mobile": { "alias": "mobile"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "confirmBeforeDelete": { "alias": "confirmBeforeDelete"; "required": false; }; "showToolbar": { "alias": "showToolbar"; "required": false; }; "showFabButton": { "alias": "showFabButton"; "required": false; }; "showTitle": { "alias": "showTitle"; "required": false; }; "showAddCardButton": { "alias": "showAddCardButton"; "required": false; }; "addButtonColor": { "alias": "addButtonColor"; "required": false; }; "dataSource": { "alias": "dataSource"; "required": false; }; }, { "onBeforeDeleteRows": "onBeforeDeleteRows"; "onAfterAddRows": "onAfterAddRows"; "onAfterEditRow": "onAfterEditRow"; }, never, never, false, never>;
99
+ static ngAcceptInputType_debug: unknown;
100
+ static ngAcceptInputType_disabled: unknown;
101
+ static ngAcceptInputType_readOnly: unknown;
102
+ static ngAcceptInputType_mobile: unknown;
103
+ static ngAcceptInputType_showToolbar: unknown;
104
+ static ngAcceptInputType_showFabButton: unknown;
105
+ static ngAcceptInputType_showTitle: unknown;
106
+ static ngAcceptInputType_showAddCardButton: unknown;
98
107
  }
@@ -17,7 +17,7 @@ export interface InputElement extends FocusableElement {
17
17
  }
18
18
  export declare function isInputElement(object: any): object is InputElement;
19
19
  export declare function asInputElement<T = any>(object: ElementRef<T>): InputElement | undefined;
20
- export declare function tabindexComparator(a: InputElement, b: InputElement): 1 | -1 | 0;
20
+ export declare function tabindexComparator(a: InputElement, b: InputElement): 0 | 1 | -1;
21
21
  export interface CanGainFocusOptions {
22
22
  minTabindex?: number;
23
23
  maxTabindex?: number;
@@ -0,0 +1,76 @@
1
+ import { ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy } from '@angular/core';
2
+ import { LocalSettingsService } from '../../core/services/local-settings.service';
3
+ import { TranslateService } from '@ngx-translate/core';
4
+ import { NetworkService } from '../../core/services/network.service';
5
+ import { MarkdownService } from './markdown.service';
6
+ import { Subscription } from 'rxjs';
7
+ import { NavController } from '@ionic/angular';
8
+ import { ActivatedRoute } from '@angular/router';
9
+ import * as i0 from "@angular/core";
10
+ export interface AppMarkdownOptions {
11
+ data?: string;
12
+ src?: string;
13
+ showError?: boolean;
14
+ }
15
+ export declare class AppMarkdownContent implements AppMarkdownOptions, OnDestroy {
16
+ protected cd: ChangeDetectorRef;
17
+ protected element: ElementRef<HTMLElement>;
18
+ protected route: ActivatedRoute;
19
+ protected navController: NavController;
20
+ protected settings: LocalSettingsService;
21
+ protected translate: TranslateService;
22
+ protected network: NetworkService;
23
+ protected markdownService: MarkdownService;
24
+ protected _clickSubscription: Subscription;
25
+ protected loading: boolean;
26
+ protected error: string;
27
+ protected baseUrl: string;
28
+ protected _data: string;
29
+ protected _src: string;
30
+ protected _fallbackSrc: string;
31
+ protected _anchor: string;
32
+ protected _navHistory: {
33
+ src?: string;
34
+ fallbackSrc?: string;
35
+ data?: string;
36
+ anchor?: string;
37
+ }[];
38
+ set data(value: string);
39
+ get data(): string;
40
+ set src(value: string);
41
+ get src(): string;
42
+ set anchor(value: string);
43
+ get anchor(): string;
44
+ debug: boolean;
45
+ showError: boolean;
46
+ animated: boolean;
47
+ enableNavigationHistory: boolean;
48
+ updateRouteLocation: boolean;
49
+ markdownUrlChange: EventEmitter<string>;
50
+ constructor(cd: ChangeDetectorRef, element: ElementRef<HTMLElement>, route: ActivatedRoute);
51
+ ngOnDestroy(): void;
52
+ goBack(event?: Event): void;
53
+ get canGoBack(): boolean;
54
+ protected setData(value: string, opts?: {
55
+ anchor?: string;
56
+ addToNavigationHistory?: boolean;
57
+ }): void;
58
+ protected setSrc(src: string, opts?: {
59
+ fallbackSrc?: string;
60
+ anchor?: string;
61
+ addToNavigationHistory?: boolean;
62
+ }): void;
63
+ protected onReady(): void;
64
+ protected onLoadError(error?: string | Error): void;
65
+ protected startListenClickEvents(): void;
66
+ protected markAsLoaded(): void;
67
+ protected markAsLoading(): void;
68
+ protected resetError(): void;
69
+ static ɵfac: i0.ɵɵFactoryDeclaration<AppMarkdownContent, [null, null, { optional: true; }]>;
70
+ static ɵcmp: i0.ɵɵComponentDeclaration<AppMarkdownContent, "app-markdown-content", never, { "data": { "alias": "data"; "required": false; }; "src": { "alias": "src"; "required": false; }; "anchor": { "alias": "anchor"; "required": false; }; "debug": { "alias": "debug"; "required": false; }; "showError": { "alias": "showError"; "required": false; }; "animated": { "alias": "animated"; "required": false; }; "enableNavigationHistory": { "alias": "enableNavigationHistory"; "required": false; }; "updateRouteLocation": { "alias": "updateRouteLocation"; "required": false; }; }, { "markdownUrlChange": "markdownUrlChange"; }, never, never, false, never>;
71
+ static ngAcceptInputType_debug: unknown;
72
+ static ngAcceptInputType_showError: unknown;
73
+ static ngAcceptInputType_animated: unknown;
74
+ static ngAcceptInputType_enableNavigationHistory: unknown;
75
+ static ngAcceptInputType_updateRouteLocation: unknown;
76
+ }
@@ -0,0 +1,13 @@
1
+ import { ElementRef, OnDestroy } from '@angular/core';
2
+ import { MarkdownService } from './markdown.service';
3
+ import * as i0 from "@angular/core";
4
+ export declare class MarkdownDirective implements OnDestroy {
5
+ private service;
6
+ private element;
7
+ private _subscription;
8
+ constructor(service: MarkdownService, element: ElementRef<HTMLElement>);
9
+ processAnchors(): void;
10
+ ngOnDestroy(): void;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<MarkdownDirective, never>;
12
+ static ɵdir: i0.ɵɵDirectiveDeclaration<MarkdownDirective, "markdown,[markdown]", never, {}, {}, never, never, false, never>;
13
+ }
@@ -4,17 +4,16 @@ import { PlatformService } from '../../core/services/platform.service';
4
4
  import { LocalSettingsService } from '../../core/services/local-settings.service';
5
5
  import { TranslateService } from '@ngx-translate/core';
6
6
  import { NetworkService } from '../../core/services/network.service';
7
+ import { AppMarkdownContent } from './markdown.component';
7
8
  import * as i0 from "@angular/core";
8
- export interface AppHelpModalOptions {
9
+ export interface AppMarkdownModalOptions {
9
10
  title?: string;
10
11
  markdownContent?: string;
11
12
  markdownUrl?: string;
12
13
  showError?: boolean;
14
+ cssClass?: string;
13
15
  }
14
- export declare class AppHelpModalUtils {
15
- static show(modalCtrl: ModalController, options: AppHelpModalOptions): Promise<void>;
16
- }
17
- export declare class AppHelpModal implements AppHelpModalOptions {
16
+ export declare class AppMarkdownModal implements AppMarkdownModalOptions {
18
17
  protected injector: Injector;
19
18
  protected viewCtrl: ModalController;
20
19
  protected platform: PlatformService;
@@ -22,17 +21,17 @@ export declare class AppHelpModal implements AppHelpModalOptions {
22
21
  protected translate: TranslateService;
23
22
  protected network: NetworkService;
24
23
  protected cd: ChangeDetectorRef;
25
- readonly debug: boolean;
26
- loading: boolean;
27
- error: string;
24
+ protected loading: boolean;
25
+ protected error: string;
26
+ debug: boolean;
28
27
  title: string;
29
28
  showError: boolean;
30
29
  markdownContent: string;
31
30
  markdownUrl: string;
31
+ static show(modalCtrl: ModalController, options: AppMarkdownModalOptions): Promise<import("@ionic/core").OverlayEventDetail<any>>;
32
32
  constructor(injector: Injector, viewCtrl: ModalController, platform: PlatformService, settings: LocalSettingsService, translate: TranslateService, network: NetworkService, cd: ChangeDetectorRef);
33
33
  close(_?: Event): Promise<boolean>;
34
- markAsLoaded(): void;
35
- onLoadError(error?: string | Error): void;
36
- static ɵfac: i0.ɵɵFactoryDeclaration<AppHelpModal, never>;
37
- static ɵcmp: i0.ɵɵComponentDeclaration<AppHelpModal, "app-help-modal", never, { "title": { "alias": "title"; "required": false; }; "showError": { "alias": "showError"; "required": false; }; "markdownContent": { "alias": "markdownContent"; "required": false; }; "markdownUrl": { "alias": "markdownUrl"; "required": false; }; }, {}, never, never, false, never>;
34
+ goBack(event: Event, content: AppMarkdownContent): void;
35
+ static ɵfac: i0.ɵɵFactoryDeclaration<AppMarkdownModal, never>;
36
+ static ɵcmp: i0.ɵɵComponentDeclaration<AppMarkdownModal, "app-markdown-modal", never, { "debug": { "alias": "debug"; "required": false; }; "title": { "alias": "title"; "required": false; }; "showError": { "alias": "showError"; "required": false; }; "markdownContent": { "alias": "markdownContent"; "required": false; }; "markdownUrl": { "alias": "markdownUrl"; "required": false; }; }, {}, never, never, false, never>;
38
37
  }
@@ -0,0 +1,18 @@
1
+ import { MarkdownModuleConfig } from 'ngx-markdown';
2
+ import { ModuleWithProviders } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./markdown.component";
5
+ import * as i2 from "./markdown.modal";
6
+ import * as i3 from "./markdown.directive";
7
+ import * as i4 from "@angular/common";
8
+ import * as i5 from "@ionic/angular";
9
+ import * as i6 from "@ngx-translate/core";
10
+ import * as i7 from "ngx-markdown";
11
+ import * as i8 from "../toolbar/toolbar.module";
12
+ import * as i9 from "../debug/debug.module";
13
+ export declare class SharedMarkdownModule {
14
+ static forRoot(opts?: MarkdownModuleConfig): ModuleWithProviders<SharedMarkdownModule>;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<SharedMarkdownModule, never>;
16
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SharedMarkdownModule, [typeof i1.AppMarkdownContent, typeof i2.AppMarkdownModal, typeof i3.MarkdownDirective], [typeof i4.CommonModule, typeof i5.IonicModule, typeof i6.TranslateModule, typeof i7.MarkdownModule, typeof i8.SharedToolbarModule, typeof i9.SharedDebugModule], [typeof i6.TranslateModule, typeof i7.MarkdownModule, typeof i1.AppMarkdownContent, typeof i3.MarkdownDirective]>;
17
+ static ɵinj: i0.ɵɵInjectorDeclaration<SharedMarkdownModule>;
18
+ }
@@ -0,0 +1,38 @@
1
+ import { UrlTree } from '@angular/router';
2
+ import { MarkedRenderer } from 'ngx-markdown';
3
+ import { Subject, Subscription } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ export declare class MarkdownService {
6
+ private route;
7
+ private router;
8
+ private platform;
9
+ private locationStrategy;
10
+ private navController;
11
+ private modalCtrl;
12
+ private baseUrl;
13
+ private readonly _defaultRenderer;
14
+ private _markedRenderer;
15
+ get renderer(): MarkedRenderer;
16
+ set renderer(value: MarkedRenderer);
17
+ onClickMarkdownUrl: Subject<string>;
18
+ constructor();
19
+ setBaseUrl(baseUrl: string): void;
20
+ resetBaseUrl(): void;
21
+ getUrlTree(url: string): UrlTree;
22
+ navigate(url: string, replaceUrl?: boolean): void;
23
+ listenClickEvents(nativeElement: HTMLElement): Subscription;
24
+ /**
25
+ * Transform a relative URL to its absolute representation according to current router state.
26
+ * @param url Relative URL path.
27
+ * @return Absolute URL based on the current route.
28
+ */
29
+ normalizeUrl(url: string): string;
30
+ scrollToAnchor(containerElement: HTMLElement, anchorId: string): void;
31
+ protected setRenderer(renderer: MarkedRenderer): void;
32
+ protected click(event: Event, containerElement: HTMLElement): Promise<boolean>;
33
+ protected link(href: string | null, title: string | null, text: string): string;
34
+ protected image(href: string, title: string | null, text: string): string;
35
+ protected heading(text: string, level: number, raw: string): string;
36
+ static ɵfac: i0.ɵɵFactoryDeclaration<MarkdownService, never>;
37
+ static ɵprov: i0.ɵɵInjectableDeclaration<MarkdownService>;
38
+ }
@@ -0,0 +1,25 @@
1
+ export declare class MarkdownUtils {
2
+ static readonly HTML_ENTITIES_MAP: {
3
+ [entity: string]: string;
4
+ };
5
+ /**
6
+ * Converts the given text into a valid anchor-compatible format.
7
+ *
8
+ * @param {string} text - The input text to be transformed into an anchor.
9
+ * @return {string} The formatted string suitable for use as an anchor.
10
+ */
11
+ static textToAnchor(text: string): string;
12
+ /**
13
+ * Adjusts the given anchor ID by replacing underscores with hyphens and converting to lowercase.
14
+ *
15
+ * @param {string} anchorId - The anchor ID string to be fixed.
16
+ * @return {string} The modified anchor ID with underscores replaced by hyphens and converted to lowercase, or the original anchor ID if it is falsy.
17
+ */
18
+ static fixAnchor(anchorId: string): string;
19
+ static isMarkdownFile(url: string): boolean;
20
+ static resolveRelativeUrl(baseUrl: string, relativePath: string, opts?: {
21
+ absoluteByDefault: boolean;
22
+ }): string;
23
+ static isGitlabUrl(url: string): boolean;
24
+ static getRootUrl(url: string): string;
25
+ }
@@ -0,0 +1,15 @@
1
+ import { ChangeDetectorRef } from '@angular/core';
2
+ import { ModalController } from '@ionic/angular';
3
+ import * as i0 from "@angular/core";
4
+ export declare class MarkdownTestPage {
5
+ private modalCtrl;
6
+ private cd;
7
+ protected markdownModalTitle: string;
8
+ protected markdownUrl: string;
9
+ constructor(modalCtrl: ModalController, cd: ChangeDetectorRef);
10
+ onSubmit(event: Event, newUrl: string | number): void;
11
+ updateInputUrl(url: string): void;
12
+ openHelpModal(event: Event): Promise<import("@ionic/core").OverlayEventDetail<any>>;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<MarkdownTestPage, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<MarkdownTestPage, "app-markdown-test", never, {}, {}, never, never, false, never>;
15
+ }
@@ -0,0 +1,11 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./markdown.test";
3
+ import * as i2 from "@angular/common";
4
+ import * as i3 from "@angular/router";
5
+ import * as i4 from "../../shared.module";
6
+ import * as i5 from "@angular/forms";
7
+ export declare class MarkdownTestingModule {
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<MarkdownTestingModule, never>;
9
+ static ɵmod: i0.ɵɵNgModuleDeclaration<MarkdownTestingModule, [typeof i1.MarkdownTestPage], [typeof i2.CommonModule, typeof i3.RouterModule, typeof i4.SharedModule, typeof i5.FormsModule], [typeof i3.RouterModule, typeof i1.MarkdownTestPage]>;
10
+ static ɵinj: i0.ɵɵInjectorDeclaration<MarkdownTestingModule>;
11
+ }
@@ -4,3 +4,4 @@ export declare const fadeInOutAnimation: import("@angular/animations").Animation
4
4
  export declare const slideInAnimation: import("@angular/animations").AnimationTriggerMetadata;
5
5
  export declare const slideInOutAnimation: import("@angular/animations").AnimationTriggerMetadata;
6
6
  export declare const slideUpDownAnimation: import("@angular/animations").AnimationTriggerMetadata;
7
+ export declare const slideDownAnimation: import("@angular/animations").AnimationTriggerMetadata;
@@ -28,6 +28,6 @@ import * as i26 from "@ionic/angular";
28
28
  import * as i27 from "@ngx-translate/core";
29
29
  export declare class SharedPipesModule {
30
30
  static ɵfac: i0.ɵɵFactoryDeclaration<SharedPipesModule, never>;
31
- static ɵmod: i0.ɵɵNgModuleDeclaration<SharedPipesModule, [typeof i1.PropertyGetPipe, typeof i1.PropertyFormatPipe, typeof i1.ValueFormatPipe, typeof i2.DateFormatPipe, typeof i3.DateDiffDurationPipe, typeof i4.DurationPipe, typeof i5.DateFromNowPipe, typeof i6.LatLongFormatPipe, typeof i6.LatitudeFormatPipe, typeof i6.LongitudeFormatPipe, typeof i7.HighlightPipe, typeof i8.NumberFormatPipe, typeof i9.FileSizePipe, typeof i10.MathAbsPipe, typeof i10.OddPipe, typeof i10.EvenPipe, typeof i11.NotEmptyArrayPipe, typeof i11.EmptyArrayPipe, typeof i11.ArrayLengthPipe, typeof i11.ArrayFirstPipe, typeof i11.ArrayLastPipe, typeof i11.ArrayPluckPipe, typeof i11.ArrayIncludesPipe, typeof i11.ArrayFilterPipe, typeof i11.ArrayJoinPipe, typeof i12.MapGetPipe, typeof i12.MapKeysPipe, typeof i12.MapValuesPipe, typeof i13.IsNilOrBlankPipe, typeof i13.IsNotNilOrBlankPipe, typeof i13.IsNilOrNaNPipe, typeof i13.IsNotNilOrNaNPipe, typeof i13.IsNotNilPipe, typeof i13.IsNilPipe, typeof i14.IsValidDatePipe, typeof i13.ToStringPipe, typeof i13.CapitalizePipe, typeof i13.StrLengthPipe, typeof i13.StrIncludesPipe, typeof i1.BooleanFormatPipe, typeof i15.TranslateContextPipe, typeof i15.TranslatablePipe, typeof i16.NgInitDirective, typeof i17.FormErrorPipe, typeof i17.FormErrorTranslatePipe, typeof i17.FormGetPipe, typeof i17.FormGetControlPipe, typeof i17.FormGetArrayPipe, typeof i17.FormGetGroupPipe, typeof i17.FormGetValuePipe, typeof i18.MatColorPipe, typeof i19.AsAnyPipe, typeof i19.AsArrayPipe, typeof i19.AsObservablePipe, typeof i19.AsFloatLabelTypePipe, typeof i20.MaskitoPlaceholderPipe, typeof i21.IsSelectedPipe, typeof i21.IsNotEmptySelectionPipe, typeof i21.IsEmptySelectionPipe, typeof i21.SelectionLengthPipe, typeof i21.IsMultipleSelectionPipe, typeof i21.IsSingleSelectionPipe, typeof i22.BadgeNumberPipe, typeof i19.AsBooleanPipe, typeof i23.SafeHtmlPipe, typeof i23.NoHtmlPipe, typeof i24.DisplayWithPipe], [typeof i25.CommonModule, typeof i26.IonicModule, typeof i27.TranslateModule], [typeof i1.PropertyGetPipe, typeof i1.PropertyFormatPipe, typeof i1.ValueFormatPipe, typeof i2.DateFormatPipe, typeof i3.DateDiffDurationPipe, typeof i4.DurationPipe, typeof i5.DateFromNowPipe, typeof i6.LatLongFormatPipe, typeof i6.LatitudeFormatPipe, typeof i6.LongitudeFormatPipe, typeof i7.HighlightPipe, typeof i8.NumberFormatPipe, typeof i9.FileSizePipe, typeof i10.MathAbsPipe, typeof i10.OddPipe, typeof i10.EvenPipe, typeof i11.NotEmptyArrayPipe, typeof i11.EmptyArrayPipe, typeof i11.ArrayLengthPipe, typeof i11.ArrayFirstPipe, typeof i11.ArrayLastPipe, typeof i11.ArrayPluckPipe, typeof i11.ArrayIncludesPipe, typeof i11.ArrayFilterPipe, typeof i11.ArrayJoinPipe, typeof i12.MapGetPipe, typeof i12.MapKeysPipe, typeof i12.MapValuesPipe, typeof i13.IsNilOrBlankPipe, typeof i13.IsNotNilOrBlankPipe, typeof i13.IsNilOrNaNPipe, typeof i13.IsNotNilOrNaNPipe, typeof i13.IsNotNilPipe, typeof i13.IsNilPipe, typeof i14.IsValidDatePipe, typeof i13.ToStringPipe, typeof i13.CapitalizePipe, typeof i13.StrLengthPipe, typeof i13.StrIncludesPipe, typeof i1.BooleanFormatPipe, typeof i15.TranslateContextPipe, typeof i15.TranslatablePipe, typeof i16.NgInitDirective, typeof i17.FormErrorPipe, typeof i17.FormErrorTranslatePipe, typeof i17.FormGetPipe, typeof i17.FormGetControlPipe, typeof i17.FormGetArrayPipe, typeof i17.FormGetGroupPipe, typeof i17.FormGetValuePipe, typeof i18.MatColorPipe, typeof i19.AsAnyPipe, typeof i19.AsArrayPipe, typeof i19.AsObservablePipe, typeof i19.AsFloatLabelTypePipe, typeof i20.MaskitoPlaceholderPipe, typeof i21.IsSelectedPipe, typeof i21.IsNotEmptySelectionPipe, typeof i21.IsEmptySelectionPipe, typeof i21.SelectionLengthPipe, typeof i21.IsMultipleSelectionPipe, typeof i21.IsSingleSelectionPipe, typeof i22.BadgeNumberPipe, typeof i19.AsBooleanPipe, typeof i23.SafeHtmlPipe, typeof i23.NoHtmlPipe, typeof i24.DisplayWithPipe]>;
31
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SharedPipesModule, [typeof i1.PropertyGetPipe, typeof i1.PropertyFormatPipe, typeof i1.ValueFormatPipe, typeof i2.DateFormatPipe, typeof i3.DateDiffDurationPipe, typeof i4.DurationPipe, typeof i5.DateFromNowPipe, typeof i6.LatLongFormatPipe, typeof i6.LatitudeFormatPipe, typeof i6.LongitudeFormatPipe, typeof i7.HighlightPipe, typeof i8.NumberFormatPipe, typeof i9.FileSizePipe, typeof i10.MathAbsPipe, typeof i10.OddPipe, typeof i10.EvenPipe, typeof i11.NotEmptyArrayPipe, typeof i11.EmptyArrayPipe, typeof i11.ArrayLengthPipe, typeof i11.ArrayFirstPipe, typeof i11.ArrayLastPipe, typeof i11.ArrayPluckPipe, typeof i11.ArrayIncludesPipe, typeof i11.ArrayFilterPipe, typeof i11.ArrayJoinPipe, typeof i12.MapGetPipe, typeof i12.MapKeysPipe, typeof i12.MapValuesPipe, typeof i13.IsNilOrBlankPipe, typeof i13.IsNotNilOrBlankPipe, typeof i13.IsNilOrNaNPipe, typeof i13.IsNotNilOrNaNPipe, typeof i13.IsNotNilPipe, typeof i13.IsNilPipe, typeof i14.IsValidDatePipe, typeof i13.ToStringPipe, typeof i13.CapitalizePipe, typeof i13.StrLengthPipe, typeof i13.StrIncludesPipe, typeof i13.StrReplacePipe, typeof i1.BooleanFormatPipe, typeof i15.TranslateContextPipe, typeof i15.TranslatablePipe, typeof i16.NgInitDirective, typeof i17.FormErrorPipe, typeof i17.FormErrorTranslatePipe, typeof i17.FormGetPipe, typeof i17.FormGetControlPipe, typeof i17.FormGetArrayPipe, typeof i17.FormGetGroupPipe, typeof i17.FormGetValuePipe, typeof i18.MatColorPipe, typeof i19.AsAnyPipe, typeof i19.AsArrayPipe, typeof i19.AsObservablePipe, typeof i19.AsFloatLabelTypePipe, typeof i20.MaskitoPlaceholderPipe, typeof i21.IsSelectedPipe, typeof i21.IsNotEmptySelectionPipe, typeof i21.IsEmptySelectionPipe, typeof i21.SelectionLengthPipe, typeof i21.IsMultipleSelectionPipe, typeof i21.IsSingleSelectionPipe, typeof i22.BadgeNumberPipe, typeof i19.AsBooleanPipe, typeof i23.SafeHtmlPipe, typeof i23.NoHtmlPipe, typeof i24.DisplayWithPipe], [typeof i25.CommonModule, typeof i26.IonicModule, typeof i27.TranslateModule], [typeof i1.PropertyGetPipe, typeof i1.PropertyFormatPipe, typeof i1.ValueFormatPipe, typeof i2.DateFormatPipe, typeof i3.DateDiffDurationPipe, typeof i4.DurationPipe, typeof i5.DateFromNowPipe, typeof i6.LatLongFormatPipe, typeof i6.LatitudeFormatPipe, typeof i6.LongitudeFormatPipe, typeof i7.HighlightPipe, typeof i8.NumberFormatPipe, typeof i9.FileSizePipe, typeof i10.MathAbsPipe, typeof i10.OddPipe, typeof i10.EvenPipe, typeof i11.NotEmptyArrayPipe, typeof i11.EmptyArrayPipe, typeof i11.ArrayLengthPipe, typeof i11.ArrayFirstPipe, typeof i11.ArrayLastPipe, typeof i11.ArrayPluckPipe, typeof i11.ArrayIncludesPipe, typeof i11.ArrayFilterPipe, typeof i11.ArrayJoinPipe, typeof i12.MapGetPipe, typeof i12.MapKeysPipe, typeof i12.MapValuesPipe, typeof i13.IsNilOrBlankPipe, typeof i13.IsNotNilOrBlankPipe, typeof i13.IsNilOrNaNPipe, typeof i13.IsNotNilOrNaNPipe, typeof i13.IsNotNilPipe, typeof i13.IsNilPipe, typeof i14.IsValidDatePipe, typeof i13.ToStringPipe, typeof i13.CapitalizePipe, typeof i13.StrLengthPipe, typeof i13.StrIncludesPipe, typeof i13.StrReplacePipe, typeof i1.BooleanFormatPipe, typeof i15.TranslateContextPipe, typeof i15.TranslatablePipe, typeof i16.NgInitDirective, typeof i17.FormErrorPipe, typeof i17.FormErrorTranslatePipe, typeof i17.FormGetPipe, typeof i17.FormGetControlPipe, typeof i17.FormGetArrayPipe, typeof i17.FormGetGroupPipe, typeof i17.FormGetValuePipe, typeof i18.MatColorPipe, typeof i19.AsAnyPipe, typeof i19.AsArrayPipe, typeof i19.AsObservablePipe, typeof i19.AsFloatLabelTypePipe, typeof i20.MaskitoPlaceholderPipe, typeof i21.IsSelectedPipe, typeof i21.IsNotEmptySelectionPipe, typeof i21.IsEmptySelectionPipe, typeof i21.SelectionLengthPipe, typeof i21.IsMultipleSelectionPipe, typeof i21.IsSingleSelectionPipe, typeof i22.BadgeNumberPipe, typeof i19.AsBooleanPipe, typeof i23.SafeHtmlPipe, typeof i23.NoHtmlPipe, typeof i24.DisplayWithPipe]>;
32
32
  static ɵinj: i0.ɵɵInjectorDeclaration<SharedPipesModule>;
33
33
  }
@@ -51,3 +51,8 @@ export declare class StrIncludesPipe implements PipeTransform {
51
51
  static ɵfac: i0.ɵɵFactoryDeclaration<StrIncludesPipe, never>;
52
52
  static ɵpipe: i0.ɵɵPipeDeclaration<StrIncludesPipe, "strIncludes", false>;
53
53
  }
54
+ export declare class StrReplacePipe implements PipeTransform {
55
+ transform(input: any, pattern: any, replacement: any): any;
56
+ static ɵfac: i0.ɵɵFactoryDeclaration<StrReplacePipe, never>;
57
+ static ɵpipe: i0.ɵɵPipeDeclaration<StrReplacePipe, "replace", false>;
58
+ }
@@ -3,24 +3,24 @@ import { CloseScrollStrategy, Overlay } from '@angular/cdk/overlay';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "./form/field.component";
5
5
  import * as i2 from "./form/loading-spinner";
6
- import * as i3 from "./help/help.modal";
7
- import * as i4 from "./upload-file/upload-file.component";
8
- import * as i5 from "./upload-file/upload-file-popover.component";
9
- import * as i6 from "./testing/tests.page";
10
- import * as i7 from "@angular/common";
11
- import * as i8 from "@ionic/angular";
12
- import * as i9 from "@angular/forms";
13
- import * as i10 from "@ngx-translate/core";
14
- import * as i11 from "ngx-color-picker";
15
- import * as i12 from "@angular/cdk/drag-drop";
16
- import * as i13 from "ngx-markdown";
17
- import * as i14 from "./rx-state/rx-state.module";
18
- import * as i15 from "./material/material.module";
19
- import * as i16 from "./directives/directives.module";
20
- import * as i17 from "./pipes/pipes.module";
21
- import * as i18 from "./hotkeys/shared-hotkeys.module";
22
- import * as i19 from "./toolbar/toolbar.module";
23
- import * as i20 from "./named-filter/named-filter.module";
6
+ import * as i3 from "./upload-file/upload-file.component";
7
+ import * as i4 from "./upload-file/upload-file-popover.component";
8
+ import * as i5 from "./testing/tests.page";
9
+ import * as i6 from "@angular/common";
10
+ import * as i7 from "@ionic/angular";
11
+ import * as i8 from "@angular/forms";
12
+ import * as i9 from "@ngx-translate/core";
13
+ import * as i10 from "ngx-color-picker";
14
+ import * as i11 from "@angular/cdk/drag-drop";
15
+ import * as i12 from "ngx-markdown";
16
+ import * as i13 from "./rx-state/rx-state.module";
17
+ import * as i14 from "./material/material.module";
18
+ import * as i15 from "./directives/directives.module";
19
+ import * as i16 from "./pipes/pipes.module";
20
+ import * as i17 from "./hotkeys/shared-hotkeys.module";
21
+ import * as i18 from "./toolbar/toolbar.module";
22
+ import * as i19 from "./named-filter/named-filter.module";
23
+ import * as i20 from "./markdown/markdown.module";
24
24
  import * as i21 from "ngx-jdenticon";
25
25
  export declare function scrollFactory(overlay: Overlay): () => CloseScrollStrategy;
26
26
  export interface SharedModuleConfig {
@@ -29,6 +29,6 @@ export interface SharedModuleConfig {
29
29
  export declare class SharedModule {
30
30
  static forRoot(config?: SharedModuleConfig): ModuleWithProviders<SharedModule>;
31
31
  static ɵfac: i0.ɵɵFactoryDeclaration<SharedModule, never>;
32
- static ɵmod: i0.ɵɵNgModuleDeclaration<SharedModule, [typeof i1.AppFormField, typeof i2.AppLoadingSpinner, typeof i3.AppHelpModal, typeof i4.UploadFileComponent, typeof i5.UploadFilePopover, typeof i6.SharedTestsPage], [typeof i7.CommonModule, typeof i8.IonicModule, typeof i9.ReactiveFormsModule, typeof i10.TranslateModule, typeof i11.ColorPickerModule, typeof i12.DragDropModule, typeof i13.MarkdownModule, typeof i14.RxStateModule, typeof i15.SharedMaterialModule, typeof i16.SharedDirectivesModule, typeof i17.SharedPipesModule, typeof i18.SharedHotkeysModule, typeof i19.SharedToolbarModule, typeof i20.SharedNamedFilterModule], [typeof i7.CommonModule, typeof i8.IonicModule, typeof i10.TranslateModule, typeof i9.ReactiveFormsModule, typeof i11.ColorPickerModule, typeof i12.DragDropModule, typeof i13.MarkdownModule, typeof i21.NgxJdenticonModule, typeof i14.RxStateModule, typeof i15.SharedMaterialModule, typeof i16.SharedDirectivesModule, typeof i17.SharedPipesModule, typeof i18.SharedHotkeysModule, typeof i19.SharedToolbarModule, typeof i20.SharedNamedFilterModule, typeof i1.AppFormField, typeof i2.AppLoadingSpinner, typeof i3.AppHelpModal, typeof i4.UploadFileComponent, typeof i5.UploadFilePopover, typeof i6.SharedTestsPage]>;
32
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SharedModule, [typeof i1.AppFormField, typeof i2.AppLoadingSpinner, typeof i3.UploadFileComponent, typeof i4.UploadFilePopover, typeof i5.SharedTestsPage], [typeof i6.CommonModule, typeof i7.IonicModule, typeof i8.ReactiveFormsModule, typeof i9.TranslateModule, typeof i10.ColorPickerModule, typeof i11.DragDropModule, typeof i12.MarkdownModule, typeof i13.RxStateModule, typeof i14.SharedMaterialModule, typeof i15.SharedDirectivesModule, typeof i16.SharedPipesModule, typeof i17.SharedHotkeysModule, typeof i18.SharedToolbarModule, typeof i19.SharedNamedFilterModule, typeof i20.SharedMarkdownModule], [typeof i6.CommonModule, typeof i7.IonicModule, typeof i9.TranslateModule, typeof i8.ReactiveFormsModule, typeof i10.ColorPickerModule, typeof i11.DragDropModule, typeof i12.MarkdownModule, typeof i21.NgxJdenticonModule, typeof i13.RxStateModule, typeof i14.SharedMaterialModule, typeof i15.SharedDirectivesModule, typeof i16.SharedPipesModule, typeof i17.SharedHotkeysModule, typeof i18.SharedToolbarModule, typeof i19.SharedNamedFilterModule, typeof i20.SharedMarkdownModule, typeof i1.AppFormField, typeof i2.AppLoadingSpinner, typeof i3.UploadFileComponent, typeof i4.UploadFilePopover, typeof i5.SharedTestsPage]>;
33
33
  static ɵinj: i0.ɵɵInjectorDeclaration<SharedModule>;
34
34
  }
@@ -11,9 +11,10 @@ import * as i8 from "./audio/audio.testing.module";
11
11
  import * as i9 from "./storage/storage-explorer.testing.module";
12
12
  import * as i10 from "../core/menu/testing/menu.testing.module";
13
13
  import * as i11 from "./named-filter/testing/named-filter.testing.module";
14
+ import * as i12 from "./markdown/testing/markdown.testing.module";
14
15
  export declare const SHARED_TESTING_PAGES: TestingPage[];
15
16
  export declare class SharedTestingModule {
16
17
  static ɵfac: i0.ɵɵFactoryDeclaration<SharedTestingModule, never>;
17
- static ɵmod: i0.ɵɵNgModuleDeclaration<SharedTestingModule, never, [typeof i1.CommonModule, typeof i2.IonicModule, typeof i3.TranslateModule, typeof i4.MaterialTestingModule, typeof i5.ToastTestingModule, typeof i6.UploadFileTestingModule, typeof i7.ImageGalleryTestingModule, typeof i8.AudioTestingModule, typeof i9.StorageExplorerTestingModule, typeof i10.MenuTestingModule, typeof i11.NamedFilterSelectorTestingModule], [typeof i4.MaterialTestingModule, typeof i5.ToastTestingModule, typeof i6.UploadFileTestingModule, typeof i7.ImageGalleryTestingModule, typeof i8.AudioTestingModule, typeof i9.StorageExplorerTestingModule, typeof i10.MenuTestingModule, typeof i11.NamedFilterSelectorTestingModule]>;
18
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SharedTestingModule, never, [typeof i1.CommonModule, typeof i2.IonicModule, typeof i3.TranslateModule, typeof i4.MaterialTestingModule, typeof i5.ToastTestingModule, typeof i6.UploadFileTestingModule, typeof i7.ImageGalleryTestingModule, typeof i8.AudioTestingModule, typeof i9.StorageExplorerTestingModule, typeof i10.MenuTestingModule, typeof i11.NamedFilterSelectorTestingModule, typeof i12.MarkdownTestingModule], [typeof i4.MaterialTestingModule, typeof i5.ToastTestingModule, typeof i6.UploadFileTestingModule, typeof i7.ImageGalleryTestingModule, typeof i8.AudioTestingModule, typeof i9.StorageExplorerTestingModule, typeof i10.MenuTestingModule, typeof i11.NamedFilterSelectorTestingModule, typeof i12.MarkdownTestingModule]>;
18
19
  static ɵinj: i0.ɵɵInjectorDeclaration<SharedTestingModule>;
19
20
  }
@@ -2,7 +2,7 @@
2
2
  "name": "ngx-sumaris-components",
3
3
  "short_name": "ngx-sumaris-components",
4
4
  "manifest_version": 1,
5
- "version": "18.5.14",
5
+ "version": "18.6.0",
6
6
  "default_locale": "fr",
7
7
  "description": "Angular components for building beautiful and responsive Apps",
8
8
  "icons": [{